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:
- IAudioEndpointVolume::SetChannelVolumeLevel
- IAudioEndpointVolume::SetChannelVolumeLevelScalar
- IAudioEndpointVolume::SetMasterVolumeLevel
- IAudioEndpointVolume::SetMasterVolumeLevelScalar
- IAudioEndpointVolume::SetMute
- IAudioEndpointVolume::VolumeStepDown
- IAudioEndpointVolume::VolumeStepUp
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
Interfaccia IAudioEndpointVolume
IAudioEndpointVolume::SetChannelVolumeLevel
IAudioEndpointVolume::SetChannelVolumeLevelScalar
IAudioEndpointVolume::SetMasterVolumeLevel
IAudioEndpointVolume::SetMasterVolumeLevelScalar
IAudioEndpointVolume::VolumeStepDown
IAudioEndpointVolume::VolumeStepUp