Compartir a través de


Control de eventos en AVStream

Los filtros y patillas de AVStream describen propiedades, eventos y métodos que admiten proporcionando una estructura KSAUTOMATION_TABLE en el miembro AutomationTable de una estructura KSFILTER_DESCRIPTOR o una estructura de KSPIN_DESCRIPTOR_EX . Para obtener más información, vea AvStream Descriptores.

Para admitir eventos, un minidriver AVStream proporciona una matriz de estructuras de KSEVENT_SET en una tabla de automatización. Cada estructura KSEVENT_SET contiene una matriz de estructuras de KSEVENT_ITEM . Cada estructura de KSEVENT_ITEM describe cómo el minidriver admite un evento específico.

El minidriver puede personalizar el comportamiento del evento proporcionando controladores AVStrMiniAddEvent y AVStrMiniRemoveEvent en las estructuras de KSEVENT_ITEM.

Cuando AVStream recibe una solicitud de habilitación de eventos, genera una estructura KSEVENT_ENTRY. Si el minidriver ha proporcionado un controlador AVStrAddEvent , AVStream pasa un puntero a la estructura KSEVENT_ENTRY en la llamada a AVStrAddEvent.

Si no proporciona un controlador AVStrAddEvent , avStream agrega el evento de forma predeterminada a la lista de objetos. El minidriver no recibe un puntero KSEVENT_ENTRY . El minidriver puede desencadenar el evento llamando a KsFilterGenerateEvents o KsPinGenerateEvents.