структура KSDSOUND_BUFFERDESC (ksmedia.h)
Структура KSDSOUND_BUFFERDESC описывает буфер DirectSound.
Синтаксис
typedef struct {
ULONG Flags;
ULONG Control;
WAVEFORMATEX WaveFormatEx;
} KSDSOUND_BUFFERDESC, *PKSDSOUND_BUFFERDESC;
Члены
Flags
Задает конфигурацию буфера. Для этого элемента можно задать побитовое ЗНАЧЕНИЕ ИЛИ одного или нескольких из следующих битов флага:
KSDSOUND_BUFFER_PRIMARY
Указывает, что буфер является основным звуковым буфером (буфер, который пользователь слышит при игре).
KSDSOUND_BUFFER_STATIC
Указывает, что буфер будет использоваться для статических звуковых данных.
KSDSOUND_BUFFER_LOCHARDWARE
При принудительном использовании буфера используется аппаратное смешивание.
KSDSOUND_BUFFER_LOCSOFTWARE
Принудительное хранение буфера в системной памяти и использование программного смешивания.
Control
Указывает возможности буфера. Возможности буфера представлены набором флагов элементов управления. Для этого элемента можно задать побитовое ЗНАЧЕНИЕ ИЛИ одного или нескольких из следующих битов флага:
KSDSOUND_BUFFER_CTRL_3D
Указывает, что буфер является либо первичным, либо вторичным буфером с возможностью 3D-управления. Если этот бит задан, контакт KS, представляющий буфер, реализует трехмерный узел (KSNODETYPE_3D_EFFECTS). Если задан бит KSDSOUND_BUFFER_CTRL_HRTF_3D, трехмерный узел поддерживает необязательный набор свойств KSPROPSETID_Hrtf3d .
KSDSOUND_BUFFER_CTRL_FREQUENCY
Указывает, что буфер имеет возможность управления частотой. Если этот бит задан, контакт, представляющий буфер, реализует узел преобразования частоты выборки (KSNODETYPE_SRC).
KSDSOUND_BUFFER_CTRL_HRTF_3D
Указывает, что буфер использует функцию передачи, связанную с головой (HRTF), для трехмерного управления. Если этот бит задан, необходимо также задать бит KSDSOUND_BUFFER_CTRL_3D.
KSDSOUND_BUFFER_CTRL_PAN
Указывает, что буфер имеет возможность управления сдвигом. Если этот бит задан, контакт, представляющий буфер, реализует узел тома (KSNODETYPE_VOLUME) для управления сдвигом. Дополнительные сведения см. в разделе Требования к Node-Ordering DirectSound.
KSDSOUND_BUFFER_CTRL_VOLUME
Указывает, что буфер имеет возможность управления громкостями. Если этот бит задан, контакт, представляющий буфер, реализует узел тома (KSNODETYPE_VOLUME) для управления уровнем громкости потока.
KSDSOUND_BUFFER_CTRL_POSITIONNOTIFY
Указывает, что буфер имеет возможность уведомления о положении. Если этот бит задан, контакт, представляющий буфер, поддерживает свойство KSPROPERTY_AUDIO_POSITION .
WaveFormatEx
Задает формат волновых данных буфера. Этот элемент является структурой типа WAVEFORMATEX.
Комментарии
Структура KSDATAFORMAT_DSOUND содержит элемент BufferDesc , который является KSDSOUND_BUFFERDESC структурой.
Обратите внимание, что член WaveFormatEx структуры KSDSOUND_BUFFERDESC можно расширить для включения дополнительных сведений о форматировании (например, маски конфигурации канала). Дополнительные сведения см. в разделе WAVEFORMATEXTENSIBLE.
Требования
Требование | Значение |
---|---|
Заголовок | ksmedia.h (включая Ksmedia.h) |