Skip to content

Loudnorm

Audio Single output Transform

EBU R128 loudness normalization

FFmpeg filter: loudnorm — the official reference.

Add it to a graph. The explicit form works for every filter — bind it to its input and read the result from outputs():

$node = $audio->addFilter(new Loudnorm(…));
$result = $node->outputs()[0];

Shorthand. Single-output filters can skip the node — apply() returns the result stream directly:

$result = $audio->apply(new Loudnorm(…));

TODO — when this filter shines: what it’s the right tool for, what to reach for instead when it isn’t, and how it composes with neighbouring filters.

TODO — prose: how the filter actually works and what its key parameters mean (the explanation FFmpeg’s terse option help omits).

TODO — runnable PHP, with the equivalent ffmpeg CLI alongside.

TODO

TODO

ParameterTypeDefaultRange / valuesDescription
Ifloat-24-70–-5set integrated loudness target
LRAfloat71–50set loudness range target
TPfloat-2-9–0set maximum true peak
measured_Ifloat0-99–0measured IL of input file
measured_LRAfloat00–99measured LRA of input file
measured_TPfloat99-99–99measured true peak of input file
measured_threshfloat-70-99–0measured threshold of input file
offsetfloat0-99–99set offset gain
linearbooltrue—normalize linearly if possible
dual_monoboolfalse—treat mono input as dual-mono
print_formatLoudnormPrintFormatnonenone, json, summaryset print format for stats

FFmpeg also names these options (use the parameter shown above): i → I, lra → LRA, tp → TP, measured_i → measured_I, measured_lra → measured_LRA, measured_tp → measured_TP.


Maps to FFmpeg’s loudnorm filter. Verified against ffmpeg n7.1.1.

An Artisan Build project.

Built on FFmpeg — an independent binding, not affiliated with or endorsed by the FFmpeg project. Support FFmpeg.