Downmixing stereo audio to mono audio

I have Fedora 34 installed (Linux BLUE-FEDORA34 5.11.15-300.fc34.x86_64). I have a pre-existing hardware issue with my audio where one of my channels is broken. As a workaround, I just downmix the stereo audio to mono audio (i.e. combine the left and right audio source before outputting the same thing to left and right output).

With pulseaudio, I used to follow this guide here: sound - Can I downmix stereo audio to mono? - Ask Ubuntu, but now that pulseaudio has been replaced by pipewire in Fedora 34, I imagine these instructions don’t apply anymore:

pacmd load-module module-remap-sink sink_name=mono master=$(pacmd list-sinks | grep -m 1 -oP 'name:\s<\K.*(?=>)') channels=2 channel_map=mono,mono

What would be an equivalent/alternative approach for pipewire?

2 Likes

Note: I’ve tried using pactl instead of pacmd and change the regex. While I do get my sink name from the pactl list sinks and grep successfully, the part that fails is loading the “module-remap-sink” module.

pactl load-module module-remap-sink sink_name=mono master=$(pactl list sinks | grep -m 1 -i -oP 'name:\s\K.*') channels=2 channel_map=mono,mono

Running pactl list modules only shows already-loaded modules; I don’t know of any way to list all loadable modules to see if there is an equivalent module under a different name.

I had the same question and from another search result found out that EasyEffects (available from both Fedora repositories and Flathub) can do this. Effects, Add Effect, Stereo Tools, select LR > L+R (Mono Sum L+R)

Source: