音声ファイルの加工

しばらく放置していた、音声ファイルの加工をしている。
以前途中まで進めていたが、声優さんから中音と高音のファイルをもらっていたのですが、なぜか高音で収録したファイルを加工していた。あとで聞き比べたら、中音の方がビジネス用に向いていた。
何の音声化は、完成したら公開するので、とりあえず、本日のメモを進める。

Waveエディタ

audacityまずは、1ファイルになっている音源を、文節ごとに切り分ける。
Waveエディタ(波形編集)と言われるソフトを使用する。
audacity 公式ページ
このソフトは、定番中の定番である。

タグエディタというモノを使う

SuperTagEditor改Linuxで使うので、ファイル名はalphabetにする必要がある。しかし、アルファベットだと、何のファイルなのかが分かりにくいので、音声ファイルの中に、タイトルなどを記録しておく。audacityでタイトルの書き出しは文字化けしてしまうため、このソフトで再編集が必要だ。
今回使ったソフトは、結構古いソフトのようだ。オリジナル開発者はすでに開発終了としているようだ。
SuperTagEditor改 公式ページこのソフトの特徴は、複数の音声ファイルのタイトルやファイル名を一度に変更出来る。しかも、エクセルからのコピペも対応しているので、忘れないように記事に残しておきたいと思った。

大量の音声ファイルを加工する

さて、audacityで複数のファイルに分けたが、そこでは細かい調整はしていない。たとえば、各ファイルの出だしや終わりの無音部分が秒数がまちまちである。手作業で無音部分をカットするのは、非常に面倒。

ここからは、Linuxを使用する。
コマンドラインを作れば、一発で複数ファイルを加工出来る。
実は以前にすでに行ったのですが、やり方をわすれた。ちゃんとメモをとっておくべきだった。

前後の無音部分を消す

sox input.wav out.wav silence 1 0.5 0% reverse silence 1 0.5 0% reverse

silence 1 0.5 0%の部分
最初の1は、無音部分を1回削除
0.5は、0.5秒以上を無音とする。
0%は閾値で、デジタル録音の場合は0%で良いし、背景ノイズがあるようなら1%など。

そして、最初のsilence 1 0.5 0%で、先頭の無音部分を処理する。
次のreverse で、音源を逆にする。
次のsilence 1 0.5 0%で先頭から無音部分を処理(逆転させている状態)
次のreverseで音源を逆転(元に戻す)

形式を変更する

wavからu-lawに変更する。
8000Hz,1チャンネルで(無指定だと失敗する)

sox out.wav  -r 8000 -c 1  -t ul out.ulaw

無音削除と形式変更を一度に行う。

sox input.wav -r 8000 -c 1  -t ul out.ulaw silence 1 0.5 0% reverse silence 1 0.5 0% reverse

 

一括処理

いよいよ、複数のファイルを適用させる。

for file in *.wav; do sox "$file" -r 8000 -c 1  -t ul ${file/.wav/.ulaw} silence 1 0.5 0% reverse silence 1 0.5 0% reverse; done

fileという変数に、*.wav のファイルを順次格納する。
$fileで展開。
${file/.wav/.ulaw}は、展開前に.wavを.ulawに変更。

これで変換は無事に出来ている。

コメントする

メールアドレスが公開されることはありません。

Time limit is exhausted. Please reload the CAPTCHA.

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください