首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Ubuntu中设置默认音频输出设备?

如何在Ubuntu中设置默认音频输出设备?
EN

Ask Ubuntu用户
提问于 2018-05-20 21:20:39
回答 10查看 219.8K关注 0票数 183

每次我启动,我必须切换我的音频输出设备到我的“线外”耳机,因为由于某种原因,我的麦克风默认为扬声器。

看这张截图:

EN

回答 10

Ask Ubuntu用户

回答已采纳

发布于 2020-02-02 20:50:38

对我有用的19.10的简单修正:

我无法得到@singrium提出的在Ubuntu19.10上坚持的解决方案。它与/etc/pulse/default.pa中的设备编号一起工作,但当我连接时,例如,我的耳机号码正在改变,设备停止工作。它不适用于/etc/pulse/default.pa中的设备名称。

我发现的简单解决方法是在启动应用程序中添加pactl set default sink命令。

  1. 运行:pactl list short sinks
  2. 注意您想要用作默认值的设备名称。
  3. 尝试运行:pactl set-default-sink <Your_Device_Name>,这应该可以工作,而不会给出错误消息。
  4. 打开应用程序“启动应用程序”(应该在Ubuntu上预装)
  5. 点击“添加”
  6. 给您的启动项命名
  7. 将命令从上面复制到命令字段: pactl set-default-sink 'Your-Device-Name'
  8. 点击“添加”。

你现在可以走了。您的默认音频设备将在每次启动时设置,因此必须是持久的。如果要更改默认设备,只需在“启动应用程序”命令中编辑设备名称即可。

票数 149
EN

Ask Ubuntu用户

发布于 2018-05-20 21:28:21

编辑(05/03/2020):

看来@phanky5 5 5算出了一个简单解。在试这个之前请先检查一下。

下面是一个解释得很好的教程设置默认音频输入/输出。

首先:列出使用

代码语言:javascript
复制
pactl list short sinks

示例输出:

代码语言:javascript
复制
43  alsa_output.pci-0000_00_1b.0.analog-stereo  PipeWire    s32le 2ch 48000Hz   IDLE
1076    alsa_output.usb-Logitech_Logitech_Wireless_Headset_4473D63ED97A-00.analog-stereo    PipeWire    s16le 2ch 48000Hz   IDLE

第二:若要设置默认输出设备,请运行以下命令

代码语言:javascript
复制
pactl set-default-sink <'output_device_name'>

示例:pactl set-default-sink 'alsa_output.pci-0000_00_1f.3.analog-stereo'

如果切换频繁,可以使用fzf通过命令行选择一个,并使其成为默认的:

代码语言:javascript
复制
pactl set-default-sink $(pactl list short sinks | cut -f2 | fzf)

若要使接收器永久成为默认值,请按照以下步骤操作:

首先,使用以下方法打开文件/etc/脉冲/default.pa:

代码语言:javascript
复制
sudo -H gedit /etc/pulse/default.pa

然后滚动到文件的底部,其中以set-开头的两行将被注释掉。

现在,取消对这些行的注释,并将输入和输出替换为默认的接收器(用于输出)/源(用于输入)的数目。

示例(设置默认输入和输出):

代码语言:javascript
复制
### Make some devices default
set-default-sink 3
set-default-source 3

PS:正如在Bim注释中讨论的那样,也可以(根据他的说法)将输入/输出名称放在/etc/pulse/default.pa中,而不是输入/输出编号。

示例:

代码语言:javascript
复制
### Make some devices default
set-default-sink alsa_output.pci-0000_00_1f.3.analog-stereo
set-default-source alsa_output.pci-0000_00_1f.3.analog-stereo.monitor

完成此操作后,保存并退出。然后,通过运行rm -r ~/.config/pulse删除~/..config/脉冲目录,然后重新启动系统。一旦系统重新启动,相应的设备现在应该设置为默认值。

编辑:

正如阿莫里斯在他的回答中提到的那样,有些人不得不在文件/etc/pulse/default.pa中注释这一行load-module module-switch-on-connect以成为# load-module module-switch-on-connect,以使更改持久。

票数 92
EN

Ask Ubuntu用户

发布于 2019-02-04 20:45:52

为了使Singrium的答案有效,我不得不在我的/etc/pulse/default.pa中添加#来注释这一行:

代码语言:javascript
复制
# load-module module-switch-on-connect

否则,在启动时,我的音频设备将被设置为我的默认设备,但一旦检测到它,就会切换到我的USB集线器。这将防止该开关,并确保您选择的音频设备是输出。

票数 39
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1038490

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档