ferraus analyze loudness

EBU R128 loudness: integrated, short-term, momentary, range, true peak

Synopsis

ferraus analyze loudness <input> [options] [-o <output>]

What it does

Integrated loudness with absolute (-70 LUFS) and relative (-10 LU) gates, maximum short-term (3 s) and momentary (400 ms) loudness, loudness range (EBU Tech 3342), 4x-oversampled true peak, and sample peak. --timeline adds the momentary and short-term curves, like a loudness meter or radar.

Examples

Integrated LUFS, LRA, and true peak

ferraus analyze loudness master.wav --json

Loudness curve every second

ferraus analyze loudness mix.wav --timeline --step 1s

Save the loudness report of a podcast episode for a delivery check

ferraus analyze loudness episode.mp3 --json > loudness.json

Options

FlagTypeDefaultMeaning
--timelineflag—Add momentary and short-term loudness curves
--steptime100msTimeline resolution (multiples of 100 ms)

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.
  • Beat-based times (4b, 1/4) need a tempo: pass --bpm or write 4b@120.

For models

  • MCP tool: ferraus_analyze_loudness
  • Schema: ferraus schema analyze loudness
  • Pipeline: { op: analyze loudness, args: { ... } } (flag names with _ instead of -)
  • fx stage: no
{"command": "analyze loudness", "defaults": {"step": "100ms"}}