Some Games in Steam Not Exposing 5.1 Surround Sound in Pipewire (Pipewire-Pulse?)
Version, Distribution, Desktop Environment:
- Linux Distribution: Arch Linux
- Kernel: 5.11.2-zen1-1-zen
- Desktop Environment: GNOME 3.38
- Pipewire Version: 1:0.3.23-1 (Arch Linux)
- Installed besides Pipewire: Pipewire-Pulse, Pipewire-JACK
- Sound card using: AMD Radeon RX 5600 XT HDMI Audio (connects to Denon AVR-X3400H for 5.1 surround sound)
Description of Problem:
For games such as Dragon Quest XI S and Final Fantasy XII except for Portal 2, I was only getting signals from front left, front right, and center channel coming out of my speakers. No sound from rear left, rear right, and LEF is heard. If I reinstall PulseAudio and reboot my system (thus, replacing Pipewire-Pulse), everything is working fine.
The two problematic games that I only get stereo+center sound are reproducible in Pipewire. There is a difference in whether I use Pipewire-Pulse or PulseAudio.
Steps to Reproduce:
- Install pipewire-pulse. This will replace both PulseAudio and PulseAudio-Bluetooth (pacman -S pipewire-pulse).
- Reboot the system.
- Try play games I listed below. You should only get stereo+center sound in some games and 5.1 surround sound in Portal 2.
- Reinstall PulseAudio. You will also have to install pulseaudio-bluetooth as GNOME depends on that.
- Reboot the system again.
- Try play games again. For games that do 5.1 surround sound, it should work in PulseAudio.
- Repeat steps 1 through 6.
Results for Games Using Pipewire
- Portal 2: 5.1 surround sound
- Dragon Quest XI S: stereo+center
- Final Fantasy XII: stereo+center
Results for Games Using PulseAudio
- Portal 2: 5.1 surround sound
- Dragon Quest XI S: 5.1 surround sound
- Final Fantasy XII: 5.1 surround sound
I should be getting 5.1 surround sound in all three games regardless of whether I have Pipewire-Pulse or PulseAudio installed.
All signals are sent to all my speakers when playing Portal 2.
Signals from 141 (front left), 155 (front right), and 150 (center) gets sent to my front 3 speakers in Dragon Quest XI S.
I tried creating a PulseAudio 5.1 sink for Pipewire-Pulse but the result is the same regardless.
pactl load-module module-null-sink object.linger=1 media.class=Audio/Sink sink_name=pulseaudio-out51 channel_map=surround-51
Reinstall pulseaudio and pulseaudio-bluetooth in Arch Linux if you want to get surround sound out of games (again, Portal 2 is working fine under Pipewire). Reinstalling PulseAudio uninstalls pipewire-pulse. And do a reboot before playing games. When done playing games, reinstall pipewire-pulse. This will remove PulseAudio and PulseAudio-Bluetooth. Then reboot the system. My apologies for the repetition, however I need to add a "workarounds" section.
March 9, 2021 at 11:19 AM EDT
For PulseAudio, I've disabled stereo-to-5.1 upmixing a long time ago.
enable-remixing = yes remixing-use-all-sink-channels = no
Setting "enable-remixing" to yes is there in order to hear mono sources through my headphone when in Zoom meeting. Setting "remixing-use-all-sink-channels" to "yes" upmixes stereo to all of my speakers including my subwoofer. Even if I set "use all available sinks" to no, I do get 5.1 surround sound in games that I listed above, including Final Fantasy XV and Flux Caves.