[FFmpeg-user] FFMPEG loudnorm - linear normalization

Clayton Macleod cherrytwist at gmail.com
Mon Mar 7 21:07:00 EET 2022


I haven't looked at this in ffmpeg, but in other audio circles whenever
you're talking about normalizing you have to be aware of what needs to be
done in order to meet your goals.  If you need to turn the volume up and
the source is already near clipping, and you need to turn it up such that
the audio would then be pushed into clipping, then you cannot turn the
volume up without compression to avoid clipping.  By definition this would
reduce LRA, no?  Seems to me that linear normalization would probably
usually only be used when you wish to turn the volume down.  Typically
audio gets mastered so that it is somewhat close to clipping so that you're
not wasting dynamic range.  And if you've already got a source that's
somewhat close to clipping and you're trying to turn the volume up then you
have no choice but to resort to compression, which may be undesirable, or
simply accept clipping, which is bad.  Nobody wants clipping.  At least,
nobody should want clipping.

So, my guess is that you are trying to make things louder than the original
source.  Unless the source has an unusually low peak you're not going to be
able to adjust the volume in a linear fashion, or else the peaks will be
chopped off, leaving you with clipping audio.  And so, the alternative is a
dynamic operation that will preserve peaks at the cost of dynamics.

When looking at this from a music library standpoint, if one were trying to
match volumes of their entire library, the thing to do would be to analyze
the entire library and select a target volume that would only involve an
adjustment in the lower direction.  That way you'd never alter the peaks of
any of the music, and thus never have to worry about changing the dynamics
or causing clipping.  And once you have a suitable target then you would
proceed to analyze and apply the required adjustments to meet that target.
You would never adjust it in the higher direction.  You'd use the volume
knob on your amplifer to turn things up.

On Mon, Mar 7, 2022 at 10:32 AM CMG DiGiTaL <cmarciog at gmail.com> wrote:

> hi,
>
> About loudnorm normalization: Normalization in Dual-pass mode.
>
> Rules for normalization to be linear:
>
> 1 - Values entry:
>     LUFS_TARGET (user entry)
>     LRA         (get input file - Pass 1 loudnorm)
>     TP_TARGET   (user entry)
>     THRESH      (get input file - Pass 1 loudnorm)
>     OFFSET      (get input file - Pass 1 loudnorm)
>
> 2 - The destination LRA must NOT BE LESS than the source LRA:
>     LRA_OUT >= LRA_IN
>
> 3 - The destination TP must NOT BE GREATER than the target TP:
>     TP_OUT <= TP_TARGET
>
> If these conditions are met, normalization will be done in linear mode
> and, if there is any divergence, normalization will be done in dynamic
> mode.
>
> These rules are never met... I normalized more than 20 audio files and
> in none of them the linear rule was executed, only the dynamic rule!
>
> In all my FLAC audios, the destination LRA's are always lower than the
> source LRA's!
>
> Has anyone managed to do the normalization in linear mode... what do I
> have to do to get linear normalization?
>
> thanks
> Clamarc
> _______________________________________________
> ffmpeg-user mailing list
> ffmpeg-user at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-user
>
> To unsubscribe, visit link above, or email
> ffmpeg-user-request at ffmpeg.org with subject "unsubscribe".
>


-- 
Clayton Macleod
If no one comes from the future to stop you from doing it, then how bad of
a decision can it really be?


More information about the ffmpeg-user mailing list