1、 Approved July 29, 2013 Copyright 2013 by THE SOCIETY OF MOTION PICTURE AND TELEVISION ENGINEERS 3 Barker Avenue., White Plains, NY 10601 (914) 761-1100 WD Table of Contents Page Foreword . 2 Intellectual Property 2 1 Scope . 3 2 Conformance Notation . 3 3 Normative References . 4 4 Definition of Ac
2、ronyms, Terms and Data Types 4 5 Technical Introduction (Informative) . 5 5.1 AVC Coding Summary . 5 5.2 Requirements of Mapping AVC Streams into MXF . 5 6 Mapping the AVC Streams to the MXF Generic Container . 6 7 Key-Length-Value Coding 6 7.1 Picture Element Key . 6 7.2 Picture Element Length 6 7.
3、3 Picture Element Value 7 8 SMPTE Label Values . 7 8.1 Essence Container Label . 7 8.2 Picture Essence Coding Label . 8 9 Essence Descriptor for AVC Mapping . 10 9.1 AVC Sub Descriptor . 10 9.2 Key for the AVC Sub Descriptor . 13 10 Index Table for AVC Mapping . 14 Annex A Bibliography (Informative)
4、 17 Annex B Property Values of Picture Essence Descriptors (Informative) . 18 Annex C Possible Structure of AVC Long GOP (Informative) . 20 SMPTE ST 381-3:2013 Revision of RP 2008-2008 SMPTE STANDARD Page 1 of 21 pages Material Exchange Format Mapping AVC Streams into the MXF Generic Container SMPTE
5、 ST 381-3:2013 Page 2 of 21 pages Foreword SMPTE (the Society of Motion Picture and Television Engineers) is an internationally-recognized standards developing organization. Headquartered and incorporated in the United States of America, SMPTE has members in over 80 countries on six continents. SMPT
6、Es Engineering Documents, including Standards, Recommended Practices, and Engineering Guidelines, are prepared by SMPTEs Technology Committees. Participation in these Committees is open to all with a bona fide interest in their work. SMPTE cooperates closely with other standards-developing organizat
7、ions, including ISO, IEC and ITU. SMPTE Engineering Documents are drafted in accordance with the rules given in Part XIII of its Operations Manual. SMPTE ST 381-3 was prepared by Technology Committee 31FS. Intellectual Property At the time of publication no notice had been received by SMPTE claiming
8、 patent rights essential for the implementation of this Engineering Document. However, attention is drawn to the possibility that some of the elements of this document may be the subject of patent rights. SMPTE shall not be held responsible for identifying any or all such patent rights. SMPTE ST 381
9、-3:2013 Page 3 of 21 pages 1 Scope This standard specifies the mapping of all AVC coding data as defined in ISO/IEC 14496-10 | Rec. ITU-T H.264 into the Material Exchange Format Generic Container (MXF-GC) based on the MXF MPEG mapping standard (SMPTE ST 381-2). This standard does not apply to Annexe
10、s G (SVC) or H (MVC) of the AVC standard. The mapping of SVC and MVC might be covered by other SMPTE documents. This standard also does not support the AVC file format (ISO/IEC 14496-15). This document specifies the carriage of parameter sets in an AVC essence stream In-band. The MXF specification i
11、s written in several parts. This is an MXF mapping specification that defines header metadata sets and values, essence container elements and index table application. In order to achieve interoperability within any given Operational Pattern, restrictions may be placed on the way in which this Generi
12、c Container type can be implemented. The reader is advised to carefully study the appropriate Operational Pattern document before implementation. 2 Conformance Notation Normative text is text that describes elements of the design that are indispensable or contains the conformance language keywords:
13、“shall“, “should“, or “may“. Informative text is text that is potentially helpful to the user, but not indispensable, and can be removed, changed, or added editorially without affecting interoperability. Informative text does not contain any conformance keywords. All text in this document is, by def
14、ault, normative, except: the Introduction, any section explicitly labeled as “Informative“ or individual paragraphs that start with “Note: The keywords “shall“ and “shall not“ indicate requirements strictly to be followed in order to conform to the document and from which no deviation is permitted.
15、The keywords, “should“ and “should not“ indicate that, among several possibilities, one is recommended as particularly suitable, without mentioning or excluding others; or that a certain course of action is preferred but not necessarily required; or that (in the negative form) a certain possibility
16、or course of action is deprecated but not prohibited. The keywords “may“ and “need not“ indicate courses of action permissible within the limits of the document. The keyword reserved indicates a provision that is not defined at this time, shall not be used, and may be defined in the future. The keyw
17、ord forbidden indicates reserved and in addition indicates that the provision will never be defined in the future. A conformant implementation according to this document is one that includes all mandatory provisions (“shall“) and, if implemented, all recommended provisions (“should“) as described. A
18、 conformant implementation need not implement optional provisions (“may“) and need not implement them as described. Unless otherwise specified, the order of precedence of the types of normative information in this document shall be as follows: Normative prose shall be the authoritative definition; T
19、ables shall be next; followed by formal languages; then figures; and then any other language forms. SMPTE ST 381-3:2013 Page 4 of 21 pages 3 Normative References Note: All references in this document to other SMPTE documents use the current numbering style (e.g. SMPTE ST 379-1:2009) although, during
20、 a transitional phase, the document as published (printed or PDF) may bear an older designation (such as SMPTE 379-1-2009). Documents with the same root number (e.g. 379-1) and publication year (e.g. 2009) are functionally identical. The following standards contain provisions which, through referenc
21、e in this text, constitute provisions of this standard. At the time of publication, the editions indicated were valid. All standards are subject to revision, and parties to agreements based on this standard are encouraged to investigate the possibility of applying the most recent edition of the stan
22、dards indicated below. SMPTE ST 377-1:2011, Material Exchange Format (MXF) File Format Specification SMPTE ST 379-1:2009, Material Exchange Format (MXF) MXF Generic Container SMPTE ST 379-2:2010, Material Exchange Format (MXF) MXF Constrained Generic Container SMPTE ST 381-2:2011, Material Exchange
23、Format (MXF) Mapping MPEG Streams into the MXF Constrained Generic Container ISO/IEC 13818-1:2007, Information technology Generic coding of moving pictures and associated audio information: Systems ISO/IEC 13818-1:2007/Amd 3:2009, Transport of scalable video over Rec. ITU-T H.222.0 | ISO/IEC 13818-1
24、 ISO/IEC 14496-10 | Rec. ITU-T H.264 (2012), Information technology Coding of audio-visual objects Advanced Video Coding 4 Definition of Acronyms, Terms and Data Types 4.1 The general glossary of acronyms, terms and data types used in the MXF specification is given in SMPTE ST 377-1, SMPTE ST 379-1
25、and SMPTE ST 379-2. Definitions of terms, abbreviations and symbols relating to AVC are given in ISO/IEC 14496-10 | Rec. ITU-T H.264. 4.1.1 AVC Advanced Video Coding as documented in ISO/IEC 14496-10 I Rec. ITU-T H.264 (also termed MPEG-4 Part 10) 4.1.2 NAL Network Abstraction Layer 4.2 The followin
26、g terms are not defined in the AVC specification, but are defined here as properties in the Descriptor and the Index Table Entry. The terms are applicable only to the MXF AVC wrapping defined in this standard. 4.2.1 Picture a collective term for a frame or a field 4.2.2 I Picture picture consisting
27、only of I-Slices SMPTE ST 381-3:2013 Page 5 of 21 pages 4.2.3 non-IDR I Picture I Picture other than IDR-Picture 4.2.4 P Picture picture consisting of P-Slices, or P-Slices and I-Slices 4.2.5 B Picture picture consisting of B-Slices, or B-Slices and P-Slices, or B-Slices, P-Slices and I-Slices 4.2.6
28、 Br Picture B Picture with nal_ref_idc nonzero. A B Picture that is available as a reference for another Picture 4.2.7 GOP this term is not defined in the AVC specification, but is widely used in the industry, and is defined for the purposes of this standard: Group of Pictures starting with I Pictur
29、e in coded order 4.2.8 Key Picture the earliest preceding I Picture required for decoding the indexed Picture 4.2.9 Parameter sets sequence parameter sets and picture parameter sets 4.2.10 In-band parameter sets are carried in an AVC essence stream 5 Technical Introduction (Informative) 5.1 AVC Codi
30、ng Summary The AVC (Advanced Video Coding) standard defined in the ISO/IEC 14496-10 | Rec. ITU-T H.264 has been developed as an advanced high performance compression technology. In the AVC coding streams, the bit stream can be in one of two formats: the NAL unit stream or the byte stream. The NAL un
31、it stream format consists of a sequence of NAL unit syntax structures. The byte stream format can be constructed from the NAL unit stream by prefixing each NAL unit with a start code prefix and zero or more zero-valued bytes to form a stream of bytes. 5.2 Requirements of Mapping AVC Streams into MXF
32、 The specification on the MXF AVC mapping was developed using a number of fundamental requirements. These requirements are the following: SMPTE ST 381-3:2013 Page 6 of 21 pages The mapping needs to support the NAL unit stream format and the byte stream format. AVC streams need to be wrapped using th
33、e MPEG Picture Element Key as defined in SMPTE ST 381-2. The Picture Element can contain all variants of AVC coding streams using frame-wrapping, clip- wrapping, or custom wrapping. The mapping needs to support carriage of sequence parameter sets and picture parameter sets In-band. Full details of t
34、he precise AVC stream need to be specified in the Essence Descriptor and AVC coding variants need to be specified in the Picture Essence Coding Label. A Sub-Descriptor needs to be specified to give information on AVC streams. This document meets the above requirements for the MXF mapping of the AVC
35、streams. 6 Mapping the AVC Streams to the MXF Generic Container The mapping of the AVC stream shall use the MXF Generic Container in the Frame-based wrapping, Clip-based wrapping or the Custom wrapping as defined in SMPTE ST 379-1 and SMPTE ST 379-2. 7 Key-Length-Value Coding 7.1 Picture Element Key
36、 AVC streams shall be wrapped using the MPEG Picture Element Key as defined in SMPTE ST 381-2. The values of the first 12 bytes of the Essence Element Key are defined in SMPTE ST 379-1 and SMPTE ST 379-2. The values of the last four bytes of the Picture Element Key are given in Table 1. Table 1 Key
37、Value for the MPEG Picture Element (Informative) Byte No. Description Value (hex) Meaning 1-12 Specified by the MXF Generic Container Specification, SMPTE ST 379-1 and SMPTE ST 379-2 13 Item Type Identifier 15h Generic Container Picture Item (as defined in SMPTE ST 379-1 and SMPTE ST 379-2) 14 Essen
38、ce Element Count kkh Count of Picture Elements in this Picture Item 15 Essence Element Type 05h 06h 07h Frame Wrapped Picture Element Clip Wrapped Picture Element Custom Wrapped Picture Element 16 Essence Element Number nnh The Number (used as an Index) of this Picture Element in this Picture Item 7
39、.2 Picture Element Length The length field of the KLV coded Element shall be 4 bytes BER long-form encoded (i.e. 83h.xx.yy.zz) for Frame wrapping. The length field of the KLV coded Element shall be 8 bytes BER long-form encoded (i.e., 87h.aa.bb.cc.dd.ee.ff.gg) for Clip wrapping. For Custom wrapping,
40、 the length field shall be constant for all Edit Units of the essence container and shall be either 4 bytes or 8 bytes as appropriate. SMPTE ST 381-3:2013 Page 7 of 21 pages 7.3 Picture Element Value The Picture Element Values shall be the AVC NAL unit stream or the AVC byte stream. The bit streams
41、carried in the Value field shall contain complete NAL units including their relevant parameter sets, other Supplemental Enhancement Information (SEI) and padding zeroes. Note: Stream format is defined in the Byte 14 of the Essence Container Label described in Section 8.1. If a field-encoded stream i
42、s frame-wrapped, the Value field shall contain two fields, with a frame comprising a pair of fields, and byte 15 of the Picture Element Key shall be 05h (frame-wrapped). The Edit Rate of the Track that links such an Essence Container Element shall equal the frame rate. If a field-encoded stream is f
43、ield-wrapped, the Value field shall contain a single field, and byte 15 of the Picture Element Key shall be 05h (frame-wrapped). The Edit Rate of the Track that links such an Essence Container Element shall equal the field rate. The frame-wrapping or the field-wrapping shall be signaled by the Essen
44、ce Container Label (see Table 2). 8 SMPTE Label Values 8.1 Essence Container Label This Essence Container Label is the UL value carried in the Essence Containers Properties of the Partition Packs, Preface Set and File Descriptor. The values of the Essence Container Label for the AVC coding shall be
45、as shown in Table 2. Table 2 Specification of the AVC Essence Container Label Byte No. Description Value (hex) Meaning 1-12 Specified by the MXF Generic Container Specification, SMPTE ST 379-1 and SMPTE ST 379-2 13 Essence Container Kind 02h MXF Generic Container (as defined in SMPTE ST 379-1 and SM
46、PTE ST 379-2) 14 Mapping Kind 0Fh 10h AVC NAL unit stream AVC byte stream 15 Locally defined xxh ISO/IEC 13818-1 stream id bits 60 The default value is 60h. 16 Locally defined yyh 00h: Not used 01h: Frame Wrapping 02h: Clip Wrapping 03h Custom: Stripe Wrapping 04h Custom: PES 06h Custom: Splice 07h
47、Custom: Closed GOP 08h Custom: Slave 09h: Frame (Field) Wrapping 0Ah - 7Eh: Reserved Byte 14 identifies the container as the MPEG mapping into the Generic Container. The value of byte 14 shall be set to 0Fh for the AVC NAL unit stream and 10h for the AVC byte stream. SMPTE ST 381-3:2013 Page 8 of 21
48、 pages Notes: 1 The custom wrappings (byte 16 values of 03h, 04h, 06h, 07h and 08h) are as defined in SMPTE ST 381-2 which inherits the definition from SMPTE ST 381-1. 2 Essence Container Label version is as follows: For byte 16 values 01, 02, 03, 04, 06, 07 and 08h, the correct version is 0Ah. For
49、byte16 value 09h, the correct version is 0Dh. 8.2 Picture Essence Coding Label The Picture Essence Coding Label is used in the Generic Picture Essence Descriptor. The values for the Picture Essence Coding Label for the AVC are given in Table 3. These Label values are listed in the SMPTE Labels Registry, RP 224. Table 3 Specification of the Picture Essence Coding Label Byte No. Description Value (hex) Meaning 1-8 Registry Designator See SMPTE ST 400 Designator value is defined in SMPTE ST 400 9 Parametric 04h