Zum Inhalt springen

VLC doesn't repair your MP4 for good — here's why

VLC asks "repair index?" every time you open the file, or fails outright? Why VLC only patches over the damage instead of fixing it — and what actually saves the fix.

T

Thomas

Founder · Engineer · July 2, 2026 · 3min read

In short: VLC only “repairs” a broken MP4 in memory so it can play it once — it never writes the fix back into the file. That’s why the question keeps coming back every time you open it. And when the header is missing entirely, VLC can’t do anything at all. What actually saves the fix is further down.

The misconception: “But VLC repaired it”

You open a glitchy MP4, VLC asks “Index broken or incomplete — repair?”, you click Yes, and the video plays. Looks like a repair. It isn’t.

At that moment VLC rebuilds the missing index in memory, purely to play the file once. The second you close VLC, that rebuild is gone. The file on disk is still just as broken — which is why VLC asks again next time. In any other program (editor, Preview, upload) the file stays useless.

That’s not a bug. VLC is a player, not a repair tool. It does exactly what it was built for: playback.

What “repair index” actually means

An MP4 is roughly two parts: the picture stream (mdat) and the index (moov), which says where each individual frame lives. More on that in the MP4 container guide.

VLC can cope with a slightly damaged index by scanning the stream itself and guessing the seek points. That works as long as the moov atom is basically there. If it’s missing entirely — the classic case with cut-off recordings — VLC has nothing to guess from. In that case you don’t even get a repair dialog, just “cannot be opened.”

The VLC Convert trick — and where it stops

The most-repeated tip for saving the fix is Media → Convert/Save. It works sometimes, but it has two catches:

  1. It re-encodes. Your original quality turns into a compressed copy. On a 10-bit 4:2:2 clip, you’ll notice.
  2. It fails on exactly the files you need it for — the ones with no header. No index, no re-encode.

For the “video plays but stutters” case, the Convert trick is fine. For “won’t open at all,” it’s a dead end.

What actually writes the fix into the file

Two routes, depending on the damage:

If the header is still there — lossless remuxing with ffmpeg instead of re-encoding:

ffmpeg -i kaputt.mp4 -c copy -movflags faststart repariert.mp4

This writes a clean, permanently playable file — with no loss of quality. If you get moov atom not found here, the header is gone, and you need the second route.

If the header is missing — reconstruction from a reference. The index has to be derived from an intact file shot on the same camera. Neither VLC nor a simple ffmpeg command can do that. The open-source option for it is untrunc; doing it more comfortably — with bundled references and automatic audio correction — is Haven, which saves the result as a real file that plays everywhere.

→ Repair MP4 permanently

VLC vs. real repair — the honest comparison

VLCReal repair
Plays the file onceYesYes
Saves the fix into the fileNoYes
Works without a moov atomNoYes (with a reference)
Loss of qualityYes (when converting)No (lossless remux/rebuild)
Costs anythingNoOnly if it works

What to skip

  • Clicking “Yes” over and over and hoping VLC will eventually hold onto it. It won’t.
  • Running the file through VLC’s Convert again and again. Every pass costs more quality and never touches the core damage.
  • Paying before you’ve seen the result. Whatever the tool — a preview before payment is a must, not a bonus.

Bottom line: VLC is an excellent player and a poor stand-in for a repair tool — because it never writes the fix back into the file. For glitchy files that still have a header, a lossless ffmpeg remux is enough. If the header is gone, you need a reconstruction from a reference. And either way: preview first, pay second.

About the author

T

Thomas

Founder · Engineer

Built Haven after losing footage on a Sony FX3 shoot. Three weeks of reverse-engineering later he had the recording back — and decided to polish the tool for everyone else. Writes about the engineering deep end.

Specialty · Container reverse-engineering · ISO BMFF · Codec internals

View profile →

Newsletter

When a new repair guide goes up — one email. Monthly at most.

No marketing sequences, no promo blasts. Just a heads-up when a new pillar guide, codec deep-dive or honest comparison goes live.

No spam. One-click unsubscribe from every email.