I have an usb audio interface with 4 output channels. The problem I have is that ALSA detects two of them as surround channels, which they are not. They’re simply two separate stereo channels with coaxial output.
I know I can create a /etc/asound.conf to override ALSA configs (it doesn’t exist yet), but I can also create a local ~/.config/pipewire override.
Where would be the best place to disable the extra surround channels (ALSA or PipeWire)?
How would the corresponding config file look like?
Optional:
I’ve seen that there are card profiles in /usr/share/alsa-card-profile/mixer/profile-sets/. Would it help to create a card profile for my audio interface? All of the files I see in there state that they’re part of PulseAudio, so not sure if that applies.
You may need to select the sink first, so that you can identify the node.name in the wpctl output, and then reference it in the config file so that it can be disabled accordingly. Hopefully that will do the trick?
I ended up creating my own ALSA UCM device profile. I now have the correct channels assigned to independent stereo line outputs. No surround channels anymore.
Below some references I used. Basically what one needs to do is to study the folder /usr/share/alsa/ucm2 an create a new config file for his specific audio interface. As mine is a USB audio interface, I had to add files and change configs inside folder /usr/share/alsa/ucm2/USB-Audio.