ferraus channels

Mix down, up-mix, extract, swap, or mid/side-convert channels

Synopsis

ferraus channels <input> [options] [-o <output>]

What it does

Does one channel operation per run. --to mono averages the channels; --to stereo copies a mono signal to both sides (and folds 5.1 down with the ITU coefficients). --extract keeps one channel as a mono file. --swap exchanges left and right. --mid-side encode turns L/R into mid (L+R)/2 and side (L-R)/2; decode reverses it exactly.

This command is also an fx stage and a pipeline op: ferraus fx in.wav -o out.wav --fx "channels:key=value".

Examples

Average left and right into one channel

ferraus channels stereo.wav --to mono -o mono.wav

Keep only the right channel (the guest's mic)

ferraus channels interview.wav --extract R -o guest.wav

Get mid in channel 1 and side in channel 2 for M/S processing

ferraus channels mix.wav --mid-side encode -o ms.wav

Options

FlagTypeDefaultMeaning
--tomono | stereo—Convert to mono or stereo
--extracttext—Keep one channel: L, R, C, or a channel number from 1
--swapflag—Swap the left and right channels
--mid-sideencode | decode—encode: L/R to mid/side; decode: mid/side back to L/R

Global options

Every command also accepts the global options (-o, --json, --dry-run, --overwrite, --progress, ...). See Global options.

Exit codes

CodeMeaning
0Success
1Processing failed
2Usage or parameter error
3Input missing or unreadable
4Unsupported format or codec
8Cancelled
70Internal error (bug)

Common mistakes

  • Forgetting that outputs are never overwritten: pass --overwrite or a new -o path when re-running.

For models

  • MCP tool: ferraus_channels
  • Schema: ferraus schema channels
  • Pipeline: { op: channels, args: { ... } } (flag names with _ instead of -)
  • fx stage: yes
{"command": "channels", "defaults": {}}