20

Is there an easy way of forcing mono sound output - for one ear, one earphone, one speaker?

24

~VIA~ Translated from French (and considering the correction signaled at the end of the forum page)

You can use the module to remap pulseaudio:

In a terminal:

pacmd list-sinks | grep name:

It will send you the name of the stereo output used. Then you type (replacing with the name you have found):

pacmd load-module module-remap-sink sink_name=mono master=THE_NAME_FROM_THE_PREVIOUS_COMMAND channels=2 channel_map=mono,mono

(In my case that was:

pacmd load-module module-remap-sink sink_name=mono master=alsa_output.pci-0000_00_1e.2.analog-stereo channels=2 channel_map=mono,mono

)

If you open the Sound Preferences you should now have a mono output available. To have that permanently:

gksudo gedit /etc/pulse/default.pa

then you add in the file:

#Remapping output stereo to mono
load-module module-remap-sink sink_name=mono master=THE_NAME_FROM_THE_PREVIOUS_COMMAND channels=2 channel_map=mono,mono

enter image description here

(The image is from the sound settings of Elementary OS Luna).

  • Very Useful... ;-) – Wilf Jan 26 '14 at 18:10
  • 2
    How do you change the name of the new sink, to change the default name 'Remapped Built-in Audio Analog Stereo' in the System Settings - Sound GUI? – jesterII Jun 27 '15 at 20:47
  • Warning to people using PulseAudio Multiband Equalizer: this fix successfully put my sound output to mono but the equalizer stopped working. – Jam May 13 '17 at 18:52
4

I had problems with both of these answers. When I tried the accepted answer, the only thing that would come out of the speaker was noise. After some searching, I found another solution that might work better for you:

pacmd load-module module-remap-sink sink_name=mono master=alsa_output.pci-0000_00_1b.0.analog-stereo channels=4 channel_map=left,right,left,right master_channel_map=left,left,right,right

Replace alsa_output.pci-0000_00_1b.0.analog-stereo with the sink name you get from

pacmd list-sinks | grep name:

Follow the steps in the accepted answer if you would like to make this solution permanent.

  • I get the same sink name as you, but when I run the command I get the output: >>> Module load failed. Using Ubuntu 14.04 – TenLeftFingers Aug 31 '14 at 15:40
2

Installing Gnome Alsa Mixer by executing

$sudo apt-get install gnome-alsamixer

there are some options:

"Mono Output Select" and "Mix Mono"

enter image description here

  • 1
    These options do not appear on every soundcard; when I installed it the only options there were "auto-mute", "IEC958" and "Loopback mixing", nothing to do with mono outputs. – Jez W Aug 2 '17 at 8:52
0

This answer is a mix of the two answers, witch are not generic (channels names "left" and "right" are defined by the soundcard vendor and can vary).

The global idea is to use module-remap-sink as suggested by other answers. We will replace [skinID], [left_channel_name] and [right_channel_name] by values found later:

pacmd load-module module-remap-sink sink_name=combined-mono master=[skinID] channels=4 master_channel_map=[right_channel_name],[left_channel_name],[right_channel_name],[left_channel_name] channel_map=[left_channel_name],[left_channel_name],[right_channel_name],[right_channel_name]

This will create a double-mono sink output that we can set to be the default one (done below).

1 - find [skinID]

pacmd list-sinks

In my case, only one sink is present; corresponding to the only sound card available:

index: 0
    name: <alsa_output.pci-0000_00_1f.3.analog-stereo>

=> I can use either "0" or "alsa_output.pci-0000_00_1f.3.analog-stereo" for [skinID]

2 - find [left_channel_name] and [right_channel_name]

pacmd list-sinks | grep -m1 "channel map:"

In my case, it gives:

channel map: front-left,front-right

So, for me [left_channel_name] = "front-left" and [right_channel_name]="front-right"

3 - Apply changes

To make changes effective, I'll to run (in my case)

pactl load-module module-remap-sink sink_name=combined-mono master=0 channels=4 master_channel_map=front-right,front-left,front-right,front-left channel_map=front-left,front-left,front-right,front-right
pactl set-default-sink combined-mono

=> the first command's arguments are to adapt to each case ! Read the entiere post for details

To verify, you can play this video

4 (optional) - Make changes permanant

To keep this settings and have them applied each time the computer starts:

  • copy /etc/pulse/default.pa => ~/.pulse/default.pa (if not already done)
  • add the two commands to the end of file, without "pactl " at the beginning

    => in my case, this gives:

    load-module module-remap-sink sink_name=combined-mono master=0 channels=4 master_channel_map=front-right,front-left,front-right,front-left channel_map=front-left,front-left,front-right,front-right
    set-default-sink combined-mono
    

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.