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」を参照してください。
要件
要件 | 値 |
---|---|
Header | ksmedia.h (Ksmedia.h を含む) |