キャプチャ デバイス オブジェクトの作成
キャプチャ デバイス オブジェクトは、DirectSoundCaptureCreate8 関数または DirectSoundFullDuplexCreate8 関数のいずれかを呼び出すことで作成できる。どちらの関数も、IDirectSoundCapture8 インターフェイスへのポインタを取得する。
DirectSoundCaptureCreate に対する lpcGUID パラメータや、DirectSoundFullDuplexCreate8 に対する pcGuidRenderDevice パラメータには、列挙によって取得される GUID または次のいずれかの定義済み GUID を指定できる。
GUID | 説明 |
DSDEVID_DefaultCapture | デフォルトのシステム キャプチャ デバイス。デバイスの GUID の代わりに NULL ポインタを渡しても、このデバイスを指定できる。 |
DSDEVID_DefaultVoiceCapture | デフォルトの音声通信キャプチャ デバイス。これは、通常、USB マイク付きヘッドセットなどのセカンダリ デバイスである。 |
デバイス ドライバが存在しない場合は、この呼び出しは失敗する。
CoCreateInstance 関数を使ってオブジェクトを作成することもできる。手順は、デバイス オブジェクトを作成する手順と同様である。「デバイス オブジェクトの作成」を参照すること。CoCreateInstance を使うと、コントロール パネルでユーザーが選択したデフォルトのキャプチャ デバイスに対するオブジェクトが作成される。
再生デバイス オブジェクトとキャプチャ デバイス オブジェクトを共存させたい場合は、キャプチャ デバイス オブジェクトの作成と初期化を行う前に再生デバイス オブジェクトの作成と初期化を行うようにするか、または DirectSoundFullDuplexCreate8 を使う必要がある。
オーディオ機器によっては、デフォルトでは全二重オーディオ構成になっていないものがある。再生デバイス オブジェクトとキャプチャ デバイス オブジェクトの作成と初期化の際に問題が発生した場合は、ユーザーに対してオーディオ機器のプロパティをチェックして全二重が有効になっていることを確認するよう求めなければならない。