KSNODETYPE_ACOUSTIC_ECHO_CANCEL
KSNODETYPE_ACOUSTIC_ECHO_CANCEL ノードは、AEC (音響エコー キャンセル) コントロールを表します。 AEC ノードには、2 つの入力ストリームと 2 つの出力ストリームの接続があります。 キャプチャ ストリームには 1 つの入力/出力ペアが使用され、もう 1 つの入力/出力ペアはレンダー ストリームに使用されます。 キャプチャ出力ストリームとレンダー入力ストリームの形式は同じです。 キャプチャ入力ストリームとレンダー出力ストリームは、異なる数のチャネルと異なるサンプル レートを持つことができます。 ただし、一般的な実装では、2 つのストリームのサンプル レートが同じか、16 kHz、48 kHz、11.025 kHz、44.1 kHz などの組み合わせがあり、1 つのサンプル レートは他方の整数倍数です。
AEC ノードでは、次のテーブルに示すように、ヘッダー ファイル Ksmedia.h のピン ID で論理ピンに番号を付ける必要があります。
PIN ID パラメーター | 意味 |
---|---|
KSNODEPIN_AEC_RENDER_IN |
レンダー ストリーム用のシンク ピン (ノード入力)。 |
KSNODEPIN_AEC_RENDER_OUT |
レンダー ストリームのソース ピン (ノード出力)。 |
KSNODEPIN_AEC_CAPTURE_IN |
キャプチャ ストリーム用のシンク ピン (ノード入力)。 |
KSNODEPIN_AEC_CAPTURE_OUT |
キャプチャ ストリームのソース ピン (ノード出力)。 |
前のテーブルのピンはノード上の論理ピンであり、他のフィルターへの接続に使用されるフィルターの外部ピンではなく、フィルター内部の接続のみを指定するために使用されることに注意してください。 詳細については、「PCCONNECTION_DESCRIPTOR」をご覧ください。
AEC ノードを含むフィルターが全二重 DirectSound アプリケーションをサポートする方法については、「DirectSound キャプチャ効果」をご覧ください。
AEC ノードを含むフィルターが作成されるか、ノードがリセットされると、ノードはパススルー モードで動作するように初期構成されます。
ハードウェア アクセラレーションを有効にするには、KSNODETYPE_ACOUSTIC_ECHO_CANCEL ノードで次のプロパティをサポートする必要があります。
KSPROPERTY_AUDIO_CPU_RESOURCES
KSPROPERTY_AUDIO_ALGORITHM_INSTANCE
KSPROPERTY_TOPOLOGYNODE_ENABLE
KSPROPERTY_TOPOLOGYNODE_ENABLE プロパティは、AEC ノードの有効化と無効化で使用されます。 無効にすると、ノードはパススルー モードで動作します。つまり、レンダー ストリームとキャプチャ ストリームを変更せずにノードを通過できます。
KSNODETYPE_ACOUSTIC_ECHO_CANCEL ノードでは、追加の制御および監視機能を提供するために、次の省略可能なプロパティをサポートすることもできます。