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


структура 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