FFmpeg Cookbook
JA

Volume Normalizer

Even out the loudness of a video or audio file to a LUFS target (a unit of perceived loudness) with the loudnorm filter. Presets for podcasts (-16 LUFS) and streaming (-14 LUFS) are included.

Your file is not uploaded
Drag & drop audio/video, or click to select
Supported: MP3, AAC, WAV, MP4, MOV, MKV, etc. / Max 500MB
—
—
Podcast
-16 LUFS
Apple Podcasts
target
Streaming
-14 LUFS
The level Spotify
plays music at
Custom
Any LUFS
Set your own
target values
Unit: LUFS (e.g. -16)
Starts at 11 here (loudnorm’s own default is 7)
Unit: dBTP (e.g. -1.5)
Processing… 0%

Equivalent FFmpeg command

CLI command for your current settings. Updates live as you change controls.

ffmpeg -i input.mp4 -af loudnorm=I=-14:LRA=11:TP=-1.0 -ar 48000 -c:v copy output.mp4
Popular uses
Fix uneven loudnessTune volume for YouTubeMake speech easier to hear

How to use

  1. Pick a fileVideo or audio, up to 500 MB.
  2. Pick a presetPodcast, Streaming or Custom. You can also pick the output format (MP3, AAC, WAV or MP4). For a video, MP4 is selected first and the picture is copied as it is.
  3. NormalizePress "Normalize Volume" to get a file with even loudness.

Recommended settings

Music streaming (Spotify and others)
I=-14 / TP=-1.0 (Streaming preset)
Spotify plays tracks normalized to -14 LUFS and asks for masters at -14 LUFS with true peak below -1 dB.
YouTube
No official target
YouTube's help pages do not state a loudness target. To sound about as loud as on other streaming services, use the Streaming preset (-14 LUFS).
Podcast
I=-16 / TP=-1.5
Apple Podcasts asks for about -16 LKFS (±1 dB) with true peak no higher than -1 dBFS.
EBU R128 broadcast
I=-23
EBU R 128 sets programme loudness to -23 LUFS.

When it goes wrong

Audible clipping

Cause: The true peak (TP) ceiling is set close to 0 dB.

Fix: Set TP to -1.0 dBTP or lower. Audio that was already clipped in the source cannot be repaired.

Quiet voice + loud music

Cause: The balance between voice and music is set in the source. Normalizing only evens out the overall loudness.

Fix: If the loudness differs from scene to scene, lower LRA to about 7 in Custom. Voice and music playing at the same time must be rebalanced in an editor.

Questions

Why normalize at all?

To bring files to the same loudness. Some destinations set a target, such as Apple Podcasts (about -16 LKFS). Spotify plays music normalized to -14 LUFS (except in its web player and on some third-party devices).

1-pass vs 2-pass?

2-pass measures first, then applies the measured values, so it lands closer to the target. This tool uses a single pass (loudnorm dynamic mode); for a closer match, run the 2-pass method with FFmpeg on your computer.

What is EBU R128?

A European Broadcasting Union recommendation that sets programme loudness to -23 LUFS.

More detail (settings, limits, FFmpeg commands)

What each setting means

I (LUFS)
The loudness target. The presets use -14 for streaming and -16 for podcasts.
TP (True Peak)
The ceiling for the highest instant peak. The presets use -1.0 dBTP for streaming and -1.5 dBTP for podcasts.
LRA
The target range between quiet and loud parts. A lower value narrows the difference. The presets use 11 (loudnorm’s own default is 7).

Browsers and limits

  • With MP4 output the video is copied as it is; it fails if MP4 cannot hold that video format
  • The output sample rate is 48 kHz

The same job with the FFmpeg command line

Streaming target (-14 LUFS)
ffmpeg -i input.mp4 -af loudnorm=I=-14:LRA=11:TP=-1.0 -ar 48000 -c:v copy output.mp4
The same settings as the tool's Streaming preset with MP4 output. The video is copied and the audio is re-encoded to AAC.
Podcast target
ffmpeg -i input.mp3 -af loudnorm=I=-16:LRA=11:TP=-1.5 -ar 48000 -c:a libmp3lame -q:a 2 output.mp3
The same settings as the tool's Podcast preset with MP3 output.

What to do next