1*4882a593Smuzhiyun /* 2*4882a593Smuzhiyun 3*4882a593Smuzhiyun */ 4*4882a593Smuzhiyun 5*4882a593Smuzhiyun #ifndef DEMO_H_ 6*4882a593Smuzhiyun #define DEMO_H_ 7*4882a593Smuzhiyun //�ڴ˴���������ͷ�ļ� 8*4882a593Smuzhiyun #include "stdio.h" 9*4882a593Smuzhiyun #include "string.h" 10*4882a593Smuzhiyun #include "stdlib.h" 11*4882a593Smuzhiyun #include "math.h" 12*4882a593Smuzhiyun 13*4882a593Smuzhiyun #include "demo_define.h" 14*4882a593Smuzhiyun #include "tool.h" 15*4882a593Smuzhiyun #include "inital_alg_params_ynr.h" 16*4882a593Smuzhiyun #include "inital_alg_params_gic.h" 17*4882a593Smuzhiyun #include "inital_alg_params_lsc.h" 18*4882a593Smuzhiyun #include "inital_alg_params_lsc2.h" 19*4882a593Smuzhiyun #include "inital_alg_params_rk_shapren_HW.h" 20*4882a593Smuzhiyun #include "inital_alg_params_rk_edgefilter.h" 21*4882a593Smuzhiyun 22*4882a593Smuzhiyun #include "initial_alg_params_bayernr.h" 23*4882a593Smuzhiyun 24*4882a593Smuzhiyun #include "inital_alg_params_rkuvnr.h" 25*4882a593Smuzhiyun #include "inital_alg_params_rk_cnr.h" 26*4882a593Smuzhiyun 27*4882a593Smuzhiyun #include "inital_alg_params_mfnr.h" 28*4882a593Smuzhiyun #include "rk_aiq_awb_algo_v200.h" 29*4882a593Smuzhiyun #define FILE_RAW_EXT ".raw" 30*4882a593Smuzhiyun #define FILE_YUV_EXT ".yuv" 31*4882a593Smuzhiyun #define FILE_DAT_EXT ".dat" 32*4882a593Smuzhiyun 33*4882a593Smuzhiyun typedef enum YUV_FILE_FMT 34*4882a593Smuzhiyun { 35*4882a593Smuzhiyun F_YUV_420SP = 0x00, 36*4882a593Smuzhiyun F_YUV_420P = 0x01, 37*4882a593Smuzhiyun F_YUV_422I = 0x02, 38*4882a593Smuzhiyun F_YUV_422SP = 0x03, 39*4882a593Smuzhiyun F_YUV_422P = 0x04, 40*4882a593Smuzhiyun F_YUV_444I = 0x05, 41*4882a593Smuzhiyun 42*4882a593Smuzhiyun F_YUV_MAX = 0x10, 43*4882a593Smuzhiyun }YUV_FILE_FMT_t; 44*4882a593Smuzhiyun 45*4882a593Smuzhiyun typedef enum INPUT_FILE_FMT 46*4882a593Smuzhiyun { 47*4882a593Smuzhiyun F_IN_FMT_RAW = 0x00, 48*4882a593Smuzhiyun F_IN_FMT_YUV, 49*4882a593Smuzhiyun 50*4882a593Smuzhiyun 51*4882a593Smuzhiyun F_IN_FMT_MAX = 0x10, 52*4882a593Smuzhiyun }INPUT_FILE_FMT_t; 53*4882a593Smuzhiyun 54*4882a593Smuzhiyun 55*4882a593Smuzhiyun 56*4882a593Smuzhiyun //�˴�������� 57*4882a593Smuzhiyun typedef struct tag_config_com 58*4882a593Smuzhiyun { 59*4882a593Smuzhiyun int exp_info_en ; 60*4882a593Smuzhiyun int framenum ; 61*4882a593Smuzhiyun int rawwid ; 62*4882a593Smuzhiyun int rawhgt ; 63*4882a593Smuzhiyun int rawbit ; 64*4882a593Smuzhiyun int bayerfmt ; 65*4882a593Smuzhiyun int yuvbit ; 66*4882a593Smuzhiyun int yuvfmt ; 67*4882a593Smuzhiyun }tag_config_com; 68*4882a593Smuzhiyun 69*4882a593Smuzhiyun typedef struct tag_config_txt 70*4882a593Smuzhiyun { 71*4882a593Smuzhiyun tag_config_com config_com; 72*4882a593Smuzhiyun 73*4882a593Smuzhiyun int framecnt ; 74*4882a593Smuzhiyun int iso ; 75*4882a593Smuzhiyun int exptime[3] ; 76*4882a593Smuzhiyun int expgain[3] ; 77*4882a593Smuzhiyun int rgain ; 78*4882a593Smuzhiyun int bgain ; 79*4882a593Smuzhiyun int grgain ; 80*4882a593Smuzhiyun int gbgain ; 81*4882a593Smuzhiyun int dGain ; 82*4882a593Smuzhiyun int lux ; 83*4882a593Smuzhiyun }tag_config_txt; 84*4882a593Smuzhiyun 85*4882a593Smuzhiyun typedef struct tag_ST_DEMO_INPUT_PARAMS 86*4882a593Smuzhiyun { 87*4882a593Smuzhiyun int width; //rawͼ�� 88*4882a593Smuzhiyun int height; //rawͼ�� 89*4882a593Smuzhiyun int bayerPattern; //bayer pattern��ʽ:0--BGGR,1--GBRG,2--GRBG,3--RGGB 90*4882a593Smuzhiyun int yuvFmt; //yuv file ��ʽ: YUV_FILE_FMT_t 91*4882a593Smuzhiyun int bitValue; //raw����λ�� 92*4882a593Smuzhiyun int hdr_framenum; 93*4882a593Smuzhiyun float expGain[MAX_HDR_FRM_NUM]; // 94*4882a593Smuzhiyun float expTime[MAX_HDR_FRM_NUM]; //�ع�ʱ�� 95*4882a593Smuzhiyun int rGain; //wb rgain 96*4882a593Smuzhiyun int bGain; //wb bgain 97*4882a593Smuzhiyun int grGain; //wb grgain 98*4882a593Smuzhiyun int gbGain; //wb gbgain 99*4882a593Smuzhiyun int dGain; //wb gbgain 100*4882a593Smuzhiyun int fileFmt; //input file format:INPUT_FILE_FMT_t 101*4882a593Smuzhiyun int width_full; //rawͼ�� 102*4882a593Smuzhiyun int height_full; //rawͼ�� 103*4882a593Smuzhiyun int crop_width; 104*4882a593Smuzhiyun int crop_height; 105*4882a593Smuzhiyun int crop_xoffset; 106*4882a593Smuzhiyun int crop_yoffset; 107*4882a593Smuzhiyun 108*4882a593Smuzhiyun char pathFileCfg[256];//config�ļ�·�� 109*4882a593Smuzhiyun char pathRawData[256];//rawͼ·�� 110*4882a593Smuzhiyun char nameRawData[256];//rawͼ���� 111*4882a593Smuzhiyun char pathExpInfo[256];//exp_info�ļ�·�� 112*4882a593Smuzhiyun char pathReslut[256];//��������ļ���·�� 113*4882a593Smuzhiyun char suffix[256]; // ����ļ����ַ� 114*4882a593Smuzhiyun char pathRtlin[256]; //rtl in path 115*4882a593Smuzhiyun int skip_num; 116*4882a593Smuzhiyun int frame_end; 117*4882a593Smuzhiyun 118*4882a593Smuzhiyun int hdr_proc_mode; 119*4882a593Smuzhiyun int out_mode; 120*4882a593Smuzhiyun 121*4882a593Smuzhiyun 122*4882a593Smuzhiyun char dbgFlg[1024]; // must > ISP_CAP_MAX 123*4882a593Smuzhiyun int config_full; 124*4882a593Smuzhiyun 125*4882a593Smuzhiyun int exp_info_en; 126*4882a593Smuzhiyun int file_info_en; 127*4882a593Smuzhiyun FILE *fp_exp_info; 128*4882a593Smuzhiyun }ST_DEMO_INPUT_PARAMS; 129*4882a593Smuzhiyun 130*4882a593Smuzhiyun 131*4882a593Smuzhiyun 132*4882a593Smuzhiyun //�˴��������� 133*4882a593Smuzhiyun 134*4882a593Smuzhiyun 135*4882a593Smuzhiyun 136*4882a593Smuzhiyun #endif // DEMO_H_ 137