MP4 file format
{{Short description|Digital format for storing video and audio}}
{{Redirect|MP4}}
{{Infobox file format
| name = MP-4 Part 14
| icon =
| logo =
| screenshot = 300px
| caption = MPEG-4 Part 14 extends over ISO Base Media File Format (MPEG-4 Part 12).
| extension = .mp4, .m4a, .m4p, .m4b, .m4r and .m4v#Filename extensions
| mime = video/mp4
audio/mp4
| type code = mpg4
| uniform type =
| magic = p
| owner = International Organization for Standardization
International Electrotechnical Commission
| released = {{Start date and age|2001|10|df=yes}}
| latest release version = ISO/IEC 14496-14:2020
| latest release date = {{Start date and age|2020|01|df=yes}}
| type = Container format
| container for = Audio, video and text
| contained by =
| extended from = QuickTime File Format and MPEG-4 Part 12
| extended to =
| standard = ISO/IEC 14496-14
| open = No{{cite tech report |publisher=ISO |type=Standard |number=ISO/IEC 14496-14:2020 |title=Information technology – Coding of audio-visual objects – Part 14: MP4 file format |edition=3rd |date=January 2020 |url=https://www.iso.org/standard/79110.html |url-access=subscription}}
}}
MP4 (formally MPEG-4 Part 14), 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 is a standard specified as a part of the MPEG-4 specifications, formally as ISO/IEC 14496-14:2003. Its name should not be confused with the audio-only formats MP3 and MP2: while those are audio compression codecs, MP4 is a container file that can hold various types of media from various codecs.{{Cite web |title=MP3 vs MP4: Key Differences and Which to Choose for Your Needs |url=https://www.acethinker.com/video-convert-master/mp3-vs-mp4.html |access-date=2025-04-17 |website=www.acethinker.com}} During the 2000s, portable media players were sometimes errenously advertised as "MP4 players", even if they may play a different format like AMV video and not neccessarily the MPEG-4 Part 14 format.
Data streams
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),mp4ra.org - MP4 Registration authority, [http://mp4ra.org/#/codecs Registered Types - Codecs - ISO Code Points] {{Webarchive|url=https://web.archive.org/web/20190823155641/http://mp4ra.org/#/codecs|date=2019-08-23}}, Retrieved on 2009-07-14. but most of them are not widely supported by MP4 players. The widely supported codecs and additional data streams are (but many more are also supported, including audio like FLAC or TrueHD):{{cite book |last1=Chapman |first1=Nigel |url=https://archive.org/details/digitalmultimedi0000chap |title=Digital multimedia |last2=Chapman |first2=Jenny |date=2004 |publisher=Wiley |isbn=978-0-470-85890-5 |edition=2. |location=Chichester [u.a.] |url-access=registration}}{{Cite web |title=The 'MP4' Registration Authority |url=https://mp4ra.org/#/codecs |url-status=live |archive-url=https://web.archive.org/web/20231007124717/https://mp4ra.org/#/codecs |archive-date=2023-10-07 |access-date=2023-08-31 |website=mp4ra.org}}
- Video: MPEG-H Part 2 (H.265/HEVC), MPEG-4 Part 10 (H.264/AVC), MPEG-4 Part 2 and AV1{{Cite web |title=AV1 Codec ISO Media File Format Binding |url=https://aomediacodec.github.io/av1-isobmff/ |url-status=live |archive-url=https://web.archive.org/web/20240405193244/https://aomediacodec.github.io/av1-isobmff/ |archive-date=2024-04-05 |access-date=2024-04-27 |website=aomediacodec.github.io}}
: Other compression formats are less used: MPEG-2 and MPEG-1
- Audio: Advanced Audio Coding (AAC)
: Also MPEG-4 Part 3 audio objects, such as Audio Lossless Coding (ALS), Scalable Lossless Coding (SLS), MP3, MPEG-1 Audio Layer II (MP2), MPEG-1 Audio Layer I (MP1), CELP, HVXC (speech), TwinVQ, Text To Speech Interface (TTSI) and Structured Audio Orchestra Language (SAOL)
: Other compression formats are less used: Apple Lossless, Free Lossless Audio Codec (added in late 2018), and Opus (added in late 2018) {{cite web |date=2018-08-28 |title=Encapsulation of Opus in ISO Base Media File Format |url=https://vfrmaniac.fushizen.eu/contents/opus_in_isobmff.html |url-status=live |archive-url=https://web.archive.org/web/20190106204303/https://vfrmaniac.fushizen.eu/contents/opus_in_isobmff.html |archive-date=2019-01-06 |access-date=2019-01-05}}
- Subtitles: MPEG-4 Timed Text (also known as 3GPP Timed Text).
: Nero Digital uses DVD Video subtitles in MP4 files
The 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).{{cite web |last1=JK |date=25 January 2013 |title=Das Moov Atom und wo es stehen sollte |url=https://jkdigital.de/moov-atom/ |url-status=live |archive-url=https://web.archive.org/web/20200811143846/https://jkdigital.de/moov-atom/ |archive-date=11 August 2020 |access-date=11 August 2020 |website=JKdigital |language=de}}{{cite web |date=November 2013 |title=Fehlerhaft kopierte MP4-Datei reparieren |url=http://preamp.org/revenge/fehlerhaft-kopierte-mp4-datei-reparieren |url-status=live |archive-url=https://web.archive.org/web/20200811152527/http://preamp.org/revenge/fehlerhaft-kopierte-mp4-datei-reparieren |archive-date=2020-08-11 |access-date=2020-08-11 |publisher=preamp.org |language=de-DE}}{{cite web |author=eZs3 media service |date=1 March 2011 |title=Checking Metadata or Moov Atom Location |url=https://www.ezs3.com/public/Checking_Metadata_or_Moov_Atom_Location.cfm |url-status=live |archive-url=https://web.archive.org/web/20200811204404/https://www.ezs3.com/public/Checking_Metadata_or_Moov_Atom_Location.cfm |archive-date=11 August 2020 |access-date=11 August 2020 |website=www.ezs3.com}}{{cite web |last1=Levkov |first1=Maxim |title=Understanding the MPEG-4 movie atom {{!}} Adobe Developer Connection |url=https://www.adobe.com/devnet/video/articles/mp4_movie_atom.html |archive-url=https://web.archive.org/web/20210130152901/https://www.adobe.com/devnet/video/articles/mp4_movie_atom.html |archive-date=2021-01-30 |access-date=11 August 2020 |website=www.adobe.com |publisher=Adobe Developer Network}}
Metadata
MP4 files can contain metadata as defined by the format standard, and in addition, can contain Extensible Metadata Platform (XMP) metadata.
Filename extensions
While the only filename extension defined by the standard is {{Mono|.mp4}}, various filename extensions are commonly used to indicate intended content:
- MPEG-4 files with audio and video generally use the standard {{Mono|.mp4}} extension.
- Audio-only MPEG-4 files generally have a {{Mono|.m4a}} (MPEG-4 Audio) extension. This is especially true of unprotected content.
- MPEG-4 files with audio streams encrypted by FairPlay digital rights management as were sold through the iTunes Store use the {{Mono|.m4p}} (MPEG-4 Protected) extension. iTunes Plus tracks, that the iTunes Store currently sells, are unencrypted and use {{Mono|.m4a}} accordingly.
- Audiobook and podcast files, which also contain metadata including chapter markers, images, and hyperlinks, can use the extension {{Mono|.m4a}}, but more commonly use the {{Mono|.m4b}} (MPEG-4 Audiobook) extension.
- The Apple iPhone uses MPEG-4 audio for its ringtones but uses the {{Mono|.m4r}} extension rather than the {{Mono|.m4a}} extension.
- Raw MPEG-4 Visual bitstreams are named {{Mono|.m4v}} but this extension is also sometimes used for video in MP4 container format[http://forum.doom9.org/showthread.php?s=&threadid=62723 Doom9's Forum, MP4 FAQ] {{Webarchive|url=https://web.archive.org/web/20060111204809/http://forum.doom9.org/showthread.php?s=&threadid=62723|date=2006-01-11}}, Retrieved on 2009-07-15 or in the M4V container format.
- Mobile phones used to use 3GP, an implementation of MPEG-4 Part 12 (a.k.a. MPEG-4/JPEG2000 ISO Base Media file format), similar to MP4. It uses {{Mono|.3gp}} and {{Mono|.3g2}} extensions. These files also store non-MPEG-4 data (H.263, AMR, TX3G). In practice, most (if not all) low end phones and feature phones recorded in this format, as most (if not all) other mobile phones and smartphones record MP4 files using the .mp4 file extension, and some high end phones{{which|date=October 2020}} can record in .raw. By the time that 4G technology was widespread, 3GP started to be phased out, and is now rarely seen.
History
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.{{cite web
| url = https://developer.apple.com/standards/classicquicktime.html
| author = Apple Inc.
| title = Classic Version of the QuickTime File Format Specification
| year = 2001
| access-date = 2009-06-14
| archive-date = 2009-08-28
| archive-url = https://web.archive.org/web/20090828000723/http://developer.apple.com/standards/classicquicktime.html
| url-status = live
}}{{cite web|url=http://mp4ra.org/#/references|title=References, MPEG-4 Registration authority|author=mp4ra.org - MP4 Registration authority|access-date=2018-08-29|archive-date=2018-08-19|archive-url=https://web.archive.org/web/20180819085633/http://mp4ra.org/#/references|url-status=live}}{{cite web
| publisher=International Organization for Standardization
|website=Leonardo Chiariglione
| title = ISO Base Media File Format white paper - Proposal
| date = April 2006
| url = http://www.chiariglione.org/mpeg/technologies/mp04-ff/index.htm
| access-date = 2009-12-26 |archive-url = https://web.archive.org/web/20080714101745/http://www.chiariglione.org/mpeg/technologies/mp04-ff/index.htm |archive-date = 2008-07-14}}{{cite web
| publisher=International Organization for Standardization
|website=Leonardo Chiariglione
| title = MPEG-4 File Formats white paper - Proposal
| date = October 2005
| url = http://www.chiariglione.org/mpeg/technologies/mp04-ff/index.htm
| access-date = 2009-12-26 |archive-url = https://web.archive.org/web/20080115035235/http://www.chiariglione.org/mpeg/technologies/mp04-ff/index.htm |archive-date = 2008-01-15}}{{cite web
|publisher = International Organization for Standardization
|website = Leonardo Chiariglione
|title = ISO Base Media File Format white paper - Proposal
|date = October 2009
|url = http://mpeg.chiariglione.org/technologies/mpeg-4/mp04-ff/index.htm
|access-date = 2014-10-31
|archive-date = 2021-04-29
|archive-url = https://web.archive.org/web/20210429224925/https://mpeg.chiariglione.org/technologies/mpeg-4/mp04-ff/index.htm
|url-status = live
}}{{cite web | url = https://images.apple.com/quicktime/pdf/MPEG4_v3.pdf | archive-url = https://web.archive.org/web/20141031153948/https://images.apple.com/quicktime/pdf/MPEG4_v3.pdf | archive-date = 2014-10-31 | title = MPEG-4 Fact Sheet | author = Apple Computer}} 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.{{Cite web |url=http://lists.apple.com/archives/Streaming-server-developers/2001/Dec/msg00016.html |title=RE: QT vs MPEG-4 |access-date=2007-03-30 |archive-url=https://web.archive.org/web/20070510091152/http://lists.apple.com/archives/Streaming-server-developers/2001/Dec/msg00016.html |archive-date=2007-05-10 }} 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.{{cite web
| url = http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=38538
| author = International Organization for Standardization
| title = MPEG-4 Part 14: MP4 file format; ISO/IEC 14496-14:2003
| year = 2003
| access-date = 2009-06-11
| archive-date = 2016-10-10
| archive-url = https://web.archive.org/web/20161010071532/http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=38538
| url-status = live
}}
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).{{cite web
| url = http://www.digitalpreservation.gov/formats/fdd/fdd000037.shtml
| author = Library of Congress
| title = MPEG-4 File Format, Version 1
| year = 2001
| access-date = 2009-06-14
| archive-date = 2017-03-20
| archive-url = https://web.archive.org/web/20170320004230/http://www.digitalpreservation.gov/formats/fdd/fdd000037.shtml
| url-status = live
| url = http://tools.ietf.org/html/rfc4337#page-4
| author = Y. Lim
| author2 = D. Singer
| title = MIME Type Registration for MPEG-4
| website = RFC Editor
| year = 2006
| doi = 10.17487/RFC4337
| access-date = 2009-06-14
| archive-date = 2021-05-06
| archive-url = https://web.archive.org/web/20210506080808/https://tools.ietf.org/html/rfc4337#page-4
| url-status = live
| url = http://www.iso.org/iso/iso_catalogue/catalogue_ics/catalogue_detail_ics.htm?csnumber=34903
| author = International Organization for Standardization
| title = MPEG-4 Part 1: Systems; ISO/IEC 14496-1:2001
| year = 2001
| access-date = 2009-06-11
| archive-date = 2016-08-19
| archive-url = https://web.archive.org/web/20160819064806/http://www.iso.org/iso/iso_catalogue/catalogue_ics/catalogue_detail_ics.htm?csnumber=34903
| url-status = live
}} 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.{{cite web
| url = http://www.digitalpreservation.gov/formats/fdd/fdd000155.shtml
| author = Library of Congress
| title = MPEG-4 File Format, Version 2
| year = 2003
| access-date = 2009-06-14
| archive-date = 2009-06-25
| archive-url = https://web.archive.org/web/20090625020706/http://www.digitalpreservation.gov/formats/fdd/fdd000155.shtml
| url-status = live
}}{{cite web |url=http://mpeg.chiariglione.org/faq/mp4-sys/sys-faq-sys4gen.htm |title=MPEG-4 Systems General Issues |date=July 2001 |publisher=chiariglione.org |access-date=2010-04-11 |archive-date=2010-04-13 |archive-url=https://web.archive.org/web/20100413131035/http://mpeg.chiariglione.org/faq/mp4-sys/sys-faq-sys4gen.htm |url-status=live }} 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, and Motion JPEG 2000).{{cite web
| title = ISO/IEC 14496-12:2008, Information technology -- Coding of audio-visual objects -- Part 12: ISO base media file format
| website= International Organization for Standardization
| year = 2008
| url = http://standards.iso.org/ittf/PubliclyAvailableStandards/c051533_ISO_IEC_14496-12_2008.zip
| archive-url = https://web.archive.org/web/20160706043645/http://standards.iso.org/ittf/PubliclyAvailableStandards/c051533_ISO_IEC_14496-12_2008.zip
| url-status = dead
| archive-date = July 6, 2016
| format = ZIP
| pages = 88, 94
| access-date = 2009-05-30 }}{{cite web
| url = http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=38539
| author = International Organization for Standardization
| title = MPEG-4 Part 12: ISO base media file format; ISO/IEC 14496-12:2004
| year = 2004
| access-date = 2009-06-11
| archive-date = 2016-08-19
| archive-url = https://web.archive.org/web/20160819065727/http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=38539
| url-status = live
}}
class="wikitable sortable"
|+MP4 file format versions |
Version
! Release date ! Standard ! Description ! Edition |
---|
1
| 2001 | ISO/IEC 14496-1:2001 | MPEG-4 Part 1: Systems | First |
2
| 2003 | ISO/IEC 14496-14:2003 | MPEG-4 Part 14: MP4 file format | First |
2
| 2018 | ISO/IEC 14496-14:2018 | MPEG-4 Part 14: MP4 file format | Second |
2
| 2020 | ISO/IEC 14496-14:2020 | MPEG-4 Part 14: MP4 file format | Third |
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 the ISO base media file format (e.g., 3GP).{{cite web
|author = 3GPP2
|title = 3GPP2 C.S0050-B Version 1.0, 3GPP2 File Formats for Multimedia Services
|website=Third Generation Partnership Project 2
|date = 18 May 2007
|url = http://www.3gpp2.org/Public_html/specs/C.S0050-B_v1.0_070521.pdf
|pages = 67, 68
|access-date = 2009-06-12
|archive-url = https://web.archive.org/web/20091007071048/http://www.3gpp2.org/Public_html/specs/C.S0050-B_v1.0_070521.pdf
|archive-date = 7 October 2009
}} 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 registration is not mandatory,{{cite web
| url = http://www.ftyps.com/mp4reg.html
| first = Steven
| last = Greenberg
| title = Registration of ftyp's
| year = 2009
| access-date = 2009-06-15
| archive-date = 2009-10-24
| archive-url = https://web.archive.org/web/20091024094913/http://www.ftyps.com/mp4reg.html
| url-status = live
}} and some invented and used code-points are not registered.{{cite web
| url = http://www.ftyps.com/
| first = Steven
| last = Greenberg
| title = Complete List of all known MP4 / QuickTime 'ftyp' designations
| year = 2009
| access-date = 2009-06-15
| archive-date = 2018-01-21
| archive-url = https://web.archive.org/web/20180121071024/http://www.ftyps.com/
| url-status = live
}} 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 as 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.
See also
References
{{Reflist|30em}}
External links
- [http://www.mp4ra.org/index.html The MP4 registration authority]
- {{IETF RFC|4337|link=no}} - MIME Type Registration for MPEG-4
- [http://www.cimarronsystems.com/wp-content/uploads/2017/04/Elements-of-the-H.264-VideoAAC-Audio-MP4-Movie-v2_0.pdf Elements of the H.264 Video/AAC Audio MP4 Movie]
{{Compression formats}}
{{MPEG}}
{{ISO standards}}
Category:Computer-related introductions in 2003