Masalah volume widget dengan hotplugging kartu suara

8

Saat memasang kartu suara USB terkadang dapat menyebabkan output audio saat ini (mis. Banshee dan speaker PC) segera beralih. Tetapi kontrol volume (widget suara di systray, tombol keyboard volume) macet di kartu suara lama.

Colokkan kartu suara dan amplifier sementara volumenya diatur ke sangat tinggi untuk speaker pc. Anda tidak dapat mengontrol volume tanpa membuka pengaturan suara atau alsamixer. Ini mungkin dapat menyebabkan gangguan tetangga di beberapa negara. Anda tidak dapat mengontrolnya dengan widget suara systray atau tombol volume keyboard.

Bagaimana cara menonaktifkan saklar otomatis output audio perangkat keras, atau mengaktifkan saklar otomatis kontrol volume perangkat lunak? Akan bagus untuk membuat perilaku perangkat lunak konsisten dengan perangkat kerasnya.

Ubuntu 11.10 vanilla terbaru.

jpic
sumber
Bukan solusi, tetapi satu solusi adalah menyambungkan dan mencabut headphone. Ini memaksa beralih dari kontrol.
RobotHumans
Alih-alih hotplugging, sekali lagi ini adalah solusi bantuan band, mungkin Anda dapat membiarkannya tetap terhubung dan ketika tidak digunakan secara manual, ubah profilnya ke 'off'?
AyaneForever
3
Solusi band-aid ketiga: turunkan volume perangkat keras pada kartu suara usb Anda sebelum memasangnya - umumnya praktik terbaik dengan semua perangkat audio (digital dan analog) adalah nol semua level sebelum menyatukan semuanya.
adempewolff

Jawaban:

2

Anda dapat mencapai apa yang Anda inginkan dengan menggunakan aturan udev yang ditulis untuk bertindak atas peristiwa tertentu. Dalam hal ini, acara ini adalah menyambungkan kartu suara usb dan mencabutnya. Menurut jawaban forum ini , solusi yang mungkin adalah seperti berikut:

  1. Buka file yang memiliki aturan udev kartu suara usb:

    sudo -H nautilus /etc/udev/rules.d/10-usb-sound-card.rules
    
  2. Tempel dan salin

    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. Simpan file dan berikan

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

perintah. Kemudian uji aturan ini dengan menyambungkan dan mencabut kartu suara usb Anda.

Saya harap ini akan membantu Anda.

numand
sumber