Sound Card Output is Swapped/Mixed up
Creative Sound Blaster AE-5 5.1 analogue connection. Centre/Sub output and Rear output are literally swapped. If I swap the plugs, it fixes the issue, but then it's plugged incorrectly and when I boot into Windows, I'll have to swap plugs.... I'd like to figure out how I can swap them to the way they should be.
33 Replies
you can probably adjust it in windows in the sound blaster driver
Unfortunately there's nothing in the Creative app or Windows settings that allows me to change anything other than reversing stereo channels, but as soon as I boot back into Linux that reverts anyway.
I meant to also reverse it in windows
trying to mess with audio in linux is a pita
you can probably do it via some pipewire configs, but that's also still kinda a pita
you can either do it with alsa and wireplumber, or a pipewire virtual loopback device
most solutions on the internet should work if they don't touch anything in
/usr/Is pipewire something I can install? I tried alsamixer but couldn't find anything in there (although that did let me turn off the creative software effects which was nice since there is no creative app in linux).
pipewire is one of the audio systems in fedora(and most modern desktop linux distros)
wireplumber is a layer that allows pipewire to run on top of existing linux audio systems
alsa is advanced linux audio subsystem
I'd advise you to not touch alsa if you don't know what you are doing
Can you install coppwr from bazaar ? and send node name of your sound cards? I will create file for you to create new sink that will swap outputs

Just installed. Trying to find the nodename now
Okay found it. Its "alsa_output.pci-0000_05_00.0.analog-surround-51"
and can you also scroll up little and there should be audio position
FL,FR,RL,RR,FC,LFE
in your file browser enable showing hidden files in KDE it is (CTRL+M) and from home go to
.config
create folder wireplumber and inside wireplumber create another folder main.lua.d
and inside main.lua.d create text file 51-fix-channels.lua
in text file paste this:
and saveOkay, done. Does the text file extension should be .txt or .lua?
and restart wireplumber
systemctl --user restart wireplumber.service
.luaHmm doesn't seem to have changed anything unfortunately...
if you check audio position again. Is it swapped?
also try restarting PC
I'll quickly restart, brb.
Okay restarted. So if I go back into sound test, "front left" comes from front left, "Front Center" comes from Rear Left, "Front Right" comes from front right, "Rear Left" comes from Front Center, "Subwoofer" comes from Rear Right (and she actually says Rear Center) and then "rear Right" is coming from the subwoofer.
so it should be FL,FR,RL,RR,FC,LFE
that what it was default
so it doesn't make sense
or rule wasn't applied
Yeah it's so bizarre. And it's definitely not Bazzite specific either. I had the same problem when I was testing Manjaro and Ubuntu.
I've double checked those steps, made sure it was all copied correctly.
did audio possition change in coppwr?
ooo looks like it didn't. It's showing as default.
Showing as "FL,FR,RL,RR,FC,LFE" which is the original I think
check
systemctl --user status wireplumber
maybeAh wireplumber changed conf files. ok rename the file from
51-fix-channels.lua to 51-fix-channels.conf and remove last line table.insert(alsa_monitor.rules, rule) from itHmm still the same. For whatever reason it doesn't want to read that file
delete that file
and put it
~/.config/wireplumber/wireplumber.conf.d/Uh oh, now we get nothing at all from FC, Rl, LFE and RR channels 😅
what does coppwr says?
FL,FR,RL,RR,FC,LFE
try changing audio position line to
audio.position = ["FL,FR,FC,LFE,RL,RR"]Audio position is still showing "FL,FR,RL,RR,FC,LFE" but now the sound test is doing the inverted centre/rear again 😩
We can try something else. Give me a minute.
you can delete wireplumber config
go to
~/.config/pipewire/pipewire.conf.d/ and create 51-fix-channels.conf
save and restart. It should create new sink called Audio fix. You will need to set it as default so all your audio is routed through it
or if you still have wireplumber conf try changing it again to audio.position = ["FL", "FR", "FC" , "LFE", "RL" ,"RR"]When you say set as default, how do I do that?
Oh wait I found it.
It works!!!!
Thank you both so much. 🙂
Curious what's causing the issue in the first place, as I said it happened in other Linux Distros I tried. But at least this seems to be a fix I can apply regardless.
probably misconfigured driver by default, or maybe sound blaster is using some weird way to control their stuff
I'm having exactly the same issue. I've followed the above steps and can see the AudioFix node in coppwr, but I'm stuck at the last step..."set it to default". I was kind of stuck. I don't know if what I did was the 'right' way to do it, but I did a 'wpctl status' , got the ID of the new AudioFix sink, and then 'wpctl set-default ID' (replaced ID with the number of my AudioFix sink. Restarted services, and things appear to be working 🙂