Interfaz IAudioSessionEvents (audiopolicy.h)

La interfaz IAudioSessionEvents proporciona notificaciones de eventos relacionados con la sesión, como cambios en el nivel de volumen, el nombre para mostrar y el estado de sesión. A diferencia de las demás interfaces de esta sección, que se implementan mediante el componente del sistema WASAPI, un cliente WASAPI implementa la interfaz IAudioSessionEvents . Para recibir notificaciones de eventos, el cliente pasa un puntero a su interfaz IAudioSessionEvents al método IAudioSessionControl::RegisterAudioSessionNotification .

Después de registrar su interfaz IAudioClientSessionEvents , el cliente recibe notificaciones de eventos en forma de devoluciones de llamada a través de los métodos de la interfaz .

Al implementar la interfaz IAudioSessionEvents , el cliente debe observar estas reglas para evitar interbloqueos y un comportamiento indefinido:

  • Los métodos de la interfaz deben no bloquearse. El cliente nunca debe esperar en un objeto de sincronización durante una devolución de llamada de evento.
  • El cliente nunca debe llamar al método IAudioSessionControl::UnregisterAudioSessionNotification durante una devolución de llamada de evento.
  • El cliente nunca debe liberar la referencia final en un objeto WASAPI durante una devolución de llamada de evento.
Para obtener un ejemplo de código que implementa una interfaz IAudioSessionEvents , vea Eventos de sesión de audio. Para obtener un ejemplo de código que registra la interfaz IAudioSessionEvents de un cliente para recibir notificaciones, consulte Eventos de audio para aplicaciones de audio heredadas.

Herencia

La interfaz IAudioSessionEvents hereda de la interfaz IUnknown . IAudioSessionEvents también tiene estos tipos de miembros:

Métodos

La interfaz IAudioSessionEvents tiene estos métodos.

 
IAudioSessionEvents::OnChannelVolumeChanged

El método OnChannelVolumeChanged notifica al cliente que ha cambiado el nivel de volumen de un canal de audio en la submezcla de sesión.
IAudioSessionEvents::OnDisplayNameChanged

El método OnDisplayNameChanged notifica al cliente que ha cambiado el nombre para mostrar de la sesión.
IAudioSessionEvents::OnGroupingParamChanged

El método OnGroupingParamChanged notifica al cliente que el parámetro de agrupación de la sesión ha cambiado.
IAudioSessionEvents::OnIconPathChanged

El método OnIconPathChanged notifica al cliente que ha cambiado el icono de presentación de la sesión.
IAudioSessionEvents::OnSessionDisconnected

El método OnSessionDisconnected notifica al cliente que se ha desconectado la sesión de audio.
IAudioSessionEvents::OnSimpleVolumeChanged

El método OnSimpleVolumeChanged notifica al cliente que el nivel de volumen o el estado de silenciamiento de la sesión de audio ha cambiado.
IAudioSessionEvents::OnStateChanged

El método OnStateChanged notifica al cliente que el estado de la actividad de flujo de la sesión ha cambiado.

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista [aplicaciones de escritorio | aplicaciones para UWP]
Servidor mínimo compatible Windows Server 2008 [aplicaciones de escritorio | aplicaciones para UWP]
Plataforma de destino Windows
Encabezado audiopolicy.h

Consulte también

Interfaces de audio principales

IAudioSessionControl::RegisterAudioSessionNotification

IAudioSessionControl::UnregisterAudioSessionNotification

WASAPI