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 la valeur 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 de 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 de logiciels.

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 la valeur 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 KSPROPSETID_Hrtf3d facultatif.

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, la broche représentant la mémoire tampon implémente un nœud de conversion à 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 KSDSOUND_BUFFER_CTRL_3D bit 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, la broche 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 Configuration requise Node-Ordering DirectSound.

KSDSOUND_BUFFER_CTRL_VOLUME

Indique que la mémoire tampon dispose d’une fonctionnalité de contrôle du volume. Si ce bit est défini, la broche 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, la broche représentant la mémoire tampon prend en charge la propriété KSPROPERTY_AUDIO_POSITION .

WaveFormatEx

Spécifie le format wave-data 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 membre WaveFormatEx 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.

Configuration requise

Condition requise Valeur
En-tête ksmedia.h (inclure Ksmedia.h)

Voir aussi

KSDATAFORMAT_DSOUND

KSNODETYPE_3D_EFFECTS

KSNODETYPE_SRC

KSNODETYPE_VOLUME

KSPROPERTY_AUDIO_POSITION

KSPROPSETID_Hrtf3d

WAVEFORMATEX

WAVEFORMATEXTENSIBLE