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


структура KSRTAUDIO_BUFFER_PROPERTY_WITH_NOTIFICATION (ksmedia.h)

Структура KSRTAUDIO_BUFFER_PROPERTY_WITH_NOTIFICATION добавляет базовый адрес буфера, запрошенный размер буфера и число уведомлений к структуре KSPROPERTY . Эта структура используется клиентом для запроса выделения звукового буфера через KSPROPERTY_RTAUDIO_BUFFER_WITH_NOTIFICATION.

Синтаксис

typedef struct {
  KSPROPERTY Property;
  PVOID      BaseAddress;
  ULONG      RequestedBufferSize;
  ULONG      NotificationCount;
} KSRTAUDIO_BUFFER_PROPERTY_WITH_NOTIFICATION, *PKSRTAUDIO_BUFFER_PROPERTY_WITH_NOTIFICATION;

Члены

Property

Структура KSPROPERTY, которую клиент инициализирует соответствующим образом перед вызовом KSPROPERTY_RTAUDIO_BUFFER_WITH_NOTIFICATION.

BaseAddress

Указывает базовый адрес буфера. Если клиент не указывает базовый адрес, этот параметр имеет значение NULL.

RequestedBufferSize

Задает размер буфера в байтах. Драйвер возвращает фактический размер выделенного буфера в возвращаемой KSRTAUDIO_BUFFER структуре.

NotificationCount

Указывает количество уведомлений за цикл циклического буфера. В настоящее время допустимые значения : 1 или 2. Значение 1 приводит к уведомлению о зарегистрированных событиях уведомлений в конце циклического буфера. Значение 2 приводит к отправке уведомлений как в середине, так и в конце циклического буфера.

Комментарии

Запрос KSPROPERTY_RTAUDIO_BUFFER_WITH_NOTIFICATION использует структуру KSRTAUDIO_BUFFER_PROPERTY_WITH_NOTIFICATION для описания циклического буфера, запрашиваемого клиентом. Драйвер возвращает структуру KSRTAUDIO_BUFFER для описания фактически выделенного буфера.

Как и в случае с KSPROPERTY_RTAUDIO_BUFFER, значение, которое клиент записывает в элемент RequestedBufferSize , не является обязательным для драйвера.

Использование KSPROPERTY_RTAUDIO_BUFFER_WITH_NOTIFICATION упрощает передачу сигналов о событиях по мере прохождения DMA через циклический буфер. KSPROPERTY_RTAUDIO_REGISTER_NOTIFICATION_EVENT используется для регистрации событий для получения этих уведомлений, а KSPROPERTY_RTAUDIO_UNREGISTER_NOTIFICATION_EVENT — для отмены регистрации событий.

Требования

Требование Значение
Минимальная версия клиента Доступно в операционных системах Windows Vista и более поздних версий.
Верхняя часть ksmedia.h

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

KSPROPERTY

KSPROPERTY_RTAUDIO_BUFFER_WITH_NOTIFICATION

KSPROPERTY_RTAUDIO_REGISTER_NOTIFICATION_EVENT

KSPROPERTY_RTAUDIO_UNREGISTER_NOTIFICATION_EVENT