FixMyVideos

"MOOV atom not found" — What It Means and How to Fix It

Of all the error messages a corrupted video file can produce, moov atom not found is the one most worth understanding. It's not a generic "file is broken" message — it's a specific, technical statement about exactly what is broken. And it's one of the most-recoverable categories of file failure.

If you've seen this error from FFmpeg, from QuickTime, from VLC's diagnostic output, or buried in a Premiere / Resolve import error, this page is for you.

What MOOV is

A MOV / MP4 file is a sequence of atoms — typed binary blocks that contain either metadata or media data. The two atoms that matter most are:

  • mdat — the media data atom. This holds the actual compressed video frames, audio samples, and so on. For a normal recording, mdat is by far the biggest atom in the file (usually 99%+ of the file size).
  • moov — the movie atom. This is the index. It's the table of contents. It tells the player exactly where each frame lives inside mdat, what codec was used, what the frame rate is, what the audio configuration is, and how the streams sync up.

Without a valid moov, the player can't decode the file. It has the data; it doesn't know how to use it.

Why your file doesn't have a MOOV

The MOOV atom is finalised at the moment recording stops. Cameras build the structure incrementally as they record — they have to, because the offsets and sizes inside MOOV depend on how much was actually recorded — but they don't write it to the file until the user (or the firmware) issues a clean stop.

If the recording is interrupted before that moment:

  • Battery dies mid-record.
  • SD card / CFexpress / SSD pulled while recording.
  • Camera firmware crashes.
  • External recorder (Atomos, etc.) loses power.
  • App that's recording crashes (third-party camera apps on phones).
  • Drone hits the ground, power lost, write interrupted.
  • AC power brownout to a tethered camera.

The MOOV is never written. The mdat is on disk, intact (or mostly intact, with a possibly-truncated final frame). What you have is:

[ftyp]   ← container type declaration, ~12 bytes, intact
[mdat]   ← potentially gigabytes of compressed video and audio, intact
                    ← MOOV would be here (or earlier in the file
                       if the camera does "fast-start" / leading MOOV)
                       but it isn't

Your editor opens the file, reads ftyp, doesn't find a valid MOOV, and gives up. Hence the error.

What you can try yourself

The good news is this is a well-known problem with documented free tools.

1. untrunc (open-source)

untrunc is a small command-line tool built specifically for this exact failure pattern. It takes:

  • A broken file (no MOOV, intact mdat).
  • A reference file from the same camera in the same recording mode (resolution, fps, codec, bit-rate). The reference's MOOV serves as a template.

If you have a healthy file from the same camera and mode, untrunc is excellent. Install via Homebrew on macOS or build from source on Linux. Quick command:

untrunc reference.mov broken.mov

It produces broken.mov_fixed.mov. Try opening that.

The catch: untrunc needs the matching reference. If the camera that produced the broken file is the only one you used and the broken file is the only one you've got, untrunc can't help.

2. FFmpeg -c copy re-mux

ffmpeg -i broken.mov -c copy out.mov

Doesn't fix anything but tells you what FFmpeg sees. If FFmpeg returns moov atom not found with no further info, the file is in our recovery territory. If FFmpeg returns useful stream information, the file may be more recoverable than the error suggests.

3. VLC

VLC is famously permissive. Sometimes a file that won't open in QuickTime opens in VLC. Worth a 30-second test.

4. The camera's own software

If the file came from a recent camera, check the manufacturer's free software:

  • Sony Catalyst Browse (Sony cameras).
  • Canon Cinema RAW Development / EOS Utility (Canon).
  • DJI Studio (DJI).
  • Insta360 Studio (Insta360).
  • DaVinci Resolve (Blackmagic).

These tools sometimes open files generic players reject because they understand their manufacturer's specific quirks.

How automated recovery handles it

When the manual paths above don't work — most often because you don't have a matching reference clip — the next step is automated container reconstruction. Our engine:

  • Scans the mdat payload at the byte level for frame markers (ProRes icpf, H.264 / H.265 NAL start codes, MJPEG markers, ...).
  • Identifies the codec from the frame data, not from the file extension.
  • Extracts codec parameters (resolution, profile, level, chroma format, frame rate) from the first valid IDR / keyframe.
  • Synthesises a fresh MOOV atom referencing the existing mdat byte ranges.
  • Probes audio for sample rate, channel count, byte order, and chunk placement.
  • Writes a rebuilt file using co64 (64-bit offsets) for any file over 4 GB.

The result is a file your editor will mount and play. No reference clip needed.

What you do

  1. Upload the broken file. Up to 50 GB.
  2. ~1 minute later you get a free 5-second preview of the recovered video. If the picture and audio are right, the rest of the file is too.
  3. If it works, pay $5 / $15 / $29 (depending on size) and download the full file. If not, adjust parameters interactively or escalate to a human review. No charge until you have a working file.

FAQ

Does "moov atom not found" always mean the file is recoverable? Almost always, yes — if the mdat is intact. The exception is when the camera wrote a partial file that got further damaged (partial overwrites, filesystem corruption). In that case the error is the same but the recovery may be only partial.

My file is 0 bytes — same error? No. A 0-byte file means nothing was written. Different problem; nothing to recover from.

Will recovery preserve my colour grade / Log gamma / HDR metadata? Yes. The codec data (which carries colour information) is referenced verbatim. The rebuild only affects the container, not the codec stream.

The error from QuickTime is "the document could not be opened" — same thing? See that page. QuickTime tends to use a single generic message for several underlying causes; "moov not found" is the most common cause.

Is my footage safe during recovery? File on a server in France, auto-deleted after 48 hours, never used to train anything or shared. Privacy policy.

Related

Upload your file →

Kostenlose Vorschau · Unverbindlich

Sind Sie bereit, Ihr Video wiederherzustellen?

Laden Sie Ihre Datei hoch – in etwa einer Minute erhalten Sie kostenlos eine 5-Sekunden-Vorschau. Sie zahlen nur, wenn die Vorschau in Ordnung aussieht.

Video hochladen →