Lire en anglais

Partager via


Gestion des événements dans AVStream

Les filtres et les broches AVStream décrivent les propriétés, les événements et les méthodes qu’ils prennent en charge en fournissant une structure KSAUTOMATION_TABLE dans le membre AutomationTable d’une structure KSFILTER_DESCRIPTOR ou d’une structure KSPIN_DESCRIPTOR_EX . Pour plus d’informations, consultez Descripteurs AVStream.

Pour prendre en charge les événements, un minidriver AVStream fournit un tableau de structures KSEVENT_SET dans une table Automation. Chaque structure KSEVENT_SET contient un tableau de structures KSEVENT_ITEM . Chaque structure KSEVENT_ITEM décrit comment le minidriver prend en charge un événement spécifique.

Le minidriver peut personnaliser le comportement des événements en fournissant des gestionnaires AVStrMiniAddEvent et AVStrMiniRemoveEvent dans les structures KSEVENT_ITEM.

Quand AVStream reçoit une demande d’activation d’événement, il génère une structure KSEVENT_ENTRY. Si le minidriver a fourni un gestionnaire AVStrAddEvent , AVStream transmet un pointeur vers la structure KSEVENT_ENTRY dans l’appel à AVStrAddEvent.

Si vous ne fournissez pas de gestionnaire AVStrAddEvent , AVStream ajoute par défaut l’événement à la liste d’objets. Votre minidriver ne reçoit pas de pointeur KSEVENT_ENTRY . Votre minidriver peut déclencher l’événement en appelant KsFilterGenerateEvents ou KsPinGenerateEvents.