KSDSOUND_BUFFERDESC Struktur (ksmedia.h)
Die KSDSOUND_BUFFERDESC-Struktur beschreibt einen DirectSound-Puffer.
Syntax
typedef struct {
ULONG Flags;
ULONG Control;
WAVEFORMATEX WaveFormatEx;
} KSDSOUND_BUFFERDESC, *PKSDSOUND_BUFFERDESC;
Angehörige
Flags
Gibt die Pufferkonfiguration an. Dieses Element kann auf das bitweise ODER eines oder mehrerer der folgenden Flagbits festgelegt werden:
KSDSOUND_BUFFER_PRIMARY
Gibt an, dass der Puffer ein primärer Soundpuffer ist (der Puffer, den der Benutzer beim Spielen eines Spiels hört).
KSDSOUND_BUFFER_STATIC
Gibt an, dass der Puffer für statische Sounddaten verwendet wird.
KSDSOUND_BUFFER_LOCHARDWARE
Erzwingt die Verwendung des Hardwaremischens durch den Puffer.
KSDSOUND_BUFFER_LOCSOFTWARE
Erzwingt die Speicherung des Puffers im Systemspeicher und die Verwendung von Softwaremischungen.
Control
Gibt die Funktionen des Puffers an. Die Funktionen eines Puffers werden durch eine Reihe von Steuerelementkennzeichnungen dargestellt. Dieses Element kann auf das bitweise ODER eines oder mehrerer der folgenden Flagbits festgelegt werden:
KSDSOUND_BUFFER_CTRL_3D
Gibt an, dass der Puffer entweder ein primärer Puffer oder ein sekundärer Puffer mit 3D-Steuerelementfunktion ist. Wenn dieses Bit festgelegt ist, implementiert der KS-Pin, der den Puffer darstellt, einen 3D-Knoten (KSNODETYPE_3D_EFFECTS). Wenn das KSDSOUND_BUFFER_CTRL_HRTF_3D Bit festgelegt ist, unterstützt der 3D-Knoten den optionalen KSPROPSETID_Hrtf3d Eigenschaftensatz.
KSDSOUND_BUFFER_CTRL_FREQUENCY
Gibt an, dass der Puffer über die Frequenzsteuerung verfügt. Wenn dieses Bit festgelegt ist, implementiert der Pin, der den Puffer darstellt, einen Samplerate-Konvertierungsknoten (KSNODETYPE_SRC).
KSDSOUND_BUFFER_CTRL_HRTF_3D
Gibt an, dass der Puffer eine Kopfübertragungsfunktion (HRTF) für 3D-Steuerelemente verwendet. Wenn dieses Bit festgelegt ist, muss auch das KSDSOUND_BUFFER_CTRL_3D Bit festgelegt werden.
KSDSOUND_BUFFER_CTRL_PAN
Gibt an, dass der Puffer über die Funktion "Schwenksteuerung" verfügt. Wenn dieses Bit festgelegt ist, implementiert der Pin, der den Puffer darstellt, einen Volumeknoten (KSNODETYPE_VOLUME), um die Verschiebung zu steuern. Weitere Informationen finden Sie unter DirectSound Node-Ordering Requirements.
KSDSOUND_BUFFER_CTRL_VOLUME
Gibt an, dass der Puffer über die Lautstärkesteuerung verfügt. Wenn dieses Bit festgelegt ist, implementiert der Pin, der den Puffer darstellt, einen Volumeknoten (KSNODETYPE_VOLUME), um die Volumeebene des Datenstroms zu steuern.
KSDSOUND_BUFFER_CTRL_POSITIONNOTIFY
Gibt an, dass der Puffer positionsbenachrichtigungsfähig ist. Wenn dieses Bit festgelegt ist, unterstützt der Pin, der den Puffer darstellt, die KSPROPERTY_AUDIO_POSITION-Eigenschaft.
WaveFormatEx
Gibt das Wellendatenformat des Puffers an. Dieses Element ist eine Struktur vom Typ WAVEFORMATEX.
Bemerkungen
Die KSDATAFORMAT_DSOUND-Struktur enthält ein BufferDesc--Element, das eine KSDSOUND_BUFFERDESC Struktur ist.
Beachten Sie, dass das WaveFormatEx- Mitglied der KSDSOUND_BUFFERDESC-Struktur erweitert werden kann, um zusätzliche Formatinformationen (z. B. eine Kanalkonfigurationsmaske) einzuschließen. Weitere Informationen finden Sie unter WAVEFORMATEXTENSIBLE.
Anforderungen
Anforderung | Wert |
---|---|
Header- | ksmedia.h (enthalten Ksmedia.h) |