Condividi tramite


Interfaccia IAudioSessionEvents (audiopolicy.h)

L'interfaccia IAudioSessionEvents fornisce notifiche di eventi correlati alla sessione, ad esempio modifiche nel livello del volume, nome visualizzato e stato sessione. A differenza delle altre interfacce di questa sezione, implementate dal componente di sistema WASAPI, un client WASAPI implementa l'interfaccia IAudioSessionEvents . Per ricevere notifiche evento, il client passa un puntatore alla relativa interfaccia IAudioSessionEvents al metodo IAudioSessionControl::RegisterAudioSessionNotification .

Dopo aver registrato la relativa interfaccia IAudioClientSessionEvents , il client riceve notifiche di evento sotto forma di callback tramite i metodi nell'interfaccia.

Nell'implementazione dell'interfaccia IAudioSessionEvents , il client deve osservare queste regole per evitare deadlock e comportamento non definito:

  • I metodi nell'interfaccia devono essere non sbloccati. Il client non deve mai attendere su un oggetto di sincronizzazione durante un callback di eventi.
  • Il client non deve mai chiamare il metodo IAudioSessionControl::UnregisterAudioSessionNotification durante un callback dell'evento.
  • Il client non deve mai rilasciare il riferimento finale in un oggetto WASAPI durante un callback di eventi.
Per un esempio di codice che implementa un'interfaccia IAudioSessionEvents , vedere Eventi sessione audio. Per un esempio di codice che registra l'interfaccia IAudioSessionEvents di un client per ricevere notifiche, vedere Eventi audio per applicazioni audio legacy.

Ereditarietà

L'interfaccia IAudioSessionEvents eredita dall'interfaccia IUnknown . IAudioSessionEvents include anche questi tipi di membri:

Metodi

L'interfaccia IAudioSessionEvents include questi metodi.

 
IAudioSessionEvents::OnChannelVolumeChanged

Il metodo OnChannelVolumeChanged notifica al client che il livello di volume di un canale audio nella sottomix sessione è cambiato.
IAudioSessionEvents::OnDisplayNameChanged

Il metodo OnDisplayNameChanged notifica al client che il nome visualizzato per la sessione è stato modificato.
IAudioSessionEvents::OnGroupingParamChanged

Il metodo OnGroupingParamChanged notifica al client che il parametro di raggruppamento per la sessione è stato modificato.
IAudioSessionEvents::OnIconPathChanged

Il metodo OnIconPathChanged notifica al client che l'icona di visualizzazione per la sessione è stata modificata.
IAudioSessionEvents::OnSessionDisconnected

Il metodo OnSessionDisconnected notifica al client che la sessione audio è stata disconnessa.
IAudioSessionEvents::OnSimpleVolumeChanged

Il metodo OnSimpleVolumeChanged notifica al client che il livello del volume o la modifica dello stato di modifica della sessione audio.
IAudioSessionEvents::OnStateChanged

Il metodo OnStateChanged notifica al client che lo stato dell'attività di flusso della sessione è cambiato.

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [app desktop | App UWP]
Server minimo supportato Windows Server 2008 [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione audiopolicy.h

Vedi anche

Interfacce audio principali

IAudioSessionControl::RegisterAudioSessionNotification

IAudioSessionControl::UnregisterAudioSessionNotification

WASAPI