Поделиться через


Интерфейс IAudioRenderClient (audioclient.h)

Интерфейс IAudioRenderClient позволяет клиенту записывать выходные данные в буфер конечной точки отрисовки. Клиент получает ссылку на интерфейс IAudioRenderClient объекта потока, вызывая метод IAudioClient::GetService с параметром riid , равным REFIID IID_IAudioRenderClient.

Методы в этом интерфейсе управляют перемещением пакетов данных, содержащих данные отрисовки звука. Длина пакета данных выражается в виде количества аудиокадров в пакете. Размер звукового кадра определяется элементом nBlockAlign структуры WAVEFORMATEX , которую клиент получает путем вызова метода IAudioClient::GetMixFormat . Размер звукового кадра в байтах равен количеству каналов в потоке, умноженным на размер выборки на канал. Например, размер кадра составляет четыре байта для стерео (2-канального) потока с 16-разрядными выборками. Пакет всегда содержит целое количество аудиокадров.

При выпуске экземпляра интерфейса IAudioRenderClient клиент должен вызвать метод Release интерфейса из того же потока, что и вызов IAudioClient::GetService , создавший объект .

Примеры кода, использующие интерфейс IAudioRenderClient , см. в следующих разделах:

Наследование

Интерфейс IAudioRenderClient наследуется от интерфейса IUnknown . IAudioRenderClient также имеет следующие типы элементов:

Методы

Интерфейс IAudioRenderClient содержит следующие методы.

 
IAudioRenderClient::GetBuffer

Извлекает указатель на следующее доступное пространство в буфере конечной точки отрисовки, в которое вызывающий объект может записать пакет данных.
IAudioRenderClient::ReleaseBuffer

Метод ReleaseBuffer освобождает буферное пространство, полученное при предыдущем вызове метода IAudioRenderClient::GetBuffer.

Требования

Требование Значение
Минимальная версия клиента Windows Vista [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2008 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header audioclient.h

См. также раздел

Основные звуковые интерфейсы

IAudioClient::GetMixFormat

IAudioClient::GetService

WASAPI