IDirectSoundBuffer8

IDirectSoundBuffer8 インターフェイスは、サウンド バッファーを管理するために使用します。

IDirectSoundBuffer に代わって IDirectSoundBuffer8 インターフェイスが提供され、新しいメソッドが追加されています。

このインターフェイスを取得するには、CreateSoundBuffer メソッドを使用して IDirectSoundBuffer を取得し、IID_IDirectSoundBuffer8 を IDirectSoundBuffer::QueryInterface に渡します。

プライマリ バッファーの場合は、IDirectSoundBuffer インターフェイスを使用する必要があります。IDirectSoundBuffer8 を使用することはできません。IDirectSoundBuffer について別途説明はしません。説明については、対応する IDirectSoundBuffer8 のメソッドを参照してください。

IDirectSoundBuffer のすべてのメソッドが、プライマリ バッファーに有効であるわけではありません。たとえば、SetCurrentPosition は失敗します。個々のメソッドについては、リファレンス トピックを参照してください。

IUnknown から継承するメソッドのほかに、IDirectSoundBuffer8 インターフェイスは以下のメソッドを公開しています。これらのメソッドを、カテゴリ別に示します。

エフェクト

メソッド 説明
IDirectSoundBuffer8::GetObjectInPath GetObjectInPath メソッドは、バッファーに関連付けられたエフェクト オブジェクトのインターフェイスを取得します。
IDirectSoundBuffer8::SetFX pDSFXDesc および pdwResultCodes 配列の要素の数です。この値が 0 の場合、pDSFXDesc と pdwResultCodes はどちらも NULL でなければなりません。0 に設定すると、バッファーからすべてのエフェクトが削除されます。

リソース管理

メソッド 説明
IDirectSoundBuffer8::AcquireResources AcquireResources メソッドは、DSBUFFERDESCDSBUFFERDESC 構造体の DSBCAPS_LOCDEFER フラグを指定して作成されたバッファーにリソースを割り当てます。
IDirectSoundBuffer8::Restore Restore メソッドは、失われたサウンド バッファーへのメモリー割り当てを復元します。

再生管理

メソッド 説明
IDirectSoundBuffer8::GetCurrentPosition GetCurrentPosition メソッドは、サウンド バッファーの再生カーソルと書き込みカーソルの位置を取得します。
IDirectSoundBuffer8::Lock Lock メソッドは、バッファーの全部または一部をデータ書き込み用に準備し、データを書き込むことができるポインターを返します。
IDirectSoundBuffer8::Play Playメソッドは、サウンド バッファーを再生カーソルの位置から再生します。
IDirectSoundBuffer8::SetCurrentPosition SetCurrentPosition メソッドは、再生カーソルの位置を設定します。再生カーソルは、バッファーから次のデータ バイトが読み込まれる位置を表します。
IDirectSoundBuffer8::Stop Stop メソッドは、サウンド バッファーの再生を停止します。
IDirectSoundBuffer8::Unlock Unlock メソッドは、ロックされたサウンド バッファーを解放します。

サウンドのパラメーター

メソッド 説明
IDirectSoundBuffer8::GetFrequency GetFrequency メソッドは、バッファーが再生されている周波数 (1 秒あたりのサンプリング数) を取得します。
IDirectSoundBuffer8::GetPan GetPan メソッドは、左右のオーディオ チャンネルの相対ボリュームを取得します。
IDirectSoundBuffer8::GetVolume GetVolume メソッドは、サウンドの減衰を取得します。
IDirectSoundBuffer8::SetFrequency SetFrequency メソッドは、オーディオ サンプルの再生周波数を設定します。
IDirectSoundBuffer8::SetPan SetPan メソッドは、左右のチャンネルの相対ボリュームを設定します。
IDirectSoundBuffer8::SetVolume SetVolume メソッドは、サウンドの減衰を設定します。

その他

メソッド 説明
IDirectSoundBuffer8::GetCaps GetCaps メソッドは、バッファー オブジェクトの能力を取得します。
IDirectSoundBuffer8::GetFormat GetFormat メソッドは、バッファー内のサウンド データのフォーマットの記述、またはフォーマットの記述を取得するために必要なバッファー サイズを取得します。
IDirectSoundBuffer8::GetStatus GetStatus メソッドは、サウンド バッファーのステータスを取得します。
IDirectSoundBuffer8::Initialize Initialize メソッドは、初期化されていないサウンド バッファー オブジェクトを初期化します。
IDirectSoundBuffer8::SetFormat SetFormat メソッドは、プライマリ バッファーのフォーマットを設定します。アプリケーションに入力フォーカスがあるときには常に、プライマリ バッファーが指定されたフォーマットに設定されます。

LPDIRECTSOUNDBUFFER8 型は、IDirectSoundBuffer インターフェイスへのポインターとして定義されています。

typedef struct IDirectSoundBuffer8  *LPDIRECTSOUNDBUFFER8; 

要件

ヘッダー: DSound.h 宣言

ライブラリ: Dsound3d.dll 内容

関連項目

DirectSound インターフェイス