AECMicArray
このサンプルでは、コア オーディオ API を使用して高品質の音声ストリームをキャプチャします。 このサンプルでは、Microsoft が提供する音声キャプチャ DSP とも呼ばれる AEC DMO を使用して、音響エコー キャンセル (AEC) とマイクアレイ処理をサポートしています。
このトピックには、次のセクションが含まれています。
形容
このサンプルでは、次の機能を示します。
- マルチメディア デバイスの列挙と選択のための MMDevice を します。
- ストリームの開始と停止、ストリーム切り替えなどのストリーム管理操作用の WASAPI。
- オーディオ アダプターを列挙するための DeviceTopology を します。
- EndpointVolume オーディオ セッションのボリューム レベルを制御します。
必要条件
積 | バージョン |
---|---|
Windows SDK の | Windows Vista 以降 |
Visual Studio | 2005 (Express 以外のエディション) |
サンプルのダウンロード
このサンプルは、次の場所にあります。
場所 | パス/URL |
---|---|
Windows SDK | \Program Files\Microsoft SDK\Windows\v7.0\Samples\Multimedia\Audio\AECMicArray\... |
サンプルのビルド
AecSDKDemo サンプルをビルドするには、次の手順に従います。
SDK コマンド ウィンドウを開きます。
「cd %MSSDK%\Setup」と入力します。
VCIntegrate.exeを実行します。
この時点から、コマンド ウィンドウには、SDK を利用するアプリケーションを構築するための適切な環境設定が用意されています。
サンプルをビルドします。
サンプルの実行
デモ アプリケーションを正常にビルドすると、実行可能ファイル AecSDKDemo.exe が生成されます。 これを実行するには、コマンド ウィンドウに「AecSDKDemo
」と入力し、次に説明するように必須または省略可能な引数を続けます。
AecSDKDemo -out mic_out.pcm -mod system_mode [-option value]
次の表に、引数を示します。
引数 | 形容 |
---|---|
-アウト | 必須。 出力ファイル名を指定します。 |
-mod | 必須。 音声キャプチャ システム モードを指定します。 詳細については、サンプル readme の「音声キャプチャ DMO の設定」セクションを参照してください。 |
-偉業 | 随意。 機能モードをオン (1) またはオフ (0) にします。 |
-ns | 随意。 ノイズ抑制をオン (1) またはオフ (0) にします。 これを指定するには、機能モードがオンになっている必要があります。 |
-agc | 随意。 デジタル AGC をオン (1) またはオフ (0) にします。 これを指定するには、機能モードがオンになっている必要があります。 |
-cntrclip | 随意。 中央の領域をオン (1) またはオフ (0) にします。 これを指定するには、機能モードがオンになっている必要があります。 |
-spkdev | 随意。 スピーカー デバイスのインデックスを指定します。 指定しない場合、ユーザーは選択を求められます。 |
-micdev | 随意。 マイク デバイスのインデックスを指定します。 指定しない場合、ユーザーは選択を求められます。 |
-期間 | 随意。 アプリケーションの実行時間を指定します。 |
このサンプル アプリケーションは信号を再生しません。 AEC 対応モード (モード 0 および 4) に対してデモを適切に実行するには、DMO に指定されたのと同じスピーカー デバイス (つまり、"-spkdev" オプションで指定されたデバイス) を介して一部のオーディオ信号を再生する必要があります。これは、双方向チャット シナリオで遠端音声をシミュレートします。 ユーザーは、任意のプレーヤーを使用して任意のオーディオ 信号を再生できます。 選択したスピーカー デバイスにアクティブなレンダー ストリームがない場合、DMO は処理に失敗します。
関連トピック
-
コア オーディオ API を使用する SDK サンプルを する