Fix the volume.
Touch nothing else.

GainFrame normalizes any video's audio to broadcast loudness while the video stream is copied bit-for-bit — never re-encoded, never stripped, never degraded.

Free & open source · Portable zip, no installer · Windows 10/11 · ~91 MB (ffmpeg included)

GainFrame — the whole app, one window
The GainFrame app: a file list, a loudness preset dropdown set to Streaming −14 LUFS, and a Normalize button. The log reads: the video stream is always copied bit-for-bit — only audio is re-encoded.

The promise

Your video goes in. The same video comes out — with audio at a level that doesn't make anyone lunge for the volume knob. That is the entire product.

Bit-identical
Video stream in = video stream out. Verified by stream hash, not by vibes.
Audio only
The audio is the one and only thing that gets re-encoded.
−14 LUFS
Default target: the loudness standard streaming platforms normalize to.

Features

◉

Real loudness, measured twice

Two-pass EBU R128 loudnorm: GainFrame measures your file first, then applies a precise correction — not a blind volume bump.

▤

Presets for the common targets

Streaming −14 LUFS · Podcast −16 · Broadcast −23 · Peak normalize. Custom targets live in Settings for power users.

≋

Every audio track

Multiple audio tracks? Each one is measured and normalized individually — not just the first.

⧉

Everything else survives

Subtitles, chapters, and metadata are copied through untouched, along with the video itself.

▶

Batch queue

Drop in a folder's worth of videos and let it work through them one by one, with per-file status.

✦

Same format out as in

MP4, MKV, MOV, WebM, AVI — anything ffmpeg can read. Output keeps the container and lands next to the original as name.normalized.mp4.

Why this exists

Normalizing a video's audio should be a solved, boring problem. Instead, the existing tools are a mess — sketchy installers that trip virus scans, and "audio" tools that quietly re-encode your video, degrade it, or strip the picture altogether and hand you back a sound file.

GainFrame is the boring tool that should have existed: one window, one job, built on ffmpeg, open source down to the build script — and a video stream it never touches.