




已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Joint Collaborative Team on Video Coding (JCT-VC)of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG116th Meeting: Torino, IT, 14-22 July, 2011Document: JCTVC-F634WG11 Number: m21073Title:HEVC Reference Software ManualStatus:Input Document to JCT-VCPurpose:InformationAuthor(s) orContact(s):Frank BossenDavid FlynnKarsten ShringTel:Email:+1 650 496 4742Source:AHG Chairs_AbstractThis document is a user manual describing usage of reference software for the HEVC project. It applies to version 3.3 of the software.1 General InformationReference software is being made available to provide a reference implementation of the draft HEVC standard being developed by the Joint Collaborative Team on Video Coding (JCT-VC) regrouping experts from ITU-T SG 16 and ISO/IEC SC29 WG11. One of the main goals of the reference software is to provide a basis upon which to conduct experiments in order to determine which coding tools provide desired coding performance. It is not meant to be a particularly efficient implementation of anything, and one may notice its apparent unsuitability for a particular use. It should not be construed to be a reflection of how complex a production-quality implementation of a future HEVC standard would be.This document aims to provide guidance on the usage of the reference software. It is widely suspected to be incomplete and suggestions for improvements are welcome. Such suggestions and general inquiries may be sent to the general JCT-VC email reflector on jct-vclists.rwth-aachen.de (registration required).1.1 Bug reportingBugs should be reported on the issue tracker set up at http:/hevc.kw.bbc.co.uk/trac/2 Installation and compilationThe software may be retrieved from one of the following SVN servers (mirrored): https:/hevc.hhi.fraunhofer.de/svn/svn_HEVCSoftware/ svn:/hevc.kw.bbc.co.uk/svn/jctvc-hm/Project files are provided for development environments.EnvironmentLocation of project fileMS Visual Studio 8build/HM_vc8.slnMS Visual Studio 9build/HM_vc9.slnXcodeHM.xcodeprojLinuxbuild/linux/makefile3 Using the encoder3.1 Encoder syntaxTAppEncoder -h -c config.cfg -parameter=valueOptionDescription-hPrints parameter usage-cDefines configuration file to use. Multiple configuration files may be used with repeated c options.-parameter=valueAssigns value to a given parameter, as further described below. Some parameters are also supported by shorthand * value.Sample configuration files are provided in the cfg/ folder.4 Encoder parameters4.1 File, I/O and source parameters4.1.1 InputFileDefines source YUV file. Default is “”. Shorthand form is i.Note: Raw image data is stored in YUV files in planar format. When the bit depth of samples is larger than 8, each sample is encoded in 2 bytes (little endian, LSB-justified).4.1.2 BistreamFileDefines coded bit stream file. Default is “”. Shorthand form is b.4.1.3 ReconFileDefines reconstructed YUV file. Default is “”. Shorthand form is o.4.1.4 SourceWidthDefines width of source in luma samples. Default is 0. Shorthand form is wdt.4.1.5 SourceHeightDefines height of source in luma samples. Default is 0. Shorthand form is hgt.4.1.6 InputBitDepthDefines the bit depth of the source YUV file. Default is InternalBitDepthDefines the internal bit depth used for coding. Default is 0 (meaning same as InputBitDepth).4.1.8 OutputBitDepthDefines the bit depth of the reconstructed YUV file. Default is 0 (meaning same as InternalBitDepth).4.1.9 HorizontalPaddingDefines horizontal padding of source in luma samples. Default is 0. Shorthand form is pdx.4.1.10 VerticalPaddingDefines vertical padding of source in luma samples. Default is 0. Shorthand form is pdy.4.1.11 PADEnables automatic padding of the source to multiples of MAX_PAD_SIZE luma samples. Default is 0 (false). 4.1.12 FrameRateDefines frame rate of source. Default is 0. Shorthand form is fr.4.1.13 FrameSkipDefines number of frames to skip at beginning of source. Default is 0. Shorthand form is fs.Note: this feature is currently not functional.4.1.14 FramesToBeEncodedDefines number of frames to be encoded. Default is 0 (all). Shorthand form is f.4.2 Unit definition parameters4.2.1 MaxCUWidthDefines maximum CU width. Default is MaxCUHeightDefines maximum CU height. Default is MaxCUSizeDefines maximum CU size. Default is MaxPartitionDepthDefines the depth of the CU tree. Default is 4. Shorthand form is h.4.2.5 QuadtreeTULog2MaxSizeMaximum TU size in logarithm base 2. Default is 6 (64).4.2.6 QuadtreeTULog2MinSizeMinimum TU size in logarithm base 2. Default is 2 (4).4.2.7 QuadtreeTUMaxDepthIntraDefines depth of TU tree for intra CUs. Default is QuadtreeTUMaxDepthInterDefines depth of TU tree for inter CUs. Default is 2.4.3 Coding structure parameters4.3.1 IntraPeriodDefines intra frame period. Default is -1 (first frame only). Shorthand form is ip.4.3.2 DecodingRefreshTypeDefines the type of decoding refresh to apply for the picture at the intra frame period. A value of 0 applies an I picture (not a clean random access point). A value of 1 applies a non-IDR clean random access point (opened GOP). A value of 2 applies an IDR random access point (closed GOP). Default is 0. Shorthand form is dr.4.3.3 GOPSizeDefines size of picture hierarchy. Default is 1. Shorthand form is g.4.3.4 RateGOPSizeDefines size of picture hierarchy for QP assignment. Default is the value of GOPSize. Shorthand form is rg.4.3.5 NumOfReferenceDefines number of reference frames used for prediction in P pictures. Default is 1. Shorthand form is r.4.3.6 NumOfReferenceB_L0Defines number of reference frames used for prediction in B pictures (list 0). Default is 1. Shorthand form is rb NumOfReferenceB_L1Defines number of reference frames used for prediction in B pictures (list 1). Default is 1. Shorthand form is rb ListCombinationDefines use of combined reference list for uni-prediction in B-slices. A value of 1 indicates that the combined reference list is derived from reference list 0 and reference list 1. A value of 0 indicates that reference list 0 and reference list 1 are identical and reference list 0 is used as the combined reference list. LComb can only be 0 if and only if LowDelayCoding and GPB are both 1. Default is 1 (tr ue). Shorthand form is lc.4.3.9 LCModificationDefines the derivation of the combined reference list. A value of 0 indicates that the combined reference list is implicitly derived from reference list 0 and reference list 1. A value of 1 indicates that the derivation of the combined reference list from reference list 0 and reference list 1 is explicitly signaled in the syntax. Default is 0 (false).4.3.10 HierarchicalCodingDefines use of hierarchical coding structure. Default is 1 (true).4.3.11 LowDelayCodingDefines use of low-delay coding structure, which disables all backward inter prediction modes. Default is 0 (false).Table 1 Combination of parameters and their resultant coding structures.LowDelayCodingGPBGOPSizeResultant coding structure00 / 11Hierarchical B (HE default)101Hierarchical P111Hierarchical B, no backward prediction0 / 101IPPP0 / 111IBBB (LC default)Default hierarchical-QP assignments vary according to this parameter. They can be overridden by the parameter BQP.Table 2 Example hierarchical QP assignments according to LowDelayCoding and BQP.Temporal LevelLowDelayCoding=0LowDelayCoding=1 and BQP=00 (first frame)QPQP0 (key frame except the first frame)QP+1QP+11QP+2QP+42QP+3QP+53QP+4QP+64.3.12 GPBDefines use of B pictures for all non-intra pictures. If list 1 reference list is empty when this option is specified, all entries of list 0 reference list are copied into the list 1 reference list. Default is 0 (false).4.3.13 NRFDefines marking of pictures in lowest temporal layer as not used for reference. Default is 1 (true).4.3.14 BQPDefines use of hierarchical QP assignment assuming no delay restriction even in low-delay mode. (See Table 2) Default is 0 (false).4.3.15 TLayeringBasedOnCodingStructDefines use of temporal layer ID assignment based on the hierarchical coding structure. If this is defined, pictures with higher temporal layer ID than current pictures temporal layer ID will not be used as reference. Default is 0 (false).4.3.16 TLayerSwitchingFlag_L0Defines temporal layer switching point flag for temporal layer 0. If this flag is set, then after decoding(encoding) a picture with temporal layer ID equal to 0, all reference pictures with temporal layer ID greater than 0 will be marked as unused. Default is 0 (false).4.3.17 TLayerSwitchingFlag_L1Defines temporal layer switching point flag for temporal layer 1. If this flag is set, then after decoding(encoding) a picture with temporal layer ID equal to 1, all reference pictures with temporal layer ID greater than 1 will be marked as unused. Default is 0 (false).4.3.18 TLayerSwitchingFlag_L2Defines temporal layer switching point flag for temporal layer 2. If this flag is set, then after decoding(encoding) a picture with temporal layer ID equal to 2, all reference pictures with temporal layer ID greater than 2 will be marked as unused. Default is 0 (false).4.3.19 TLayerSwitchingFlag_L3Defines temporal layer switching point flag for temporal layer 3. If this flag is set, then after decoding(encoding) a picture with temporal layer ID equal to 3, all reference pictures with temporal layer ID greater than 3 will be marked as unused. Default is 0 (false).4.4 Motion estimation parameters4.4.1 FastSearchDefines use of fast motion search. If this parameter has a value of 0, full search method is used, otherwise, fast motion estimation method is used. Default is 1.Note: the current software allows the value to range from 0 to 2, but only 0 (full) and 1 (fast) are supported.4.4.2 SearchRangeDefines the search range used for motion estimation. Default is 96. Shorthand form is sr.Note: the search range is defined around a predictor. Motion vectors derived by the motion estimation may thus have values larger than the search range.4.4.3 BipredSearchRangeDefines the search range used for bi-prediction refinement in the motion estimation. Default is HadamardMEDefines use of the Hadamard transform in fractional-pel motion estimation. Otherwise, SAD is used instead. Default is 1 (true).4.4.5 ASRDefines use of adaptive search range, which dynamically adjusts the motion search range according to the POC difference between the current and the reference pictures. Default is 0 (false).SearchRagne = Round( SearchRange * ADAPT_SR_SCALE * abs( POCcur POCref ) / RateGOPSize )4.5 Quantization parameters4.5.1 QPDefines base value of the quantization parameter. Default is 30.0. Shorthand form is q.4.5.2 MaxCUDQPDepthDefines max depth of a minimum CuDQP for sub-LCU-level delta QP. Default is RDOQDefines whether rate-distortion-optimized quantization is used in the encoder. Default is 1 (on).4.5.4 DeltaQpRDDefines maximum QP offset at slice level for multi-pass slice encoding. In the encoder, each slice is tested multiple times by using slice QP values in the range -DeltaQpRD, DeptaQpRD, and the best QP value is chosen as the slice QP. Default is 0. Shorthand form is dqr.4.5.5 MaxDeltaQPDefines maximum QP offset at largest coding unit level for block-level adaptive QP assignment scheme. In the encoder, each largest coding unit is tested multiple times by using the QP values in the range -MaxDeltaQP, MaxDeltaQP, and the best QP value is chosen as the QP value of the largest coding unit. Default is 0. Shorthand form is d.4.5.6 dQPFileDefines file name containing list of QP value deltas. The n-th line (where n is 0 for the first line) of this file corresponds to the QP value delta for the picture with POC value n. Default is “”. Shorthand form is m.4.5.7 TemporalLayerQPOffset_L0Defines QP offset relative to the parameter QP for temporal layer 0. When this parameter is specified as the value other than 52, default hierarchical QP assignments in Table 2 are ignored, and the value QP+TemporalLayerQPOffset_L0 is assigned to all slices in the temporal layer 0. Default is 52. Shorthand form is tq TemporalLayerQPOffset_L1Defines QP offset relative to the parameter QP for temporal layer 1. When this parameter is specified as the value other than 52, default hierarchical QP assignments in Table 2 are ignored, and the value QP+TemporalLayerQPOffset_L1 is assigned to all slices in the temporal layer 1. Default is 52. Shorthand form is tq TemporalLayerQPOffset_L2Defines QP offset relative to the parameter QP for temporal layer 2. When this parameter is specified as the value other than 52, default hierarchical QP assignments in Table 2 are ignored, and the value QP+TemporalLayerQPOffset_L2 is assigned to all slices in the temporal layer 2. Default is 52. Shorthand form is tq0 TemporalLayerQPOffset_L3Defines QP offset relative to the parameter QP for temporal layer 3. When this parameter is specified as the value other than 52, default hierarchical QP assignments in Table 2 are ignored, and the value QP+TemporalLayerQPOffset_L3 is assigned to all slices in the temporal layer 3. Default is 52. Shorthand form is tq3.4.6 Entropy coding parameters4.6.1 SymbolModeDefines entropy coder to use. Value 0 is for low-complexity entropy coder (LCEC) and 1 for binary arithmetic coder. Default is 1. Shorthand form is sym.4.6.2 SBACRDDefines use of bit counts from arithmetic coder in rate-distortion decisions. Default is 1 (true).4.7 Slice coding parameters4.7.1 SliceGranularityDetermines the depth in an LCU at which slices may begin and end. A value of 0 means that slice addresses are LCU aligned. A value of 1 means that slices addresses may additionally be aligned with CUs that has a width and height that is one half of an LCU. (depth of 1). Values between 0 and 3 inclusive are permitted, provided that CUs at the given depth are of size 16x16 or larger. For 64x64 LCUs, this means that the maximum allowed SliceGranularity is 2 since that gives a CU of 16x16 which is the smallest allowed. Default is 0 (LCU-aligned slices)4.7.2 SliceModeEnables slice coding. When set to 1, the parameter SliceArgument will specify the maximum number of CUs at a depth of SliceGranuarity in a slice. When set to 2, the parameter SliceArgument will specify the number of bytes in a slice. Default is 0 (no slices).4.7.3 SliceArgumentDefines the maximum number of CUs or bytes in a slice depending on the SliceMode setting. 4.7.4 EntropySliceModeEnables entropy slice coding. When set to 1, the parameter SliceArgument will specify the maximum number of CUs in a slice. When set to 2, the parameter SliceArgument will specify the number of bytes (LCEC) or bins (CABAC) in a slice. Default is 0 (no slices).4.7.5 EntropySliceArgumentDefines the maximum number of CUs or bytes/bins in an entropy slice depending on the SliceMode setting.4.8 Deblocking filter parameters4.8.1 LoopFilterDisableFlag to disable the loop deblocking filter. Default is 0 (false).4.8.2 LoopFilterAlphaC0OffsetDefines alpha offset used in loop deblocking filter. Default is LoopFilterBetaOffsetDefines beta offset used in loop deblocking filter. Default is LFCrossSliceBoundaryFlagFlag to enable in-loop filtering across slice boundaries. When it is set to 1, in loop filtering can cross slice boundaries. When it is set to 0, in loop filtering cannot cross slice boundaries. Default is 1 (across).4.9 Coding tools parameters4.9.1 MRGDefines use of the merge mode. Default is 1 (true).4.9.2 ALFDefines use of the adaptive loop filter. Default is 1 (true).4.9.3 ALFEncodePassReductionFlag to indicate the number of ALF encoding passes. Value 0, 1, 2 are for 16-pass, 1-pass, and 2-pass ALF encoding algorithms, respectively. Default is 0 (16-pass).4.9.4 SAODefines use of sample adaptive offset (SAO). Default is 1 (true).4.9.5 LMChromaDefines use of the Intra_ChromaFromLuma prediction mode. Default is 1 (true).4.9.6 ConstrainedIntraPredWhen set to 1, only pixels from Intra blocks in the same slice as the current block will be marked as available for Intra prediction. Default is 0 (not used).4.9.7 PCMLog2MinSizeSpecifies log2 of the minimum PCM block size. PCM mode is available for 2Nx2N intra PUs larger than or equal to the specified minimum PCM block size. Default value is 7 (PCM mode not used).4.9.8 PCMInputBitDepthFlagIf enabled specifies that PCM sample bit-depth is set equal to InputBitDepth. Otherwise, it specifies that PCM sample bit-depth is set equal to InternalBitDepth. Default value is PCMFilterDisableFlagIf enabled specifies that loop-filtering on reconstructed samples of PCM blocks is skipped. Otherwise, it specifies that loop-filtering on reconstructed samples of PCM blocks is not skipped. Default value is 0 (loop-filtering is not skipped for PCM samples).4.10 Miscellaneous parameters4.10.1 FENDefines use of fast encoder mode. Default is 0 (false).When this option is specified, the following changes apply: In the SAD computation for blocks having size larger than 8, only the lines of even rows in the block are considered. The number of iterations used in the bi-directional motion vector refinement in the motion estimation process is reduced from 4 to SEIPictureDigestEnable or disable the calculation and insertion of the picture_digest SEI messages.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 IEC 60601-1:1988/AMD1:1991 EN-D Amendment 1 - Medical electrical equipment - Part 1: General requirements for safety
- 小学生防金融诈骗教育
- 2025年乡镇年度精神文明建设工作方案
- 企业商业规划方案
- 2025年幼儿园大班上学期工作方案
- 压力性损伤的护理及预防
- 急性心梗的护理
- 网络主题班会教育教案
- 现代商务展示模板
- 汽车音响培训
- 河北省部分重点中学2024-2025学年高三下学期3月联合测评(T8联考)化学试题(含答案)
- 住宅老旧电梯更新改造工作指南汇报- 中国电梯协会
- 2024年重庆联合产权交易所集团股份有限公司招聘考试真题
- 2024年陕西省县以下医疗卫生机构定向招聘考试真题
- 2025年漂浮式风电市场现状调研及前景趋势预测报告
- 传统机械切削加工行业车间绩效考核方案
- 7.2做中华人文精神的弘扬者 教学设计-2024-2025学年统编版道德与法治七年级下册
- 2024年高中化学 专题2 化学反应速率与化学平衡 第一单元 化学反应速率 第2课时 影响化学反应速率的因素教学实录 苏教版选修4
- 小学五年级青岛版下学期数学期中学业质量监测复习必考题型
- 山西省省直部分事业单位2025年公开招聘工作人员(十四)历年高频重点模拟试卷提升(共500题附带答案详解)
- (一模)哈三中2025届高三第一次模拟考试 语文试题(含答案)
评论
0/150
提交评论