私は走っているFintuLinux、ㅏルート図誘導体私の新しいPlantronics USBヘッドセット2つ(有線1つ、ワイヤレス1つ)がうまく機能します。 1つを接続すると、ALSAはそれに気づき、デフォルトのデバイスではなくそれを使用するようにアプリを手動で設定すると、ALSAはそれに気づきます。
ヘッドフォンがある場合は、デフォルトの入力/出力に設定することを好みます。それ以外の場合、基本は内蔵スピーカーに戻ります。このスイッチをどのように自動化できますか?
答え1
udev ルールを使用できます。そのためには、USBヘッドセットを接続した後に区別できるデバイスのプロパティを見つける必要があります。これは通常、次の2つのステップで実行できます。
udevadm monitor --udev
デバイスを接続する前に実行してください。次に挿入します。複数の出力ラインがあります。 1つを選択してそこからデバイスパスをコピーすると、次のようになります/devices/pci0000:00/0000:00:1d.7/usb1/1-5/1-5:1.0
。ヘッドフォンが接続されている間に
udevadm info --path=/your/device/path --attribute-walk
デバイスを他のデバイスと区別するためのいくつかのプロパティ(たとえば、ATTR{idVendor}
および)を見つけますATTR{idProduct}
。
これにより、デバイスが接続されたときにトリガーされるudevルールを構築できます。以下のファイルを確認して、どのように/etc/udev/rules.d/
見えるかを確認してください。おそらくビルドする項目はですRUN+="some command"
。その行に使用されている識別子(SUBSYSTEM=
などATTRS=
)は、すべて同じデバイス(同じudevadm info --attribute-walk
出力ブロック)の説明に記載する必要があります。
タスクの2番目の部分は、amixer
各シナリオの要件に合った設定を見つけ、それをRUN+=
udevルールセクションに入れるコマンドでラップすることです。同様のハードウェアがないため、この問題については役に立ちません。
答え2
Calebが述べたように、PulseAudioを使用すると、あるデバイスから別のデバイスにストリームを移行できます。
手動で切り替えるのではなく自動的に切り替えるには、次のようにPulseAudio設定にpavucontrol
モジュールを追加します。module-switch-on-connect
https://askubuntu.com/questions/158241/automatically-change-sound-input-output-device/158250#158250
答え3
まだ提供していない場合は、非常pulseaudio
に使いやすいルーティングコンソールを使用してこの柔軟性を得ることができますpavucontrol
。基本デバイスと代替デバイスは、アプリケーションとシステムのデフォルトに基づいて設定できます。
答え4
私はPlantronicsヘッドフォンを購入しただけで同じ問題が発生しました。回避策は次のとおりです。http://alsa.opensrc.org/MultipleCards:
/etc/modprobe.d/50-alsa.conf
デフォルトの順序を設定するには、ファイルを編集してください。
options snd slots=snd-usb-audio,snd-hda-intel
また、他のすべての関連構成、すなわち/etc/modprobe.d/50-sound*
。
ヘッドホンの接続/分離を確認し、出力を見てみました。aplay -l
これはopenSUSE 12.2とPlantronics .Audio 655を使用しています。