ferraus analyze spectrum

Long-term average spectrum in fractional-octave bands or FFT bins

Synopsis

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

What it does

Welch-averaged spectrum of all channels. Band levels are in dB relative to a full-scale sine (a 0 dBFS sine in a band reads 0 dB). Also reports the spectral centroid, 85% rolloff, flatness, and strongest frequency.

Examples

Third-octave levels from 20 Hz to 20 kHz

ferraus analyze spectrum mix.wav --json

Finer sixth-octave bands to find a resonance

ferraus analyze spectrum vocal.wav --resolution 1/6oct --json

Raw FFT bins, for example to locate a hum line exactly

ferraus analyze spectrum hum.wav --resolution bins --json

Options

FlagTypeDefaultMeaning
--resolution1/3oct | 1/6oct | bins1/3octBand resolution

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_analyze_spectrum
  • Schema: ferraus schema analyze spectrum
  • Pipeline: { op: analyze spectrum, args: { ... } } (flag names with _ instead of -)
  • fx stage: no
{"command": "analyze spectrum", "defaults": {"resolution": "1/3oct"}}