Pulseaudio:如何重新扫描音频设备?


14

当将USB设备添加到系统中时(我故意不运行任何用于检测设备的现代堆栈),Pulseaudio不能在不重新启动(pulseaudio -k; pulseaudio --start)的情况下进行拾取。

例如,是否有一个选项pactl可以使Pulseaudio进行“检测”并开始使用新插入的设备?


我感到困惑的是,自2005年以来出现的udev太过现代了,但是pulseaudio还是不错的。。。鉴于udev甚至不进行设备检测(内核也是如此),“没有用于设备检测的现代堆栈”就意味着没有USB支持的内核。
user1686

我不确定我是否正确理解了您的问题。在Debian Buster中,涉及自动检测音频设备(并可能选择正确的配置文件)的问题似乎一劳永逸:您只需说出您喜欢的默认输入/输出设备是什么,一旦将Pulseaudio连接到这些设备即可。如果您使用的是旧版本,可以尝试gist.github.com/pylover/d68be364adac5f946887b85e6ed6e7ae
理查德·戈麦斯

您可能会(或可能不会)觉得这很有用:superuser.com/questions/1324152/…–
理查德·戈麦斯

Answers:


25

实际上,是的,有一种方法无需重启Pulseaudio:

pacmd unload-module module-udev-detect && pacmd load-module module-udev-detect

每次插入外部声卡或唤醒笔记本电脑后,我都会使用它。Pulseaudio打扫房间,并自动将我的Spotify音乐恢复到外部声卡上(因为这是我的默认声卡)。

您将需pacmd要这样做;它包含在pulseaudio-utilsUbuntu 的软件包中。


有时有效,有时无效。我想这还是一个完全正确的答案。
斯特凡纳·古里科

从挂起唤醒后,我在Dell Latitude E5470上的Ubuntu 18.04系统很少丢失音频设备,但是这样做时,此命令可以修复它。
Quolonel问题,

这是挂起后失去输出设备而不重启的唯一方法。
贾斯汀

4

跑步

pulseaudio -k && pactl load-module module-detect

为我工作。这将重新启动pulseaudio,因此会忘记现有设备。之后,它将重新扫描设备。这里的区别是不使用udev,可能是安装程序存在问题,无法支持udev。

这对我来说是必要的,因为我在笔记本电脑上使用外部设备,但有时使用内置扬声器。

由于某些原因,您可能需要在两个命令之间添加睡眠。

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.