How to recover a broken mp4 file: moov atom not found

You can try and use Untrunc to fix the file.

Restore a damaged (truncated) mp4, m4v, mov, 3gp video. Provided you have a similar not broken video.

you may need to compile it from source, but there is another option to use a Docker container and bind the folder with the file into the container and fix it that way.

You can use the included Dockerfile to build and execute the package as a container

git clone https://github.com/ponchio/untrunc.git
cd untrunc
docker build -t untrunc .
docker run -v ~/Desktop/:/files untrunc /files/filea /files/fileb

Solution provided here (https://github.com/ponchio/untrunc) solved my problem! I run it as a Docker container. Here my steps:

  • Install Docker (in case you don't have it yet)

  • Download the file (in an empty directory) https://raw.githubusercontent.com/ponchio/untrunc/master/Dockerfile

  • On the same directory of the Dockerfile, run:

      docker build -t untrunc .
    
  • That will build a local docker image - it takes time.

  • Now you have to provide a sample file from the same origin (in my case the same camera) and the corrupted file you wanna fix. E.g.:

      docker run -v /path/to/files/:/files untrunc /files/working_video /files/broken_video