たかだかオーディオファイルをノーマライズするのに、
いちいち波形編集ソフトやDAWを立ち上げるのが面倒で、
コマンド一発で出来ないものかと思って探してみたところ、
Ecasound というのがありました。
Ecasound
http://www.eca.cx/ecasound/
日本語で色々解説してくれているサイトもありました。
http://www.geocities.co.jp/SiliconValley/2916/ecasound.html
インストールは、ソースコードを落としてきて
% ./configure % make % sudo make install
で入りました。
ノーマイズをするには、二段階の手順を踏む必要があります。
- クリップせずに上げられる音量を調べる
- 調べた音量まで上げる
1の方は「-ev」というオプションを使います。
この時、アウトプットをnullにすることで余計なファイルを
作成するコストなしに実行出来るみたいです。
% ecasound -i:test.wav -o:null -ev
すると、つらつらつらと出力結果が出て、
最後から二行目に値が書いてあります。
(audiofx) Max gain without clipping, all: 9.24838.
後は、この値を使って音量を上げるだけです。
音量を上げるには、「-ea」というオプションを使います。
% ecasound -i:test.wav -o:test2.wav -ea 924
お気付きだと思いますが、引数に与えている値の単位が
さっき得られた値と少し違います。
初めは得られた値をそのまま渡してみたのですが、
それだと全然音量が上がりませんでした。
経験則でしかないので、ちゃんとドキュメントの該当箇所を探して
裏を取るべきだと思いますが、どうもドットが2つずれるようです。
ドキュメントを見ているとノーマライズ以外にも色々出来そうなので、
もう少し弄ってみようと思います。