FFmpeg recipe
FFmpeg: Normalize Loudness with EBU R128 (loudnorm)
Loudnorm implements the EBU R128 standard: perceptual loudness normalization (not peak normalization). Required by Spotify, Apple Podcasts, and TV broadcasters.
Command
ffmpeg -i input.mp4 -af loudnorm=I=-16:TP=-1.5:LRA=11 -y output.mp4Prefer no terminal?
Use the Audio Normalizer in your browser
What each flag does
| -i | Input file. Can be a video, audio, or image. Repeat for multiple inputs. |
|---|---|
| -af | Audio filter chain. e.g. silenceremove, loudnorm. |
| -y | Overwrite output file without confirmation. |
| I=-16 | Integrated loudness target (LUFS). -16 = podcast standard, -14 = Spotify, -23 = TV broadcast. |
| TP=-1.5 | Maximum true peak (dBTP). -1.5 leaves headroom for codec-induced clipping. |
| LRA=11 | Loudness range. 11 LU is standard for spoken content. |
Notes & gotchas
- For two-pass loudnorm (much more accurate), see the FFmpeg wiki: https://trac.ffmpeg.org/wiki/AudioVolume.
- For YouTube, target I=-14 to match algorithm-normalized playback.
Related recipes
Extract audio · MP4
Pull the audio track out of an MP4 with FFmpeg. Stream-copy is lossless and instant.
Extract audio as MP3 · Any video
Extract audio as MP3 from any video format with FFmpeg. 192 kbps default for transparent quality.
Remove silence · Audio / video
Auto-cut silent gaps from a recording with FFmpeg silenceremove filter. Kills dead air in podcasts and meetings.
Trim · MP4
Trim an MP4 with FFmpeg using stream-copy for lossless, instant output. Copy-paste command with explanations.