“连接 pulseaudio 失败” - 也无法启动 pulseaudio-x11

“连接 pulseaudio 失败” - 也无法启动 pulseaudio-x11

我使用的是 Devuan ASCII (~= Debian Stretch)。在我的浏览器和媒体播放器中,音频似乎可以工作,或者至少 - 播放可以工作。但是,如果我尝试运行pavucontrol进行一些设置 - 通常有效 - 它会告诉我:

连接到 pulseaudio 失败

在这种情况下等等。如果 pulseaudio 崩溃等等,也会发生这种情况。如果是这种情况,则 PulseAudio 应该再次自动生成,或者如果没有配置,您应该手动运行 start-pulseaudio-x11。

因此,我不知道自动生成是否已配置,但其中/etc/pulse/client.conf显示:

; autospawn = yes

并且daemon.conf它没有提到自动生成。无论如何,它的名称中没有进程pulse,也没有内核模块。

snd以下是名称中包含以下内容的内核模块:

nd_hda_codec_hdmi     49152  2
snd_hda_codec_realtek    90112  1
snd_hda_codec_generic    69632  1 snd_hda_codec_realtek
snd_usb_audio         180224  0
snd_usbmidi_lib        28672  1 snd_usb_audio
snd_hda_intel          36864  1
snd_rawmidi            32768  1 snd_usbmidi_lib
snd_seq_device         16384  1 snd_rawmidi
snd_hda_codec         135168  4 snd_hda_intel,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_codec_realtek
snd_hda_core           86016  5 snd_hda_intel,snd_hda_codec,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_hda_codec_realtek
snd_hwdep              16384  2 snd_hda_codec,snd_usb_audio
snd_pcm               110592  5 snd_hda_intel,snd_hda_codec,snd_usb_audio,snd_hda_core,snd_hda_codec_hdmi
snd_timer              32768  1 snd_pcm
snd                    86016  14 snd_hda_intel,snd_hwdep,snd_hda_codec,snd_usb_audio,snd_timer,snd_rawmidi,snd_hda_codec_hdmi,snd_hda_codec_generic,snd_usbmidi_lib,snd_seq_device,snd_hda_codec_realtek,snd_pcm
soundcore              16384  1 snd
usbcore               253952  8 uvcvideo,usbhid,snd_usb_audio,usb_storage,xhci_pci,snd_usbmidi_lib,uas,xhci_hcd

因此,我尝试重新启动该服务,结果如下:

$ start-pulseaudio-x11 
Connection failure: Connection refused
pa_context_connect() failed: Connection refused

如果我以 root 身份尝试执行此操作,则会得到:

# start-pulseaudio-x11
XDG_RUNTIME_DIR (/run/user/1000) is not owned by us (uid 0), but by uid 1000! (This could e g happen if you try to connect to a non-root PulseAudio as a root user, over the native protocol. Don't do that.)
Connection failure: Connection refused
pa_context_connect() failed: Connection refused

我尝试的另一件事:

$ pulseaudio --start --verbose
E: [pulseaudio] main.c: Daemon startup failed.

但那里正在发生一些有趣的事情:/var/log/syslog正在被越来越多的以下内容填充:

Jan 28 22:01:16 myhostname pulseaudio[22085]: [pulseaudio] cli-command.c: stat('/usr/share/pulseaudio/default.pa'): No such file or directory
Jan 28 22:01:16 myhostname pulseaudio[22085]: [pulseaudio] main.c: Failed to initialize daemon.
Jan 28 22:01:16 myhostname pulseaudio[22082]: [pulseaudio] main.c: Daemon startup failed.

因此,重生尝试不断失败,并且缺少一个文件。

我应该怎么办?

答案1

我遇到了类似的问题,但是我没有 default.pa 文件。

我发现以下步骤有效。在终端中:

apt-get purge pulseaudio

然后,在

$HOME/.config

删除整个脉冲文件夹。

然后重新安装 pulseaudio:

apt-get install pulseaudio

启动时,pulseaudio 会抱怨如果从终端调用它无法“打开 cookie 文件”,但它会重新创建整个文件夹结构。再次运行它,它将恢复正常操作,并启用声音(希望如此)。

答案2

此解决方案归功于 # 上的“wabbit”[电子邮件保护]

您可能有一个名为

$HOME/.config/pulse/default.pa

删除它,pulseaudio 应该会自行重生,或者您可以使用类似pactl info或 之类的命令启动它pulseaudio。当发生这种情况时,pavucontrol音量控制 GUI 也应该会再次工作。

为了确保守护进程已启动,请查看/var/log/syslog;您应该看到如下行:

Jan 29 00:56:34 myhostname pulseaudio[19553]: [pulseaudio] source.c: Default and alternate sample rates are the same.

有可能

Jan 29 00:56:36 myhostname pulseaudio[19563]: [pulseaudio] pid.c: Daemon already running.

答案3

sudo mkdir -p /run/user/1000/pulse

sudo chown -R $USER:$USER /run/user/1000

pulseaudio --start

相关内容