Audio only outputting stereo even when setting to 5.1 or 7.1
Running a 7800x3D and 7900 GRE. I change the audio in desktop mode to either 5.1 or 7.1 and then go to gaming mode, and get only my front two speakers working. Any ideas
10 Replies
I am also having this exact same problem, 6950XT+5700X3D. I suspect, after some research, that it has to do with my TV not accepting non-compressed 5.1 audio, but I'm at a loss as to how to fix it
I also have this issue. I can confirm if I launch a title that supports surround sound in desktop mode it works so it seems gaming mode just forgets it's set to 5.1....
Same issue here
I had the same problem where it kept switching the audio back to stereo in game mode.
I don’t fully remember what I did but I made the following note after I solved it.
“Had to create some config files for wireplumber to match the device name and to set the profile for it.
This was helpful:
https://github.com/ublue-os/bazzite/issues/912
“
GitHub
Feature Request: Remember sound output between Desktop & Gamescope ...
Describe the bug Hello, Every time I restart/turn off/update BazziteOS I have to change sound output settings from mini Jack to sound thru HDMi to my TV. Is there any chance to correct this ? What ...
I’ll take a look at what config files I created for wireplumber when I have access to my desktop tomorrow.
I didn't need to wait until tomorrow.
I have two config files under '/home/username/.config/wireplumber/wireplumber.conf.d'. I'm not sure if both are necessary and/or which one actually solved the problem for me. My guess is that 'device.name' and 'device.profile' are the relevant parts and that you can omit where 'device.profile.description' and 'device.profile.name' are being set. The files are called '61-surround.conf' and '76-surround.conf' but I think they can be called anything.
One contains:
monitor.alsa.rules = [
{
matches = [
{
device.name = "alsa_card.pci-0000_03_00.1"
}
]
actions = {
update-props = {
device.profile = "hdmi-surround-extra1"
device.profile.description = "Digital Surround 5.1 (HDMI 2)"
device.profile.name = "hdmi-surround-extra1"
}
}
}
]
And the other has:
monitor.alsa.rules = [
{
matches = [
{
node.name = "alsa_output.pci-0000_03_00.1.hdmi-surround-extra1"
}
]
actions = {
update-props = {
device.profile = "hdmi-surround-extra1"
}
}
}
]
You'll probably need to find the address of your GPU and replace mine (0000_03_00.1) where 'device.name' is being set. I think I used 'lspci' to do that.
'lspci' lists the following for my GPU, so I used 03:00.1 for the audio device:
03:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Navi 31 [Radeon RX 7900 XT/7900 XTX/7900 GRE/7900M] (rev c8)
03:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Navi 31 HDMI/DP Audio
I hope what I provided above helps and at least points you in the right direction. This is under the assumption that you're all using the HDMI ports on your GPUs for audio.
Thanks but I haveb't got a clue what you're on about. Madness to get 5.1 surround sound working. I've looked under home/ and there isn't a "username" file path. This is literally a clean install of Bazzite and no "username" folder event exists. Looked via the file explorer under left hand column Places. Looked at "Home"
Gone to my bazzite_deck internal drive. home>bazzite>.config> and there isn't a wireplumber folder
‘/home/bazzite’ is probably correct. ‘username’ was supposed to be a placeholder for whatever the name of your user is. Sorry. That wasn’t very clear.
I’m pretty sure I created the ‘wireplumber/wireplumber.conf.d’ directories myself.
It really is a headache and madness as you say. I’ve been trying to identify exactly which of those two configs solved it for me and 5.1 audio is still working after removing both of them… I’m confused now because I’m sure it started working after creating those config files couple of months ago.
Surround Sound Audio under Linux has been an absolute pain in the rear for the entire time that I have been using Linux as my primary OS.
Be glad that 5.1 & 7.1 are even detected as possible options within BazziteOS in ANY form, for most Linux Distributions 5.1 & 7.1 Surround Sound aren't often available as Output options, at least when you're using Optical Audio Out for the interface type, regardless of the Audio Co-Processor that your particular Motherboard or USB/PCI-E Attached Audio Device uses.
My solution so far has been to rely on Arch Linux based Distributions as they seem to be the only Distribution type that has consistently allowed me to utilise 5.1 & 7.1 Surround Sound as a Output option.
A lot of this is caused by a lack of people that actively run 5.1 & 7.1 Surround Sound Systems while using a Linux-based Computer, additional friction is caused by the fact that most Audio Formats, but especially those used for Surround Sound, are Proprietary, Closed-Source, and, Require a Per-Device License, as well as a Commercial Distribution License in order to be accessed, these License's are NOT Cheap.
Linux currently as a community doesn't have enough funds to Pay for the Developers & Hardware resources needed to overcome these limitations by developing truly Free & Open-Source replacement solutions that are fully Compatible with the Proprietary Closed-Source Standards without at all relying on the need to pay for any subsequent Licencing that the Proprietary Closed-Source Software License Holders require you to have in order to use your hardware the way you want to use it.
So, in short, you can blame excessive Licensing Fee's and Limited Appeal to develop Free & Open-Source replacement solutions for the core reasons as to why 5.1, 7.1, and other Surround Sound formats are not currently widely supported under Linux.
As for the BazziteOS Gamemode Specific problems it sounds like it is defaulting to a "Stock" mode for Audio Output when you switch to Gamemode.
Hi all, I managed to get Surround Sound Working in Game Mode Bazzite. The solution is a lot easier than what's been mentioned on the web and noted on here (thanks for all your assistance on here btw). Please see github post - I've broken it down step by step as not everyone is a linux guru (just like me):
GitHub
Default audio sink not respect by gamescope session · Issue #1195 ·...
Describe the bug When I change my default audio sink via: pactl set-default-sink alsa_output.pci-0000_0b_00.1.hdmi-surround-extra3 and then start a gamescope-session, it will reset it to another si...