1 /* 2 * adrc_head.h 3 * 4 * Copyright (c) 2021 Rockchip Corporation 5 * 6 * Licensed under the Apache License, Version 2.0 (the "License"); 7 * you may not use this file except in compliance with the License. 8 * You may obtain a copy of the License at 9 * 10 * http://www.apache.org/licenses/LICENSE-2.0 11 * 12 * Unless required by applicable law or agreed to in writing, software 13 * distributed under the License is distributed on an "AS IS" BASIS, 14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 * See the License for the specific language governing permissions and 16 * limitations under the License. 17 * 18 */ 19 20 #ifndef __CALIBDBV2_ADRC_HEADER_H__ 21 #define __CALIBDBV2_ADRC_HEADER_H__ 22 23 #include "adehaze_head.h" 24 25 #define ADRC_Y_NUM 17 26 #define ADRC_ENVLV_STEP_MAX 13 27 28 // drc v10 29 typedef struct AdrcGain_s { 30 // M4_ARRAY_DESC("CtrlData", "f32", M4_SIZE(1,13), M4_RANGE(0,10000000), "[0, 0.005, 0.01, 0.05, 0.1, 0.15, 0.2, 0.3, 0.4, 0.5, 0.6, 0.8, 1]",M4_DIGIT(3), M4_DYNAMIC(0), 0) 31 float CtrlData[ADRC_ENVLV_STEP_MAX]; 32 // M4_ARRAY_DESC("DrcGain", "f32", M4_SIZE(1,13), M4_RANGE(1,8), "[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]",M4_DIGIT(2), M4_DYNAMIC(0), 0) 33 float DrcGain[ADRC_ENVLV_STEP_MAX]; 34 // M4_ARRAY_DESC("Alpha", "f32", M4_SIZE(1,13), M4_RANGE(0,1), "[0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2]",M4_DIGIT(2), M4_DYNAMIC(0), 0) 35 float Alpha[ADRC_ENVLV_STEP_MAX]; 36 // M4_ARRAY_DESC("Clip", "f32", M4_SIZE(1,13), M4_RANGE(0,64), "[16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16]",M4_DIGIT(2), M4_DYNAMIC(0), 0) 37 float Clip[ADRC_ENVLV_STEP_MAX]; 38 } AdrcGain_t; 39 40 typedef struct HighLight_s { 41 // M4_ARRAY_DESC("CtrlData", "f32", M4_SIZE(1,13), M4_RANGE(0,10000000), "[0, 0.005, 0.01, 0.05, 0.1, 0.15, 0.2, 0.3, 0.4, 0.5, 0.6, 0.8, 1]",M4_DIGIT(3), M4_DYNAMIC(0), 0) 42 float CtrlData[ADRC_ENVLV_STEP_MAX]; 43 // M4_ARRAY_DESC("Strength", "f32", M4_SIZE(1,13), M4_RANGE(0,1), "[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]",M4_DIGIT(2), M4_DYNAMIC(0), 0) 44 float Strength[ADRC_ENVLV_STEP_MAX]; 45 } HighLight_t; 46 47 typedef struct LocalData_s{ 48 // M4_ARRAY_DESC("CtrlData", "f32", M4_SIZE(1,13), M4_RANGE(0,10000000), "[0, 0.005, 0.01, 0.05, 0.1, 0.15, 0.2, 0.3, 0.4, 0.5, 0.6, 0.8, 1]",M4_DIGIT(2), M4_DYNAMIC(0), 0) 49 float CtrlData[ADRC_ENVLV_STEP_MAX]; 50 // M4_ARRAY_DESC("LocalWeit", "f32", M4_SIZE(1,13), M4_RANGE(0,1), "[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]",M4_DIGIT(2), M4_DYNAMIC(0), 0) 51 float LocalWeit[ADRC_ENVLV_STEP_MAX]; 52 // M4_ARRAY_DESC("GlobalContrast", "f32", M4_SIZE(1,13), M4_RANGE(0,1), "[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]",M4_DIGIT(3), M4_DYNAMIC(0), 0) 53 float GlobalContrast[ADRC_ENVLV_STEP_MAX]; 54 // M4_ARRAY_DESC("LoLitContrast", "f32", M4_SIZE(1,13), M4_RANGE(0,1), "[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]",M4_DIGIT(3), M4_DYNAMIC(0), 0) 55 float LoLitContrast[ADRC_ENVLV_STEP_MAX]; 56 } LocalData_t; 57 58 typedef struct local_s { 59 // M4_ARRAY_TABLE_DESC("LocalTMOData", "array_table_ui", "none") 60 LocalData_t LocalTMOData; 61 // M4_NUMBER_DESC("curPixWeit", "f32", M4_RANGE(0,1), "0.37", M4_DIGIT(3)) 62 float curPixWeit; 63 // M4_NUMBER_DESC("preFrameWeit", "f32", M4_RANGE(0,1), "1.0", M4_DIGIT(3)) 64 float preFrameWeit; 65 // M4_NUMBER_DESC("Range_force_sgm", "f32", M4_RANGE(0,1), "0.0", M4_DIGIT(4)) 66 float Range_force_sgm; 67 // M4_NUMBER_DESC("Range_sgm_cur", "f32", M4_RANGE(0,1), "0.125", M4_DIGIT(4)) 68 float Range_sgm_cur; 69 // M4_NUMBER_DESC("Range_sgm_pre", "f32", M4_RANGE(0,1), "0.125", M4_DIGIT(4)) 70 float Range_sgm_pre; 71 // M4_NUMBER_DESC("Space_sgm_cur", "u16", M4_RANGE(0,4095), "4068", M4_DIGIT(0)) 72 int Space_sgm_cur; 73 // M4_NUMBER_DESC("Space_sgm_pre", "u16", M4_RANGE(0,4095), "3968", M4_DIGIT(0)) 74 int Space_sgm_pre; 75 } local_t; 76 77 typedef enum CompressMode_e { 78 COMPRESS_AUTO = 0, 79 COMPRESS_MANUAL = 1, 80 } CompressMode_t; 81 82 typedef struct Compress_s { 83 // M4_ENUM_DESC("Mode", "CompressMode_t", "COMPRESS_AUTO") 84 CompressMode_t Mode; 85 // M4_ARRAY_MARK_DESC("Manual_curve", "u32", M4_SIZE(1,17), M4_RANGE(0, 8192), "[0, 558, 1087, 1588, 2063, 2515, 2944, 3353, 3744, 4473, 5139, 5751, 6316, 6838, 7322, 7772, 8192]", M4_DIGIT(0), M4_DYNAMIC(0), "drc_compress_curve") 86 uint16_t Manual_curve[ADRC_Y_NUM]; 87 } Compress_t; 88 89 typedef struct CalibDbV2_Adrc_V10_s { 90 // M4_BOOL_DESC("Enable", "1") 91 bool Enable; 92 // M4_ENUM_DESC("CtrlDataType", "CtrlDataType_t", "CTRLDATATYPE_ENVLV") 93 CtrlDataType_t CtrlDataType; 94 // M4_ARRAY_TABLE_DESC("DrcGain", "array_table_ui", "none") 95 AdrcGain_t DrcGain; 96 // M4_ARRAY_TABLE_DESC("HiLight", "array_table_ui", "none") 97 HighLight_t HiLight; 98 // M4_STRUCT_DESC("LocalTMOSetting", "normal_ui_style") 99 local_t LocalTMOSetting; 100 // M4_STRUCT_DESC("CompressSetting", "normal_ui_style") 101 Compress_t CompressSetting; 102 // M4_ARRAY_DESC("Scale_y", "u16", M4_SIZE(1,17), M4_RANGE(0, 2048), "[0,2,20,76,193,381,631,772,919,1066,1211,1479,1700,1863,1968,2024,2048]", M4_DIGIT(0), M4_DYNAMIC(0)) 103 int Scale_y[ADRC_Y_NUM]; 104 // M4_NUMBER_DESC("ByPassThr", "f32", M4_RANGE(0,1), "0", M4_DIGIT(4)) 105 float ByPassThr; 106 // M4_NUMBER_DESC("Edge_Weit", "f32", M4_RANGE(0,1), "1",M4_DIGIT(3)) 107 float Edge_Weit; 108 // M4_BOOL_DESC("OutPutLongFrame", "0") 109 bool OutPutLongFrame; 110 // M4_NUMBER_DESC("IIR_frame", "u8", M4_RANGE(1,1000), "2", M4_DIGIT(0)) 111 int IIR_frame; 112 // M4_NUMBER_DESC("damp", "f32", M4_RANGE(0,1), "0.9", M4_DIGIT(3)) 113 float damp; 114 } CalibDbV2_Adrc_V10_t; 115 116 typedef struct CalibDbV2_drc_V10_s { 117 // M4_STRUCT_DESC("DrcTuningPara", "normal_ui_style") 118 CalibDbV2_Adrc_V10_t DrcTuningPara; 119 } CalibDbV2_drc_V10_t; 120 121 // drc v11 122 typedef struct LocalDataV2_s{ 123 // M4_ARRAY_DESC("CtrlData", "f32", M4_SIZE(1,13), M4_RANGE(0,10000000), "[0, 0.005, 0.01, 0.05, 0.1, 0.15, 0.2, 0.3, 0.4, 0.5, 0.6, 0.8, 1]",M4_DIGIT(2), M4_DYNAMIC(0), 0) 124 float CtrlData[ADRC_ENVLV_STEP_MAX]; 125 // M4_ARRAY_DESC("LocalWeit", "f32", M4_SIZE(1,13), M4_RANGE(0,1), "[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]",M4_DIGIT(2), M4_DYNAMIC(0), 0) 126 float LocalWeit[ADRC_ENVLV_STEP_MAX]; 127 // M4_ARRAY_DESC("LocalAutoEnable", "u8", M4_SIZE(1,13), M4_RANGE(0,1), "[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]",M4_DIGIT(0), M4_DYNAMIC(0), 0) 128 int LocalAutoEnable[ADRC_ENVLV_STEP_MAX]; 129 // M4_ARRAY_DESC("LocalAutoWeit", "f32", M4_SIZE(1,13), M4_RANGE(0,1), "[0.037477, 0.037477, 0.037477, 0.037477, 0.037477, 0.037477, 0.037477, 0.037477, 0.037477, 0.037477, 0.037477, 0.037477, 0.037477]",M4_DIGIT(5), M4_DYNAMIC(0), 0) 130 float LocalAutoWeit[ADRC_ENVLV_STEP_MAX]; 131 // M4_ARRAY_DESC("GlobalContrast", "f32", M4_SIZE(1,13), M4_RANGE(0,1), "[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]",M4_DIGIT(3), M4_DYNAMIC(0), 0) 132 float GlobalContrast[ADRC_ENVLV_STEP_MAX]; 133 // M4_ARRAY_DESC("LoLitContrast", "f32", M4_SIZE(1,13), M4_RANGE(0,1), "[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]",M4_DIGIT(3), M4_DYNAMIC(0), 0) 134 float LoLitContrast[ADRC_ENVLV_STEP_MAX]; 135 } LocalDataV2_t; 136 137 typedef struct localV11_s { 138 // M4_ARRAY_TABLE_DESC("LocalData", "array_table_ui", "none") 139 LocalDataV2_t LocalData; 140 // M4_NUMBER_DESC("curPixWeit", "f32", M4_RANGE(0,1), "0.37", M4_DIGIT(3)) 141 float curPixWeit; 142 // M4_NUMBER_DESC("preFrameWeit", "f32", M4_RANGE(0,1), "1.0", M4_DIGIT(3)) 143 float preFrameWeit; 144 // M4_NUMBER_DESC("Range_force_sgm", "f32", M4_RANGE(0,1), "0.0", M4_DIGIT(4)) 145 float Range_force_sgm; 146 // M4_NUMBER_DESC("Range_sgm_cur", "f32", M4_RANGE(0,1), "0.125", M4_DIGIT(4)) 147 float Range_sgm_cur; 148 // M4_NUMBER_DESC("Range_sgm_pre", "f32", M4_RANGE(0,1), "0.125", M4_DIGIT(4)) 149 float Range_sgm_pre; 150 // M4_NUMBER_DESC("Space_sgm_cur", "u16", M4_RANGE(0,4095), "4068", M4_DIGIT(0)) 151 int Space_sgm_cur; 152 // M4_NUMBER_DESC("Space_sgm_pre", "u16", M4_RANGE(0,4095), "3968", M4_DIGIT(0)) 153 int Space_sgm_pre; 154 } localV11_t; 155 156 typedef struct CalibDbV2_Adrc_V11_s { 157 // M4_BOOL_DESC("Enable", "1") 158 bool Enable; 159 // M4_ENUM_DESC("CtrlDataType", "CtrlDataType_t", "CTRLDATATYPE_ENVLV") 160 CtrlDataType_t CtrlDataType; 161 // M4_ARRAY_TABLE_DESC("DrcGain", "array_table_ui", "none") 162 AdrcGain_t DrcGain; 163 // M4_ARRAY_TABLE_DESC("HiLight", "array_table_ui", "none") 164 HighLight_t HiLight; 165 // M4_STRUCT_DESC("LocalSetting", "normal_ui_style") 166 localV11_t LocalSetting; 167 // M4_STRUCT_DESC("CompressSetting", "normal_ui_style") 168 Compress_t CompressSetting; 169 // M4_ARRAY_DESC("Scale_y", "u16", M4_SIZE(1,17), M4_RANGE(0, 2048), "[0,2,20,76,193,381,631,772,919,1066,1211,1479,1700,1863,1968,2024,2048]", M4_DIGIT(0), M4_DYNAMIC(0)) 170 int Scale_y[ADRC_Y_NUM]; 171 // M4_NUMBER_DESC("ByPassThr", "f32", M4_RANGE(0,1), "0", M4_DIGIT(4)) 172 float ByPassThr; 173 // M4_NUMBER_DESC("Edge_Weit", "f32", M4_RANGE(0,1), "1",M4_DIGIT(3)) 174 float Edge_Weit; 175 // M4_BOOL_DESC("OutPutLongFrame", "0") 176 bool OutPutLongFrame; 177 // M4_NUMBER_DESC("IIR_frame", "u8", M4_RANGE(1,1000), "2", M4_DIGIT(0)) 178 int IIR_frame; 179 // M4_NUMBER_DESC("damp", "f32", M4_RANGE(0,1), "0.9", M4_DIGIT(3)) 180 float damp; 181 } CalibDbV2_Adrc_V11_t; 182 183 typedef struct CalibDbV2_drc_V11_s { 184 // M4_STRUCT_DESC("DrcTuningPara", "normal_ui_style") 185 CalibDbV2_Adrc_V11_t DrcTuningPara; 186 } CalibDbV2_drc_V11_t; 187 188 // drc v12 189 typedef struct MotionData_s { 190 // M4_ARRAY_DESC("MotionCoef", "f32", M4_SIZE(1,13), M4_RANGE(0,1), "[0, 0.005, 0.01, 0.05, 0.1, 0.15, 0.2, 0.3, 0.4, 0.5, 0.6, 0.8, 1]",M4_DIGIT(2), M4_DYNAMIC(0), 0) 191 float MotionCoef[ADRC_ENVLV_STEP_MAX]; 192 // M4_ARRAY_DESC("MotionStr", "f32", M4_SIZE(1,13), M4_RANGE(0,1), "[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]",M4_DIGIT(3), M4_DYNAMIC(0), 0) 193 float MotionStr[ADRC_ENVLV_STEP_MAX]; 194 } MotionData_t; 195 196 typedef struct localV12_s { 197 // M4_ARRAY_TABLE_DESC("LocalData", "array_table_ui", "none") 198 LocalDataV2_t LocalData; 199 // M4_ARRAY_TABLE_DESC("MotionData", "array_table_ui", "none") 200 MotionData_t MotionData; 201 // M4_NUMBER_DESC("curPixWeit", "f32", M4_RANGE(0,1), "0.37", M4_DIGIT(3)) 202 float curPixWeit; 203 // M4_NUMBER_DESC("preFrameWeit", "f32", M4_RANGE(0,1), "1.0", M4_DIGIT(3)) 204 float preFrameWeit; 205 // M4_NUMBER_DESC("Range_force_sgm", "f32", M4_RANGE(0,1), "0.0", M4_DIGIT(4)) 206 float Range_force_sgm; 207 // M4_NUMBER_DESC("Range_sgm_cur", "f32", M4_RANGE(0,1), "0.125", M4_DIGIT(4)) 208 float Range_sgm_cur; 209 // M4_NUMBER_DESC("Range_sgm_pre", "f32", M4_RANGE(0,1), "0.125", M4_DIGIT(4)) 210 float Range_sgm_pre; 211 // M4_NUMBER_DESC("Space_sgm_cur", "u16", M4_RANGE(0,4095), "4068", M4_DIGIT(0)) 212 int Space_sgm_cur; 213 // M4_NUMBER_DESC("Space_sgm_pre", "u16", M4_RANGE(0,4095), "3968", M4_DIGIT(0)) 214 int Space_sgm_pre; 215 } localV12_t; 216 217 typedef struct HighLightDataV12_s { 218 // M4_ARRAY_DESC("CtrlData", "f32", M4_SIZE(1,13), M4_RANGE(0,10000000), "[0, 0.005, 0.01, 0.05, 0.1, 0.15, 0.2, 0.3, 0.4, 0.5, 0.6, 0.8, 1]",M4_DIGIT(3), M4_DYNAMIC(0), 0) 219 float CtrlData[ADRC_ENVLV_STEP_MAX]; 220 // M4_ARRAY_DESC("Strength", "f32", M4_SIZE(1,13), M4_RANGE(0,1), "[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]",M4_DIGIT(2), M4_DYNAMIC(0), 0) 221 float Strength[ADRC_ENVLV_STEP_MAX]; 222 // M4_ARRAY_DESC("gas_t", "f32", M4_SIZE(1,13), M4_RANGE(0,2), "[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]",M4_DIGIT(3), M4_DYNAMIC(0), 0) 223 float gas_t[ADRC_ENVLV_STEP_MAX]; 224 } HighLightDataV12_t; 225 226 typedef struct HighLightV12_s { 227 // M4_ARRAY_TABLE_DESC("HiLightData", "array_table_ui", "none") 228 HighLightDataV12_t HiLightData; 229 // M4_NUMBER_DESC("gas_l0", "u8", M4_RANGE(0,64), "24", M4_DIGIT(0)) 230 int gas_l0; 231 // M4_NUMBER_DESC("gas_l1", "u8", M4_RANGE(0,64), "10", M4_DIGIT(0)) 232 int gas_l1; 233 // M4_NUMBER_DESC("gas_l2", "u8", M4_RANGE(0,64), "10", M4_DIGIT(0)) 234 int gas_l2; 235 // M4_NUMBER_DESC("gas_l3", "u8", M4_RANGE(0,64), "5", M4_DIGIT(0)) 236 int gas_l3; 237 } HighLightV12_t; 238 239 typedef struct CalibDbV2_Adrc_V12_s { 240 // M4_BOOL_DESC("Enable", "1") 241 bool Enable; 242 // M4_ENUM_DESC("CtrlDataType", "CtrlDataType_t", "CTRLDATATYPE_ENVLV") 243 CtrlDataType_t CtrlDataType; 244 // M4_ARRAY_TABLE_DESC("DrcGain", "array_table_ui", "none") 245 AdrcGain_t DrcGain; 246 // M4_ARRAY_TABLE_DESC("HiLight", "normal_ui_style") 247 HighLightV12_t HiLight; 248 // M4_STRUCT_DESC("LocalSetting", "normal_ui_style") 249 localV12_t LocalSetting; 250 // M4_STRUCT_DESC("CompressSetting", "normal_ui_style") 251 Compress_t CompressSetting; 252 // M4_ARRAY_DESC("Scale_y", "u16", M4_SIZE(1,17), M4_RANGE(0, 2048), "[0,2,20,76,193,381,631,772,919,1066,1211,1479,1700,1863,1968,2024,2048]", M4_DIGIT(0), M4_DYNAMIC(0)) 253 int Scale_y[ADRC_Y_NUM]; 254 // M4_NUMBER_DESC("ByPassThr", "f32", M4_RANGE(0,1), "0", M4_DIGIT(4)) 255 float ByPassThr; 256 // M4_NUMBER_DESC("Edge_Weit", "f32", M4_RANGE(0,1), "1",M4_DIGIT(3)) 257 float Edge_Weit; 258 // M4_BOOL_DESC("OutPutLongFrame", "0") 259 bool OutPutLongFrame; 260 // M4_NUMBER_DESC("IIR_frame", "u8", M4_RANGE(1,1000), "2", M4_DIGIT(0)) 261 int IIR_frame; 262 // M4_NUMBER_DESC("damp", "f32", M4_RANGE(0,1), "0.9", M4_DIGIT(3)) 263 float damp; 264 } CalibDbV2_Adrc_V12_t; 265 266 typedef struct CalibDbV2_drc_V12_s { 267 // M4_STRUCT_DESC("DrcTuningPara", "normal_ui_style") 268 CalibDbV2_Adrc_V12_t DrcTuningPara; 269 } CalibDbV2_drc_V12_t; 270 271 typedef struct localV12Lite_s { 272 // M4_ARRAY_TABLE_DESC("LocalData", "array_table_ui", "none") 273 LocalDataV2_t LocalData; 274 // M4_ARRAY_TABLE_DESC("MotionData", "array_table_ui", "none") 275 MotionData_t MotionData; 276 // M4_NUMBER_DESC("curPixWeit", "f32", M4_RANGE(0,1), "0.37", M4_DIGIT(3)) 277 float curPixWeit; 278 // M4_NUMBER_DESC("Range_force_sgm", "f32", M4_RANGE(0,1), "0.0", M4_DIGIT(4)) 279 float Range_force_sgm; 280 // M4_NUMBER_DESC("Range_sgm_cur", "f32", M4_RANGE(0,1), "0.125", M4_DIGIT(4)) 281 float Range_sgm_cur; 282 // M4_NUMBER_DESC("Space_sgm_cur", "u16", M4_RANGE(0,4095), "4068", M4_DIGIT(0)) 283 int Space_sgm_cur; 284 } localV12Lite_t; 285 286 typedef struct CalibDbV2_Adrc_v12_lite_s { 287 // M4_BOOL_DESC("Enable", "1") 288 bool Enable; 289 // M4_ENUM_DESC("CtrlDataType", "CtrlDataType_t", "CTRLDATATYPE_ENVLV") 290 CtrlDataType_t CtrlDataType; 291 // M4_ARRAY_TABLE_DESC("DrcGain", "array_table_ui", "none") 292 AdrcGain_t DrcGain; 293 // M4_ARRAY_TABLE_DESC("HiLight", "normal_ui_style") 294 HighLightV12_t HiLight; 295 // M4_STRUCT_DESC("LocalSetting", "normal_ui_style") 296 localV12Lite_t LocalSetting; 297 // M4_STRUCT_DESC("CompressSetting", "normal_ui_style") 298 Compress_t CompressSetting; 299 // M4_ARRAY_DESC("Scale_y", "u16", M4_SIZE(1,17), M4_RANGE(0, 2048), "[0,2,20,76,193,381,631,772,919,1066,1211,1479,1700,1863,1968,2024,2048]", M4_DIGIT(0), M4_DYNAMIC(0)) 300 int Scale_y[ADRC_Y_NUM]; 301 // M4_NUMBER_DESC("ByPassThr", "f32", M4_RANGE(0,1), "0", M4_DIGIT(4)) 302 float ByPassThr; 303 // M4_NUMBER_DESC("Edge_Weit", "f32", M4_RANGE(0,1), "1",M4_DIGIT(3)) 304 float Edge_Weit; 305 // M4_BOOL_DESC("OutPutLongFrame", "0") 306 bool OutPutLongFrame; 307 // M4_NUMBER_DESC("IIR_frame", "u8", M4_RANGE(1,1000), "2", M4_DIGIT(0)) 308 int IIR_frame; 309 // M4_NUMBER_DESC("damp", "f32", M4_RANGE(0,1), "0.9", M4_DIGIT(3)) 310 float damp; 311 } CalibDbV2_Adrc_v12_lite_t; 312 313 typedef struct CalibDbV2_drc_v12_lite_s { 314 // M4_STRUCT_DESC("DrcTuningPara", "normal_ui_style") 315 CalibDbV2_Adrc_v12_lite_t DrcTuningPara; 316 } CalibDbV2_drc_v12_lite_t; 317 318 #endif 319