0

シナリオは次のとおりです。

200ms @ 2kHz 1000ms のゼロ 200ms @ 2kHz の信号を生成しました。

そして、2つの合成オーディオ部分の間ではなく、それらの間の時間遅延を計算したいと思います。ただし、スピーカーで信号を再生し、マイクを使用して録音する (ノイズを追加する)

F = 44100

私は試しました:1.相互相関2.8820サンプルのサイズでRMSウィンドウの2つの最大値間の差分を計算します。(ウィンドウがサウンド部分にあるときに最大値を取得します。

スピーカーとマイクの距離は約30cm。安定した結果が得られません。なぜ?

4

1 に答える 1

1

これを正確かつ一貫して行いたい場合、私が過去に使用した 1 つの方法は、1 つのチャネル (左チャネルなど) を出力から入力にループバックし、もう 1 つのチャネル (右チャネル) をタイミング テストに使用することです。 . 次に、左 (ループバック) チャネルと右 (実際のオーディオ) チャネル間の相互相関を行うことができます。これにより、多くの潜在的なエラーの原因 (バッファ遅延、ハードウェア レイテンシ、ソフトウェアの問題など) が排除されます。これは、左右のチャネルが常に「同期」しており、+/- 1 サンプル周期の精度で測定を行うことができるためです ( 44.1 kHz で +/- 12 µs)。

于 2014-06-03T07:59:52.490 に答える