structure KSDSOUND_BUFFERDESC (ksmedia.h)
La structure KSDSOUND_BUFFERDESC décrit une mémoire tampon DirectSound.
Syntaxe
typedef struct {
ULONG Flags;
ULONG Control;
WAVEFORMATEX WaveFormatEx;
} KSDSOUND_BUFFERDESC, *PKSDSOUND_BUFFERDESC;
Membres
Flags
Spécifie la configuration de la mémoire tampon. Ce membre peut être défini sur l’or au niveau du bit d’un ou plusieurs des bits d’indicateur suivants :
KSDSOUND_BUFFER_PRIMARY
Indique que la mémoire tampon est une mémoire tampon sonore principale (la mémoire tampon que l’utilisateur entend lorsqu’un jeu est en cours de lecture).
KSDSOUND_BUFFER_STATIC
Indique que la mémoire tampon sera utilisée pour les données sonores statiques.
KSDSOUND_BUFFER_LOCHARDWARE
Force la mémoire tampon à utiliser le mélange matériel.
KSDSOUND_BUFFER_LOCSOFTWARE
Force le stockage de la mémoire tampon dans la mémoire système et l’utilisation du mélange logiciel.
Control
Spécifie les fonctionnalités de la mémoire tampon. Les fonctionnalités d’une mémoire tampon sont représentées par un ensemble d’indicateurs de contrôle. Ce membre peut être défini sur l’or au niveau du bit d’un ou plusieurs des bits d’indicateur suivants :
KSDSOUND_BUFFER_CTRL_3D
Indique que la mémoire tampon est une mémoire tampon principale ou une mémoire tampon secondaire avec une fonctionnalité de contrôle 3D. Si ce bit est défini, la broche KS représentant la mémoire tampon implémente un nœud 3D (KSNODETYPE_3D_EFFECTS). Si le bit KSDSOUND_BUFFER_CTRL_HRTF_3D est défini, le nœud 3D prend en charge le jeu de propriétés facultatif KSPROPSETID_Hrtf3d.
KSDSOUND_BUFFER_CTRL_FREQUENCY
Indique que la mémoire tampon dispose d’une fonctionnalité de contrôle de fréquence. Si ce bit est défini, l’épingle représentant la mémoire tampon implémente un nœud de conversion de taux d’échantillonnage (KSNODETYPE_SRC).
KSDSOUND_BUFFER_CTRL_HRTF_3D
Indique que la mémoire tampon utilise une fonction de transfert liée à la tête (HRTF) pour le contrôle 3D. Si ce bit est défini, le bit KSDSOUND_BUFFER_CTRL_3D doit également être défini.
KSDSOUND_BUFFER_CTRL_PAN
Indique que la mémoire tampon dispose d’une fonctionnalité de contrôle panoramique. Si ce bit est défini, l’épingle représentant la mémoire tampon implémente un nœud de volume (KSNODETYPE_VOLUME) pour contrôler le panoramique. Pour plus d’informations, consultez DirectSound Node-Ordering Requirements.
KSDSOUND_BUFFER_CTRL_VOLUME
Indique que la mémoire tampon dispose d’une fonctionnalité de contrôle de volume. Si ce bit est défini, l’épingle représentant la mémoire tampon implémente un nœud de volume (KSNODETYPE_VOLUME) pour contrôler le niveau de volume du flux.
KSDSOUND_BUFFER_CTRL_POSITIONNOTIFY
Indique que la mémoire tampon dispose d’une fonctionnalité de notification de position. Si ce bit est défini, l’épingle représentant la mémoire tampon prend en charge la propriété KSPROPERTY_AUDIO_POSITION.
WaveFormatEx
Spécifie le format de données d’onde de la mémoire tampon. Ce membre est une structure de type WAVEFORMATEX.
Remarques
La structure KSDATAFORMAT_DSOUND contient un membre BufferDesc qui est une structure KSDSOUND_BUFFERDESC.
Notez que le WaveFormatEx membre de la structure KSDSOUND_BUFFERDESC peut être étendu pour inclure des informations de format supplémentaires (par exemple, un masque de configuration de canal). Pour plus d’informations, consultez WAVEFORMATEXTENSIBLE.
Exigences
Exigence | Valeur |
---|---|
d’en-tête | ksmedia.h (include Ksmedia.h) |