Lets get down to the technicalities
- MP4 or MPEG-4 Part 14 is a multimedia container format whose common filename extensions are .mp4 .m4a .m4p and .m4v (See below)
- MPEG-4 Video or MPEG-4 Visual or MPEG-4 Part 2 is a video compression format that can be found inside a variety of file containers: QuickTime .mov, .mp4, .avi, .3gp ... (See below)
- MPEG-4 Part 10 or H.264 is a video compression format. See dedicated page.
The MPEG-4 file format specification was created on the basis of the QuickTime format specification. The same video repair techniques can be used for both QuickTime and MP4 file. The media format, for example H.264 or MPEG4 Video, is far more important to decide how the video can be repaired.
MPEG-4 Video, video compression format
MPEG4 is a type of media. The corresponding video encoding standard is called MPEG4 Part 2.
It should not be confused with .mp4 container format, or with MPEG4 Part 10, a different video encoding also referred as H264.
- Windows PCs require a codec pack (DivX, Nero)
- Every Mac comes with Apple's MPEG4 Video codec installed.
- Several third party codecs offer similar functionality: Perian, DivX, Xvid, 3ivx, Nero
- QuickTime X uses a different decoding mechanism, not based on installable codecs.
Therefore, the same MPEG4 file can give different results depending on the decoding technology used (QuickTime X or QuickTime 7 or other) and on the codecs installed.
MPEG4 Video is hard to repair. Difficulty depends mainly of the type of audio that goes with MPEG4.
AAC and MPEG4 form a very challenging combination.
muLaw (pronounced mu-law, sometimes written ulaw), ima4 and PCM 8 bits mono are also difficult to repair when present in a MPEG4 file.
To fix a corrupt movie containing MPEG4, it is often necessary, and always helpful, to have a good file similarly encoded. Even if the file contains only a few frames, the fact that it was encoded with the exact settings of the damaged file will provide useful information:
- Sample description (usually in the stsd atom)
- Pixel size
- Distribution of frames between I, P and B types, their approximate length in bytes (stsc, stsz, stss tables)
Repair Techniques have been developed and tested with MPEG4 Video codec by Apple that is installed by default on your Mac and with Perian. Other MPEG4 codecs, DivX, Xvid, 3ivx, have hardly been validated and it would be no surprise if the techniques described below fail to deliver good repair quality.
How to repair a corrupt MPEG4 movie
The easiest way is certainly to ask our Movie Repair Service to do it for you.
But for those who can program, here you have a few tips:
This family of video codecs uses a spatial and temporal compression with keyframes and inter-frames.
Each video frame starts with a 00 00 01 B6 pattern. There's no specific pattern to detect the end of a frame. This makes repair difficult if video is interleaved with audio that is also not easy to parse.
When it's not possible to determine whether some data belong to video or audio, it's often better to discard it, thus making both video and audio frames shorter. Some artifacts can appear, but less than if we take all the data.
The simple repair technique consists in separating audio and video, then add bootstrapping data in front of video data (a video header describing pixel size), then use mp4creator to make a video mp4 file.
Reindexing is the preferred method, but sometimes doesn't deliver enough quality due to parsing errors. In such cases, Decode-Validate is used.