1# New Input File Format is as follows
2# <ParameterName> = <ParameterValue> # Comment
3#
4# See configfile.h for a list of supported ParameterNames
5#
6# For bug reporting and known issues see:
7# https://ipbt.hhi.fraunhofer.de
8
9
10##########################################################################################
11# Files
12##########################################################################################
13InputFile             = "foreman_part_qcif.yuv"       # Input sequence
14InputHeaderLength     = 0      # If the inputfile has a header, state it's length in byte here
15StartFrame            = 0      # Start frame for encoding. (0-N)
16FramesToBeEncoded     = 3      # Number of frames to be coded
17FrameRate             = 30.0   # Frame Rate per second (0.1-100.0)
18Enable32Pulldown      = 0      # Enable 'hard' 3:2 pulldown (modifying the inpur data)
19                               # 0 = disabled
20                               # 1 = A, B, Bt|Cb, Ct|Db, D
21                               # 2 = A, B, C, Ct|Db, D
22SEIVUI32Pulldown      = 0      # Enable 3:2 pulldown through VUI and SEI metadata signaling. Five methods are supported:
23                               # 0 = disabled
24                               # 1 = A, Bt|Bb, Bt|Cb, Ct|Cb, D
25                               # 2 = A, B, C, C, D
26                               # 3 = At|Ab, Bt|Bb, Bt|Cb, Ct|Cb, Dt|Db
27                               # 4 = A, Bt|Bb, Bt|Cb, Ct|Db, Dt|Db
28                               # 5 = At|Ab, Bt|Bb, Bt|Cb, Ct|Db, Dt|Db
29
30SourceWidth           = 176    # Source frame width
31SourceHeight          = 144    # Source frame height
32SourceResize          = 0      # Resize source size for output
33OutputWidth           = 176    # Output frame width
34OutputHeight          = 144    # Output frame height
35ProcessInput          = 0      # Filter Input Sequence
36Interleaved           = 0      # 0: Planar input, 1: Packed input
37PixelFormat           = 0      # Pixel Format for 422 packed inputs
38                               # 0: UYVY
39                               # 1: YUY2/YUYV
40                               # 2: YVYU
41                               # 3: BGR (Unsupported)
42                               # 4: V210 (Video Clarity)
43
44StandardRange         = 0      # 0: Standard range 1: Full range (RGB input)
45VideoCode             = 1      # Video codes for RGB ==> YUV conversions
46                               # 0 = NULL,
47                               # 1 = ITU_REC709,
48                               # 2 = CCIR_601,
49                               # 3 = FCC,
50                               # 4 = ITU_REC624BG,
51                               # 5 = SMPTE_170M,
52                               # 6 = SMPTE_240M,
53                               # 7 = SMPTE_260M,
54                               # 8 = ITU_REC709_EXACT
55
56TraceFile             = "trace_enc.txt"      # Trace file
57ReconFile             = "test_rec.yuv"       # Reconstruction YUV file
58OutputFile            = "test.264"           # Bitstream
59StatsFile             = "stats.dat"          # Coding statistics file
60
61NumberOfViews         = 1                     # Number of views to encode (1=1 view, 2=2 views)
62View1ConfigFile       = "encoder_view1.cfg"   # Config file name for second view
63##########################################################################################
64# Encoder Control
65##########################################################################################
66Grayscale             = 0   # Encode in grayscale (Currently only works for 8 bit YUV 420 input)
67ProfileIDC            = 100 # Profile IDC (66=baseline, 77=main, 88=extended; FREXT Profiles: 100=High, 110=High 10, 122=High 4:2:2, 244=High 4:4:4, 44=CAVLC 4:4:4 Intra, 118=Multiview High Profile, 128=Stereo High Profile)
68IntraProfile          = 0   # Activate Intra Profile for FRExt (0: false, 1: true)
69                            # (e.g. ProfileIDC=110, IntraProfile=1  =>  High 10 Intra Profile)
70LevelIDC              = 40  # Level IDC   (e.g. 20 = level 2.0)
71
72IntraPeriod           = 0   # Period of I-pictures   (0=only first)
73IDRPeriod             = 0   # Period of IDR pictures (0=only first)
74AdaptiveIntraPeriod   = 1   # Adaptive intra period
75AdaptiveIDRPeriod     = 0   # Adaptive IDR period
76IntraDelay            = 0   # Intra (IDR) picture delay (i.e. coding structure of PPIPPP... )
77EnableIDRGOP          = 0   # Support for IDR closed GOPs (0: disabled, 1: enabled)
78EnableOpenGOP         = 0   # Support for open GOPs (0: disabled, 1: enabled)
79QPISlice              = 28  # Quant. param for I Slices (0-51)
80QPPSlice              = 28  # Quant. param for P Slices (0-51)
81FrameSkip             = 0   # Number of frames to be skipped in input (e.g 2 will code every third frame).
82                            # Note that this now excludes intermediate (i.e. B) coded pictures
83ChromaQPOffset        = 0   # Chroma QP offset (-51..51)
84
85DisableSubpelME       = 0   # Disable Subpixel Motion Estimation (0=off/default, 1=on)
86SearchRange           = 32  # Max search range
87MESoftenSSEMetric     = 0   # soften lambda criterion for SSE ME
88MEDistortionFPel      = 0   # Select error metric for Full-Pel ME    (0: SAD, 1: SSE, 2: Hadamard SAD)
89MEDistortionHPel      = 2   # Select error metric for Half-Pel ME    (0: SAD, 1: SSE, 2: Hadamard SAD)
90MEDistortionQPel      = 2   # Select error metric for Quarter-Pel ME (0: SAD, 1: SSE, 2: Hadamard SAD)
91MDDistortion          = 2   # Select error metric for Mode Decision  (0: SAD, 1: SSE, 2: Hadamard SAD)
92SkipDeBlockNonRef     = 0   # Skip Deblocking (regardless of DFParametersFlag) for non-reference frames (0: off, 1: on)
93OnTheFlyFractMCP      = 0   # Perform on-the-fly fractional pixel interpolation for Motion Compensation and Motion Estimation
94                            # 0: Disable, interpolate & store all positions
95                            # 1: Store full pel & interpolated 1/2 pel positions; 1/4 pel positions interpolate on-the-fly
96                            # 2: Store only full pell positions; 1/2 & 1/4 pel positions interpolate on-the-fly
97ChromaMCBuffer        = 1   # Calculate Color component interpolated values in advance and store them.
98                            # Provides a trade-off between memory and computational complexity
99                            # (0: disabled/default, 1: enabled)
100ChromaMEEnable        = 0   # Take into account Color component information during ME
101                            # (0: only first component/default,
102                            #  1: All Color components - Integer refinement only
103                            #  2: All Color components - All refinements)
104ChromaMEWeight        = 0   # Weighting for chroma components. This parameter should have a relationship with color format.
105
106NumberReferenceFrames = 5   # Number of previous frames used for inter motion search (0-16)
107
108PList0References      = 0   # P slice List 0 reference override (0 disable, N <= NumberReferenceFrames)
109Log2MaxFNumMinus4     = 0   # Sets log2_max_frame_num_minus4 (-1 : based on FramesToBeEncoded/Auto, >=0 : Log2MaxFNumMinus4)
110Log2MaxPOCLsbMinus4   = -1  # Sets log2_max_pic_order_cnt_lsb_minus4 (-1 : Auto, >=0 : Log2MaxPOCLsbMinus4)
111
112GenerateMultiplePPS   = 1   # Transmit multiple parameter sets. Currently parameters basically enable all WP modes (0: diabled, 1: enabled)
113SendAUD               = 0   # Send Access Delimiter Unit NALU (for every access unit)
114ResendSPS             = 2   # Resend SPS  (0: disabled, 1: all Intra pictures, 2: only for IDR, 3: for IDR and OpenGOP I)
115ResendPPS             = 0   # Resend PPS (with pic_parameter_set_id 0) for every coded Frame/Field pair (0: disabled, 1: enabled)
116
117MbLineIntraUpdate     = 0   # Error robustness(extra intra macro block updates)(0=off, N: One GOB every N frames are intra coded)
118RandomIntraMBRefresh  = 0   # Forced intra MBs per picture
119
120##########################################################################################
121# PSlice Mode types
122##########################################################################################
123PSliceSkip            = 1   # P-Slice Skip mode consideration  (0=disable, 1=enable)
124PSliceSearch16x16     = 1   # P-Slice Inter block search 16x16 (0=disable, 1=enable)
125PSliceSearch16x8      = 1   # P-Slice Inter block search 16x8  (0=disable, 1=enable)
126PSliceSearch8x16      = 1   # P-Slice Inter block search  8x16 (0=disable, 1=enable)
127PSliceSearch8x8       = 1   # P-Slice Inter block search  8x8  (0=disable, 1=enable)
128PSliceSearch8x4       = 1   # P-Slice Inter block search  8x4  (0=disable, 1=enable)
129PSliceSearch4x8       = 1   # P-Slice Inter block search  4x8  (0=disable, 1=enable)
130PSliceSearch4x4       = 1   # P-Slice Inter block search  4x4  (0=disable, 1=enable)
131
132##########################################################################################
133# BSlice Mode types
134##########################################################################################
135
136BSliceDirect          = 1   # B-Slice Skip mode consideration  (0=disable, 1=enable)
137BSliceSearch16x16     = 1   # B-Slice Inter block search 16x16 (0=disable, 1=enable)
138BSliceSearch16x8      = 1   # B-Slice Inter block search 16x8  (0=disable, 1=enable)
139BSliceSearch8x16      = 1   # B-Slice Inter block search  8x16 (0=disable, 1=enable)
140BSliceSearch8x8       = 1   # B-Slice Inter block search  8x8  (0=disable, 1=enable)
141BSliceSearch8x4       = 1   # B-Slice Inter block search  8x4  (0=disable, 1=enable)
142BSliceSearch4x8       = 1   # B-Slice Inter block search  4x8  (0=disable, 1=enable)
143BSliceSearch4x4       = 1   # B-Slice Inter block search  4x4  (0=disable, 1=enable)
144
145BiPredSearch16x16     = 1   # B-Slice Bi-prediction block search 16x16 (0=disable, 1=enable)
146BiPredSearch16x8      = 1   # B-Slice Bi-prediction block search 16x8  (0=disable, 1=enable)
147BiPredSearch8x16      = 1   # B-Slice Bi-prediction block search 8x16  (0=disable, 1=enable)
148BiPredSearch8x8       = 0   # B-Slice Bi-prediction block search 8x8   (0=disable, 1=enable)
149
150DisableIntra4x4        = 0  # Disable Intra 4x4 modes
151DisableIntra16x16      = 0  # Disable Intra 16x16 modes
152DisableIntraInInter    = 0  # Disable Intra modes for inter slices
153IntraDisableInterOnly  = 0  # Apply Disabling Intra conditions only to Inter Slices (0:disable/default,1: enable)
154Intra4x4ParDisable     = 0  # Disable Vertical & Horizontal 4x4
155Intra4x4DiagDisable    = 0  # Disable Diagonal 45degree 4x4
156Intra4x4DirDisable     = 0  # Disable Other Diagonal 4x4
157Intra16x16ParDisable   = 0  # Disable Vertical & Horizontal 16x16
158Intra16x16PlaneDisable = 0  # Disable Planar 16x16
159ChromaIntraDisable     = 0  # Disable Intra Chroma modes other than DC
160EnableIPCM             = 1  # Enable IPCM macroblock mode
161
162DisposableP            = 0  # Enable Disposable P slices in the primary layer (0: disable/default, 1: enable)
163DispPQPOffset          = 0  # Quantizer offset for disposable P slices (0: default)
164
165PreferDispOrder        = 1  # Prefer display order when building the prediction structure as opposed to coding order (affects intra and IDR periodic insertion, among others)
166PreferPowerOfTwo       = 0  # Prefer prediction structures that have lengths expressed as powers of two
167FrmStructBufferLength  = 16 # Length of the frame structure unit buffer; it can be overriden for certain cases
168
169ChangeQPFrame          = 0  # Frame in display order from which to apply the Change QP offsets
170ChangeQPI              = 0  # Change QP offset value for I_SLICE
171ChangeQPP              = 0  # Change QP offset value for P_SLICE
172ChangeQPB              = 0  # Change QP offset value for B_SLICE
173ChangeQPSI             = 0  # Change QP offset value for SI_SLICE
174ChangeQPSP             = 0  # Change QP offset value for SP_SLICE
175
176##########################################################################################
177# B Slices
178##########################################################################################
179
180NumberBFrames          = 7  # Number of B coded frames inserted (0=not used)
181PReplaceBSlice         = 0  # Replace B-coded slices with P-coded slices when NumberBFrames>0
182QPBSlice               = 30 # Quant. param for B slices (0-51)
183BRefPicQPOffset        = -1 # Quantization offset for reference B coded pictures (-51..51)
184DirectModeType         = 1  # Direct Mode Type (0:Temporal 1:Spatial)
185DirectInferenceFlag    = 1  # Direct Inference Flag (0: Disable 1: Enable)
186BList0References       = 0  # B slice List 0 reference override (0 disable, N <= NumberReferenceFrames)
187BList1References       = 1  # B slice List 1 reference override (0 disable, N <= NumberReferenceFrames)
188                            # 1 List1 reference is usually recommended for normal GOP Structures.
189                            # A larger value is usually more appropriate if a more flexible
190                            # structure is used (i.e. using HierarchicalCoding)
191
192BReferencePictures    =  0  # Referenced B coded pictures (0=off, 1=B references for secondary layer, 2=B references for primary layer)
193
194HierarchicalCoding      =  3  # B hierarchical coding (0= off, 1= 2 layers, 2= 2 full hierarchy, 3 = explicit)
195HierarchyLevelQPEnable  =  1  # Adjust QP based on hierarchy level (in increments of 1). Overrides BRefPicQPOffset behavior.(0=off, 1=on)
196ExplicitHierarchyFormat = "b3r0b1r1b0e2b2e2b5r1b4e2b6e2" # Explicit Enhancement GOP. Format is {FrameDisplay_orderReferenceQP}.
197                                                         # Valid values for reference type is r:reference, e:non reference.
198ExplicitSeqCoding     =  0    # Enable support for explicit sequence coding
199ExplicitSeqFile       =  "explicit_seq.cfg"
200LowDelay              =  0    # Apply HierarchicalCoding without delay (i.e., encode in the captured/display order)
201ReferenceReorder      =  1    # Reorder References according to Poc distance for HierarchicalCoding (0=off, 1=enable, 2=use when LowDelay is set)
202UseDistortionReorder  =  0    # Enable Distortion based reordering, when ReferenceReorder is set to 1
203PocMemoryManagement   =  1    # Memory management based on Poc Distances for HierarchicalCoding (0=off, 1=on, 2=use when LowDelay is set)
204SetFirstAsLongTerm    =  0    # Set first frame as long term
205
206BiPredMotionEstimation = 1   # Enable Bipredictive based Motion Estimation (0:disabled, 1:enabled)
207BiPredMERefinements    = 3   # Bipredictive ME extra refinements (0: single, N: N extra refinements (1 default)
208BiPredMESearchRange    = 16  # Bipredictive ME Search range (8 default). Note that range is halved for every extra refinement.
209BiPredMESubPel         = 2   # Bipredictive ME Subpixel Consideration (0: disabled, 1: single level, 2: dual level)
210
211##########################################################################################
212# HM like coding structures
213##########################################################################################
214
215BLevel0MoreRef        =  0  # 0: Use the same number of reference pictures as the other B pictures
216                            # 1: Use more reference frame pictures for B pictures at level 0
217BIdenticalList        =  0  # 0: not used; 1: used for B pictures at level 0; 2: used for all B pictures
218                            # 1 and 2 need to set ReferenceReorder to 1
219CRA                   =  0  # 0: do not use CRA like random access support; 1 use CRA like random access support
220                            # only used for random access cases, LowDelay != 1
221HM50RefStructure      =  0  # 0: do not use HM-5.0 like referencing structure; 1 use HM-5.0 like referencing structure for random access
222LDRefSetting          =  0  # 0: use nearest pictures as reference frames
223                            # 1: use one nearest + POC%4==0 pictures as reference frames, as JCTVC-F701
224                            # Only low delay is supported, please do not use it for a different coding structure
225
226##########################################################################################
227# SP Frames
228##########################################################################################
229
230SPPicturePeriodicity  = 0                  # SP-Picture Periodicity (0=not used)
231SPSwitchPeriod        = 0                  # Switch period (in terms of switching SP/SI frames) between bitstream 1 and bitstream 2
232QPSPSlice             = 36                 # Quant. param of SP-Slices for Prediction Error (0-51)
233QPSISlice             = 36                 # Quant. param of SI-Slices for Prediction Error (0-51)
234QPSP2Slice            = 35                 # Quant. param of SP/SI-Slices for Predicted Blocks (0-51)
235SI_FRAMES             = 0                  # SI frame encoding flag (0=not used, 1=used)
236SP_output             = 0                  # Controls whether coefficients will be output to encode switching SP frames (0=no, 1=yes)
237SP_output_name        = "low_quality.dat"  # Filename for SP output coefficients
238SP2_FRAMES            = 0                  # switching SP frame encoding flag (0=not used, 1=used)
239SP2_input_name1       = "high_quality.dat" # Filename for the first swithed bitstream coefficients
240SP2_input_name2       = "low_quality.dat"  # Filename for the second switched bitstream coefficients
241
242##########################################################################################
243# Output Control, NALs
244##########################################################################################
245
246SymbolMode             =  1  # Symbol mode (Entropy coding method: 0=UVLC, 1=CABAC)
247OutFileMode            =  0  # Output file mode, 0:Annex B, 1:RTP
248PartitionMode          =  0  # Partition Mode, 0: no DP, 1: 3 Partitions per Slice
249
250##########################################################################################
251# CABAC context initialization
252##########################################################################################
253
254ContextInitMethod        =  1     # Context init (0: fixed, 1: adaptive)
255FixedModelNumber         =  0     # model number for fixed decision for inter slices ( 0, 1, or 2 )
256
257##########################################################################################
258# Interlace Handling
259#########################################################################################
260
261PicInterlace             =  0     # Picture AFF    (0: frame coding, 1: field coding, 2:adaptive frame/field coding)
262MbInterlace              =  0     # Macroblock AFF (0: frame coding, 1: field coding, 2:adaptive frame/field coding, 3: frame MB-only AFF)
263IntraBottom              =  0     # Force Intra Bottom at GOP Period
264
265##########################################################################################
266# Weighted Prediction
267#########################################################################################
268
269WeightedPrediction       =  0     # P picture Weighted Prediction (0=off, 1=explicit mode)
270WeightedBiprediction     =  0     # B picture Weighted Prediciton (0=off, 1=explicit mode,  2=implicit mode)
271ChromaWeightSupport      =  1     # Enable consideration of weights for Chroma components
272UseWeightedReferenceME   =  1     # Use weighted reference for ME (0=off, 1=on)
273WPMethod                 =  1     # WP method (0: DC based, 1: LMS based)
274WPIterMC                 =  0     # Iterative Motion compensated based weighted prediction method
275EnhancedBWeightSupport   =  0     # Enhanced B Weight support (needs revisit if we wish to merge with WPMethod)
276WPMCPrecision            =  0     # Improved Motion Compensation Precision using WP based methods.
277                                  # Clones WP references with slightly modified rounding offsets (Requires RDPictureDecision and GenerateMultiplePPS) :
278                                  # 0: disabled (default)
279                                  # 1: Up to one additional coding pass. Ref0 is 0, ref1 is 0 with a -1 offset
280                                  # 2: Up to two additional coding passes. (1) Ref0 is 0, ref1 is 0 with a -1 offset, (1) Ref0 is 0 with a -1 offset, ref1 is 0
281WPMCPrecFullRef          =  0     # Increases the number of references in the reference picture lists to account
282                                  # for the lost reference slot when reordering is used during a coding pass in WPMCPrecision for reference replication.
283                                  # The number of references in non-reordered passes stays unchanged
284WPMCPrecBSlice           =  1     # 2: Apply rounding on every B slice. This efectively disables the evaluation of alternative QPs during RDPictureDecision.
285                                  # 1: Disable rounding for non-reference B slices. Non-reference B slices are evaluated for alternative QPs during RDPictureDecision.
286                                  # 0: Disable rounding for B slices.
287
288##########################################################################################
289# Picture based Multi-pass encoding
290#########################################################################################
291
292RDPictureDecision        =  0     # Perform multiple pass coding and make RD optimal decision among them
293RDPSliceBTest            =  0     # Perform Slice level RD decision between P and B slices.
294RDPSliceITest            =  1     # Perform Slice level RD decision between P and I slices. Default value is 1 (enabled).
295RDPictureMaxPassISlice   =  1     # Max number of coding passes for I slices, valid values [1,3], default is 1
296RDPictureMaxPassPSlice   =  2     # Max number of coding passes for P slices, valid values [1,6], default is 2
297RDPictureMaxPassBSlice   =  3     # Max number of coding passes for B slices, valid values [1,6], default is 3
298RDPictureFrameQPPSlice   =  0     # Perform additional frame level QP check (QP+/-1) for P slices, 0: disabled (default), 1: enabled
299RDPictureFrameQPBSlice   =  0     # Perform additional frame level QP check (QP+/-1) for B slices, 0: disabled, 1: enabled (default)
300RDPictureDeblocking      =  0     # Perform another coding pass to check non-deblocked picture, 0: disabled (default), 1: enabled
301RDPictureDirectMode      =  0     # Perform another coding pass to check the alternative direct mode for B slices, , 0: disabled (default), 1: enabled
302
303##########################################################################################
304# Deblocking filter parameters
305##########################################################################################
306
307DFParametersFlag         = 0      # Configure deblocking filter (0=parameters below ignored, 1=parameters sent)
308                                  # Note that for pictures with multiple slice types,
309                                  # only the type of the first slice will be considered.
310DFDisableRefISlice       = 0      # Disable deblocking filter in reference I coded pictures (0=Filter, 1=No Filter).
311DFAlphaRefISlice         = 0      # Reference I coded pictures Alpha offset div. 2, {-6, -5, ... 0, +1, .. +6}
312DFBetaRefISlice          = 0      # Reference I coded pictures Beta offset div. 2, {-6, -5, ... 0, +1, .. +6}
313DFDisableNRefISlice      = 0      # Disable deblocking filter in non reference I coded pictures (0=Filter, 1=No Filter).
314DFAlphaNRefISlice        = 0      # Non Reference I coded pictures Alpha offset div. 2, {-6, -5, ... 0, +1, .. +6}
315DFBetaNRefISlice         = 0      # Non Reference I coded pictures Beta offset div. 2, {-6, -5, ... 0, +1, .. +6}
316DFDisableRefPSlice       = 0      # Disable deblocking filter in reference P coded pictures (0=Filter, 1=No Filter).
317DFAlphaRefPSlice         = 0      # Reference P coded pictures Alpha offset div. 2, {-6, -5, ... 0, +1, .. +6}
318DFBetaRefPSlice          = 0      # Reference P coded pictures Beta offset div. 2, {-6, -5, ... 0, +1, .. +6}
319DFDisableNRefPSlice      = 0      # Disable deblocking filter in non reference P coded pictures (0=Filter, 1=No Filter).
320DFAlphaNRefPSlice        = 0      # Non Reference P coded pictures Alpha offset div. 2, {-6, -5, ... 0, +1, .. +6}
321DFBetaNRefPSlice         = 0      # Non Reference P coded pictures Beta offset div. 2, {-6, -5, ... 0, +1, .. +6}
322DFDisableRefBSlice       = 0      # Disable deblocking filter in reference B coded pictures (0=Filter, 1=No Filter).
323DFAlphaRefBSlice         = 0      # Reference B coded pictures Alpha offset div. 2, {-6, -5, ... 0, +1, .. +6}
324DFBetaRefBSlice          = 0      # Reference B coded pictures Beta offset div. 2, {-6, -5, ... 0, +1, .. +6}
325DFDisableNRefBSlice      = 0      # Disable deblocking filter in non reference B coded pictures (0=Filter, 1=No Filter).
326DFAlphaNRefBSlice        = 0      # Non Reference B coded pictures Alpha offset div. 2, {-6, -5, ... 0, +1, .. +6}
327DFBetaNRefBSlice         = 0      # Non Reference B coded pictures Beta offset div. 2, {-6, -5, ... 0, +1, .. +6}
328
329##########################################################################################
330# Error Resilience / Slices
331##########################################################################################
332
333SliceMode             =  0   # Slice mode (0=off 1=fixed #mb in slice 2=fixed #bytes in slice 3=use callback)
334SliceArgument         = 50   # Slice argument (Arguments to modes 1 and 2 above)
335
336num_slice_groups_minus1 = 0  # Number of Slice Groups Minus 1, 0 == no FMO, 1 == two slice groups, etc.
337slice_group_map_type    = 0  # 0:  Interleave, 1: Dispersed,    2: Foreground with left-over,
338                             # 3:  Box-out,    4: Raster Scan   5: Wipe
339                             # 6:  Explicit, slice_group_id read from SliceGroupConfigFileName
340slice_group_change_direction_flag = 0    # 0: box-out clockwise, raster scan or wipe right,
341                                         # 1: box-out counter clockwise, reverse raster scan or wipe left
342slice_group_change_rate_minus1    = 85   #
343SliceGroupConfigFileName          = "sg0conf.cfg"   # Used for slice_group_map_type 0, 2, 6
344
345UseRedundantPicture   = 0    # 0: not used, 1: enabled
346NumRedundantHierarchy = 1    # 0-4
347PrimaryGOPLength      = 10   # GOP length for redundant allocation (1-16)
348                             # NumberReferenceFrames must be no less than PrimaryGOPLength when redundant slice enabled
349NumRefPrimary         = 1    # Actually used number of references for primary slices (1-16)
350
351##########################################################################################
352# Search Range Restriction / RD Optimization
353##########################################################################################
354
355RestrictSearchRange    =  2  # restriction for (0: blocks and ref, 1: ref, 2: no restrictions)
356RDOptimization         =  1  # rd-optimized mode decision
357                             # 0: RD-off (Low complexity mode)
358                             # 1: RD-on (High complexity mode)
359                             # 2: RD-on (Fast high complexity mode - not work in FREX Profiles)
360                             # 3: with losses
361                             # 4: RD-on (High complexity mode) with negative skip bias
362I16RDOpt               =  1  # perform rd-optimized mode decision for Intra 16x16 MB
363                             # 0: SAD-based mode decision for Intra 16x16 MB
364                             # 1: RD-based mode decision for Intra 16x16 MB
365SubMBCodingState       =  1  # submacroblock coding state
366                             # 0: lowest complexity, do not store or reset coding state during sub-MB mode decision
367                             # 1: medium complexity, reset to master coding state (for current mode) during sub-MB mode decision
368                             # 2: highest complexity, store and reset coding state during sub-MB mode decision
369DistortionSSIM         =  0  # Compute SSIM distortion. (0: disabled/default, 1: enabled)
370DistortionMS_SSIM      =  0  # Compute Multiscale SSIM distortion. (0: disabled/default, 1: enabled)
371SSIMOverlapSize        =  8  # Overlap size to calculate SSIM distortion (1: pixel by pixel, 8: no overlap)
372DistortionYUVtoRGB     =  0  # Calculate distortion in RGB domain after conversion from YCbCr (0:off, 1:on)
373CtxAdptLagrangeMult    =  0  # Context Adaptive Lagrange Multiplier
374                             # 0: disabled (default)
375                             # 1: enabled (works best when RDOptimization=0)
376FastCrIntraDecision    =  1  # Fast Chroma intra mode decision (0:off, 1:on)
377DisableThresholding    =  1  # Disable Thresholding of Transform Coefficients (0:off, 1:on)
378DisableBSkipRDO        =  0  # Disable B Skip Mode consideration from RDO Mode decision (0:off, 1:on)
379BiasSkipRDO            =  0  # Negative Bias for Skip/DirectSkip modes (0: off, 1: on)
380ForceTrueRateRDO       =  0  # Force true rate (even zero values) during RDO process
381SkipIntraInInterSlices =  0  # Skips Intra mode checking in inter slices if certain mode decisions are satisfied (0: off, 1: on)
382PSliceSkipDecisionMethod  =  0  # Enable/Control consideration of Skip mode in P slices based on the characteristics of inter modes.
383                             # Used in combination with RDOptimization = 4.
384                             # 0: Enable always
385                             # 1: Enable only when best mode is 16x16 with skip motion vectors and no residual (natural mode)
386                             # 2: Enable only when best mode is 16x16 with skip motion vectors
387                             # 3: Enable only when best mode is 16x16 and mvs are close to skip motion vectors (+-8)
388                             # 4: Enable only when best mode is inter with no residual
389                             # 5: Enable only when best mode is inter with no residual or 16x16 with mvs close to skip (+-8)
390
391WeightY                =  1  # Luma weight for RDO
392WeightCb               =  1  # Cb weight for RDO
393WeightCr               =  1  # Cr weight for RDO
394
395##########################################################################################
396# Explicit Lambda Usage
397##########################################################################################
398UseExplicitLambdaParams  =  0    # Use explicit lambda scaling parameters (0:disabled, 1:enable lambda weight, 2: use explicit lambda value)
399DisableDistanceLambdaScale = 0   # Disable Distance based lambda scaling
400UpdateLambdaChromaME     =  0    # Update lambda given Chroma ME consideration
401FixedLambdaISlice        =  0.1  # Fixed Lambda value for I slices
402FixedLambdaPSlice        =  0.1  # Fixed Lambda value for P slices
403FixedLambdaBSlice        =  0.1  # Fixed Lambda value for B slices
404FixedLambdaRefBSlice     =  0.1  # Fixed Lambda value for Referenced B slices
405FixedLambdaSPSlice       =  0.1  # Fixed Lambda value for SP slices
406FixedLambdaSISlice       =  0.1  # Fixed Lambda value for SI slices
407
408LambdaWeightISlice       =  0.65 # scaling param for I slices. This will be used as a multiplier i.e. lambda=LambdaWeightISlice * 2^((QP-12)/3)
409LambdaWeightPSlice       =  0.68 # scaling param for P slices. This will be used as a multiplier i.e. lambda=LambdaWeightPSlice * 2^((QP-12)/3)
410LambdaWeightBSlice       =  0.68 # scaling param for B slices. This will be used as a multiplier i.e. lambda=LambdaWeightBSlice * 2^((QP-12)/3)
411LambdaWeightRefBSlice    =  0.68 # scaling param for Referenced B slices. This will be used as a multiplier i.e. lambda=LambdaWeightRefBSlice * 2^((QP-12)/3)
412LambdaWeightSPSlice      =  0.68 # scaling param for SP slices. This will be used as a multiplier i.e. lambda=LambdaWeightSPSlice * 2^((QP-12)/3)
413LambdaWeightSISlice      =  0.65 # scaling param for SI slices. This will be used as a multiplier i.e. lambda=LambdaWeightSISlice * 2^((QP-12)/3)
414
415LossRateA                =  5  # expected packet loss rate of the channel for the first partition, only valid if RDOptimization = 3
416LossRateB                =  0  # expected packet loss rate of the channel for the second partition, only valid if RDOptimization = 3
417LossRateC                =  0  # expected packet loss rate of the channel for the third partition, only valid if RDOptimization = 3
418FirstFrameCorrect        =  0  # If 1, the first frame is encoded under the assumption that it is always correctly received.
419NumberOfDecoders         = 30  # Numbers of decoders used to simulate the channel, only valid if RDOptimization = 3
420RestrictRefFrames        =  0  # Doesnt allow reference to areas that have been intra updated in a later frame.
421
422##########################################################################################
423# Additional Stuff
424#########################################################################################
425
426UseConstrainedIntraPred  =  0  # If 1, Inter pixels are not used for Intra macroblock prediction.
427
428NumberofLeakyBuckets     =  8                      # Number of Leaky Bucket values
429LeakyBucketRateFile      =  "leakybucketrate.cfg"  # File from which encoder derives rate values
430LeakyBucketParamFile     =  "leakybucketparam.cfg" # File where encoder stores leakybucketparams
431
432NumFramesInELayerSubSeq  = 0  # number of frames in the Enhanced Scalability Layer(0: no Enhanced Layer)
433
434SparePictureOption        =  0   # (0: no spare picture info, 1: spare picture available)
435SparePictureDetectionThr  =  6   # Threshold for spare reference pictures detection
436SparePicturePercentageThr = 92   # Threshold for the spare macroblock percentage
437
438PicOrderCntType           = 0    # (0: POC mode 0, 1: POC mode 1, 2: POC mode 2)
439
440########################################################################################
441#Rate control
442########################################################################################
443
444RateControlEnable       = 0     # 0 Disable, 1 Enable
445Bitrate                 = 45020 # Bitrate(bps)
446InitialQP               = 0     # Initial Quantization Parameter for the first I frame
447                                # InitialQp depends on two values: Bits Per Picture,
448                                # and the GOP length
449BasicUnit               = 0     # Number of MBs in the basic unit
450                                # should be a fraction of the total number
451                                # of MBs in a frame ("0" sets a BU equal to a frame)
452ChannelType             = 0     # type of channel( 1=time varying channel; 0=Constant channel)
453RCUpdateMode            = 0     # Rate Control type. Modes supported :
454                                # 0 = original JM rate control,
455                                # 1 = rate control that is applied to all frames regardless of the slice type,
456                                # 2 = original plus intelligent QP selection for I and B slices (including Hierarchical),
457                                # 3 = original + hybrid quadratic rate control for I and B slice using bit rate statistics
458                                #
459RCISliceBitRatio        = 1.0   # target ratio of bits for I-coded pictures compared to P-coded Pictures (for RCUpdateMode=3)
460RCBSliceBitRatio0       = 0.5   # target ratio of bits for B-coded pictures compared to P-coded Pictures - temporal level 0 (for RCUpdateMode=3)
461RCBSliceBitRatio1       = 0.25  # target ratio of bits for B-coded pictures compared to P-coded Pictures - temporal level 1 (for RCUpdateMode=3)
462RCBSliceBitRatio2       = 0.25  # target ratio of bits for B-coded pictures compared to P-coded Pictures - temporal level 2 (for RCUpdateMode=3)
463RCBSliceBitRatio3       = 0.25  # target ratio of bits for B-coded pictures compared to P-coded Pictures - temporal level 3 (for RCUpdateMode=3)
464RCBSliceBitRatio4       = 0.25  # target ratio of bits for B-coded pictures compared to P-coded Pictures - temporal level 4 (for RCUpdateMode=3)
465RCBoverPRatio           = 0.45  # ratio of bit rate usage of a B-coded picture over a P-coded picture for the SAME QP (for RCUpdateMode=3)
466RCIoverPRatio           = 3.80  # ratio of bit rate usage of an I-coded picture over a P-coded picture for the SAME QP (for RCUpdateMode=3)
467RCMinQPPSlice           =  8    # minimum P Slice QP value for rate control
468RCMaxQPPSlice           = 42    # maximum P Slice QP value for rate control
469RCMinQPBSlice           =  8    # minimum B Slice QP value for rate control
470RCMaxQPBSlice           = 42    # maximum B Slice QP value for rate control
471RCMinQPISlice           =  8    # minimum I Slice QP value for rate control
472RCMaxQPISlice           = 42    # maximum I Slice QP value for rate control
473RCMinQPSPSlice          =  8    # minimum SP Slice QP value for rate control
474RCMaxQPSPSlice          = 40    # maximum SP Slice QP value for rate control
475RCMinQPSISlice          =  8    # minimum SI Slice QP value for rate control
476RCMaxQPSISlice          = 42    # maximum SI Slice QP value for rate control
477RCMaxQPChange           =  4    # maximum QP change for frames of the base layer
478
479########################################################################################
480#Fast Mode Decision
481########################################################################################
482EarlySkipEnable         = 0     # Early skip detection (0: Disable 1: Enable)
483SelectiveIntraEnable    = 0     # Selective Intra mode decision (0: Disable 1: Enable)
484
485########################################################################################
486#FREXT stuff
487########################################################################################
488
489YUVFormat               = 1     # YUV format (0=4:0:0, 1=4:2:0, 2=4:2:2, 3=4:4:4)
490RGBInput                = 0     # 1=RGB input, 0=GBR or YUV input
491SeparateColourPlane     = 0     # 4:4:4 coding: 0=Common mode, 1=Independent mode
492SourceBitDepthLuma      = 8     # Source Bit Depth for Luma color component (8...14 bits)
493SourceBitDepthChroma    = 8     # Source Bit Depth for Chroma color components (8...14 bits)
494SourceBitDepthRescale   = 0     # Rescale bit depth of source for output (0: Disable 1: Enable)
495OutputBitDepthLuma      = 8     # Output Bit Depth for Luma color component (8...14 bits)
496OutputBitDepthChroma    = 8     # Output Bit Depth for Chroma color components (8...14 bits)
497
498CbQPOffset              = 0     # Chroma QP offset for Cb-part (-51..51)
499CrQPOffset              = 0     # Chroma QP offset for Cr-part (-51..51)
500Transform8x8Mode        = 1     # (0: only 4x4 transform, 1: allow using 8x8 transform additionally, 2: only 8x8 transform)
501ReportFrameStats        = 0     # (0:Disable Frame Statistics 1: Enable)
502DisplayEncParams        = 0     # (0:Disable Display of Encoder Params 1: Enable)
503Verbose                 = 1     # level of display verboseness
504                                # 0: short, 1: normal (default), 2: detailed, 3: detailed/nvb
505SkipGlobalStats         = 0     # Disable global stat accumulation  (Set to 1 to avoid bipred core dump)
506
507########################################################################################
508#Q-Matrix (FREXT)
509########################################################################################
510QmatrixFile              = "q_matrix.cfg"
511
512ScalingMatrixPresentFlag = 0    # Enable Q_Matrix  (0 Not present, 1 Present in SPS, 2 Present in PPS, 3 Present in both SPS & PPS)
513ScalingListPresentFlag0  = 3    # Intra4x4_Luma    (0 Not present, 1 Present in SPS, 2 Present in PPS, 3 Present in both SPS & PPS)
514ScalingListPresentFlag1  = 3    # Intra4x4_ChromaU (0 Not present, 1 Present in SPS, 2 Present in PPS, 3 Present in both SPS & PPS)
515ScalingListPresentFlag2  = 3    # Intra4x4_chromaV (0 Not present, 1 Present in SPS, 2 Present in PPS, 3 Present in both SPS & PPS)
516ScalingListPresentFlag3  = 3    # Inter4x4_Luma    (0 Not present, 1 Present in SPS, 2 Present in PPS, 3 Present in both SPS & PPS)
517ScalingListPresentFlag4  = 3    # Inter4x4_ChromaU (0 Not present, 1 Present in SPS, 2 Present in PPS, 3 Present in both SPS & PPS)
518ScalingListPresentFlag5  = 3    # Inter4x4_ChromaV (0 Not present, 1 Present in SPS, 2 Present in PPS, 3 Present in both SPS & PPS)
519ScalingListPresentFlag6  = 3    # Intra8x8_Luma    (0 Not present, 1 Present in SPS, 2 Present in PPS, 3 Present in both SPS & PPS)
520ScalingListPresentFlag7  = 3    # Inter8x8_Luma    (0 Not present, 1 Present in SPS, 2 Present in PPS, 3 Present in both SPS & PPS)
521ScalingListPresentFlag8  = 3    # Intra8x8_ChromaU for 4:4:4 (0 Not present, 1 Present in SPS, 2 Present in PPS, 3 Present in both SPS & PPS)
522ScalingListPresentFlag9  = 3    # Inter8x8_ChromaU for 4:4:4 (0 Not present, 1 Present in SPS, 2 Present in PPS, 3 Present in both SPS & PPS)
523ScalingListPresentFlag10 = 3    # Intra8x8_ChromaV for 4:4:4 (0 Not present, 1 Present in SPS, 2 Present in PPS, 3 Present in both SPS & PPS)
524ScalingListPresentFlag11 = 3    # Inter8x8_ChromaV for 4:4:4 (0 Not present, 1 Present in SPS, 2 Present in PPS, 3 Present in both SPS & PPS)
525
526########################################################################################
527#Rounding Offset control
528########################################################################################
529
530OffsetMatrixPresentFlag  = 0    # Enable Explicit Offset Quantization Matrices  (0: disable 1: enable)
531QOffsetMatrixFile        = "q_offset.cfg" # Explicit Quantization Matrices file
532OffsetMatrixFlat         = 0    # 0: use default initialization offsets (1/3 intra, 1/6 inter)
533                                # 1: offsets initialized to 0.5
534                                # 2: offsets initialized to 0.5 for chroma intra, otherwise uses default values
535
536AdaptiveRounding         = 1    # Enable Adaptive Rounding based on JVT-N011 (0: disable, 1: enable)
537AdaptRoundingFixed       = 0    # Enable Global Adaptive rounding for all qps (0: disable, 1: enable - default/old)
538AdaptRndPeriod           = 16   # Period in terms of MBs for updating rounding offsets.
539                                # 0 performs update at the picture level. Default is 16. 1 is as in JVT-N011.
540AdaptRndChroma           = 1    # Enables coefficient rounding adaptation for chroma
541
542AdaptRndWFactorIRef      = 8    # Adaptive Rounding Weight for I/SI slices in reference pictures /4096
543AdaptRndWFactorPRef      = 8    # Adaptive Rounding Weight for P/SP slices in reference pictures /4096
544AdaptRndWFactorBRef      = 8    # Adaptive Rounding Weight for B slices in reference pictures /4096
545AdaptRndWFactorINRef     = 8    # Adaptive Rounding Weight for I/SI slices in non reference pictures /4096
546AdaptRndWFactorPNRef     = 8    # Adaptive Rounding Weight for P/SP slices in non reference pictures /4096
547AdaptRndWFactorBNRef     = 8    # Adaptive Rounding Weight for B slices in non reference pictures /4096
548
549AdaptRndCrWFactorIRef    = 8    # Chroma Adaptive Rounding Weight for I/SI slices in reference pictures /4096
550AdaptRndCrWFactorPRef    = 8    # Chroma Adaptive Rounding Weight for P/SP slices in reference pictures /4096
551AdaptRndCrWFactorBRef    = 8    # Chroma Adaptive Rounding Weight for B slices in reference pictures /4096
552AdaptRndCrWFactorINRef   = 8    # Chroma Adaptive Rounding Weight for I/SI slices in non reference pictures /4096
553AdaptRndCrWFactorPNRef   = 8    # Chroma Adaptive Rounding Weight for P/SP slices in non reference pictures /4096
554AdaptRndCrWFactorBNRef   = 8    # Chroma Adaptive Rounding Weight for B slices in non reference pictures /4096
555
556################################################################
557# Rate Distortion Optimized Quantization
558################################################################
559UseRDOQuant              =  0 # Use Rate Distortion Optimized Quantization (0=disable, 1=enable)
560RDOQ_DC                  =  1 # Enable Rate Distortion Optimized Quantization for DC components (0=disable, 1=enable)
561RDOQ_CR                  =  1 # Enable Rate Distortion Optimized Quantization for Chroma components (0=disable, 1=enable)
562RDOQ_DC_CR               =  1 # Enable Rate Distortion Optimized Quantization for Chroma DC components (0=disable, 1=enable)
563RDOQ_QP_Num              =  5 # 1-9: Number of QP tested in RDO_Q (I/P/B slice)
564RDOQ_CP_Mode             =  0 # copy Mode from first QP tested
565RDOQ_CP_MV               =  0 # copy MV from first QP tested
566RDOQ_Fast                =  0 # Fast RDOQ decision method for multiple QPs
567
568########################################################################################
569#Lossless Coding (FREXT)
570########################################################################################
571
572LosslessCoding           = 0    # Enable lossless coding when qpprime_y is zero (0 Disabled, 1 Enabled)
573
574########################################################################################
575#Fast Motion Estimation Control Parameters
576########################################################################################
577
578SearchMode               = 3    # Motion estimation mode
579                                # -1 = Full Search
580                                #  0 = Fast Full Search (default)
581                                #  1 = UMHexagon Search
582                                #  2 = Simplified UMHexagon Search
583                                #  3 = Enhanced Predictive Zonal Search (EPZS)
584
585UMHexDSR                 = 1    # Use Search Range Prediction. Only for UMHexagonS method
586                                # (0:disable, 1:enabled/default)
587UMHexScale               = 3    # Use Scale_factor for different image sizes. Only for UMHexagonS method
588                                # (0:disable, 3:/default)
589                                # Increasing value can speed up Motion Search.
590
591EPZSPattern              = 2    # Select EPZS primary refinement pattern.
592                                # (0: small diamond, 1: square, 2: extended diamond/default,
593                                # 3: large diamond, 4: SBP Large Diamond,
594                                # 5: PMVFAST )
595EPZSDualRefinement       = 3    # Enables secondary refinement pattern.
596                                # (0:disabled, 1: small diamond, 2: square,
597                                # 3: extended diamond/default, 4: large diamond,
598                                # 5: SBP Large Diamond, 6: PMVFAST )
599EPZSFixedPredictors      = 3    # Enables Window based predictors
600                                # (0:disabled, 1: P only, 2: P and B, 3: Pic Boundary + P and B/default)
601EPZSAggressiveWindow     = 0    # Use Aggressive Window pattern for EPZS (0: disabled, 1: enabled)
602EPZSTemporal             = 1    # Enables temporal predictors
603                                # (0: disabled, 1: enabled/default)
604EPZSSpatialMem           = 1    # Enables spatial memory predictors
605                                # (0: disabled, 1: enabled/default)
606EPZSBlockType            = 1    # Enables block type Predictors
607                                # (0: disabled, 1: enabled/default)
608EPZSMinThresScale        = 0    # Scaler for EPZS minimum threshold (0 default).
609                                # Increasing value can speed up encoding.
610EPZSMedThresScale        = 1    # Scaler for EPZS median threshold (1 default).
611                                # Increasing value can speed up encoding.
612EPZSMaxThresScale        = 2    # Scaler for EPZS maximum threshold (1 default).
613                                # Increasing value can speed up encoding.
614EPZSSubPelME             = 1    # EPZS Subpel ME consideration
615EPZSSubPelMEBiPred       = 1    # EPZS Subpel ME consideration for BiPred partitions
616EPZSSubPelThresScale     = 1    # EPZS Subpel ME Threshold scaler
617EPZSSubPelGrid           = 1    # Perform EPZS using a subpixel grid
618HMEEnable                = 1    # Enable Hierarchical Motion Estimation consideration with EPZS (does not work with other ME Engines)
619EPZSUseHMEPredictors     = 1    # Use HME motion vectors during EPZS refinement
620UseDistortionReorder     = 1    # Use Distortion based reordering. If HME is enabled, then HME results are used, otherwise zero motion distortion is computed.
621
622########################################################################################
623# SEI Parameters
624########################################################################################
625
626ToneMappingSEIPresentFlag = 0    # Enable Tone mapping SEI  (0 Not present, 1 Present)
627ToneMappingFile           = "ToneMapping.cfg"
628
629GenerateSEIMessage        = 0                    # Generate an SEI Text Message
630SEIMessageText            = "H.264/AVC Encoder"  # Text SEI Message
631
632SEIFPAType            = -1     # Set frame packing arrangement type
633                               # -1 = disabled
634                               #  0 = checkerboard
635                               #  1 = columns alternate
636                               #  2 = lines alternate
637                               #  3 = side by side
638                               #  4 = top and bottom
639                               #  5 = frame alternate
640                               #  6 = 2D
641                               #  7 = tile
642
643UseMVLimits               = 0                    # Use MV Limits
644SetMVXLimit               = 512                  # Horizontal MV Limit (in integer units)
645SetMVYLimit               = 512                  # Vertical MV Limit (in integer units)
646
647########################################################################################
648# VUI Parameters
649########################################################################################
650# the variables below do not affect encoding and decoding
651# (many are dummy variables but others can be useful when supported by the decoder)
652
653EnableVUISupport                                = 0      # Enable VUI Parameters
654
655# display parameters
656VUI_aspect_ratio_info_present_flag              = 0
657VUI_aspect_ratio_idc                            = 1
658VUI_sar_width                                   = 0
659VUI_sar_height                                  = 0
660VUI_overscan_info_present_flag                  = 0
661VUI_overscan_appropriate_flag                   = 0
662VUI_video_signal_type_present_flag              = 0
663VUI_video_format                                = 5
664VUI_video_full_range_flag                       = 0
665VUI_colour_description_present_flag             = 0
666VUI_colour_primaries                            = 2
667VUI_transfer_characteristics                    = 2
668VUI_matrix_coefficients                         = 2
669VUI_chroma_location_info_present_flag           = 0
670VUI_chroma_sample_loc_type_top_field            = 0
671VUI_chroma_sample_loc_type_bottom_field         = 0
672VUI_timing_info_present_flag                    = 0
673VUI_num_units_in_tick                           = 1000
674VUI_time_scale                                  = 60000
675VUI_fixed_frame_rate_flag                       = 0
676
677# nal hrd parameters
678VUI_nal_hrd_parameters_present_flag             = 0
679VUI_nal_cpb_cnt_minus1                          = 0
680VUI_nal_bit_rate_scale                          = 0
681VUI_nal_cpb_size_scale                          = 0
682VUI_nal_bit_rate_value_minus1                   = 0
683VUI_nal_cpb_size_value_minus1                   = 0
684VUI_nal_vbr_cbr_flag                            = 0
685VUI_nal_initial_cpb_removal_delay_length_minus1 = 23
686VUI_nal_cpb_removal_delay_length_minus1         = 23
687VUI_nal_dpb_output_delay_length_minus1          = 23
688VUI_nal_time_offset_length                      = 24
689
690# vlc hrd parameters
691VUI_vcl_hrd_parameters_present_flag             = 0
692VUI_vcl_cpb_cnt_minus1                          = 0
693VUI_vcl_bit_rate_scale                          = 0
694VUI_vcl_cpb_size_scale                          = 0
695VUI_vcl_bit_rate_value_minus1                   = 0
696VUI_vcl_cpb_size_value_minus1                   = 0
697VUI_vcl_vbr_cbr_flag                            = 0
698VUI_vcl_initial_cpb_removal_delay_length_minus1 = 23
699VUI_vcl_cpb_removal_delay_length_minus1         = 23
700VUI_vcl_dpb_output_delay_length_minus1          = 23
701VUI_vcl_time_offset_length                      = 24
702VUI_low_delay_hrd_flag                          = 0
703
704# other parameters (i.e. bitsream restrictions)
705VUI_pic_struct_present_flag                     = 0
706VUI_bitstream_restriction_flag                  = 0
707VUI_motion_vectors_over_pic_boundaries_flag     = 1
708VUI_max_bytes_per_pic_denom                     = 0
709VUI_max_bits_per_mb_denom                       = 0
710VUI_log2_max_mv_length_vertical                 = 16
711VUI_log2_max_mv_length_horizontal               = 16
712VUI_num_reorder_frames                          = 16
713VUI_max_dec_frame_buffering                     = 16
714
715