3

Skypeのエコーキャンセレーション機能などでオーディオファイルを実行したい。iChatやその他のVoIPにもこの機能がありますが、ファイルをインポートまたは開くことができるソフトウェアが見つかりません。

4

2 に答える 2

1

エコーを削除するには、マイクとリファレンスの2つのファイルが必要です。マイクはエコーを含む信号です。基準は、エコーを生成した元のオーディオを含む信号です。

これらのファイルを両方作成したら、エコー除去のロジックの構築を開始できます。主題に関するwikiページから始めます。

于 2012-05-12T05:57:01.513 に答える
1

基本的なアプローチ:

遅延を決定します。振幅オフセットを決定します。

信号を反転します。遅延を適用します。振幅を調整します。両方のオーディオ ファイルを再生します。

どのマルチトラック オーディオ アプリでもこれが可能です (例: audacity、protools、または logic)。

より複雑な信号の場合は、フィルタリングについてより賢くする必要があります。理想的には、干渉する前に信号を抑制します (Skype のシナリオで)。


クールに聞こえますし、理論的には非常に理にかなっていますが、どうすればいいのかまだよくわかりません。私は Logic にかなりの経験がありますが、遅延を判断する方法がわかりません。ファイルのコピーを作成し、反転させて、いい音になるまで移動するだけでよいのでしょうか?

遅延を判断するには、2 つの信号のトランジェントを視覚的に並べるだけです。次に、最適なキャンセルを実現するために、ズームインしてサンプルまでの遅延を決定する必要があります。間近でなければキャンセルせず追加します。

振幅オフセットとは、元のノイズとエコー ノイズの音量差のことですか?

丁度。非常にまれなケースを除いて、エコーはソースとは異なる (通常は低い) 振幅になるため、最適にキャンセルするにはこの違いを知る必要があります (このオフセットは反転信号に適用されます)。振幅が間違っている場合は、反転した信号を (聞こえるように) 導入するか、エコーがソースよりも大きい場合は、エコーの一部だけを減らします。

トランジェントが(サンプルに対して)調整され、信号が反転したら、音量の違いを判断します。音量が高すぎたり低すぎたりすると、可能な限りキャンセルされません。

繰り返しますが、それは基本的なアプローチです。使用している信号とプロセッサに応じて、改善するために多くのことができます。ほとんどの場合、このアプローチは排除ではなく抑圧をもたらします。

于 2012-05-10T20:29:28.720 に答える