ferraus master verify

Pass or fail against a delivery spec

Synopsis

ferraus master verify <input> [options] [-o <output>]

What it does

Checks a file against a delivery target: integrated loudness within --tolerance, true peak at or below the ceiling (4x oversampled), no clipping, DC offset at most 0.001, no out-of-phase bass (correlation below 120 Hz at least 0.5), no more than 1 s of head silence, broadband correlation not negative (below 0.3 warns), and for cd 44.1 kHz 16-bit. Exit code 9 (verification failed) when any check fails, with the failed checks in the message; the full list with a runnable fix per check is in the result.

Examples

Pass or fail per spec

ferraus master verify master_v1.wav --target streaming --json

Check an ATSC A/85 broadcast deliverable

ferraus master verify spot.wav --target broadcast --standard atsc --tolerance 1LU

Check loudness, true peak, and 44.1 kHz 16-bit for a CD master

ferraus master verify release.wav --target cd

Options

FlagTypeDefaultMeaning
--targetstreaming | apple | youtube | club | cd | broadcast | podcast | customstreamingDelivery target: streaming -14 LUFS/-1 dBTP, apple -16/-1, youtube -14/-1, club -8/-0.3, cd -10/-0.3 (16-bit 44.1 kHz), broadcast -23/-1 (EBU R128), podcast -16 stereo or -19 mono/-1, custom (--lufs, --true-peak)
--lufsgain—Integrated loudness for --target custom (e.g. -12LUFS); overrides a named target's loudness
--true-peakgain—True-peak ceiling for --target custom (e.g. -1dBTP, default -1dBTP); overrides a named target's ceiling
--standardebu | atscebuBroadcast standard for --target broadcast: ebu (-23 LUFS, -1 dBTP) or atsc (-24 LKFS, -2 dBTP)
--tolerancetext0.5LUAllowed distance from the target loudness (LU)

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
5Model not cached and downloads disabled
6Model download or verification failed
8Cancelled
9Output verification failed (checksum, clipping guard, duration mismatch)
10Network error
70Internal error (bug)

Common mistakes

  • Forgetting that outputs are never overwritten: pass --overwrite or a new -o path when re-running.
  • Gains need a unit when not in dB: 0.5x is a factor, -6 and -6dB are decibels.

For models

  • MCP tool: ferraus_master_verify
  • Schema: ferraus schema master verify
  • Pipeline: { op: master verify, args: { ... } } (flag names with _ instead of -)
  • fx stage: no
{"command": "master verify", "defaults": {"target": "streaming", "standard": "ebu", "tolerance": "0.5LU"}}