MPEG-4 Part 14 or *.mp4, is a file format (a so called
container) specified as a part of the ISO/IEC MPEG-4 international
standard. It is used to store media types defined by the ISO/IEC
Moving Picture Experts Group, and can be used to store other media
types as well. It is, or will be, typically used to store data in
files, though it will be used in data streams and possibly in other
ways.
*.mp4 allows streaming over the internet. It also allows
multiplexing of multiple video and audio streams in one file,
variable frame- and bit-rates, subtitles and still images. Apple's
QuickTime file format was the design starting point of the *.mp4
file format. Although *.mp4 still resembles the QuickTime format,
it has been improved upon in many different ways.
Almost any kind of data can be embedded in *.mp4 files through
private streams, but those that are recommended (for compatibility
reasons) are:
* Video: MPEG-4 (particularly part 2, and part 10 -- also known as
AVC or H.264), MPEG-2 and MPEG-1
* Audio: MPEG-4 AAC, MP3, MP2, MPEG-1 Part 3, MPEG-2 Part 3, CELP
(speech), TwinVQ (very low bitrates), SAOL (midi)
* Pictures: JPEG, PNG
* Subtitles: MPEG-4 Timed Text, and/or xmt/bt text format (means
that subtitles have to be translated into xmt/bt)
* Systems: Allows animation, interactivity and DVD-like menus
Some file extensions used on files that contain data in the *.mp4
format:
* .mp4: official extension, for audio, video and advanced content
(see above) files
* .m4a: for audio-only files; can safely be renamed to *.mp4,
though opinions differ on the wisdom of this.
* .m4p: FairPlay protected files
* .mp4v, .m4v: video-only (sometimes also used for raw mpeg-4 video
streams not in the *.mp4 container format)
* .3gp, .3g2: used by 3G mobile phones, may also store content not
specified directly in the *.mp4 specification (H.263, AMR,
TX3G)
On October 30, 2005, Gabest added splitter support for *.mp4 in
MPC.