You have two methods:
pan audio filter
The pan audio filter is powerful but the syntax takes some time to understand.
It is helpful to refer to the channel layouts list when using pan: ffmpeg -layouts
Stereo right channel to mono:
ffmpeg -i stereo.wav -af "pan=mono|FC=FR" right_mono.wav
...which is the same as:
ffmpeg -i stereo.wav -af "pan=1|c0=c1" right_mono.wav
mono is output channel layout or number of channels. Alternatively you could use 1 instead of mono.
FC=FR create the Front Center channel of the output from the Front Right of the input.
c0=c1 is the same as the above in this case: create the first (and only) channel of the mono output (c0) from the second channel (c1) of the input.
- If you want the left channel instead use
FC=FL or c0=c0.
More info:
-map_channel
You can use the -map_channel option. It uses pan in the background and is somewhat less flexible.
ffmpeg -i stereo.wav -map_channel 0.0.1 right_mono.wav
- The first
0 is the input file ID
- The next
0 is the stream specifier
- The
1 is the channel ID
So this can be translated as: first file, first stream, second channel (or right channel).
From the -map_channel documentation:
The order of the -map_channel option specifies the order of the
channels in the output stream. The output channel layout is guessed
from the number of channels mapped (mono if one -map_channel, stereo
if two, etc.