Problem mit dem Lautstärke-Widget beim Hotplugging von Soundkarten

8

Beim Anschließen einer USB-Soundkarte kann es manchmal vorkommen, dass der aktuelle Audioausgang (z. B. Banshee- und PC-Lautsprecher) sofort umgeschaltet wird. Die Lautstärkeregler (Sound-Widget in Systray, Lautstärketastatur) stecken jedoch auf der alten Soundkarte fest.

Schließen Sie eine Soundkarte und einen Verstärker an, während die Lautstärke für die PC-Lautsprecher auf Ultrahoch eingestellt ist. Sie können die Lautstärke nicht steuern, ohne die Soundeinstellungen oder den Alsamixer zu öffnen. Dies könnte in einigen Ländern wahrscheinlich zu Störungen der Nachbarn führen. Sie können es weder mit dem Sound-Widget des Systrays noch mit den Lautstärketastaturtasten steuern.

Wie deaktiviere ich die automatische Umschaltung der Hardware-Audioausgabe oder die automatische Umschaltung der Software-Lautstärkeregelung? Es wäre großartig, das Softwareverhalten mit dem der Hardware in Einklang zu bringen.

Ubuntu 11.10 Vanille auf dem neuesten Stand.

jpic
quelle
Keine Lösung, aber eine Problemumgehung besteht darin, Kopfhörer ein- und auszustecken. Dies erzwingt ein Umschalten der Steuerelemente.
RobotHumans
Anstatt Hotplugging zu betreiben, ist dies wieder eine Pflasterlösung. Vielleicht können Sie es angeschlossen lassen und bei Nichtgebrauch das Profil manuell auf "Aus" schalten?
AyaneForever
3
Dritte Band-Aid-Lösung: Verringern Sie die Hardware-Lautstärke Ihrer USB-Soundkarte, bevor Sie sie anschließen. Im Allgemeinen empfiehlt es sich bei allen Audiogeräten (digital und analog), alle Pegel auf Null zu setzen, bevor Sie die Dinge zusammenkuppeln.
Adempewolff

Antworten:

2

Sie können erreichen, was Sie wollen, indem Sie eine udev-Regel verwenden, die geschrieben wurde, um auf bestimmte Ereignisse zu reagieren. In diesem Fall müssen diese Ereignisse die USB-Soundkarte einstecken und den Stecker ziehen. Laut dieser Forumantwort lautet die mögliche Lösung wie folgt:

  1. Öffnen Sie die Datei mit den USB-Soundkarten-udev-Regeln:

    sudo -H nautilus /etc/udev/rules.d/10-usb-sound-card.rules
    
  2. Einfügen und kopieren

    KERNEL=="pcmC[D0-9cp]*", ACTION=="add", PROGRAM="/bin/sh -c 'K=%k; K=$${K#pcmC}; K=$${K%%D*}; echo defaults.ctl.card $$K > /etc/asound.conf; echo defaults.pcm.card $$K >>/etc/asound.conf"
    
    KERNEL=="pcmC[D0-9cp]*", ACTION=="remove", PROGRAM="/bin/sh -c 'echo defaults.ctl.card 0 > /etc/asound.conf; echo defaults.pcm.card 0 >>/etc/asound.conf'"
    
  3. Speichern Sie die Datei und geben Sie

    sudo udevadm trigger --action=add /etc/udev/rules.d/10-usb-sound-card.rules
    

Befehl. Testen Sie diese Regel, indem Sie Ihre USB-Soundkarte ein- und ausstecken.

Ich hoffe, dies wird dir helfen.

numand
quelle