You are not logged in.

#1 2024-04-06 19:31:16

geistnine
Member
Registered: 2024-04-06
Posts: 5

[Solved] Audio not working [Wireplumber fails to start]

Hi, I've had arch working quite well for a while now, and recently managed to goof up my audio. I noticed wireplumber no longer starts:

❯ systemctl --user status pipewire pipewire-pulse wireplumber
● pipewire.service - PipeWire Multimedia Service
     Loaded: loaded (/usr/local/lib/systemd/user/pipewire.service; enabled; preset: enabled)
     Active: active (running) since Sat 2024-04-06 13:49:41 EDT; 1h 29min ago
TriggeredBy: ● pipewire.socket
   Main PID: 930 (pipewire)
      Tasks: 3 (limit: 18817)
     Memory: 9.2M (peak: 9.7M)
        CPU: 52ms
     CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/pipewire.service
             └─930 /usr/local/bin/pipewire

Apr 06 13:49:41 mechanicus systemd[917]: Started PipeWire Multimedia Service.

● pipewire-pulse.service - PipeWire PulseAudio
     Loaded: loaded (/usr/local/lib/systemd/user/pipewire-pulse.service; enabled; preset: enabled)
     Active: active (running) since Sat 2024-04-06 13:49:41 EDT; 1h 29min ago
TriggeredBy: ● pipewire-pulse.socket
   Main PID: 932 (pipewire-pulse)
      Tasks: 3 (limit: 18817)
     Memory: 15.8M (peak: 16.1M)
        CPU: 52ms
     CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/pipewire-pulse.service
             └─932 /usr/local/bin/pipewire-pulse

Apr 06 13:49:41 mechanicus systemd[917]: Started PipeWire PulseAudio.

× wireplumber.service - Multimedia Service Session Manager
     Loaded: loaded (/usr/local/lib/systemd/user/wireplumber.service; enabled; preset: enabled)
     Active: failed (Result: exit-code) since Sat 2024-04-06 14:21:40 EDT; 58min ago
   Duration: 7ms
    Process: 3345 ExecStart=/usr/local/bin/wireplumber (code=exited, status=127)
   Main PID: 3345 (code=exited, status=127)
        CPU: 7ms

Apr 06 14:21:40 mechanicus systemd[917]: wireplumber.service: Scheduled restart job, restart counter is at 5.
Apr 06 14:21:40 mechanicus systemd[917]: wireplumber.service: Start request repeated too quickly.
Apr 06 14:21:40 mechanicus systemd[917]: wireplumber.service: Failed with result 'exit-code'.
Apr 06 14:21:40 mechanicus systemd[917]: Failed to start Multimedia Service Session Manager.
❯ wireplumber
wireplumber: error while loading shared libraries: libwireplumber-0.4.so.0: cannot open shared object file: No such file or directory

So I must have partially updated at some point and broke it, but

pacman -Syyu

with updated mirrors and from chroot hasn't resolved it, so I'm not sure what to do.

❯ aplay -L
null
    Discard all samples (playback) or generate zero samples (capture)
lavrate
    Rate Converter Plugin Using Libav/FFmpeg Library
samplerate
    Rate Converter Plugin Using Samplerate Library
speexrate
    Rate Converter Plugin Using Speex Resampler
jack
    JACK Audio Connection Kit
oss
    Open Sound System
pipewire
    PipeWire Sound Server
pulse
    PulseAudio Sound Server
speex
    Plugin using Speex DSP (resample, agc, denoise, echo, dereverb)
upmix
    Plugin for channel upmix (4,6,8)
vdownmix
    Plugin for channel downmix (stereo) with a simple spacialization
default
    Default ALSA Output (currently PipeWire Media Server)
sysdefault:CARD=PCH
    HDA Intel PCH, 92HD95 Analog
    Default Audio Device
front:CARD=PCH,DEV=0
    HDA Intel PCH, 92HD95 Analog
    Front output / input
surround21:CARD=PCH,DEV=0
    HDA Intel PCH, 92HD95 Analog
    2.1 Surround output to Front and Subwoofer speakers
surround40:CARD=PCH,DEV=0
    HDA Intel PCH, 92HD95 Analog
    4.0 Surround output to Front and Rear speakers
surround41:CARD=PCH,DEV=0
    HDA Intel PCH, 92HD95 Analog
    4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=PCH,DEV=0
    HDA Intel PCH, 92HD95 Analog
    5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=PCH,DEV=0
    HDA Intel PCH, 92HD95 Analog
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=PCH,DEV=0
    HDA Intel PCH, 92HD95 Analog
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
hdmi:CARD=PCH,DEV=0
    HDA Intel PCH, HDMI 0
    HDMI Audio Output
hdmi:CARD=PCH,DEV=1
    HDA Intel PCH, HDMI 1
    HDMI Audio Output
hdmi:CARD=PCH,DEV=2
    HDA Intel PCH, HDMI 2
    HDMI Audio Output
hdmi:CARD=PCH,DEV=3
    HDA Intel PCH, HDMI 3
    HDMI Audio Output
usbstream:CARD=PCH
    HDA Intel PCH
    USB Stream Output

I was however able to verify that the speakers can emit sound by using

speaker-test -D sysdefault:PCH -c 2 

Any insight/help would be greatly appreciated

Last edited by geistnine (2024-04-06 21:56:23)

Offline

#2 2024-04-06 20:35:51

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 25,230

Re: [Solved] Audio not working [Wireplumber fails to start]

Update your system, wireplumber should not look at a 0.4 version

Other than that

pacman -Qs 'wire'
pacman -Qikk wireplumber 

Offline

#3 2024-04-06 20:49:17

geistnine
Member
Registered: 2024-04-06
Posts: 5

Re: [Solved] Audio not working [Wireplumber fails to start]

❯ sudo pacman -Syyu
:: Synchronizing package databases...
 core                                                                                128.3 KiB   111 KiB/s 00:01 [###################################################################] 100%
 extra                                                                                 8.1 MiB  9.99 MiB/s 00:01 [###################################################################] 100%
 multilib                                                                            138.8 KiB  1477 KiB/s 00:00 [###################################################################] 100%
:: Starting full system upgrade...
 there is nothing to do

Is that set of flags missing anything?

Here's the output of those two commands:

❯ pacman -Qs 'wire'
local/libpipewire 1:1.0.4-4
    Low-latency audio/video router and processor - client library
local/libraw1394 2.1.2-3
    Provides an API to the Linux IEEE1394 (FireWire) driver
local/libwireplumber 0.5.1-1
    Session / policy manager implementation for PipeWire - client library
local/linux 6.8.2.arch2-1
    The Linux kernel and modules
local/pipewire 1:1.0.4-4
    Low-latency audio/video router and processor
local/pipewire-alsa 1:1.0.4-4
    Low-latency audio/video router and processor - ALSA configuration
local/pipewire-audio 1:1.0.4-4
    Low-latency audio/video router and processor - Audio support
local/pipewire-pulse 1:1.0.4-4
    Low-latency audio/video router and processor - PulseAudio replacement
local/wireplumber 0.5.1-1
    Session / policy manager implementation for PipeWire
local/wireplumber-git-debug 0.5.1.r2.g8ee35183-1
    Detached debugging symbols for wireplumber-git
local/wpa_supplicant 2:2.10-8
    A utility providing key negotiation for WPA wireless networks
❯ pacman -Qikk wireplumber
Name            : wireplumber
Version         : 0.5.1-1
Description     : Session / policy manager implementation for PipeWire
Architecture    : x86_64
URL             : https://pipewire.pages.freedesktop.org/wireplumber/
Licenses        : MIT
Groups          : None
Provides        : pipewire-session-manager
Depends On      : libwireplumber=0.5.1-1  gcc-libs  glibc  libglib-2.0.so=0-64  libgobject-2.0.so=0-64  libgio-2.0.so=0-64  libpipewire  libpipewire-0.3.so=0-64  libsystemd.so=0-64  lua
                  pipewire  systemd-libs
Optional Deps   : wireplumber-docs: Documentation
Required By     : pipewire-alsa  pipewire-pulse
Optional For    : pipewire
Conflicts With  : pipewire-media-session
Replaces        : None
Installed Size  : 994.41 KiB
Packager        : David Runge <dvzrv@archlinux.org>
Build Date      : Sun 31 Mar 2024 11:03:36 AM EDT
Install Date    : Sat 06 Apr 2024 02:14:47 PM EDT
Install Reason  : Explicitly installed
Install Script  : Yes
Validated By    : Signature

wireplumber: 273 total files, 0 altered files

Offline

#4 2024-04-06 21:51:50

geistnine
Member
Registered: 2024-04-06
Posts: 5

Re: [Solved] Audio not working [Wireplumber fails to start]

Oh jeez, ok.

Somehow I had two binaries for wireplumber:

❯ whereis wireplumber
wireplumber: /usr/bin/wireplumber /usr/local/bin/wireplumber /usr/share/wireplumber

And /usr/bin/ contained 0.5-1, which runs as expected. Replacing the one in local/bin with it returned things to normal

Thanks for taking a look, V1del!

Offline

#5 2024-04-06 23:08:25

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 25,230

Re: [Solved] Audio not working [Wireplumber fails to start]

You should not have any binaries in /usr/local unless you run unpackaged compiles, you should rid yourself of the copy in /usr/local or you'll have the issue again

Offline

#6 2024-04-06 23:58:58

geistnine
Member
Registered: 2024-04-06
Posts: 5

Re: [Solved] Audio not working [Wireplumber fails to start]

Thanks for highlighting that, I guess there's something else needs doing because keeping it in the right place (/usr/bin/ rather than /usr/local/bin) causes it to fail on startup:

Apr 06 19:51:24 mechanicus systemd[937]: wireplumber.service: Scheduled restart job, restart counter is at 1.
Apr 06 19:51:24 mechanicus systemd[937]: Started Multimedia Service Session Manager.
Apr 06 19:51:24 mechanicus systemd[937]: wireplumber.service: Main process exited, code=exited, status=203/EXEC
Apr 06 19:51:24 mechanicus systemd[937]: wireplumber.service: Failed with result 'exit-code'.
Apr 06 19:51:24 mechanicus systemd[937]: wireplumber.service: Scheduled restart job, restart counter is at 2.
Apr 06 19:51:25 mechanicus systemd[937]: Started Multimedia Service Session Manager.
Apr 06 19:51:25 mechanicus systemd[937]: wireplumber.service: Main process exited, code=exited, status=203/EXEC
Apr 06 19:51:25 mechanicus systemd[937]: wireplumber.service: Failed with result 'exit-code'.
Apr 06 19:51:25 mechanicus systemd[937]: wireplumber.service: Scheduled restart job, restart counter is at 3.
Apr 06 19:51:25 mechanicus systemd[937]: Started Multimedia Service Session Manager.
Apr 06 19:51:25 mechanicus systemd[937]: wireplumber.service: Main process exited, code=exited, status=203/EXEC
Apr 06 19:51:25 mechanicus systemd[937]: wireplumber.service: Failed with result 'exit-code'.
Apr 06 19:51:25 mechanicus systemd[937]: wireplumber.service: Scheduled restart job, restart counter is at 4.
Apr 06 19:51:25 mechanicus systemd[937]: Started Multimedia Service Session Manager.
Apr 06 19:51:25 mechanicus systemd[937]: wireplumber.service: Main process exited, code=exited, status=203/EXEC
Apr 06 19:51:25 mechanicus systemd[937]: wireplumber.service: Failed with result 'exit-code'.
Apr 06 19:51:25 mechanicus systemd[937]: wireplumber.service: Scheduled restart job, restart counter is at 5.
Apr 06 19:51:25 mechanicus systemd[937]: wireplumber.service: Start request repeated too quickly.
Apr 06 19:51:25 mechanicus systemd[937]: wireplumber.service: Failed with result 'exit-code'.
Apr 06 19:51:25 mechanicus systemd[937]: Failed to start Multimedia Service Session Manager.

Granted I can run wireplumber manually and that's fine, but I would like this to just work. It's not clear to me why it starts but then exits in systemd

EDIT: Actually, there's this too:

❯ systemctl --user status wireplumber
× wireplumber.service - Multimedia Service Session Manager
     Loaded: loaded (/usr/local/lib/systemd/user/wireplumber.service; enabled; preset: enabled)
     Active: failed (Result: exit-code) since Sat 2024-04-06 19:51:25 EDT; 9min ago
   Duration: 872us
    Process: 997 ExecStart=/usr/local/bin/wireplumber (code=exited, status=203/EXEC)
   Main PID: 997 (code=exited, status=203/EXEC)
        CPU: 697us

Apr 06 19:51:25 mechanicus systemd[937]: wireplumber.service: Scheduled restart job, restart counter is at 5.
Apr 06 19:51:25 mechanicus systemd[937]: wireplumber.service: Start request repeated too quickly.
Apr 06 19:51:25 mechanicus systemd[937]: wireplumber.service: Failed with result 'exit-code'.
Apr 06 19:51:25 mechanicus systemd[937]: Failed to start Multimedia Service Session Manager.

so it's still looking for wireplumber in /usr/local/bin, how can I tell my system to find the binary in /usr/bin/ instead?

EDIT 2: Got it, was able to edit ExecStart's value in ~/.config/systemd/user/pipewire-session-manager.service to resolve this part

Last edited by geistnine (2024-04-07 00:50:55)

Offline

#7 2024-04-08 12:34:03

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 25,230

Re: [Solved] Audio not working [Wireplumber fails to start]

Why does any of that exist? None of those should be present on a normal install, no binaries in /usr/local and no custom service files in ~/.config/systemd/user/pipewire-session-manager.service either.

It sounds like you experimented with a custom/from source install of wireplumber/pipewire for some reason and now have residues scattered around that conflict with package defaults.

Offline

#8 2024-04-09 18:53:42

geistnine
Member
Registered: 2024-04-06
Posts: 5

Re: [Solved] Audio not working [Wireplumber fails to start]

That must be it exactly. I wasn't aware of how building from source and package managers use different install directories (seems obvious now) so this is how I pay for being frivolous with that I guess

Offline

Board footer

Powered by FluxBB