Compartir a través de


KSEVENT_PINCAPS_FORMATCHANGE

El KSEVENT_PINCAPS_FORMATCHANGE evento indica a la pila de audio que ha cambiado el formato de datos de audio para el dispositivo de audio.

Tabla de resumen de uso

Destino Tipo de descriptor de evento Tipo de valor de evento

Anclar

KSEVENT

KSEVENTDATA

El tipo de valor de evento (datos de operación) es una estructura KSEVENTDATA que especifica el método de notificación que se va a usar para este evento.

Observaciones

Cuando un controlador de puerto de audio llama a la rutina EventHandler para su controlador de minipuerto, pasa una estructura de PCEVENT_REQUEST . Esta estructura contiene un puntero a una estructura de PCEVENT_ITEM que se usa para describir un evento admitido por un filtro, un pin o un nodo.

Por lo tanto, por ejemplo, un controlador que admita el KSEVENT_PINCAPS_FORMATCHANGE evento debe rellenar una estructura de PCEVENT_ITEM de la siguiente manera:

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

En el ejemplo de código anterior, el controlador de eventos personalizado MyEventHandler debe supervisar el KSEVENT_PINCAPS_FORMATCHANGE evento y registrarlo con Portcls cuando se desencadene KSEVENT_PINCAPS_FORMATCHANGE. El controlador de miniport debe llamar al método IPortEvents::AddEventToEventList para registrar el evento.

Para obtener una descripción de los pines, nodos, conexiones y propiedades admitidos por el controlador de miniport, el controlador de puerto llama al método IMiniport::GetDescription . Esta llamada al método devuelve una estructura de PCFILTER_DESCRIPTOR que apunta a una tabla de automatización (PCAUTOMATION_TABLE). La estructura PCAUTOMATION_TABLE tiene un miembro Events . Este miembro apunta a una matriz de los eventos asociados al filtro que admite el controlador de miniporte. Por lo tanto, debe establecer el miembro Events para que apunte a la matriz de eventos que contiene la estructura PCEVENT_ITEM para el KSEVENT_PINCAPS_FORMATCHANGE evento.

Cuando el controlador de miniporte detecta un cambio de formato dinámico, debe llamar al método IPortEvents::GenerateEventList para indicar el KSEVENT_PINCAPS_FORMATCHANGE evento.

Requisitos

Versión

Disponible en Windows 7 y versiones posteriores de los sistemas operativos Windows.

Encabezado

Ks.h (incluye Ks.h)

Vea también

EventHandler

IMiniport::GetDescription

IPortEvents::AddEventToEventList

IPortEvents::GenerateEventList

KSEVENT

KSEVENTDATA

PCAUTOMATION_TABLE

PCEVENT_ITEM

PCEVENT_REQUEST

PCFILTER_DESCRIPTOR