1、 Table of Contents Page Foreword . 2 Intellectual Property 2 Introduction 2 1 Scope . 32 Conformance Notation . 33 Normative References . 34 Description of Materials 44.1 Reference Decoder Software . 44.2 Test Bitstream 44.3 Sample Encoder Software (Informative) 55 Conformance Testing Procedure . 55
2、.1 Decoder Testing Procedure . 55.2 Bitstream Testing Procedure . 6Annex A Test Bitstream Summary (Normative) 7A.1 Main Profile with Coarse Grain Scalability (CGS), Median Grain Scalability (MGS) and Spatial Scalability 7A.2 High Profile with Coarse Grain Scalability (CGS), Median Grain Scalability
3、(MGS) and Spatial Scalability 8A.3 High 4:2:2 Profile with Spatial Scalability . 9A.4 High 4:4:4 Profile with Spatial Scalability . 10A.5 High Intra 4:4:4 Profile with Coarse Grain Scalability (CGS) and Spatial Scalability 11Annex B Test Materials Inventory (Informative) 12Annex C Bibliography (Info
4、rmative) 18Page 1 of 18 pages SMPTE RP 2058-2:2011 SMPTE RECOMMENDED PRACTICE VC-4 Decoder and Bitstream Conformance Copyright 2011 by THE SOCIETY OF MOTION PICTURE AND TELEVISION ENGINEERS 3 Barker Avenue, White Plains, NY 10601 (914) 761-1100 Approved October 3, 2011 SMPTE RP 2058-2:2011 Page 2 of
5、 18 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. SMPTEs Engineering Documents
6、, 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 organizations, including ISO, IEC
7、 and ITU. SMPTE Engineering Documents are drafted in accordance with the rules given in Part XIII of its Administrative Practices. SMPTE RP 2058-2 was prepared by Technology Committee 10E on Essence. Intellectual Property SMPTE draws attention to the fact that it is claimed that compliance with this
8、 Standard may involve the use of one or more patents or other intellectual property rights (collectively, “IPR“). The Society takes no position concerning the evidence, validity, or scope of this IPR. Each holder of claimed IPR has assured the Society that it is willing to License all IPR it owns, a
9、nd any third party IPR it has the right to sublicense, that is essential to the implementation of this Standard to those (Members and non-Members alike) desiring to implement this Standard under reasonable terms and conditions, demonstrably free of discrimination. Each holder of claimed IPR has file
10、d a statement to such effect with SMPTE. Information may be obtained from the Director, Standards 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 prohibited. The keywords “may
11、“ 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 addition indicates that t
12、he provision will never be defined in the future. 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 languages; then figures; a
13、nd 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 421:2006) although, during a transitional phase, the document as published (printed or PDF) may bear an older designation (such as SM
14、PTE 421M-2006). Documents with the same root number (e.g. 421) and publication year (e.g. 2006) are functionally identical. The following standards contain provisions which, through reference in this text, constitute provisions of this recommended practice. At the time of publication, the editions i
15、ndicated were valid. All standards are subject to revision, and parties to agreements based on this recommended practice are encouraged to investigate the possibility of applying the most recent edition of the standards indicated below. SMPTE ST 421:2006, Television VC-1 Compressed Video Bitstream F
16、ormat and Decoding Process Amendment 1:2007 to SMPTE ST 421:2006 Amendment 2:2011 to SMPTE ST 421:2006 SMPTE ST 2058-1:2011, VC-4 Layered Video Extension Bitstream Format and Decoding Process SMPTE RP 2058-2:2011 Page 4 of 18 pages SMPTE VC-4 Reference Decoder Software Material SMPTE VC-4 Test Bitst
17、ream Material 4 Description of Materials 4.1 Reference Decoder Software The reference decoder shall be used for testing bitstream conformance and shall implement the complete decoding process specified in SMPTE ST 2058-1. The reference decoder in the form of Microsoft Visual C/C+ together with assoc
18、iated tools (Microsoft Visual Studio files for building running file, batch file for running the VC-4 codec and the execution file of a sample base layer codec (H.264) are available on the SMPTE ftp site ftp:/smpte-ra.org/Bitstreams. Here any other codec specified by other video coding standard shal
19、l be employed as the base layer codec. The ftp site of SMPTE provides the H.264 decoder in binary file form. The output format for the reference decoder is a head-less binary file of YCbCr 4:2:0, YCbCr 4:2:2 or YCbCr 4:4:4 with the separate planes written in N-bit sample order (Y, then Cb, then Cr).
20、 The color difference format of the output and the bit depth (expressed by N) are specified at the sequence header of each enhancement layer bitstream, while the color difference and the bit-depth of the base layer are specified by the corresponding base layer bitstream. For interlaced decoded frame
21、s, the output consists of full-height frames with interleaved fields. Because the decoding process itself is lossless, the output data from the reference decoder shall be the reference output for any given input bitstream. 4.2 Test Bitstream The set of bitstreams to be used for testing decoder confo
22、rmance is specified in Annex A and is available from SMPTE. All of the bitstreams shall conform to SMPTE ST 2058-1 as defined in Section 5.2 below. The encoding parameters shown in Section A.1 through Section A.5 are defined in SMPTE ST 2058-1. The set of test bitstream is not intended to represent
23、all possible combinations of encoding parameters and tools specified in SMPTE ST 2058-1. Rather, the set of bitstream was developed according to the following guidelines: Encoding parameters and tools normative to the decoding process are tested. The conformance of the base layer bitstream is not te
24、sted, as the base layer is outside of the scope of the SMPTE ST 2058-1 and the reconstruction from the base layer is related to make the output. The test bitstream set includes the base layer bitstream encoded by H.264 to test the VC-4 bitstream. The base layer bitstreams are identified by the suffi
25、x L0 of the bitstream name. For example, if the name of bitstream is LCHFMC_1_L0, this bitstream is the base layer bitstream. Parameters and tools are tested in isolation to allow for error diagnosis. Combinations of parameters and tools that represent edge conditions for the decoder are tested. Par
26、ameters and tools that have been thoroughly tested at lower levels of a particular profile are not tested as conformance is already guaranteed by the testing at the lower level of the profile. Parameters and tools specific to the display process are not tested, as the display process is outside the
27、scope of the SMPTE ST 2058-1. All profile bitstreams are provided as elementary bitstreams as defined in SMPTE ST 2058-1. The suffix of the bitstream name listed in Section A.1 through Section A.5 indicates the layer number. For example, if the bitstream name is LCHFMM_2_L1, this bitstream is corres
28、ponding to the first enhancement layer while if the SMPTE RP 2058-2:2011 Page 5 of 18 pages bitstream name is LCHFMM_2_L1L2, this bitstream includes the first enhancement layer and the second enhancement layer. 4.3 Sample Encoder Software (Informative) A sample encoder in the form of Microsoft Visua
29、l C/C+ together with associated tools. The sample encoder is included with the test materials described above for informational purposes only and is not used for any of the normative conformance tests described in the document. 5 Conformance Testing Procedure The following sub-sections describe the
30、normative tests for verifying conformance of a VC-4 video stream or decoder to SMPTE ST 2058-1. These conformance tests utilize the bitstream test suites (specified in Annex A of this document) and the reference software decoder available from SMPTE. 5.1 Decoder Testing Procedure Decoder testing pro
31、cedure is to verify that a candidate decoder implementation is conformant to the decoding process as specified in SMPTE ST 2058-1. Although a failure of any of the following tests is sufficient to identify the candidate decoder as non-conformant, successful completion of all tests represents a high
32、confidence of conformance but not absolute certainty. 5.1.1 Order Conformance Testing The purpose of order conformance testing is to the algorithmic correctness of a candidate decoder. Because VC-4 is specified as a bit-exact decoding process, full binary matching of the outputs of the candidate dec
33、oder and the reference decoder provides both highest possible confidence in the comparison and useful troubleshooting information in the event of failure. When processing the set of test bitstreams specified in Annex A, a decoder that outputs reconstructed samples identical to outputs by the referen
34、ce software decoder will be considered order conformant (as specified in Section 9.4 or Section 11.4 of SMPTE ST 2058-1). Order conformance testing is performed on the candidate implementation with no time restriction. Testing is performed by binary comparison of the data output by the candidate dec
35、oder at the conformance point to the data output by the reference decoder. Any binary mismatch is considered a failure. 5.1.2 Time Conformance Testing When processing the set of test bitstreams specified in Annex A, a decoder that conforms to the specification of Annex A of SMPTE ST 2058-1 or Annex
36、C.6 of SMPTE ST 421 will be considered time-conformant. Because the VC-4 uses the reconstruction outputs of the base layer, the outputs of the base layer to be used for making the output of the VC-4 shall be reconstructed before the reconstructed residuals are added to the output of the base layer (
37、Section 12 of SMPTE ST 2058-1). Since the VC-4 bitstreams represent enhancement layers, the outputs of a VC-4 decoder shall have the same PTS (presentation time stamp) as the output of the base layer. Since most digital video systems implement timing and synchronization at the transport level and el
38、ementary bitstreams have no intrinsic timing information, the constraints such as the time deadline for decoding process are outside the scope of the conformance testing process described in this document. 5.1.3 Recommendations (Informative) When the loss or corruption of part of bitstream happens,
39、it is recommended that a conformant decoder resumes the decoding process as soon as possible, for example at the following start code. When all coded data for a macroblock or video packet is not received, it is recommended that a conformant decoder perform concealment. SMPTE RP 2058-2:2011 Page 6 of
40、 18 pages 5.2 Bitstream Testing Procedure A bitstream shall be conformant if and only if all three of the conditions below are satisfied: The bitstream conforms to the syntax and semantics specified in SMPTE ST 2058-1 and The reference software decoder completes the decoding process for the bitstrea
41、m without reporting and warning and / or errors and The reference software decoder successfully and completely produces the following items for the bitstream: a) Output pictures with the color difference format which is defined at the sequence header of the highest enhancement layer when the base la
42、yer and all enhancement layers are decoded completely or b) Output pictures with the color difference format which is defined at the sequence header of the highest enhancement layer in the decoded bitstream when the base layer and the lowest one or few enhancement layers are decoded completely, and
43、other higher layers are ignored or not received at decoder. Note: When a conformant decoder receives the base layer bitstream and one VC-4 enhancement layer bitstream, the highest enhancement layer at the decoder is the first enhancement layer. Page 7 of 18 pages Annex A Test Bitstream Summary (Norm
44、ative) SMPTE RP 2058-2:2011 A.1 Main Profile with Coarse Grain Scalability (CGS), Median Grain Scalability (MGS) and Spatial Scalability Bitstream Name ScalabilityTypePROFILELEVELSource WidthSource HeightFrame RateNumber ofFramesLayerIDQualityLayerIDIPictureP PictureBPictureIntraPrediction4-MV(Motio
45、nVector)Quarter-pelMotionCompensation4:2:0 ColorDifference FormatAdaptiveCoefficientScanningBit-depthInterlacedPicturesPAFF (Picture-Adaptive Field/Frame)P2I_METHODQuantized-MatrixMultipleReferenceSmoothing1-DFilteredPrediction4:2:2Color Difference Format4:4:4Color Difference FormatLossless CodingNu
46、mber ofSlicesNumber ofEntryPointPicturesLCHFMC_1_L1 CGS 1 L1 832 480 29.97 200 1 - 1 1 0 0 1 1 1 0 8 - - - - - - - - - - 1 1 LCHFMC_1_L0 Base - - 832 480 29.97 200 0 - - - - - - - 1 - 8 - - - - - - - - - - 1 1 LCHFMC_2_L1L2 CGS 1 L2 1280 720 30 200 2 - 1 1 1 1 1 1 1 0 8 - - - - - - - - - - 1 1 (*) C
47、GS 1 L2 1280 720 30 200 1 - 1 1 1 1 1 1 1 0 8 - - - - - - - - - - 1 1 LCHFMC_2_L0 Base - - 1280 720 30 200 0 - - - - - - - 1 - 8 - - - - - - - - - - 1 1 LCHFMM_1_L1 MGS 1 L1 832 480 29.97 200 1 1 1 1 1 1 1 1 1 0 8 - - - - - - - - - - 1 1 (*) MGS 1 L1 832 480 29.97 200 1 0 1 1 1 1 1 1 1 0 8 - - - - -
48、 - - - - - 1 1 LCHFMM_1_L0 Base - - 832 480 29.97 200 0 - - - - - - - 1 - 8 - - - - - - - - - - 1 1 LCHFMM_2_L1 MGS 1 L2 1280 720 30 200 1 1 1 1 1 1 1 1 1 0 8 - - - - - - - - - - 1 1 (*) MGS 1 L2 1280 720 30 200 1 0 1 1 1 1 1 1 1 0 8 - - - - - - - - - - 1 1 LCHFMM_2_L0 Base - - 1280 720 30 200 0 - -
49、 - - - - - 1 - 8 - - - - - - - - - - 1 1 LCHFMS_1_L1 Spatial 1 L1 832 480 29.97 200 1 - 1 1 0 1 1 1 1 0 8 - - - - - - - - - - 1 1 LCHFMS_1_L0 Base - - 416 240 29.97 200 0 - - - - - - - 1 - 8 - - - - - - - - - - 1 1 LCHFMS_2_L1L2 Spatial 1 L2 1280 720 30 200 2 - 1 1 1 1 1 1 1 0 8 - - - - - - - - - - 1 1 (*) Spatial 1 L1 832 480 30 200 1 - 1 1 1 1 1 1 1 0 8 - - - - - - - - - - 1 1 LCHFMS_2_L0 Base - - 416 240 30 200 0 - - - - - - - 1 - 8 - - - - - - - - -