структура 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 бит, 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) для управления сдвигом. Дополнительные сведения см. в разделе DirectSound Node-Ordering Требования.
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 (include Ksmedia.h) |