IRC #plagger-ja チャネルにて、音量や音質のノーマライズの話が出てて、「Filter::Audio で当然サポートするよね?」という声が聞こえた気がした(誰もそんなこと言ってない)ので、SoX で音量をノーマライズする様に Filter::Audio を修正してみた。trac のチェンジセットはこちら。
利用には当然 SoX が必要で、環境変数 PATH 内にある必要があります。やってることは単純で、
normalize: 1
が設定されていると、
my $vol = `sox $converted_file_before_move -e stat -v 2<&1`;
で Volume Adjustment を取得して、
system('sox', '-v', $vol, $converted_file_before_move, $converted_file);
で音量変更してます。
動いてることは確認したけど、ちゃんとノーマライズされてるかどうかは確認してないす。(今変換中。結構時間かかる。)