You are not logged in.
pavucontrol stuck at "Establishing connection to PulseAudio. Please wait..."
Although the sound plays fine both through the built-in speakers and bluetooth headphones.
$ pactl info
Connection failure: Connection refused
pa_context_connect() failed: Connection refused
$ systemctl --user status wireplumber pipewire pipewire-pulse
● wireplumber.service - Multimedia Service Session Manager
Loaded: loaded (/usr/lib/systemd/user/wireplumber.service; enabled; preset: enabled)
Active: active (running) since Fri 2024-10-11 08:32:53 CEST; 1min 48s ago
Invocation: 0d5780728f2c413284c01876ba89d897
Main PID: 823 (wireplumber)
Tasks: 6 (limit: 18702)
Memory: 17.2M (peak: 17.6M)
CPU: 129ms
CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/wireplumber.service
└─823 /usr/bin/wireplumber
Oct 11 08:32:53 dell systemd[811]: Started Multimedia Service Session Manager.
Oct 11 08:32:53 dell wireplumber[823]: wp-internal-comp-loader: Loading profile 'main'
Oct 11 08:32:53 dell wireplumber[823]: wp-device: SPA handle 'api.libcamera.enum.manager' could not be loaded; is it installed?
Oct 11 08:32:53 dell wireplumber[823]: s-monitors-libcamera: PipeWire's libcamera SPA plugin is missing or broken. Some camera types may not be supported.
Oct 11 08:32:54 dell wireplumber[823]: default: Failed to get percentage from UPower: org.freedesktop.DBus.Error.NameHasNoOwner
● pipewire.service - PipeWire Multimedia Service
Loaded: loaded (/usr/lib/systemd/user/pipewire.service; enabled; preset: enabled)
Active: active (running) since Fri 2024-10-11 08:32:53 CEST; 1min 48s ago
Invocation: 5574d80e5b5246bba4294ceef061771a
TriggeredBy: ● pipewire.socket
Main PID: 822 (pipewire)
Tasks: 3 (limit: 18702)
Memory: 7.5M (peak: 7.6M)
CPU: 42ms
CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/pipewire.service
└─822 /usr/bin/pipewire
Oct 11 08:32:53 dell systemd[811]: Started PipeWire Multimedia Service.
○ pipewire-pulse.service - PipeWire PulseAudio
Loaded: loaded (/usr/lib/systemd/user/pipewire-pulse.service; disabled; preset: enabled)
Active: inactive (dead)
TriggeredBy: ○ pipewire-pulse.socket
If I enable services manually, pavucontrol still doesn't work:
$ systemctl --user enable --now pipewire wireplumber
$ pactl info
Connection failure: Connection refused
pa_context_connect() failed: Connection refused
Information about audio-related devices:
$ cat /proc/asound/cards
0 [sofhdadsp ]: sof-hda-dsp - sof-hda-dsp
DellInc.-Inspiron5402--0W3XW5
$ lspci -nnk | grep -A2 Audio
00:1f.3 Multimedia audio controller [0401]: Intel Corporation Tiger Lake-LP Smart Sound Technology Audio Controller [8086:a0c8] (rev 20)
Subsystem: Dell Device [1028:0a01]
Kernel driver in use: sof-audio-pci-intel-tgl
$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: sofhdadsp [sof-hda-dsp], device 0: HDA Analog (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: sofhdadsp [sof-hda-dsp], device 3: HDMI1 (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: sofhdadsp [sof-hda-dsp], device 4: HDMI2 (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: sofhdadsp [sof-hda-dsp], device 5: HDMI3 (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: sofhdadsp [sof-hda-dsp], device 31: HDA Analog Deep Buffer (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
Processes using the sound devices:
$ sudo fuser -v /dev/snd/*
USER PID ACCESS COMMAND
/dev/snd/controlC0: user 822 F.... pipewire
user 823 F.... wireplumber
/dev/snd/seq: user 822 F.... pipewire
Symbolic links within the /etc/systemd directory:
$ find /etc/systemd -type l -exec test -f {} \; -print | awk -F'/' '{ printf ("%-40s | %s\n", $(NF-0), $(NF-1)) }' | sort -f
bluetooth.service | bluetooth.target.wants
dbus-org.bluez.service | system
dbus-org.freedesktop.timesync1.service | system
dhcpcd.service | multi-user.target.wants
display-manager.service | system
getty@tty1.service | getty.target.wants
iwd.service | multi-user.target.wants
p11-kit-server.socket | sockets.target.wants
pipewire-pulse.socket | sockets.target.wants
pipewire-session-manager.service | user
pipewire.socket | sockets.target.wants
remote-fs.target | multi-user.target.wants
snapper-cleanup.timer | timers.target.wants
snapper-timeline.timer | timers.target.wants
syncthing@user.service | multi-user.target.wants
systemd-timesyncd.service | sysinit.target.wants
systemd-userdbd.socket | sockets.target.wants
wireplumber.service | pipewire.service.wants
xdg-user-dirs-update.service | default.target.want
Tried to reinstall some packages, it didn't help:
$ paru -S pipewire-audio pipewire-alsa pipewire-pulse wireplumber pavucontrol
Any insights or suggestions would be greatly appreciated! Thanks in advance!
Offline
If i start pipewire-pulse in terminal, it works. Do I just have to manually start it after every boot?
$ pipewire-pulse -v
[I][02910.026374] pw.conf | [ conf.c: 415 conf_load()] 0x5fb8c0f977e0: loaded config '/usr/share/pipewire/pipewire-pulse.conf' with 9 items
[I][02910.026556] pw.conf | [ conf.c: 1143 pw_conf_section_for_each()] handle config '/usr/share/pipewire/pipewire-pulse.conf' section 'context.properties'
[I][02910.026579] pw.context | [ context.c: 395 pw_context_new()] 0x5fb8c0f96170: parsed 0 context.properties items
[I][02910.026642] pw.context | [ context.c: 276 setup_data_loops()] created data loop 'data-loop.0'
[I][02910.026656] pw.context | [ context.c: 279 setup_data_loops()] created 1 data-loops
[I][02910.027122] pw.conf | [ conf.c: 1143 pw_conf_section_for_each()] handle config '/usr/share/pipewire/pipewire-pulse.conf' section 'context.spa-libs'
[I][02910.030039] pw.context | [ context.c: 488 pw_context_new()] 0x5fb8c0f96170: parsed 2 context.spa-libs items
[I][02910.030090] pw.conf | [ conf.c: 1143 pw_conf_section_for_each()] handle config '/usr/share/pipewire/pipewire-pulse.conf' section 'context.modules'
[I][02910.030112] pw.module | [ impl-module.c: 156 pw_context_load_module()] 0x5fb8c0f96170: name:libpipewire-module-rt args:{
nice.level = -11
#rt.prio = 83
#rt.time.soft = -1
#rt.time.hard = -1
#uclamp.min = 0
#uclamp.max = 1024
}
[I][02910.030414] mod.rt | [ module-rt.c: 572 check_realtime_privileges()] failed to set realtime policy: Operation not permitted
[I][02910.030435] mod.rt | [ module-rt.c: 537 check_realtime_privileges()] Clamp rtprio 83 to 0
[I][02910.030448] mod.rt | [ module-rt.c: 545 check_realtime_privileges()] Priority max (0) must be at least 11
[I][02910.030461] mod.rt | [ module-rt.c: 581 check_realtime_privileges()] can't set rt prio to 83 (try increasing rlimits)
[I][02910.031065] spa.loop | [ loop.c: 213 loop_create_queue()] 0x5fb8c0fa8b18 created queue 0x5fb8c0fc8f40
[I][02910.031106] pw.conf | [ conf.c: 611 load_module()] 0x5fb8c0f96170: loaded module libpipewire-module-rt
[I][02910.031127] pw.module | [ impl-module.c: 156 pw_context_load_module()] 0x5fb8c0f96170: name:libpipewire-module-protocol-native args:(null)
[I][02910.031432] pw.conf | [ conf.c: 611 load_module()] 0x5fb8c0f96170: loaded module libpipewire-module-protocol-native
[I][02910.031452] pw.module | [ impl-module.c: 156 pw_context_load_module()] 0x5fb8c0f96170: name:libpipewire-module-client-node args:(null)
[I][02910.031615] pw.conf | [ conf.c: 611 load_module()] 0x5fb8c0f96170: loaded module libpipewire-module-client-node
[I][02910.031632] pw.module | [ impl-module.c: 156 pw_context_load_module()] 0x5fb8c0f96170: name:libpipewire-module-adapter args:(null)
[I][02910.031751] pw.conf | [ conf.c: 611 load_module()] 0x5fb8c0f96170: loaded module libpipewire-module-adapter
[I][02910.031767] pw.module | [ impl-module.c: 156 pw_context_load_module()] 0x5fb8c0f96170: name:libpipewire-module-metadata args:(null)
[I][02910.031895] pw.conf | [ conf.c: 611 load_module()] 0x5fb8c0f96170: loaded module libpipewire-module-metadata
[I][02910.031917] pw.module | [ impl-module.c: 156 pw_context_load_module()] 0x5fb8c0f96170: name:libpipewire-module-protocol-pulse args:{
# contents of pulse.properties can also be placed here
# to have config per server.
}
[I][02910.032099] mod.rt | [ module-rt.c: 621 set_nice()] main thread nice level set to -11
[I][02910.034236] pw.context | [ context.c: 725 pw_context_acquire_loop()] 0x5fb8c0f96170: looking for name:'(null)' class:'(null)'
[I][02910.034278] pw.context | [ context.c: 291 data_loop_start()] starting data loop data-loop.0
[I][02910.034415] mod.rt | [ module-rt.c: 808 do_make_realtime()] clamping requested priority 83 for thread 8767 between 1 and 20
[I][02910.034438] spa.loop | [ loop.c: 213 loop_create_queue()] 0x5fb8c0f9c4c8 created queue 0x5fb8c0fe6dd0
[I][02910.034477] mod.rt | [ module-rt.c: 818 do_make_realtime()] acquired realtime priority 20 for thread 8767 using RTKit
[I][02910.034480] pw.context | [ context.c: 701 acquire_data_loop()] 0x5fb8c0f96170: using name:'data-loop.0' class:'data.rt' ref:1
[I][02910.034515] pw.conf | [ conf.c: 1143 pw_conf_section_for_each()] handle config '/usr/share/pipewire/pipewire-pulse.conf' section 'pulse.properties'
[I][02910.034549] pw.conf | [ conf.c: 1143 pw_conf_section_for_each()] handle config '/usr/share/pipewire/pipewire-pulse.conf' section 'pulse.properties.rules'
[I][02910.034641] mod.protocol-pulse | [ server.c: 642 start_unix_server()] server 0x5fb8c0fef1d0: listening on unix:/run/user/1000/pulse/native
[I][02910.034713] pw.context | [ context.c: 725 pw_context_acquire_loop()] 0x5fb8c0f96170: looking for name:'(null)' class:'(null)'
[I][02910.034732] pw.context | [ context.c: 701 acquire_data_loop()] 0x5fb8c0f96170: using name:'data-loop.0' class:'data.rt' ref:2
[I][02910.035185] mod.protocol-pulse | [ pulse-server.c: 5467 parse_bool()] : defaults: pulse.allow-module-loading = true
[I][02910.035214] mod.protocol-pulse | [ pulse-server.c: 5412 parse_frac()] : defaults: pulse.min.req = 128/48000
[I][02910.035226] mod.protocol-pulse | [ pulse-server.c: 5412 parse_frac()] : defaults: pulse.default.req = 960/48000
[I][02910.035236] mod.protocol-pulse | [ pulse-server.c: 5412 parse_frac()] : defaults: pulse.min.frag = 128/48000
[I][02910.035246] mod.protocol-pulse | [ pulse-server.c: 5412 parse_frac()] : defaults: pulse.default.frag = 96000/48000
[I][02910.035370] mod.protocol-pulse | [ pulse-server.c: 5412 parse_frac()] : defaults: pulse.default.tlength = 96000/48000
[I][02910.035380] mod.protocol-pulse | [ pulse-server.c: 5412 parse_frac()] : defaults: pulse.min.quantum = 128/48000
[I][02910.035390] mod.protocol-pulse | [ pulse-server.c: 5442 parse_format()] : defaults: pulse.default.format = F32LE
[I][02910.035400] mod.protocol-pulse | [ pulse-server.c: 5427 parse_position()] : defaults: pulse.default.position = [ FL FR ]
[I][02910.035408] mod.protocol-pulse | [ pulse-server.c: 5456 parse_uint32()] : defaults: pulse.idle.timeout = 0
[I][02910.035417] pw.conf | [ conf.c: 1143 pw_conf_section_for_each()] handle config '/usr/share/pipewire/pipewire-pulse.conf' section 'pulse.cmd'
[I][02910.035440] mod.protocol-pulse | [ module.c: 69 module_load()] load module index:536870912 name:module-always-sink
[I][02910.035466] pw.module | [ impl-module.c: 156 pw_context_load_module()] 0x5fb8c0f96170: name:libpipewire-module-fallback-sink args:{ }
[I][02910.035659] mod.protocol-native | [ local-socket.c: 72 try_connect()] connecting to 'pipewire-0' runtime_dir:/run/user/1000
[I][02910.035696] mod.protocol-pulse | [ module.c: 69 module_load()] load module index:536870913 name:module-device-manager
[I][02910.035714] mod.protocol-pulse | [ module.c: 69 module_load()] load module index:536870914 name:module-device-restore
[I][02910.035723] mod.protocol-pulse | [ module.c: 69 module_load()] load module index:536870915 name:module-stream-restore
[I][02910.035732] pw.conf | [ conf.c: 611 load_module()] 0x5fb8c0f96170: loaded module libpipewire-module-protocol-pulse
[I][02910.035740] pw.context | [ context.c: 492 pw_context_new()] 0x5fb8c0f96170: parsed 6 context.modules items
[I][02910.035748] pw.context | [ context.c: 497 pw_context_new()] 0x5fb8c0f96170: parsed 0 context.objects items
[I][02910.035756] pw.conf | [ conf.c: 1143 pw_conf_section_for_each()] handle config '/usr/share/pipewire/pipewire-pulse.conf' section 'context.exec'
[I][02910.035769] pw.context | [ context.c: 500 pw_context_new()] 0x5fb8c0f96170: parsed 0 context.exec items
[I][02910.035785] pw.metadata | [ impl-metadata.c: 186 impl_set_property()] 0x5fb8c1008260: add id:0 key:log.level type: value:3
[I][02910.035798] pw.metadata | [ impl-metadata.c: 186 impl_set_property()] 0x5fb8c1008260: add id:0 key:clock.rate type: value:48000
[I][02910.035808] pw.metadata | [ impl-metadata.c: 186 impl_set_property()] 0x5fb8c1008260: add id:0 key:clock.allowed-rates type: value:[ 48000 ]
[I][02910.035818] pw.metadata | [ impl-metadata.c: 186 impl_set_property()] 0x5fb8c1008260: add id:0 key:clock.quantum type: value:1024
[I][02910.035828] pw.metadata | [ impl-metadata.c: 186 impl_set_property()] 0x5fb8c1008260: add id:0 key:clock.min-quantum type: value:32
[I][02910.035838] pw.metadata | [ impl-metadata.c: 186 impl_set_property()] 0x5fb8c1008260: add id:0 key:clock.max-quantum type: value:2048
[I][02910.035848] pw.metadata | [ impl-metadata.c: 186 impl_set_property()] 0x5fb8c1008260: add id:0 key:clock.force-quantum type: value:0
[I][02910.035858] pw.metadata | [ impl-metadata.c: 186 impl_set_property()] 0x5fb8c1008260: add id:0 key:clock.force-rate type: value:0
[I][02910.035871] default | [ pipewire.c: 129 main()] start main loop
[I][02910.035927] mod.protocol-pulse | [ pulse-server.c: 137 do_command_auth()] client:0x5fb8c1009930 AUTH tag:0 version:35
[I][02910.036055] pw.conf | [ conf.c: 1143 pw_conf_section_for_each()] handle config '/usr/share/pipewire/pipewire-pulse.conf' section 'pulse.rules'
[I][02910.036102] mod.protocol-pulse | [ pulse-server.c: 1054 do_set_client_name()] [waybar] SET_CLIENT_NAME tag:1
[I][02910.036167] mod.protocol-native | [ local-socket.c: 72 try_connect()] connecting to 'pipewire-0' runtime_dir:/run/user/1000
[I][02910.038272] mod.protocol-pulse | [ pulse-server.c: 161 reply_set_client_name()] [waybar] reply tag:1 id:97 index:180
[I][02910.038420] mod.protocol-pulse | [ pulse-server.c: 3295 do_get_server_info()] [waybar] GET_SERVER_INFO tag:2
[I][02910.038449] mod.protocol-pulse | [ pulse-server.c: 1096 do_subscribe()] [waybar] SUBSCRIBE tag:3 mask:0000008f
[I][02910.038471] mod.protocol-pulse | [ pulse-server.c: 4410 do_get_info_list()] [waybar] GET_SINK_INFO_LIST tag:4
[I][02910.038631] mod.protocol-pulse | [ pulse-server.c: 4410 do_get_info_list()] [waybar] GET_SOURCE_INFO_LIST tag:5
$ pactl info
Server String: /run/user/1000/pulse/native
Library Protocol Version: 35
Server Protocol Version: 35
Is Local: yes
Client Index: 238
Tile Size: 65472
User Name: user
Host Name: dell
Server Name: PulseAudio (on PipeWire 1.2.5)
Server Version: 15.0.0
Default Sample Specification: float32le 2ch 48000Hz
Default Channel Map: front-left,front-right
Default Sink: bluez_output.C4_17_0E_3A_0A_31.1
Default Source: bluez_input.C4:17:0E:3A:0A:31
Cookie: 45a5:d226
Offline
Your "enabling services manually" lacks the pipewire-pulse service. While it should get socket activated, enabling it additionally shouldn't hurt anything.
Offline
Thanks for pointing that out! I've actually tried this before:
$ systemctl --user enable --now pipewire wireplumber pipewire-pulse.service
Failed to enable unit: File '/home/user/.config/systemd/user/default.target.wants/pipewire-pulse.service' already exists
Upd: This command helps if I run it after every reboot:
$ systemctl --user restart pipewire wireplumber pipewire-pulse.service
Last edited by salvation4975 (2024-10-11 11:39:34)
Offline