Information technology — High efficiency coding and media delivery in heterogeneous environments — Part 5: Reference software for high efficiency video coding — Amendment 4: Reference software for 3D Main profile

Technologies de l'information — Codage à haute efficacité et livraison des médias dans des environnements hétérogènes — Partie 5: Logiciel de référence pour le codage vidéo à haute efficacité — Amendement 4: .

General Information

Status
Withdrawn
Current Stage
4098 - Project deleted
Start Date
02-Sep-2016
Completion Date
12-Feb-2026

Relations

Effective Date
22-May-2021
Effective Date
06-Jun-2022
Draft

gop-structure-example - ISO/IEC 23008-5:2015/DAmd 4 - Information technology — High efficiency coding and media delivery in heterogeneous environments — Part 5: Reference software for high efficiency video coding — Amendment 4: Reference software for 3D Main profile Released:9/2/2015

English language
10 pages
sale 15% off
sale 15% off
Draft

QuickStartGuide - ISO/IEC 23008-5:2015/DAmd 4 - Information technology — High efficiency coding and media delivery in heterogeneous environments — Part 5: Reference software for high efficiency video coding — Amendment 4: Reference software for 3D Main profile Released:9/2/2015

English language
10 pages
sale 15% off
sale 15% off
Draft

software-manual - ISO/IEC 23008-5:2015/DAmd 4 - Information technology — High efficiency coding and media delivery in heterogeneous environments — Part 5: Reference software for high efficiency video coding — Amendment 4: Reference software for 3D Main profile Released:9/2/2015

English language
10 pages
sale 15% off
sale 15% off

Get Certified

Connect with accredited certification bodies for this standard

BSI Group

BSI (British Standards Institution) is the business standards company that helps organizations make excellence a habit.

UKAS United Kingdom Verified

NYCE

Mexican standards and certification body.

EMA Mexico Verified

Sponsored listings

Frequently Asked Questions

ISO/IEC 23008-5:2015/DAmd 4 is a draft published by the International Organization for Standardization (ISO). Its full title is "Information technology — High efficiency coding and media delivery in heterogeneous environments — Part 5: Reference software for high efficiency video coding — Amendment 4: Reference software for 3D Main profile". This standard covers: Information technology — High efficiency coding and media delivery in heterogeneous environments — Part 5: Reference software for high efficiency video coding — Amendment 4: Reference software for 3D Main profile

Information technology — High efficiency coding and media delivery in heterogeneous environments — Part 5: Reference software for high efficiency video coding — Amendment 4: Reference software for 3D Main profile

ISO/IEC 23008-5:2015/DAmd 4 is classified under the following ICS (International Classification for Standards) categories: 35.040 - Information coding; 35.040.40 - Coding of audio, video, multimedia and hypermedia information. The ICS classification helps identify the subject area and facilitates finding related standards.

ISO/IEC 23008-5:2015/DAmd 4 has the following relationships with other standards: It is inter standard links to ISO/IEC 23008-5:2015, ISO/IEC 23008-5:2017. Understanding these relationships helps ensure you are using the most current and applicable version of the standard.

ISO/IEC 23008-5:2015/DAmd 4 is available in PDF format for immediate download after purchase. The document can be added to your cart and obtained through the secure checkout process. Digital delivery ensures instant access to the complete standard document.

Standards Content (Sample)


B B B B
B B
I P P
POC 0 1 2 3 4 5 6 7 8
DecodeOrder 0 3 2 4 1 7
...


Bitrate Targeting Tools
Quick-start Guide
Steve Campbell
Jing Wang
Xiang Yu
Research In Motion Ltd.
Introduction
targetBitrates.sh is a shell script that runs the encoder many times while trying to obtain a specific set of
bitrates. It does this by adjusting the Lambda-modifiers that are passed to the encoder.
encodeCommand.sh is a shell script that is invoked by targetBitrates.sh that runs the encoder.
targetBitrates.sh will typically invoke encodeCommand.sh many times during one run. targetBitrates.sh
also makes use of two executables: extractBitrates.exe and guessLambdaModifier.exe. It is designed to
run in a Bash shell.
Preparation
• Build extractBitrates.exe and guessLambdaModifiers.exe. To do this, execute this command in
the folder that contains the source code:
make
• After building, ensure that these files are all in the same directory:
o targetBitrates.sh
o encode.shl
o encodeCommand.sh
o extractBitrates.exe
o guessLambdaModifiers.exe
Run targetBitrates.sh
If you run targetBitrates.sh with no arguments, it will output the usage notes. The usage notes for
encodeCommand.sh may also be useful.
Here is an example of a typical set of arguments for targetBitrates.sh
./targetBitrates.sh -q 22 -o "~/myOutputDirectory/" -ci ldHE BQSquare_416x240_60 -tb "5000
34241 6541" -ca '-e ~/bin/TAppEncoder.exe -cd ~/cfg/'
This runs targetBitrates.sh for QP 22, for configuration low-delay high-efficiency, and for sequence
BQSquare_416x240_60. The output will be placed in ~/myOutputDirectory. The target bitrates are
specified as “5000 34241 6541”. The encoder is located at ~/bin/TAppEncoder.exe and the
configuration files are in ~/cfg.

Parameters
The usage of targetBitrates.sh is as follows:
./targetBitrates.sh [-rm] -ci configurationIdentifier -q q -tb targetBitrates [-il
initialLambdaModifiers] [-ca encodeCommandArgs] [-ea extraArguments] -o outputDirectory
inputName
• -rm specifies resume-mode which allows the user to resume an execution that was interrupted
before completion.
• configurationIdentifier specifies the configuration (ldHE, ldLC, raHE, raLC, inHE, or inLC).
• q is the QP value (22, 27, 32, or 37).
• targetBitrates is the target bitrates for each temporal layer separated by spaces. For example:
"3445 3473 etc.".
• initialLambdaModifiers is the Lambda-modifiers to use for the first guess. For example: "-LM0
1e0 –LM1 0.98 etc."
• encodeCommandArg
...


JointCollaborativeTeamonVideoCoding(JCT-VC)
ofITU-T SG16 WP3andISO/IECJTC1/SC29/WG11 Document: JCTVC-Software Manual
Title: HM SoftwareManual
Status: SoftwareAHGworkingdocument
Purpose: Information
Author(s): FrankBossen frank@bossentech.com
David Flynn dflynn@blackberry.com
KarlSharman karl.sharman@eu.sony.com
KarstenSühring karsten.suehring@hhi.fraunhofer.de
Source: AHG chairs
Abstract
ThisdocumentisausermanualdescribingusageofreferencesoftwarefortheHEVCproject. Itapplies
to version16.4ofthesoftware.
Contents
1 GeneralInformation 2
2 Installationandcompilation 2
3 Usingtheencoder 3
3.1 GOPstructure table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
3.2 Encoderparameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.3 EncoderSEI parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.4 Hardcoded encoderparameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
4 Usingthedecoder 26
4.1 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
4.2 Usingthedecoderanalyser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
List ofTables
1 Availableprojectfiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2 GOPstructure example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3 File, I/Oandsourceparameters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
4 Profile andlevel parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
5 Unit definitionparameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
6 Coding structureparameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
7 Motion estimationparameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
8 Modedecisionparameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
9 Quantizationparameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
10 Slicecodingparameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
11 Deblockingfilterparameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
12 Coding toolsparameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
13 Ratecontrolparameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
14 VUIparameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
15 RangeExtensions(Version2)tool parameters . . . . . . . . . . . . . . . . . . . . . . . 16
16 ListofVersion1andRExtSEImessages . . . . . . . . . . . . . . . . . . . . . . . . . 17
17 BufferingperiodSEImessageencoder parameters . . . . . . . . . . . . . . . . . . . . . 18
18 PicturetimingSEImessageencoderparameters . . . . . . . . . . . . . . . . . . . . . . 18
19 RecoverypointSEImessageencoderparameters . . . . . . . . . . . . . . . . . . . . . 18
20 TonemappinginformationSEImessage encoder parameters . . . . . . . . . . . . . . . 18
1 Date saved: 2015-03-09
21 FramepackingarrangementSEImessageencoder parameters . . . . . . . . . . . . . . . 20
22 DisplayorientationSEImessageencoder parameters . . . . . . . . . . . . . . . . . . . 21
23 Structureofpicturesinformation SEImessageencoder parameters . . . . . . . . . . . . 21
24 Activeparameter setsSEImessageencoder parameters . . . . . . . . . . . . . . . . . . 21
25 Decodingunit informationSEImessage encoder parameters . . . . . . . . . . . . . . . 21
26 Temporalsub-layerzeroindexSEImessage encoder parameters . . . . . . . . . . . . . 21
27 Decoded picturehashSEImessageencoder parameters . . . . . . . . . . . . . . . . . . 22
28 Scalablenesting SEImessageencoderparameters . . . . . . . . . . . . . . . . . . . . . 22
29 RegionrefreshinformationSEImessage encoder parameters . . . . . . . . . . . . . . . 22
30 Nodisplay SEImessageencoder parameters . . . . . . . . . . . . . . . . . . . . . . . . 22
31 TimecodeSEImessageencoder parameters . . . . . . . . . . . . . . . . . . . . . . . . 22
32 Masteringdisplaycolourvolume SEImessageencoder parameters . . . . . . . . . . . . 23
33 Segmented rectangularframepacking arrangementSEI message encoder parameters . . 23
34 Temporalmotion-constrainedtile setsSEImessage encoder parameters . . . . . . . . . 24
35 ChromaresamplingfilterhintSEImessageencoder parameters . . . . . . . . . . . . . . 24
36 KneefunctionSEImessageencoder parameters . . . . . . . . . . . . . . . . . . . . . . 24
37 CommonDef.hconstants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
38 Decoderoptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
1 GeneralInformation
ReferencesoftwareisbeingmadeavailabletoprovideareferenceimplementationoftheHEVCstandard
being developed by the Joint Collaborative Team on Video Coding (JCT-VC) regrouping experts from
ITU-T SG 16 and ISO/IEC SC29 WG11. One of the main goals of the reference software is to provide
a basis upon which to conduct experiments in order to determine which coding tools provide desired
coding performance. It is not meant to be a particularly efficient implementation of anything, and one
may notice its apparent unsuitability for a particular use. It should not be construed to be a reflection of
howcomplexaproduction-qualityimplementation of afuture HEVC standard would be.
Thisdocumentaimstoprovideguidanceontheusageofthereferencesoftware. Itiswidelysuspectedto
be incomplete and suggestions for improvements are welcome. Such suggestions and general inquiries
may be sent to the general JCT-VC email reflector on jct-vc@lists.rwth-aachen.de (registration
required).
Bug reporting
Bugs shouldbereportedontheissuetracker setup at http://hevc.kw.bbc.co.uk/trac/
2 Installationand compilation
Thesoftwaremayberetrievedfromoneof thefollowingSVN servers (mirrored):
• https://hevc.hhi.fraunhofer.de/svn/svn_HEVCSoftware/
• svn://hevc.kw.bbc.co.uk/svn/jctvc-hm/
Table1enumeratesvarious projectfilesthatare providedfor development environments.
Table1: Availableproject files
Environment Locationofprojectfile
MSVisualStudio8 build/HM_vc8.sln
MSVisualStudio9 build/HM_vc9.sln
MSVisualStudio10 build/HM_vc10.sln
Xcode HM.xcodeproj
Linux build/linux/makefile
For encoding large picture sizes (like UHDTV) it is strongly advised to build 64-bit binaries and to use
a64-bitOS.Thiswillallowthesoftwaretouse morethan 2GB of RAM.
2 Date saved: 2015-03-09
3 Usingtheencoder
TAppEncoder [--help] [-c config.cfg] [--parameter=value]
Option Description
--help Printsparameter usage.
-c Defines configuration file to use. Multiple configuration files
maybeused withrepeated –coptions.
--parameter=value Assigns value to a given parameter as further described below.
Someparametersarealsosupportedbyshorthand“–optvalue”.
These are shown in brackets after the parameter name in the
tablesof thisdocument
Sample configuration files are provided in the cfg/ folder. Parameters are defined by the last value en-
counteredonthecommandline. Thereforeifasettingissetviaaconfigurationfile,andthenasubsequent
commandline parameterchangesthatsame setting,thecommand line parameter value will be used.
3.1 GOPstructuretable
DefinesthecyclicGOPstructurethatwillbeusedrepeatedlythroughoutthesequence. Thetableshould
containGOPSizelines,namedFrame1,Frame2,etc. Theframesarelistedindecodingorder,soFrame1
is the first frame in decoding order, Frame2 is the second and so on. Among other things, the table
specifies all reference pictures kept by the decoder for each frame. This includes pictures that are used
for reference for the current picture as well as pictures that will be used for reference in the future. The
encoder will not automatically calculate which pictures have to be kept for future references, they must
be specified. Note that some specified reference frames for pictures encoded in the very first GOP after
an IDR frame might not be available. This is handled automatically by the encoder, so the reference
pictures can be given in the GOP structure table as if there were infinitely many identical GOPs before
thecurrentone. Eachlineinthetablecontainstheparametersusedforthecorrespondingframe,separated
by whitespace:
Type: Slicetype,canbeeitherI,Por B.
POC:Displayorderoftheframewithin aGOP,ranging from 1 to GOPSize.
QPOffset: QP offsetisaddedtotheQPparameterto set the final QP value to use for this frame.
QPFactor: Weight used during rate distortion optimization. Higher values mean lower quality
and lessbits. Typicalrangeisbetween 0.3and 1.
tcOffsetDiv2: In-loop deblocking filter parameter tcOffsetDiv2 is added to the base parameter
LoopFilterTcOffset_div2 to set the final tc_offset_div2 parameter for this picture signalled in the
slice segment header. The final value of tc_offset_div2 shall be an integer number in the range
6::6.
betaOffsetDiv2: In-loopdeblockingfilterparameterbetaOffsetDiv2isaddedtothebaseparame-
terLoopFilterBetaOffset_div2tosetthefinalbeta_offset_div2parameterforthispicturesignalled
in the slice segment header. The final value of beta_offset_div2 shall be an integer number in the
range6::6.
temporal_id: Temporal layer of the frame. A frame cannot predict from a frame with a higher
temporalid. IfaframewithhighertemporalIDsislistedamongaframe’sreferencepictures,itis
notused,butis keptforpossibleuse infuture frames.
num_ref_pics_active: Size of reference picture lists L0 and L1, indicating how many reference
pictures ineachdirectionthatareused duringcoding.
num_ref_pics: The number of reference pictures kept for this frame. This includes pictures that
are used for reference for the current picture as well as pictures that will be used for reference in
thefuture.
reference_pictures: A space-separated list of num_ref_pics integers, specifying the POC of the
reference pictures kept, relative the POC of the current frame. The picture list shall be ordered,
3 Date saved: 2015-03-09
first with negative numbers from largest to smallest, followed by positive numbers from smallest
to largest (e.g. -1 -3 -5 1 3). Note that any pictures not supplied in this list will be discarded
andthereforenot availableasreferencepictures later.
predict: Defines the value of the syntax element inter_ref_pic_set_prediction_flag. A value of 0
indicatesthatthereferencepicturesetisencodedwithoutinterRPSpredictionandthesubsequent
parametersdeltaRIdx1,deltaRPS,num_ref_idcsandReference_idcsareignoredanddonotneed
tobe present. Avalue of 1 indicatesthat the referencepicture set is encoded with inter prediction
RPS using the subsequent parameters deltaRIdx1, deltaRPS, num_ref_idcs and Reference_idcs
intheline. Avalueof2indicatesthatthereferencepicturesetisencodedwithinterRPSbutonly
the deltaRIdx1 parameters is needed. The deltaRPS, num_ref_idcs and Reference_idcs values
are automatically derived by the encoder based on the POC and refPic values of the current line
and theRPS pointedtobythedeltaRIdx1parameters.
deltaRIdx1: The difference between the index of the curent RPS and the predictor RPS minus
1.
deltaRPS:Thedifferencebetweenthe POCof thepredictorRPS and POC the current RPS.
num_ref_idcs: The number of ref_idcs to encode for the current RPS. The value is equal to the
valueofnum_ref_pics ofthepredictor RPSplus 1.
reference_idcs: A space-separated list of num_ref_idcs integers, specifying the ref idcs of the
inter RPS prediction. The value of ref_idcs may be 0, 1 or 2 indicating that the reference picture
isareferencepictureusedbythecurrentpicture,areference pictureused forfuturepicture ornot
a reference picture anymore, respectively. The first num_ref_pics of ref_idcs correspond to the
ReferencepicturesinthepredictorRPS. Thelast ref_idcs corresponds to the predictor picture.
For example, consider the coding structure of Figure 1. This coding structure is of size 4. The pictures
arelistedindecodingorder. Frame1shallthereforedescribepicturewithPOC = 4. Itreferencespicture
0,andthereforehas4asareferencepicture. Similarly,Frame2hasaPOCof2,andsinceitreferences
pictures 0 and 4, its reference pictures are listed as -2 2. Frame3 is a special case: even though it only
referencespictureswithPOC0and2,italsoneedstoincludethepicturewithPOC4,whichmustbekept
in order to be used as a reference picture in the future. The reference picture list for Frame3 therefore
becomes -1 1 3. Frame4 hasaPOCof3 andits listof reference pictures is -1 1.
Figure1: AGOPstructure
B B B B
B B
I P P
POC 0 1 2 3 4 5 6 7 8
DecodeOrder 0 3 2 4 1 7 6 8 5
Inter RPS prediction may be used for Frame2, Frame3 and Frame4, hence the predict parameter is set
to 1 for these frames. Frame2 uses Frame1 as the predictor hence the deltaRIdx1 is 0. Similarly for
Frame3 and Frame4 which use Frame2 and Frame3 as predictors, respectively. The deltaRPS is equal
to the POC of the predictor minus the POC of the current picture, therefore the deltaRPS for Frame2 is
42 = 2,forFrame3is21 = 1 andforFrame4 is13 =2.
In Frame2, reference pictures with POC 0 and 2 are used, so the reference idcs for Frame2 are 1 1
indicating that the reference picture,4, in Frame1 is still a reference picture in Frame2 and Frame1
is also a reference picture in Frame2. The reference idcs for Frame3 are 1 1 1. The first and second
“1”s indicating that the reference pictures “2 2” in Frame2 are still reference pictures in Frame3 and
the last “1” indicating that Frame2 is also a reference picture in Frame3. In Frame 4, the reference idcs
are 0 1 1 0. The first “0” indicates that the reference pictures “-1” in Frame 3 is no longer a reference
4 Date saved: 2015-03-09
pictureinFrame4. Thenexttwo“1”sindicatethatthereferencepictures“13”arenowreferencepictures
ofFrame4. Thefinal“0”indicatesthatFrame3 is notareference picture.
Inordertospecifythistotheencoder,theparametersinTable2could be used.
Table2: GOPstructure example
Frame1 Frame2 Frame3 Frame4
Type P B B B
POC 4 2 1 3
QPoffset 1 2 3 3
QPfactor 0.5 0.5 0.5 0.5
tcOffsetDiv2 0 1 2 2
betaOffsetDiv2 0 0 0 0
temporal_id 0 1 2 2
num_ref_pics_active 1 1 1 1
num_ref_pics 1 2 3 2
reference_pictures 4 22 113 11
predict 0 1 1 1
deltaRIdx1 0 0 0
deltaRPS 2 1 2
num_ref_idcs 2 3 4
reference_idcs 11 111 0110
Here,theframesusedforpredictionhavebeengivenhigherqualitybyassigningalowerQPoffset. Also,
the non-reference frames have been marked as belonging to a higher temporal layer, to make it possible
to decode only every other frame. Note: each line should contain information for one frame, so this
configurationwouldbespecifiedas:
Frame1: P 4 1 0.5 0 0 0 1 1 -4 0
Frame2: B 2 2 0.5 1 0 1 1 2 -2 2 1 0 2 2 1 1
Frame3: B 1 3 0.5 2 0 2 1 3 -1 1 3 1 0 1 3 1 1 1
Frame4: B 3 3 0.5 2 0 2 1 2 -1 1 1 0 -2 4 0 1 1 0
ThevaluesofdeltaRIdx1,deltaRPS,num_ref_idcsandreferenceidcsofFrameK canbederivedfrom
thePOCvalueofFrame andthePOC,num_ref_picsandreference_picturesvaluesofFrame ,where
K M
K isthe indexoftheRPStobeintercoded andtheM isthe index of the reference RPS, as follows.
deltaRIdx 1 KM1;
K
deltaRPS POC POC ;
K M K
num_ref_idcs num_ref_pics +1 ;
K
M
forj 0to num_ref_pics do
M
fori 0to num_ref_idcs do
K
if reference_pictures + deltaRPS == reference_pictures then
K
M;j K;i
if reference_pictures isused bythecurrentframe then reference_idcs = 1;
K;i K;j
;
else reference_idcs = 2;
K;j
;
else
reference_idcs [j] = 0 ;
K
end
end
end
/* reference_pictures does not exist and is assumed to be 0 */
M;num_ref_pics
M
Note: The above (automatic) generation of the inter RPS parameter values has been integrated into the
encoder, and is activated by the value of predict = 2 followed by the value of deltaRIdx1, only, as
describedabove.
5 Date saved: 2015-03-09
3.2 Encoderparameters
Shorthand alternatives for the parameter that can be used on the command line are shown in brackets after the parameter
name.
Table3: File,I/O andsource parameters.
Option Default Description
InputFile(-i) Specifiestheinput videofile.
Videodatamustbeinaraw4:2:0,or4:2:2planarformat,4:4:4planarformat

(Y CbCr,RGB orGBR),orinaraw4:0:0format.
Note: Whenthebitdepthofsamplesislargerthan8,eachsampleisencoded
in2bytes (littleendian,LSB-justified).
BitstreamFile(-b) Specifiestheoutput codedbitstreamfile.
ReconFile(-o) Specifiestheoutput locallyreconstructedvideofile.
SourceWidth(-wdt) 0 Specifiesthewidthandheightoftheinputvideoinlumasamples.
SourceHeight(-hgt) 0
InputBitDepth 8 Specifiesthebitdepthoftheinputvideo.
MSBExtendedBitDepth 0 Extends the input video by adding MSBs of value 0. When 0, no extension
isappliedand theInputBitDepthisused.
The MSBExtendedBitDepth becomes the effective file InputBitDepth for
subsequentprocessing.
InternalBitDepth 0 Specifies the bit depth used for coding. When 0, the setting defaults to the
valueoftheMSBExtendedBitDepth.
IftheinputvideoisadifferentbitdepthtoInternalBitDepth,itisautomati-
callyconvertedby:
⌊ ⌋
InternalBitDepth
Pel2
MSBExtendedBitDepth
Note: Theeffectofthisoptionisasiftheinputvideoisexternallyconverted
to the MSBExtendedBitDepth and then to the InternalBitDepth and then
codedwiththisvalueasInputBitDepth. Thecodechasnonotionofdifferent
bitdepths.
OutputBitDepth 0 Specifies the bit depth of the output locally reconstructed video file. When
0, the setting defaults to the value of InternalBitDepth. Note: This option
hasno effectonthedecodingprocess.
InputBitDepthC 0 Specifiesthevariousbit-depthsforchromacomponents. Theseonlyneedto
MSBExtendedBitDepthC 0 bespecifiedifnon-equallumaandchromabit-depthprocessingisrequired.
InternalBitDepthC 0 When0, thesettingdefaultstothecorrespondingnon-Chromavalue.
OutputBitDepthC 0
InputColourSpaceConvert Thecolourspace conversiontoapplytoinputvideo. Permittedvalues are:
UNCHANGED Nocolourspaceconversionisapplied
YCbCrToYCrCb Swapthesecondandthirdcomponents
YCbCrtoYYY Set the second and third components to the
valuesinthefirst
RGBtoGBR Reorderthethreecomponents
Ifnovalueisspecified,nocolourspaceconversionisapplied. Thelistmay
eventuallyalso includeRGBtoYCbCrorYCgCoconversions.
SNRInternalColourSpace false When this is set true, then no colour space conversion is applied prior to
PSNRcalculation,otherwisetheinverseofInputColourSpaceConvertisap-
plied.
OutputInternalColourSpace false When this is set true, then no colour space conversion is applied to the re-
constructedvideo,otherwisetheinverseofInputColourSpaceConvertisap-
plied.
Continued.
6 Datesaved: 2015-03-09
Table3: File,I/Oand sourceparameters. (Continued)
Option Default Description
InputChromaFormat 420 Specifies the chroma format used in the input file. Permitted values (de-
pendingonthe profile)are400,420,422or444.
ChromaFormatIDC (-cf) 0 Specifies the chroma format to use for processing. Permitted values (de-
pending on the profile) are 400, 420, 422 or 444; the value of 0 indicates
thatthevalue ofInputChromaFormatshouldbeusedinstead.
MSEBasedSequencePSNR false When 0, the PSNR output is a linear average of the frame PSNRs; when
1, additional PSNRs are output which are formed from the average MSE
of all the frames. The latter is useful when coding near-losslessly, where
occasionalframesbecomelossless.
PrintFrameMSE false When 1, the Mean Square Error (MSE) values of each frame will also be
outputalongside thedefaultPSNRvalues.
PrintSequenceMSE false When 1, the Mean Square Error (MSE) values of the entire sequence will
alsobeoutput alongsidethedefaultPSNRvalues.
CabacZeroWordPaddingEnabled false When 1, CABAC zero word padding will be enabled. This is currently not
thedefaultvalueforthesetting.
ConformanceWindowMode 0 Specifieshow the parameters related to the conformance window are inter-
preted(cropping/padding). Thefollowingmodesareavailable:
0 Nocropping/padding
1 AutomaticpaddingtothenextminimumCUsize
2 Padding according to parameters HorizontalPadding and Verti-
calPadding
3 CroppingaccordingtoparametersConfWinLeft,ConfWinRight,
ConfWinTopandConfWinBottom
HorizontalPadding(-pdx) 0 Specifiesthehorizontalandverticalpaddingtobeappliedtotheinputvideo
VerticalPadding(-pdy) inlumasampleswhenConformanceWindowModeis2. Mustbeamultiple
ofthe chromaresolution(e.g. amultipleoftwofor4:2:0).
ConfWinLeft 0 Specifiesthehorizontalandverticalcroppingtobeappliedtotheinputvideo
ConfWinRight inlumasampleswhenConformanceWindowModeis3. Mustbeamultiple
ConfWinTop ofthe chromaresolution(e.g. amultipleoftwofor4:2:0).
ConfWinBottom
FrameRate(-fr) 0 Specifiestheframerateoftheinputvideo.
Note: Thisoptiononlyaffectsthereportedbitrates.
FrameSkip(-fs) 0 Specifiesa numberofframestoskipatbeginningofinputvideofile.
FramesToBeEncoded(-f) 0 Specifiesthenumberofframestobeencoded. When0,allframesarecoded.
FieldCoding false When1, indicates thatfield-basedcodingistobeapplied.
TopFieldFirst(-Tff) 0 Indicates the order of the fields packed into the input frame. When 1, the
topfield istemporallyfirst.
7 Datesaved: 2015-03-09
Table4: Profile andlevel parameters
Option Default Description
Profile none Specifies theprofiletowhichtheencodedbitstreamcomplies.
ValidHEVCVer. 1valuesare: none,main,main10,main-still-picture
Valid HEVC Ver. 2 (RExt) values are: main-RExt, high-throughput-
RExt,monochrome,monochrome12,monochrome16,main12,main_422_-
10, main_422_12, main_444, main_444_10, main_444_12, main_444_-
16,main_intra,main_10_intra,main_12_intra,main_422_10_intra,main_-
422_12_intra, main_444_intra, main_444_10_intra, main_444_12_intra,
main_444_16_intra.
Whenmain-RExtisspecified,theconstraintflagsareeithermanuallyspec-
ified, orcalculated viatheothersuppliedsettings.
Compatibility flags are automatically determined according to the profile.
NB:Thereiscurrentlyonlylimitedvalidationthattheencoderconfiguration
complieswiththe profile,levelandtierconstraints.
Level none Specifies the level to which the encoded bitstream complies. Valid values
are: none, 1, 2, 2.1,3,3.1,4,4.1,5,5.1,5.2,6,6.1,6.2,8.5
NB:Thereiscurrentlyonlylimitedvalidationthattheencoderconfiguration
complieswiththe profile,levelandtierconstraints.
Tier main Specifiestheleveltiertowhichtheencodedbitsreamcomplies. Validvalues
are: main, high.
NB:Thereiscurrentlyonlylimitedvalidationthattheencoderconfiguration
complieswiththe profile,levelandtierconstraints.
MaxBitDepthConstraint 0 For –profile=main-RExt, specifies the value to use to derive the gen-
eral_max_bit_depth constraint flags for RExt profiles; when 0, use
max(InternalBitDepth;InternalBitDepthC)
MaxChromaFormatConstraint 0 For–profile=main-RExt,specifiesthechroma-formattouseforthegeneral
profile constraints for RExt profiles; when 0, use the value of ChromaFor-
matIDC.
IntraConstraintFlag false For –profile=main-RExt, specifies the value of general_intra_constraint_-
flagtousefor RExt profiles.
LowerBitRateConstraintFlag true Specifies the value of general_lower_bit_constraint_flag to use for RExt
profiles.
ProgressiveSource false Specifies thevalueofgeneral_progressive_source_flag
InterlacedSource false Specifies thevalueofgeneral_interlaced_source_flag
NonPackedSource false Specifies thevalueofgeneral_non_packed_constraint_flag
FrameOnly false Specifies thevalueofgeneral_frame_only_constraint_flag
Table5: Unitdefinitionparameters
Option Default Description
MaxCUWidth 64 Defines themaximumCUwidth.
MaxCUHeight 64 Defines themaximumCUheight.
MaxCUSize(-s) 64 Defines themaximumCUsize.
MaxPartitionDepth(-h) 4 Defines the depthoftheCUtree.
QuadtreeTULog2MaxSize 6 Defines the MaximumTUsizeinlogarithmbase2.
(= log (64))
Continued.
8 Datesaved: 2015-03-09
Table5: Unitdefinitionparameters (Continued)
Option Default Description
QuadtreeTULog2MinSize 2 Defines the MinimumTUsizeinlogarithmbase2.
(= log (4))
QuadtreeTUMaxDepthIntra 1 Definesthe depthoftheTUtreeforintraCUs.
QuadtreeTUMaxDepthInter 2 Defines thedepth oftheTUtreeforinterCUs.
Table6: Codingstructure parameters
Option Default Description
IntraPeriod(-ip) 1 Specifiesthe intraframeperiod. Avalueof1 impliesaninfiniteperiod.
DecodingRefreshType(-dr) 0 Specifies the type of decoding refresh to apply at the intra frame period
picture.
0 Appliesan Ipicture(notaintrarandomaccesspoint).
1 Appliesa CRA intrarandomaccesspoint(openGOP).
2 Appliesan IDRintrarandomaccesspoint(closedGOP).
3 UserecoverypointSEImessagestoindicaterandomaccess.
GOPSize(-g) 1 SpecifiesthesizeofthecyclicGOPstructure.
FrameN Multiple options that define the cyclic GOP structure that will be used re-
peatedly throughout the sequence. The table should contain GOPSize ele-
ments.
Seesection3.1 forfurtherdetails.
Table7: Motion estimation parameters
Option Default Description
FastSearch 1 Enables ordisablestheuseofafastmotionsearch.
0 Full searchmethod
1 Fastsearchmethod
2 Previousmotionvectorfastsearchmethod
SearchRange(-sr) 96 Specifiesthe searchrangeusedformotionestimation.
Note: thesearchrangeisdefinedaroundapredictor. Motionvectorsderived
bythemotionestimationmaythushavevalueslargerthanthesearchrange.
BipredSearchRange 4 Specifies the search range used for bi-prediction refinement in motion esti-
mation.
HadamardME true EnablesordisablestheuseoftheHadamardtransforminfractional-pelmo-
tion estimation.
0 SADfor cost estimation
1 Hadamardfor costestimation
ASR false Enables or disables the use of adaptive search ranges, where the motion
search range is dynamically adjusted according to the POC difference be-
tween thecurrentandthereferencepictures.
( )
abs(POCcur�POCref)
SearchRange’ = Round SearchRangeADAPT_SR_SCALE
RateGOPSize
MaxNumMergeCand 5 Specifiesthe maximumnumberofmergecandidatestouse.
9 Datesaved: 2015-03-09
Table8: Modedecision parameters
Option Default Description
LambdaModifierN (-LMN) 1.0 Specifies a value that is multiplied with the Lagrange multiplier , for use
in the rate-distortion optimised cost calculation when encoding temporal
layerN.
N maybeinthe range0(inclusive)to7(exclusive).
ECU false Enables or disables the use of early CU determination. When enabled,
skipped CUswill notbesplitfurther.
CFM false EnablesordisablestheuseofCbf-basedfastencodermode. Whenenabled,
oncea2Nx2NCUhasbeenevaluated,iftheRootCbfis0,furtherPUsplits
will notbe evaluated.
ESD false Enables or disables the use of early skip detection. When enabled, the skip
mode will betested beforeanyother.
FEN false Enables or disables the use of fast encoder mode. When enabled, the fol-
lowing occurs:
• In the SAD computation for blocks having size larger than 8, only
thelines ofevenrowsintheblockareconsidered.
• The number of iterations used in the bi-directional motion vector
refinementinthemotionestimationprocessisreducedfrom4 to 1.
FDM true Enablesordisablestheuseoffastencoderdecisionsfor2Nx2Nmergemode.
When enabled, the RD cost for the merge mode of the current candidate is
not evaluated if the merge skip mode was the best merge mode for one of
the previouscandidates.
RDpenalty 0 RD-penaltyfor32x32TUforintrainnon-intraslices. Enablingthisparam-
eter can reduce thevisibilityofCUboundariesinthecodedpicture.
0 No RD-penalty
1 RD-penalty
2 Maximum RD-penalty(no32x32TU)
Table9: Quantizationparameters
Option Default Description
QP(-q) 30.0 Specifies the base value of the quantization parameter. If it is non-integer,
theQPisswitched onceduringencoding.
CbQpOffset(-cbqpofs) 0 Global offset to apply to the luma QP to derive the QP of Cb and Cr re-
CrQpOffset(-crqpofs) 0 spectively. These options correspond to the values of cb_qp_offset and
cr_qp_offset, that are transmitted in the PPS. Valid values are in the range
[12;12].
MaxCuDQPDepth(-dqd) 0 Defines maximum depth of a minimum CuDQP for sub-LCU-level delta
QP.MaxCuDQPDepthshallbegreaterthanorequaltoSliceGranularity.
RDOQ true Enables or disables rate-distortion-optimized quantization for transformed
TUs.
RDOQTS true Enables or disables rate-distortion-optimized quantization for transform-
skippedTUs.
SelectiveRDOQ false Enablesordisablesselectiverate-distortion-optimizedquantization. Asim-
plequantizationisusetopre-analyze,whethertobypasstheRDOQprocess
or not. If all the coefficients are quantized to 0, the RDOQ process is by-
passed. Otherwise,theRDOQprocessisperformedasusual.
Continued.
10 Datesaved: 2015-03-09
Table9: Quantization parameters (Continued)
Option Default Description
DeltaQpRD(-dqr) 0 SpecifiesthemaximumQPoffsetatslicelevelformulti-passsliceencoding.
Whenencoding,eachsliceistestedmultipletimesbyusingsliceQPvalues
in the range [DeltaQpRD;DeptaQpRD], and the best QP value is chosen
asthe sliceQP.
MaxDeltaQP(-d) 0 Specifies the maximum QP offset at the largest coding unit level for the
block-level adaptive QP assignment scheme. In the encoder, each largest
coding unit is tested multiple times by using the QP values in the range
[MaxDeltaQP;MaxDeltaQP], and the best QP value is chosen as the QP
valueofthe largestcodingunit.
dQPFile(-m) Specifies a file containing a list of QP deltas. The n-th line (where n is 0
forthefirstline)ofthisfilecorrespondstotheQPvaluedeltaforthepicture
withPOC valuen.
AdaptiveQp(-aq) false EnableordisableQPadaptationbaseduponapsycho-visualmodel.
MaxQPAdaptationRange(-aqr) 6 SpecifiesthemaximumQPadaptationrange.
AdaptiveQpSelection(-aqps) false Specifies whether QP values for non-I frames will be calculated on the fly
basedon statisticsofpreviouslycodedframes.
RecalculateQP. false Recalculate QP values according to lambda values. Do not suggest to be
AccordingToLambda enabledinall intracase.
ScalingList 0 Controlsthespecification ofscalinglists:
0 Scalinglistsaredisabled
1 Usedefaultscalinglists
2 ScalinglistsarespecifiedinthefileindicatedbyScalingListFile
ScalingListFile When ScalingList is set to 2, this parameter indicates the name of the file,
which contains the defined scaling lists. If ScalingList is set to 2 and this
parameter is an empty string, information on the format of the scaling list
fileis outputand theencoderstops.
MaxCUChromaQpAdjustmentDepth -1 Specifies the maximum depth for CU chroma QP adjustment; if negative,
CUchromaQPadjustmentisdisabled.
Table10: Slicecoding parameters
Option Default Description
SliceMode 0 Controlsthe slicepartitioningmethodinconjunctionwithSliceArgument.
0 Single slice
1 Maximum numberofCTUsperslice
2 Maximum numberofbytesperslice
3 Maximum numberoftilesperslice
SliceArgument SpecifiesthemaximumnumberofCTUs,bytesortilesinaslicedepending
on theSliceModesetting.
SliceSegmentMode 0 Enables(dependent)slicesegmentcodinginconjunctionwithSliceSegmen-
tArgument.
0 Singleslice
1 Maximumnumber ofCTUsperslicesegment
2 Maximumnumber ofbytesperslicesegment
3 Maximumnumber oftilesperslicesegment
SliceSegmentArgument Defines the maximum number of CTUs, bytes or tiles a slice segment de-
pendingonthe SliceSegmentModesetting.
Continued.
11 Datesaved: 2015-03-09
Table10: Slicecoding parameters (Continued)
Option Default Description
WaveFrontSynchro false EnablestheuseofspecificCABACprobabilitiessynchronizationatthebe-
ginning of each line of CTBs in order to produce a bitstream that can be
encoded or decodedusingoneormorecores.
TileUniformSpacing false Controls themodeusedtodetermineperrowandcolumntilesizes.
0 Each tile column width and tile row height is explicitly set by
TileColumnWidthArrayandTileRowHeightArrayrespectively
1 Tilecolumnsandtilerowsareuniformlyspaced.
NumTileColumnsMinus1 0 Specifies the tile based picture partitioning geometry as
NumTileRowsMinus1 NumTileColumnsMinus1 + 1  NumTileRowsMinus1 + 1 columns
and rows.
TileColumnWidthArray Specifies a space or comma separated list of widths and heights, respec-
TileRowHeightArray tively,ofeachtilecolumnortilerow. Thefirstvalueinthelistcorresponds
tothe leftmost tilecolumnortopmosttilerow.
Table11: Deblockingfilter parameters
Option Default Description
LoopFilterDisable false Enablesor disablesthein-loopdeblockingfilter.
LFCrossSliceBoundaryFlag true Enablesor disablestheuseofin-loopfilteringacrosssliceboundaries.
DeblockingFilterControlPresent false Enablesordisablesthepresenceofthedeblockingfiltercontrolparameters
inthepictureparametersetandintheslicesegmentheader. Whendisabled,
thedefaultdeblockingfilterparametersareused.
LoopFilterOffsetInPPS false If enabled, the in-loop deblocking filter control parameters are sent in PPS.
Otherwise, the in-loop deblocking filter control parameters are sent in the
slice segment header. If deblocking filter parameters are sent in PPS, the
same values of deblocking filter parameters are used for all pictures in the
sequence(i.e. deblockingparameter=baseparametervalue). Ifdeblocking
filter parameters are sent in the slice segment header, varying deblocking
filter parameters can be specified by setti
...

Questions, Comments and Discussion

Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.

Loading comments...