iOS で VOIP プロジェクトに取り組んでいます。Apple のドキュメントで提案されているように、VoiceProcessingIO オーディオ ユニットを使用してエコー キャンセルをサポートしています。
私のアプリでは、レンダリング側とキャプチャ側で別々の操作が必要なので (例: スピーカーをシャットダウンし、マイクは継続する)、2 つのオーディオ ユニットを作成します。一方にはキャプチャ ポートをシャットダウンし、もう一方にはレンダリング ポートをシャットダウンします。
現在のコードは、エコー キャンセレーションがどのように機能するかを理解するまでは問題なく機能します。マイクとスピーカーの両方からの信号を比較する必要があります。だから私の懸念は、私のアプローチのように2つの音声処理オーディオユニットを使用しても安全ですか? また、オーディオ キャンセルは主にキャプチャ側から機能するため、RemoteIO オーディオ ユニットを使用してレンダリング (スピーカーに接続) することは可能ですか?
このエリアに入ったのはほんの短い時間なので、100% の自信はありません。developer.apple.com からも試してみましたが、developer.apple.com で見つけたすべての例は通常、1 つのオーディオ ユニットしか使用していません。
誰かヒントを教えてください。私のアプローチは、VoiceProcessingIO ユニットの機能に影響を与える可能性がありますか?
ありがとう、福州