DirectSoundFullDuplexCreate8
DirectSoundFullDuplexCreate8 関数は DirectSound オブジェクトと DirectSoundCapture オブジェクトを作成し、IDirectSoundFullDuplex8 インターフェイスを返します。この関数を使うには Microsoft Windows XP が必要です。全二重は他のオペレーティング システムに実装できますが、キャプチャー デバイスとレンダリング デバイスは個別に作成する必要があります。
HRESULT
DirectSoundFullDuplexCreate8(
LPCGUID pcGuidCaptureDevice,
LPCGUID pcGuidRenderDevice,
LPCDSCBUFFERDESC pcDSCBufferDesc,
LPCDSBUFFERDESC pcDSBufferDesc,
HWND hWnd,
DWORD dwLevel,
LPDIRECTSOUNDFULLDUPLEX * ppDSFD,
LPDIRECTSOUNDCAPTUREBUFFER8 * ppDSCBuffer8,
LPDIRECTSOUNDBUFFER8 * ppDSBuffer8,
LPUNKNOWN pUnkOuter
);
パラメータ
pcGuidCaptureDevice
サウンド キャプチャー デバイスを識別する GUID のアドレスです。このパラメーターの値は DirectSoundCaptureEnumerate が返す GUID のいずれか、デフォルトのデバイスを指定する NULL、または次のいずれかの値である必要があります。値 説明 DSDEVID_DefaultCapture システム全体の既定のオーディオ キャプチャー デバイスです。 DSDEVID_DefaultVoiceCapture 既定の音声キャプチャー デバイスです。 pcGuidRenderDevice
全二重出力用のサウンド レンダリング デバイスを識別する GUID のアドレスです。DirectSoundEnumerate が返す GUID のいずれか、デフォルトのレンダリング デバイスを指定する NULL、または次の値のいずれかである必要があります。値 説明 DSDEVID_DefaultPlayback システム全体の既定のオーディオ再生デバイスです。 DSDEVID_DefaultVoicePlayback 既定の音声再生用デバイスです。 pcDSCBufferDesc
キャプチャー バッファーの特性を指定する DSCBUFFERDESC 構造体のアドレスです。pcDSBufferDesc
レンダリング バッファーの特性を指定する DSCBUFFERDESC 構造体のアドレスです。hWnd
アプリケーション ウィンドウへのハンドルです。dwLevel
デバイスの協力型レベルです。詳細については、「IDirectSound8::SetCooperativeLevel」を参照してください。ppDSFD
IDirectSoundFullDuplex8 インターフェイス ポインターを受け取る変数のアドレスです。ppDSCBuffer8
キャプチャー バッファーの IDirectSoundCaptureBuffer8 インターフェイスを受け取る変数のアドレスです。ppDSBuffer8
レンダリング バッファーの IDirectSoundBuffer8 インターフェイスを受け取る変数のアドレスです。pUnkOuter
COM 集成に対する制御オブジェクトの IUnknown インターフェイスのアドレスです。集成はサポートされていないので、NULL にする必要があります。
戻り値
成功した場合は DS_OK を返します。失敗した場合、戻り値は以下のいずれかになる場合があります。
リターン コード |
---|
DSERR_ALLOCATED |
DSERR_INVALIDPARAM |
DSERR_NOAGGREGATION |
DSERR_NODRIVER |
DSERR_OUTOFMEMORY |
解説
Windows: Windows Vista に関する重要な情報
Windows Vista を使っている場合、DirectSound API を経由して Windows XP アコースティック エコー キャンセル (AEC) 機能にアクセスする既存のアプリケーションは AEC を使用できなくなります。これらのアプリケーションは引き続き動作できますが、AEC 仕様の DirectSound API 呼び出しを行ってもキャプチャーされたオーディオに変化はありません。
Windows Vista で AEC を使用する方法については、Windows SDK の「Windows Vista AEC」トピックを参照してください。
要件
ヘッダー: DSound.h 宣言
ライブラリ: Dsound.lib 内容