You are not logged in.

#1 2024-05-31 00:18:11

EngBIRD
Member
Registered: 2021-06-17
Posts: 4

Troubleshooting an incomplete switch from pulseaudio to pipewire

Sometime around November or December of last year a program I had migrated it's audio dependency from pulse* to pipewire. I followed the arch manual to remove the collection of pulse packages and install / configure my pipewire service. At least to the best of my understanding, and I think it was partially successful. Ever since then I've been able to connect to the following audio devices 1) a USB headset; 2) my bluetooth headphones; 3) TV speakers accessible through an HDMI connection.  The other-side of the coin is that I've had no problems with USB based microphones.

The problem, is my speakers, connected to an audio jack directly connected to my motherboard aren't detected anymore. I've tested that the speakers and my onboard jack work by booting into an alternate OS. I use the BIOS to select my bootable drive when I'm not booting by default into my Arch system.

My arch system was installed in 2012, and I've rarely had significant problems, but I have experimented numerous times over the years with some program setups, that I may not have fully understood, to provide capabilities around midi, recording servers, self-hosted video conferencing etc., while I never got many of those working, I wouldn't be surprised if I have ended residual packages or conf files that could be interfering.

I revisit this problem usually about once a month and I've tried just about everything I can find from a google search, so I'm not sure where to start anymore. I've installed many parallel programs like firmware_utils and I've tried ensuring the systemd services were properly running. When I reopened the PipeWire ArchWiki  today the following section caught my eye:

3.1.9 Switching between device profiles
Some hardware audio devices, like snd_hda_intel, function differently depending on which profile the device is running in. In the case of snd_hda_intel, there are separate profiles for HDMI and analog output.

snd_hda_intel is something I think is relevant to my hardware and there was a post I tried following by adding it to the blacklist, but this didn't change anything so I reverted. I haven't tried customizing "profiles" as I'm not sure I have enough information to make an attempt for a hardware specific profile, and I'll admit to being a little cautious as I don't want to loose my current plug-and-play USB + HDMI audio capabilities.

The result of pactl info which is currently outputting (crackly) audio to a USB headset:

pactl info
Server String: /run/user/1000/pulse/native
Library Protocol Version: 35
Server Protocol Version: 35
Is Local: yes
Client Index: 1806
Tile Size: 65472
Server Name: PulseAudio (on PipeWire 1.0.7)
Server Version: 15.0.0
Default Sample Specification: float32le 2ch 48000Hz
Default Channel Map: front-left,front-right
Default Sink: alsa_output.usb-DSEA_A_S_EPOS_ADAPT_1x5_A003640212601111_00-00.iec958-stereo
Default Source: alsa_input.usb-DSEA_A_S_EPOS_ADAPT_1x5_A003640212601111_00-00.mono-fallback

Anyone have a similar issue and/or have any troubleshooting advice?  I've tried to post this a few times, but it appears I'm taking to long trying to add supporting outputs and this forum post-page times out. My apologies if in my haste this time to beat the expiration I've neglected information I previously had that I should have continued to prioritize. I'll provide any requested diagnostic output as soon as possible!

Last edited by EngBIRD (2024-06-01 02:50:27)

Offline

#2 2024-05-31 11:43:58

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

Re: Troubleshooting an incomplete switch from pulseaudio to pipewire

Please use code rather than quote tags for outputs. Adjust your OP in this regard and post the outputs of

sudo fuser -v /dev/snd/*
aplay -lL
pacman -Qs 'wire|pulse'
systemctl --user status pipewire{,-pulse} wireplumber pulseaudio

Offline

#3 2024-06-01 03:02:37

EngBIRD
Member
Registered: 2021-06-17
Posts: 4

Re: Troubleshooting an incomplete switch from pulseaudio to pipewire

Requested results:

First Results of running: sudo fuser -v /dev/snd/*

                                    USER        PID ACCESS COMMAND
/dev/snd/controlC0: EngBIRD    9020 F.... wireplumber
/dev/snd/controlC1: EngBIRD    9020 F.... wireplumber
/dev/snd/pcmC1D0p:  EngBIRD    9019 F...m pipewire
/dev/snd/seq:       EngBIRD    9014 f.... fluidsynth
                    EngBIRD    9019 F.... pipewire

Second Results of running: aplay -lL

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
hdmi:CARD=NVidia,DEV=0
    HDA NVidia, L246WH
    HDMI Audio Output
hdmi:CARD=NVidia,DEV=1
    HDA NVidia, L246WH
    HDMI Audio Output
hdmi:CARD=NVidia,DEV=2
    HDA NVidia, HDMI 2
    HDMI Audio Output
hdmi:CARD=NVidia,DEV=3
    HDA NVidia, HDMI 3
    HDMI Audio Output
usbstream:CARD=NVidia
    HDA NVidia
    USB Stream Output
sysdefault:CARD=E1x5
    EPOS ADAPT 1x5, USB Audio
    Default Audio Device
front:CARD=E1x5,DEV=0
    EPOS ADAPT 1x5, USB Audio
    Front output / input
surround21:CARD=E1x5,DEV=0
    EPOS ADAPT 1x5, USB Audio
    2.1 Surround output to Front and Subwoofer speakers
surround40:CARD=E1x5,DEV=0
    EPOS ADAPT 1x5, USB Audio
    4.0 Surround output to Front and Rear speakers
surround41:CARD=E1x5,DEV=0
    EPOS ADAPT 1x5, USB Audio
    4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=E1x5,DEV=0
    EPOS ADAPT 1x5, USB Audio
    5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=E1x5,DEV=0
    EPOS ADAPT 1x5, USB Audio
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=E1x5,DEV=0
    EPOS ADAPT 1x5, USB Audio
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=E1x5,DEV=0
    EPOS ADAPT 1x5, USB Audio
    IEC958 (S/PDIF) Digital Audio Output
usbstream:CARD=E1x5
    EPOS ADAPT 1x5
    USB Stream Output
**** List of PLAYBACK Hardware Devices ****
card 0: NVidia [HDA NVidia], device 3: HDMI 0 [L246WH]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 7: HDMI 1 [L246WH]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 9: HDMI 3 [HDMI 3]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: E1x5 [EPOS ADAPT 1x5], device 0: USB Audio [USB Audio]
  Subdevices: 0/1
  Subdevice #0: subdevice #0

Third Results of running: pacman -Qs 'wire|pulse'

local/easyeffects 7.1.6-1
    Audio Effects for Pipewire applications
local/gnome-shell-extension-wireguard-indicator 9-1
    Manage WireGuard VPN from Desktop
local/gst-plugin-pipewire 1:1.0.7-2
    Multimedia graph framework - pipewire plugin
local/gtk-vnc 1.3.1-1
    VNC viewer widget for GTK
local/iwd 2.17-2
    Internet Wireless Daemon
local/lib32-libcanberra 1:0.30+r2+gc0620e4-2
    A small and lightweight implementation of the XDG Sound Theme Specification (32-bit)
local/lib32-libpipewire 1:1.0.7-1
    Low-latency audio/video router and processor - 32-bit - client library
local/lib32-libpulse 17.0-1
    A featureful, general-purpose sound server (32-bit client libraries)
local/libcanberra 1:0.30+r2+gc0620e4-3
    A small and lightweight implementation of the XDG Sound Theme Specification
local/libcec 6.0.2-5
    Pulse-Eight's libcec for the Pulse-Eight USB-CEC adapter
local/libffado 2.4.8-2
    Driver for FireWire audio devices
local/libpipewire 1:1.0.7-2
    Low-latency audio/video router and processor - client library
local/libpulse 17.0-3
    A featureful, general-purpose sound server (client library)
local/libraw1394 2.1.2-3
    Provides an API to the Linux IEEE1394 (FireWire) driver
local/libwireplumber 0.5.2-2
    Session / policy manager implementation for PipeWire - client library
local/linux 6.9.2.arch1-1
    The Linux kernel and modules
local/pamixer 1.6-3
    Pulseaudio command-line mixer like amixer
local/paprefs 1.2-1
    Configuration dialog for PulseAudio
local/pavucontrol 1:6.0-1
    PulseAudio Volume Control
local/pipewire 1:1.0.7-2
    Low-latency audio/video router and processor
local/pipewire-alsa 1:1.0.7-2
    Low-latency audio/video router and processor - ALSA configuration
local/pipewire-audio 1:1.0.7-2
    Low-latency audio/video router and processor - Audio support
local/pipewire-jack 1:1.0.7-2
    Low-latency audio/video router and processor - JACK replacement
local/pipewire-pulse 1:1.0.7-2
    Low-latency audio/video router and processor - PulseAudio replacement
local/pipewire-v4l2 1:1.0.7-2
    Low-latency audio/video router and processor - V4L2 interceptor
local/qpwgraph 0.7.2-1 (pro-audio)
    PipeWire Graph Qt GUI Interface
local/wireguard-tools 1.0.20210914-2
    next generation secure network tunnel - tools for configuration
local/wireplumber 0.5.2-2
    Session / policy manager implementation for PipeWire
local/wireshark-cli 4.2.5-2
    Network traffic and protocol analyzer/sniffer - CLI tools and data files
local/wireshark-qt 4.2.5-2
    Network traffic and protocol analyzer/sniffer - Qt GUI
local/wpa_supplicant 2:2.10-8
    A utility providing key negotiation for WPA wireless networks

Fourth Results of running: systemctl --user status pipewire{,-pulse} wireplumber pulseaudio

Unit pulseaudio.service could not be found.
● pipewire.service - PipeWire Multimedia Service
     Loaded: loaded (/usr/lib/systemd/user/pipewire.service; enabled; preset: enabled)
     Active: active (running) since Fri 2024-05-31 22:47:25 EDT; 8min ago
TriggeredBy: ● pipewire.socket
   Main PID: 9019 (pipewire)
      Tasks: 3 (limit: 18958)
     Memory: 14.5M (peak: 16.2M swap: 1.6M swap peak: 1.6M zswap: 126.4K)
        CPU: 8.762s
     CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/pipewire.service
             └─9019 /usr/bin/pipewire

May 31 22:47:25 lofn systemd[8984]: Started PipeWire Multimedia Service.

● pipewire-pulse.service - PipeWire PulseAudio
     Loaded: loaded (/usr/lib/systemd/user/pipewire-pulse.service; enabled; preset: enabled)
     Active: active (running) since Fri 2024-05-31 22:47:25 EDT; 8min ago
TriggeredBy: ● pipewire-pulse.socket
   Main PID: 9021 (pipewire-pulse)
      Tasks: 3 (limit: 18958)
     Memory: 14.1M (peak: 15.1M swap: 1.6M swap peak: 1.6M zswap: 219.9K)
        CPU: 14.774s
     CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/pipewire-pulse.service
             └─9021 /usr/bin/pipewire-pulse

May 31 22:47:25 lofn systemd[8984]: Started PipeWire PulseAudio.

● wireplumber.service - Multimedia Service Session Manager
     Loaded: loaded (/usr/lib/systemd/user/wireplumber.service; enabled; preset: enabled)
     Active: active (running) since Fri 2024-05-31 22:47:25 EDT; 8min ago
   Main PID: 9020 (wireplumber)
      Tasks: 7 (limit: 18958)
     Memory: 9.8M (peak: 10.9M swap: 852.0K swap peak: 852.0K zswap: 125.8K)
        CPU: 759ms
     CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/wireplumber.service
             └─9020 /usr/bin/wireplumber

May 31 22:47:25 lofn systemd[8984]: Started Multimedia Service Session Manager.
May 31 22:47:26 lofn wireplumber[9020]: [0:08:26.782606481] [9020] ERROR IPAModule ipa_module.cpp:172 Symbol ipaModuleInfo not found
May 31 22:47:26 lofn wireplumber[9020]: [0:08:26.782623373] [9020] ERROR IPAModule ipa_module.cpp:292 v4l2-compat.so: IPA module has no valid info
May 31 22:47:26 lofn wireplumber[9020]: [0:08:26.782659174] [9020]  INFO Camera camera_manager.cpp:313 libcamera v0.3.0
May 31 22:47:26 lofn wireplumber[9020]: [string "alsa.lua"]:178: table index is nil
                                        stack traceback:
                                                [string "alsa.lua"]:178: in function <[string "alsa.lua"]:172>
May 31 22:47:27 lofn wireplumber[9020]: [string "alsa.lua"]:178: table index is nil
                                        stack traceback:
                                                [string "alsa.lua"]:178: in function <[string "alsa.lua"]:172>

Please let me know if it would be more helpful for any of these commands to be run without all my other USB audio devices or extra monitors plugged in.

Thank you for your assistance!

Offline

Board footer

Powered by FluxBB