KSEVENT_PINCAPS_FORMATCHANGE

L’événement KSEVENT_PINCAPS_FORMATCHANGE indique à la pile audio que le format de données audio pour le périphérique audio a changé.

Tableau récapitulatif de l’utilisation

Cible Type de descripteur d’événement Type de valeur d’événement

Épingle

KSEVENT

KSEVENTDATA

Le type de valeur d’événement (données d’opération) est une structure KSEVENTDATA qui spécifie la méthode de notification à utiliser pour cet événement.

Notes

Lorsqu’un pilote de port audio appelle la routine EventHandler pour son pilote miniport, il transmet une structure PCEVENT_REQUEST . Cette structure contient un pointeur vers une structure PCEVENT_ITEM utilisée pour décrire un événement pris en charge par un filtre, une broche ou un nœud.

Ainsi, par exemple, un pilote qui prend en charge l’événement KSEVENT_PINCAPS_FORMATCHANGE doit remplir une structure PCEVENT_ITEM comme suit :

static PCEVENT_ITEM FormatChangePinEvent[] = {
  {
    &KSEVENTSETID_PinCapsChange,
    KSEVENT_PINCAPS_FORMATCHANGE,
    KSEVENT_TYPE_ENABLE | KSEVENT_TYPE_BASICSUPPORT,
    MyEventHandler
  }
};

Dans l’exemple de code précédent, le gestionnaire d’événements personnalisé MyEventHandler doit surveiller l’événement et l’inscrire KSEVENT_PINCAPS_FORMATCHANGE auprès de Portcls lorsque KSEVENT_PINCAPS_FORMATCHANGE est déclenché. Le pilote miniport doit appeler la méthode IPortEvents::AddEventToEventList pour inscrire l’événement.

Pour obtenir une description des broches, nœuds, connexions et propriétés pris en charge par le pilote miniport, le pilote de port appelle la méthode IMiniport::GetDescription . Cet appel de méthode retourne une structure PCFILTER_DESCRIPTOR qui pointe vers une table Automation (PCAUTOMATION_TABLE). La structure PCAUTOMATION_TABLE a un membre Events . Ce membre pointe vers un tableau des événements associés au filtre pris en charge par le pilote miniport. Vous devez donc définir le membre Events pour qu’il pointe vers le tableau d’événements qui contient la structure PCEVENT_ITEM de l’événement KSEVENT_PINCAPS_FORMATCHANGE .

Lorsque le pilote miniport détecte une modification de format dynamique, il doit appeler la méthode IPortEvents::GenerateEventList pour signaler l’événement KSEVENT_PINCAPS_FORMATCHANGE .

Spécifications

Version

Disponible dans Windows 7 et versions ultérieures des systèmes d’exploitation Windows.

En-tête

Ks.h (inclure Ks.h)

Voir aussi

EventHandler

IMiniport::GetDescription

IPortEvents::AddEventToEventList

IPortEvents::GenerateEventList

KSEVENT

KSEVENTDATA

PCAUTOMATION_TABLE

PCEVENT_ITEM

PCEVENT_REQUEST

PCFILTER_DESCRIPTOR