ISO/IEC 14496-12:2015 Information technology — Coding of audio-visual objects — Part 12: ISO base media file format

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

ISO/IEC 14496-12:2015 specifies the ISO base media file format, which is a general format forming the basis for a number of other more specific file formats. This format contains the timing, structure, and media information for timed sequences of media data, such as audio-visual presentations. ISO/IEC 14496-12:2015 is applicable to MPEG-4, but its technical content is identical to that of ISO/IEC 15444-12, which is applicable to JPEG 2000.

Author(s): ISO/IEC
Series: ISO/IEC 14496-12
Edition: 5
Publisher: ISO
Year: 2015

Language: English
Commentary: https://www.iso.org/standard/68960.html
Pages: 233

Foreword
Introduction
1 Scope
2 Normative references
3 Terms, definitions, and abbreviated terms
3.1 Terms and definitions
3.2 Abbreviated terms
4 Object-structured File Organization
4.1 File Structure
4.2 Object Structure
4.3 File Type Box
5 Design Considerations
5.1 Usage
5.1.1 Introduction
5.1.2 Interchange
5.1.3 Content Creation
5.1.4 Preparation for streaming
5.1.5 Local presentation
5.1.6 Streamed presentation
5.2 Design principles
6 ISO Base Media File organization
6.1 Presentation structure
6.1.1 File Structure
6.1.2 Object Structure
6.1.3 Meta Data and Media Data
6.1.4 Track Identifiers
6.2 Metadata Structure (Objects)
6.2.1 Box
6.2.2 Data Types and fields
6.2.3 Box Order
6.2.4 URIs as type indicators
6.3 Brand Identification
7 Streaming Support
7.1 Handling of Streaming Protocols
7.2 Protocol ‘hint’ tracks
7.3 Hint Track Format
8 Box Structures
8.1 File Structure and general boxes
8.1.1 Media Data Box
8.1.2 Free Space Box
8.1.3 Progressive Download Information Box
8.2 Movie Structure
8.2.1 Movie Box
8.2.2 Movie Header Box
8.3 Track Structure
8.3.1 Track Box
8.3.2 Track Header Box
8.3.3 Track Reference Box
8.3.4 Track Group Box
8.4 Track Media Structure
8.4.1 Media Box
8.4.2 Media Header Box
8.4.3 Handler Reference Box
8.4.4 Media Information Box
8.4.5 Media Information Header Boxes
8.4.6 Extended language tag
8.5 Sample Tables
8.5.1 Sample Table Box
8.5.2 Sample Description Box
8.5.3 Degradation Priority Box
8.5.4 Sample Scale Box
8.6 Track Time Structures
8.6.1 Time to Sample Boxes
8.6.2 Sync Sample Box
8.6.3 Shadow Sync Sample Box
8.6.4 Independent and Disposable Samples Box
8.6.5 Edit Box
8.6.6 Edit List Box
8.7 Track Data Layout Structures
8.7.1 Data Information Box
8.7.2 Data Reference Box
8.7.3 Sample Size Boxes
8.7.4 Sample To Chunk Box
8.7.5 Chunk Offset Box
8.7.6 Padding Bits Box
8.7.7 Sub-Sample Information Box
8.7.8 Sample Auxiliary Information Sizes Box
8.7.9 Sample Auxiliary Information Offsets Box
8.8 Movie Fragments
8.8.1 Movie Extends Box
8.8.2 Movie Extends Header Box
8.8.3 Track Extends Box
8.8.4 Movie Fragment Box
8.8.5 Movie Fragment Header Box
8.8.6 Track Fragment Box
8.8.7 Track Fragment Header Box
8.8.8 Track Fragment Run Box
8.8.9 Movie Fragment Random Access Box
8.8.10 Track Fragment Random Access Box
8.8.11 Movie Fragment Random Access Offset Box
8.8.12 Track fragment decode time
8.8.13 Level Assignment Box
8.8.14 Sample Auxiliary Information in Movie Fragments
8.8.15 Track Extension Properties Box
8.8.16 Alternative Startup Sequence Properties Box
8.8.17 Metadata and user data in movie fragments
8.9 Sample Group Structures
8.9.1 Introduction
8.9.2 Sample to Group Box
8.9.3 Sample Group Description Box
8.9.4 Representation of group structures in Movie Fragments
8.10 User Data
8.10.1 User Data Box
8.10.2 Copyright Box
8.10.3 Track Selection Box
8.10.4 Track kind
8.11 Metadata Support
8.11.1 The Meta box
8.11.2 XML Boxes
8.11.3 The Item Location Box
8.11.4 Primary Item Box
8.11.5 Item Protection Box
8.11.6 Item Information Box
8.11.7 Additional Metadata Container Box
8.11.8 Metabox Relation Box
8.11.9 URL Forms for meta boxes
8.11.10 Static Metadata
8.11.11 Item Data Box
8.11.12 Item Reference Box
8.11.13 Auxiliary video metadata
8.12 Support for Protected Streams
8.12.1 Protection Scheme Information Box
8.12.2 Original Format Box
8.12.3 IPMPInfoBox
8.12.4 IPMP Control Box
8.12.5 Scheme Type Box
8.12.6 Scheme Information Box
8.13 File Delivery Format Support
8.13.1 Introduction
8.13.2 FD Item Information Box
8.13.3 File Partition Box
8.13.4 FEC Reservoir Box
8.13.5 FD Session Group Box
8.13.6 Group ID to Name Box
8.13.7 File Reservoir Box
8.14 Sub tracks
8.14.1 Introduction
8.14.2 Backward compatibility
8.14.3 Sub Track box
8.14.4 Sub Track Information box
8.14.5 Sub Track Definition box
8.14.6 Sub Track Sample Group box
8.15 Post-decoder requirements on media
8.15.1 General
8.15.2 Transformation
8.15.3 Restricted Scheme Information box
8.15.4 Scheme for stereoscopic video arrangements
8.16 Segments
8.16.1 Introduction
8.16.2 Segment Type Box
8.16.3 Segment Index Box
8.16.4 Subsegment Index Box
8.16.5 Producer Reference Time Box
8.17 Support for Incomplete Tracks
8.17.1 General
8.17.2 Transformation
8.17.3 Complete Track Information Box
9 Hint Track Formats
9.1 RTP and SRTP Hint Track Format
9.1.1 Introduction
9.1.2 Sample Description Format
9.1.3 Sample Format
9.1.4 SDP Information
9.1.5 Statistical Information
9.2 ALC/LCT and FLUTE Hint Track Format
9.2.1 Introduction
9.2.2 Design principles
9.2.3 Sample Description Format
9.2.4 Sample Format
9.3 MPEG-2 Transport Hint Track Format
9.3.1 Introduction
9.3.2 Design Principles
9.3.3 Sample Description Format
9.3.4 Sample Format
9.3.5 Protected MPEG 2 Transport Stream Hint Track
9.4 RTP, RTCP, SRTP and SRTCP Reception Hint Tracks
9.4.1 RTP Reception Hint Track
9.4.2 RTCP Reception Hint Track
9.4.3 SRTP Reception Hint Track
9.4.4 SRTCP Reception Hint Tracks
9.4.5 Protected RTP Reception Hint Track
9.4.6 Recording Procedure
9.4.7 Parsing Procedure
10 Sample Groups
10.1 Random Access Recovery Points
10.2 Rate Share Groups
10.2.1 Introduction
10.2.2 Rate Share Sample Group Entry
10.2.3 Relationship between tracks
10.2.4 Bitrate allocation
10.3 Alternative Startup Sequences
10.3.4 Examples
10.4 Random Access Point (RAP) Sample Grouping
10.5 Temporal level sample grouping
10.6 Stream access point sample group
11 Extensibility
11.1 Objects
11.2 Storage formats
11.3 Derived File formats
12 Media-specific definitions
12.1 Video media
12.1.1 Media handler
12.1.2 Video media header
12.1.3 Sample entry
12.1.4 Pixel Aspect Ratio and Clean Aperture
12.1.5 Colour information
12.2 Audio media
12.2.1 Media handler
12.2.2 Sound media header
12.2.3 Sample entry
12.2.4 Channel layout
12.2.5 Downmix Instructions
12.2.6 DRC Information
12.2.7 Audio stream loudness
12.3 Metadata media
12.3.1 Media handler
12.3.2 Media header
12.3.3 Sample entry
12.4 Hint media
12.4.1 Media handler
12.4.2 Hint media header
12.4.3 Sample entry
12.5 Text media
12.5.1 Media handler
12.5.2 Media header
12.5.3 Sample entry
12.6 Subtitle media
12.6.1 Media handler
12.6.2 Subtitle media header
12.6.3 Sample entry
12.7 Font media
12.7.1 Media handler
12.7.2 Media header
12.7.3 Sample entry
12.8 Transformed media
Annex A (informative) Overview and Introduction
A.1 Section Overview
A.2 Core Concepts
A.3 Physical structure of the media
A.4 Temporal structure of the media
A.5 Interleave
A.6 Composition
A.7 Random access
A.8 Fragmented movie files
Annex B (void)
Annex C (informative) Guidelines on deriving from this specification
C.1 Introduction
C.2 General Principles
C.2.1 General
C.2.2 Base layer operations
C.3 Boxes
C.4 Brand Identifiers
C.4.1 Introduction
C.4.2 Usage of the Brand
C.4.3 Introduction of a new brand
C.4.4 Player Guideline
C.4.5 Authoring Guideline
C.4.6 Example
C.5 Storage of new media types
C.6 Use of Template fields
C.7 Tracks
C.7.1 Data Location
C.7.2 Time
C.7.3 Media Types
C.7.4 Coding Types
C.7.5 Sub-sample information
C.7.6 Sample Dependency
C.7.7 Sample Groups
C.7.8 Track-level
C.7.9 Protection
C.8 Construction of fragmented movies
C.9 Meta-data
C.10 Registration
C.11 Guidelines on the use of sample groups, timed metadata tracks, and sample auxiliary information
AnnexD (informative) RegistrationAuthority
D.1 Code points to be registered
D.2 Procedure for the request of an MPEG-4 registered identifier value
D.3 Responsibilities of the Registration Authority
D.4 Contact information for the Registration Authority
D.5 Responsibilities of Parties Requesting a RID
D.6 Appeal Procedure for Denied Applications
D.7 Registration Application Form
D.7.1 Contact Information of organization requesting a RID
D.7.2 Request for a specific RID
D.7.3 Short description of RID that is in use and date system was implemented
D.7.4 Statement of an intention to apply the assigned RID
D.7.5 Date of intended implementation of the RID
D.7.6 Authorized representative
D.7.7 For official use of the Registration Authority
Annex E (normative) File format brands
E.1 Introduction
E.2 The ‘isom’ brand
E.3 The ‘avc1’ brand
E.4 The ‘iso2’ brand
E.5 The ‘mp71’ brand
E.6 The ‘iso3’ brand
E.7 The ‘iso4’ brand
E.8 The ‘iso5’ brand
E.9 The ‘iso6’ brand
E.10 The ‘iso7’ brand
E.11 The ‘iso8’ brand
E.12 The ‘iso9’ brand
Annex F (void)
Annex G (informative) URI-labelled metadata forms
G.1 UUID-labelled metadata
G.2 ISO OID-labelled metadata
G.3 SMPTE-labelled metadata
Annex H (informative) Processing of RTP streams and reception hint tracks
H.1 Introduction
H.1.1 Overview
H.1.2 Structure
H.1.3 Terms and definitions
H.2 Synchronization of RTP streams
H.3 Recording of RTP streams
H.3.1 Introduction
H.3.2 Compensation for unequal starting for position of received RTP streams
H.3.3 Recording of SDP
H.3.4 Creation of a sample within an RTP reception hint track
H.3.5 Representation of RTP timestamps
H.3.6 Recording operations to facilitate inter-stream synchronization in playback
H.3.7 Representation of reception times
H.3.8 Creation of media samples
H.3.9 Creation of hint samples referring to media samples
H.4 Playing of recorded RTP streams
H.4.1 Introduction
H.4.2 Preparation for the playback
H.4.3 Decoding of a sample within an RTP reception hint track
H.4.4 Lip synchronization
H.4.5 Random access
H.5 Re-sending recorded RTP streams
H.5.1 Introduction
H.5.2 Re-sending RTP packets
H.5.3 RTCP Processing
Annex I (normative) Stream Access Points
I.1 Introduction
I.2 SAP properties
I.2.1 General
I.2.2 SAP properties for layers
I.3 SAP types
Annex J (normative) MIME Type Registration of Segments
J.1 Introduction
J.2 Registration
Annex K : Segment Index Examples (informative)
K.1 Introduction
K.2 Examples
K.2.1 Simple one-level indexing
K.2.2 Hierarchical
K.2.3 Daisy-chain
K.2.4 Combination hierarchical and daisy-chain
Bibliography