.mp4, .m4a, .m4p, .m4b, .m4r and .m4v[Note 1]
|Internet media type|
|Developed by||International Organization for Standardization|
|Initial release||October 2001|
|Type of format||Container format|
|Container for||Audio, video and text|
|Extended from||QuickTime File Format and MPEG-4 Part 12|
MPEG-4 Part 14 or MP4 is a digital multimedia container format most commonly used to store video and audio, but it can also be used to store other data such as subtitles and still images. Like most modern container formats, it allows streaming over the Internet. The only filename extension for MPEG-4 Part 14 files as defined by the specification is .mp4. MPEG-4 Part 14 (formally ISO/IEC 14496-14:2003) is a standard specified as a part of MPEG-4.
Portable media players are sometimes advertised as "MP4 Players", although some are simply MP3 Players that also play AMV video or some other video format, and do not necessarily play the MPEG-4 Part 14 format.
MPEG-4 Part 14 is an instance of the more general ISO/IEC 14496-12:2004 (MPEG-4 Part 12: ISO base media file format) which is directly based upon the QuickTime File Format which was published in 2001.  MPEG-4 Part 14 is essentially identical to the QuickTime File Format, but formally specifies support for Initial Object Descriptors (IOD) and other MPEG features. MPEG-4 Part 14 revises and completely replaces Clause 13 of ISO/IEC 14496-1 (MPEG-4 Part 1: Systems), in which the file format for MPEG-4 content was previously specified.
The MPEG-4 file format, version 1 was published in 2001 as ISO/IEC 14496-1:2001, which is a revision of the MPEG-4 Part 1: Systems specification published in 1999 (ISO/IEC 14496-1:1999). In 2003, the first version of the MP4 file format was revised and replaced by MPEG-4 Part 14: MP4 file format (ISO/IEC 14496-14:2003), commonly named as MPEG-4 file format version 2. The MP4 file format was generalized into the ISO Base Media File format ISO/IEC 14496-12:2004, which defines a general structure for time-based media files. It in turn is used as the basis for other file formats in the family (for example MP4, 3GP, Motion JPEG 2000).
|MP4 file format version 1||2001||ISO/IEC 14496-1:2001||MPEG-4 Part 1 (Systems), First edition|
|MP4 file format version 2||2003||ISO/IEC 14496-14:2003||MPEG-4 Part 14 (MP4 file format), Second edition|
The MP4 file format defined some extensions over the ISO Base Media File Format to support MPEG-4 visual/audio codecs and various MPEG-4 Systems features such as object descriptors and scene descriptions. Some of these extensions are also used by other formats based on ISO base media file format (e.g. 3GP). A list of all registered extensions for ISO Base Media File Format is published on the official registration authority website. The registration authority for code-points (identifier values) in "MP4 Family" files is Apple Inc. and it is named in Annex D (informative) in MPEG-4 Part 12. Codec designers should register the codes they invent, but the registration is not mandatory and some invented and used code-points are not registered. When someone is creating a new specification derived from the ISO Base Media File Format, all the existing specifications should be used both as examples and a source of definitions and technology. If an existing specification already covers how a particular media type is stored in the file format (e.g. MPEG-4 audio or video in MP4), that definition should be used and a new one should not be invented.
While the only filename extension defined by the standard is .mp4, various filename extensions are commonly used to indicate intended content:
Most kinds of data can be embedded in MPEG-4 Part 14 files through private streams. A separate hint track is used to include streaming information in the file. The registered codecs for MPEG-4 Part 12-based files are published on the website of MP4 Registration authority (mp4ra.org), but most of them are not widely supported by MP4 players. The widely supported codecs and additional data streams are:[obsolete source]
The so-called moov atom contains information about video resolution, frame rates, orientation, display characteristics, and more. It might be placed at the beginning or end of the file. In the latter case, the video file is not playable if the file is incomplete (truncated).