CMの音がうるさい、という事で均一化することを決めたらしい。
どの程度の効果があるのか知りたかったので、公開されているアルゴリズムを実装してみた。
使い方は実行するとでるヘルプをみてください。python2.7系とnumpyとscipyが入ってればそれだけで動きます。
・入稿する素材の中の各部分間の均一化は既に行われていると仮定
・CMとコンテンツは別素材として扱う
し、個々の素材毎に平均したラウドネス値を-24dB(フルスケール比)とする、と規定している。
音量が大きな差がある部分を複数のwavに分けて、このプログラムを -n オプション付きで実行する。
拡張子の前に".norm"のついたファイルができるので、それを結合して結合部分付近を聴き比べる。
長い番組と長い番組をつなぐと、(当然だけれど)音量差はやはり感じられる。
・CMのような短い素材が極端に大きな音を利用しようとすること
・番組全体の平均音量を下げてCMを大きく見せること
を排除しようとしているのがわかる。
・絶対的なラウドネスを計算する
・絶対的なラウドネスから-10dB以下の部分を全て無視する
・有効部分のみから最終的なラウドネスを算出する
逆に言えば、-5dBくらい音量を下げた部分で時間を稼げば、計算されるラウドネスと実際の音量に差をつけることは可能だ。
-10dBよりもっと差を小さくしたほうが良いと思うが、そうすると(放送全体にわたっての)平均ラウドネスが過大評価にすぎる、という問題も出るだろうから、どう決めたのか知りたいところだ。