I’m currently trying to debug why only certain games launched from Steam will play audio, whereas others will not. I have no issues playing audio in other apps, for example, my browser. I have attempted to check journalctl
for any info while I boot problematic games up, but nothing jumps out at me. FWIW, I have selected the expected audio interface as the default using pavucontrol
.
After doing some research, I see many posts that recommend trying to install various packages, such as pipewire-pulse, lib32 versions of various audio packages, and different alsa packages, but none of these have solved the issue.
pacman -Q | rg "pulse|pipe|alsa|pavu"
alsa-card-profiles 1:1.0.6-1
alsa-firmware 1.2.4-3
alsa-lib 1.2.11-1
alsa-plugins 1:1.2.7.1-2
alsa-topology-conf 1.2.5.1-3
alsa-ucm-conf 1.2.11-1
alsa-utils 1.2.11-1
gst-plugin-pipewire 1:1.0.6-1
lib32-alsa-lib 1.2.11-1
lib32-alsa-plugins 1.2.7.1-2
lib32-libpipewire 1:1.0.6-1
lib32-libpulse 17.0-1
libpipeline 1.5.7-2
libpipewire 1:1.0.6-1
libpulse 17.0-3
pavucontrol 1:5.0+r66+gc330506-1
pipewire 1:1.0.6-1
pipewire-alsa 1:1.0.6-1
pipewire-audio 1:1.0.6-1
pipewire-jack 1:1.0.6-1
pipewire-pulse 1:1.0.6-1
Meanwhile, I have no pulseaudio service (this seems expected?)
systemctl --user status pulseaudio.{socket,service}
Unit pulseaudio.socket could not be found.
Unit pulseaudio.service could not be found.
I do have pipewire service:
systemctl --user status pipewire.{socket,service}
● pipewire.socket - PipeWire Multimedia System Sockets
Loaded: loaded (/usr/lib/systemd/user/pipewire.socket; enabled; preset: enabled)
Active: active (running) since Mon 2024-05-20 20:55:35 EDT; 1h 23min ago
Triggers: ● pipewire.service
Listen: /run/user/1000/pipewire-0 (Stream)
/run/user/1000/pipewire-0-manager (Stream)
CGroup: /user.slice/user-1000.slice/user@1000.service/app.slice/pipewire.socket
May 20 20:55:35 nick-workstation systemd[1163]: Listening on PipeWire Multimedia System Sockets.
● pipewire.service - PipeWire Multimedia Service
Loaded: loaded (/usr/lib/systemd/user/pipewire.service; disabled; preset: enabled)
Active: active (running) since Mon 2024-05-20 20:55:35 EDT; 1h 23min ago
TriggeredBy: ● pipewire.socket
Main PID: 1172 (pipewire)
Tasks: 3 (limit: 38277)
Memory: 19.3M (peak: 21.9M)
CPU: 6.692s
CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/pipewire.service
└─1172 /usr/bin/pipewire
May 20 20:55:35 nick-workstation systemd[1163]: Started PipeWire Multimedia Service.
and likewise pipewire-pulse:
systemctl --user status pipewire-pulse.{socket,service}
● pipewire-pulse.socket - PipeWire PulseAudio
Loaded: loaded (/usr/lib/systemd/user/pipewire-pulse.socket; enabled; preset: enabled)
Active: active (running) since Mon 2024-05-20 20:55:35 EDT; 1h 24min ago
Triggers: ● pipewire-pulse.service
Listen: /run/user/1000/pulse/native (Stream)
CGroup: /user.slice/user-1000.slice/user@1000.service/app.slice/pipewire-pulse.socket
May 20 20:55:35 nick-workstation systemd[1163]: Listening on PipeWire PulseAudio.
● pipewire-pulse.service - PipeWire PulseAudio
Loaded: loaded (/usr/lib/systemd/user/pipewire-pulse.service; enabled; preset: enabled)
Active: active (running) since Mon 2024-05-20 20:55:35 EDT; 1h 24min ago
TriggeredBy: ● pipewire-pulse.socket
Main PID: 1174 (pipewire-pulse)
Tasks: 3 (limit: 38277)
Memory: 29.7M (peak: 30.8M)
CPU: 4.196s
CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/pipewire-pulse.service
└─1174 /usr/bin/pipewire-pulse
May 20 20:55:35 nick-workstation systemd[1163]: Started PipeWire PulseAudio.
Which I guess is expected based on what I understand about how pipewire / pipewire-pulse works, but I’m not quite sure.
When I run inxi -Aax
:
inxi -Aax
Audio:
Device-1: NVIDIA GA102 High Definition Audio driver: snd_hda_intel v: kernel
pcie: gen: 1 speed: 2.5 GT/s lanes: 16 link-max: gen: 4 speed: 16 GT/s
bus-ID: 0b:00.1 chip-ID: 10de:1aef class-ID: 0403
Device-2: AMD Starship/Matisse HD Audio vendor: ASUSTeK
driver: snd_hda_intel v: kernel pcie: gen: 4 speed: 16 GT/s lanes: 16
bus-ID: 0d:00.4 chip-ID: 1022:1487 class-ID: 0403
Device-3: Apogee Symphony Desktop driver: snd-usb-audio type: USB rev: 2.0
speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 1-3:3 chip-ID: 0c60:002a
class-ID: fe01
Device-4: Elgato Systems GmbH Wave XLR driver: snd-usb-audio type: USB
rev: 2.0 speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 1-4:4 chip-ID: 0fd9:007d
class-ID: fe01 serial: DS22K1A00050
API: ALSA v: k6.9.1-arch1-1 status: kernel-api
tools: alsactl,alsamixer,amixer
Server-1: PipeWire v: 1.0.6 status: active with: 1: pipewire-pulse
status: active 2: wireplumber status: active 3: pipewire-alsa type: plugin
4: pw-jack type: plugin tools: pactl,pw-cat,pw-cli,wpctl
I see that some other audio device which are not my target sink (trying to output to device 3) are available, could it be possible that some device is taking priority? Is there an easy way to determine this? The default sink and source appear to be correctly set when I run pactl info
:
pactl info
Server String: /run/user/1000/pulse/native
Library Protocol Version: 35
Server Protocol Version: 35
Is Local: yes
Client Index: 11315
Tile Size: 65472
User Name: nick
Host Name: nick-workstation
Server Name: PulseAudio (on PipeWire 1.0.6)
Server Version: 15.0.0
Default Sample Specification: float32le 2ch 48000Hz
Default Channel Map: front-left,front-right
Default Sink: alsa_output.usb-Apogee_Electronics_Corp_Symphony_Desktop-00.multichannel-output
Default Source: alsa_input.usb-Elgato_Systems_Elgato_Wave_XLR_DS22K1A00050-00.mono-fallback
Cookie: 0850:bed3
So I’m really not sure what to try next. Thanks in advance for any help!