Home

JM Reference Software Manual (JVT-AE010)

image

Contents

1. 4 27 243 OPS P2PicIUT era e n aer PR Led ree e PLE e 4 27 4 28 BAS SP DR NLA 4 28 4 4 6 8 ERE 4 28 44 7 SP2 EImesS mte ru acta 4 28 AALS SPD input Ramel z see ep ee Re eee e e REIS ag 4 28 44 9 SP2 input n me2 esee ee ien adu ive de eee ee ERO 4 28 4 5 OUTPUT CONTROL ENTROPY CODING 5 4 28 4 5 T SymbolMode ii Ra RP ERR C RR EXER ERE RARI REL UD RUE 4 28 4 5 2 ContextInitMethod ses nd ente et Ee pie eed eed etit eter es 4 28 4 5 3 FIXCAM Od el NUD ORs e eta 4 29 454 4 29 4555 MNA 4 29 4 6 INTEREACE FORMAT HANDLING tons mestre n deu eee toas 4 29 4 6 I Piclnterldce exe ter ee spe 4 29 2 6 2 MBlnterlace de EO i aede 4 29 4 6 3 d eer p ERE ER PR P ERE D Rt
2. enne 1 2 1 5 ACRONYMS AND ABBREVIATIONS sssccccesssececssseececssncecseaececseseecesaceecsesaeeecseseeseesseeecseaaesecseaeecesseesessenes 1 3 INSTALLATION AND COMPILATION cccssssssscsssssssssssssssssecssssssssesssssssssscssssssssssesssssssessnsssssssssssssssssscees 2 1 2 1 WINDOWS USING MS VISUAL STUDIO NET 2 1 2 2 UNIX AND WINDOWS USING GCC GNU COMPILER COLLECTION eese eene eene enne enne 2 1 USING THE JM ENCODER MODULE viiisscsssssscsanscossessensssvsascasssesscssesssbonsossnscnsesssnessscasescsesscednassbensesnnssnse 3 1 3 1 ENGODER SYNTAX eitis ebd niv ge eru ceperit ec eee tn i E EE EN 3 1 3 2 ENCODERS OUTPUT epe dee RR ere ROREM retenti eR A O a 3 2 3 3 ENCODER LIMITATIONS oerte ni er ede ERU 3 4 ENCODER PARAMETERS o Si 4 1 41 FILE INPUT OUTPUT RELATED PARAMETERS eese ener enne nter nennen 4 1 LIS EID EU EM 4 1 41 2 mputHeaderlength a eo eet ec ee edet tu ett 4 1 E AE AET d en etd mute MEME 4 1 4 1 4 FramesToBeEncoded ee tie voa Pie ree 4 1 4 DF
3. sass ae bas ET 4 2 SourceWidlh s e eau iiie 4 2 417 SourceHeightu ione bd eine ester Whee ive Sistas awed oe red ME 4 2 4 1 8 SourceResize isiasie 4 2 4 2 4110 OUtpurllei git n kan Sn t eme ted enm Eee 4 2 AA TT PLOCESSINDUL X 4 2 CINE HE EE 4 2 A 8001 40721 e eati a sistema 4 3 4L TI Interleaved ed ee 4 3 4 115 SourceBitDepthL uma issue Bissett ee e Aaa een elves Wen AA a ies 4 3 4 1 16 SourceBitDepthChroma ied ee ted Hee t adds sae RR e E Eod 4 3 4 1 17 Sou rceBitDepthRescale ideae ride HE re rH 4 3 AAAS QuitputBitDepthD ma edt E ePi ES Eget 4 3 419 OutputBitDepthChroma e RU epist rp e ac 4 3 7 1 20 OutputFile dui Rt e EE COMEDOR LUST 4 3 2 21 ReconFile rie et eI Pe ise rera e ENDE Ie 4 4 2 22 TraceFilez5 i ee SUI amieta etes Nani ie 4 4 4 1 23 Stats File soon deuda a ee OIE Rei EOS EEA te emer eiie 4 4 41 24 ReportFrameStdts iiit ete Red deg t ee teet dette tec 4 4 H 264 14496 10 AVC Reference Software Manual Page ii 1 General Information 4 125 DisplayEncParamsaa aisi e e e ERREUR
4. 4 7 29 21 VUI nal hrd parameters present flag 4 7 29 22 VUI nal vcl parameters present flag 41 29 23 VUL low delay hrd 4 7 29 24 VUI pic struct present flag 41 29 25 VUI bits tre m testriction flag certe rere tr Ret RR RH rh REOR RE 4 7 29 26 VUI motion vectors over pic boundaries 4 48 4 7 29 27 VUI max bytes per pic denom 4 7 29 28 max bits per mb 4 7 29 29 VUI log2 max mv length horizontal essere 4 48 4 7 29 30 VUI log2 max mv length vertical 47 29 31 V UI h m reorder FLAMES temere 4 7 29 32 VUL max eite eee ertet eren 4 8 OTHER SETTINGS von ie ree PP ERG PORTO PE rH 4 8 1 NumbramesInELayerSubSeg to gt UO E mre ce epo dee 4 8 2 SparePictureODtion s n iR pente te ete eye ge ewes 4 5 3 SparePictureDetectionlhr uei ense tpe Pe Ph EE e Reed eid 4 8 4 SparePicturePercentageThr n aite ti peer oed ee Er e ER ree ER ERR 4 9 EREXT PROFILE PARAMETERS eh ete ce pee ip edere e ed prete ec eeepc iet 4 9 T Trarisformox MOode iu oe vase RE ERE teas SERRE ERR 4 92 Separate
5. EIER 4 30 4 7 NON NORMATIVE ENCODER 8 0 0 4 30 Z LI RDOptimization hot eod tt EORR YR ROI RT 4 30 AT 2D ATOR DOD MERE 4 30 4 7 3 SUDM BC Odin State iss cashes sir a ar 4 31 4 7 4 ForcetrueRateRDO iie ee EE es AaB a petes eR ee ie Es M 4 31 Tq RDPictureDecisioni sss dee A Rae GERI WS 4 31 4 76 Distortions cm 4 31 ATT DistoktionSS IM us es seed a ee iR ER cash 4 31 4 78 DistortionYU VIORGB i eid ete sa uate de ih aes tet REIR be dette las eee 4 32 H 264 14496 10 AVC Reference Software Manual Page v 1 General Information 47 9 RDPict relntrd se dE UU DR ORARE YI 4 32 42 I ORDPSliceWeightOnly RE RE RR EUER Eas 4 32 471 RDBSliceWeightOnly ees amp oett ide de o o tee Pete der loei hide 4 32 4 7 12 Lambda parameters for Lagrangian based optimization eene 4 32 4 7 12 1 CtxAdptLagrangeMult 15 43 12 2 Use ExphicitbambdaParams 2 eren eere Pret i Mab e teeth ete triente 4 32 4 7 12 3 UpdateEambdaChiromaME eee iere ret e re Reed 4 32 4 7 12 4 FixedLambdalslice 4 7 12 5 FixedLambdaPslice 4 7 12 6 FixedLambdaBslice A 4212 7 Fix dE mbdaBetBs
6. Options 0 Default Additional loopfilter offsets are also encoded and considered during deblocking 1 Disables deblocking for all edges Disables deblocking at slice boundaries only 4 2 49 8 DFAlphaRefPSlice Class Numeric Integer Description Sets the value of the syntax element slice alpha c0 offset div2 for P slices belonging to a reference picture Requires DFParametersFlag to be set Allowable values are in the range 6 5 0 1 6 Default value is 0 4 2 49 9 DF BetaRefPSlice Class Numeric Integer Description Sets the value of the syntax element slice_beta_offset_div2 for P slices belonging to a reference picture Requires DFParametersFlag to be set Allowable values are in the range 6 5 0 1 6 Default value is 0 4 2 49 10 DFDisableNRefPSlice Class Numeric Integer Description Sets the value of the syntax element disable deblocking filter idc for P slices belonging to a non reference picture Requires DFParametersFlag to be set Options Default Additional loopfilter offsets are also encoded and considered during 0 deblocking Disables deblocking for all edges Disables deblocking at slice boundaries only 4 2 49 11 DFAlphaNRefP Slice Class Numeric Integer Description Sets the value of the syntax element slice alpha c0 offset div2 for P slices belonging to a non reference picture Requires DFParametersFlag to be set Allowable values are
7. 4 2 48 7 PSliceSearch4x8 4 2 48 8 BSliceSearc c con uote ere tiere ore rere er epe red 4 2 48 9 BSliceSearch16x16 4 2 48 10 BSliceSearch16x8 4 2 48 11 BSliceSearch8x16 4 2 48 12 BSliceSearch8x8 A 42 48 13 BSliceSearch8X4 aee etie t eM ER 4 2 48 14 BSliceSearch4x8 4 2 48 15 BSliceSearch4x4 42 48 16 1 4 14 4248 17 BIPredMERefinetmehls ee eet de er e itae eee ded dace ires rare eoo 4 15 4 2 48 18 BiPredMESearchRange 4 15 4 2 48 19 BiPredMESubPel 4 15 4 2 48 20 BiPredSearch16x16 A415 42 48 21 BiPredSearCh OX Se cessed eso eee d dt E E eer dia aderire ete re A ete c 4 15 40 48 22 BiPredSearchi8x16 heise traderet ere ER DE eO WW E E 4 15 4 2 48 23 BiPredSearch8x8 42 48 24 DisableIntraAs4 eere rende te oir etae tec 42 48 25 Disablelntral6x 16 3 3 1 ee e des eor A 4 2 48 26 DisableIntraInInter 4 2 48 27 Intra4x4ParDisable 4 2 48 28 Intra4x4DiagDisable n AD AS 29 IntraAx4DirDisable E E E E E A 42 48 30 nebak ol erig DITS 1 8 AEA EASE er be ee Te e ERE E EEIE E E E TE 4 2 48 31 Intral6x16PlaneDisable 42 48 32 Chromalnttr Disable s dioe
8. 9 1 H 264 14496 10 AVC Reference Software Manual Page viii 1 General Information 9 1 IUS GAP d PEE 9 1 9 2 STATSEIEE DESCRIPTION iecore eed eur ete ven 9 2 H 264 14496 10 AVC Reference Software Manual Page ix 1 General Information 1 GENERAL INFORMATION H 264 14496 10 AVC Reference Software Manual 1 General Information 1 GENERAL INFORMATION 1 0 System Overview This document contains a detailed description of the usage of the H 264 14496 10 AVC reference software and more specifically version 16 0 This includes information about the encoder and decoder input parameters syntax compilation issues and additional information with regards to best usage and configuration of this software 1 1 Project References It 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 capabilities 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 The ITU document can be downloaded for free from http www itu int rec T REC H 264 while the equivalent ISO one can be purchased at http tinyurl com pnyvo Some additional public references that could be useful in understanding this new standard and consequently the software are as follows e T Wiegand Sullivan G Bjontegaard and Luthra Overview of the H 264 AVC
9. Frame POC 00000 IDR 0 00006 P 112 00004 5 8 00002 5 4 SNR Y dB SNR U dB SNR V dB CERES Cecen ver L50 GNIS a a Soe EE decoder cfg J eest 264 log dec B USE SSO Pic QP SnrU SnrV Y U V Time ms 0 2 010000 0 0000 0 0000 452500 16 1 21S 0 0000 0 0000 0 0000 49250 0 2 28r 00000 0 0000 0 0000 45250 15 3 0 0000 09 0000 00000 4525 16 0 00 0 00 0 00 0 062 sec 64 516 fps The generated statistics in the above list represent the following information Name Format Purpose Frame O5d T ype Frame Display Order and Type POC 3d Frame Field POC number Pic 3d Frame_num associated with current frame H 264 14496 10 AVC Reference Software Manual Page 7 2 7 Using The JM Decoder Module 5 Frame Quantization value SnrY 057 Af Luma Y PSNR If value 15 to 0 000 then reference is either not available or is identical to reconstructed Chroma U PSNR If value is equal to 0 000 then reference is Sap ATUM either not available or is identical to reconstructed Chroma V PSNR If value is equal to 0 000 then reference is PAM RM either not available or is identical to reconstructed Y U V X Y Z Color format Time ms 5d Total decoding time for frame H 264 14496 10 AVC Reference Software Manual Page 7 3 8 Hardcoded Decoder Parame
10. 0 000 0 000 129 203 108 191 257 0 0 3 0 Mode used 561 295 9 20 6 0 0 0 0 Intra 32 00 71 00 ids 284 00 22094 00 2141 00 7 00 7 00 24636 00 0 000 0 000 9 System Generated Reports Output 0 000 0 000
11. 4 4 4 pe e ERE FID neck eee ve ae 4 4 4 127 GrayScdle sede eo eee eee aged 4 5 4 2 PRIMARY CONTROL PARAMETERS A E 4 5 2 2 ProfilelDC ede eto a pr RH DER ER E PG DR ERE RS 4 5 Bh DD INGA POPU vac is eto ede eph ente ipie 4 5 4 2 3 Level ID GEHE 4 5 4 24 mntraPeriod E 4 6 PP RB AA EM 4 6 42 6 EnableIDRGOoD ine Ead RU aq Ee de 4 6 42 7 InIraDelayixacs c ttai eee I OG ee ten dist uem eie 4 6 42 8 AdaptiveItraPeriod e Hee egt dette Ree hts 4 6 42 9 AdaptiveIDRPeriod se ae aeri e EU een ee EI e RR 4 7 4 2 EnableOpenGOP 5a ns eR eh e tend eee emt etes 4 7 22 TT NumberBRFAtli s aieo e stt RESERVAR HAS Reuter ERR VERRE A ebb RARE cce E 4 7 SEDIPS 4 7 7 2 13 0 BPS lice re pe ava eie ue 4 7 42 14 OPBSlice iR RR NIE bed 4 7 42 15 ChromaQPOffset i addas Ree or ke eats ete Nes eA aa idu 4 7 42 2 16 CbOPOffset ene eee e Red aed eee ede ette 4 7 4 2 17 CrOPOffset 2 eie eu ret ro PR ER 4 7 4 2 18 FrameSkip iai ttu EON HE ee Ee e ptt i ie ettet deat 4 8 7 2 19 MEDistortionF Pel una RR NIE EU pH SUED ERE eH EAE 4 8 4 2 20 MEDistortionHPel eese sete iie ee ke eoe nba ete Toe te 4 8 47 2 21 M
12. 264 14496 10 AVC Reference Software Manual Page 6 1 7 Using The JM Decoder Module 7 USING THE JM DECODER MODULE H 264 14496 10 AVC Reference Software Manual 7 Using The JM Decoder Module 7 USING THE JM DECODER MODULE 7 1 Decoder Syntax ldecod eed pm pesseelselj sa 264 output yuv r reference yuv uv Options h Prints parameter usage defdec cfg Optional decoder config file containing all decoder information Silent decoding i Decode file bitstream 264 Default is set to test 264 0 Reconstructed file name is set to lt output yuv gt Default is test_dec yuv Reference sequence file for PSNR computation is set to lt reference yuv gt p Default is test rec yuv p Set Poc Scale to the value pocScale Default is 2 T Output 400 content with gray chroma components i e values 128 to allow viewing of output on 420 YUV players Examples of usage ldecod exe ldecod exe h ldecod exe default cfg ldecod ex S i bitstream 264 ldecod exe i bitstream 264 output yuv r reference yuv ldecod exe i bitstream420 264 uv 7 2 Decoder Configuration File Format Decoder parameters need to be placed in a specific order for the decoder to work correctly Parameters allowed are as follows Decoder Parameters bistream 264 H 26L coded bitstream TEM Output
13. 3 Using The JM Encoder Module lencod exe lencod exe curencl cfg p FramesToB p OPFirstFrame 28 p QPRemainingFrame 28 p QPBPicture 30 Cukeacl E reunir 3X0 yun SourceWidth 176 SourceHeight 144 Encoded Olay 3 2 Encoder Output When running the encoder the encoder will display on screen rate distortion statistics for every frame coded Cumulative results will also be presented The output information generated may look as follows depending on the setting of the Verbose input parameter Setting Default Parameters Parsing Configfile encoder cfg pauses e RS SSS SS SS SSS 14600 Input YUV file data foreman 176x144 30p yuv Output H 264 bitstream test 264 Output YUV file test rec YUV Format 2570 Frames to b ncoded I P B BMA Freq for encoded bitstream 5 0 670 PicInterlace MbInterlace 0 0 Transform8x8Mode 1 E Metric for Refinement Level 0 SAD E Metric for Refinement Level 1 SAD E Metric for Refinement Level 2 Hadamard SAD ode Decision Metric Hadamard SAD otion Estimation for components pA Image format 176x144 176x144 Error robustness ORE Search range 32 Total number of references 5 References for P slices 5 References for B slice
14. Various Document updates Various Document updates Addition of new parameters supported in software such as Care A dd Fast Mode parameters and Adaptive Offset Rounding 10 12 05 AT Parameter updates Addition of new FME parameters Parameter updates Addition of new FME parameters Addition of limitations section Rev 6 04 02 06 AT KS GS 101606 AT Alexis Michael Tourapis alexis tourapis dolby com GS Gary Sullivan garysull windows microsoft com KS Karsten S hring Karsten Suehring hhi fraunhofer de TO Tobias Oelbaum oelbaum tum de AL Athanasios Leontaris athanasios leontaris dolby com User s Manual Pagei 1 1 General Information H 264 14496 10 AVC REFERENCE SOFTWARE MANUAL TABLE OF CONTENTS Page GENERAL INFORMATION 8isscsssscssesccsessstsnssstaascensssnssssecessuscnsecsesesscnstessbassesseseodesesecssesssdeadcsesscedncssbeadesanscoss 1 1 1 0 SYSTEM OVERVIEW oter ite tee miu eee npe des iach ener dese oto eases 1 1 1 1 PROJECT REFERENCES Mni ene ede neis 1 1 1 2 AUTHORIZED USE PERMISSION srir r erie k 1 1 1 3 POINTS OF CONTACT oret emite Hn RW 1 2 LSAT AN OTMANON S EUR Wie Rn e eU 1 2 1 3 2 o oio Net etat adieu netos SE 1 2 1 3 3 Bug Reportitig iie tei ie e de e eee 1 2 1 4 ORGANIZATION OF THE
15. 4 Encoder Parameters 4 1 5 FrameRate Class Numeric Double Description Input File Frame rate Supports values in the range 0 0 100 0 Default value is 30 0 Note For interlace material i e 60 or 50 fields value should be set equal to FieldRate 2 i e 30 0 and 25 0 respectively 4 1 6 SourceWidth Class Numeric Integer Description Input image width in Luma Samples If the value is not a multiple of 16 the image is automatically extended to the next number that is a multiple of 16 and cropping parameters to the original size are set in the Sequence Parameter Set Default value is 176 417 SourceHeight Class Numeric Integer Description Input image height in Luma Samples If no Interlace tools are used and if the value is not a multiple of 16 the image is automatically extended to the next number that is a multiple of 16 Otherwise if the value is not a multiple of 32 the image is automatically extended to the next number that is a multiple of 32 If the picture is extended cropping parameters to the original size are set in the Sequence Parameter Set Default value is 144 4 1 8 SourceResize Class Numeric Boolean Description If set to 1 then input sequence is resized according to the parameters OutputWidth and OutputHeight Currently resizing is considered through cropping or padding depending on the relationships of the source and output dimensions The default value is 0 disabled 4 1 9 OutputWidth
16. 4 7 29 15 VUI chroma sample loc type top field Class Numeric Integer Description This parameter specifies the location of chroma samples for the top field If not present the value is inferred to be equal to 0 4 7 29 16 VUI chroma loc type bottom field Class Numeric Integer Description This parameter specifies the location of chroma samples for the bottom field If not present the value is inferred to be equal to 0 4 7 29 17 VUI timing info present flag Class Numeric Integer Description If this flag is set equal to 1 it specifies that parameters num units in tick time scale and fixed frame rate flag are present in the bitstream If 0 default the above parameters are not present 4 7 29 18 VUI num units in tick Class Numeric Integer Description This parameter is the number of time units of a clock operating at the frequency time scale Hz that corresponds to one increment of a clock tick counter The default value is 1000 4 7 29 19 VUI time scale Class Numeric Integer Description This parameter is the number of time units that pass in one second The default value is 60000 4 7 29 20 VUI fixed frame rate flag Class Numeric Integer Description If set to 1 this flag indicates that the temporal distance between the HRD output times of any two consecutive pictures in output order is constrained according to Annex E Default is 0 disabled Note This flag has currently
17. Class Numeric Integer Description Output image width in Luma Samples Value is ignored if SourceResize is 0 If the value is not a multiple of 16 the image is automatically extended to the next number that is a multiple of 16 and cropping parameters to the original size are set in the Sequence Parameter Set Default value is 176 4 1 10 OutputHeight Class Numeric Integer Description Output image height in Luma Samples Value is ignored if SourceResize is 0 If no Interlace tools are used and if the value is not a multiple of 16 the image is automatically extended to the next number that is a multiple of 16 Otherwise if the value is not a multiple of 32 the image is automatically extended to the next number that is a multiple of 32 If the picture is extended cropping parameters to the original size are set in the Sequence Parameter Set Default value is 144 4 1 11 ProcessInput Class Numeric Integer Description Perform optional preprocessing on the input sequence Currently only supports YV12 to IYUV conversion i e order inversion of chroma components ProcessInput 2 but will be extended in the future to provide further functionality such as simple pre filtering 4 1 12 RGBInput Class Numeric Integer Description Sets YUV or RGB Input H 264 14496 10 AVC Reference Software Manual Page 4 2 4 Encoder Parameters Options 0 GRB or YUV input default 1 RGB Input 4 1 13 YUVFormat Class
18. Numeric Integer Description Select scaling matrix for Inter8x8 Luma component Options 0 Not Present Use default values if ScalingMatrixPresentFlag is not 0 1 Present only in SPS 2 Present only in PPS 3 Present in both SPS and PPS 4 9 4 LosslessCoding Class Boolean Description Enable lossless coding when qpprime y is zero Default value is 0 disabled Note Better explanation is needed for this parameter H 264 14496 10 AVC Reference Software Manual Page 4 52 5 Hardcoded Encoder Parameters 5 HARDCODED ENCODER PARAMETERS H 264 14496 10 AVC Reference Software Manual 5 Hardcoded Encoder Parameters 5 HARDCODED ENCODER PARAMETERS Although encoder behavior is mainly controlled through the parameters provided in section 4 additional hardcoded parameters within the reference software could also modify its behavior This includes the generation of tracing and output information and algorithmic considerations 5 1 defines h DUMP_DPB GET_METIME IMGTYPE ENABLE_FIELD_CTX ENABLE_HIGH444_CTX DEBUG_BITDEPTH ALLOW_GRAYSCALE LAMBDA_ACCURACY_BITS TRACE ZEROSNR _LUMA_COEFF_COST_ _CHROMA_COEFF_COST_ _LUMA_MB_COEFF_COST_ _LUMA_8x8_COEFF_COST_ JM_INT_DIVIDE JM_MEM_DISTORTION 5 2 DEFAULTCONFIGFILENA ME configfile h Dumps DPB for debuging purposes Enabled ME Computation time Defines data size type 0 implies byte i e best for profiles with 8 bit support where as 1
19. Supports CIF and below 1536000 samples sec 13 1 3 Supports CIF and below 3041280 samples sec 20 2 Supports CIF and below 3041280 samples sec 21 2 1 Supports HHR formats Enables Interlace support 5068800 samples sec 22 2 2 Supports SD 4CIF formats Enables Interlace support 5184000 samples sec 30 3 Supports SD ACIF formats Enables Interlace support 10368000 samples sec 31 3 1 Supports 720p HD format Enables Interlace support 27648000 samples sec 32 3 2 Supports SXGA format Enables Interlace support 55296000 samples sec 40 4 Supports 2Kx1K format Enables Interlace support 62914560 samples sec 41 4 1 Supports 2Kx1K format Enables Interlace support 62914560 samples sec 42 4 2 Supports 2Kx1K format Frame coding only 125829120 samples sec 50 5 Supports 3672x1536 format Frame coding only 150994944 samples sec 51 5 1 Supports 4096x2304 format Frame coding only 251658240 samples sec 4 24 IntraPeriod Class Numeric Integer Description Max period of I coded frames non IDR in the encoded sequence Note that if the position corresponds to a non primary level e g an intermediate picture belonging to a hierarchical structure the nearest picture belonging to the primary level with a position smaller than IntraPeriod will be encoded as intra instead A value of 0 default implies that only the first frame will be coded as intra Note If field coding is enabled depending on the value of parameter In
20. 22 7 EPZSMedThresScale Class Numeric Integer Description Control multiplier parameter for the Median threshold Value depends on block type and is essentially multiplied with the base value MedBaseT in Table 1 Default value is 1 4 7 22 8 EPZSMaxThresScale Class Numeric Integer Description Upper limit for threshold used for early termination Value depends on block type and is essentially multiplied with the base value MaxBaseT in Table 1 Default value is 1 Blocktype 16x16 16x8 8x16 8x8 8x4 4x8 4x4 MinBaseT 64 32 32 16 8 8 4 MedBaseT 256 128 128 64 32 32 16 MaxBaseT 768 384 384 192 96 96 48 Table 1 EPZS threshold control multipliers 4 7 22 9 EPZSSubPelME Class Boolean Description EPZS Subpel ME consideration for single prediction motion estimation Default value is 1 enabled 4 7 22 10 EPZSSubPelMEBipred Class Boolean Description EPZS Subpel ME consideration for Bi predictive motion estimation Default value is 1 enabled 4 7 22 11 EPZSSubPelThresScale Class Numeric Integer Description EPZS Subpel ME threshold scaler Default value is 2 4 7 22 12 EPZSSubPelGrid Class Numeric Integer Description Perform EPZS Motion estimation using a combined integer subpel grid Default value is 0 disabled 47 23 UMHex Options Recently two new parameters were added to UMHex to improve its performance mainly in terms of speed These options could probably be u
21. 519 Bits to avoid Startcode Emulation 25 Bits for parameter sets 8 176 Exit JM 16 FRExt encoder ver 16 0 The generated statistics in the above list represent the following information Note that fields which are associated with Verbose Mode column set only to Detailed will not be shown when verbose is set to Normal see section 4 1 26 Name Format Purpose Verbose Mode Frame 04d Type Frame Display Order and Type Normal Detailed Bit pic 8d Allocated bits for current frame Normal Detailed WP 1 Weighted Prediction method Normal Detailed QP 2d Frame Quantization value Normal Detailed QL 9024 Frame Quantized Lagrangian value Detailed SnrY 7 3 Luma Y PSNR Normal Detailed SnrU 7 3 Chroma U PSNR Normal Detailed SnrV 7 3 Chroma V PSNR Normal Detailed Time ms 9074 Total encoding time for frame Normal Detailed MET ms 5d Total motion estimation time for frame Normal Detailed Frm Fld FLDIFRM Picture coding mode Normal Detailed I 3d Intra Coded Macroblocks Detailed D 14 Direct mode direct spatial pred flag Detailed LO 2d ListO number of references Detailed 2d 14511 number of references Detailed RDP Picture Level RD decision Detailed Ref ie 07 He Normal Detailed H 264 14496 10 AVC Reference Software Manual Page 3 3 3 Using The JM Encoder Module 3 3 Encoder Limitations At this point the encoder is
22. 7 14 14 AdaptRndCrWFactorPNRef 5 47 14 15 4 7 15 Error Resilient Optimized Rate Distortion 202 000000 050 4 36 4 1 15 E LOSS RMCA teen regere senses UE OE E D a EC Re DER OD HER 4 36 4 7 15 2 LossRateB 4 7 15 3 LossRateC 47 15 4 NumberOfD codets 2 9 n eterne e RED DW e etti bog dd 4 36 4 7 16 RestrictRef Frames i e BUR ee Bt e Ete ve PER de e I RE HER RA 4 56 4 7 17 RestrictSearchRange 3 eie een rere epe er oe P Hee 4 36 2 718 DisableThresholdifig t Sn t e nean ee 4 37 4749 DisableBSkipRDO et e e en De e RE E ee ee 4 37 4 720 SkipIntraInInterSlices ee dece ie eie leet iere ie re e PIE eee br Ue bro re re XB eee e Ree cete etd 4 37 47 2l SearchMode3 etes rt uat uaa a dere 4 37 1 2 22 EPZS OptiOTis ERO ER QE 4 37 47 22 1 EPZSPattern s ERN NAR Bee ER OS 4 37 4 7 22 2 EPZSDualRefinement 4 38 A722 3 EPZSFiXedPredictors iere tete e REESE MEE NERIS ERES KDE 4 38 4 224 BPZS Temporal 7 eee te SEE RE EUR IRR E RI 4 7 22 5 EPZSSpatialMem z 47 22 6 EPZS Min re SS Call E ot e NH ERU Ronin enu 4 38 AA I PPZ SM ed he s REN NRW ERN 4 39 4 7 22 8 EPZSMaxThresScal
23. Class Numeric Integer Description Applies different methods when considering the improved motion compensation precision process in B slices Options 0 Disable rounding for B slices 1 Disable rounding for non reference B slices Non reference B slices are evaluated for alternative QPs during RDPictureDecision default 2 Apply rounding on every B slice This efectively disables the evaluation of alternative QPs during RDPictureDecision 4 2 51 ChangeQPStart Class Numeric Integer Description Allows the use of a secondary quantization parameter QP set from frame at temporal frame position ChangeQPStart Default value is 0 not used 4 2 52 ChangeQPI Class Numeric Integer Description Sets quantization parameter value for intra coded slices to be used from frame ChangeQPStart and beyond Allowable values in the range of to 51 Default value is 24 4 2 53 ChangeQPP Class Numeric Integer Description Sets quantization parameter value for inter P coded slices to be used from frame ChangeQPStart and beyond Allowable values in the range of to 51 Default value is 24 4 2 54 ChangeQPB Class Numeric Integer Description Sets quantization parameter value for non reference inter B coded slices to be used from frame ChangeQPStart and beyond Allowable values are in the range of 0 to 51 Default value is 24 4 2 55 ChangeQPBSRefOffset Class Numeric Integer Description
24. Default value is 0 disabled 4 7 292 VUI aspect ratio idc Class Numeric Integer Description Specifies the value of the sample aspect ratio of the luma samples Default value is 0 unspecified See Annex E Table E 1 of the AVC text for more info Options 0 Unspecified 1 1 1 square 2 12 11 H 264 14496 10 AVC Reference Software Manual Page 4 44 4 Encoder Parameters 3 10 11 4 16 11 5 40 33 6 24 11 7 20 11 8 32 11 9 80 33 10 18 11 11 15 11 12 64 33 13 160 99 14 4 3 15 3 2 16 2 1 17 254 Reserved 255 Extended SAR 4 7 29 3 VUI sar width Class Numeric Integer Description indicates the horizontal size of the sample aspect ratio in arbitrary units 4 7 29 4 VUI sar height Class Numeric Integer Description indicates the vertical size of the sample aspect ratio in the same arbitrary units as VUI sar width 4 7 29 5 VUI overscan info present flag Class Numeric Integer Description If equal to 1 it specifies that the overscan appropriate flag is present Default is 0 not present 4 7 29 6 VUI overscan appropriate flag Class Numeric Integer Description If equal to 1 this flag indicates that the cropped decoded pictures output are suitable for display using overscan If equal to 0 it indicates that the cropped decoded pictures output contain visually important information in the
25. Description Avoids testing Intra modes in Inter slices if best mode is P_SKIP or B_SKIP Default value 15 0 disabled 4 7 21 SearchMode Class Numeric Integer Description Enables Usage of Fast Motion Estimation Options 1 Full Search 0 Fast Full Search default 1 Uneven Multi Hexagon Search UMHex 2 Simplified Hexagon Search 3 Enhanced Predictive Zonal Search EPZS Note Currently common conditions specify that Fast Full Search should be used Options 1 and 2 are joint integer and fractional ME implementations EPZS on the other hand can operate simultaneously on both integer and fractional positions if desired 4 7 22 EPZS Options EPZS is a very generic FME scheme which can achieve very high performance For educational purposes but to also allow a user to refine the algorithm based on the target application additional parameters have been added to control the behavior of this scheme The scheme could be further extended as is described in the original contribution as to support more patterns and additional adaptation EPZS currently 4 7 22 1 EPZSPattern Class Numeric Integer Description Specifies primary refinement pattern for EPZS around best predictor Options 0 Diamond 1 Square H 264 14496 10 AVC Reference Software Manual Page 4 37 4 Encoder Parameters Extended Diamond default Large Diamond Subpixel Diamond PMVFAST switching la
26. Numeric Integer Description YUV format Options 0 4 0 0 1 4 2 0 default 2 4 2 2 3 4 4 4 4 1 14 Interleaved Class Numeric Integer Description Enables support for Packed Interleaved image formats By default if disabled 0 then a planar format is assumed Note that currently this parameter only affects the input video sequence Output video sequences are always generated using the planar format 4 1 15 SourceBitDepthLuma Class Numeric Integer Description Specifies input source bit depth for Luma component Allowable values are in the range of 8 default through 14 4 1 16 SourceBitDepthChroma Class Numeric Integer Description Specifies input source bit depth for Chroma component Allowable values are in the range of 8 default through 14 4 1 17 SourceBitDepthRescale Class Numeric Boolean Description If enabled then the bitdepth of the original sequence is altered according to OutputBitDepthLuma and OutputBitDepthChroma Default is 0 disabled 4 1 18 OutputBitDepthLuma Class Numeric Integer Description Specifies output source bit depth for Luma component Allowable values are in the range of 8 default through 14 4 1 19 OutputBitDepthChroma Class Numeric Integer Description Specifies input source bit depth for Chroma component Allowable values are in the range of 8 default through 14 4 1 20 OutputFile Class Text Description Output bitstream
27. RCBSliceBitRatio0 3 eed etn etre ee eee ei ie lt a ete eat Eie ex 47 26 12 RCBSliGeBitRatiol eere eer Ree Ue CIE TO NIE 4 7 26 13 RCBSliceBitRatio2 4 7 26 14 RCBSliceBitRatio3 4 7 26 15 RCBSliceBitRatio4 4 7 26 16 RCIoverPRatio 4 7 26 17 RCBoverPRatio 4 7 26 18 RCMinQPPSlice 4 7 26 19 eed etn teet Re ERR 4 7 26 20 RCMinQPISlice 4 7 26 21 RCMaxQPISlice s 47 26 22 RCMInOBBSHice s oio TO OM CHEER tene ertet em cete er 4 7 26 23 RCMaxQPBSlice e eie inde d eee rtr re n nre rete es 4 7 26 24 RCMinQPSPSlice 4 7 26 25 RCMaxQPSPSlice 4 7 26 26 RCMinQPSlIsSlice 4 7 26 27 RCMaxQPSISlice 4 7 27 Rate Distortion Optimized Quantization Parametetrs eese 4 43 4127 A UseRDOQlant nero ete ie be et e d ere e oie tende e bent e nete 4 43 41212 TOR EE terc Ga RR der OR ree pete 4 43 4 7 27 3 RDOQ CR 41 2T 4RDOQ DG GR e o tee en Y eO EON IY Nu REUNIR GRE LOIN nde Hi ce eds 4T 2 LS RDOQ QP NUM nh rd ee teta deed eet conde 4 7 27 6 RDOQ CP Mode 4 7 27 7 RDOQ 4 7 27 8 RDOQ Feast 4728 SELParameters s hie cata ecb au ER eh ceret e n oo a i cre te regle 4 281 GenerateS EIMessage 4 7 28 2 SEIMessageText 4 7 28 3 To
28. RDOQ QP Num Class Numeric Integer Description Number of QP values tested in RDO_Q I P B slice Allowable values are from 1 default to 9 4 7 27 6 RDOQ CP Mode Class Boolean H 264 14496 10 AVC Reference Software Manual Page 4 43 4 Encoder Parameters Description Fast mode decision for RDOQ by copying the mode of the first QP tested for all other QP values Default value is 0 disabled 4 7 27 7 RDOQ_CP_MV Class Boolean Description Fast motion estimation for RDOQ by copying the best motion vectors for each mode of the first QP tested for all other QP values Default value is 0 disabled 4 7 27 8 RDOQ_Fast Class Boolean Description Fast RDOQ decision method for multiple QPs based on CBP behavior 4 7 28 SEI Parameters 4 7 28 1 GenerateSEIMessage Class Boolean Description Adds data unregistered SEI message payload type 5 in the video Default value is 0 disabled 4 7 28 2 SEIMessageText Class Text Description Text message added as unregistered SEI 4 7 28 3 ToneMappingSEIPresentFlag Class Boolean Description Enable Tone mapping SEI Default value is 0 disabled 47 29 44 ToneMappingFile Class Text Description Tone mapping parameter file 4 7 29 VUI Parameters VUI Parameters specify directly the values of the corresponding VUI syntax elements 4 7 29 1 VUI_aspect_ratio_info_present_flag Class Boolean Description If enabled specifies that aspect ratio idc is present
29. Video Coding Standard in the IEEE Transactions on Circuits and Systems for Video Technology July 2003 Sullivan and T Wiegand Video Compression From Concepts to H 264 AVC Standard in Proceedings of the IEEE Special Issue on Advances in Video Coding and Delivery December 2004 D Marpe 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 e GJ Sullivan and T Wiegand Rate Distortion Optimization for Video Compression in the IEEE Signal Processing Magazine vol 15 no 6 pp 74 90 Nov 1998 The reference software described in these pages can be downloaded from the following link e httpZ iphome hhi de suehring tml 1 2 Authorized Use Permission The software package contains a text file and source code header comments containing disclaimer text that describes the terms associated with the use of the software and clarifying its copyright and patent rights status 1 The software coordinators should point out that considerable effort was done to reorganize the reference software remove almost all global variables make various components reentrant and modular while at the same time keeping or even extending the existing functionality of the software Nevertheless the interface of running the software has remained the same and thre should be little impact to
30. a reference picture divided by 4096 Default value is 4 4 7 14 12 AdaptRndCrWFactorBRef Class Numeric Integer Description Adaptive Rounding Weighting factor for chroma in B slices belonging to a reference picture divided by 4096 Default value is 4 4 7 14 13 AdaptRndCrWFactorINRef Class Numeric Integer H 264 14496 10 AVC Reference Software Manual Page 4 35 4 Encoder Parameters Description Adaptive Rounding Weighting factor for chroma in I and SI slices belonging to a non reference picture divided by 4096 Default value is 4 4 7 14 14 AdaptRndCrWFactorPNRef Class Numeric Integer Description Adaptive Rounding Weighting factor for chroma in P and SP slices belonging to a non reference picture divided by 4096 Default value is 4 4 7 14 15 AdaptRndCrWFactorBNRef Class Numeric Integer Description Adaptive Rounding Weighting factor for chroma in B slices belonging to a non reference picture divided by 4096 Default value is 4 4 7 15 Error Resilient Optimized Rate Distortion Optimization 4 7 15 1 LossRateA Class Numeric Integer Description Expected packet loss rate of the channel for the first partition Only valid if RDOptimization is set equal to 3 Default value is 0 4 7 15 2 LossRateB Class Numeric Integer Description Expected packet loss rate of the channel for the second partition Only valid if RDOptimization is set equal to 3 Default value is 0 4 7 15 3 LossRateC Clas
31. coded as P with B coded pictures 4 2 38 Log2MaxFNumMinus4 Class Numeric Integer Description This parameter sets the syntax element log2 max frame num minus4 which impacts the value of frame num in each slice If the parameter is set to 1 the value of log2 max frame num 4 is computed based on FramesToBeEncoded and the number of coded frames Otherwise log2 max frame num minusd is set equal to Log2MaxFNumMinus4 Default value is 0 Note With sliding window DPB operation the combination of log2 max frame minus4 equal to 0 and num ref frames equal to 16 could lead to inserting two reference frames with the same value of frame num into the DPB To avoid this the JM encoder prohibits this combination 4 2 39 Log2MaxPOCLsbMinus4 Class Numeric Integer Description This parameter sets the syntax element log2 max pic order cnt 150 minus4 which impacts the value of order cnt Isb If the parameter is set to 1 the value of log2 max pic order cnt 150 minus4 is computed based on FramesToBeEncoded and the number of B coded frames Otherwise log2 max pic order cnt 15 minus4 is set equal to Log2MaxPOCLsbMinus4 Default value is 2 Note Parameter has to be properly set to avoid repetitions of pic_order_cnt 4 2 40 GenerateMultiplePPS Class Boolean Description When enabled three different Picture Parameter Sets PPS are generated and included into the bitstream These Picture Parameter Sets allow the combi
32. coding mode Options 0 Disabled default 1 Fixed number of MBs per slice 2 Fixed number of Bytes per slice 3 Use Callback 4 3 2 SliceArgument Class Numeric Integer Description For SliceMode equal to 1 number of macroblocks per slice For SliceMode equal to two number of bytes per slice Default value is 0 invalid 4 33 slice groups 1 Class Numeric Integer Description Number of slice groups decremented by 1 1 0 one slice group two slice groups etc Default value is 0 4 3 4 slice group map type Class Numeric Integer Description Specifies slice group map type if num slice groups minus is lager than 0 sets the value of the syntax element slice group map type Options Interleave mode default Dispersed Mode Foreground with left over Box out Raster Scan Wipe Explicit Ota dA t to o Note For slice group map type equal to 0 2 or 6 additional parameters are read from a file specified in the SliceGroupConfigFileName parameter 4 3 5 slice group change direction flag Class Numeric Integer Description Sets the value of the syntax element slice group change direction flag Options 0 box out clockwise raster scan or wipe right default H 264 14496 10 AVC Reference Software Manual Page 4 26 4 Encoder Parameters 1 box out counter clockwise reverse raster s
33. eee teret n e eee ee eei e eco iu re 4248 33 PastCrIntraDecisiOn AD AS TSA Enable IPC M ree sc 4 2 49 Deblocking Filter Control aiite etie teet ee a 4 2 49 1 DFParametersFlag 4 2 49 2 DFDisableReflISlice 4 2 49 3 DFAlphaReflSlice 42 49 4 DEBetaRetISliCe 1 2 er e e tra be b 4 2 495 DEDiSableNRefIS E ete le Ee e nb EP RU vedete aE 4 2 49 6 DFAlphaNRefISlice 4 2 49 7 DFDisableReflISlice 4 2 49 8 DPAlIphaRetPSlice i reete epe ave nie ee ed e eec Und iet bt eir eee tee rd 4 2 49 9 DFBetaRefPSlice 4 2 49 10 DFDisableNRefPSlice 4 2 49 11 DFAlphaNRefPSlice 4 2 49 12 DEDisableRetfBSlice 5 eot crt ete eb tei tete 42 49 13 DBATphaRSetBSlice noit E Ga i ute e ERE M EP EC eR es eret 4 2 49 14 DFBetaRefBSlice P 42 49 15 DEDiSsableNRefBS lice erret tete eee a eee OW RAO eder Sega 4 2 49 16 DPAIphaNRefBSLCe erede dere eer odes Od ertet 4 2 50 Weighted Prediction Parameters tipon esseni eee a E ESEE nennen eene ene eene eS 4 19 4 2 50 1 WeightedPr diction z 5 RN RR ERI AR ERI M eR eter 4 19 4 2 50 2 WeightedBiprediction 4 20 4 2 50 3 Use WeightedReferenceME eU REI RR EROR ER e Rt Reg 4 20 4 2 50
34. entire region out to the edges of the cropping rectangle of the picture such that the cropped decoded pictures output should not be displayed using overscan Instead they should be displayed using either an exact match between the display area and the cropping rectangle or using underscan 4 7 29 7 VUI video signal type present flag Class Numeric Integer H 264 14496 10 AVC Reference Software Manual Page 4 45 4 Encoder Parameters Description If equal to 1 this flag specifies that the video_format video_full_range_flag and colour_description_present_flag flags are present Default is 0 not present 4 7 29 8 VUI video format Class Numeric Integer Description This parameter indicates the video format of the pictures When this flag is not present then the format is inferred as 5 unspecified Default is O Options Component PAL NTSC SECAM MAC Unspecified video format Reserved 4 7 29 9 VUI video full range flag Class Numeric Integer Description This parameter indicates the black level and range of the luma and chroma signals When not present the value shall be inferred to be equal to 0 default 4 7 29 10 VUI colour description present flag Class Numeric Integer Description When equal tol it specifies that colour primaries transfer characteristics and matrix coefficients are present When equal 100 d
35. file in RAW format Format is based on appropriate parameters in Sequence bitstream SPS input yuv Ref sequence for SNR 1 Write 4 2 0 chroma components for monochrome streams all chroma samples are set to value 128 H 264 14496 10 AVC Reference Software Manual Page 7 1 7 Using The JM Decoder Module 0 NAL mode 0 B 1 RTP packets 3 SNR computation offset parameter useful for computing PSNR compared to reference if encoding does not start from frame 0 Scale allowable values gt 0 Scales poc for SNR purposes System 1 does not compute SNR correctly currently if poc resets to zero this could happen in current encoder if IDRs are used 500000 Rate Decoder HRD conformance 104000 B decoder 73000 F decoder leakybucketparam cfg LeakyBucket Params 0 Error Concealment option Allowable values are disabled default 1 frame copy and 2 motion copy 2 Reference POC gap Default is 2 2 POC gap Default is 2 Enable silent decoding Default is 0 disabled 7 3 Decoder Output When running the decoder the decoder will display on screen rate distortion statistics for every frame coded Cumulative results will also be presented The output information generated may look as follows Input H 264 bitstream Output decoded YUV Output status file Input reference file Total decoding time i ae as D EE Average SINR
36. in SPS 2 Present only in PPS 3 Present in both SPS and PPS 4 9 3 5 ScalingListPresentFlag3 Class Numeric Integer Description Select scaling matrix for Inter4x4 Luma component Options 0 Not Present Use default values if ScalingMatrixPresentFlag is not 0 1 Present only in SPS 2 Present only in PPS 3 Present in both SPS and PPS 4 9 3 6 ScalingListPresentFlag4 Class Numeric Integer Description Select scaling matrix for Inter4x4 Chroma U component Options 0 Not Present Use default values if ScalingMatrixPresentFlag is not 0 1 Present only in SPS 2 Present only in PPS 3 Present in both SPS and PPS 4 9 3 7 ScalingListPresentFlag5 Class Numeric Integer Description Select scaling matrix for Intrer4x4 Chroma V component Options 0 Not Present Use default values if ScalingMatrixPresentFlag is not 0 H 264 14496 10 AVC Reference Software Manual Page 4 51 4 Encoder Parameters 1 Present only in SPS 2 Present only in PPS 3 Present in both SPS and PPS 4 9 3 8 ScalingListPresentFlag6 Class Numeric Integer Description Select scaling matrix for Intra8x8 Luma component Options 0 Not Present Use default values if ScalingMatrixPresentFlag is not 0 1 Present only in SPS 2 Present only in PPS 3 Present in both SPS and PPS 4 9 3 9 ScalingListPresentFlag7 Class
37. in the range 6 5 0 1 6 Default value is 0 H 264 14496 10 AVC Reference Software Manual Page 4 18 4 Encoder Parameters 4 2 49 12 DF DisableRefBSlice Class Numeric Integer Description Sets the value of the syntax element disable deblocking filter idc for B slices belonging to a reference picture Requires DFParametersFlag to be set Options 0 Default Additional loopfilter offsets are also encoded and considered during deblocking 1 Disables deblocking for all edges Disables deblocking at slice boundaries only 4 2 49 13 DFAlphaRefBSlice Class Numeric Integer Description Sets the value of the syntax element slice alpha c0 offset div2 for B slices belonging to a reference picture Requires DFParametersFlag to be set Allowable values are in the range 6 5 0 1 6 Default value is 0 4 2 49 14 DF BetaRefBSlice Class Numeric Integer Description Sets the value of the syntax element slice_beta_offset_div2 for B slices belonging to a reference picture Requires DFParametersFlag to be set Allowable values are in the range 6 5 0 1 6 Default value is 0 4 2 49 15 DFDisableNRefBSlice Class Numeric Integer Description Sets the value of the syntax element disable deblocking filter idc for B slices belonging to a non reference picture Requires DFParametersFlag to be set Options 0 Default Additional loopfilter offsets are a
38. multiple references are used at the cost of increased memory usage Default value is 0 disabled 4 2 24 ChromaMEEnable Class Boolean Description Considers Chroma components during motion estimation potentially improving chroma and even overall quality Requires ChromaMCBuffer to be enabled Options 0 Disabled default 1 Consider Chroma for Motion Compensation only for integer first level motion estimation 2 Consider Chroma for Motion Compensation for all motion estimation levels 4 2 25 ChromaMEWeight Class Numeric Integer Description Specifies weighting factor of chroma component distortion during motion estimation Default value is 1 4 2 26 DisableSubpelME Class Boolean Description Disables subpixel Motion Estimation Default value is 0 enabled 4 2 27 SearchRange Class Numeric Integer Description Sets allowable search range for Motion Estimation Default value is 16 Note If Rate Distortion Optimization is enabled the search window is centered around median predictor not 0 0 H 264 14496 10 AVC Reference Software Manual Page 4 9 4 Encoder Parameters 4 2 28 UseMVLimits Class Boolean Description Constrain maximum absolute motion vector values according to SetMVXLimit and SetMV YLimit values Default value is 0 disabled 4 2 29 SetMVXLimit Class Numeric Integer Description Sets maximum absolute horizontal motion vector value in integer pixel units De
39. no real impact within the encoder and its presence may not indicate that the proper constraints are imposed 4 7 29 21 VUI nal hrd parameters present flag Class Numeric Integer Description set to 1 this flag specifies that NAL HRD parameters pertaining to Type II bitstream conformance are present Default is O not present 4 7 29 22 VUI parameters present flag Class Numeric Integer Description If set to 1 this flag specifies that VCL HRD parameters pertaining to all bitstream conformance are present Default is O not present H 264 14496 10 AVC Reference Software Manual Page 4 47 4 Encoder Parameters 4 7 29 23 VUI_low_delay_hrd_flag Class Numeric Integer Description This flag specifies the HRD operational mode as specified in Annex C of the text When VUI fixed frame rate flag is equal to 1 this flag shall be equal to 0 4 7 29 24 VUI pic struct present flag Class Numeric Integer Description If this flag is equal to 1 it specifies that picture timing SEI messages are present that include the pic struct syntax element Default is 0 not present Note This flag has currently no real impact within the encoder and its presence may not indicate that the proper constraints are imposed 4 7 29 25 VUI bitstream restriction flag Class Numeric Integer Description If this flag is equal to 1 it specifies that several sequence bitstream restriction parameters are present withi
40. software only supports concatenated input sources i e all components and frames should be included in a single file Note For Unix Linux based systems directories should be separated using a forward slash while for DOS Windows systems directories should be separated using a backslash 4 The parameter InputFile1 has exactly the same functionality as InputFile and can be used in it s place Example 1 DOS lencod exe p InputFile f seq 420 176x144 foreman_176x144 30 yuv Example 2 Unix Linux lencod exe p InputFile vol seq 420 176x144 foreman 176x144 30 yuv 41 2 InputHeaderLength Class Numeric Integer Description Specifies inputfile header size in terms of bytes For RAW data files i e YUV this is usually 0 default 4 1 3 StartFrame Class Numeric Integer Description Specifies initial frame for encoding Default value is 0 4 1 4 FramesToBeEncoded Class Numeric Integer Description Specifies number of frames to be encoded Unlike earlier versions 14 2 and older this parameter now considers all frames at all layers primary and secondary Example 1 Code 10 frames using an IPPPP assignment and sequential ordering lencod exe p FramesToBeEncoded 10 Example 2 Code 10 frames using an IBBPBBPBBP assignment lencod exe p FramesToBeEncoded 10 p NumberBFrames 2 H 264 14496 10 AVC Reference Software Manual Page 4 1
41. the Enhanced Scalability Layer 0 default means that no Enhancement Layer is used 4 8 2 SparePictureOption Class Numeric Integer Description Options 0 No spare picture info default 1 Spare picture available 4 83 SparePictureDetectionThr Class Numeric Integer Description Threshold for spare reference pictures detection Default value is 0 4 84 SparePicturePercentageThr Class Numeric Integer Description Threshold for the spare macroblock percentage Default value is 0 4 9 FRExt profile parameters In this section all FRExt specific parameters are described including scaling matrices 8x8 transform usage lossless coding etc 4 9 1 Transform8x8Mode Class Numeric Integer Description Enables 8x8 Transforms H 264 14496 10 AVC Reference Software Manual Page 4 49 4 Encoder Parameters Options 0 Disabled Only 4x4 transforms are used default 1 Allows the additional use of 8x8 transform Results in optimal RD performance since it considers all possible modes 2 Consider only 8x8 transform modes i e disables 4x4 transform 4 9 2 SeparateColourPlane Class Boolean Description Enables use of separate colour plane coding Default value is 0 disabled 4 9 3 ScalingMatrixPresentFlag Class Numeric Integer Description Enable Quantization matrix support Options 0 Not Present Disabled Default 1 Present only in S
42. the end user H 264 14496 10 AVC Reference Software Manual Page 1 1 1 General Information 1 3 Points of Contact 1 3 1 Information For general inquiries with regards to the H 264 MPEG 4 AVC standard users may contact Dr Gary Sullivan garysull microsoft com Dr Thomas Wiegand wiegand hhi fraunhofer de and Dr Ajay Luthra aluthra motorola com Certain information can also be provided through the ITU www itu int and ISO www iso int websites Information pertinent to the reference software should be directed to the reference software coordinators see Section 1 3 2 1 3 2 Coordination Software coordination is performed by Mr Karsten S hring Karsten Suehring hhi fraunhofer de and Dr Alexis Michael Tourapis alexismt ieee org atour dolby com For further information on key contributors to the reference software implementation please check the files contributors h within the reference software package 133 Bug Reporting Any bugs relating to the usage of this package can be reported directly to the software coordinators using the dedicated Mantis bug tracking system at https ipbt hhi de Information of how to use this system can be found online Nevertheless it is suggested that the users consider the following simple rules before reporting any new bugs a The user should initialy search the database for earlier reports that may relate to the same issue If the problem has already been report
43. 4 WRMethod P 4 20 4 2 50 5 WPIterMC eee 4 20 4 2 50 6 EnhancedBWeightSupport 4 20 4 2 50 7 WPMCPrecision 4 20 4 2 50 8 4 21 4 2 50 9 91 e aede tet E 4 21 42 5 1 Start seve s ee e t edle ete ope ee we etd ae hav 4 21 42 52 ite e td pe eH WR EE etie bd t dete ded 4 21 H 264 14496 10 AVC Reference Software Manual Page iv 1 General Information 42 33 Change QPP e DEEP De err ET 4 21 4 254 ChangeQPB epe s RH RU ERREUR CHR 4 21 42 55 ChangeQP BSRefOffset crm e te et eio e E ee ea eh ORR 4 21 4 2 56 BRefPicQPOffset edes iet aite erit eee ie bee Lease deer ded ie ee roe 4 21 4 2 57 DirectModeLype HH IR 4 22 4 2 58 DirectInferenceFl g eeu nd oe ene tt Wen p rie ed eed nti eter es 4 22 4 2 99 aot E RO Qe el 4 22 42 60 ExplicitHierarchy Format eta det ete eaae 4 23 4 2 61 Hierarchy LevelOP Enable terre RO BS UHR ER a RE ren E SESS RI 4 24 4 2 62 ExplicitSeqCodiflg s ui eaae dS OD REI 4 24 4 2 03 ExplicitSeqFile cae edo Roue eese e
44. 7 26 15 RCBSliceBitRatio4 Class Numeric Double Description Sets the bitrate target ratio between B and P coded slices for hierarchical level 4 when RCUpdateMode is set to 3 Default value is 0 25 4 7 26 16 RCloverPRatio Class Numeric Double Description Sets the predicted bit ratio relationship complexity between I and P coded slices given the same QP Used only when RCUpdateMode is set to 3 Default value is 3 8 4 7 26 17 RCBoverPRatio Class Numeric Double Description Sets the predicted bit ratio relationship complexity between I and P coded slices given the same QP Used only when RCUpdateMode is set to 3 Default value is 0 45 4 7 26 18 RCMinQPPSlice Class Numeric Integer Description Sets the minimum allowable P slice QP value for the rate control Default value is 0 4 7 26 19 RCMaxQPPSlice Class Numeric Integer Description Sets the maximum allowable P slice QP value for the rate control Default value is 51 4 7 26 20 RCMinQPISlice Class Numeric Integer Description Sets the minimum allowable I slice QP value for the rate control Default value is 0 4 7 26 21 RCMaxQPlISlice Class Numeric Integer Description Sets the maximum allowable I slice QP value for the rate control Default value is 51 4 7 26 22 RCMinQPBSlice Class Numeric Integer Description Sets the minimum allowable B slice QP value for the rate control Default value is 0 4 7 26 23 RCMaxQPBSlice Class
45. 8 Inter Prediction amp Motion Compensation in B Slices Default value is 1 enabled 4 2 48 13 BSliceSearch amp x4 Class Boolean Description Enables 8x4 Inter Prediction amp Motion Compensation in B Slices Default value is 1 enabled 4 2 48 14 BSliceSearch4x8 Class Boolean Description Enables 4x8 Inter Prediction amp Motion Compensation in B Slices Default value is 1 enabled 4 2 48 15 BSliceSearch4x4 Class Boolean Description Enables 8x4 Inter Prediction amp Motion Compensation in B Slices Default value is 1 enabled 4 2 48 16 BiPredMotionEstimation Class Boolean Description Enables Multihypothesis based Motion Estimation for B slice coding Option currently only supports 16x16 block sizes and the first list O and list 1 references Option also considers weights if necessary Default value is 0 disabled For further information on such ME algorithms check the following papers S W Wu and A Gersho Joint estimation of forward and backward motion vectors for interpolative prediction of video in IEEE Transactions on Image Processing Vol 3 Iss 5 pp 684 7 Sept 94 H 264 14496 10 AVC Reference Software Manual Page 4 14 4 Encoder Parameters e Markus Flierl Thomas Wiegand and Bernd Girod A Locally Optimal Design Algorithm for Block Based Multi Hypothesis Motion Compensated Prediction Proceedings of the Data Compression Conference Snowbird USA April 1998 4 2 48 17 BiPredME
46. C Default value is 0 enabled 4 2 48 33 FastCrIntraDecision Class Boolean Description Perform a separate intra chroma mode decision prior to determining final coding mode Can provide significant encoding speedup Default value is 1 enabled 4 2 48 34 EnableIPCM Class Boolean Description Enables usage of I PCM macroblock mode Default value is 0 disabled H 264 14496 10 AVC Reference Software Manual Page 4 16 4 Encoder Parameters 4 2 49 Deblocking Filter Control Parameters to control in loop deblocking filter behavior 4 2 49 1 DFParametersFlag Class Boolean Description Sets the value of the syntax element deblocking filter control present flag Default value is O disabled Note Although currently the encoder supports multiple PPS this parameter still sets the same deblocking filter parameters for all coded pictures 4 2 49 2 DFDisableReflSlice Class Numeric Integer Description Sets the value of the syntax element disable deblocking filter idc for I slices belonging to a reference picture Requires DFParametersFlag to be set Options 0 Default Additional loopfilter offsets are also encoded and considered during deblocking 1 Disables deblocking for all edges Disables deblocking at slice boundaries only 4 2 49 3 DFAlphaReflSlice Class Numeric Integer Description Sets the value of the syntax element slice alpha c0 offset div2 for I slices belonging to a reference pict
47. Class Integer Description Mode bias for skip or intra modes during high complexity mode decision Can provide benefits in some scenarios Options 0 Penalize skip modes by 1 bit if mode cost is O default 1 No penalty 2 Penalize intra modes by 1 bit 4 7 5 RDPictureDecision Class Boolean Description If parameter is enabled the same picture is coded in up to 3 different modes and the one yielding the best Lagrangian cost is selected as the final coding mode for this picture Default value is 0 disabled Note If GenerateMultiplePPS is enabled then coding mode considers all different WP methods supported by a slice This includes normal weights offsets for P slices and normal implicit and explicit modes for B slices If RDPictureIntra intra slices are also coded multiple times by considering different Quantizers If the GenerateMultiplePPS parameter is not set then all slice types are considered using 3 different Quantizers Concept also can perform a switch to I slice decision for P slices if number of Intra MBs in a P slice is too high or consideration of different QPs if Weighted Prediction is not recommended i e weights are identical to default values Currently tends to increase complexity significantly but will be improved through the consideration of Fast Motion Estimation and decision schemes 4 7 6 DistortionSSIM Class Boolean Description Enable SSIM distortion computation for video
48. ColourPlane 5 5 e Fer ciere ve bte RB eee SP eec 4 9 3 ScalingMatrixPresentFlag 4 09 37 T Oma ttrixElle 4 5 a esee e et te eer e E VE erre etre neget ne teinte bo repite 4 9 3 2 ScalingListPresentFlagO 4 9 3 3 ScalingListPresentFlag 4 9 3 4 ScalingListPresentFlag2 4 9 3 5 ScalingListPresentFlag3 4 9 3 6 ScalingListPresentFlag4 4 9 3 7 ScalingListPresentFlag5 4 9 3 8 ScalingListPresentFlag6 4 9 3 9 ScalingListPresentFlag7 AD 4 EosslessCoding daten Ro nen eee dete e deret 5 HARDCODED ENCODER 5 5 1 5 1 DEFINES H 5 2 CONFIGFILE H 6 EXPLICIT SEQUENCE INFORMATION 6 2 6 1 6 1 7 USING THE JM DECODER MODULE uu cssssesssscesssssssesssssssessessssessessssessssssessessssessessssessessesessessesessores 7 1 7 1 DECODER SYNTAX rie OU ond epa ge ee dette ever 7 2 DECODER CONFIGURATION FILE FORMAT 7 3 DECODER OUTPUT d eerie pex e 8 HARDCODED DECODER 5 8 1 8 1 DEFINES H c NC Esc 8 1 9 SYSTEM GENERATED REPORTS OUT PUT eeeeeeeee nete teen enses tasses tasses than eta tn sse
49. DARE E 4 11 42 34 4 a e aue RI 4 11 4 2 39 ELog2MaxPOCEsbMin s4 e ese foetu gives de Hae ee RE 4 11 2 2 40 6 e diete ind 4 11 4 24 SendAUD e erae D er DR e RR PES 4 12 4 DAD ReSendS PS iei n ete ete pee ertet er Ped aee iuris cte ede eei eet need tg 4 12 1243 Resend PPS ii sus eoa e er RR a ante ee ade ONS 4 12 4244 PicOrderChIType iiie edo tese ete ride e Pe de ER eee SE ence eld 4 12 42 2 45 UseConstrainiedIntraPred ii aee n 4 12 4 240 MbEinelntraUpd tes x oe Le A AST RR ato 4 12 4 2 47 RandotaIntraMBRefresh eR eee e ee rte i e e ob p ide Pia i eae 4 12 4 2 48 Inter Intra Mode Prediction Control eee 4 13 42 48 L PShiCeSKIp 5 et ette tte eee reete deerit o eee eMe tere tete tede ette e eren 4 2 48 2 PSliceSearch16x16 55 A 2 483 PSHCESEArCH 1 eee eater 264 14496 10 AVC Reference Software Manual Page iii 1 General Information 2 248 4HPSliceSearch83 16 eerte t ER PR Mii ee Suds boats se Pete Sesh RR i AD ABS PSliceSearch8X8 A Lese essere 4 2 48 6 PSliceSeatch8x4 ien os eet tee EDS NIORT TESI e EP OO TET
50. EDistortionOPel ce ie ER rer eee iei eue te decks RI 4 6 4 2 22 MDDISIOTIOR is sis ERR RR eU er ied ene e IR 4 9 4 2 23 ChromaMC Buffer eee hd du eed eve ee ede i av i elves eme ie Hber ae Bee 4 9 4 2 24 eee et teen dene de ee enden dee eee e aer ind 4 9 4 2 25 Chr maMEWeight ane rh rr rH PER IHR e ERR 4 9 4 2 20 DisableSubpelME ete et ee et RI 4 9 42 27 Se rchR hge wx t rt vr Re Xd t e RO V EE TREES D 4 9 42 29 desaeaaveadevacdesaeteaceedouens 4 10 42 29 Set MV iter D a TUE 4 10 4 2 30 Set MVY Ett EDENDI EP URN 4 10 4 2 31 NumberReferenceFrarmes iun e vede ee e e Pete de A p iie 4 10 42 32 Lessee dite eee ge eite de eod deed ede ie ge te td 4 10 4 2 33 Dispos bleP eere er Pe RH EH ER FSI RUIT 4 10 4 2 34 DISDPOPOlfJfSet x c tert eet p UR ente rte ed n ett pte debes 4 10 42 33 B ListOReferencesu uet e a REPRE EATER MER ER ESPERE 4 10 2 2 36 BEistl References uico n ete e y castes subse EFE re 4 11 42 37 BReferencePICturesg e oe a e EREMO eR ERR ER E e ES Dine
51. Joint Video Team JVT of ISO IEC MPEG amp ITU T VCEG Document JVT AE010 ISO IEC JTC1 SC29 WG11 and ITU T SG16 Q 6 31st Meeting London UK 28 June 3 July 2009 Title Status Purpose Author s or Contact s Source Filename JVT AE010 doc 264 14496 10 AVC Reference Software Manual Input Document to JVT Proposed Amended Draft Alexis Michael Tourapis Athanasios Leontaris Dolby Laboratories Inc 3601 West Alameda Ave Burbank CA 91505 USA Karsten S hring Image Processing Department Fraunhofer Institute HHI Einsteinufer 37 10587 Berlin Germany Gary Sullivan Microsoft Corporation One Microsoft Way Redmond WA 98052 USA Tel Email 1 818 823 2842 1 818 823 2827 49 30 31002 209 1 425 703 5308 alexis tourapis dolby com athanasios leontaris dolby com Karsten Suehring hhi fraunhofer de garysull microsoft com Dolby Laboratories Inc Fraunhofer Institute HHI Microsoft Corporation Joint Video Team JVT of ISO IEC MPEG amp ITU T VCEG ISO IEC JTC1 SC29 WG11 and ITU T SG16 Q 6 H 264 14496 10 AVC REFERENCE SOFTWARE MANUAL Jan 2009 Revision Sheet Revision Sheet Release No Date Author Revision Description 10 08 04 AT KS GS Initial version of Reference Software Manual 01 12 05 AT KS GS Amendment to original document to reflect modified and new parameters 01 18 05 AT KS GS Amendment based on meeting notes 02 15 05
52. M GENERATED REPORTS OUTPUT H 264 14496 10 AVC Reference Software Manual Page 9 1 9 System Generated Reports Output 9 SYSTEM GENERATED REPORTS OUTPUT The Encoder and Decoder modules generate various reports that could be used for analysis purposes 9 1 log dat File provides summary statistics for all simulations initiated within the current directory This includes certain input parameters PSNR values bitrate encoding duration etc In more detail the parameters shown in this file are Name Format Purpose Ver W X Y Z Encoder Version W X main branch Y Z FRExt Date MM DD Simulation End Date Time HH MM Simulation End Time Sequence 30 30s Sequence Name 256 P MbInt d d Picture level AFF Macroblock level AFF QPI 3d I slice Quantizer QPP 3d P slice Quantizer QPB 3d B slice Quantizer Format 4 4 Width x Height Iperiod 3d Intra Period B 3d Number of B coded frames FMES FSIFFSIHEXISHEXIEPZS Fast Motion Estimation usage 1d 1d 1d Distortion functions for Motion estimation S R 3d Maximum Search Range around predictor for RDOPT ON Ref 2d Maximum number of references num_ref_frames Freq 3d Coded Video Frame Rate Coding CABACICAVLC Entropy Mode Used RD opt Rate Distortion Optimization Option 22 7 6x Tr d Mode usage of 8x8 transform Luma PSNR for first frame in seque
53. Numeric Integer H 264 14496 10 AVC Reference Software Manual Page 4 42 4 Encoder Parameters Description Sets the maximum allowable B slice QP value for the rate control Default value is 51 4 7 26 24 RCMinQPSPSlice Class Numeric Integer Description Sets the minimum allowable SP slice QP value for the rate control Default value is 0 4 7 26 25 RCMaxQPSPSlice Class Numeric Integer Description Sets the maximum allowable SP slice QP value for the rate control Default value is 51 4 7 26 26 RCMinQPSISlice Class Numeric Integer Description Sets the minimum allowable SI slice QP value for the rate control Default value is 0 4 7 26 27 RCMaxQPSISlice Class Numeric Integer Description Sets the maximum allowable SI slice QP value for the rate control Default value is 51 4 7 27 Rate Distortion Optimized Quantization Parametetrs 4 7 27 1 UseRDOQuant Class Boolean Description Enable Rate Distortion Optimized Quantization Default value is 0 disabled 4 7 27 2 RDOQ DC Class Boolean Description Enable Rate Distortion Optimized Quantization for DC components Default value is 0 disabled 4 7 27 3 RDOQ CR Class Boolean Description Enable Rate Distortion Optimized Quantization for Chroma components Default value is 0 disabled 4 7 27 4 RDOQ DC CR Class Boolean Description Enable Rate Distortion Optimized Quantization for Chroma DC components Default value is 0 disabled 4 7 27 5
54. PS 2 Present only in PPS 3 Present in both SPS and PPS 4 9 3 1 QmatrixFile Class Text Description File specifying the values of the quantization scaling matrices Used only if values are explicitly transmitted either at the SPS or PPS level Otherwise default values are used Example Specify specific Qmatrix for intra4x4 luma blocks Use default for all other modes S allimeMaceixerssencrlagHlao lee mar Cix cir p ScalingListPresentFlag0 1 4 9 3 2 ScalingListPresentFlagO Class Numeric Integer Description Select scaling matrix for Intradx4 Luma Component Options 0 Not Present Use default values if ScalingMatrixPresentFlag is not 0 1 Present only in SPS 2 Present only in PPS 3 Present in both SPS and PPS 4 9 3 3 ScalingListPresentFlag1 Class Numeric Integer Description Select scaling matrix for Intra4x4 Chroma U component H 264 14496 10 AVC Reference Software Manual Page 4 50 4 Encoder Parameters Options 0 Not Present Use default values if ScalingMatrixPresentFlag is not 0 1 Present only in SPS 2 Present only in PPS 3 Present in both SPS and PPS 4 9 3 4 ScalingListPresentFlag2 Class Numeric Integer Description Select scaling matrix for Intra4x4 Chroma V component Options 0 Not Present Use default values if ScalingMatrixPresentFlag is not 0 1 Present only
55. Refinements Class Boolean Description Enables additional ME refinements for Multihypothesis based ME Only considered if BiPredMotionEstimation is used Possible values are 0 5 Default value is O only initial step is performed 4 2 46 18 BiPredMESearchRange Class Numeric Integer Description Specifies search range for BiPredMotionEstimation However if BiPredMERefinements are used then search range is decreased by half for every additional refinement Default value is 8 4 2 46 19 BiPredMESubPel Class Numeric Integer Description Controls subpixel refinement for BiPredMotionEstimation Options 0 Disabled No Subpel refinement is performed default 1 Subpel refinement is performed only for first list 2 Subpel refinement is performed for both lists 4 2 48 20 BiPredSearchl6x16 Class Boolean Description Enables bipredictive motion estimation for 16x16 partitions in B Slices Default value is 1 enabled 4 2 48 21 BiPredSearchl6x6 Class Boolean Description Enables bipredictive motion estimation for 16x8 partitions in B Slices Default value is 0 disabled 4 2 48 22 BiPredSearch amp x1l6 Class Boolean Description Enables bipredictive motion estimation for 8x16 partitions in B Slices Default value is 0 disabled 4 2 48 23 BiPredSearch amp x amp Class Boolean Description Enables bipredictive motion estimation for 8x8 partitions in B Slices Default value is 0 d
56. Sets quantization parameter offset for reference inter B coded slices to be used from frame ChangeQPStart and beyond Allowable values are in the range of 51 to 51 Default value is 0 4 2 56 BRefPicQPOffset Class Numeric Integer Description Quantization offset parameter used for stored B slices Should be in the range 51 51 Default value is 0 H 264 14496 10 AVC Reference Software Manual Page 4 21 4 Encoder Parameters 4 2 57 DirectModeType Class Boolean Description Sets the value of the syntax element direct_spatial_mv_pred_flag which controls the direct mode type to be used 0 means temporal direct while 1 means spatial direct Default value is 0 temporal 4 2 58 DirectInferenceFlag Class Boolean Description Sets the value of the syntax element direct_8x8_inference_flag in the SPS which affects semantics of Direct Mode The value is constrained by level restriction in Annex A of H 264 AVC i e for any level above or equal to 3 the parameter needs to be equal to 1 and should be set appropriately even if no B slices are to be used Default value is 0 4 2 59 HierarchicalCoding Class Numeric Integer Description Enables the use of advanced coding picture structures for the secondary layer This includes the use of a hierarchical type order or explicit frame coding types ordering Options 0 Disabled default Use default coding types Use double layer approach More specifica
57. analysis Default value is 0 disabled 4 7 7 DistortionSSIM Class Boolean Description Enable SSIM distortion computation for video analysis Default value is 0 disabled H 264 14496 10 AVC Reference Software Manual Page 4 31 4 Encoder Parameters 47 8 DistortionYUVtoRGB Class Boolean Description Compute Distortion in both YUV and RGB color spaces Default value is 0 disabled 4 7 9 RDPictureIntra Class Boolean Description Enables RDPictureDecision for Intra slices based on different Quantizers Default value is 0 disabled 4 7 10 RDPSliceWeightOnly Class Numeric Boolean Description Performs RD Picture Decision for P slices only if explicit weights are available or if number of Intra macroblocks is high Default value is 1 enabled 4 7 11 RDBSliceWeightOnly Class Boolean Description Skips RD Picture Decision for B slices for explicit weighted prediction if explicit weights are not available without testing an alternative QP Otherwise if flag 0 and explicit WP is not available a QP 1 for non reference B and QP 1 for reference B will be tested as well Default value is 0 disabled 4 7 12 Lambda parameters for Lagrangian based optimization 4 7 12 1 CtxAdptLagrangeMult Class Boolean Description Flag enabled the Context Adaptive Lagrange Multiplier technique Technique works best for RDOptimization set to 0 Default value is 0 disabled 4 7 12 2 UseExplicitLambdaParams Class Numeri
58. as a reference only 4 7 26 2 RCUpdateMode Class Numeric Integer Description Specifies the Rate Control algorithm used when RateControlEnable is enabled Options 0 Original quadratic rate control scheme based on JVT G012r1 default 1 Extension of quadratic scheme for all Intra and IBsBsBs coding 2 Basic extension of quadratic scheme to better support hierarchical coding structures 3 Extension of quadratic scheme with slice type separation 4 7 26 3 Bitrate Class Numeric Integer Description Set target bitrate in bits per second for HRD conforming Rate Control Default value is 0 H 264 14496 10 AVC Reference Software Manual Page 4 40 4 Encoder Parameters 4 7 26 4 InitialQP Class Numeric Integer Description Set the initial quantization parameter for the HRD conforming Rate Control Parameter should be selected based on bitrate goal GOP length type and image spatiotemporal characteristics If 0 the encoder tries to automatically select the best quantizer for the first picture Default value is 0 4 7 26 5 BasicUnit Class Numeric Integer Description Number of Macroblocks in rate control basic unit Value needs to be a factor of the total number of MBs in a frame If 0 then Basic Unit is equal to the number of macroblocks in a slice Default value is 0 4 7 26 6 ChannelType Class Numeric Integer Description Type of Channel Options 0 Constant cha
59. bitrary coding orders and coding types In this section we will describe how one may use this file for encoding a video sequence It should be noted that this option is still experimental will be further extended in the future and should be used with care 6 1 File Format The explicit sequence information file needs to adhere to a strict file format The file needs to start with the heading Sequence Sequence information are then contained within curly brackets braces The first sequence level entry represents the number of frames that are present in the file FrameCount The 66 99 number is separated from FrameCount using a colon symbol FrameCount is followed by multiple Frame entries each one again contained within curly brackets braces Variables can be present in any order and can be repeated within the Frame structure only the last entry is considered Frame entries include the following parameters Supported Parameter Description SeqNumber Sequence order of frame in input video file Each frame is required to have a distinct number SliceType Slice type to be used when encoding this frame Reference Set whether this frame will be used as a reference or not IDRPicture Sets picture as IDR assuming picture is using I slices Currently ignored Example Sequence FrameCount 2 Frame SeqNumber 0 SliceType I Reference 1 Frame SeqNumber 1 SliceType I Reference 1
60. c Integer Description Enables the user to explicitly set the Lagrangian parameters instead of using the equation based approach within the reference software Default value is 0 disabled Options 0 Default disabled 1 Use multiplier based lambda computation i e 7 LambdaWeight x 29 1 2 Use constant lambda values i e 7 FixedLambda 4 7 12 3 UpdateLambdaChromaME Class Boolean Description Update Lambda for motion estimation to account for chroma consideration during this process Default value is 0 disabled 4 7 12 4 FixedLambdalslice Class Numeric Double H 264 14496 10 AVC Reference Software Manual Page 4 32 4 Encoder Parameters Description Sets value of constant Lagrangian multiplier for I slices if UseExplicitLambdaParams is set to 2 Default value is 0 10 4 7 12 5 FixedLambdaPslice Class Numeric Double Description Sets value of constant Lagrangian multiplier for P slices if UseExplicitLambdaParams is set to 2 Default value is 0 10 4 7 12 6 FixedLambdaBslice Class Numeric Double Description Sets value of constant Lagrangian multiplier for B slices if UseExplicitLambdaParams is set to 2 Default value is 0 10 4 7 12 7 FixedLambdaRefBslice Class Numeric Double Description Sets value of constant Lagrangian multiplier for reference B slices if UseExplicitLambdaParams is set to 2 Default value is 0 10 4 7 12 8 FixedLambdaSPslice Class Numeric Doub
61. c Hadamard SAD otion Estimation for components Y Image format 176x144 Error robustness Off Search range 32 Total number of references 10 References for P slices 2 ListO0 refs for B slices 2 Listl refs for B slices 2 Entropy coding method CABAC Profile Level IDC 100 40 EPZS Pattern Extended Diamond EPZS Dual Pattern Extended Diamond EPZS Fixed Predictors All P B EPZS Temporal Predictors Enabled EPZS Spatial Predictors Enabled EPZS Thresholds 16x16 256 0 768 EPZS Subpel ME Enabled Search range restrictions none RD optimized mode decision used Item Intra All frames SNR Y dB 0 00 0 00 SNR U V dB 0 00 0 00 0 00 0 00 Average quant 28 28 00 rit tec SNR T P B aa aaa a a ees Se d Se ee SS Se Se Se ee a SNR Y dB 0 000 0 000 0 000 SNR U dB SNR V dB Intra Mode 0 intra 4x4 Mode 1 intra 8x8 Mode 2 intra 16x16 Mode intra IPCM Inter ode 0 copy ode 1 16x16 ode 2 16x8 ode 3 8x16 ode 4 8x8 ode 5 intra 4x4 ode 6 intra 8x8 ode 7 intra 16x16 ode intra IPCM B frame ode 0 copy ode 1 16x16 ode 2 16x8 ode 3 8x16 ode 4 8x8 ode 5 intra 4x4 ode 6 intra 8x8 ode 7 intra 16x16 ode intra IPCM Header Mode Motion Info CBP Y C Coeffs Y Coeffs C Delta quant Stuffing Bits NOTE Statistics are not collected correctly when Picture or Macroblock Level Field Frame coding is enabled
62. can or wipe left 4 3 6 slice group change rate 1 Class Numeric Integer Description Sets the value of the syntax element slice group change rate 1 Default value is 0 4 3 7 SliceGroupConfigFileName Class Text Description Slice configuration file used for slice group map types 0 2 and 6 For slice group map type equal to 0 the file consist of one run length minus1 syntax elementvalue per line For slice group type equal to 2 file contains in rows with odd line numbers the values for top left syntax elements and rows with even line numbers the values bottom right syntax elements For slice group map type equal to 6 each line contains a value of a slice group id syntax element 4 3 8 UseRedundantPicture Class Boolean Description Enables the use of redundant pictures Default value is 0 disabled 4 3 9 NumRedundantHierarchy Class Numeric Integer Description Hierarchy mode of redundant pictures Allowed values are in the range of 0 to 4 4 3 10 PrimaryGOPLength Class Numeric Integer Description GOP length for redundant allocation 1 16 NumberReferenceFrames must be no less than PrimaryGOPLength when redundant slice is enabled 4 3 11 NumRefPrimary Class Numeric Integer Description Actually used number of references for primary slices 1 16 4 4 SP coding support 441 SPPicturePeriodicity Class Numeric Integer Description Sets period of SP coded f
63. characterized by certain limitations which may limit its usage In particular some items that have been identified as being problematic or not properly supported in the software include e The encoder may not perform all level profile checks as specified in Annex A of the standard which may result in incompatible non conforming bitstreams e The currently provided Rate Control is not a state of the art scheme and its slow adaptation speed can result in the encoder not properly achieving the target bit rate for short sequences e Picture Level RD Optimization does not currently fully support interlace coding modes and may require memory optimizations e Adaptive coding structures i e creating Hierarchical groups of pictures of different length and with different coding type arrangements are not supported SP SIcode in the encoder is broken This should be fixed in version 16 1 e Reduntant picture encoding works only with some settings H 264 14496 10 AVC Reference Software Manual Page 3 4 4 Encoder Parameters 4 ENCODER PARAMETERS H 264 14496 10 AVC Reference Software Manual 4 Encoder Parameters 4 ENCODER PARAMETERS 4 1 File Input Output Related Parameters These parameters specify input output control of the encoder including input source output generated bitstreams or reconstructed sequence file names and file format 4 1 4 InputFile Class Text Description Input sequence file name Name could include file path Current
64. control options 4 5 1 SymbolMode Class Numeric Integer Description Entropy Coding method Options 0 CAVLC default 1 CABAC 4 5 2 ContextInitMethod Class Numeric Integer Description CABAC context initialization method Options 0 Fixed default 1 Adaptive H 264 14496 10 AVC Reference Software Manual Page 4 28 4 Encoder Parameters 4 5 3 FixedModelNumber Class Numeric Integer Description CABAC initialization model number for fixed initialization ContextInitMethod equal to 0 Allowed model numbers are 0 1 and 2 Default value is 0 4 5 4 OutFileMode Class Numeric Integer Description Output File mode Options 0 Annex B Byte Stream format default 1 RTP packets 4 5 5 PartitionMode Class Numeric Integer Description Enables Data Partitioning Options 0 No Data Partitioning default 1 Three partitions per slice 4 6 Interlace Format Handling Options enable interlace coding modes such as field coding Picture and Macroblock adaptive Field Frame coding etc 4 6 1 PicInterlace Class Numeric Integer Description Enables adaptive field frame coding support at the frame level Options 0 Use Frame picture coding mode only Default 1 Use field picture coding mode only Use adaptive frame field picture coding mode Decision is based on lagrangian RDO of the form J Distort
65. de pee d ive Busta epi Ue Rete ee see 4 25 7 2 64 ReferenceReotder ie ege det de PP Eee Dite endete eie dde ee end 4 25 4 2 05 PocMemoryManagement iei tee e ag er er PR a re 4 25 4 3 ERROR RESILIENCY AND SLICE CONTROL 4 26 AEST PE 4 26 2 3 2 SIICCATRUIMENE ose ore e a a aa Seer cie Tet 4 26 4 3 3 num slice groups minus ue e a 4 26 43 4 slice eroup map type s e d T HIE NOCERE REG 4 26 4 3 5 slice group change direction e ee ete ied eb ede 4 26 4 3 6 slice group change rate enne eene trennen E 4 27 4 3 7 SliceGroupConfigFileName iiiter rt teer t epe er per dr e as 4 27 4 3 8 UseRedu ndantPictUfe s eet ette ire eto eet e teeth ete e 4 27 4 3 9 NumRedundantHierarchy serren 5 oe EO e e ER ERE CU RE ER t Ho reb crie e SPUR 4 27 42 3 10 PrimaryGOPLength 1 e ette pere eee dette Yen rec EUR Steele yea re HR Pepe OE ESCORT 4 27 4 3 11 NumRefPrima ry SE REPERI n Ee bt EUH prb REESE RUE 4 27 4 4 SP CODING SUPPOR t eate tr ger Ut evecta ERES eer eee ERE Re eo eg 4 27 ZA SPPicturePeriodicityss eoe e esed e o e e pecie i uae co vene se YO CN Ee RUM 4 27 4 4 2 OPSPPicture
66. e 439 4 7 22 9 EPZSSubPelME 4 39 4 77 22 10 BPZSSubPelMBEBBipred tees coven boss a 4 39 H 264 14496 10 AVC Reference Software Manual Page vi 1 General Information 4 122 I EPZSSubPelThresscale Eee vaste tesa A RUE ER M e ae E 4 39 4 722 12 BPZSS bPelOtid 1 3 1 1 oet eet ettet aer re te e inen 4 39 4 7 23 UM Hex Options so ere PERPE 4 39 4 123 T1 UMHSexDSR cede rr ete nere e OH GT dee led teet tesi he lad bte rie o tee rin ieu 4 39 4 7 23 2 UMBHexS Cale eve eU Ere sh Santana EURO 4 39 4 7 24 EarlySkipEnable e eg ame a e expeti ea 4 40 17 25 SelectivelntraEnable ie ae ee tiet dte liae dee Fem EE OR 4 40 4 7 26 Rate Control amp HRD support 4 40 4 7 26 1 RateControlEnable 4 7 26 2 RCUpdateMode 5 4 26 3 SIU EE 1 x cate i 479641 CTI ORO ERE 4 7 26 5 BasicUnit 41 26 0 C hannebLypec em mg eta diete a eT 4 426 NumberofLeakyBuckets deer i erret e ridere e re trees 4 7 26 8 LeakyBucketRateFile 4 7 26 9 LeakyBucketParamFile 4 7 26 10 RCISliceBitRatio x 4 26 LL
67. e that for the previous example we would prefer having only 3 levels and that each level follows a sequential coding order More specifically we would like the coding order to be as 10 8 52 Bs4 Bs6 B1 B3 B5 B7 P16 Note that this structure would now look as follows i e we observe that now references are differently organized than in the previous case Figure 2 3 Level Hierarchical structure The above could be easily done using HierarchicalCoding mode 1 which automatically generates this hierarchy HierarchicalCoding mode 3 could also be used lencod exe NumberReferenceFrames 5 p NumberBFrames 7 p HierarchicalCoding 1 p QPBSlice 26 p BRefPicQPOffset 2 p BList References 1 p BListlReferences 1 4 2 60 ExplicitHierarchyFormat Class Text Description Parameter used with HierarchicalCoding 3 and specifies coding method i e type quantizer coding order etc of a frame Parameter also overwrites use of NumberBFrames Syntax TypeFrame0 OrderFrame0 ReferenceFrame0 QPFrame0 TypeFramel OrderFrame 1 Referenc eFramel QPFramel TypeFrameN OrderFrameN ReferenceFrameN QPFrameN H 264 14496 10 AVC Reference Software Manual Page 4 23 4 Encoder Parameters Allowed entries TypeFrameN I Intra coded frame P p P type coded frame B b B type coded frame 0 FrameSkip specifies display order of coded frame No duplicates are al
68. ed however the user would like to report additional information that may help in the resolution of the software this can be added to the original report b The user should specify if the problem relates to the encoder decoder or both c The software version should be specified Note however that it is recommended that the user first examines the latest version of the software and whether the problem to be reported has already been resolved d The bug encountered needs to be described as precisely as possible e The necessary steps to reproduce the problem should be described f The configuration files that were used or any other files that may be relevant to this bug and may help with its resolution should be provided g The users are strongly adviced to use the language followed by the standard when referencing the text description h After a user files a report he she should frequently examine whether any additional information is requested relating to this issue 1 4 Organization of the Manual In 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 Linux 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 decod
69. efault it specifies that colour primaries transfer characteristics and matrix coefficients are not present 4 7 29 11 VUI colour primaries Class Numeric Integer Description This parameter indicates the chromaticity coordinates of the source primaries When this flag is not present its value shall be inferred to be equal to 2 the chromaticity is unspecified or is determined by the application Default is 2 4 7 29 12 VUI transfer characteristics Class Numeric Integer Description This parameter indicates the opto electronic transfer characteristic of the source picture When this syntax element is not present its the value shall be inferred to be equal to 2 the transfer characteristics are unspecified or are determined by the application Default is 2 4 7 29 13 VUI matrix coefficients Class Numeric Integer Description This parameter describes the matrix coefficients used in deriving luma and chroma signals from the green blue and red primaries When this syntax element is not present its value shall be inferred to be equal to 2 default H 264 14496 10 AVC Reference Software Manual Page 4 46 4 Encoder Parameters 4 7 29 14 VUI loc info present flag Class Numeric Integer Description If flag is set tol it specifies that chroma sample loc type top field and chroma sample loc type bottom field are present If set equal to 0 default it specifies that these parameters are not present
70. eneral Information Page 1 3 2 Installation and Compilation 2 INSTALLATION AND COMPILATION H 264 14496 10 AVC Reference Software Manual 2 Installation and Compilation 2 INSTALLATION AND COMPILATION 2 1 Windows using MS Visual Studio NET The software package contains a Visual Studio NET workspace named jm 51 for 2003 v7 a workspace named jm 8 51 for NET 2005 v8 and a workspace named 9 51 for NET 2008 v9 The user should select the appropriate solution according to his her NET package These workspaces include the following three projects lencod H 264 AVC reference encoder ldecod H 264 AVC reference decoder rtpdump a tool for analyzing contents of RTP packets rtp loss atool for simulating RTP packet losses Select the desired project and the appropriate compilation mode i e Debug or Release Compilation will create the binaries lencod exe or ldecod exe in the bin directory rtpdump exe and rtp loss exe will be created in the rtpdump and rtp loss directories respectively For compile time settings and options see section 5 Please note that the software package does not anymore provide support for Visual Studio 6 2 2 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 for compilation In most shell
71. er syntax and parameters while finally Section 8 0 presents some of the output reports generated by the different modules of this software distribution H 264 14496 10 AVC Reference Software Manual Page 1 2 1 5 1 5 1 1 5 2 1 5 3 1 5 4 1 5 5 1 5 6 1 5 7 1 5 8 1 5 9 1 5 10 1 5 11 1 5 12 1 5 13 1 5 14 1 5 15 1 5 16 1 5 17 1 5 18 1 5 19 1 5 20 1 5 21 1 5 22 1 5 23 1 5 24 1 5 25 1 5 26 1 5 27 1 5 28 Acronyms and Abbreviations AVC CABAC CAVLC CBR DPB EPZS FFS FME FRExt FS GOP HGOP HRD IDR MB MBAFF NAL Pel PSNR RTP SAD SATD SEI SSE SSIM UMHex VBR VUI Advanced Video Codec Context based Adaptive Binary Arithmetic Coding Context based Adaptive Variable Length Coding Constant Bit Rate Decoded Picture Buffer Enhanced Predictive Zonal Search Fast Full Search Fast Motion Estimation Fidelity Range Extension Full Search Group of Pictures Hierarchical Group of Pictures Hypothetical Reference Decoder Instantaneous Decoding Refresh Macroblock Macroblock Adaptive Frame Field Coding Network Abstraction Layer Pixel Peak Signal to Noise Ratio Rapid Transport Protocol Sum of Absolute Differences Sum of Absolute Transformed Differences Supplemental Enhancement Information Sum of Square Errors Structural Similarity Index Uneven Multi Hexagon search Variable Bit Rate Video Usability Information H 264 14496 10 AVC Reference Software Manual 1 G
72. es if UseExplicitLambdaParams is set to 1 Default value is 1 50 4 7 13 OffsetMatrixPresentFlag Class Boolean Description Enable explicit Quantization offset support Default value is 0 disabled 4 7 13 1 QOffsetMatrixFile Class Text Description File specifying the values of the explicit quantization offset matrices Example Specify specific Q offset matrices for all blocks from file q_offset_matrix cfg lencod exe p OffsetMatrixPresentFlag 1 matrix CECY 4 7 14 AdaptiveRounding Class Boolean Description Enables adaptive rounding based JVT_NO11 Default value is 0 disabled 4 7 14 1 AdaptRoundingFixed Class Numeric Integer Description Consider adaptive rounding separately for different quantization parameters Options 0 Separate QPs 1 Joint default 4 7 14 2 AdaptRndPeriod Class Numeric Integer Description Sets the macroblock period of when to use updated rounding parameters Default value is 16 In a value of 1 was used 4 7 14 3 AdaptRndChroma Class Numeric Integer Description Performs adaptive rounding for chroma If disabled only luma is considered Default value is O disabled H 264 14496 10 AVC Reference Software Manual Page 4 34 4 Encoder Parameters 4 7 14 4 AdaptRndWFactorIRef Class Numeric Integer Description Adaptive Rounding Weighting factor for luma in I and SI sl
73. et fic G uusewmel cielsssel i Cusine scs lj p EncParaml EncValuel p EncParamM EncValueM Options h Prints parameter usage d Use lt defenc cfg gt default for parameter initializations If not used then file defaults to encoder cfg in local directory F Read lt curencM cfg gt resetting selected encoder parameters Multiple files could be used that set different parameters Set parameter lt EncParamM gt to lt EncValueM gt The entry for lt EncParamM gt is P case insensitive See section 4 for a description of all parameters Supported video file formats The software supports both planar and interleaved packed raw image data 8 to 14 bit sample inputs Furthermore support is provided for both concatenated all video frames in a single file and separate all frames in distinct separate video data See more information about different raw pixel formats at http www fourcc org RAW yuv rgb P444 Planar 4 4 4 P422 Planar 4 2 2 P420 Planar 4 2 0 P400 Planar 4 0 0 1444 Packed 4 4 4 1422 Packed 4 2 2 1420 Packed 4 2 0 IYUV YV12 Planar 4 2 0 IYUI Packed 4 2 0 UYYVYY IYU2 Packed 4 4 4 UYV YUY2 Packed 4 2 2 YUYV YUV Packed 4 4 4 YUV Examples of usage lencod exe lencod exe h lencod exe d default cfg lencod exe curencl cfg H 264 14496 10 AVC Reference Software Manual Page 3 1
74. fault value is 2048 4 2 30 SetMVYLimit Class Numeric Integer Description Sets maximum absolute vertical motion vector value in integer pixel units Default value is 512 Value is further constrained according to LevelIDC limits 4 2 31 NumberReferenceFrames Class Numeric Integer Description Sets the maximum number of references stored in the Decoded Picture Buffer DPB for motion estimation and compensation Essentially sets the syntax element num_ref_frames in the sequence parameter sets Default value is 1 Note This parameter needs to conform to level constrains See Annex A 4 2 32 PListOReferences Class Numeric Integer Description Override of allowable references used for predicting P slices basically sets the syntax element num_ref_idx_l0_active_minusl default sets number to be equal to NumberReferenceFrames Value needs to be smaller or equal to NumberReferenceFrames 4 2 33 DisposableP Class Boolean Description Enable non reference P slices in the primary layer Default value is 0 disabled Note This arameter will enable the encoding of a sequence of the form JOp1P2p3P4p5 where the numeric index corresponds to coding and display order while uppercase and lowercase imply reference and non reference pictures respectively 4 2 34 DispPQPOffset Class Numeric Integer Description Specifies quantization parameter QP offset used for non reference P slices 4 2 35 BListOReferences Cla
75. file name Name could include file path H 264 14496 10 AVC Reference Software Manual Page 4 3 4 Encoder Parameters Note For Unix Linux based systems directories should be separated using a forward slash while for DOS Windows systems directories should be separated using a backslash V Example I MmeCCl eke p 177551440 SO S app 4 p OutputFile foreman 264 4 1 21 ReconFile Class Text Description Output reconstructed file name Name could include file path If empty no output is generated 4 1 22 TraceFile Class Text Description Bitstream Trace file name File is useful for debugging To enable code needs to be compiled by setting the define TRACE in defines h to 1 Note Trace file generation may fail if the size of the trace file exceeds 2GB Warning Enabling this option may result in the generation of very large files while it could also slow down encoding considerably Enable with caution Parameter recommended for debugging purposes 4 1 23 StatsFile Class Text Description Statistics output file The file contains an overview of different coding statistics for the entire sequence such as number and types of intra and inter macroblocks used motion vector and redisual bit information etc 4 1 24 ReportFrameStats Class Boolean Description Allows the generation of a file stat frame dat containing statistical informati
76. formed Hadamard Differences SATD 4 2 20 MEDistortionHPel Class Numeric Integer Description Error Metric for Half Pel second layer motion estimation Options 0 Sum of Absolute Differences SAD 1 Sum of Square Errors SSE 2 Sum of Absolute Transformed Hadamard Differences SATD default 4 2 21 MEDistortionQPel Class Numeric Integer Description Error Metric for Quarter Pel third layer motion estimation Options 0 Sum of Absolute Differences SAD 1 Sum of Square Errors SSE 2 Sum of Absolute Transformed Hadamard Differences SATD default H 264 14496 10 AVC Reference Software Manual Page 4 8 4 Encoder Parameters 4 2 22 MDDistortion Class Numeric Integer Description Error Metric for Mode distortion operations Note If RDOptimization is set to 0 this parameter should be set to exactly the same value as the last subpixel refinement performed That is if DisableSubpelME is 0 MDDistortion should be equal to MEDistortionQPel Otherwise if DisableSubpelME is 1 MDDistortion should be equal to MEDistortionFPel Options 0 Sum of Absolute Differences SAD 1 Sum of Square Errors SSE 2 Sum of Absolute Transformed Hadamard Differences SATD default 4 2 23 ChromaMCBuffer Class Boolean Description Generates and stores sub pixel values for chroma components Can improve performance somewhat if
77. ices belonging to a reference picture divided by 4096 Default value is 4 4 7 14 5 AdaptRndWFactorPRef Class Numeric Integer Description Adaptive Rounding Weighting factor for luma in P and SP slices belonging to a reference picture divided by 4096 Default value is 4 4 7 14 6 AdaptRndWFactorBRef Class Numeric Integer Description Adaptive Rounding Weighting factor for luma in B slices belonging to a reference picture divided by 4096 Default value is 4 4 7 14 7 AdaptRndWFactorINRef Class Numeric Integer Description Adaptive Rounding Weighting factor for luma in I and SI slices belonging to a non reference picture divided by 4096 Default value is 4 4 7 14 8 AdaptRndWFactorPNRef Class Numeric Integer Description Adaptive Rounding Weighting factor for luma in P and SP slices belonging to a non reference picture divided by 4096 Default value is 4 4 7 14 9 AdaptRndWFactorBNRef Class Numeric Integer Description Adaptive Rounding Weighting factor for luma in B slices belonging to a non reference picture divided by 4096 Default value is 4 4 7 14 10 AdaptRndCrWFactorIRef Class Numeric Integer Description Adaptive Rounding Weighting factor for chroma in I and SI slices belonging to a reference picture divided by 4096 Default value is 4 4 7 14 11 AdaptRndCrWFactorPRef Class Numeric Integer Description Adaptive Rounding Weighting factor for chroma in P and SP slices belonging to
78. ierarchicalCoding 2 4 2 61 HierarchyLevelQPEnable Class Boolean Description Parameter if enabled adjusts QP values for hierarchical structures based on the current level in increments of 1 Ignores the BRefPicQPOffset parameter Default value is 0 disabled 4 2 62 ExplicitSeqCoding Class Boolean H 264 14496 10 AVC Reference Software Manual Page 4 24 4 Encoder Parameters Description Encode video sequence using the Explicit Seq Coding metadata file provided by ExplicitSeqFile Default value is 0 disabled Note This option is still experimental 4 2 63 ExplicitSeqFile Class Text Description Name of Explicit Seq Coding metadata file used when ExplicitSeqCoding is enabled 4 2 64 ReferenceReorder Class Boolean Description Performs reference picture list reordering for P coded frames based on POC values This essentially places references according to temporal correlation instead of coding order Default value is 0 disabled Note ReferenceReorder is not supported for interlace coding modes Example In example 1 of 4 2 60 the default coding order that will be used for coding frame 16 will be Bs6 Bs2 Bs4 P8 10 Nevertheless temporally frame 8 is much closer to frame 16 and therefore this coding mode may not be as efficient Instead we want to use reordering commands to consider references according to their display order lencod exe NumberReferenceFrames 5 p FrameSkip 7 p Hie
79. implies unsigned short which is suitable for all types including 10 12 bit content When set to 0 this option can provide considerable memory savings and some speed advantages when encoding 8 bit content Enables field context types for CABAC Required for interlaced coding If coding only progressive content disabling flag can provide some encoding speed up Enables High 444 context types for CABAC If disabled results in speedup of non High444 profile encodings Ensures that gt 8 bit content have no values that would result in out of range results Allows encoding in grayscale of full colored image data Accuracy bits for the motion estimation lambda value Enables tracefile generation Definition avoids generation of infinite SNR by always forcing at least one difference sample 8x8 block Luma coefficient threshold cost Chroma coefficient threshold cost Macroblock Luma coefficient threshold cost Threshold for P8x8 sub macroblocks Perform integer divides shifts during ME Use table lookup for distortion computations Sets default encoder configuration file H 264 14496 10 AVC Reference Software Manual 6 Explicit Sequence Information File 6 EXPLICIT SEQUENCE INFORMATION FILE H 264 14496 10 AVC Reference Software Manual 6 Explicit Sequence Information File 6 EXPLICIT SEQUENCE INFORMATION FILE The explicit sequence information file ExplicitSeqFile enables the JM encoder to encode a video sequence using ar
80. in P Slices Default value is 1 enabled 4 2 48 4 PSliceSearch8x16 Class Boolean Description Enables 8x16 Inter Prediction amp Motion Compensation in P Slices Default value is 1 enabled 4 2 48 5 PSliceSearch amp x Class Boolean Description Enables 8x8 Inter Prediction amp Motion Compensation in P Slices Default value is 1 enabled 4 2 48 6 PSliceSearch8x4 Class Boolean Description Enables 8x4 Inter Prediction amp Motion Compensation in P Slices Default value is 1 enabled 4 2 48 7 PSliceSearch4x6 amp Class Boolean Description Enables 4x8 Inter Prediction amp Motion Compensation in P Slices Default value is 1 enabled 4 2 48 8 PSliceSearch4x4 Class Boolean Description Enables 8x4 Inter Prediction amp Motion Compensation in P Slices Default value is 1 enabled H 264 14496 10 AVC Reference Software Manual Page 4 13 4 Encoder Parameters 4 2 48 9 BSliceSearch16x16 Class Boolean Description Enables 16x16 Inter Prediction amp Motion Compensation in B Slices Default value is 1 enabled 4 2 48 10 BSliceSearch16x8 Class Boolean Description Enables 16x8 Inter Prediction amp Motion Compensation in B Slices Default value is 1 enabled 4 2 48 11 BSliceSearch amp x16 Class Boolean Description Enables 8x16 Inter Prediction amp Motion Compensation in B Slices Default value is 1 enabled 4 2 48 12 BSliceSearch amp x8 Class Boolean Description Enables 8x
81. ion A x Rate where Distortion is the SSE distortion of the 2 entire reconstructed frame or both fields 4 is the lagrangian parameter and Rate is the allotted bits for coding the frame or fields respectively Note Decision is suboptimal but works well under certain conditions 4 6 2 MBInterlace Class Numeric Integer Description Enables adaptive field frame coding support at the macroblock level Options 0 Use Frame coding mode only mb_adaptive_frame_field_flag 0 Default 264 14496 10 AVC Reference Software Manual Page 4 29 4 Encoder Parameters 1 Set mb adaptive frame field flag 1 but code all macroblocks in frame in field mode Mainly useful for testing purposes 2 Performs RD optimal decision between frame coded super macroblocks and field coded supermacroblocks 3 Like option 1 but all macroblocks coded as frame macroblocks Mainly useful for testing purposes Note Decision is suboptimal but works well under certain conditions Example 1 To encode a sequence using field frame adaptive coding at both frame and macroblock level encoder should be set as follows lencod exe p PicInterlace 2 p MBInterlace 2 Example 2 Use only field frame adaptive coding at the frame level lencod exe p PicInterlace 2 p MBInterlace 0 4 6 3 IntraBottom Class Boolean Description Forces both fields of a complementary field pair to be coded u
82. isabled 4 2 48 24 DisableIntra4x4 Class Boolean H 264 14496 10 AVC Reference Software Manual Page 4 15 4 Encoder Parameters Description Disables all intra 4x4 modes Default value is 0 enabled 4 2 48 25 DisableIntral6x16 Class Boolean Description Disables all intra 16x16 modes Default value is 0 enabled 4 2 48 26 DisableIntralnInter Class Boolean Description Disable Intra prediction modes in sections 4 2 48 9 through 4 2 48 31 for Inter P or B slices Default value is 0 Intra prediction modes enabled in all slice types 4 2 48 27 Intra4x4ParDisable Class Boolean Description Disables I4x4 Vertical and Horizontal prediction modes Default value is 0 enabled 4 2 48 28 Intra4x4DiagDisable Class Boolean Description Disables 14 4 Diagonal Down Left and Diagonal Down Right prediction modes Default value is 0 enabled 4 2 48 29 Intra4x4DirDisable Class Boolean Description Disables 14 4 Vertical Right Vertical Left Horizontal Down and Horizontal Up prediction modes Default value is 0 enabled 4 2 48 30 Intral6x16ParDisable Class Boolean Description Disables I16x16 Vertical and Horizontal prediction modes Default value is 0 enabled 4 2 48 31 Intral6x16PlaneDisable Class Boolean Description Disables I16x16 plane prediction mode Default value is 0 enabled 4 2 48 32 ChromalntraDisable Class Boolean Description Disable all Intra Chroma prediction modes except D
83. le Description Sets value of constant Lagrangian multiplier for SP slices if UseExplicitLambdaParams is set to 2 Default value is 0 10 4 7 12 9 FixedLambdaSlIslice Class Numeric Double Description Sets value of constant Lagrangian multiplier for SI slices if UseExplicitLambdaParams is set to 2 Default value is 0 10 4 7 12 10 LambdaWeightlslice Class Numeric Double Description Sets value of Lagrangian multiplier for I slices if UseExplicitLambdaParams is set to 1 Default value is 0 65 4 7 12 11 LambdaWeightPslice Class Numeric Double Description Sets value of Lagrangian multiplier for P slices if UseExplicitLambdaParams is set to 1 Default value is 0 68 4 7 12 12 LambdaWeightBslice Class Numeric Double Description Sets value of Lagrangian multiplier for B slices if UseExplicitLambdaParams is set to 1 Default value is 2 00 47 12 13 LambdaWeightRefBslice Class Numeric Double H 264 14496 10 AVC Reference Software Manual Page 4 33 4 Encoder Parameters Description Sets value of Lagrangian multiplier for referenced B slices if UseExplicitLambdaParams is set to 1 Default value is 1 50 4 7 12 14 LambdaWeightSPslice Class Numeric Double Description Sets value of Lagrangian multiplier for SP slices if UseExplicitLambdaParams is set to 1 Default value is 1 50 4 7 12 15 LambdaWeightSIslice Class Numeric Double Description Sets value of Lagrangian multiplier for SI slic
84. lice Eee e Eel 4 33 41 12 56 FixedEambdasSPSliCe serre ERA e er 4 33 4 7 12 9 FixedLambdaSIslice x 42 12 10 EambdaWeiehtlIsliCe 5 erret OR ter ere EM i MI Eileen ttd 47 12 T1 T mbdaWeightPslice 5 ei Rh tee 4 7 12 12 LambdaWeightBslice 4 7 12 13 LambdaWeightRefBslice 4 7 12 14 LambdaWeightSPslice 5 471215 Lambda wei ghtSIslice i iet eei tete egere e rn 4 7 13 0OffsetMatrixPresentFlap eno ssepe ee et Ree oe E e Here rp i erai 47 13 E QOffsetMat xPile 3 ertet rere ee e n ee edere t het reed AdaptiveRoundinp tite i RU ERR eO d tete e ee 4 7 14 1 AdaptRoundingFixed 4 7 14 2 AdaptRndPeriod 4 7 14 3 AdaptRndChroma 4 7 14 4 AdaptRndWEFactorIRef nee eene eee nenne EA RREA ele ena E ERE 2 7 14 5 AdaptRnd WEactorPRef oio NE ERROR RR ERE 4 7 14 6 AdaptRndWFactorBRef 4 7 14 7 AdaptRndWFactorINRef eit a O E EE 4 7 14 8 AdaptRndWEactorBNRel rer URS SERRE ERES RT ERUNT DERE teeta A a 4 7 14 9 AdaptRndWFactorBNRef 4 7 14 10 AdaptRndCrWFactorIRef 4 7 14 11 AdaptRndCrWFactorPRef 4 7 14 12 AdaptRndCrWFactorBRef 4 7 14 13 AdaptRndCrWEactorINRet UNI 4
85. lly if N number of B coded frames are 1 used all B coded frames at odd positions starting from 0 will be coded first and stored and used as references while even ones will follow and be coded as non reference 2 Use Hierarchical layer approach with multiple levels Basically a power of two approach is used where each level is assigned a different priority 3 Explicit Coding type amp order Requires presence of ExplicitHierarchyFormat parameter Example 1 We would like to encode video with the following coding order I0 P8 Bs4 Bs2 Bs6 B1 B3 B5 B7 P16 We would also like to assign QP values of 24 to referenced B coded frames and 26 to non reference frames Also although we will like to have 5 total references only one reference should be used for listO and listl for B slices Note that the above structure looks as follows H 264 14496 10 AVC Reference Software Manual Page 4 22 4 Encoder Parameters Figure 1 4 Level Hierarchical structure The above could be easily done using HierarchicalCoding mode 2 which automatically generates this hierarchy An alternative way would be to use HierarchicalCoding mode 3 and to appropriately set the necessary params using the ExplicitHierarchyFormat parameter lencod exe p NumberReferenceFrames 5 p NumberBFrames 7 p HierarchicalCoding 2 p QPBSlice 26 p BRefPicQPOffset 2 p BList References 1 p BListlReferences 1 Example 2 Lets assum
86. lowed ReferenceFrameN R r Reference E e Non Reference Disposable Frame QP Offset Final QP depends on slice type as defined by the QPNSlice parameters QPOffsetN Example 1 We would like to encode video using 5 references and the following coding order I0 P8 Bs4 Bs2 B1 B3 Bs6 B5 B7 P16 We would also like to assign QP values of 24 to referenced B coded frames and 26 to non reference frames lencod exe NumberReferenceFrames 5 p QPBSlice 24 p HierarchicalCoding 3 p ExplicitHierarchyFormat BAr0B2r0Ble2B3e2B6r0B5e2B7e2 Example 2 In the previous example we would like to replace Bs6 with a P coded frame while B7 is coded in intra mode with a QP of 22 The original QP for I and P slices was 24 Regardless of the slice type used note that frame 7 will still not be used as a reference lencod exe p NumberReferenceFrames 5 p HierarchicalCoding 3 p QPISlice 24 p QPPSlice 24 p QPBSlice 24 p ExplicitHierarchyFormat BAr0B2r0Ble2B3e2P6r0B5e217e 2 Example 3 We would like to encode a video sequence using a relatively similar coding structure as in example 1 with the difference that we would like to code all non reference frames last i e 10 8 54 52 56 1 B3 B5 B7 P16 In this case we may use HierarchicalCoding 2 also which would create this structure automatically lencod exe NumberReferenceFrames 5 p NumberBFrames 7 p H
87. lso encoded and considered during deblocking 1 Disables deblocking for all edges Disables deblocking at slice boundaries only 4 2 49 16 DFAlphaNRefBSlice Class Numeric Integer Description Sets the value of the syntax element slice alpha c0 offset div2 for B slices belonging to a non reference picture Requires DFParametersFlag to be set Allowable values are in the range 6 5 0 1 6 Default value is 0 4 2 50 Weighted Prediction Parameters The following parameters enable weighted prediction 4 2 50 1 WeightedPrediction Class Boolean H 264 14496 10 AVC Reference Software Manual Page 4 19 4 Encoder Parameters Description Sets the value of the syntax element weighted_pred_flag and enables explicit weighted prediction for P slices A simple model based on picture DC values is used for estimating weights Default value is 0 disabled Note This parameter is ignored when RDPictureDecision is used 4 2 50 2 WeightedBiprediction Class Numeric Integer Description Sets the value of the syntax element weighted bipred idc and enables weighted prediction for B slices Options 0 Disabled default 1 Explicit Weighted Prediction 2 Implicit Weighted Prediction Weights are based on POC distances Note This parameter is ignored when RDPictureDecision is used 4 2 50 3 UseWeightedReferenceME Class Boolean Description Use weighted references for motion estima
88. n the bitstream Default is 0 not present Note This flag has currently no real impact within the encoder and its presence may not indicate that the proper constraints are imposed 4 7 29 26 VUI vectors over boundaries flag Class Numeric Integer Description If this flag is equal to 0 it indicates that no sample outside the picture boundaries and no sample at a fractional sample position whose value is derived using one or more samples outside the picture boundaries is used to inter predict any sample If equal to 1 it then indicates that one or more samples outside picture boundaries may be used in inter prediction When not present its value is inferred to be equal to 1 default 4 7 29 27 VUI max bytes pic denom Class Numeric Integer Description This parameter indicates a number of bytes not exceeded by the sum of the sizes of the VCL NAL units associated with any coded picture in the sequence When not present its value is inferred to be equal to 2 default 4 7 29 28 VUI max bits per mb denom Class Numeric Integer Description This parameter indicates the maximum number of coded bits of macroblock layer data for any macroblock in any picture of the sequence The value of max bits per mb denom shall be in the range of 0 to 16 inclusive When this parameter is not present its value is inferred to be equal to 1 4 7 29 29 VUI log2 max length horizontal Class Numeric I
89. nation of weighted and non weighted prediction for P and B slices This option can be combined with the parameter RDPictureDecision to H 264 14496 10 AVC Reference Software Manual Page 4 11 4 Encoder Parameters perform an RD optimal decision between picture coding modes Value should be disabled when generating baseline profile bitstreams Default value is 0 disabled 4 2 41 SendAUD Class Boolean Description Transmit Access Delimiter Unit NALU for every Access Unit Default value is 0 disabled 4 20 42 ResendSPS Class Numeric integer Description Enables repetition of Sequence SPS and Picture Parameter Sets PPS at various intervals This can be useful for random access trick modes error resilience etc Options 0 Disabled default 1 Repeat for all Intra coded pictures 2 Repeat for all IDR pictures 3 Repeat for all IDR and Open GOP intra pictures 4 2 43 ResendPPS Class Boolean Description Enables repetition of Picture Parameter Sets PPS before every primary coded picture This could be useful for error resilience or if the encoder decides to update the PPS i e for use of a different WP method different chroma offsets different weighted matrices transform deblocking etc Default value is O disabled 4 2 44 PicOrderCntType Class Numeric Integer Description Parameter sets the value of the syntax element order cnt type in SPS Options 0 POC m
90. nce Note SNRY 1 5 3f SNRU 1 5 3 Chroma U PSNR for first frame in sequence Note Same SNRV 1 5 3 Chroma V PSNR for first frame in sequence Note Same SNRY N 5 3f Luma PSNR for entire sequence 9 System Generated Reports Output SNRU N 5 3 Chroma U PSNR for entire sequence SNRV N 5 3 Chroma V PSNR for entire sequence Bitr I 6 0f Bitrate not bits assigned to I coded frames Bitr P 6 0f Bitrate not bits assigned to P coded frames Bitr B 6 0f Bitrate not bits assigned to B coded frames Bitr IPB 6 0 Sequence Bitrate including overheads Total Time 90124 Encoding Time in ms Me Time 90124 Motion Estimation only time in ms 9 description This file contains information about the encoded sequence such as statistics about the macroblock types used for each different slice type file could look as follows This file contains statistics for th distortion information the last encoded sequence An example stat dat last ncoded sequenc Sequence e data foreman_176x144 30p yuv No of coded pictures 19 Freq for encoded bitstream 30 I Slice Bitrate kb s 38 98 P Slice Bitrate kb s 58 69 B Slice Bitrate kb s 8 97 Total Bitrate kb s 106 91 E Metric for Refinement Level 0 SAD E Metric for Refinement Level 1 Hadamard SAD E Metric for Refinement Level 2 Hadamard SAD ode Decision Metri
91. nded profiles For FRExt profiles see CbQPOffset and CrQPOffset 4 2 16 CbQPOffset Class Numeric Integer Description Sets the quantization parameter QP offset that will be used for coding Cb components Value can be both negative and positive 51 51 Default value is 0 no offset Note This is a FRExt profile only option For other profiles see ChromaQPOffset 4 2 17 CrQPOffset Class Numeric Integer H 264 14496 10 AVC Reference Software Manual Page 4 7 4 Encoder Parameters Description Sets the quantization parameter QP offset that will be used for coding Cr components Value can be both negative and positive 51 51 Default value is 0 no offset Note This is a FRExt profile only option For other profiles see ChromaQPOffset 4 2 18 FrameSkip Class Numeric Integer Description Number of frames to be skipped when encoding the input sequence essentially altering the frame rate of the output video sequence This has no relationship to and is completely independent from the number of intermediate e g B coded pictures that can be used in the encoding Default value is 0 Example 1 Reduce original framerate by half lencod exe p FrameSkip 1 4 2 19 MEDistortionFPel Class Numeric Integer Description Error Metric for Full Pel first layer motion estimation Options 0 Sum of Absolute Differences SAD default 1 Sum of Square Errors SSE 2 Sum of Absolute Trans
92. neMappingSElIPresentFlag 4 7 28 4 ToneMappingFile e 47 29 VUI P rdmet rs iod dio fec sere e becuse sag tice oque by ca ina e eue 4 7 29 1 VUI aspect ratio info present 4 7 29 2 VUI aspect ratio 1 4 7 29 3 sar width 4 7 29 4 VUL sar 4 7 29 5 VUlsoverscan info present flag uere e d RE PEE 4 7 29 6 overscan appropriate flag eneon reete beret e e eren 4 7 29 7 VUI video signal type present flag VUI video format 5 eter rr eee EE ELEGIR eH 4 7 29 9 VUI video full range TaT oro nee rere ee RE OE E EO OR 4 7 29 10 colour description present 4 46 H 264 14496 10 AVC Reference Software Manual Page vii 1 General Information 41 29 11 VUT colour prim ries eret reden tet ee PRENNE caonaseestedngsicesssnurabanerscguabaieees 4 7 29 12 VUI transfer characteristics 427129 matrix COeffICIennts abs rtr rote er E e tobi ERE PER METEO E 4 7 29 14 VUI chroma loc info present 4 7 29 15 VUI chroma sample loc type top field 4 7 29 16 VUI chroma sample loc type bottom 4 47 4 29 17 present HORRORE AR ei ed 4 47 4 7 29 18 VUI num units tick 471 29 19 V UT fime scale rh tte treten ne E TEE EE E PP osse attt 4 1 2920 VUL fix d frame tate ttt ttr
93. nnel default 1 Time varying channel 4 7 26 7 NumberofLeakyBuckets Class Numeric Integer Description Number of Leaky Bucket values Default value is 2 4 7 26 8 LeakyBucketRateFile Class Text Description File from which encoder derives rate values 4 7 26 9 LeakyBucketParamFile Class Text Description File where encoder stores leakybucketparams 4 7 26 10 RCISliceBitRatio Class Numeric Double Description Sets the bitrate target ratio between I and P coded slices when RCUpdateMode is set to 3 Default value is 1 00 4 7 26 11 RCBSliceBitRatioO Class Numeric Double Description Sets the bitrate target ratio between B and P coded slices for hierarchical level 0 when RCUpdateMode is set to 3 Default value is 0 5 4 7 26 12 RCBSliceBitRatiol Class Numeric Double Description Sets the bitrate target ratio between B and P coded slices for hierarchical level 1 when RCUpdateMode is set to 3 Default value is 0 25 H 264 14496 10 AVC Reference Software Manual Page 4 41 4 Encoder Parameters 4 7 26 13 RCBSliceBitRatio2 Class Numeric Double Description Sets the bitrate target ratio between B and P coded slices for hierarchical level 2 when RCUpdateMode is set to 3 Default value is 0 25 4 7 26 14 RCBSliceBitRatio3 Class Numeric Double Description Sets the bitrate target ratio between B and P coded slices for hierarchical level 3 when RCUpdateMode is set to 3 Default value is 0 25 4
94. nteger Description This parameter indicates the maximum absolute value of a decoded horizontal motion vector component respectively in 4 luma sample units for all pictures in the sequence When not present its value is inferred to be equal to 16 4 7 29 30 VUI log2 max length vertical Class Numeric Integer H 264 14496 10 AVC Reference Software Manual Page 4 48 4 Encoder Parameters Description This parameter indicates the maximum absolute value of a decoded vertical motion vector component respectively in luma sample units for all pictures in the sequence When not present its value is inferred to be equal to 16 4 7 29 31 VUI num reorder frames Class Numeric Integer Description This parameter indicates the maximum number of frames complementary field pairs or non paired fields that precede any frame complementary field pair or non paired field in the sequence in decoding order and follow it in output order When this flag is not present its valueis inferred to be equal to max dec frame buffering 4 7 29 32 VUI max dec frame buffering Class Numeric Integer Description This parameter specifies the required size of the HRD decoded picture buffer DPB in units of frame buffers When this parameter is not present its value is inferred to be equal to MaxDpbSize see AVC text 4 8 Other settings 4 8 1 NumFramesInELayerSubSeq Class Numeric Integer Description Number of frames in
95. ode 0 Recommended mode default 1 POC mode 1 Not fully supported in software 2 POC mode 2 Not for use with out of order coding i e all pictures need to be in sequential order 4 2 45 UseConstrainedIntraPred Class Boolean Description If set disallows inter pixels from being used for intra prediction sets the syntax element constrained intra pred flag in the PPS Default value is 0 4 2 06 MhbLinelIntraUpdate Class Numeric Integer Description Enables error robustness by performing extra intra macro block updates 0 default off N One GOB every N frames is intra coded 4 2 47 RandomIntraMBRefresh Class Numeric Integer H 264 14496 10 AVC Reference Software Manual Page 4 12 4 Encoder Parameters Description Number of macroblocks per picture that are forced to be intra coded If non zero the intra macroblocks are selected randomly Default value is 0 4 2 48 Inter Intra Mode Prediction Control The following parameters essentially control which inter or intra prediction modes could be used for encoding purposes 4 2 46 1 PSliceSkip Class Boolean Description Enables Skip Inter modes in P Slices Default value is 1 enabled 4 2 48 2 PSliceSearchl6x16 Class Boolean Description Enables 16x16 Inter Prediction amp Motion Compensation in P Slices Default value is 1 enabled 4 2 48 3 PSliceSearch16x amp Class Boolean Description Enables 16x8 Inter Prediction amp Motion Compensation
96. on such as number of intra inter coded blocks modes used etc Default value is O disabled 4 1 25 DisplayEncParams Class Boolean Description If enabled outputs all encoder parameters on screen therefore capturing a snapshot of the encoder configuration Default value is 0 disabled 4 1 26 Verbose Class Numeric Integer Description Controls level of display verboseness Options 0 Short 1 Normal default 2 Full Detail 3 Full Detail with combined Frame NV B bit statistics H 264 14496 10 AVC Reference Software Manual Page 4 4 4 Encoder Parameters 4 1 27 GrayScale Class Boolean Description Enforce GrayScale encoding of video data by resetting color components to the value 1 lt lt bitdepth 1 Default value is 0 disabled Requires that code is compiled with the define flag ALLOW GRAYSCALE settol 4 2 Primary Control Parameters This section described encoder parameters that are common for all profiles and essentially control encoder behavior available test modes Motion Estimation and Mode decision etc 421 ProfileIDC Class Numeric Integer Description Value of the profile idc syntax element For switching between predictive and intra only profiles see the IntraProfile parameter Default value is 88 Note Profiles restrict the usagecertain features and encoding modes See Annex A of H 264 AVC for supported features for each profile Reference software may perf
97. orm tests for certain features for profile conformance but it is possible that certain validations are missing Options 66 Baseline 77 Main 88 Extended 100 High 110 High 10 or High 10 Intra 122 High 4 2 2Predictive or High 4 2 2 Intra 244 High 4 4 4 or High 4 4 4 Intra 44 CAVLC 4 4 4 Intra 4 2 2 IntraProfile Class Boolean Description Specifies usage of Intra only profiles for ProfileIDC equal to 110 122 and 244 This results in setting constraint set 3 flag equal to 1 in the bitstream Default value is 0 disabled 4 2 3 LevelIDC Class Numeric Integer Description Value of the level idc syntax element Default value is 21 Note Similar with the ProfileIDC LevelIDC specifies the capabilities a decoder must fulfill to decode a bitstream of a certain level Most level restrictions are driven by memory restrictions and set restrictions such as resolution supported maximum number of references frame rate etc See Annex A of 264 Note that level setting does not prevent encoder from breaking certain level restrictions Options 9 lb Supports QCIF format and below with 380160 samples sec H 264 14496 10 AVC Reference Software Manual Page 4 5 4 Encoder Parameters 10 1 Supports QCIF format and below with 380160 samples sec 11 1 1 Supports CIF and below 768000 samples sec 12 1 2
98. r to the I coded picture in display order This is done through appropriate usage of reordering operations and setting of num_ref_idx_IX_active_minus1 for each available reference list Note Parameter currently does not support field coding while it enforces reference reordering if hierarchical encoding is used 4 2 11 NumberBFrames Class Numeric Integer Description Number of B slice coded frames used Parameter is overwritten if the HierarchicalCoding 4 2 59 parameter is set to 3 Default value is 0 4 2 12 QPISlice Class Numeric Integer Description Sets quantization parameter QP value for I slices Allowable values are in the range of 6 BitDepthLuma 8 to 51 Default value is 24 4 2 13 QPPSlice Class Numeric Integer Description Sets quantization parameter QP value for all P slices Allowable values are in the range of 6 BitDepthLuma 8 to 51 Default value is 24 4 2 14 QPBSlice Class Numeric Integer Description Quantization parameter used for non stored B slices Should be in the range 0 51 Usually these quantizer can be set slightly higher than the quantizer for stored pictures Default value is 24 4 2 15 ChromaQPOffset Class Numeric Integer Description Sets the quantization parameter QP offset that will be used for coding Chroma components Value can be both negative and positive 51 51 Default value is 0 no offset Note This option will be used only for Baseline Main and Exte
99. rames compared to FramesToBeEncoded 0 no SP used default N gt 0 SP coded frames inserted every N frames Note SP coding might be broken in current implementation 4 4 QPSPPicture Class Numeric Integer Description Quantization parameter of SP coded pictures for prediction Error 0 51 Default is 24 4 4 3 QPSP2Picture Class Numeric Integer Description Quantization parameter of SP coded pictures for Predicted Blocks 0 51 Default is 24 H 264 14496 10 AVC Reference Software Manual Page 4 27 4 Encoder Parameters 4 4 4 SI Frames Class Boolean Description Eanbels SI frame encoding Default value is 0 disabled Note Currently this parameters needs to be enabled if SP slices are to be generated 4 45 8 output Class Boolean Description Controls whether coefficients will be output to encode switching SP frames Default value is 0 disabled 4 4 6 SP output name Class Text Description Filename for SP coefficients output 4 4 7 SP2 Frames Class Boolean Description Enables switching SP frame encoding Default value is 0 diabled 4 4 8 SP2 input Class Text Description Filename for the first switched bitstream coefficients 4 4 9 SP2 input name2 Class Text Description Filename for the second switched bitstream coefficients 4 5 Output Control Entropy Coding NALs The following parameters control the entropy coding method that is to be used and other output related
100. rarchicalCoding 3 p ReferenceReorder 1 p ExplicitHierarchyFormat B4r24B2r24Ble26B3e26P6r24B5e2617e40 4 2 65 PocMemoryManagement Class Boolean Description Performs memory management control based on POC values Basically allows better memory management for arbitrary or hierarchical type coding methods if only a certain number of references are allowed due to level limitations Parameter also recommended to be used with the EnableOpenGop parameter Default value is 0 disabled Note PocMemoryManagement is not supported for interlace coding modes Example Lets assume that for the first example in 4 2 60 only a maximum of 4 references can be used Unfortunately this would result according to the default memory management behavior in frame 8 being removed from the reference buffer immediately after adding frame 16 since this has the smallest frame_num in the list It would be preferable to remove frame 2 instead since this frame would most likely not be very useful for predicting any future frames lencod exe NumberReferenceFrames 5 p NumberBFrames 7 p HierarchicalCoding 3 p ReferenceReorder 1 p PocMemoryManagement 1 p ExplicitHierarchyFormat B4r24B2r24Ble26B3e26P6r24B5e2617e40 H 264 14496 10 AVC Reference Software Manual Page 4 25 4 Encoder Parameters 4 3 Error Resiliency and Slice control 4 3 1 SliceMode Class Numeric Integer Description Sets slice
101. rge small diamond RS ds 4 7 22 2 EPZSDualRefinement Class Numeric Integer Description Specifies usage of Dual Refinement around second best predictor Options Disabled Diamond Square Extended Diamond default Large Diamond Subpixel Diamond PMVFAST switching large small diamond 4 7 22 3 EPZSFixedPredictors Class Numeric Integer Description Specifies usage Window based predictors that can improve performance for encodings requiring large search windows Options 0 Disabled 1 P only 2 P and B default 4 7 22 4 EPZSTemporal Class Boolean Description Enables usage of Temporal Predictors through the consideration of co located partitions i e similar to temporal direct Default value is 1 enabled 4 7 22 5 EPZSSpatialMem Class Boolean Description Enables usage of Spatial Predictors through the consideration of all block type MVs from surrounding MBs Implementation is optimized as to require only a single row of MB Motion Vectors Default value is 1 enabled 4 7 22 6 EPZSMinThresScale Class Numeric Integer Description Lower limit for threshold used for early termination Value depends on block type and is essentially multiplied with the base value MinBaseT in Table 1 Default value is 0 H 264 14496 10 AVC Reference Software Manual Page 4 38 4 Encoder Parameters 4 7
102. s LO L1 Sequence type HESS SPEM PA 29 19 29 Si Entropy coding method CABAC Profile Level IDC 100 40 otion Estimation Scheme Fast Full Search Search range restrictions none RD optimized mode decision used Data Partitioning Mode dl SWE ALE ALCAN Output File Format H 264 AVC Annex B Byte Stream Format Frame pG SnrU SnrV Time ms MET ms Frm Fld Ref 00000 NVB 176 00000 IDR 24536 2 Sista 99 165 42 224 65 0 FRM aL 00002 P 4664 Ze B65 14 39 563 Ail 952 376 281 FRM 1 OOOO 992 30 9065203 20 4467 AEZ 1162 TOLL FRM 0 Total Frames 3 2 Leaky BucketRateFile does not have valid entries Using rate calculated from avg rate umber Leaky Buckets 8 Rmin Bmin Fmin 301920 24536 24536 377400 24536 24536 H 264 14496 10 AVC Reference Software Manual Page 3 2 3 Using The JM Encoder Module 452880 24536 24536 528360 24536 24536 603840 24536 24536 679320 24536 24536 754800 24536 24536 830280 24536 24536 Sees SS seers em dead NINE tuac ME SSS SS D CE EE Total encoding time for the seq LEOS Total ME time for sequenc 1L 2270 2 SSS Y PSNR dB cSNR dB MSE 8 4 36 80 965578 19 06 1 U PSNR dB cSNR dB MSE 4 39 00 99 905 Al Oo 11 99 As kal Rota 305687 1 2219906 E 664 B 992 LVE cew S000 a 240 5 5
103. s Numeric Integer Description Expected packet loss rate of the channel for the third partition Only valid if RDOptimization is set equal to 3 Default value is 0 4 7 15 4 NumberOfDecoders Class Numeric Integer Description Numbers of decoders used to simulate the channel Only valid if RDOptimization is set equal to 3 Default value is 0 4 7 16 RestrictRefFrames Class Boolean Description Does not allow reference to areas that have been intra updated in a later frame Default value is O disabled 4 7 17 RestrictSearchRange Class Numeric Integer Description Reduces Search range for motion estimation based on references and or block types Options 0 Based on Block Type and Reference default 1 Based on reference i e divide by 1 lt lt reference_index 264 14496 10 AVC Reference Software Manual Page 4 36 4 Encoder Parameters 2 No restrictions should be used for common conditions 4 7 18 DisableThresholding Class Boolean Description Disable Thresholding of Transform Coefficients Default value is 0 enabled Note Thresholding is usually more appropriate for low to medium bitrates while this could result in loss of details under certain situations 4 7 19 DisableBSkipRDO Class Boolean Description Disable B Skip Mode consideration from the RDO based mode decision Default value is 0 enabled 4 7 20 SkipIntraInInterSlices Class Numeric Integer
104. sed with any other ME scheme as well 4 7 23 1 UMHexDSR Class Boolean Description Use an adaptive method to predict the maximum search range Default value is 1 enabled 4 7 23 2 UMHexScale Class Numeric Integer Description Distortion based Threshold Scaling factor relevant to picture size Selecting a larger value should increase speed somewhat for larger resolutions 0 Disabled Default value is 3 H 264 14496 10 AVC Reference Software Manual Page 4 39 4 Encoder Parameters 4 7 24 EarlySkipEnable Class Boolean Description Early skip mode detection when RDOptimization is set to 2 based on document JVT Default value is 0 disabled Note Common conditions specify that High complexity RDO mode should be used 4 7 05 SelectiveIntraEnable Class Boolean Description Enables Selective Intra mode decision when RDOptimization is set to 2 based on document Default value is 0 disabled Note Common conditions specify that High complexity RDO mode should be used 4 7 26 Rate Control amp HRD support Parameters for rate control support 4 7 26 1 RateControlEnable Class Boolean Description Enable simple Rate Control support Default value is 0 disabled Example Encode a sequence at 100kbps with an initial QP of 32 while performing adaptation at the frame level lencod ex p RateControlEnable 1 p Bitrate 100000 p InitialQP 32 p BasicUnit 99 Note Existing algorithms should be used
105. sing I slices at intra periods If disabled the bottom field will be coded using P slices Default value is 0 disabled Note Has only effect if PicInterlace is not equal to zero 4 7 Non Normative Encoder Decisions 471 RDOptimization Class Numeric Integer Description Enable Lagrangian based Rate distortion optimized mode decision Options 0 Enable Low Complexity mode default 1 Enable High Complexity mode 2 Enable Fast High Complexity mode does not support FRExt profiles 3 RDO consideration with losses Note According to common condition option should be set to 1 when evaluating algorithmic performance 47 2 T16RDOpt Class Boolean Description Enable high complexity rate distortion optimization for Intra 16x16 modes Default value is 0 disabled H 264 14496 10 AVC Reference Software Manual Page 4 30 4 Encoder Parameters 47 3 SubMBCodingState Class Integer Description Parameter provides performance speed tradeoffs for submacroblock mode decision when high complexity RDO is enabled Essentially avoids storing restoring state values resulting in somewhat suboptimal RD decision Options 0 Disable store restore states for sub macroblock mode decision low complexity 1 Reset coding state for every mode at the macroblock level medium complexity 2 Store Reset coding state based on optimal decisions high complexity default 4 74 ForceTrueRateRDO
106. ss Numeric Integer Description Override of allowable references used for predicting B slices using 1150 basically sets num ref idx 10 active 1 0 default sets number to be equal to NumberReferenceFrames Value needs to be smaller or equal to NumberReferenceFrames Note Under most cases setting this value to 2 should be sufficient i e in terms of performance while having a significant reduction in terms of complexity H 264 14496 10 AVC Reference Software Manual Page 4 10 4 Encoder Parameters 4 2 36 BList1References Class Numeric Integer Description Override of allowable references used for predicting B slices using Listl basically sets num ref idx l1 active minus1 0 default sets number to be equal to NumberReferenceFrames Value needs to be smaller or equal to NumberReferenceFrames Note Under most cases setting this value to 1 should lead to better performance i e since no bits are spend for coding the reference index more bits can be allocated to code mvs or residual If HierarchicalCoding is used nevertheless a larger value might be better 4 2 37 BReferencePictures Class Numeric Integer Description Use B coded pictures as references overwritten by HierarchicalCoding Default is 0 Note Mainly available for testing purposes Options 0 Disabled default 1 Code B coded pictures in secondary layer as references 2 Code primary layer reference pictures normally
107. ters 8 HARDCODED DECODER PARAMETERS H 264 14496 10 AVC Reference Software Manual 8 Hardcoded Decoder Parameters 8 HARDCODED DECODER PARAMETERS Although encoder behavior is mainly controlled through the parameters provided in section 4 additional hardcoded parameters within the reference software could also modify its behavior This includes the generation of tracing and output information and algorithmic considerations 8 1 defines h DUMP_DPB Dump DPB for debugging purposes IMGTYPE Defines data size type 0 implies byte i e best for profiles with 8 bit support where as 1 implies unsigned short which is suitable for all types including 10 12 bit content When set to 0 this option can provide considerable memory savings and some speed advantages when encoding 8 bit content ZEROSNR Definition avoids generation of infinite SNR by always forcing at least one difference sample MAX_NUM_SLICES Maximum number of slices supported picture increasing the value results in higher memory requirement PAIR FIELDS IN OUTPUT always pair consecutive complementary fields in file output independent of their pairing in the DPB e g if second decoded field is IDR ENABLE HIGH444 CTX Enables High 444 profile context types for CABAC ENABLE OUTPUT TONEMAPPING Enables tone mapping the output if tone mapping SEI present H 264 14496 10 AVC Reference Software Manual Page 8 1 9 System Generated Reports Output 9 SYSTE
108. this should work with unixprep sh Or chmod u x unixprep sh unixprep sh For compiling the both encoder and decoder type make For compiling only the encoder or only the decoder change to the lencod or 1decod directory and type make within that directory Binaries named lencod exe and Idecod exe are created in the bin directory For debug mode binaries one can compile the software using the following syntax make DBG 1 H 264 14496 10 AVC Reference Software Manual Page 2 1 2 Installation and Compilation The above would generate debug binary files named lencod dbg exe and Idecod dbg exe in the bin directory for the encoder and decoder respectively Additional options that can be used during compilation include M32 1 for enforcing generation of 32 bit binary executables on 64 bit architectures OPT N for controlling the optimization level and STC 1 for static linking of libraries For compile time settings and options see section 5 H 264 14496 10 AVC Reference Software Manual Page 2 2 3 Using The JM Encoder Module 3 USING THE JM ENCODER MODULE H 264 14496 10 AVC Reference Software Manual 3 Using The JM Encoder Module 3 USING THE JM ENCODER MODULE This section provides a detailed description of the JM encoder s usage 3 1 Encoder Syntax lencod em e
109. tion Default value is 0 disabled 4 2 50 4 WPMethod Class Boolean Description Use DC based 0 default or Least Mean Square LMS method 1 for weighted prediction 4 2 50 5 WPIterMC Class Boolean Description Use DC Iterative Motion compensated based weighted prediction method Default value is 0 disabled 4 2 50 6 EnhancedBWeightSupport Class Boolean Description Use LMS method for B slice weighted prediction Default value is 0 disabled 4 2 50 7 WPMCPrecision Class Numeric Integer Description Improved Motion Compensation Precision using WP based methods Clones WP references with slightly modified rounding offsets Requires RDPictureDecision and GenerateMultiplePPS Options 0 Disabled default 1 Up to one additional coding pass Ref0 is 0 ref1 is O with a 1 offset Up to two additional coding passes 1 Ref0 is 0 ref1 is O with a 1 offset 1 2 is with a 1 offset refl is 0 264 14496 10 AVC Reference Software Manual Page 4 20 4 Encoder Parameters 4 2 50 8 WPMCPrecFullRef Class Numeric Integer Description Increases the number of references in the reference picture lists to account for the lost reference slot when reordering is used during a coding pass in WPMCPrecision for reference replication The number of references in non reordered passes stays unchanged Default value is 0 keep the same number of references 4 2 50 9 WPMCPrecBSlice
110. traBottom only the top field will be coded as intra 4 25 IDRPeriod Class Numeric Integer Description Period of IDR frames in the encoded sequence Behaviour is similar to Intra Period A value of 0 default implies that only the first frame will be coded as IDR Note If field coding is enabled depending on the value of parameter IntraBottom only the top field will be coded as IDR 4 2 6 EnableIDRGop Class Boolean Description Enables closed IDR GOPs i e Can considerably improve coding efficiency when IDR pictures are desired Default value is 0 disabled 4 2 7 IntraDelay Class Numeric Integer Description Enable delayed in display order IDR pictures by IntraDelay pictures e g if IntraDelay 2 then the resulting coding structure could look like this 5 Can considerably improve coding efficiency Default value is 0 disabled 4 2 8 AdaptiveIntraPeriod Class Boolean Description Currently ignored H 264 14496 10 AVC Reference Software Manual Page 4 6 4 Encoder Parameters 4 2 9 AdaptiveIDRPeriod Class Boolean Description Currently ignored 4 2 10 EnableOpenGOP Class Boolean Description Enables support for Open GOP encoding Default value is 0 disabled OpenGOP in this context restricts all pictures after an I coded picture in display order from referencing a picture prio
111. ure Requires DFParametersFlag to be set Allowable values are in the range 6 5 0 1 6 Default value is 0 4 2 49 4 DFBetaReflSlice Class Numeric Integer Description Sets the value of the syntax element slice_beta_offset_div2 for I slices belonging to a reference picture Requires DFParametersFlag to be set Allowable values are in the range 6 5 0 1 6 Default value is 0 4 2 49 5 DFDisableNRefISlice Class Numeric Integer Description Sets the value of the syntax element disable deblocking filter idc for I slices belonging to a non reference picture Requires DFParametersFlag to be set Options 0 Default Additional loopfilter offsets are also encoded and considered during deblocking 1 Disables deblocking for all edges Disables deblocking at slice boundaries only H 264 14496 10 AVC Reference Software Manual Page 4 17 4 Encoder Parameters 4 2 49 6 DFAlphaNRefISlice Class Numeric Integer Description Sets the value of the syntax element slice_alpha_c0_offset_div2 for I slices belonging to a non reference picture Requires DFParametersFlag to be set Allowable values are in the range 6 5 0 1 6 Default value is 0 4 2 49 7 DF DisableReflSlice Class Numeric Integer Description Sets the value of the syntax element disable deblocking filter idc for I slices belonging to a reference picture Requires DFParametersFlag to be set

Download Pdf Manuals

image

Related Search

Related Contents

  H950 - Citizen      FREEZE-Kit 1 20431-04 dr3.indd  Kramer Electronics 905XL audio amplifier  

Copyright © All rights reserved.
Failed to retrieve file