Units and parsing

Every value on the command line, in fx strings, in pipeline files, and in MCP arguments is parsed by the same unit parser, so 1.5s, -6dB, C4, and 1/8T mean the same thing everywhere.

Time

You writeMeaning
1.5s, 1500ms, 2seconds (a bare number is seconds)
01:23.5, 1:02:03.250mm:ss.fff and hh:mm:ss.fff
44100smpsamples
4b, 4b@120beats at the detected or --bpm tempo, or at an explicit tempo
-10s10 seconds before the end
start, endthe ends of the input

Ranges use ..: --range 0s..2s, --range 1:00..end, --range ..30s (from the start), --range -10s..end (the last ten seconds). In a beat range, give the tempo once with --bpm 120 --range 0b..4b; an @120 suffix applies only to the end it is written on.

Gain

-6dB, +3dB, -6 (dB), 0.5x (a linear factor), -14LUFS (integrated loudness, for normalize and mastering targets), -1dBTP (true peak, measured with 4x oversampling).

Frequency and pitch

120Hz, 2.5kHz, note names C4 (middle C, 261.63 Hz), A#3, Bb2, MIDI numbers midi:60. Pitch offsets: 20cents, +200cents, 2st (semitones).

Ratios and percentages

4:1 or 4. 80% or the fraction 0.8; 130% is 1.3. A bare number is a fraction, so 80 means 8000%, not 80%: always write the %.

Musical grid

1/16, 1/8T (triplet: two thirds of an eighth), 1/8D (dotted: one and a half eighths). Delay times also accept grids (--time 1/4), resolved against --bpm or the detected tempo.

Sizes and bitrates

2GB, 512MB; 192k, 320kbps.

When parsing fails

You get exit code 2 and a message naming the flag, the value, and what was expected:

error: --threshold: cannot parse gain 'loud': expected a number with dB, x, LUFS, or dBTP