サウンドカードのホットプラグに関するボリュームウィジェットの問題


8

USBサウンドカードを差し込むと、現在のオーディオ出力(BansheeやPCスピーカーなど)がすぐに切り替わる場合があります。しかし、ボリュームコントロール(システムトレイのサウンドウィジェット、ボリュームキーボードのキー)が古いサウンドカードに残っています。

PCスピーカーの音量を超高に設定しながら、サウンドカードとアンプを接続します。サウンド設定またはalsamixerを開かないと、ボリュームを制御できません。これはおそらく一部の国で近隣住民の混乱を引き起こす可能性があります。システムトレイのサウンドウィジェットやボリュームキーボードのキーを使用して制御することはできません。

ハードウェアオーディオ出力の自動切り替えを無効にする方法、またはソフトウェアボリュームコントロールの自動切り替えを有効にする方法 ソフトウェアの動作をハードウェアの動作と一致させることは素晴らしいことです。

Ubuntu 11.10バニラは最新です。


解決策ではありませんが、回避策の1つは、ヘッドフォンのプラグを抜き差しすることです。これにより、コントロールが強制的に切り替えられます。
RobotHumans 2012年

ホットプラグの代わりに、これもバンドエイドソリューションです。プラグインをそのままにして、使用していないときは手動でプロファイルを「オフ」に切り替えることができますか?
AyaneForever

3
3番目のバンドエイドソリューション:USBサウンドカードのハードウェアボリュームを差し込む前に音量を下げます。一般に、すべてのオーディオデバイス(デジタルおよびアナログ)でのベストプラクティスは、すべてのレベルをゼロにしてから、物事をつなぐことです。
adempewolff 2012年

回答:


2

特定のイベントに基づいて動作するように記述されたudevルールを使用して、必要なものを実現できます。この場合、これらのイベントはusbサウンドカードを差し込み、取り外すことです。このフォーラムの回答によると、可能な解決策は次のようなものです:

  1. USBサウンドカードのudevルールを含むファイルを開きます。

    sudo -H nautilus /etc/udev/rules.d/10-usb-sound-card.rules
    
  2. 貼り付けてコピー

    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. ファイルを保存して

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

コマンド。次に、USBサウンドカードのプラグを抜き差しして、このルールをテストします。

これがお役に立てば幸いです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.