NasrTech
Untrunc video repair

Untrunc on Windows, on a Mac, or in your browser

Untrunc is a free, open-source tool that rebuilds the index of a truncated MP4, MOV, M4V or 3GP recording, using a working video from the same camera as a template. Here is how to run it on Windows and on a Mac, what it expects from you, and where the checker on this page fits if you'd rather not install anything.

Free check and 5-second previewNothing uploadedOriginal quality

Repair your video

MP4 or MOV from a phone, action camera, drone or dashcam. Any size.

  1. Check
  2. Repair
  3. Preview
  4. Download

What Untrunc does

untrunc working.mp4 broken.mp4

That is the whole idea. A recording that was cut off, by a dead battery, a crash or a card pulled out, has its footage but not its index, the moov atom that tells a player where every frame sits. Untrunc reads the settings from a working video recorded on the same camera with the same settings, finds the frames in the broken file, and writes a new file with a fresh index. It adds _fixed to the broken file's name, so broken.mp4 comes back as broken_fixed.mp4.

The version most people use today is the fork maintained at github.com/anthwlock/untrunc, licensed under GPL-2.0. Its README lists MP4, M4V, MOV and 3GP, files over 2 GB, and GoPro and Sony XAVC recordings.

Untrunc on Windows

The project publishes ready-made Windows builds on its GitHub releases page, and the README says the optional graphical version is included in those builds.

  1. Open github.com/anthwlock/untrunc, go to Releases and download the latest Windows build.
  2. Unzip it to a folder.
  3. Start the graphical version, or open a command prompt in that folder and run it with the working file first and the broken file second:

untrunc "D:\videos\working.mp4" "D:\videos\broken.mp4"

  1. Look for the new file with _fixed in its name next to the broken one, and play it.

Untrunc on a Mac

The README doesn't offer a ready-made Mac app. You build it from source, which takes Homebrew and a few minutes in Terminal:

brew install ffmpeg yasm

Then clone the repository from GitHub, open its folder in Terminal and build it, pointing the compiler at Homebrew, as the README's macOS section shows:

CPPFLAGS="-I/opt/homebrew/include" LDFLAGS="-L/opt/homebrew/lib" make

The README says Untrunc "works great with ffmpeg 3.3.9". If the build fails with a newer FFmpeg, that is the first thing to check.

When Untrunc doesn't work

  • The reference was recorded differently. A clip at another resolution, frame rate or codec setting describes different frames. Use a clip from the same camera, recorded with the same settings, ideally the same day.
  • The file is really empty. A 0-byte file, or one filled with zeros, has no footage to find.
  • The repaired file still won't play. The README says the result should be playable, not that it always will be. Try a different reference clip before giving up.

The same repair in your browser

The checker on this page does what Untrunc does, with nothing to download or build:

  1. Open the broken video. Your browser reads it from your own disk; nothing is uploaded.
  2. If it asks, add a working video from the same camera. It borrows that video's settings and nothing else.
  3. The check is free. It tells you whether the footage is there and how much of the recording it can rebuild.
  4. The 5-second preview is free too, at reduced quality with a watermark, so you see your footage move before you pay anything.
  5. Downloading the full video is paid: one video, 3 months or 1 year. If the repaired video doesn't play, you get a refund.

Like Untrunc, it re-encodes nothing: the file holds the camera's own frames inside a new index. Some cameras repeat their settings inside the footage, and then no reference is needed at all: a Tesla front-camera clip came back that way in our tests. We have checked it on real files from GoPro HERO5 to HERO10, a DJI Avata, 70mai and Tesla dash cams and a Samsung Galaxy A56, and every frame came back identical to the original.

Untrunc or the checker?

UntruncThe checker on this page
PriceFreeCheck and preview free; download paid
InstallWindows build, or build from source on a MacNothing; any modern browser
Source codeOpen (GPL-2.0)Closed
FormatsMP4, M4V, MOV, 3GPMP4, MOV
Your video is uploadedNoNo
On a phoneNoThe Video Repair app for Android

If you're comfortable with a terminal and the free tool works for your file, it's the cheaper route. If you'd rather not install or compile anything, or you're on a Mac and don't want to build from source, the checker gives you the same kind of result and shows it to you before you pay.

Questions

Frequently asked questions

Is Untrunc safe to use?

It's an open-source project with its code on GitHub. Download it from the project's own releases page rather than from a third-party site, and run it on a copy of your broken file, never the only one you have.

What is the "working" file Untrunc asks for?

Any video that plays, recorded on the same camera with the same settings as the broken one. Untrunc and the checker both read the encoder settings from it; neither copies any picture or sound from it.

Does either one lower the quality?

No. Both rebuild the index around the original frames and re-encode nothing. Only the checker's free preview is reduced in quality, and the full download keeps the original.

Is my video uploaded when I use the checker?

No. It runs inside your browser with WebAssembly, using the same engine as the Video Repair apps for Android and Windows. The video stays on your computer.