情况描述
- 最开始参考这篇链接重启了pulseaudio:
pulseaudio -k
- 使用
pulseaudio -k
重启后,在设置的声音测试中有了声音 - 但是这个时候只要打开chrome或者其他媒体文件,声音立马就没有,而且再次打开设置测试也没有声音了;网上尝试了很多方法都没有效果,在搜索pulseaudio相关的时候看到新闻:“ubuntu将会使用pipewire替换pulseaudio”,索性直接将默认音频从pulseaudio修改成了pipewire,修改后hdmi的输出设备也有声音了;具体操作步骤如下:
解决方案
参考链接
- 首先,Pipewire 是开箱即用的预安装,并自动作为后台服务运行。您可以通过在终端中运行以下命令来检查它:
systemctl --user status pipewire pipewire-session-manager
- 虽然开箱即用,但默认情况下它不用于音频输出。要开始,首先按键盘上的 Ctrl+Alt+T 打开终端,然后运行命令安装客户端库:
sudo apt install pipewire-audio-client-libraries libspa-0.2-bluetooth libspa-0.2-jack
- 安装wireplumber以替换pipewire-media-session
要安装软件包并删除“pipewire-media-session”,请在终端中运行以下命令:
sudo apt install wireplumber pipewire-media-session-
- wireplumber使事情变得很容易!如果您只想用 Pipewire 替换 PulseAudio,请启用媒体会话服务并重新启动,仅此而已! 要将 ALSA 客户端配置为通过 PipeWire 输出,请运行命令复制配置文件:
sudo cp /usr/share/doc/pipewire/examples/alsa.conf.d/99-pipewire-default.conf /etc/alsa/conf.d/
对于 JACK 客户端,运行命令:
sudo cp /usr/share/doc/pipewire/examples/ld.so.conf.d/pipewire-jack-*.conf /etc/ld.so.conf.d/
对于蓝牙,只需通过命令删除 pulseaudio-module-bluetooth 包
sudo apt remove pulseaudio-module-bluetooth
最后,通过运行命令启用媒体会话:
systemctl --user --now enable wireplumber.service
- 重启系统,使用下面命令查看是否设置成功:
pactl info
- 进行以上操作后,我的hdmi内置输入设备就可以正常播放声音了!