Audio analyzer

Inspect channel levels, stereo correlation and the spectrum of a local audio file.

About this tool

Analyze a local file or a prepared example. All processing stays in your browser. The channel selector affects the diagram; the level table covers every channel in the chosen range.

Sample peak is max|x|, RMS is √mean(x²), and DC is mean(x). Amplitudes use a reference of 1; dBFS = 20 log₁₀(amplitude), so silence is −∞. These are sample levels, not true peak or LUFS. Pearson correlation uses the first two channels after mean subtraction; it is undefined for a constant channel.

The spectrum uses a centered window and the original samples. The periodic Hann window is normalized by its weight sum. Interior positive-frequency bins are doubled; DC and Nyquist are not. Short selections are padded with zeros. This adds grid points, not frequency resolution. The displayed peak is the strongest non-DC frequency bin, not an interpolated tone estimate; constant signals have no such peak.

The spectrogram uses the same scaling. Long selections use at most 300 time-sampled windows and may miss short events. Colors are limited to −100…0 dBFS; analysis values are retained. The waveform shows sample minima and maxima per visible column.

Start is rounded down and end up to sample boundaries. A blank end uses the full duration. Browser decoding may resample the file; the displayed analysis rate is the rate actually used. Supported formats depend on the browser. Limits: 64 MiB per file and 32 million decoded sample values across all channels. A valid decoded file can be reused until the source changes; files and audio are not saved across visits. Reset clears results while retaining the source and settings.

References: NumPy FFT conventions, SciPy Hann window, Web Audio decoding.