Ubuntu 18.04 — Pulseaudio 启动并加载两次 — 2 个 PID 访问声卡 — 需要帮助进行故障排除

Ubuntu 18.04 — Pulseaudio 启动并加载两次 — 2 个 PID 访问声卡 — 需要帮助进行故障排除

我希望有人能帮助我排除 Pulseaudio 启动和加载两次的原因和位置。

这会在插入耳机时产生问题,有时声音会出现短暂的停顿。

以下是一些信息:

Distributor ID: Ubuntu
Description:    Ubuntu 18.04.1 LTS
Release:        18.04
Codename:       bionic

pulseaudio --version

pulseaudio 11.1

fuser-v /dev/snd/*

                     USER        PID ACCESS COMMAND
/dev/snd/controlC0:  horatiu    2328 F.... pulseaudio
                     horatiu    5872 F.... pulseaudio
/dev/snd/controlC1:  horatiu    2328 F.... pulseaudio
                     horatiu    5872 F.... pulseaudio

/var/log/syslog |grep pulseaudio (上次启动)

Dec  4 22:10:00 hdl dbus-daemon[1603]: [system] Activating via systemd:         service name='org.freedesktop.RealtimeKit1' unit='rtkit-daemon.service'     requested by ':1.25' (uid=1000 pid=2328 comm="/usr/bin/pulseaudio --start --log-target=syslog " label="unconfined")
Dec  4 22:10:02 hdl pulseaudio[2328]: [pulseaudio] server-lookup.c: Unable to contact D-Bus: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
Dec  4 22:10:02 hdl pulseaudio[2328]: [pulseaudio] main.c: Unable to contact D-Bus: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
Dec  4 22:10:02 hdl pulseaudio[2328]: [pulseaudio] bluez5-util.c: GetManagedObjects() failed: org.freedesktop.DBus.Error.AccessDenied: Rejected send message, 2 matched rules; type="method_call", sender=":1.40" (uid=1000 pid=2328 comm="/usr/bin/pulseaudio --start --log-target=syslog " label="unconfined") interface="org.freedesktop.DBus.ObjectManager" member="GetManagedObjects" error name="(unset)" requested_reply="0" destination="org.bluez" (uid=0 pid=1487 comm="/usr/lib/bluetooth/bluetoothd " label="unconfined")
Dec  4 22:10:24 hdl pulseaudio[5872]: [pulseaudio] module.c: Module "module-switch-on-connect" should be loaded once at most. Refusing to load.
Dec  4 22:10:24 hdl pulseaudio[5872]: [pulseaudio] module-gconf.c: pa_module_load() failed

声音仍然有效...我相信错误是由第二个进程加载引起的。

答案1

解决了。

通过在 pulseaudio pid 上运行 systemctl status 来获取启动 pulseaudio 第一个实例的进程。

systemctl status 2328

事实证明,该进程是由 mpd 守护进程启动的。我不使用 mpd,所以我没有费心尝试以某种方式设置它,使其在启动时不会生成 pulseaudio 进程。我刚刚删除了 mpd。

这有效地摆脱了 pulseaudio 的第一个实例并解决了声音问题。

相关内容