AUDIO_VOLUME_NOTIFICATION_DATA-Struktur (endpointvolume.h)
Die AUDIO_VOLUME_NOTIFICATION_DATA-Struktur beschreibt eine Änderung der Lautstärke oder des Stummschaltzustands eines Audioendpunktgeräts.
Syntax
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;
Member
guidEventContext
Kontextwert für die IAudioEndpointVolumeCallback::OnNotify-Methode . Dieser Member ist der Wert der Ereigniskontext-GUID, die als Eingabeparameter für den IAudioEndpointVolume-Methodenaufruf bereitgestellt wurde, der die Endpunktvolumeebene oder den Mutingzustand geändert hat. Weitere Informationen finden Sie in den Hinweisen.
bMuted
Gibt an, ob der Audiostream derzeit stummgeschaltet ist. Wenn bMutedTRUE ist, wird der Stream stummgeschaltet. Bei FALSE wird der Stream nicht stummgeschaltet.
fMasterVolume
Gibt den aktuellen master Lautstärkepegel des Audiostreams an. Die Volumeebene wird auf den Bereich von 0,0 bis 1,0 normalisiert, wobei 0,0 die minimale Lautstärke und 1,0 der maximale Pegel ist. Innerhalb dieses Bereichs wird die Beziehung des normalisierten Lautstärkepegels zur Dämpfung der Signalamplitude durch eine nichtlineare, audioverkippte Kurve beschrieben. Weitere Informationen zu Audio-Tapern finden Sie unter Lautstärkesteuerungen mit Audioverknippen.
nChannels
Gibt die Anzahl von Kanälen im Audiostream an. Dies ist auch die Anzahl der Elemente im Array afChannelVolumes . Wenn der Audiostream n Kanäle enthält, werden die Kanäle von 0 bis n-1 nummeriert. Die Volumeebene für einen bestimmten Kanal ist im Arrayelement enthalten, dessen Index mit der Kanalnummer übereinstimmt.
afChannelVolumes[1]
Das erste Element in einem Array von Kanalvolumes. Dieses Element enthält die aktuelle Lautstärkestufe von Kanal 0 im Audiostream. Wenn der Audiostream mehr als einen Kanal enthält, folgen die Lautstärkepegel für die zusätzlichen Kanäle sofort der AUDIO_VOLUME_NOTIFICATION_DATA Struktur. Die Lautstärkeebene für jeden Kanal wird auf den Bereich von 0,0 bis 1,0 normalisiert, wobei 0,0 die minimale Lautstärke und 1,0 die maximale Ebene ist. Innerhalb dieses Bereichs wird die Beziehung des normalisierten Lautstärkepegels zur Dämpfung der Signalamplitude durch eine nichtlineare, audioverkippte Kurve beschrieben.
Hinweise
Diese Struktur wird von der IAudioEndpointVolumeCallback::OnNotify-Methode verwendet.
Ein Client kann sich registrieren, um benachrichtigt zu werden, wenn sich die Volumeebene oder der Stummschaltzustand eines Endpunktgeräts ändert. Die folgenden Methoden können eine solche Änderung verursachen:
- IAudioEndpointVolume::SetChannelVolumeLevel
- IAudioEndpointVolume::SetChannelVolumeLevelScalar
- IAudioEndpointVolume::SetMasterVolumeLevel
- IAudioEndpointVolume::SetMasterVolumeLevelScalar
- IAudioEndpointVolume::SetMute
- IAudioEndpointVolume::VolumeStepDown
- IAudioEndpointVolume::VolumeStepUp
Jede der Methoden in der vorherigen Liste akzeptiert einen Eingabeparameter namens pguidEventContext, bei dem es sich um einen Zeiger auf eine Ereigniskontext-GUID handelt. Vor dem Senden von Benachrichtigungen an Clients kopiert die Methode die Ereigniskontext-GUID, auf die pguidEventContext verweist, in das guidEventContext-Element der AUDIO_VOLUME_NOTIFICATION_DATA-Struktur , die sie über ihre OnNotify-Methoden an Clients bereitstellt. Wenn pguidEventContextNULL ist, wird der Wert des guidEventContext-Elements auf GUID_NULL festgelegt.
Bei der Implementierung der OnNotify-Methode kann ein Client die Ereigniskontext-GUID aus diesem Aufruf überprüfen, um zu ermitteln, ob er oder ein anderer Client die Quelle des Volumeänderungsereignisses ist.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Vista [Desktop-Apps | UWP-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 [Desktop-Apps | UWP-Apps] |
Kopfzeile | endpointvolume.h |
Weitere Informationen
IAudioEndpointVolume-Schnittstelle
IAudioEndpointVolume::SetChannelVolumeLevel
IAudioEndpointVolume::SetChannelVolumeLevelScalar
IAudioEndpointVolume::SetMasterVolumeLevel
IAudioEndpointVolume::SetMasterVolumeLevelScalar
IAudioEndpointVolume::VolumeStepDown
IAudioEndpointVolume::VolumeStepUp