Windows-Audio-Balance mit Python einstellen

English Deutsch

In unserem vorherigen Beitrag haben wir gezeigt, wie man die Windows-Audio-Lautstärke mit pycaw einstellt.

Installieren Sie zuerst die Bibliothek mit

install_pycaw.sh
pip install pycaw

Hinweis: pycaw funktioniert nicht mit WSL (Windows Subsystem for Linux)! Sie müssen es tatsächlich in einer Python-Umgebung installieren, die unter Windows läuft. Ich empfehle Anaconda.

Um die Audio-Balance einzustellen, können wir volume.SetChannelVolumeLevel(...) verwenden:

set_audio_balance.py
from ctypes import cast, POINTER
from comtypes import CLSCTX_ALL
from pycaw.pycaw import AudioUtilities, IAudioEndpointVolume
import math

# Standard-Audiogerät mit PyCAW abrufen
devices = AudioUtilities.GetSpeakers()
interface = devices.Activate(
    IAudioEndpointVolume._iid_, CLSCTX_ALL, None)
volume = cast(interface, POINTER(IAudioEndpointVolume))

# Aktuelle Lautstärke des linken Kanals abrufen
currentVolumeLeft = volume.GetChannelVolumeLevel(0)
# Lautstärke des rechten Kanals auf die Hälfte der Lautstärke des linken Kanals setzen
volume.SetChannelVolumeLevel(1, currentVolumeLeft - 6.0, None)
# HINWEIS: -6,0 dB = halbe Lautstärke !

Beachten Sie, dass gemäß Konvention der linke Kanal Kanal 0 und der rechte Kanal Kanal 1 ist. Je nach Art der Soundkarte kann es nur 1 Kanal geben (z.B. ein Mono-Headset) oder viele Kanäle wie bei einer Mehrkanal-USB-Audio-Schnittstelle. Verwenden Sie volume.GetChannelCount(), um die Anzahl der Kanäle zu ermitteln.


Check out similar posts by category: Audio, Python, Windows