KSEVENT_PINCAPS_FORMATCHANGE

L'evento KSEVENT_PINCAPS_FORMATCHANGE indica allo stack audio che il formato di dati audio per il dispositivo audio è cambiato.

Tabella riepilogo utilizzo

Destinazione Tipo di descrittore di eventi Tipo di valore evento

Aggiungi (Blocca)

KSEVENT

KSEVENTDATA

Il tipo di valore dell'evento (dati dell'operazione) è una struttura KSEVENTDATA che specifica il metodo di notifica da usare per questo evento.

Commenti

Quando un driver di porta audio chiama la routine EventHandler per il driver miniport, passa una struttura PCEVENT_REQUEST . Questa struttura contiene un puntatore a una struttura PCEVENT_ITEM usata per descrivere un evento supportato da un filtro, un pin o un nodo.

Ad esempio, un driver che supporta l'evento KSEVENT_PINCAPS_FORMATCHANGE deve popolare una struttura PCEVENT_ITEM come indicato di seguito:

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

Nell'esempio di codice precedente, il gestore eventi personalizzato MyEventHandler deve monitorare l'evento KSEVENT_PINCAPS_FORMATCHANGE e registrarlo con Portcls quando viene attivato KSEVENT_PINCAPS_FORMATCHANGE. Il driver miniport deve chiamare il metodo IPortEvents::AddEventToEventList per registrare l'evento.

Per ottenere una descrizione dei pin, dei nodi, delle connessioni e delle proprietà supportati dal driver miniport, il driver di porta chiama il metodo IMiniport::GetDescription . Questa chiamata al metodo restituisce una struttura PCFILTER_DESCRIPTOR che punta a una tabella di automazione (PCAUTOMATION_TABLE). La struttura PCAUTOMATION_TABLE ha un membro Events . Questo membro punta a una matrice degli eventi associati al filtro supportato dal driver miniport. È quindi necessario impostare il membro Eventi per puntare alla matrice di eventi che contiene la struttura PCEVENT_ITEM per l'evento KSEVENT_PINCAPS_FORMATCHANGE .

Quando il driver miniport rileva una modifica del formato dinamico, deve chiamare il metodo IPortEvents::GenerateEventList per segnalare l'evento KSEVENT_PINCAPS_FORMATCHANGE .

Requisiti

Versione

Disponibile in Windows 7 e versioni successive dei sistemi operativi Windows.

Intestazione

Ks.h (includono Ks.h)

Vedere anche

Eventhandler

IMiniport::GetDescription

IPortEvents::AddEventToEventList

IPortEvents::GenerateEventList

KSEVENT

KSEVENTDATA

PCAUTOMATION_TABLE

PCEVENT_ITEM

PCEVENT_REQUEST

PCFILTER_DESCRIPTOR