1、 Copyright 2011 by THE SOCIETY OF MOTION PICTURE AND TELEVISION ENGINEERS 3 Barker Avenue, White Plains, NY 10607 (914) 761-1100 Approved August 23, 2011 Table of Contents Page Foreword . 2 Intellectual Property 3 Introduction 3 1 Scope 42 Conformance Notation 43 Normative References 44 Glossary of
2、Acronyms, Terms and Data Types 55 MPEG Wrapping . 65.1 Basics of Wrapping: Frames and Access Units . 6 5.2 Wrapping Options . 6 5.2.1 Overview . 6 5.2.2 Empty and Variable Elements . 6 5.2.3 MPEG in the Generic Container 7 5.2.4 Interleaving Guidelines 7 6 MXF Tracks . 76.1 MXF Tracks and MPEG Conte
3、nt. 7 7 Mapping MPEG into the Generic Container . 87.1 Frame (Video AU) Wrapping 8 7.1.1 Interleaving Rules 9 7.1.2 Wrapping 3:2 Sequences 10 7.2 Clip Wrapping 10 7.3 Custom Wrapping . 10 8 KLV Coding of MPEG Elements . 118.1 KLV Coding for MPEG Video Streams 11 8.1.1 Picture Element Key . 11 8.2 KL
4、V Coding for MPEG Audio Streams 12 8.2.1 Sound Element Key 12 8.2.2 Multi-Channel Audio . 13 8.3 KLV Coding for MPEG Streams Other than Video or Audio 13 8.3.1 Data Element Key . 13 8.4 Use of KLV Fill Items . 14 8.5 Use of KAG . 14 Page 1 of 39 pages SMPTE ST 381-2:2011 SMPTE STANDARD Material Exch
5、ange Format (MXF) Mapping MPEG Streams into the MXF Constrained Generic Container SMPTE ST 381-2:2011 Page 2 of 39 pages 9 SMPTE Label for Essence Container Identification 149.1 MPEG Essence Container Label Definition 14 10 Essence Descriptors for MPEG Mappings 1610.1 MPEG Descriptors . 16 10.2 MPEG
6、 Video Descriptor 16 10.2.1 Key for the MPEG Video Descriptor . 18 10.3 MPEG-4 Visual Sub Descriptor . 18 10.3.1 Key for the MPEG-4 Visual Sub Descriptor 20 10.3.2 Class model of the MPEG-4 Visual Sub Descriptor (Informative) . 20 10.4 MPEG Audio Descriptor 21 10.4.1 Key for the MPEG Audio Descripto
7、r 21 11 Index Table Requirements for MPEG Mappings . 2111.1 Setting the Properties in an Index Entry 21 Annex A Bibliography (Informative) . 24Annex B Index Tables for MPEG Mappings (Informative) . 25B.1 Edit Units and Index Tables 25 B.2 Index Table Example for Frame Wrapped CBE MPEG Essence 25 B.3
8、 Index Table Example for Clip Wrapped CBE MPEG Essence . 27 Generic Container . 30B.4 Index Table Example for Frame Wrapped VBE MPEG Essence with Extra Items in the GenericContainer 35B.5 Index Table Example for Clip Wrapped VBE MPEG Essence with Extra Items in the B.6 Indexing of Fill Items . 38 An
9、nex C Identifying MPEG Picture Type and Finding MPEG Content on the Timeline (Informative) . 39C.1 Identification of MPEG Picture Type. 39 C.1.1 Identifying MPEG Picture Type Using Frame Wrapping Without an Index Table 39 C.1.2 Identifying MPEG Picture Type Using an Index Table . 39 Foreword SMPTE (
10、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. SMPTEs Engineering Documents, including Standards, Rec
11、ommended 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 organizations, including ISO, IEC and ITU. SMPTE Engineering
12、 Documents are drafted in accordance with the rules given in Part XIII of its Administrative Practices. SMPTE ST 381-2 was prepared by Technology Committee 31FS. SMPTE ST 381-2:2011 Page 3 of 39 pages Intellectual Property At the time of publication no notice had been received by SMPTE claiming pate
13、nt rights essential to the implementation of this Standard. 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. Introduction This section is e
14、ntirely informative and does not form an integral part of this Engineering Document. SMPTE ST 381 is a multi-part standard. SMPTE ST 381-1 is the renumbered archived version of SMPTE 381M-2005. SMPTE ST 381-2, this part, has been created to update SMPTE 381M-2005 by providing clarification of text a
15、nd updating existing provisions to promote interoperability. Users of SMPTE ST 381-1 and SMPTE ST 381-2 need to be aware that SMPTE ST 381-1 refers only to the Generic Container within SMPTE ST 379-1, not SMPTE ST 379-2, while SMPTE ST 381-2 refers only to the Generic Container within SMPTE ST 379-2
16、, not SMPTE ST 379-1. SMPTE ST 381-2, this part, defines the synchronization requirements and mechanisms for mapping MPEG material within MXF including the definition of the MPEG Video and Audio Descriptors, Essence Element Keys, and an Essence Container Label for MPEG streams into MXF along with CB
17、E and VBE indexing of MPEG content using Index Tables. The SMPTE ST 381 multi-part specification on the MXF MPEG mapping was developed using a number of fundamental requirements. These requirements are the following: Preserve timing in any MPEG system stream. Preserve timing when de-multiplexing a s
18、ystem stream and converting to MPEG ES wrapping. Preserve the MPEG buffer model so that when the MPEG is removed, the buffer model is preserved when this is required. Encapsulate MPEG PES without knowledge of the contents. Provide a mechanism for key frame identification. No change of original MPEG
19、data order, this will facilitate recording an MPEG stream in MXF and playing out an MPEG stream from MXF. Small CPU and memory needs for both recording and playing out. Covers all possible types of MPEG data: MPEG-2 TS, PS, MPEG-1 system, MPEG-1 and MPEG-2 PES, video ES, audio ES, private streams an
20、d other derived format such as DVD-VOB (DVD Video Object), VCD (Video CD), etc. Facilitate access to individual Access Units. Possibility to wrap the MPEG stream based on main level elements for storage critical environments. SMPTE ST 381-2:2011 Page 4 of 39 pages 1 Scope This standard specifies the
21、 mapping of video and audio MPEG ES, as identified by an ISO/IEC 13818-1 stream_id value, as well as the carriage of data streams extracted from higher level MPEG multiplexes, into the MXF Generic Container described in SMPTE ST 379-2. This includes, but is not limited to, ISO/IEC 13818-2 MPEG video
22、 stream, ISO/IEC 11172-2 MPEG video streams, ISO/IEC 14496-2 MPEG visual streams, ISO/IEC 14496-10 video streams, ISO/IEC 13818-3 MPEG audio streams, ISO/IEC 11172-3 MPEG audio streams, and ISO/IEC 14496-3 MPEG audio streams. It does not include ISO/IEC 14496-15 video streams. The document outlines
23、single stream mapping and synchronized multi-stream mapping along with synchronization requirements for the MXF encapsulation of co-timed MPEG Essence streams. This standard defines SMPTE universal labels to be used to uniquely identify specific MPEG implementations. The Essence Element Keys and an
24、Essence Container Label for MPEG streams are detailed along with CBE and VBE indexing of MPEG content using Index Tables. In order to achieve interoperability within any given Operational Pattern, restrictions may be placed on the way in which this Essence Container can be implemented. The reader is
25、 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: “shall“, “should“, or “may“. Informative text is t
26、ext 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 default, normative, except: the Introduction, any sec
27、tion 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. The keywords, “should“ and “should not“ indicate
28、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 or course of action is deprecated but not prohibi
29、ted. 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 keyword “forbidden” indicates “reserved” and in add
30、ition 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 conformant implementation need not impleme
31、nt 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. Tables shall be next, followed by formal lang
32、uages, then figures, and then any other language forms. 3 Normative References Note: All references in this document to other SMPTE documents use the current numbering style (e.g. SMPTE ST 336:2007) although, during a transitional phase, the document as published (printed or PDF) may bear an older d
33、esignation (such as SMPTE 336M-2007). Documents with the same root number (e.g. 336) and publication year (e.g. 2009) are functionally identical. SMPTE ST 381-2:2011 Page 5 of 39 pages The following standards contain provisions which, through reference in this text, constitute provisions of this sta
34、ndard. 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 standards indicated below. SMPTE ST 336:2007, Data En
35、coding Protocol using Key-Length-Value SMPTE ST 377-1:2011, Material Exchange Format (MXF) File Format Specification SMPTE ST 379-2:2010, Material Exchange Format (MXF) MXF Constrained Generic Container ISO/IEC 13818-1:2007, Information Technology Generic Coding of Moving Pictures and Associated Aud
36、io Information Part 1: Systems ISO/IEC 13818-2:2000, Information Technology Generic Coding of Moving Pictures and Associated Audio Information Part 2: Video ISO/IEC 13818-3:1998, Information Technology Generic Coding of Moving Pictures and Associated Audio Information Part 3: Audio ISO/IEC 13818-7:2
37、004, Information Technology Generic Coding of Moving Pictures and Associated Audio Information Part 7: Advanced Audio Coding (AAC) ISO/IEC 14496-2:2004, Information Technology Coding of Audio Visual Objects Part 2:Visual ISO/IEC 14496-10:2009, Information Technology Coding of Audio Visual Objects Pa
38、rt 10: Advanced Video Coding or ITU-T Recommendation H.264 Advanced Video Coding for Generic Audio-Visual Services 4 Glossary of Acronyms, Terms and Data Types For the purposes of this document, the terms and definitions given in the previous section containing the normative references within this d
39、ocument and the following apply. AAC: Advanced Audio Coding Audio AU: The full definition of an Access Unit (AU) for audio is given in ISO/IEC 13818-1, but is summarized as the following: 1 Audio AU = The coded representation of an audio frame. AVC/H.264: Advanced Video Coding ISO/IEC 14496-10 (Part
40、 10) | ITU-T Rec. H.264 BWF: Broadcast Wave Format for audio (see SMPTE ST 382) ES: Elementary Stream GOP: Group of Pictures GOV: Group of VOP MPEG-1: ISO/IEC 11172 MPEG-2: ISO/IEC 13818 MPEG-4 Visual: ISO/IEC 14496-2 SMPTE ST 381-2:2011 Page 6 of 39 pages Video AU: The full definition of an Access
41、Unit (AU) for video is given in ISO/IEC 13818-1, but is summarized as the following: 1 Video AU = The coded data for a picture and any stuffing that follows it up to, but not including, the start of the next AU. If a picture is not preceded by a group_start_code or a sequence_header_code, the AU beg
42、ins with a picture_start_code. If a picture is preceded by a group_start_code or a sequence_header_code, the AU begins with the first byte of these start codes. If it is the last picture preceding a sequence_end_code in the bit stream all bytes between the last bytes of the coded picture and the seq
43、uence_end_code (including the sequence_end_code) belong to the AU. VO: Visual Object VOL: Video Object Layer VOP: Video Object Plane VOS: Visual Object Sequence 5 MPEG Wrapping 5.1 Basics of Wrapping: Frames and Access Units The MPEG video specifications enable the compression of picture-based video
44、. These pictures can be frames or fields. The MPEG specification provides signaling for the number of pixels in the picture, the field/frame rate and other parameters including the aspect ratio of the pixels. Many of these parameters will be copied into the MXF Essence Descriptor. The text in this d
45、ocument refers to Access Units (AUs) rather than pictures. The full definition of an AU for video and audio is given in ISO/IEC 13818-1 and a summary of an Audio AU and a Video AU is given in the glossary of this document. Note: The Video AU Duration might not be the same as Audio AU Duration in an
46、MPEG stream. 5.2 Wrapping Options 5.2.1 Overview The MXF Generic Container described in SMPTE ST 379-2 consists of one or more contiguous KLV wrapped Content Packages. When wrapping every Video AU of long GOP MPEG, the frames shall be wrapped in transmission order rather than display order. When int
47、erleaving uncompressed audio samples in the same Content Package, the audio samples shall not be reordered to match the video. If the video is at a frame rate of 29.97 fps and the audio is sampled at 48 kHz, then there will be a varying number of audio samples in the Content Packages as a result of
48、the complex relationship of the clocks. 5.2.2 Empty and Variable Elements When a wrapping algorithm does not require data from a particular element, the element may be empty within the Content Package. Elements within a Content Package may vary in size from one Content Package to another. These vari
49、ations can be quite large and in the limit, the data for an element may not be present at all. In the case where a particular element has no Essence data to wrap, the KLV coded element shall be empty within the Content Package (i.e. the length will be zero and there will be no value data). SMPTE ST 379-2 contains further details on requirements for elements within a Content Package. SMPTE ST 381-2:2011 Page 7 of 39 pages 5.2.3 MPEG in the Generic Contain