Ahmed Doghri Logo Image
Ahmed Doghri

loudnessgate

Loudness is a delivery contract. The podcast demo measures -18.4 LUFS, identifies a 2.4 dB correction, and preserves peak headroom.

loudnessgate audio mastering and normalization gate
loudnessgate working browser demo

A Clean Mix Can Still Fail Delivery

Streaming, podcast, and broadcast targets differ. Turning a file up by ear can miss integrated loudness, loudness range, or true-peak limits and create a second rejected export.

loudnessgate wraps FFmpeg's loudnorm measurement and two-pass normalization with named broadcast, podcast, and music-streaming profiles.

Make Mastering Checkable

The JSON report records integrated LUFS, true peak, loudness range, every pass or fail decision, and required gain. The same engine powers the CLI, API, workbench, integration test, and container.

The Demo

The podcast fixture measures -18.4 LUFS against a -16 target and needs 2.4 dB of gain. Its -2.1 dBTP peak and 6.2 LU range already pass, so the report explains exactly why the file fails.

Two-pass normalization is deterministic for the measured file. Codec overshoot, downstream processing, platform-specific policies, and listening quality still require final review.

Standards Basis

The measurement model is grounded in EBU R128, while the binary path uses FFmpeg's documented loudnorm filter.

Read the EBU R128 loudness recommendation.

Tools Used

Python
FFmpeg
EBU R128
LUFS
True Peak
Audio DSP
Docker
GitHub Actions CI