插入USB耳机后,如何自动切换到USB耳机?


10

我跑Funtoo的Linux,一个Gentoo的衍生物。我的两个新的Plantronics USB耳机(一个有线,一个无线)运行良好。我插入一个,ALSA注意到了,如果我手动设置一个应用程序使用它而不是默认设备,它将使用。

我希望只让耳机在出现时成为我的默认输入/输出,否则将默认值恢复为板载扬声器。如何自动进行这种切换?

Answers:


4

您可以使用udev规则。为此,一旦插入USB耳机,您将需要找到区分您的设备属性。通常可以分两个步骤完成:

  • 运行以udevadm monitor --udev插入设备。然后将其插入。会有一堆输出线-只需选择其中一条并从中复制设备路径-就像/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输出。

任务的第二部分是找到amixer适合您每种情况的设置,并将其包装在RUN+=udev规则中的命令中。有了这个,由于我没有类似的硬件,我无能为力。



2

如果您还没有的话,pulseaudio可以在名为的真正易于使用的路由控制台中为您提供这种灵活性pavucontrol。可以根据应用程序和系统默认设置设置首选设备和备用设备。


1
而且输出设备的更改对应用程序是透明的(如果使用pulseausio)-您无需重新启动应用程序即可更改例如输出设备-甚至可以在播放期间更改输出设备。
maxschlepzig 2011年

0

我刚刚购买了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。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.