Audio-Tapered Lautstärkeregler
Die IAudioEndpointVolume-Schnittstelle verwaltet Lautstärkeregler, die audio tapered sind. Diese Steuerelemente eignen sich gut für Windows-Anwendungen, die Lautstärkeregler anzeigen. Bei einem Lautstärkeregler, der an eine audioverjüngte Lautstärkeregelung gebunden ist, führt jede Änderung der Position des Schiebereglers zu einer Änderung der wahrgenommenen Lautstärke, die proportional zu der vom Schieberegler zurückgelegten Entfernung ist. Für eine bestimmte Fahrtstrecke ist der Betrag, um den die wahrgenommene Lautstärke zunimmt oder abnimmt, ungefähr gleich, unabhängig davon, ob die Schiebereglerbewegung im unteren, oberen oder mittleren Teil des Bewegungsbereichs des Schiebereglers stattfindet. Die wahrgenommene Lautstärke variiert ungefähr linear mit dem Logarithmus der Audiosignalleistung.
Der Begriff Audio taper bezeichnet ursprünglich die verjüngte Form des Widerstandselements in einem Potentiometer, das als Lautstärkeregelung in einem Audioelektronikgerät verwendet wird. Ein audioverknöpftes resistives Element ist am breitesten an der Null-Lautstärke-Position und am schmalsten an der Position mit maximaler Lautstärke. Das Potentiometer steuert die Spannungsebene des Audiosignals, das das Gerät über seine Lautsprecher abspielt. Die Verjüngung ist so konzipiert, dass eine etwa lineare Beziehung zwischen der Position des Potentiometerwischers und der wahrgenommenen Lautstärke an den Lautsprechern hergestellt wird. Die Beziehung zwischen der Wischposition und der Spannung an den Lautsprechern ist nichtlinear.
Im Gegensatz dazu hat ein resistives Element mit einem linearen Taper eine gleichmäßige Breite über den Bewegungsbereich des Potentiometerwischers. Dadurch variiert die Spannung an den Lautsprechern linear mit der Wischerposition. Die Beziehung zwischen der Wischposition und der Lautstärke ist nichtlinear.
In ähnlicher Weise definiert eine Windows-Anwendung, die einen Lautstärkeregler anzeigt, eine Beziehung zwischen der Schiebereglerposition und der Ausgabesignalebene an den Lautsprechern. Die Beziehung kann in der Tat linear verjüngt oder Audio verjüngt sein.
Das folgende Diagramm zeigt die Zuordnung der Schiebereglerposition zur Ausgangsspannung und zur wahrgenommenen Lautstärke für eine linear verjüngte Lautstärkeregelung.
Auf der linken Seite des vorherigen Diagramms erhöht sich der Ausgangsspannungspegel des Audio-Digital-Analog-Wandlers (DAC) linear, da sich der Lautstärkeschieberegler von seiner minimalen Position (mit der Bezeichnung Min) zu seiner maximalen Position (max) bewegt. Die Bezeichnung VFS auf der vertikalen Achse stellt die vollständige DAC-Ausgangsspannung dar.
Die wahrgenommene Lautstärke variiert jedoch ungefähr wie der Logarithmus der Leistung des Audiosignals, wie auf der rechten Seite des vorherigen Diagramms dargestellt. So führt die Bewegung des Schiebereglers über ein Intervall nahe der Minimaleinstellung zu einer relativ großen Änderung der wahrgenommenen Lautheit, aber die Schiebereglerbewegung über ein Intervall der gleichen Breite in der Nähe der maximalen Einstellung verursacht eine relativ kleine Veränderung der wahrgenommenen Lautstärke.
Auf der rechten Seite des vorherigen Diagramms wird die Lautstärke auf der vertikalen Achse in Dezibel (dB) relativ zur Vollskalierungsleistungseinstellung (bei 0 Dezibel) gemessen. Die Lautstärkekurve schneidet die vertikale Achse bei minus unendlich, aber nur der Teil der Kurve von 0 Dezibel bis –96 Dezibel wird im Diagramm angezeigt. Die Entscheidung, nur diesen Teil der Kurve anzuzeigen, ist etwas willkürlich, aber –96 Dezibel stellt die Leistung auf dem nächstniedrigsten Ausgangsniveau eines 16-Bit-DAC im Verhältnis zur vollen Leistung dar. Dieser Wert wird als 20 berechnet. log₁₀(1/65535).
Da kleine Änderungen an der Schiebereglerposition in der Nähe der Mindesteinstellung im vorherigen Diagramm zu großen Änderungen der Lautstärke führen, kann es für den Benutzer schwierig sein, die Lautstärke über diesen Bereich zu steuern. Relativ kleine Schiebereglerbewegungen können die Lautstärke deutlich über oder unter das gewünschte Niveau drücken. Eine verbesserte Lautstärkeregelung würde eine linearere Beziehung zwischen Schiebereglerposition und Lautstärke ermöglichen.
Das folgende Diagramm zeigt die Zuordnung der Schiebereglerposition zur Ausgangsspannung und zur wahrgenommenen Lautstärke für eine audioverknallte Lautstärkeregelung.
Wie auf der rechten Seite des vorherigen Diagramms gezeigt, variiert die wahrgenommene Lautstärke ungefähr linear mit Änderungen in der Schiebereglerposition. Dazu muss die DAC-Spannung nicht linear mit der Position variieren, wie auf der linken Seite des Diagramms dargestellt. Die Kurve nähert sich asymptotisch 0 Volt, wenn sich der Schieberegler von der maximalen Einstellung nach links bewegt. Die Spannung an der minimalen Schiebereglerposition ist sehr klein, aber möglicherweise nicht genau 0.
Die folgenden Methoden in der IAudioEndpointVolume-Schnittstelle verwenden Volumeeinstellungen, die in Dezibel gemessen werden:
- IAudioEndpointVolume::GetChannelVolumeLevel
- IAudioEndpointVolume::GetMasterVolumeLevel
- IAudioEndpointVolume::SetChannelVolumeLevel
- IAudioEndpointVolume::SetMasterVolumeLevel
Diese Methoden erzeugen eine ungefähr lineare Beziehung zwischen Der Lautstärkeeinstellung und der wahrgenommenen Lautstärke. Der Lautstärkebereich in Dezibel der Lautstärkeregler, die mit diesen Methoden verwaltet werden, hängt vom Audioendpunktgerät ab. Um den Volumebereich für ein bestimmtes Gerät zu bestimmen, rufen Sie die IAudioEndpointVolume::GetVolumeRange-Methode auf.
Im Gegensatz dazu folgen die Volumeeinstellungen für die folgenden Methoden in der IAudioEndpointVolume-Schnittstelle einer sanfteren Kurve über den Volumebereich:
- IAudioEndpointVolume::GetChannelVolumeLevelScalar
- IAudioEndpointVolume::GetMasterVolumeLevelScalar
- IAudioEndpointVolume::SetChannelVolumeLevelScalar
- IAudioEndpointVolume::SetMasterVolumeLevelScalar
- IAudioEndpointVolume::VolumeStepDown
- IAudioEndpointVolume::VolumeStepUp
In Windows Vista verwenden diese Methoden eine Kurve, die zwischen der audioverjüngten Kurve im vorherigen Diagramm und einer linear verjüngten Kurve liegt. Beachten Sie, dass sich die Form der Kurve in zukünftigen Versionen von Windows ändern kann. Die ersten vier Methoden in der vorherigen Liste geben Volumeebenen als normalisierte Werte im Bereich von 0,0 (Mindestvolume) bis 1,0 (maximales Volumen) an. Rufen Sie für die letzten beiden Methoden in der Liste die IAudioEndpointVolume::GetVolumeStepInfo-Methode auf, um die Anzahl der Schritte im Volumebereich abzurufen.
Die folgenden Schnittstellen verwenden linear verjüngte Kurven für ihre Lautstärkeeinstellungen:
Weitere Informationen zu diesen Schnittstellen finden Sie unter Steuerelemente für Sitzungsvolume. Informationen zu den Lautstärkebereichen und den Standardlautstärken in den verschiedenen Versionen von Windows finden Sie unter Standardeinstellungen für Audiolautstärke.
Zugehörige Themen