![如何在不重启的情况下修复此 PulseAudio 服务器崩溃?](https://linux22.com/image/1099484/%E5%A6%82%E4%BD%95%E5%9C%A8%E4%B8%8D%E9%87%8D%E5%90%AF%E7%9A%84%E6%83%85%E5%86%B5%E4%B8%8B%E4%BF%AE%E5%A4%8D%E6%AD%A4%20PulseAudio%20%E6%9C%8D%E5%8A%A1%E5%99%A8%E5%B4%A9%E6%BA%83%EF%BC%9F.png)
在我的 Ubuntu 12.04 上,音频服务器偶尔会崩溃,因此我不得不重新启动系统才能播放音频。
Alsamixer 看起来不错,没有静音。此外,我尝试了
sudo pkill -9 pulseaudio
进而:
pulseaudio -D
这给了我
E: [pulseaudio] main.c: Daemon startup failed.
你能帮助我了解哪里出了问题吗?
答案1
Pulseaudio 将在默认设置下按用户运行。因此,我们不需要 root 权限即可终止它。
从终端重新启动/重置正在运行的 pulseaudio 声音服务器的命令很简单,只需发出
pulseaudio -k
执行此操作后,声音服务器将自动生成并立即在默认设置下重新启动。如果您尝试运行 pulseaudio 两次,您将始终收到错误。
要从命令行运行 pulseaudio 来读取可能的错误,您必须暂时禁用自动生成(请参阅本文了解具体操作方法)。
有时,错误的用户设置会导致 pulseaudio 声音服务器出现故障。然后,我们可以在重新启动 pulseaudio 之前尝试重命名设置目录~/.pulse
(或./config/pulse
在较新的版本中)。然后,将使用默认设置重新创建此目录。
答案2
我曾经遇到过类似的错误,对我有用的方法是编辑文件default.pa
,在/etc/pulse
。不知何故,第一行是!/usr/bin/pulseaudio -nF
,而不是#!/usr/bin/pulseaudio -nF
,因此在编辑它时,pulseaudio 工作正常。
答案3
对我有用的是转移~/.config/pulse
到~/.config/pulseold
。重新安装我的基础系统,似乎 pulseaudio 在尝试使用我的旧配置时不断崩溃。
答案4
我遇到了这个问题 - 经过一番尝试,我找到了解决它的方法,尽管我仍然不确定它出了什么问题。
首先找到您想要的卡和设备并手动导出PULSE_SINK变量:
$> aplay -l
**** 播放硬件设备列表 **** 卡 0:PCH [HDA Intel PCH],设备 0:ALC269VC Analog [ALC269VC Analog] 子设备:1/1
子设备 #0:子设备 #0 卡 0:PCH [HDA Intel PCH],设备 3:HDMI 0 [HDMI 0] 子设备:0/1 子设备 #0:子设备 #0
$>export PULSE_SINK=plughw:0,3
$>killall pulseaudio
Now you should be able to start pulse.
$> pulseaudio --start
如果没有,请检查 /etc/pulse 中是否存在损坏的符号链接和rm -rf ~/.config/pulse
。
然后将默认设置为您想要的位置,检查
$>pacmd list-cards
找到所需的输出后,将其设为默认输出:
$> pacmd set-card-profile 0 output:hdmi-stereo
在 Ubuntu 16.04 上对我有用。