GNOME 自动选择音频设备耳机而不是耳机

qwr*_*qwr 16 gnome sound headphones 18.04

我从 16.04 升级到 18.04 时注意到的第一件事是,每次我插入耳塞时,我都会收到选择音频设备的提示:

选择音频设备

我可以让 Ubuntu 自动选择耳机吗?它不在声音设置中。

Win*_*nix 2

Gnome 开发者已经讨论这个问题一年多了:

提出请求的人表示:

这是我的设计驱动想法:

广泛的答案确实是不要问。如果我明确插入一个设备,我希望声音能够从该设备中发出。立即发生直接互动。即使在某些情况下情况并非如此,每次插入未知设备时都会询问,这会带来糟糕的常见情况体验。当然,会有大量的特殊用例。

还有人合理化了提问的理由:

如果你有一个插头,可以是麦克风,也可以是洗衣机,而你不知道是哪一个,我想不出其他办法,只能问。:)

开发人员最后的评论承认弹出窗口设计得很糟糕:

哦,看来你确实是对的:我第一次插入耳机时,几秒钟后输出被静音,而对话框由于某种原因显示在此之前(这些秒可能已经损坏了麦克风),并且此后每次,音频都不会静音,并且在对话框可见时继续播放。我还发现,如果耳机插入得相当小心,有时我们无法显示对话框(松动的连接似乎多次触发对话框)。因此,我们应该解决这些问题,或者将这些错误视为“现场测试”,因为到目前为止,没有人向我们抱怨麦克风损坏;)

通过一些编程,您可以监控屏幕上每两到三秒打开的新窗口。如果有问题的窗口打开,您可以单击鼠标以自动选择耳机。例如,我对一些带有气泡消息的窗口进行了此操作,这些窗口会导致不需要的广告网站。

另一种选择是获取有问题的窗口的程序名称,并将其替换为除了取消静音之外不执行任何操作的新程序。

无论哪种情况,除非您自己有一些空闲时间和技能,否则您将需要等待开发人员来创建一些东西。


有些事情你可以快速尝试,但不能保证成功。有一项pulseaudio功能module-switch-on-connect可以在连接时自动切换音频设备。要测试这是否有效,请在终端中发出以下命令:

pacmd load-module module-switch-on-connect
Run Code Online (Sandbox Code Playgroud)

现在插入耳机。如果有效,请将以下行添加到您的/etc/pulse/default.pa

load-module module-switch-on-connect
Run Code Online (Sandbox Code Playgroud)

保存该文件,它将在以后重新启动时起作用。


小智 0

以下扩展运行良好(在具有 Gnome 42.1 的 Ubuntu 22.04 上测试): https: //extensions.gnome.org/extension/3928/auto-select-headset/

您可以使用以下命令在命令行上安装(尽管您应该首先检查是否有更新版本)。请注意,有一行会重新启动 gnome-shell 会话。您可能更愿意手动注销并登录,或者重新启动计算机,而不是使用该线路。由你决定。

# download the extension
wget "https://extensions.gnome.org/extension-data/autoselectheadsetjosephlbarnett.github.com.v5.shell-extension.zip" &&
# install it
gnome-extensions install autoselectheadsetjosephlbarnett.github.com.v5.shell-extension.zip &&
# this is needed to refresh the available extensions.
killall -3 gnome-shell
# now enable the extension
gnome-extensions enable autoselectheadset@josephlbarnett.github.com
Run Code Online (Sandbox Code Playgroud)