Sustainability of Digital Formats: Planning for Library of Congress Collections

Introduction | Sustainability Factors | Content Categories | Format Descriptions | Contact
Format Description Categories >> Browse Alphabetical List

ISO Base Media File Format

>> Back
Table of Contents
Format Description Properties Explanation of format description terms

Identification and description Explanation of format description terms

Full name ISO/IEC 14496-12. Information technology -- Coding of audio-visual objects -- Part 12: ISO Base Media File Format (formal name). ISO base media file format (common name)
Description

The ISO Base Media File Format, referred to in this description as ISO_BMFF, is an international standard, developed and maintained under the auspices of ISO/IEC JTC1 SC29. To paraphrase from the Introduction in the specification, ISO_BMFF is a base format for media file formats, designed primarily to contain time-based audio-visual information in a flexible, extensible format that facilitates interchange, management, editing, and presentation of the media. This presentation may be 'local' to the system containing the presentation or may be via a network or other stream delivery mechanism. The file structure is object-oriented; a file can be decomposed into constituent objects very simply, and the structure of the objects inferred directly from their type. The file format is designed to be independent of any particular network protocol while enabling efficient support for them in general.

Annex A of the 5th edition of the specification (2015) is an informative Overview and Introduction for the format. Annex B provides Guidelines on deriving from this specification.

The summary of the physical organization of an ISO BMFF file below draws on Annex A and on An Overview of the ISO Base Media File Format, a presentation from 2018.

  • All data is encapsulated in boxes. No data exists outside a box. All the structural metadata, including that defining the placement and timing of the media, is contained in structured boxes. The media data (e.g., the unstructured essence for tracks and segments of audio and video) is referred to by this metadata. The media data may be in the primary file (contained in one or more boxes), or can be in secondary files, referred to by means of URLs. The placement of the media data from secondary files is entirely described by the structural metadata in the primary file. Boxes can be formed into a parent/child hierarchy. See diagram of Example of ISO Base Media File structure.
  • Each box has length, type (4 printable chars), and may have version, flags, and data. The hierarchy of typed boxes with their lengths allows simple navigation of the structure.
  • The ISO BMFF standard defines a number of box types. The specification for a box type includes the permitted parent container box types. A full list of box types is in Table 1 of the standard. The table also shows the hierarchy as permitted by the specified parent container constraints.
  • At or near the beginning of a file will be the mandatory file-type box, with type ftyp. This box can specify values for major-brand, minor-brand, and compatible-brands. Brands are used to distinguish file types for specifications built on the ISO BMFF standard. The major brand usually implies the file extension, which in turn implies the MIME type for the file. Annex C of the specification includes further discussion of brand identifiers.
  • Structural metadata is stored in a hierarchy of structured header boxes, typically starting with a Movie Header box with type moov for timed media. Boxes with type meta are used as headers for untimed data and also for descriptive metadata or metadata relating to provenance or context. The actual media data is stored in unstructured form, typically using mdat boxes for timed data and idat boxes for untimed items. As mentioned above, media data may also be stored in separate files and referred to by URL.
  • Extensibility is supported by allowing unrecognized box types to be skipped. Private extensions are possible by using the uuid box type.

By structuring the box-based ISO BMFF files in different ways, the same base specification can be used for files for many use cases: capture; exchange and download, including incremental download and play; local playback; editing and composition; streaming from streaming servers; and capturing streams to files.

Production phase Generally used for middle- and final-state archiving or end-user delivery.
Relationship to other formats
    Has subtype MJP2_FF, Motion JPEG 2000 File Format
    Has subtype MP4_FF_2, MPEG-4 File Format, version 2
    Has subtype MP4_FF_AVCE, MPEG-4 File Format for AVC (Extensions; Part 15)
    Has subtype JP2_FF, JPEG 2000 Part 1 (Core) jp2 File Format
    Has subtype JPX_FF, JPEG 2000 Part 2 (Extensions) jpf File Format
    Has subtype JPM_FF, JPEG 2000 Part 1 (Compound) jpm File Format
    Has subtype HEIF, High Efficiency Image File Format. Some internal structures required for HEIF were added into the ISO_BMFF specification in a 2018 amendment. See ISO/IEC 14496-12:2015/Amd 2:2018.
    Has subtype A number of other audiovisual file formats not described on this website are based on the ISO_BMFF structure. See Adoption below.
    Affinity to QuickTime, QuickTime File Format. ISO_BMFF is largely based on the Classic Version of the QuickTime File Format Specification.

Local use Explanation of format description terms

LC experience or existing holdings For JPEG 2000 still image implementations, see JP2_FF. For moving image implementations, see MP4_FF_2.
LC preference For JPEG 2000 still image implementations, see JP2_FF. For moving image implementations, no relevant preferences established.

Sustainability factors Explanation of format description terms

Disclosure International standard, fully disclosed. Developed jointly by the Motion Pictures Expert Group (MPEG) and the Joint Photographic Experts Group (JPEG), two working groups within the ISO/IEC committee structure formally known as ISO/IEC JTC 1/SC 29. The Introduction to the specification, through the 5th edition (2015), stated that it was intended that the ISO Base Media File Format would be jointly maintained by WG1 (JPEG 2000) and WG11 (MPEG). After re-organization of SC 29 in 2020, maintenance of the standard will be by a new WG3 (MPEG Systems).
    Documentation

Published as part of both MPEG-4 and JPEG 2000 as technically identical ISO standards:

  • ISO/IEC 14496-12. Information technology -- Coding of audio-visual objects -- Part 12: ISO Base Media File Format. Part of MPEG-4. See 5th edition (2015).
  • JPEG 2000 ISO/IEC 15444-12. Information technology -- JPEG 2000 image coding system -- Part 12: ISO base media file format. Part of JPEG 2000. In 2017, this copy of the specification was withdrawn, replaced with a reference to ISO/IEC 14496-12. See

In October 2020, https://www.iso.org/standard/74428.html indicates that a 6th edition of the standard is "approved and "under publication."

Adoption

As stated in clause C.2.1 of the specification, "A number of existing file formats use the ISO Base Media File Format, not least the MPEG-4 MP4 File Format (ISO/IEC 14496-14), and the Motion JPEG 2000 MJ2 File Format (ISO/IEC 15444-3). MP4RA is the Official Registration Authority for the ISOBMFF family of standards. For a list that includes the most important file formats based on ISO_BMFF, see Boxes/atoms format from fileformats.archiveteam.org.

JPEG 2000 still image implementations using JP2_FF are being widely adopted. The breadth of adoption of implementations of JPX_FF and JPM_FF is unknown to the compilers of this document. For moving image implementations, there is some adoption of MP4_FF_2; the breadth of adoption of other moving image implementations is unknown to the compilers of this document. At this writing (September 2020), Motion JPEG 2000 encoding, which would use MJP2_FF, does not appear to be widely adopted. Professional broadcasters appear to favor standards from SMPTE, e.g., Material Exchange Format (MXF) and Interoperable Master Format (IMF). Comments welcome.

Open source libraries for parsing files in this format can be found at: https://github.com/MPEGGroup/isobmff (Official repository of the ISO Base Media File Format Reference Software); https://github.com/DigiDNA/ISOBMFF; and ISOBMFF (from Imazing).

    Licensing and patents The original specification identified Apple and Matsushita Electric Industrial Co. as holders of relevant patents, adding that "the holders of these patent rights have assured the ISO and IEC that they are willing to negotiate licenses under reasonable and non-discriminatory terms." The specification also cautions that "some of the elements . . . may be the subject of patent rights other than those identified."
Transparency ISO_BMFF itself is transparent as a wrapper. Transparency of subtypes is determined by the encoding of the wrapped content. See subtypes listed above.
Self-documentation The structure includes boxes and headers that contain the technical metadata needed to manage the media streams. Other boxes may contain descriptive ("bibliographic") metadata; for example, see MJP2_FF. Comments welcome.
External dependencies The format allows for media data (e.g., tracks and segments of audio and video) to be stored outside the primary file and referred to by URL. This capability is important for streaming applications. See DataReferenceBox in subclause 8.7.2. in ISO_BMFF specification.
Technical protection considerations None. Files may employ an optional IPR (Intellectual Property Rights) box that indicates whether an item is protected and provides an identifier; see JP2_FF. Another possible approach is using the ISO Common Encryption standard defined in ISO/IEC 23001-7:2016 Information technology — MPEG systems technologies — Part 7: Common encryption in ISO base media file format files.

Quality and functionality factors Explanation of format description terms

Other
Normal rendering. Many relevant aspects depend on subtype. The format supports timescales that manage the playout of time-based media streams and hint tracks employed in streaming applications.

File type signifiers and format identifiers Explanation of format description terms

Tag Value Note
Filename extension See note.  Depends upon subtype.
Internet Media Type See note.  Depends upon subtype.
Magic numbers See note.  Depends upon subtype.
File type brand (ISO Base Media File Format) isom
ISO_BMFF includes a file type box that contains major and minor brands (identifiers). Regarding isom, the specification states that this would typically be used as the minor or secondary brand. For examples of major brands in ISO_BMFF files, see subtypes listed above; a file type brand has also been established for the related MP4_FF_1 format.

Notes Explanation of format description terms

General

In the summer of 2020, ISO/IEC JTC1/SC29 reorganized its work groups. WG11, formerly equivalent to the MPEG working group, was broken into a number of more specific working groups. The WG responsible for ISO_BMFF going forward is ISO/IEC JTC1/SC29/WG3 for MPEG Systems. For background, see Future of SC 29 with JPEG and MPEG, MPEG home page as of July 6, 2020, and further Useful References below.

History

An Overview of the ISO Base Media File Format, a 2018 Powerpoint presentation from ISO/IEC JTC1/SC29/WG11, provides a useful history for the file format.

  • ISO BMFF is directly based on Apple’s QuickTime container format.
  • It was developed by MPEG (ISO/IEC JTC1/SC29/WG11).
  • The first MP4 file format specification was created on the basis of the QuickTime format specification published in 2001.
  • The MP4 file format known as "version 1" was published in 2001 as ISO/IEC 14496-1:2001, as a revision of MPEG-4 Part 1: Systems.
  • In 2003, the first version of MP4 file format was revised and replaced by MPEG-4 Part 14: MP4 file format (ISO/IEC 14496-14:2003), commonly known as MPEG-4 file format "version 2". Note: As of September 2020, the current version of ISO/IEC 14496-14 is from 2020.
  • The MP4 file format was generalized into the ISO Base Media File format (ISO/IEC 14496-12:2004 or ISO/IEC 15444-12:2004), which defines a general structure for time-based media files.

As indicated above, ISO_BMFF is derived from Apple's QuickTime. The Apple connection was celebrated in an item in MacWeek, February 16, 1998: "QuickTime received a ringing endorsement last week when a consortium of high-tech companies announced that the International Organization for Standardization, better known as ISO, had adopted QuickTime's file format as a centerpiece of MPEG-4, the forthcoming multimedia standard." See ISO ratifies QuickTime as keystone of MPEG-4 by John Poultney (link now via Internet Archive).

In 2004, the specification for ISO_BMFF was published simultaneously as ISO/IEC 14496-12 (as part of MPEG-4) and as ISO/IEC 15444-12 (as part of JPEG 2000). In 2017, ISO/IEC 15444-12 was withdrawn, and replaced with a reference to ISO/IEC 14496-12 for "up-to-date content." See https://www.iso.org/standard/68963.html.

The 2018 presentation An Overview of the ISO Base Media File Format discusses areas of interest for the future of the format.


Format specifications Explanation of format description terms


Useful references

URLs


Last Updated: 11/02/2020