Метод IAudioClient3::GetSharedModeEnginePeriod (audioclient.h)
Возвращает диапазон периодичности, поддерживаемый подсистемой для указанного формата потока. Периодичность подсистемы — это скорость, с которой обработчик активирует управляемый событиями звуковой клиент для передачи звуковых данных в подсистему или из нее. Возвращаемые значения зависят от характеристик звукового клиента, указанных в предыдущем вызове IAudioClient2::SetClientProperties.
Синтаксис
HRESULT GetSharedModeEnginePeriod(
[in] const WAVEFORMATEX *pFormat,
[out] UINT32 *pDefaultPeriodInFrames,
[out] UINT32 *pFundamentalPeriodInFrames,
[out] UINT32 *pMinPeriodInFrames,
[out] UINT32 *pMaxPeriodInFrames
);
Параметры
[in] pFormat
Тип: const WAVEFORMATEX*
Формат потока, для которого запрашиваются поддерживаемые периодичности.
[out] pDefaultPeriodInFrames
Тип: UINT32*
Период по умолчанию, с которого подсистема будет разбудить клиент для передачи примеров звука.
[out] pFundamentalPeriodInFrames
Тип: UINT32*
Фундаментальный период, в течение которого подсистема будет разбудить клиент для передачи примеров звука. При настройке периодичности звукового модуля необходимо использовать целочисленный кратный этому значению.
[out] pMinPeriodInFrames
Тип: UINT32*
Самый короткий период в звуковых кадрах, с которого звуковой механизм будет разбудить клиента для передачи примеров звука.
[out] pMaxPeriodInFrames
Тип: UINT32*
Самый длительный период в аудиокадрах, с помощью которого звуковой механизм будет разбудить клиента для передачи звуковых примеров.
Возвращаемое значение
Тип: HRESULT
Этот метод возвращает S_OK , чтобы указать, что он успешно завершен. В противном случае возвращается соответствующий код ошибки.
Комментарии
Звуковые клиенты запрашивают определенную периодичность от обработчика звука с параметром PeriodInFrames к IAudioClient3::InitializeSharedAudioStream. Значение PeriodInFrames должно быть целочисленным, кратным значению, возвращаемого в параметре pFundamentalPeriodInFrames . PeriodInFrames также должно быть больше или равно значению, возвращаемого в pMinPeriodInFrames , и меньше или равно значению pMaxPeriodInFrames.
Например, для формата 44100 кГц GetSharedModeEnginePeriod может возвращать следующее:
pDefaultPeriodInFrames = 448 кадров (около 10,16 миллисекунда)
pFundamentalPeriodInFrames = 4 кадра (около 0,09 миллисекунд)
pMinPeriodInFrames = 48 кадров (около 1,09 миллисекунда)
pMaxPeriodInFrames = 448 кадров (аналогично значению по умолчанию)
Допустимые значения параметра PeriodInFrames для InitializeSharedAudioStream будут включать 48 и 448. Они также будут включать такие вещи, как 96 и 128.
Они НЕ будут включать 4 (что меньше минимально допустимого значения) или 98 (что не кратно фундаментальному) или 1000 (что больше максимально допустимого значения).
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 10 [только классические приложения] |
Минимальная версия сервера | Windows Server 2016 [только классические приложения] |
Целевая платформа | Windows |
Header | audioclient.h |