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 |
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
IPortEvents::AddEventToEventList