home *** CD-ROM | disk | FTP | other *** search
/ Chip 2011 November / CHIP_2011_11.iso / Programy / Narzedzia / MediaCoder / MediaCoder2011-R8-5188.exe / codecs / jm / encoder_extended.cfg < prev    next >
Text File  |  2010-03-06  |  38KB  |  493 lines

  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.de
  8.  
  9.  
  10. ##########################################################################################
  11. # Encoder Control
  12. ##########################################################################################
  13. ProfileIDC            = 88  # 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)
  14. IntraProfile          = 0   # Activate Intra Profile for FRExt (0: false, 1: true)
  15.                             # (e.g. ProfileIDC=110, IntraProfile=1  =>  High 10 Intra Profile)
  16. LevelIDC              = 40  # Level IDC   (e.g. 20 = level 2.0)
  17.  
  18. IntraPeriod           = 0   # Period of I-pictures   (0=only first)
  19. IDRPeriod             = 0   # Period of IDR pictures (0=only first)
  20. AdaptiveIntraPeriod   = 1   # Adaptive intra period
  21. AdaptiveIDRPeriod     = 0   # Adaptive IDR period
  22. IntraDelay            = 0   # Intra (IDR) picture delay (i.e. coding structure of PPIPPP... )
  23. EnableIDRGOP          = 0   # Support for IDR closed GOPs (0: disabled, 1: enabled)
  24. EnableOpenGOP         = 0   # Support for open GOPs (0: disabled, 1: enabled)
  25. QPISlice              = 28  # Quant. param for I Slices (0-51)
  26. QPPSlice              = 28  # Quant. param for P Slices (0-51)
  27. FrameSkip             = 0   # Number of frames to be skipped in input (e.g 2 will code every third frame). 
  28.                             # Note that this now excludes intermediate (i.e. B) coded pictures
  29. ChromaQPOffset        = 0   # Chroma QP offset (-51..51)
  30.  
  31. DisableSubpelME       = 0   # Disable Subpixel Motion Estimation (0=off/default, 1=on)
  32. SearchRange           = 32  # Max search range
  33.  
  34. MEDistortionFPel      = 0   # Select error metric for Full-Pel ME    (0: SAD, 1: SSE, 2: Hadamard SAD)
  35. MEDistortionHPel      = 2   # Select error metric for Half-Pel ME    (0: SAD, 1: SSE, 2: Hadamard SAD)
  36. MEDistortionQPel      = 2   # Select error metric for Quarter-Pel ME (0: SAD, 1: SSE, 2: Hadamard SAD)
  37. MDDistortion          = 2   # Select error metric for Mode Decision  (0: SAD, 1: SSE, 2: Hadamard SAD)
  38. SkipDeBlockNonRef     = 0   # Skip Deblocking (regardless of DFParametersFlag) for non-reference frames (0: off, 1: on)
  39. ChromaMCBuffer        = 1   # Calculate Color component interpolated values in advance and store them.
  40.                             # Provides a trade-off between memory and computational complexity
  41.                             # (0: disabled/default, 1: enabled)
  42. ChromaMEEnable        = 0   # Take into account Color component information during ME
  43.                             # (0: only first component/default, 
  44.                             #  1: All Color components - Integer refinement only
  45.                             #  2: All Color components - All refinements)
  46. ChromaMEWeight        = 1   # Weighting for chroma components. This parameter should have a relationship with color format.
  47.  
  48. NumberReferenceFrames = 5   # Number of previous frames used for inter motion search (0-16)
  49.  
  50. PList0References      = 0   # P slice List 0 reference override (0 disable, N <= NumberReferenceFrames)
  51. Log2MaxFNumMinus4     = 0   # Sets log2_max_frame_num_minus4 (-1 : based on FramesToBeEncoded/Auto, >=0 : Log2MaxFNumMinus4)
  52. Log2MaxPOCLsbMinus4   = -1  # Sets log2_max_pic_order_cnt_lsb_minus4 (-1 : Auto, >=0 : Log2MaxPOCLsbMinus4)
  53.  
  54. GenerateMultiplePPS   = 0   # Transmit multiple parameter sets. Currently parameters basically enable all WP modes (0: diabled, 1: enabled)
  55. SendAUD               = 0   # Send Access Delimiter Unit NALU (for every access unit)
  56. ResendSPS             = 2   # Resend SPS  (0: disabled, 1: all Intra pictures, 2: only for IDR, 3: for IDR and OpenGOP I)
  57. ResendPPS             = 0   # Resend PPS (with pic_parameter_set_id 0) for every coded Frame/Field pair (0: disabled, 1: enabled)
  58.  
  59. MbLineIntraUpdate     = 0   # Error robustness(extra intra macro block updates)(0=off, N: One GOB every N frames are intra coded)
  60. RandomIntraMBRefresh  = 0   # Forced intra MBs per picture
  61.  
  62. ##########################################################################################
  63. # PSlice Mode types
  64. ##########################################################################################
  65. PSliceSkip            = 1   # P-Slice Skip mode consideration  (0=disable, 1=enable)
  66. PSliceSearch16x16     = 1   # P-Slice Inter block search 16x16 (0=disable, 1=enable)
  67. PSliceSearch16x8      = 1   # P-Slice Inter block search 16x8  (0=disable, 1=enable)
  68. PSliceSearch8x16      = 1   # P-Slice Inter block search  8x16 (0=disable, 1=enable)
  69. PSliceSearch8x8       = 1   # P-Slice Inter block search  8x8  (0=disable, 1=enable)
  70. PSliceSearch8x4       = 1   # P-Slice Inter block search  8x4  (0=disable, 1=enable)
  71. PSliceSearch4x8       = 1   # P-Slice Inter block search  4x8  (0=disable, 1=enable)
  72. PSliceSearch4x4       = 1   # P-Slice Inter block search  4x4  (0=disable, 1=enable)
  73.  
  74. ##########################################################################################
  75. # BSlice Mode types
  76. ##########################################################################################
  77.  
  78. BSliceDirect          = 1   # B-Slice Skip mode consideration  (0=disable, 1=enable)
  79. BSliceSearch16x16     = 1   # B-Slice Inter block search 16x16 (0=disable, 1=enable)
  80. BSliceSearch16x8      = 1   # B-Slice Inter block search 16x8  (0=disable, 1=enable)
  81. BSliceSearch8x16      = 1   # B-Slice Inter block search  8x16 (0=disable, 1=enable)
  82. BSliceSearch8x8       = 1   # B-Slice Inter block search  8x8  (0=disable, 1=enable)
  83. BSliceSearch8x4       = 1   # B-Slice Inter block search  8x4  (0=disable, 1=enable)
  84. BSliceSearch4x8       = 1   # B-Slice Inter block search  4x8  (0=disable, 1=enable)
  85. BSliceSearch4x4       = 1   # B-Slice Inter block search  4x4  (0=disable, 1=enable)
  86.  
  87. BiPredSearch16x16     = 1   # B-Slice Bi-prediction block search 16x16 (0=disable, 1=enable)
  88. BiPredSearch16x8      = 1   # B-Slice Bi-prediction block search 16x8  (0=disable, 1=enable)
  89. BiPredSearch8x16      = 1   # B-Slice Bi-prediction block search 8x16  (0=disable, 1=enable)
  90. BiPredSearch8x8       = 0   # B-Slice Bi-prediction block search 8x8   (0=disable, 1=enable)
  91.  
  92. DisableIntra4x4        = 0  # Disable Intra 4x4 modes
  93. DisableIntra16x16      = 0  # Disable Intra 16x16 modes
  94. DisableIntraInInter    = 0  # Disable Intra modes for inter slices
  95. IntraDisableInterOnly  = 0  # Apply Disabling Intra conditions only to Inter Slices (0:disable/default,1: enable)
  96. Intra4x4ParDisable     = 0  # Disable Vertical & Horizontal 4x4
  97. Intra4x4DiagDisable    = 0  # Disable Diagonal 45degree 4x4
  98. Intra4x4DirDisable     = 0  # Disable Other Diagonal 4x4
  99. Intra16x16ParDisable   = 0  # Disable Vertical & Horizontal 16x16
  100. Intra16x16PlaneDisable = 0  # Disable Planar 16x16
  101. ChromaIntraDisable     = 0  # Disable Intra Chroma modes other than DC
  102. EnableIPCM             = 1  # Enable IPCM macroblock mode
  103.  
  104. DisposableP            = 0  # Enable Disposable P slices in the primary layer (0: disable/default, 1: enable)
  105. DispPQPOffset          = 0  # Quantizer offset for disposable P slices (0: default)
  106.  
  107. PreferDispOrder        = 1  # Prefer display order when building the prediction structure as opposed to coding order (affects intra and IDR periodic insertion, among others)
  108. PreferPowerOfTwo       = 0  # Prefer prediction structures that have lengths expressed as powers of two
  109. FrmStructBufferLength  = 16 # Length of the frame structure unit buffer; it can be overriden for certain cases
  110.  
  111. ChangeQPFrame          = 0  # Frame in display order from which to apply the Change QP offsets
  112. ChangeQPI              = 0  # Change QP offset value for I_SLICE
  113. ChangeQPP              = 0  # Change QP offset value for P_SLICE
  114. ChangeQPB              = 0  # Change QP offset value for B_SLICE
  115. ChangeQPSI             = 0  # Change QP offset value for SI_SLICE
  116. ChangeQPSP             = 0  # Change QP offset value for SP_SLICE
  117.  
  118.  
  119. ##########################################################################################
  120. # B Slices
  121. ##########################################################################################
  122.  
  123. NumberBFrames          = 1  # Number of B coded frames inserted (0=not used)
  124. PReplaceBSlice         = 0  # Replace B-coded slices with P-coded slices when NumberBFrames>0
  125. QPBSlice               = 30 # Quant. param for B slices (0-51)
  126. BRefPicQPOffset        = -1 # Quantization offset for reference B coded pictures (-51..51)
  127. DirectModeType         = 1  # Direct Mode Type (0:Temporal 1:Spatial)
  128. DirectInferenceFlag    = 1  # Direct Inference Flag (0: Disable 1: Enable)
  129. BList0References       = 0  # B slice List 0 reference override (0 disable, N <= NumberReferenceFrames)
  130. BList1References       = 1  # B slice List 1 reference override (0 disable, N <= NumberReferenceFrames)
  131.                             # 1 List1 reference is usually recommended for normal GOP Structures.
  132.                             # A larger value is usually more appropriate if a more flexible
  133.                             # structure is used (i.e. using HierarchicalCoding)
  134.  
  135. BReferencePictures    =  0  # Referenced B coded pictures (0=off, 1=B references for secondary layer, 2=B references for primary layer)
  136.  
  137. HierarchicalCoding      =  0  # B hierarchical coding (0= off, 1= 2 layers, 2= 2 full hierarchy, 3 = explicit)
  138. HierarchyLevelQPEnable  =  1  # Adjust QP based on hierarchy level (in increments of 1). Overrides BRefPicQPOffset behavior.(0=off, 1=on)
  139. ExplicitHierarchyFormat = "b1r0b3r0b2e2b0e2b4r2" # Explicit Enhancement GOP. Format is {FrameDisplay_orderReferenceQP}.
  140.                                                  # Valid values for reference type is r:reference, e:non reference.
  141. ExplicitSeqCoding     =  0    # Enable support for explicit sequence coding
  142. ExplicitSeqFile       =  "explicit_seq.cfg"
  143. LowDelay              =  0    # Apply HierarchicalCoding without delay (i.e., encode in the captured/display order)
  144. ReferenceReorder      =  1    # Reorder References according to Poc distance for HierarchicalCoding (0=off, 1=enable, 2=use when LowDelay is set)
  145. PocMemoryManagement   =  1    # Memory management based on Poc Distances for HierarchicalCoding (0=off, 1=on, 2=use when LowDelay is set)
  146. SetFirstAsLongTerm    =  0    # Set first frame as long term
  147.  
  148. BiPredMotionEstimation = 1   # Enable Bipredictive based Motion Estimation (0:disabled, 1:enabled)
  149. BiPredMERefinements    = 3   # Bipredictive ME extra refinements (0: single, N: N extra refinements (1 default)
  150. BiPredMESearchRange    = 16  # Bipredictive ME Search range (8 default). Note that range is halved for every extra refinement.
  151. BiPredMESubPel         = 2   # Bipredictive ME Subpixel Consideration (0: disabled, 1: single level, 2: dual level)
  152.  
  153.  
  154. ##########################################################################################
  155. # SP Frames
  156. ##########################################################################################
  157.  
  158. SPPicturePeriodicity  = 0                  # SP-Picture Periodicity (0=not used)
  159. SPSwitchPeriod        = 0                  # Switch period (in terms of switching SP/SI frames) between bitstream 1 and bitstream 2
  160. QPSPSlice             = 36                 # Quant. param of SP-Slices for Prediction Error (0-51)
  161. QPSISlice             = 36                 # Quant. param of SI-Slices for Prediction Error (0-51)
  162. QPSP2Slice            = 35                 # Quant. param of SP/SI-Slices for Predicted Blocks (0-51)
  163. SI_FRAMES             = 0                  # SI frame encoding flag (0=not used, 1=used)
  164. SP_output             = 0                  # Controls whether coefficients will be output to encode switching SP frames (0=no, 1=yes)
  165. SP_output_name        = "low_quality.dat"  # Filename for SP output coefficients
  166. SP2_FRAMES            = 0                  # switching SP frame encoding flag (0=not used, 1=used)
  167. SP2_input_name1       = "high_quality.dat" # Filename for the first swithed bitstream coefficients
  168. SP2_input_name2       = "low_quality.dat"  # Filename for the second switched bitstream coefficients
  169.  
  170. ##########################################################################################
  171. # Output Control, NALs
  172. ##########################################################################################
  173.  
  174. OutFileMode            =  0  # Output file mode, 0:Annex B, 1:RTP
  175. PartitionMode          =  0  # Partition Mode, 0: no DP, 1: 3 Partitions per Slice
  176.  
  177. ##########################################################################################
  178. # Interlace Handling
  179. #########################################################################################
  180.  
  181. PicInterlace             =  0     # Picture AFF    (0: frame coding, 1: field coding, 2:adaptive frame/field coding)
  182. MbInterlace              =  0     # Macroblock AFF (0: frame coding, 1: field coding, 2:adaptive frame/field coding, 3: frame MB-only AFF)
  183. IntraBottom              =  0     # Force Intra Bottom at GOP Period
  184.  
  185. ##########################################################################################
  186. # Weighted Prediction
  187. #########################################################################################
  188.  
  189. WeightedPrediction       =  0     # P picture Weighted Prediction (0=off, 1=explicit mode)
  190. WeightedBiprediction     =  0     # B picture Weighted Prediciton (0=off, 1=explicit mode,  2=implicit mode)
  191. ChromaWeightSupport      =  1     # Enable consideration of weights for Chroma components
  192. UseWeightedReferenceME   =  1     # Use weighted reference for ME (0=off, 1=on)
  193. WPMethod                 =  1     # WP method (0: DC based, 1: LMS based)
  194. WPIterMC                 =  0     # Iterative Motion compensated based weighted prediction method
  195. EnhancedBWeightSupport   =  0     # Enhanced B Weight support (needs revisit if we wish to merge with WPMethod)
  196. WPMCPrecision            =  0     # Improved Motion Compensation Precision using WP based methods.
  197.                                   # Clones WP references with slightly modified rounding offsets (Requires RDPictureDecision and GenerateMultiplePPS) :
  198.                                   # 0: disabled (default) 
  199.                                   # 1: Up to one additional coding pass. Ref0 is 0, ref1 is 0 with a -1 offset
  200.                                   # 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
  201. WPMCPrecFullRef          =  0     # Increases the number of references in the reference picture lists to account
  202.                                   # for the lost reference slot when reordering is used during a coding pass in WPMCPrecision for reference replication.
  203.                                   # The number of references in non-reordered passes stays unchanged
  204. WPMCPrecBSlice           =  1     # 2: Apply rounding on every B slice. This efectively disables the evaluation of alternative QPs during RDPictureDecision.
  205.                                   # 1: Disable rounding for non-reference B slices. Non-reference B slices are evaluated for alternative QPs during RDPictureDecision.
  206.                                   # 0: Disable rounding for B slices.
  207.  
  208. ##########################################################################################
  209. # Picture based Multi-pass encoding
  210. #########################################################################################
  211.  
  212. RDPictureDecision        =  0     # Perform multiple pass coding and make RD optimal decision among them
  213. RDPSliceBTest            =  0     # Perform Slice level RD decision between P and B slices. 
  214. RDPictureMaxPassISlice   =  1     # Max number of coding passes for I slices, valid values [1,3], default is 1 
  215. RDPictureMaxPassPSlice   =  2     # Max number of coding passes for P slices, valid values [1,6], default is 2
  216. RDPictureMaxPassBSlice   =  3     # Max number of coding passes for B slices, valid values [1,6], default is 3
  217. RDPictureFrameQPPSlice   =  0     # Perform additional frame level QP check (QP+/-1) for P slices, 0: disabled (default), 1: enabled
  218. RDPictureFrameQPBSlice   =  0     # Perform additional frame level QP check (QP+/-1) for B slices, 0: disabled, 1: enabled (default)
  219. RDPictureDeblocking      =  0     # Perform another coding pass to check non-deblocked picture, 0: disabled (default), 1: enabled
  220. RDPictureDirectMode      =  0     # Perform another coding pass to check the alternative direct mode for B slices, , 0: disabled (default), 1: enabled
  221.  
  222. ##########################################################################################
  223. # Deblocking filter parameters
  224. ##########################################################################################
  225.  
  226. DFParametersFlag         = 0      # Configure deblocking filter (0=parameters below ignored, 1=parameters sent)
  227.                                                                 # Note that for pictures with multiple slice types, 
  228.                                   # only the type of the first slice will be considered.
  229. DFDisableRefISlice       = 0      # Disable deblocking filter in reference I coded pictures (0=Filter, 1=No Filter). 
  230. DFAlphaRefISlice         = 0      # Reference I coded pictures Alpha offset div. 2, {-6, -5, ... 0, +1, .. +6}
  231. DFBetaRefISlice          = 0      # Reference I coded pictures Beta offset div. 2, {-6, -5, ... 0, +1, .. +6}
  232. DFDisableNRefISlice      = 0      # Disable deblocking filter in non reference I coded pictures (0=Filter, 1=No Filter). 
  233. DFAlphaNRefISlice        = 0      # Non Reference I coded pictures Alpha offset div. 2, {-6, -5, ... 0, +1, .. +6}
  234. DFBetaNRefISlice         = 0      # Non Reference I coded pictures Beta offset div. 2, {-6, -5, ... 0, +1, .. +6}
  235. DFDisableRefPSlice       = 0      # Disable deblocking filter in reference P coded pictures (0=Filter, 1=No Filter). 
  236. DFAlphaRefPSlice         = 0      # Reference P coded pictures Alpha offset div. 2, {-6, -5, ... 0, +1, .. +6}
  237. DFBetaRefPSlice          = 0      # Reference P coded pictures Beta offset div. 2, {-6, -5, ... 0, +1, .. +6}
  238. DFDisableNRefPSlice      = 0      # Disable deblocking filter in non reference P coded pictures (0=Filter, 1=No Filter). 
  239. DFAlphaNRefPSlice        = 0      # Non Reference P coded pictures Alpha offset div. 2, {-6, -5, ... 0, +1, .. +6}
  240. DFBetaNRefPSlice         = 0      # Non Reference P coded pictures Beta offset div. 2, {-6, -5, ... 0, +1, .. +6}
  241. DFDisableRefBSlice       = 0      # Disable deblocking filter in reference B coded pictures (0=Filter, 1=No Filter). 
  242. DFAlphaRefBSlice         = 0      # Reference B coded pictures Alpha offset div. 2, {-6, -5, ... 0, +1, .. +6}
  243. DFBetaRefBSlice          = 0      # Reference B coded pictures Beta offset div. 2, {-6, -5, ... 0, +1, .. +6}
  244. DFDisableNRefBSlice      = 0      # Disable deblocking filter in non reference B coded pictures (0=Filter, 1=No Filter). 
  245. DFAlphaNRefBSlice        = 0      # Non Reference B coded pictures Alpha offset div. 2, {-6, -5, ... 0, +1, .. +6}
  246. DFBetaNRefBSlice         = 0      # Non Reference B coded pictures Beta offset div. 2, {-6, -5, ... 0, +1, .. +6}
  247.  
  248. ##########################################################################################
  249. # Error Resilience / Slices
  250. ##########################################################################################
  251.  
  252. SliceMode             =  0   # Slice mode (0=off 1=fixed #mb in slice 2=fixed #bytes in slice 3=use callback)
  253. SliceArgument         = 50   # Slice argument (Arguments to modes 1 and 2 above)
  254.  
  255. UseRedundantPicture   = 0    # 0: not used, 1: enabled
  256. NumRedundantHierarchy = 1    # 0-4
  257. PrimaryGOPLength      = 10   # GOP length for redundant allocation (1-16)
  258.                              # NumberReferenceFrames must be no less than PrimaryGOPLength when redundant slice enabled
  259. NumRefPrimary         = 1    # Actually used number of references for primary slices (1-16)
  260.  
  261. ##########################################################################################
  262. # Search Range Restriction / RD Optimization
  263. ##########################################################################################
  264.  
  265. RestrictSearchRange    =  2  # restriction for (0: blocks and ref, 1: ref, 2: no restrictions)
  266. RDOptimization         =  0  # rd-optimized mode decision
  267.                              # 0: RD-off (Low complexity mode)
  268.                              # 1: RD-on (High complexity mode)
  269.                              # 2: RD-on (Fast high complexity mode - not work in FREX Profiles)
  270.                              # 3: with losses
  271. I16RDOpt               =  0  # perform rd-optimized mode decision for Intra 16x16 MB
  272.                              # 0: SAD-based mode decision for Intra 16x16 MB
  273.                              # 1: RD-based mode decision for Intra 16x16 MB                        
  274. SubMBCodingState       =  1  # submacroblock coding state
  275.                              # 0: lowest complexity, do not store or reset coding state during sub-MB mode decision
  276.                              # 1: medium complexity, reset to master coding state (for current mode) during sub-MB mode decision
  277.                              # 2: highest complexity, store and reset coding state during sub-MB mode decision
  278. DistortionSSIM         =  0  # Compute SSIM distortion. (0: disabled/default, 1: enabled)
  279. DistortionMS_SSIM      =  0  # Compute Multiscale SSIM distortion. (0: disabled/default, 1: enabled)
  280. SSIMOverlapSize        =  8  # Overlap size to calculate SSIM distortion (1: pixel by pixel, 8: no overlap)
  281. DistortionYUVtoRGB     =  0  # Calculate distortion in RGB domain after conversion from YCbCr (0:off, 1:on)
  282. CtxAdptLagrangeMult    =  0  # Context Adaptive Lagrange Multiplier
  283.                              # 0: disabled (default)
  284.                              # 1: enabled (works best when RDOptimization=0)
  285. FastCrIntraDecision    =  1  # Fast Chroma intra mode decision (0:off, 1:on)
  286. DisableThresholding    =  0  # Disable Thresholding of Transform Coefficients (0:off, 1:on)
  287. DisableBSkipRDO        =  0  # Disable B Skip Mode consideration from RDO Mode decision (0:off, 1:on)
  288. BiasSkipRDO            =  1  # Negative Bias for Skip/DirectSkip modes (0: off, 1: on)
  289. ForceTrueRateRDO       =  0  # Force true rate (even zero values) during RDO process
  290. SkipIntraInInterSlices =  0  # Skips Intra mode checking in inter slices if certain mode decisions are satisfied (0: off, 1: on)
  291. WeightY                =  1  # Luma weight for RDO
  292. WeightCb               =  1  # Cb weight for RDO
  293. WeightCr               =  1  # Cr weight for RDO
  294.  
  295. ##########################################################################################
  296. # Explicit Lambda Usage
  297. ##########################################################################################
  298. UseExplicitLambdaParams  =  0    # Use explicit lambda scaling parameters (0:disabled, 1:enable lambda weight, 2: use explicit lambda value)
  299. UpdateLambdaChromaME     =  0    # Update lambda given Chroma ME consideration
  300. FixedLambdaISlice        =  0.1  # Fixed Lambda value for I slices
  301. FixedLambdaPSlice        =  0.1  # Fixed Lambda value for P slices
  302. FixedLambdaBSlice        =  0.1  # Fixed Lambda value for B slices
  303. FixedLambdaRefBSlice     =  0.1  # Fixed Lambda value for Referenced B slices
  304. FixedLambdaSPSlice       =  0.1  # Fixed Lambda value for SP slices
  305. FixedLambdaSISlice       =  0.1  # Fixed Lambda value for SI slices
  306.  
  307. LambdaWeightISlice       =  0.65 # scaling param for I slices. This will be used as a multiplier i.e. lambda=LambdaWeightISlice * 2^((QP-12)/3)
  308. LambdaWeightPSlice       =  0.68 # scaling param for P slices. This will be used as a multiplier i.e. lambda=LambdaWeightPSlice * 2^((QP-12)/3)
  309. LambdaWeightBSlice       =  0.68 # scaling param for B slices. This will be used as a multiplier i.e. lambda=LambdaWeightBSlice * 2^((QP-12)/3)
  310. LambdaWeightRefBSlice    =  0.68 # scaling param for Referenced B slices. This will be used as a multiplier i.e. lambda=LambdaWeightRefBSlice * 2^((QP-12)/3)
  311. LambdaWeightSPSlice      =  0.68 # scaling param for SP slices. This will be used as a multiplier i.e. lambda=LambdaWeightSPSlice * 2^((QP-12)/3)
  312. LambdaWeightSISlice      =  0.65 # scaling param for SI slices. This will be used as a multiplier i.e. lambda=LambdaWeightSISlice * 2^((QP-12)/3)
  313.  
  314. LossRateA                =  5  # expected packet loss rate of the channel for the first partition, only valid if RDOptimization = 3
  315. LossRateB                =  0  # expected packet loss rate of the channel for the second partition, only valid if RDOptimization = 3
  316. LossRateC                =  0  # expected packet loss rate of the channel for the third partition, only valid if RDOptimization = 3
  317. FirstFrameCorrect         =  0  # If 1, the first frame is encoded under the assumption that it is always correctly received. 
  318. NumberOfDecoders         = 30  # Numbers of decoders used to simulate the channel, only valid if RDOptimization = 3
  319. RestrictRefFrames        =  0  # Doesnt allow reference to areas that have been intra updated in a later frame.
  320.  
  321. ##########################################################################################
  322. # Additional Stuff
  323. #########################################################################################
  324.  
  325. UseConstrainedIntraPred  =  0  # If 1, Inter pixels are not used for Intra macroblock prediction.
  326.  
  327. NumberofLeakyBuckets     =  8                      # Number of Leaky Bucket values
  328. LeakyBucketRateFile      =  "leakybucketrate.cfg"  # File from which encoder derives rate values
  329. LeakyBucketParamFile     =  "leakybucketparam.cfg" # File where encoder stores leakybucketparams
  330.  
  331. NumFramesInELayerSubSeq  = 0  # number of frames in the Enhanced Scalability Layer(0: no Enhanced Layer)
  332.  
  333. SparePictureOption        =  0   # (0: no spare picture info, 1: spare picture available)
  334. SparePictureDetectionThr  =  6   # Threshold for spare reference pictures detection
  335. SparePicturePercentageThr = 92   # Threshold for the spare macroblock percentage
  336.  
  337. PicOrderCntType           = 0    # (0: POC mode 0, 1: POC mode 1, 2: POC mode 2)
  338.  
  339. ########################################################################################
  340. #Rate control
  341. ########################################################################################
  342.  
  343. RateControlEnable       = 1     # 0 Disable, 1 Enable
  344. Bitrate                 = 45020 # Bitrate(bps)
  345. InitialQP               = 0     # Initial Quantization Parameter for the first I frame
  346.                                 # InitialQp depends on two values: Bits Per Picture,
  347.                                 # and the GOP length
  348. BasicUnit               = 0     # Number of MBs in the basic unit
  349.                                 # should be a fraction of the total number
  350.                                 # of MBs in a frame ("0" sets a BU equal to a frame)
  351. ChannelType             = 0     # type of channel( 1=time varying channel; 0=Constant channel)
  352. RCUpdateMode            = 0     # Rate Control type. Modes supported :
  353.                                 # 0 = original JM rate control,
  354.                                 # 1 = rate control that is applied to all frames regardless of the slice type,
  355.                                 # 2 = original plus intelligent QP selection for I and B slices (including Hierarchical),
  356.                                 # 3 = original + hybrid quadratic rate control for I and B slice using bit rate statistics
  357.                                 #
  358. RCISliceBitRatio        = 1.0   # target ratio of bits for I-coded pictures compared to P-coded Pictures (for RCUpdateMode=3)
  359. RCBSliceBitRatio0       = 0.5   # target ratio of bits for B-coded pictures compared to P-coded Pictures - temporal level 0 (for RCUpdateMode=3)
  360. RCBSliceBitRatio1       = 0.25  # target ratio of bits for B-coded pictures compared to P-coded Pictures - temporal level 1 (for RCUpdateMode=3)
  361. RCBSliceBitRatio2       = 0.25  # target ratio of bits for B-coded pictures compared to P-coded Pictures - temporal level 2 (for RCUpdateMode=3)
  362. RCBSliceBitRatio3       = 0.25  # target ratio of bits for B-coded pictures compared to P-coded Pictures - temporal level 3 (for RCUpdateMode=3)
  363. RCBSliceBitRatio4       = 0.25  # target ratio of bits for B-coded pictures compared to P-coded Pictures - temporal level 4 (for RCUpdateMode=3)
  364. RCBoverPRatio           = 0.45  # ratio of bit rate usage of a B-coded picture over a P-coded picture for the SAME QP (for RCUpdateMode=3)
  365. RCIoverPRatio           = 3.80  # ratio of bit rate usage of an I-coded picture over a P-coded picture for the SAME QP (for RCUpdateMode=3)
  366. RCMinQPPSlice           =  8    # minimum P Slice QP value for rate control
  367. RCMaxQPPSlice           = 42    # maximum P Slice QP value for rate control
  368. RCMinQPBSlice           =  8    # minimum B Slice QP value for rate control
  369. RCMaxQPBSlice           = 42    # maximum B Slice QP value for rate control
  370. RCMinQPISlice           =  8    # minimum I Slice QP value for rate control
  371. RCMaxQPISlice           = 42    # maximum I Slice QP value for rate control
  372. RCMinQPSPSlice          =  8    # minimum SP Slice QP value for rate control
  373. RCMaxQPSPSlice          = 40    # maximum SP Slice QP value for rate control
  374. RCMinQPSISlice          =  8    # minimum SI Slice QP value for rate control
  375. RCMaxQPSISlice          = 42    # maximum SI Slice QP value for rate control
  376. RCMaxQPChange           =  4    # maximum QP change for frames of the base layer
  377.  
  378. ########################################################################################
  379. #Fast Mode Decision
  380. ########################################################################################
  381. EarlySkipEnable         = 0     # Early skip detection (0: Disable 1: Enable)
  382. SelectiveIntraEnable    = 0     # Selective Intra mode decision (0: Disable 1: Enable)
  383.  
  384. ReportFrameStats        = 0     # (0:Disable Frame Statistics 1: Enable)
  385. DisplayEncParams        = 0     # (0:Disable Display of Encoder Params 1: Enable)
  386. Verbose                 = 1     # level of display verboseness 
  387.                                 # 0: short, 1: normal (default), 2: detailed, 3: detailed/nvb
  388.                                 
  389.  
  390. ########################################################################################
  391. #Rounding Offset control
  392. ########################################################################################
  393.  
  394. OffsetMatrixPresentFlag  = 0    # Enable Explicit Offset Quantization Matrices  (0: disable 1: enable)
  395. QOffsetMatrixFile        = "q_offset.cfg" # Explicit Quantization Matrices file
  396.  
  397. AdaptiveRounding         = 1    # Enable Adaptive Rounding based on JVT-N011 (0: disable, 1: enable)
  398. AdaptRoundingFixed       = 1    # Enable Global Adaptive rounding for all qps (0: disable, 1: enable - default/old)
  399. AdaptRndPeriod           = 16   # Period in terms of MBs for updating rounding offsets. 
  400.                                 # 0 performs update at the picture level. Default is 16. 1 is as in JVT-N011.
  401. AdaptRndChroma           = 1    # Enables coefficient rounding adaptation for chroma
  402.  
  403. AdaptRndWFactorIRef      = 4    # Adaptive Rounding Weight for I/SI slices in reference pictures /4096
  404. AdaptRndWFactorPRef      = 4    # Adaptive Rounding Weight for P/SP slices in reference pictures /4096
  405. AdaptRndWFactorBRef      = 4    # Adaptive Rounding Weight for B slices in reference pictures /4096
  406. AdaptRndWFactorINRef     = 4    # Adaptive Rounding Weight for I/SI slices in non reference pictures /4096
  407. AdaptRndWFactorPNRef     = 4    # Adaptive Rounding Weight for P/SP slices in non reference pictures /4096
  408. AdaptRndWFactorBNRef     = 4    # Adaptive Rounding Weight for B slices in non reference pictures /4096
  409.  
  410. AdaptRndCrWFactorIRef    = 4    # Chroma Adaptive Rounding Weight for I/SI slices in reference pictures /4096
  411. AdaptRndCrWFactorPRef    = 4    # Chroma Adaptive Rounding Weight for P/SP slices in reference pictures /4096
  412. AdaptRndCrWFactorBRef    = 4    # Chroma Adaptive Rounding Weight for B slices in reference pictures /4096
  413. AdaptRndCrWFactorINRef   = 4    # Chroma Adaptive Rounding Weight for I/SI slices in non reference pictures /4096
  414. AdaptRndCrWFactorPNRef   = 4    # Chroma Adaptive Rounding Weight for P/SP slices in non reference pictures /4096
  415. AdaptRndCrWFactorBNRef   = 4    # Chroma Adaptive Rounding Weight for B slices in non reference pictures /4096
  416.  
  417. ################################################################
  418. # Rate Distortion Optimized Quantization
  419. ################################################################
  420. UseRDOQuant              =  0 # Use Rate Distortion Optimized Quantization (0=disable, 1=enable)
  421. RDOQ_DC                  =  0 # Enable Rate Distortion Optimized Quantization for DC components (0=disable, 1=enable)
  422. RDOQ_CR                  =  0 # Enable Rate Distortion Optimized Quantization for Chroma components (0=disable, 1=enable)
  423. RDOQ_DC_CR               =  0 # Enable Rate Distortion Optimized Quantization for Chroma DC components (0=disable, 1=enable)
  424. RDOQ_QP_Num              =  1 # 1-5: Number of QP tested in RDO_Q (I/P/B slice)
  425. RDOQ_CP_Mode             =  1 # copy Mode from first QP tested
  426. RDOQ_CP_MV               =  1 # copy MV from first QP tested
  427. RDOQ_Fast                =  1 # Fast RDOQ decision method for multiple QPs
  428.  
  429.  
  430. ########################################################################################
  431. #Fast Motion Estimation Control Parameters
  432. ########################################################################################
  433.  
  434. SearchMode               = 2    # Motion estimation mode
  435.                                 # -1 = Full Search
  436.                                 #  0 = Fast Full Search (default)
  437.                                 #  1 = UMHexagon Search
  438.                                 #  2 = Simplified UMHexagon Search
  439.                                 #  3 = Enhanced Predictive Zonal Search (EPZS)
  440.                                 
  441. UMHexDSR                 = 1    # Use Search Range Prediction. Only for UMHexagonS method
  442.                                 # (0:disable, 1:enabled/default)
  443. UMHexScale               = 3    # Use Scale_factor for different image sizes. Only for UMHexagonS method
  444.                                 # (0:disable, 3:/default)
  445.                                 # Increasing value can speed up Motion Search.
  446.  
  447. EPZSPattern              = 2    # Select EPZS primary refinement pattern.
  448.                                 # (0: small diamond, 1: square, 2: extended diamond/default,
  449.                                 # 3: large diamond, 4: SBP Large Diamond,
  450.                                 # 5: PMVFAST )
  451. EPZSDualRefinement       = 3    # Enables secondary refinement pattern.
  452.                                 # (0:disabled, 1: small diamond, 2: square,
  453.                                 # 3: extended diamond/default, 4: large diamond,
  454.                                 # 5: SBP Large Diamond, 6: PMVFAST )
  455. EPZSFixedPredictors      = 2    # Enables Window based predictors
  456.                                 # (0:disabled, 1: P only, 2: P and B/default)
  457. EPZSTemporal             = 1    # Enables temporal predictors
  458.                                 # (0: disabled, 1: enabled/default)
  459. EPZSSpatialMem           = 1    # Enables spatial memory predictors
  460.                                 # (0: disabled, 1: enabled/default)
  461. EPZSBlockType            = 1    # Enables block type Predictors
  462.                                 # (0: disabled, 1: enabled/default)
  463. EPZSMinThresScale        = 0    # Scaler for EPZS minimum threshold (0 default).
  464.                                 # Increasing value can speed up encoding.
  465. EPZSMedThresScale        = 1    # Scaler for EPZS median threshold (1 default).
  466.                                 # Increasing value can speed up encoding.
  467. EPZSMaxThresScale        = 2    # Scaler for EPZS maximum threshold (1 default).
  468.                                 # Increasing value can speed up encoding.
  469. EPZSSubPelME             = 1    # EPZS Subpel ME consideration
  470. EPZSSubPelMEBiPred       = 1    # EPZS Subpel ME consideration for BiPred partitions
  471. EPZSSubPelThresScale     = 2    # EPZS Subpel ME Threshold scaler
  472. EPZSSubPelGrid           = 1    # Perform EPZS using a subpixel grid
  473.  
  474. ########################################################################################
  475. # SEI Parameters
  476. ########################################################################################
  477.  
  478. GenerateSEIMessage        = 0                    # Generate an SEI Text Message
  479. SEIMessageText            = "H.264/AVC Encoder"  # Text SEI Message
  480.  
  481. UseMVLimits               = 0                    # Use MV Limits
  482. SetMVXLimit               = 512                  # Horizontal MV Limit (in integer units)
  483. SetMVYLimit               = 512                  # Vertical MV Limit (in integer units)
  484.  
  485. ########################################################################################
  486. # VUI Parameters
  487. ########################################################################################
  488. # the variables below do not affect encoding and decoding
  489. # (many are dummy variables but others can be useful when supported by the decoder)
  490.  
  491. EnableVUISupport                                = 0      # Enable VUI Parameters
  492.  
  493.