レベレーターは、オーディオ ファイルを供給するプログラムであり、より一定の音量で別のファイルを生成し、録音の問題 (人の声が大きすぎる、ほとんど聞こえないなど) が修正されるようにします。
Windowsで.Netを使用して同じタスクを実行できるライブラリを知っていますか? または、コマンドライン プログラムでも十分です。
レベレーターは、オーディオ ファイルを供給するプログラムであり、より一定の音量で別のファイルを生成し、録音の問題 (人の声が大きすぎる、ほとんど聞こえないなど) が修正されるようにします。
Windowsで.Netを使用して同じタスクを実行できるライブラリを知っていますか? または、コマンドライン プログラムでも十分です。
実際、レベレーターはコンプレッサーでもノーマライザーでもありません。はい、正常化しますが、ソックスなどでできることよりもはるかに多くのことを行うことができ、よりスマートです。何が起こるかを事前に知っており、いつ離れるべきかさえ知っているフェーダーの手と考えてください。一人で十分。ここでアルゴリズムの議論をチェックしてください: http://www.conversationsnetwork.org/levelatorAlgorithm
...doug (レベレーターの共同制作者)
これを行うコマンド ライン プログラムはsoxです。
アルゴリズムの一般的な考え方は、絶対値が最も高いサンプルを見つけることです (サンプリングされたデータの測定値に関係なく、オーディオは中央に配置する必要があります)。
可能な最大値をこの数値で割って (等しいか小さいことが保証されています)、それを目的のピーク レベルで乗算します (つまり、最大値の .95 に達するようにしたいですか? フル 1.0?)。結果が 1 つでない場合は、それがスケール値になります。次に、ファイルを繰り返し処理し、すべてのサンプルにその数を掛けます。
たとえば、CD 品質のオーディオでは、サンプルの可能な最大絶対値は 32767 です (例を簡単にするためにこれをごまかすと、実際の範囲は -32768 から 32767 ですが、32767 を最大値として扱うと、ここでは物事がはるかに簡単になります)。スキャンして見つけた最大の絶対値は 18000 でした。増幅係数は 1.8203888... になり、最大ボリュームを 0.9887997070223*利用可能な最大にしたい場合は、新しいスケール係数 1.8 が得られます。したがって、オーディオ ファイルを保持する配列をループし、各サンプルの前の値を値 * 1.8 に置き換えます。
これは、最初にクリック フィルターを実行してスプリアス トランジェントを除去し、ディエッシングによって最適化できます。ディエッシングでは、スピーカーでは生成できない低周波数成分や、スピーカーでは聞こえない低周波成分を除去することで、波形が中央値の周りに均等に集中するようにします。人間の耳。クリックフィルターはローパス、ディエッサーはハイパスです。これらのフィルターが実行されると、歪みを導入することなくサウンドを増幅する余地が増えます。
この問題に対処するには、主に次の 2 つの方法があります。
ノーマライゼーションでは、オーディオの最も大きな部分を検索し、ファイル全体を増幅して、最も大きな部分が最大音量になるようにします。このテクニックは、最も大きな部分の音量が 50% 以下の場合にのみ有効です。入力ファイルのどこかに最大ボリュームに達する単一のスパイクがある場合、正規化は何もしません。
コンプレッション/リミッティングはこれとは少し異なるアプローチで、音楽レコーディングで広く使用されています。基本的な考え方は、特定の音量 (「しきい値」と呼ばれる) を超える音はすべて静かになるというものです (リミッターの場合、特定の音量を超える音は許可されません)。これには、録音全体の音量を均等にする効果があります (静かな部分はそのままで、大きな部分は静かになります)。次に、信号全体を歪ませずに増幅することができます (これをメイクアップ ゲインと呼びます)。詳細については、ダイナミック レンジ圧縮に関するこの記事を参照してください。
これを .NET に実装する場合、NAudioを使用すると入力 WAV ファイルでサンプルを表示できるため、独自の正規化効果を作成できます。また、Skype Voice Recorderで、.NET でコンプレッサーを実装する方法についても説明しました。
最後に知っておくべきことは、これらのアルゴリズムは、サンプル値にアクセスできる場合にのみ機能するということです。たとえば、ファイルが MP3 の場合、まず PCM に変換し、次に正規化/圧縮を適用し、最後に MP3 に戻す必要があります。
あなたが探しているテクニックは、オーディオ正規化と呼ばれます。このサードパーティ コードMp3SoundCaptureは、それを行う方法を提供しますが、これはライブラリではなく別のアプリです。