请看这个屏幕截图:
/etc/pulse/default.pa
中使用设备编号可以工作,但是当我连接我的耳机设备时,设备编号会发生变化,导致一些功能停止工作。在/etc/pulse/default.pa
中使用设备名称无效。pactl set default sink
命令添加到启动应用程序中。pactl list short sinks
2. 记下您想要用作默认的设备名称
3. 尝试运行:pactl set-default-sink <Your_Device_Name>
pactl set-default-sink 'Your-Device-Name'
8. 点击"添加"。/usr/bin/pactl set-default-sink $(/usr/bin/pactl list short sinks|/usr/bin/gawk -F'\\s+' '$2 ~ /^.*[Hh][Dd][Mm][Ii].*$/ { print $2 }')
- zpangwinpacmd list-cards
来确定设备名称和配置文件,然后我创建了一个可执行的bash脚本,包含以下命令:pacmd set-card-profile <device_name> output:<profile>
,然后是pactl set-default-sink <device>.<profile>
。 - Jamesubuntu 18.04.05
上进行了测试,运行良好。 - SAYE/bin/bash -c "sleep 10 && pactl set-default-sink $(/usr/bin/pactl list short sinks|/usr/bin/gawk -F'\\s+' '$2 ~ /^.*[Hh][Dd][Mm][Ii].*$/ { print $2 }')"
,需要安装sudo apt install gawk
。@zpangwin如果可能的话,最好也有一个使用grep
的版本。另外,如果你知道你的pactl list short sinks
卡是"hdmi"或"HDMI",那么用户可以简化那部分为[hdmi]
。 - dez93_2000/usr/bin/pactl set-default-sink $(/usr/bin/pactl list short sinks | grep -i hdmi | cut -f2)
- Viniciuspactl list short sinks
时,我得到了错误信息连接失败:连接被拒绝。pa_context_connect() 失败:连接被拒绝
。对此有什么建议吗? - doraemonpactl set-default-sink 'alsa_output.pci-0000_00_1f.3.analog-surround-71'
- Mark Han这里有一个很好的解释教程,可以设置默认的音频输入/输出。
首先:使用以下方法列出音频输出设备
pactl list short sinks
示例输出:
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
pactl set-default-sink <'output_device_name'>
pactl set-default-sink $(pactl list short sinks | cut -f2 | fzf)
sudo -H gedit /etc/pulse/default.pa
set-
开头的注释行。### Make some devices default
set-default-sink 3
set-default-source 3
附注:正如与Bim在评论中讨论的那样,也可以将输入/输出名称放在/etc/pulse/default.pa
而不是输入/输出编号。
示例:
### 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/pulse目录,然后重新启动系统。系统重新启动后,适当的设备应该已经设置为默认设备。
/etc/pulse/default.pa
中将这行代码load-module module-switch-on-connect
注释掉,改为# load-module module-switch-on-connect
,以使更改持久化。# load-module module-switch-on-connect
pactl list short sinks
default-sink = alsa_output.pci-0000_00_1f.3.analog-stereo
注意:你必须从原始行中移除“!”。 在Ubuntu 20.10中,你必须从原始行中移除“;”。
~/.config/pulse
,结果留下了一个问题,我的耳机变成了默认音频设备。如果是这种情况,这个答案:https://askubuntu.com/a/1115641/177314 也非常有效,不需要太多技术知识 :) - SidOfc如果你喜欢使用图形界面,可以使用PulseAudio音量控制
来完成这个操作。
打开PulseAudio音量控制后,选择配置
(最后一个选项卡),然后从配置文件
下拉菜单中选择要使用的输出和/或输入。
它应该看起来类似于这样
PulseAudio音量控制
还可以用于调整当前正在使用的每个输入、输出、系统声音和应用程序的音量级别。
这里有一篇来自Linuxhint的文章,提供了关于PulseAudio的更多信息。
pactl list short sinks
复制您想要设置为默认设备的名称。名称通常很长,类似于alsa_output.pci-0000_00_1f.3.analog-stereo
。
现在让我们来配置pulseaudio。使用以下命令打开配置文件:
sudo nano /etc/pulse/default.pa
#
开头:#ifexists module-switch-on-connect.so
#load-module module-switch-on-connect
#.endif
set-default-sink '<your-device-name-here>'
pulseaudio -k
重新启动pulseaudio。~/.config/pulse
文件夹。pactl list short sink
…
2 alsa_output.pci-0000_00_1f.3.analog-stereo …
pactl set-default-sink 2
# or
pactl set-default-sink 'alsa_output.pci-0000_00_1f.3.analog-stereo'
在命令行界面上运行良好,
根据如何在登录后自动启动脚本的文章,在我的~/.profile文件中进行更改,添加以下行:
pactl set-default-sink 'alsa_output.pci-0000_00_1f.3.analog-stereo'
并且在重启后它能正常工作。
(1) 在所有情况下,我在/var/log/syslog中都有一些错误,包括数字或全部文本:
[pulseaudio] main.c: Sink output 2 不存在。
[pulseaudio] main.c: Sink output 'alsa_output.pci-0000_00_1f.3.analog-stereo' 不存在。
load-module module-switch-on-connect
),如https://askubuntu.com/a/1115641/39966中所述。set-default-sink
/ -source
命令或配置。这个对我有用。
你可以忽略关于需要通过命令行进行更改的部分,修复音频设备重置的部分是编辑/etc/pulse/default.pa
文件。将load-module module-stream-restore
一行更改为load-module module-stream-restore restore_device=false
,然后使用pulseaudio -k
重新启动脉冲音频。
现在你应该能够通过设置>声音来更新音频输出和输入,并且它们应该在注销/登录和系统重启后保持不变。