Condividi tramite


struttura AUDIO_VOLUME_NOTIFICATION_DATA (endpointvolume.h)

La struttura AUDIO_VOLUME_NOTIFICATION_DATA descrive una modifica del livello del volume o dello stato di disattivazione di un dispositivo endpoint audio.

Sintassi

typedef struct AUDIO_VOLUME_NOTIFICATION_DATA {
  GUID  guidEventContext;
  BOOL  bMuted;
  float fMasterVolume;
  UINT  nChannels;
  float afChannelVolumes[1];
} AUDIO_VOLUME_NOTIFICATION_DATA, *PAUDIO_VOLUME_NOTIFICATION_DATA;

Members

guidEventContext

Valore di contesto per il metodo IAudioEndpointVolumeCallback::OnNotify . Questo membro è il valore del GUID del contesto di evento fornito come parametro di input per la chiamata al metodo IAudioEndpointVolume che ha modificato il livello del volume dell'endpoint o lo stato di disattivazione. Per altre informazioni, vedere la sezione Osservazioni.

bMuted

Specifica se il flusso audio è attualmente disattivato. Se bMuted è TRUE, il flusso viene disattivato. Se FALSE, il flusso non viene disattivato.

fMasterVolume

Specifica il livello di volume master corrente del flusso audio. Il livello del volume viene normalizzato nell'intervallo compreso tra 0,0 e 1,0, dove 0,0 è il livello minimo del volume e 1,0 è il livello massimo. All'interno di questo intervallo, la relazione tra il livello del volume normalizzato e l'attenuazione dell'ampiezza del segnale è descritta da una curva non lineare e audio-tapered. Per altre informazioni sui taper audio, vedi Controlli volume con tocco audio.

nChannels

Specifica il numero di canali nel flusso audio, che corrisponde anche al numero di elementi nella matrice afChannelVolumes . Se il flusso audio contiene n canali, i canali vengono numerati da 0 a n-1. Il livello del volume per un canale specifico è contenuto nell'elemento della matrice il cui indice corrisponde al numero di canale.

afChannelVolumes[1]

Primo elemento in una matrice di volumi di canali. Questo elemento contiene il livello di volume corrente del canale 0 nel flusso audio. Se il flusso audio contiene più canali, i livelli di volume per i canali aggiuntivi seguono immediatamente la struttura AUDIO_VOLUME_NOTIFICATION_DATA . Il livello di volume per ogni canale viene normalizzato nell'intervallo compreso tra 0,0 e 1,0, dove 0,0 è il livello minimo del volume e 1,0 è il livello massimo. All'interno di questo intervallo, la relazione tra il livello del volume normalizzato e l'attenuazione dell'ampiezza del segnale è descritta da una curva non lineare e audio-tapered.

Commenti

Questa struttura viene utilizzata dal metodo IAudioEndpointVolumeCallback::OnNotify .

Un client può registrarsi per ricevere una notifica quando cambia il livello del volume o lo stato di disattivazione di un dispositivo endpoint. I metodi seguenti possono causare una modifica di questo tipo:

Quando una chiamata a uno di questi metodi causa un evento di modifica del volume , ovvero una modifica del livello del volume o lo stato di disattivazione, il metodo invia notifiche a tutti i client che hanno registrato per riceverli. Il metodo notifica a un client chiamando il metodo IAudioEndpointVolumeCallback::OnNotify del client. Tramite la chiamata OnNotify , il client riceve un puntatore a una struttura AUDIO_VOLUME_NOTIFICATION_DATA che descrive la modifica.

Ognuno dei metodi nell'elenco precedente accetta un parametro di input denominato pguidEventContext, che è un puntatore a un GUID del contesto eventi. Prima di inviare notifiche ai client, il metodo copia il GUID del contesto eventi a cui fa riferimento pguidEventContext nel membro guidEventContext della struttura AUDIO_VOLUME_NOTIFICATION_DATA fornita ai client tramite i metodi OnNotify . Se pguidEventContext è NULL, il valore del membro guidEventContext viene impostato su GUID_NULL.

Nell'implementazione del metodo OnNotify , un client può esaminare il GUID del contesto dell'evento da tale chiamata per individuare se è l'origine dell'evento di modifica del volume o di un altro client.

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [app desktop | App UWP]
Server minimo supportato Windows Server 2008 [app desktop | App UWP]
Intestazione endpointvolume.h

Vedi anche

Strutture audio di base

Interfaccia IAudioEndpointVolume

IAudioEndpointVolume::SetChannelVolumeLevel

IAudioEndpointVolume::SetChannelVolumeLevelScalar

IAudioEndpointVolume::SetMasterVolumeLevel

IAudioEndpointVolume::SetMasterVolumeLevelScalar

IAudioEndpointVolume::SetMute

IAudioEndpointVolume::VolumeStepDown

IAudioEndpointVolume::VolumeStepUp

Interfaccia IAudioEndpointVolumeCallback

IAudioEndpointVolumeCallback::OnNotify