《JVT-Q042(参数解释).doc》由会员分享,可在线阅读,更多相关《JVT-Q042(参数解释).doc(60页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Joint Video Team (JVT) of ISO/IEC MPEG & ITU-T VCEG(ISO/IEC JTC1/SC29/WG11 and ITU-T SG16 Q.6)17th Meeting: Nice, FR, 14-21 October, 2005Document: JVT-Q042Filename: JVT-Q042.docTitle:Revised H.264/MPEG-4 AVC Reference Software ManualStatus:Input Document to JVTPurpose:Proposed Amended DraftAuthor(s)
2、 orContact(s):Alexis Michael TourapisFastVDO LLC7150 Riverwood Dr.Columbia, MD 1046 USAKarsten ShringImage Processing DepartmentFraunhofer-Institute HHIEinsteinufer 3710587 Berlin, GermanyGary SullivanMicrosoft CorporationOne Microsoft WayRedmond, WA 98052 USATel:+1 (408) 228-7983+49 30 31002-209+1
3、(425) 703-5308Email:alexismtieee.orgKarsten.Suehringhhi.fraunhofer.degarysull Source:FastVDO LLC, Fraunhofer-Institute HHI, Microsoft Corporation_Joint Video Team (JVT) of ISO/IEC MPEG & ITU-T VCEG(ISO/IEC JTC1/SC29/WG11 and ITU-T SG16 Q.6)H.264/MPEG-4 AVC Reference Software ManualOctober, 2005Revis
4、ion SheetRevision SheetRelease No.DateAuthorRevision DescriptionRev. 010/08/04AT/KS/GSInitial version of Reference Software ManualRev. 101/12/05AT/KS/GSAmendment to original document to reflect modified and new parametersRev. 201/18/05AT/KS/GSAmendment based on meeting notesRev. 302/15/05TOVarious D
5、ocument updatesRev. 404/13/05AT/KS/GSAddition of new parameters supported in software such as Fast Mode parameters and Adaptive Offset RoundingRev. 510/12/05ATParameter updates. Addition of new FME parametersAT:Alexis Michael Tourapis (alexismtieee.org)GS:Gary Sullivan (garysull)KS:Karsten Shring (K
6、arsten.Suehringhhi.fraunhofer.de)TO:Tobias Oelbaum (oelbaumtum.de)Users ManualPage i1. General InformationH.264/MPEG-4 AVC REFERENCE SOFTWARE MANUALTABLE OF CONTENTSPage #1.GENERAL INFORMATION1-11.0System Overview1-11.1Project References1-11.2Authorized Use Permission1-11.3Points of Contact1-11.3.1
7、Information1-11.3.2 Coordination1-21.4Organization of the Manual1-21.5Acronyms and Abbreviations1-22.INSTALLATION AND COMPILATION2-12.1Windows using MS Visual Studio 62-12.2Windows using MS Visual Studio .NET2-12.3UNIX and Windows using gcc (GNU Compiler Collection)2-13.USING THE JM ENCODER MODULE3-
8、13.1Encoder Syntax3-13.2Encoder Output3-24.ENCODER PARAMETERS4-14.1File Input/Output Related Parameters4-14.1.1 InputFile4-14.1.2 RGBInput4-14.1.3 YUVFormat4-14.1.4 BitDepthLuma4-14.1.5 BitDepthChroma4-24.1.6 InputHeaderLength4-24.1.7 FrameRate4-24.1.8 SourceWidth4-24.1.9 SourceHeight4-24.1.10 Start
9、Frame4-24.1.11 FramesToBeEncoded4-24.1.12 OutputFile4-34.1.13 ReconFile4-34.1.14 TraceFile4-34.1.15 ReportFrameStats4-34.1.16 DisplayEncParams4-34.2Primary Control Parameters4-34.2.1 ProfileIDC4-34.2.2 LevelIDC4-44.2.3 IntraPeriod4-44.2.4 EnableOpenGOP4-54.2.5 IDRIntraEnable4-54.2.6 QPISlice4-54.2.7
10、 QPPSlice4-54.2.8 ChromaQPOffset4-54.2.9 CbQPOffset4-54.2.10 CrQPOffset4-54.2.11 FrameSkip4-64.2.12 UseHadamard4-64.2.13 DisableSubpelME4-64.2.14 SearchRange4-64.2.15 NumberReferenceFrames4-64.2.16 PList0References4-74.2.17 Log2MaxFrameNum4-74.2.18 GenerateMultiplePPS4-74.2.19 ResendPPS4-74.2.20 Pic
11、OrderCntType4-74.2.21 UseConstrainedIntraPred4-74.2.22 MbLineIntraUpdate4-74.2.23 RandomIntraMBRefresh4-84.2.24 Inter/Intra Mode Prediction Control4-84.2.24.1 InterSearch16x164-84.2.24.2 InterSearch16x84-84.2.24.3 InterSearch8x164-84.2.24.4 InterSearch8x84-84.2.24.5 InterSearch8x44-84.2.24.6 InterSe
12、arch4x84-84.2.24.7 InterSearch4x44-84.2.24.8 Intra4x4ParDisable4-84.2.24.9 Intra4x4DiagDisable4-84.2.24.10 Intra4x4DirDisable4-94.2.24.11 Intra16x16ParDisable4-94.2.24.12 Intra16x16PlaneDisable4-94.2.24.13 IntraDisableInterOnly4-94.2.24.14 ChromaIntraDisable4-94.2.24.15 EnableIPCM4-94.2.25 Loop Filt
13、er Control4-94.2.25.1 LoopFilterParametersFlag4-94.2.25.2 LoopFilterDisable4-94.2.25.3 LoopFilterAlphaC0Offset4-104.2.25.4 LoopFilterBetaOffset4-104.2.26 Weighted Prediction Parameters4-104.2.26.1 WeightedPrediction4-104.2.26.2 WeightedBiprediction4-104.2.26.3 UseWeightedReferenceME4-104.2.27 LastFr
14、ameNumber4-104.2.28 ChangeQPStart4-104.2.29 ChangeQPI4-114.2.30 ChangeQPP4-114.2.31 ChangeQPB4-114.2.32 ChangeQPBSRefOffset4-114.3Secondary Layer Parameters4-114.3.1 NumberBFrames4-114.3.2 QPBSlice4-114.3.3 BRefPicQPOffset4-114.3.4 DirectModeType4-114.3.5 DirectInferenceFlag4-114.3.6 BList0Reference
15、s4-124.3.7 BList1References4-124.3.8 BRefeferencePictures4-124.3.9 BiPredMotionEstimation4-124.3.10 BiPredMERefinements4-124.3.11 BiPredMESearchRange4-134.3.12 BiPredMESubPel4-134.3.13 PyramidCoding4-134.3.14 ExplicitPyramidFormat4-154.3.15 PyramidRefReorder4-164.3.16 PocMemoryManagement4-164.4Error
16、 Resiliency and Slice control4-174.4.1 SliceMode4-174.4.2 SliceArgument4-174.4.3 num_slice_groups_minus14-174.4.4 slice_group_map_type4-174.4.5 slice_group_change_direction_flag4-174.4.6 slice_group_change_rate_minus14-184.4.7 SliceGroupConfigFileName4-184.4.8 UseRedundantSlice4-184.5SP coding suppo
17、rt4-184.5.1 SPPicturePeriodicity4-184.5.2 QPSPPicture4-184.5.3 QPSP2Picture4-184.6Output Control/Entropy Coding, NALs4-184.6.1 SymbolMode4-184.6.2 ContextInitMethod4-184.6.3 FixedModelNumber4-184.6.4 OutFileMode4-194.6.5 PartitionMode4-194.7Interlace Format Handling4-194.7.1 PicInterlace4-194.7.2 MB
18、Interlace4-194.7.3 IntraBottom4-204.8Non Normative Encoder Decisions4-204.8.1 RDOptimization4-204.8.2 RDPictureDecision4-204.8.3 RDPictureIntra4-214.8.4 RDPSliceWeightOnly4-214.8.5 RDBSliceWeightOnly4-214.8.6 UseExplicitLambdaParams4-214.8.7 LambdaWeightPslice4-214.8.8 LambdaWeightBslice4-214.8.9 La
19、mbdaWeightIslice4-214.8.10 LambdaWeightSPslice4-214.8.11 LambdaWeightRefBslice4-214.8.12 OffsetMatrixPresentFlag4-224.8.12.1 QOffsetMatrixFile4-224.8.13 AdaptiveRounding4-224.8.13.1 AdaptRndPeriod4-224.8.13.2 AdaptRndChroma4-224.8.13.3 AdaptRndWFactorIRef4-224.8.13.4 AdaptRndWFactorPRef4-224.8.13.5
20、AdaptRndWFactorBRef4-224.8.13.6 AdaptRndWFactorINRef4-224.8.13.7 AdaptRndWFactorPNRef4-234.8.13.8 AdaptRndWFactorBNRef4-234.8.14 LossRateA4-234.8.15 LossRateB4-234.8.16 LossRateC4-234.8.17 NumberOfDecoders4-234.8.18 RestrictRefFrames4-234.8.19 RestrictSearchRange4-234.8.20 DisableThresholding4-234.8
21、.21 DisableBSkipRDO4-244.8.22 SkipIntraInInterSlices4-244.8.23 UseFME4-244.8.24 EarlySkipEnable4-244.8.25 SelectiveIntraEnable4-244.8.26 Rate Control & HRD support4-244.8.26.1 RateControlEnable4-244.8.26.2 Bitrate4-254.8.26.3 InitialQP4-254.8.26.4 BasicUnit4-254.8.26.5 ChannelType4-254.8.26.6 Channe
22、lType4-254.8.26.7 NumberofLeakyBuckets4-254.8.26.8 LeakyBucketRateFile4-254.8.26.9 LeakyBucketParamFile4-254.9Other settings4-254.9.1 NumberFramesInEnhancementLayerSubSequence4-254.9.2 NumberOfFrameInSecondIGOP4-264.9.3 SparePictureOption4-264.9.4 SparePictureDetectionThr4-264.9.5 SparePicturePercen
23、tageThr4-264.10FRExt profile parameters4-264.10.1 Transform8x8Mode4-264.10.2 ResidueTransformFlag4-264.10.3 ScalingMatrixPresentFlag4-264.10.3.1 QmatrixFile4-274.10.3.2 ScalingListPresentFlag04-274.10.3.3 ScalingListPresentFlag14-274.10.3.4 ScalingListPresentFlag24-274.10.3.5 ScalingListPresentFlag3
24、4-284.10.3.6 ScalingListPresentFlag44-284.10.3.7 ScalingListPresentFlag54-284.10.3.8 ScalingListPresentFlag64-284.10.3.9 ScalingListPresentFlag74-284.10.4 QPPrimeYZeroTransformBypassFlag4-295.HARDCODED ENCODER PARAMETERS5-15.1defines.h5-15.2global.h5-15.3configfile.h5-15.4block.h5-15.5mv_search.h5-1
25、6.USING THE JM DECODER MODULE6-16.1Decoder Syntax6-16.2Decoder Configuration File Format6-16.3Decoder Output6-27.HARDCODED DECODER PARAMETERS7-17.1defines.h7-17.2global.h7-18.SYSTEM GENERATED REPORTS/OUTPUT8-18.1log.dat8-18.2stats.dat8-2H.264/MPEG-4 AVC Reference Software Manual Page v1. General Inf
26、ormation1. GENERAL INFORMATIONH.264/MPEG-4 AVC Reference Software Manual1. General Information1. GENERAL INFORMATION1.0 System OverviewThis document contains a detailed description of the usage of the H.264/MPEG-4 AVC reference software. This includes information about the encoder and decoder input
27、parameters, syntax, compilation issues, and additional information with regards to best usage and configuration of this software. 1.1 Project ReferencesIt is recommended that the users of this software obtain a copy of the ITU H.264/ ISO MPEG-4 AVC recommendation for full understanding of the capabi
28、lities and specifics of the standard. For further info, users may access the ITU web site at www.itu.int or the ISO web site at www.iso.int. A link to the ITU document-specific purchase page is while the equivalent ISO one is Users may also register on the “3 free” program by visiting http:/ecs.itu.
29、ch/cgi-bin/ebookshop or by visiting http:/www.itu.int/publications/index.html and download this recommendation for free. Some additional public references that could be useful in understanding this new standard and consequently the software are as follows: T. Wiegand, G.J. Sullivan, G. Bjontegaard,
30、and A. Luthra, “Overview of the H.264/AVC Video Coding Standard,” in the IEEE Transactions on Circuits and Systems for Video Technology, July 2003 G. Sullivan and T. Wiegand, “Video Compression - From Concepts to the H.264/AVC Standard,” in Proceedings of the IEEE, Special Issue on Advances in Video
31、 Coding and Delivery, December 2004 D. Marpe, H. Schwarz, and T. Wiegand, “Context-Based Adaptive Binary Arithmetic Coding in the H.264/AVC Video Compression Standard,” in the IEEE Transactions on Circuits and Systems for Video Technology, July 2003 G.J. Sullivan and T. Wiegand, “Rate-Distortion Opt
32、imization for Video Compression,” in the IEEE Signal Processing Magazine, vol. 15, no. 6, pp. 74-90, Nov. 1998The reference software described in these pages can be downloaded from the following link: http:/iphome.hhi.de/suehring/tml/index.htm 1.2 Authorized Use PermissionThe software package contai
33、ns a text file andsource codeheader commentscontaining disclaimer text that describes theterms associated with the use of the softwareand clarifying its copyright and patent rights status.1.3 Points of Contact1.3.1 InformationFor general inquiries with regards to the H.264/MPEG-4 AVC standard users
34、may contact Dr. Gary Sullivan (garysull), Dr. Thomas Wiegand (wiegandhhi.fraunhofer.de), and Dr. Ajay Luthra (aluthra) for further information. Certain information can also be provided through the ITU (www.itu.int) and ISO (www.iso.int) websites.1.3.2 CoordinationSoftware coordination is performed b
35、y Mr. Karsten Shring (Karsten.Suehringhhi.fraunhofer.de). Additional information about the software, and also this document could be provided by Dr. Alexis Michael Tourapis (alexismtieee.org). For further information on key contributors to the reference software implementation please check the files
36、 “contributors.h” within the reference software package.1.4 Organization of the ManualIn Section 2.0 a brief summary of the reference software will be provided. This is followed by instructions of how to install and compile the reference software under different environments (i.e. Windows and Unix/L
37、inux based platforms) in Section 3.0. The use of the encoder is described in Section 4.0, while all encoder specific parameters are analyzed in Sections 5.0 (runtime-based) and 6.0 (compilation-based). Section 7.0 presents the decoder syntax and parameters, while finally Section 8.0 presents some of
38、 the output reports generated by the different modules of this software distribution.1.5 Acronyms and Abbreviations1.5.1 CABAC: Context-based Adaptive Binary Arithmetic Coding1.5.2 CAVLC: Context-based Adaptive Variable Length Coding1.5.3 CBR: Constant Bit Rate1.5.4 DPB: Decoded Picture Buffer1.5.5
39、FRExt: Fidelity Range Extension1.5.6 HRD: Hypothetical Reference Decoder1.5.7 IDR: Instantaneous Decoding Refresh1.5.8 MB: Macroblock1.5.9 MBAFF: Macroblock-Adaptive Frame-Field Coding1.5.10 NAL: Network Abstraction Layer1.5.11 VBR: Variable Bit RateH.264/MPEG-4 AVC Reference Software ManualPage 1-2
40、2. Installation and Compilation2. INSTALLATION AND COMPILATION H.264/MPEG-4 AVC Reference Software Manual2. Installation and Compilation2. INSTALLATION AND COMPILATION.2.1 Windows using MS Visual Studio 6The software package contains a Visual Studio 6 workspace named “tml.dsw”. This workspace includ
41、es three projects:lencodH.264/AVC reference encoderldecodH.264/AVC reference decoderrtpdumpa tool for analyzing contents of RTP packetsSelect the desired project and “Debug” or “Release” mode. Compilation will create the binaries “lencod.exe” or “ldecod.exe” in the “bin” directory. “rtpdump.exe” wil
42、l be created in the rtpdump directory.For compile time settings and options see section 5.2.2 Windows using MS Visual Studio .NETThe software package contains a Visual Studio :NET workspace named “tml.sln”. This workspace includes three projects:lencodH.264/AVC reference encoderldecodH.264/AVC refer
43、ence decoderrtpdumpa tool for analyzing contents of RTP packetsSelect the desired project and “Debug” or “Release” mode. Compilation will create the binaries “lencod.exe” or “ldecod.exe” in the “bin” directory. “rtpdump.exe” will be created in the rtpdump directory.For compile time settings and opti
44、ons see section 5.2.3 UNIX and Windows using gcc (GNU Compiler Collection)After unpacking the software package run the “unixprep.sh” shell script. This will remove Windows line break characters and create directories necessary for compilation.In most shell this should work with:. unixprep.shorchmod
45、u+x unixprep.sh./unixprep.shFor compiling the encoder change to the “lencod” directory and type:makeFor compiling the decoder change to the “ldecod” directory and type:makeBinaries named “lencod.exe” and “ldecod.exe” are created in the “bin” directory.For compile time settings and options see section 5.H.264/MPEG-4 AVC Reference Software ManualPage 2-23. Using The Jm Encoder Module3. USING THE JM ENCODER MODULEH.264/MPEG-4 A