INTERNATIONAL
ORGANIZATION FOR STANDARDIZATION
ORGANISATION
INTERNATIONALE NORMALISATION
ISO/IEC
JTC 1/SC 29/WG 11
CODING
OF MOVING PICTURES AND AUDIO
ISO/IEC JTC 1/SC 29/WG 11N7924
April 2006, Montreux
|
Title |
AVC File Format (14496-15) white paper |
|
Source |
Systems |
|
Status |
Proposal |
|
Editors |
David Singer (Apple), Mohammed Zubair Visharam (Sony) |
Within the ISO/IEC 14496 MPEG-4 standard there are several parts that define file formats for the storage of time-based media (such as audio, video etc.). They are all based and derived from the ISO Base Media File Format[1], which is a structural, media-independent definition that is also published as part of the JPEG 2000 family of standards.
The AVC File Format [3] defines the storage for the Advanced Video Coding (ISO/IEC 14496-10/AVC) standard [4] data within files of the ISO Base Media File Format family.
The definitions in this specification are not intended for stand-alone use. Rather, they specify how AVC streams are stored in any file of the ISO base media file format family, such as MP4 [2].
AVC streams are configured using parameter sets. In the simple use of the AVC file format, these are stored in a configuration record in the descriptive data for the video track (the sample entry). Alternatively, if the parameter sets are highly dynamic, a separate parameter set stream may be stored in the file.
AVC streams are a sequence of access units, divided into NAL units. Each access unit is a file format sample, and the access units have a size indication in front of each one. That length indication can be configured as 1,2 or 4 bytes.
The sample groups defined originally in this specification and now in the ISO base media file format may be used in the AVC file format to divide the stream into layers and sub-sequences. This allows simple scalable processing of AVC streams (though the initial versions of AVC do not themselves contain provision for scalable coding).
The AVC codec also provides for stream switching. If a sequence is coded to different targets (e.g. bit-rates) and these are all stored in one file, then normally one would be able to switch between them at I-frames. The AVC codec also allows for switch pictures, which can be used to provide more switch points at lower cost. The file format contains structures to allow storage of these switch pictures.
The brand ‘avc1’ may be used as a minor brand to indicate that the extensions (sample groups etc.) originally defined in the first version of this specification are used. This brand is not used as a major brand; as indicated above, the overall file format containing AVC would be a suitable member of the family, such as MP4.
There is a registration authority which registers and documents the four-character-code code-points used in this file-format family, as well as some other code-points related to MPEG-4 systems. The database is publicly viewable and registration is free [5].
[1] ISO/IEC 14496-12, ISO Base Media File Format; technically identical to ISO/IEC 15444-12
[2] ISO/IEC 14496-14, MP4 File Format
[3] ISO/IEC 14496-15, Advanced Video Coding (AVC) file format
[4] ISO/IEC 14496-10, Advanced Video Coding
[5] The MP4 Registration Authority, http://www.mp4ra.org/