KSDSOUND_BUFFERDESC構造体 (ksmedia.h)
KSDSOUND_BUFFERDESC構造体は、DirectSound バッファーを記述します。
構文
typedef struct {
ULONG Flags;
ULONG Control;
WAVEFORMATEX WaveFormatEx;
} KSDSOUND_BUFFERDESC, *PKSDSOUND_BUFFERDESC;
メンバーズ
Flags
バッファー構成を指定します。 このメンバーは、次のフラグ ビットの 1 つ以上のビットごとの OR に設定できます。
KSDSOUND_BUFFER_PRIMARY
バッファーがプライマリ サウンド バッファー (ゲームのプレイ時にユーザーが読み上げるバッファー) であることを示します。
KSDSOUND_BUFFER_STATIC
バッファーが静的サウンド データに使用されることを示します。
KSDSOUND_BUFFER_LOCHARDWARE
バッファーにハードウェア ミキシングを強制的に使用します。
KSDSOUND_BUFFER_LOCSOFTWARE
バッファーを強制的にシステム メモリに格納し、ソフトウェア ミキシングを使用します。
Control
バッファーの機能を指定します。 バッファーの機能は、一連の制御フラグによって表されます。 このメンバーは、次のフラグ ビットの 1 つ以上のビットごとの OR に設定できます。
KSDSOUND_BUFFER_CTRL_3D
バッファーが 3D 制御機能を持つプライマリ バッファーまたはセカンダリ バッファーであることを示します。 このビットが設定されている場合、バッファーを表す KS ピンは 3D ノード (KSNODETYPE_3D_EFFECTS) を実装します。 KSDSOUND_BUFFER_CTRL_HRTF_3D ビットが設定されている場合、3D ノードはオプションの KSPROPSETID_Hrtf3d プロパティ セットをサポートします。
KSDSOUND_BUFFER_CTRL_FREQUENCY
バッファーに周波数制御機能があることを示します。 このビットが設定されている場合、バッファーを表すピンはサンプル レート変換 (KSNODETYPE_SRC) ノードを実装します。
KSDSOUND_BUFFER_CTRL_HRTF_3D
バッファーが 3D コントロールにヘッド関連の転送関数 (HRTF) を使用することを示します。 このビットが設定されている場合は、KSDSOUND_BUFFER_CTRL_3D ビットも設定する必要があります。
KSDSOUND_BUFFER_CTRL_PAN
バッファーにパン制御機能があることを示します。 このビットが設定されている場合、バッファーを表すピンは、パンを制御するボリューム ノード (KSNODETYPE_VOLUME) を実装します。 詳細については、「DirectSound Node-Ordering 要件 を参照してください。
KSDSOUND_BUFFER_CTRL_VOLUME
バッファーにボリューム制御機能があることを示します。 このビットが設定されている場合、バッファーを表すピンは、ストリームのボリューム レベルを制御するボリューム ノード (KSNODETYPE_VOLUME) を実装します。
KSDSOUND_BUFFER_CTRL_POSITIONNOTIFY
バッファーに位置通知機能があることを示します。 このビットが設定されている場合、バッファーを表すピンは、KSPROPERTY_AUDIO_POSITION プロパティをサポートします。
WaveFormatEx
バッファーのウェーブ データ形式を指定します。 このメンバーは、WAVEFORMATEX 型の構造体です。
備考
KSDATAFORMAT_DSOUND 構造体には、KSDSOUND_BUFFERDESC構造体である BufferDesc メンバーが含まれています。
KSDSOUND_BUFFERDESC構造体の WaveFormatEx メンバーは、追加の形式情報 (チャネル構成マスクなど) を含むように拡張できます。 詳細については、WAVEFORMATEXTENSIBLE を参照してください。
必要条件
要件 | 価値 |
---|---|
ヘッダー | ksmedia.h (Ksmedia.h を含む) |
関連項目
WAVEFORMATEX を する