ISimpleAudioVolume-Schnittstelle (audioclient.h)
Die ISimpleAudioVolume-Schnittstelle ermöglicht es einem Client, den master Lautstärkepegel einer Audiositzung zu steuern. Die IAudioClient::Initialize-Methode initialisiert ein Streamobjekt und weist den Stream einer Audiositzung zu. Der Client ruft einen Verweis auf die ISimpleAudioVolume-Schnittstelle in einem Streamobjekt ab, indem er die IAudioClient::GetService-Methode aufruft, wobei der Parameter riid auf REFIID IID_ISimpleAudioVolume festgelegt ist.
Alternativ kann ein Client die ISimpleAudioVolume-Schnittstelle einer vorhandenen Sitzung abrufen, ohne zuerst ein Streamobjekt erstellen und den Stream der Sitzung hinzufügen zu müssen. Stattdessen ruft der Client die IAudioSessionManager::GetSimpleAudioVolume-Methode mit der Sitzungs-GUID auf.
Die effektive Lautstärke eines beliebigen Kanals im Sitzungs-Submix, wie er von den Lautsprechern gehört wird, ist das Produkt der folgenden vier Faktoren auf Lautstärkeebene:
- Die Volumeebenen pro Kanal der Streams in der Sitzung, die Clients über die Methoden in der IAudioStreamVolume-Schnittstelle steuern können.
- Die master Volumeebene der Sitzung, die Clients über die Methoden in der ISimpleAudioVolume-Schnittstelle steuern können.
- Die Volumeebene pro Kanal der Sitzung, die Clients über die Methoden in der IChannelAudioVolume-Schnittstelle steuern können.
- Die richtlinienbasierte Volumeebene der Sitzung, die das System dynamisch der Sitzung zuweist, wenn sich die globale Mischung ändert.
Typische Audioanwendungen ändern die Lautstärkepegel von Sitzungen nicht. Stattdessen verlassen sie sich darauf, dass Benutzer diese Volumeebenen über das Sndvol-Programm festlegen. Sndvol ändert nur die master Volumeebenen von Sitzungen. Standardmäßig legt der Sitzungs-Manager die master Volumeebene bei der ersten Aktivierung einer Sitzung auf 1,0 fest. Nachfolgende Volumeänderungen durch Sndvol oder andere Clients sind über Computerneustarts hinweg persistent.
Beim Freigeben einer ISimpleAudioVolume-Schnittstelle instance muss der Client die Release-Methode der Schnittstelle aus demselben Thread aufrufen wie der Aufruf von IAudioClient::GetService, der das Objekt erstellt hat.
Die ISimpleAudioVolume-Schnittstelle steuert die Lautstärke einer Audiositzung. Eine Audiositzung ist eine Sammlung von Streams im freigegebenen Modus. Diese Schnittstelle funktioniert nicht mit Datenströmen im exklusiven Modus. Informationen zu Volumesteuerelementen für Datenströme im exklusiven Modus finden Sie unter EndpointVolume-API.
Vererbung
Die ISimpleAudioVolume-Schnittstelle erbt von der IUnknown-Schnittstelle . ISimpleAudioVolume verfügt auch über folgende Membertypen:
Methoden
Die ISimpleAudioVolume-Schnittstelle verfügt über diese Methoden.
ISimpleAudioVolume::GetMasterVolume Die GetMasterVolume-Methode ruft die Clientlautstärke für die Audiositzung ab. |
ISimpleAudioVolume::GetMute Die GetMute-Methode ruft den aktuellen Stummschaltungszustand für die Audiositzung ab. |
ISimpleAudioVolume::SetMasterVolume Die SetMasterVolume-Methode legt den master Lautstärkepegel für die Audiositzung fest. |
ISimpleAudioVolume::SetMute Die SetMute-Methode legt den Stummschaltungszustand für die Audiositzung fest. |
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Vista [Desktop-Apps | UWP-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 [Desktop-Apps | UWP-Apps] |
Zielplattform | Windows |
Kopfzeile | audioclient.h |
Weitere Informationen
IAudioStreamVolume-Schnittstelle