| 1 | #======== File I/O ===================== |
|---|
| 2 | BitstreamFile : str.bin |
|---|
| 3 | ReconFile : rec.yuv |
|---|
| 4 | |
|---|
| 5 | #======== Profile ================ |
|---|
| 6 | Profile : next |
|---|
| 7 | |
|---|
| 8 | #======== Unit definition ================ |
|---|
| 9 | MaxCUWidth : 64 # Maximum coding unit width in pixel |
|---|
| 10 | MaxCUHeight : 64 # Maximum coding unit height in pixel |
|---|
| 11 | MaxPartitionDepth : 4 # Maximum coding unit depth |
|---|
| 12 | |
|---|
| 13 | #======== Coding Structure ============= |
|---|
| 14 | IntraPeriod : 32 # Period of I-Frame ( -1 = only first) |
|---|
| 15 | DecodingRefreshType : 1 # Random Accesss 0:none, 1:CRA, 2:IDR, 3:Recovery Point SEI |
|---|
| 16 | GOPSize : 16 # GOP Size (number of B slice = GOPSize-1) |
|---|
| 17 | |
|---|
| 18 | IntraQPOffset : -3 |
|---|
| 19 | LambdaFromQpEnable : 1 # see JCTVC-X0038 for suitable parameters for IntraQPOffset, QPoffset, QPOffsetModelOff, QPOffsetModelScale when enabled |
|---|
| 20 | # Type POC QPoffset QPOffsetModelOff QPOffsetModelScale CbQPoffset CrQPoffset QPfactor tcOffsetDiv2 betaOffsetDiv2 temporal_id #ref_pics_active_L0 #ref_pics_L0 reference_pictures_L0 #ref_pics_active_L1 #ref_pics_L1 reference_pictures_L1 |
|---|
| 21 | Frame1: B 16 1 0.0 0.0 0 0 1.0 0 0 0 2 3 16 32 24 2 2 16 32 |
|---|
| 22 | Frame2: B 8 1 -4.8848 0.2061 0 0 1.0 0 0 1 2 2 8 16 2 2 -8 8 |
|---|
| 23 | Frame3: B 4 4 -5.7476 0.2286 0 0 1.0 0 0 2 2 2 4 12 2 2 -4 -12 |
|---|
| 24 | Frame4: B 2 5 -5.90 0.2333 0 0 1.0 0 0 3 2 2 2 10 2 3 -2 -6 -14 |
|---|
| 25 | Frame5: B 1 6 -7.1444 0.3 0 0 1.0 0 0 4 2 2 1 -1 2 4 -1 -3 -7 -15 |
|---|
| 26 | Frame6: B 3 6 -7.1444 0.3 0 0 1.0 0 0 4 2 2 1 3 2 3 -1 -5 -13 |
|---|
| 27 | Frame7: B 6 5 -5.90 0.2333 0 0 1.0 0 0 3 2 2 2 6 2 2 -2 -10 |
|---|
| 28 | Frame8: B 5 6 -7.1444 0.3 0 0 1.0 0 0 4 2 2 1 5 2 3 -1 -3 -11 |
|---|
| 29 | Frame9: B 7 6 -7.1444 0.3 0 0 1.0 0 0 4 2 3 1 3 7 2 2 -1 -9 |
|---|
| 30 | Frame10: B 12 4 -5.7476 0.2286 0 0 1.0 0 0 2 2 2 4 12 2 2 -4 4 |
|---|
| 31 | Frame11: B 10 5 -5.90 0.2333 0 0 1.0 0 0 3 2 2 2 10 2 2 -2 -6 |
|---|
| 32 | Frame12: B 9 6 -7.1444 0.3 0 0 1.0 0 0 4 2 2 1 9 2 3 -1 -3 -7 |
|---|
| 33 | Frame13: B 11 6 -7.1444 0.3 0 0 1.0 0 0 4 2 3 1 3 11 2 2 -1 -5 |
|---|
| 34 | Frame14: B 14 5 -5.90 0.2333 0 0 1.0 0 0 3 2 3 2 6 14 2 2 -2 2 |
|---|
| 35 | Frame15: B 13 6 -7.1444 0.3 0 0 1.0 0 0 4 2 3 1 5 13 2 2 -1 -3 |
|---|
| 36 | Frame16: B 15 6 -7.1444 0.3 0 0 1.0 0 0 4 2 4 1 3 7 15 2 2 -1 1 |
|---|
| 37 | |
|---|
| 38 | #=========== Motion Search ============= |
|---|
| 39 | FastSearch : 1 # 0:Full search 1:TZ search |
|---|
| 40 | SearchRange : 384 # (0: Search range is a Full frame) |
|---|
| 41 | ASR : 1 # Adaptive motion search range |
|---|
| 42 | MinSearchWindow : 96 # Minimum motion search window size for the adaptive window ME |
|---|
| 43 | BipredSearchRange : 4 # Search range for bi-prediction refinement |
|---|
| 44 | HadamardME : 1 # Use of hadamard measure for fractional ME |
|---|
| 45 | FEN : 1 # Fast encoder decision |
|---|
| 46 | FDM : 1 # Fast Decision for Merge RD cost |
|---|
| 47 | |
|---|
| 48 | #======== Quantization ============= |
|---|
| 49 | QP : 32 # Quantization parameter(0-51) |
|---|
| 50 | MaxDeltaQP : 0 # CU-based multi-QP optimization |
|---|
| 51 | MaxCuDQPSubdiv : 0 # Maximum subdiv for CU luma Qp adjustment |
|---|
| 52 | DeltaQpRD : 0 # Slice-based multi-QP optimization |
|---|
| 53 | RDOQ : 1 # RDOQ |
|---|
| 54 | RDOQTS : 1 # RDOQ for transform skip |
|---|
| 55 | |
|---|
| 56 | #=========== Deblock Filter ============ |
|---|
| 57 | LoopFilterOffsetInPPS : 1 # Dbl params: 0=varying params in SliceHeader, param = base_param + GOP_offset_param; 1 (default) =constant params in PPS, param = base_param) |
|---|
| 58 | LoopFilterDisable : 0 # Disable deblocking filter (0=Filter, 1=No Filter) |
|---|
| 59 | LoopFilterBetaOffset_div2 : 0 # base_param: -6 ~ 6 |
|---|
| 60 | LoopFilterTcOffset_div2 : 0 # base_param: -6 ~ 6 |
|---|
| 61 | DeblockingFilterMetric : 0 # blockiness metric (automatically configures deblocking parameters in bitstream). Applies slice-level loop filter offsets (LoopFilterOffsetInPPS and LoopFilterDisable must be 0) |
|---|
| 62 | |
|---|
| 63 | #=========== Misc. ============ |
|---|
| 64 | InternalBitDepth : 10 # codec operating bit-depth |
|---|
| 65 | |
|---|
| 66 | #=========== Coding Tools ================= |
|---|
| 67 | SAO : 1 # Sample adaptive offset (0: OFF, 1: ON) |
|---|
| 68 | TransformSkip : 1 # Transform skipping (0: OFF, 1: ON) |
|---|
| 69 | TransformSkipFast : 1 # Fast Transform skipping (0: OFF, 1: ON) |
|---|
| 70 | TransformSkipLog2MaxSize : 5 |
|---|
| 71 | SAOLcuBoundary : 0 # SAOLcuBoundary using non-deblocked pixels (0: OFF, 1: ON) |
|---|
| 72 | |
|---|
| 73 | #============ Slices ================ |
|---|
| 74 | SliceMode : 3 # 0: Disable all slice options. |
|---|
| 75 | # 1: Enforce maximum number of LCU in an slice, |
|---|
| 76 | # 2: Enforce maximum number of bytes in an 'slice' |
|---|
| 77 | # 3: Enforce maximum number of tiles in a slice |
|---|
| 78 | SliceArgument : 2 # Argument for 'SliceMode'. |
|---|
| 79 | # If SliceMode==1 it represents max. SliceGranularity-sized blocks per slice. |
|---|
| 80 | # If SliceMode==2 it represents max. bytes per slice. |
|---|
| 81 | # If SliceMode==3 it represents max. tiles per slice. |
|---|
| 82 | |
|---|
| 83 | LFCrossSliceBoundaryFlag : 1 # In-loop filtering, including ALF and DB, is across or not across slice boundary. |
|---|
| 84 | # 0:not across, 1: across |
|---|
| 85 | |
|---|
| 86 | #============ Tiles ================ |
|---|
| 87 | TileUniformSpacing : 0 # 0: the column boundaries are indicated by TileColumnWidth array, the row boundaries are indicated by TileRowHeight array |
|---|
| 88 | # 1: the column and row boundaries are distributed uniformly |
|---|
| 89 | UniformTileColsWidthMinus1 : 0 # Width to use if TileUniformSpacing is equal to 1 |
|---|
| 90 | UniformTileRowHeightMinus1 : 0 # Height to use if TileUniformSpacing is equal to 1 |
|---|
| 91 | NumTileColumnsMinus1 : 3 # Number of tile columns in a picture minus 1 |
|---|
| 92 | TileColumnWidthArray : 1 1 1 # Array containing tile column width values in units of CTU (from left to right in picture) |
|---|
| 93 | NumTileRowsMinus1 : 1 # Number of tile rows in a picture minus 1 |
|---|
| 94 | TileRowHeightArray : 1 # Array containing tile row height values in units of CTU (from top to bottom in picture) |
|---|
| 95 | |
|---|
| 96 | LFCrossTileBoundaryFlag : 0 # In-loop filtering is across or not across tile boundary. |
|---|
| 97 | # 0:not across, 1: across |
|---|
| 98 | |
|---|
| 99 | RectSliceFlag : 1 |
|---|
| 100 | NumRectSlicesInPicMinus1 : 3 |
|---|
| 101 | RectSlicesBoundaryArray : 0 4 1 5 2 6 3 7 |
|---|
| 102 | |
|---|
| 103 | #============ Lossless ================ |
|---|
| 104 | TransquantBypassEnable : 0 # Value of PPS flag. |
|---|
| 105 | CUTransquantBypassFlagForce: 0 # Force transquant bypass mode, when transquant_bypass_enable_flag is enabled |
|---|
| 106 | |
|---|
| 107 | #============ Rate Control ====================== |
|---|
| 108 | RateControl : 0 # Rate control: enable rate control |
|---|
| 109 | TargetBitrate : 1000000 # Rate control: target bitrate, in bps |
|---|
| 110 | KeepHierarchicalBit : 2 # Rate control: 0: equal bit allocation; 1: fixed ratio bit allocation; 2: adaptive ratio bit allocation |
|---|
| 111 | LCULevelRateControl : 1 # Rate control: 1: LCU level RC; 0: picture level RC |
|---|
| 112 | RCLCUSeparateModel : 1 # Rate control: use LCU level separate R-lambda model |
|---|
| 113 | InitialQP : 0 # Rate control: initial QP |
|---|
| 114 | RCForceIntraQP : 0 # Rate control: force intra QP to be equal to initial QP |
|---|
| 115 | |
|---|
| 116 | #============ VTM settings ====================== |
|---|
| 117 | LoopFilterTcOffset_div2 : 0 |
|---|
| 118 | SEIDecodedPictureHash : 0 |
|---|
| 119 | CbQpOffset : 1 |
|---|
| 120 | CrQpOffset : 1 |
|---|
| 121 | |
|---|
| 122 | ReWriteParamSets : 1 |
|---|
| 123 | #============ NEXT ==================== |
|---|
| 124 | |
|---|
| 125 | # General |
|---|
| 126 | CTUSize : 128 |
|---|
| 127 | LCTUFast : 1 |
|---|
| 128 | |
|---|
| 129 | DualITree : 1 # separate partitioning of luma and chroma channels for I-slices |
|---|
| 130 | MinQTLumaISlice : 8 |
|---|
| 131 | MinQTChromaISlice : 4 |
|---|
| 132 | MinQTNonISlice : 8 |
|---|
| 133 | MaxMTTHierarchyDepth : 3 |
|---|
| 134 | MaxMTTHierarchyDepthISliceL : 3 |
|---|
| 135 | MaxMTTHierarchyDepthISliceC : 3 |
|---|
| 136 | |
|---|
| 137 | MTS : 1 |
|---|
| 138 | MTSIntraMaxCand : 3 |
|---|
| 139 | MTSInterMaxCand : 4 |
|---|
| 140 | SBT : 1 |
|---|
| 141 | LFNST : 1 |
|---|
| 142 | ISP : 1 |
|---|
| 143 | MMVD : 1 |
|---|
| 144 | Affine : 1 |
|---|
| 145 | SubPuMvp : 1 |
|---|
| 146 | MaxNumMergeCand : 6 |
|---|
| 147 | LMChroma : 1 # use CCLM only |
|---|
| 148 | DepQuant : 1 |
|---|
| 149 | IMV : 1 |
|---|
| 150 | ALF : 1 |
|---|
| 151 | GBi : 1 |
|---|
| 152 | GBiFast : 1 |
|---|
| 153 | BIO : 1 |
|---|
| 154 | MHIntra : 1 |
|---|
| 155 | Triangle : 1 |
|---|
| 156 | IBC : 0 # turned off in CTC |
|---|
| 157 | AllowDisFracMMVD : 1 |
|---|
| 158 | AffineAmvr : 1 |
|---|
| 159 | LMCSEnable : 1 # LMCS: 0: disable, 1:enable |
|---|
| 160 | LMCSSignalType : 0 # Input signal type: 0:SDR, 1:HDR-PQ, 2:HDR-HLG |
|---|
| 161 | LMCSUpdateCtrl : 0 # LMCS model update control: 0:RA, 1:AI, 2:LDB/LDP |
|---|
| 162 | MIP : 1 |
|---|
| 163 | DMVR : 1 |
|---|
| 164 | SMVD : 1 |
|---|
| 165 | |
|---|
| 166 | # Fast tools |
|---|
| 167 | PBIntraFast : 1 |
|---|
| 168 | ISPFast : 1 |
|---|
| 169 | FastMrg : 1 |
|---|
| 170 | AMaxBT : 1 |
|---|
| 171 | FastMIP : 0 |
|---|
| 172 | FastLFNST : 0 |
|---|
| 173 | |
|---|
| 174 | # Encoder optimization tools |
|---|
| 175 | AffineAmvrEncOpt : 1 |
|---|
| 176 | MmvdDisNum : 6 |
|---|
| 177 | ### DO NOT ADD ANYTHING BELOW THIS LINE ### |
|---|
| 178 | ### DO NOT DELETE THE EMPTY LINE BELOW ### |
|---|
| 179 | |
|---|
| 180 | |
|---|
| 181 | |
|---|