升级到Ubuntu 13.10之后,我的声音停止了工作。最终我发现Ubuntu选择了HDMI声音设备,而不是我的模拟扬声器。我切换到正确的设备,一切正常,直到重新启动。现在,每次启动Ubuntu时,我都必须选择正确的设备。如何将扬声器设置为默认设备?
编辑:自从我升级到Ubuntu 14.04以来,Ubuntu现在默认选择了板载声音设备,因此我不再遇到这个问题。
升级到Ubuntu 13.10之后,我的声音停止了工作。最终我发现Ubuntu选择了HDMI声音设备,而不是我的模拟扬声器。我切换到正确的设备,一切正常,直到重新启动。现在,每次启动Ubuntu时,我都必须选择正确的设备。如何将扬声器设置为默认设备?
编辑:自从我升级到Ubuntu 14.04以来,Ubuntu现在默认选择了板载声音设备,因此我不再遇到这个问题。
Answers:
跑:
$ pacmd list-cards
显示卡片索引。例如,我的pci声卡位于索引2。模拟输出的声音配置文件(再次作为示例)被称为“ output:analog-stereo”。
然后:
$ pacmd set-card-profile 2 output:analog-stereo
将此设置为输出(尝试一下)。要使其永久,请编辑/etc/pulse/default.pa并添加:
set-card-profile 2 output:analog-stereo
set-default-sink 2
重新启动pulseaudio或重新启动以检查持久性。
如果您还想设置mic(input)默认值
set-card-profile 2 output:analog-stereo+input:analog-stereo
set-default-sink 2
pacmd list-cards
只列出了一张卡,所以我以为我无法切换。我想从笔记本电脑扬声器切换到HDMI。对我来说这是同一张卡,只是另一张输出(analog-stereo
vs. hdmi-stereo
)。
在Dash上,搜索Multimedia Systems Selector。
打开它,然后在其Audio
选项卡中选择默认的音频输入和输出设备。
默认情况下,此应用程序已安装在Ubuntu安装中。但是,如果您还没有,可以通过以下方式安装
sudo apt-get install gnome-media
如果它没有显示在Dash中,请运行:
gksudo gedit /usr/share/applications/gstreamer-properties.desktop
在生成的文本文件中,转到以开头的行NoDisplay=
。更改NoDisplay=true
为NoDisplay=false
对于Ubuntu 16.04,最简单的解决方案是创建一个脚本,该脚本在屏幕解锁时监听,而不是在系统唤醒时监听,因为似乎并非所有服务在系统唤醒时都可用。我无法通过唤醒脚本使pulseaudio切换到HDMI声音,但已使用解锁监听脚本成功修复了它:
dbus-monitor --session "type='signal',interface='com.ubuntu.Upstart0_6'" | \
(
while true; do
read X
if echo $X | grep "desktop-lock" &> /dev/null; then
echo "screen locked"
elif echo $X | grep "desktop-unlock" &> /dev/null; then
/usr/bin/pacmd set-card-profile 0 output:hdmi-surround+input:analog-stereo
fi
done
)
您可以通过使用来订购ALSA中的声卡来设置默认值slots=
。
通过检查找到适合您要使用的声卡驱动程序模块的名称lsmod
:的输出,lsmod | grep -P '^snd[_]?[A-z]*'
或只lsmod
。例如,我的Creative X-FI Xtreme Gamer是snd_ctxfi
,板载是snd_hda_intel
,USB网络摄像头是snd_usb_audio
。
现在,在文本编辑器或nano中打开相应的ALSA配置文件,例如sudo nano /etc/modprobe.d/alsa-base.conf
,在底部按优先顺序添加以下内容(第一个声明为默认值):
options snd slots=snd_ctxfi,snd_hda_audio,snd_usb_audio
然后保存CTRL+o+enter
&CTRL+x
。重新启动,您可能会被排序。
首先,感谢user224082所提供的解决方案,该解决方案帮助我发现了需要的设备。
查找所需的ALSA设备:
device=
在“管道”框中记下该值。我的是"hw:0,4"
知道所需的设备后,将其设置为默认设备:
通过键入来编辑default.pa sudo nano /etc/pulse/default.pa
在文件的最底部,添加:
load-module module-alsa-sink sink_name=spkr device=hw:0,4
set-default-sink spkr
用device=
您的设备替换值。