GK SDK 源码库: XMIPCLinuxV100R005C00SPC030 (kernel/tools/open_source excluded)

This commit is contained in:
lai
2026-09-06 03:52:57 +08:00
commit b1928b41c0
21813 changed files with 4413081 additions and 0 deletions
File diff suppressed because it is too large Load Diff
+191
View File
@@ -0,0 +1,191 @@
#ifndef __MEDIA_COMM_H__
#define __MEDIA_COMM_H__
#include <stdio.h>
#include "xmedia_type.h"
#include "xmedia_video_common.h"
#include "xmedia_sys.h"
#include "xmedia_vb.h"
#include "xmedia_vi.h"
#include "xmedia_isp.h"
#include "xmedia_ae.h"
#include "xmedia_awb.h"
#include "xmedia_venc.h"
#include "xmedia_vpss.h"
#include "xmedia_vgs.h"
#include "xmedia_svp.h"
#include "xmedia_tde.h"
#include "xmedia_pm.h"
#include "xmedia_cl.h"
#include "xmedia_mmz.h"
#include "xmedia_ive_common.h"
#include "xmedia_ive.h"
#include "xmedia_md.h"
#define MEDIA_PRINTF 1
#define MEDIA_ERROR 1
#define VI_MAX_BIND_PIPE 2
#define MAGIC_DATA_LEN 16
#define MEDIA_PRT(fmt...) \
do {\
if(MEDIA_PRINTF == 1)\
{\
printf("[%s]-%d: ", __FUNCTION__, __LINE__);\
printf(fmt);\
}\
}while(0)
#define MEDIA_ERR(fmt...) \
do {\
if(MEDIA_ERROR == 1)\
{\
printf("[%s]-%d: ", __FUNCTION__, __LINE__);\
printf(fmt);\
}\
}while(0)
#define SCENE_AUTO_BIN_PATH "/usr/param/pq.bin"
#define FPN_BIN_PATH "/usr/param/fpn.bin"
#define ISP_AINR_MODEL_PATH "/usr/param/neuron_network.xmm"
typedef enum media_comm_sensor_num {
MEDIA_SENSOR0 = 0,
MEDIA_SENSOR1,
} media_comm_sensor_num;
typedef struct media_comm_sys_config {
xmedia_sys_config sys_conf;
xmedia_vb_config vb_conf;
} media_comm_sys_config;
typedef struct media_comm_isp_cfg {
xmedia_s32 vi_dev;
xmedia_s32 isp_pipe;
media_comm_sensor_num sns_num;
xmedia_bool en_quickstart;
} media_comm_isp_cfg;
typedef struct media_comm_vi_pipe_info {
xmedia_vi_pipe_config vi_pipe_cfg;
xmedia_vi_chn_config vi_chn_cfg;
xmedia_bool en_vi_cap_lowdelay;
xmedia_vi_lowdelay_attr vi_cap_lowdelay;
xmedia_bool en_vi_proc_lowdelay;
xmedia_vi_lowdelay_attr vi_proc_lowdelay;
} media_comm_vi_pipe_info;
typedef struct media_comm_vi_pipe_param {
xmedia_s32 vi_pipe_work_num;
xmedia_s32 vi_pipe[VI_MAX_BIND_PIPE];
media_comm_vi_pipe_info vi_pipe_info[VI_MAX_BIND_PIPE];
} media_comm_vi_pipe_param;
typedef struct media_comm_vi_grp_param {
xmedia_s32 vi_grp_work_num;
xmedia_s32 vi_grp[VI_MAX_GRP_NUM];
xmedia_vi_grp_config vi_grp_cfg[VI_MAX_GRP_NUM];
} media_comm_vi_grp_param;
typedef struct media_comm_vi_cfg {
xmedia_s32 vi_dev_work_num;
xmedia_s32 vi_dev[VI_MAX_DEV_NUM];
xmedia_bool en_quickstart[VI_MAX_DEV_NUM];
xmedia_vi_dev_mipi_phy_config mipi_cfg[VI_MAX_DEV_NUM];
xmedia_vi_dev_config vi_dev_cfg[VI_MAX_DEV_NUM];
media_comm_vi_pipe_param vi_pipe_param[VI_MAX_DEV_NUM];
media_comm_vi_grp_param vi_grp_param;
} media_comm_vi_cfg;
typedef struct media_comm_vpss_ochn_info {
xmedia_s32 vpss_ochn_work_num;
xmedia_s32 vpss_ochn[VPSS_MAX_PHY_OCHN_NUM];
xmedia_vpss_ochn_config vpss_ochn_cfg[VPSS_MAX_PHY_OCHN_NUM];
xmedia_vpss_low_delay_attr vpss_lowdelay_cfg[VPSS_MAX_PHY_OCHN_NUM];
xmedia_video_wrap_attr vpss_wrap_cfg[VPSS_MAX_PHY_OCHN_NUM];
} media_comm_vpss_ochn_info;
typedef struct media_comm_vpss_cfg {
xmedia_s32 vpss_pipe_work_num;
xmedia_s32 vpss_pipe[VPSS_MAX_PIPE_NUM];
xmedia_vpss_pipe_config pipe_cfg[VPSS_MAX_PIPE_NUM];
media_comm_vpss_ochn_info vpss_ochn_info[VPSS_MAX_PIPE_NUM];
} media_comm_vpss_cfg;
typedef struct media_comm_venc_cfg {
xmedia_u32 max_pic_width;
xmedia_u32 max_pic_height;
xmedia_u32 profile;
xmedia_payload_type en_type;
xmedia_venc_rc_mode rc_mode;
xmedia_bool rcn_ref_share_buf;
xmedia_u32 src_frame_rate;
xmedia_u32 dst_frame_rate;
xmedia_venc_gop_attr venc_gop_attr;
} media_comm_venc_cfg;
typedef struct media_comm_isp_ainr_cfg {
xmedia_cl_context cl_ctx;
xmedia_u32 cl_device_num;
xmedia_cl_device_id *cl_device;
xmedia_u64 work_space_phyaddr;
xmedia_void *work_space_viraddr;
} media_comm_isp_ainr_cfg;
typedef struct media_comm_isp_sensor_info {
xmedia_video_size sns_max_size;
xmedia_float frame_rate;
} media_comm_isp_sensor_info;
typedef struct vi_info {
xmedia_s32 enable;
xmedia_s32 pipe;
} bin_vi_info;
typedef struct module_info {
bin_vi_info vi;
} bin_module_info;
static const xmedia_u8 magic_isp[MAGIC_DATA_LEN] = "ISP_BIN";
xmedia_s32 media_comm_sys_init(media_comm_sys_config* sys_cfg);
xmedia_s32 media_comm_sys_exit();
xmedia_s32 media_comm_media_init();
xmedia_s32 media_comm_media_exit();
xmedia_s32 media_comm_mem_open(xmedia_void);
xmedia_void media_comm_mem_close(xmedia_void);
xmedia_void media_comm_set_reg(xmedia_u32 addr,xmedia_u32 value);
xmedia_s32 media_comm_get_reg(xmedia_u32 u32Addr);
xmedia_u64 media_comm_get_cur_time();
xmedia_s32 media_comm_vi_bind_vpss(xmedia_s32 vi_pipe, xmedia_s32 vi_chn, xmedia_s32 vpss_pipe, xmedia_s32 vpss_ichn);
xmedia_s32 media_comm_vi_unbind_vpss(xmedia_s32 vi_pipe, xmedia_s32 vi_chn, xmedia_s32 vpss_pipe, xmedia_s32 vpss_ichn);
xmedia_s32 media_comm_sys_vpss_bind_venc(xmedia_s32 vpss_pipe, xmedia_s32 vpss_ochn, xmedia_s32 venc_chn);
xmedia_s32 media_comm_sys_vpss_unbind_venc(xmedia_s32 vpss_pipe, xmedia_s32 vpss_ochn, xmedia_s32 venc_chn);
xmedia_s32 media_comm_isp_get_sensor_info(media_comm_sensor_num sns_num, media_comm_isp_sensor_info *sns_info);
xmedia_s32 media_comm_isp_set_sensor_info(media_comm_sensor_num sns_num, media_comm_isp_sensor_info *sns_info);
xmedia_s32 media_comm_isp_init(media_comm_isp_cfg media_isp_cfg);
xmedia_s32 media_comm_isp_exit(xmedia_s32 pipe, media_comm_sensor_num sns_num);
xmedia_s32 media_comm_isp_start(xmedia_s32 pipe, xmedia_bool en_start);
xmedia_s32 media_comm_isp_stop(xmedia_s32 pipe, xmedia_bool en_start);
xmedia_s32 media_comm_isp_get_mipi_rate(xmedia_s32 isp_pipe);
xmedia_s32 media_comm_vi_start(media_comm_vi_cfg* vi_cfg);
xmedia_s32 media_comm_vi_stop(media_comm_vi_cfg* vi_cfg);
xmedia_s32 media_comm_vpss_start(media_comm_vpss_cfg* vpss_cfg);
xmedia_s32 media_comm_vpss_stop(media_comm_vpss_cfg* vpss_cfg);
xmedia_s32 media_comm_venc_start(xmedia_s32 venc_chn, media_comm_venc_cfg* venc_cfg);
xmedia_s32 media_comm_venc_stop(xmedia_s32 venc_chn);
xmedia_s32 media_comm_venc_get_max_chn_size(xmedia_s32 venc_chn);
xmedia_s32 media_comm_isp_ainr_init(const xmedia_char* ainr_model_name);
xmedia_s32 media_comm_isp_ainr_exit();
xmedia_s32 media_comm_isp_ainr_load_model(xmedia_s32 isp_pipe, xmedia_s32 model_num, xmedia_char** ainr_model_name);
xmedia_s32 media_comm_isp_ainr_unload_model(xmedia_s32 isp_pipe);
xmedia_s32 media_comm_isp_ainr_enable(xmedia_s32 isp_pipe);
xmedia_s32 media_comm_scene_auto_enable(bin_module_info *module);
xmedia_s32 media_comm_fpn_enable(xmedia_s32 isp_pipe, xmedia_s32 width, xmedia_s32 height);
#endif /*__MEDIA_COMM_H__*/
+389
View File
@@ -0,0 +1,389 @@
#ifndef __MEDIA_PARAM_H__
#define __MEDIA_PARAM_H__
#include "media_comm.h"
/****************************************************
***************support sensor list*******************
SMART_SC485SL_MIPI_4M_30FPS_2LANE_12BIT
SMART_SC485SL_MIPI_4M_30FPS_4LANE_12BIT
SMART_SC485SL_MIPI_4M_60FPS_4LANE_12BIT
SMART_SC235HAI_MIPI_2M_2LANE_30FPS_10BIT
*****************************************************/
#ifdef SMART_SC485SL_MIPI_4M_30FPS_2LANE_12BIT
static xmedia_isp_config MEDIA_COMM_ISP_CFG_SENSOR0 = {
.fps = 30,
.size = {
.width = 2560,
.height = 1440,
},
.bayer_fmt = XMEDIA_VIDEO_BAYER_FMT_BGGR,
.pixel_fmt = XMEDIA_VIDEO_PIXEL_FMT_RAW,
.wdr_mode = XMEDIA_VIDEO_WDR_MODE_NONE,
.mode_config = {
.work_mode = XMEDIA_ISP_WORK_MODE_MASTER,
.master_mode = {
.blend_stat_enable = XMEDIA_FALSE,
.slave_num = 0,
},
},
};
static xmedia_vi_dev_config MEDIA_COMM_VI_DEV_CFG_SENSOR0 = {
.intf_type = XMEDIA_INTF_TYPE_MIPI_CSI,
.mipi_attr = {
.input_data_type = XMEDIA_INTF_MIPI_CSI_DATA_TYPE_RAW_12BIT,
.lane_mode = XMEDIA_VI_MIPI_LANE_DIVIDE_MODE_2_LANE,
.wdr_format = XMEDIA_VIDEO_WDR_FMT_NONE,
},
};
static xmedia_vi_pipe_config MEDIA_COMM_VI_PIPE_CFG_SENSOR0 = {
.bit_width = XMEDIA_VIDEO_DATA_WIDTH_12,
.compress_mode = XMEDIA_VIDEO_COMPRESS_MODE_NONE,
.frm_rate_ctrl = {
.src_frm_rate = -1,
.dst_frm_rate = -1,
},
.isp_bypass = XMEDIA_FALSE,
.pipe_bypass_mode = XMEDIA_VI_PIPE_BYPASS_NONE,
.pix_fmt = XMEDIA_VIDEO_PIXEL_FMT_RAW,
.gdc_en = XMEDIA_FALSE, //default false
.in_size = {
.width = 2560,
.height = 1440,
},
.bnr_attr = {
.bnr_en = XMEDIA_TRUE,
.compress_mode = XMEDIA_VIDEO_COMPRESS_MODE_LINE,
},
.stnr_attr = {
.stnr_en = XMEDIA_TRUE,
.compress_mode = XMEDIA_VIDEO_COMPRESS_MODE_LINE,
},
};
static xmedia_vi_chn_config MEDIA_COMM_VI_CHN_CFG_SENSOR0 = {
.compress_mode = XMEDIA_VIDEO_COMPRESS_MODE_NONE,
.dynamic_range = XMEDIA_VIDEO_DYNAMIC_RANGE_SDR,
.flip_en = XMEDIA_FALSE,
.mirror_en = XMEDIA_FALSE,
.pix_fmt = XMEDIA_VIDEO_PIXEL_FMT_YVU_SEMIPLANAR_420,
.video_fmt = XMEDIA_VIDEO_FMT_LINEAR,
.depth = 0,
.frm_rate_ctrl = {
.src_frm_rate = -1,
.dst_frm_rate = -1,
},
.out_size = {
.width = 2560,
.height = 1440,
},
};
#endif
#ifdef SMART_SC485SL_MIPI_4M_30FPS_4LANE_12BIT
static const xmedia_s32 sc485sl_width = 2688;
static const xmedia_s32 sc485sl_height = 1520;
static xmedia_isp_config MEDIA_COMM_ISP_CFG_SENSOR0 = {
.fps = 12,
.size = {
.width = sc485sl_width,
.height = sc485sl_height,
},
.bayer_fmt = XMEDIA_VIDEO_BAYER_FMT_BGGR,
.pixel_fmt = XMEDIA_VIDEO_PIXEL_FMT_RAW,
.wdr_mode = XMEDIA_VIDEO_WDR_MODE_NONE,
.mode_config = {
.work_mode = XMEDIA_ISP_WORK_MODE_MASTER,
.master_mode = {
.blend_stat_enable = XMEDIA_FALSE,
.slave_num = 0,
},
},
};
static xmedia_vi_dev_config MEDIA_COMM_VI_DEV_CFG_SENSOR0 = {
.intf_type = XMEDIA_INTF_TYPE_MIPI_CSI,
.mipi_attr = {
.input_data_type = XMEDIA_INTF_MIPI_CSI_DATA_TYPE_RAW_12BIT,
.lane_mode = XMEDIA_VI_MIPI_LANE_DIVIDE_MODE_4_LANE,
.wdr_format = XMEDIA_VIDEO_WDR_FMT_NONE,
},
};
static xmedia_vi_pipe_config MEDIA_COMM_VI_PIPE_CFG_SENSOR0 = {
.bit_width = XMEDIA_VIDEO_DATA_WIDTH_12,
.compress_mode = XMEDIA_VIDEO_COMPRESS_MODE_NONE,
.frm_rate_ctrl = {
.src_frm_rate = -1,
.dst_frm_rate = -1,
},
.isp_bypass = XMEDIA_FALSE,
.pipe_bypass_mode = XMEDIA_VI_PIPE_BYPASS_NONE,
.pix_fmt = XMEDIA_VIDEO_PIXEL_FMT_RAW,
.gdc_en = XMEDIA_FALSE, //default false
.in_size = {
.width = sc485sl_width,
.height = sc485sl_height,
},
.bnr_attr = {
.bnr_en = XMEDIA_TRUE,
.compress_mode = XMEDIA_VIDEO_COMPRESS_MODE_LINE,
},
.stnr_attr = {
.stnr_en = XMEDIA_TRUE,
.compress_mode = XMEDIA_VIDEO_COMPRESS_MODE_LINE,
},
};
static xmedia_vi_chn_config MEDIA_COMM_VI_CHN_CFG_SENSOR0 = {
.compress_mode = XMEDIA_VIDEO_COMPRESS_MODE_NONE,
.dynamic_range = XMEDIA_VIDEO_DYNAMIC_RANGE_SDR,
.flip_en = XMEDIA_FALSE,
.mirror_en = XMEDIA_FALSE,
.pix_fmt = XMEDIA_VIDEO_PIXEL_FMT_YVU_SEMIPLANAR_420,
.video_fmt = XMEDIA_VIDEO_FMT_LINEAR,
.depth = 0,
.frm_rate_ctrl = {
.src_frm_rate = -1,
.dst_frm_rate = -1,
},
.out_size = {
.width = sc485sl_width,
.height = sc485sl_height,
},
};
#endif
#ifdef SMART_SC485SL_MIPI_4M_60FPS_4LANE_12BIT
static const xmedia_s32 sc485sl_width = 2560;
static const xmedia_s32 sc485sl_height = 1440;
static xmedia_isp_config MEDIA_COMM_ISP_CFG_SENSOR0 = {
.fps = 30,
.size = {
.width = sc485sl_width,
.height = sc485sl_height,
},
.bayer_fmt = XMEDIA_VIDEO_BAYER_FMT_BGGR,
.pixel_fmt = XMEDIA_VIDEO_PIXEL_FMT_RAW,
.wdr_mode = XMEDIA_VIDEO_WDR_MODE_NONE,
.mode_config = {
.work_mode = XMEDIA_ISP_WORK_MODE_MASTER,
.master_mode = {
.blend_stat_enable = XMEDIA_FALSE,
.slave_num = 0,
},
},
};
static xmedia_vi_dev_config MEDIA_COMM_VI_DEV_CFG_SENSOR0 = {
.intf_type = XMEDIA_INTF_TYPE_MIPI_CSI,
.mipi_attr = {
.input_data_type = XMEDIA_INTF_MIPI_CSI_DATA_TYPE_RAW_12BIT,
.lane_mode = XMEDIA_VI_MIPI_LANE_DIVIDE_MODE_4_LANE,
.wdr_format = XMEDIA_VIDEO_WDR_FMT_NONE,
},
};
static xmedia_vi_pipe_config MEDIA_COMM_VI_PIPE_CFG_SENSOR0 = {
.bit_width = XMEDIA_VIDEO_DATA_WIDTH_12,
.compress_mode = XMEDIA_VIDEO_COMPRESS_MODE_NONE,
.frm_rate_ctrl = {
.src_frm_rate = -1,
.dst_frm_rate = -1,
},
.isp_bypass = XMEDIA_FALSE,
.pipe_bypass_mode = XMEDIA_VI_PIPE_BYPASS_NONE,
.pix_fmt = XMEDIA_VIDEO_PIXEL_FMT_RAW,
.gdc_en = XMEDIA_FALSE, //default false
.in_size = {
.width = sc485sl_width,
.height = sc485sl_height,
},
.bnr_attr = {
.bnr_en = XMEDIA_TRUE,
.compress_mode = XMEDIA_VIDEO_COMPRESS_MODE_LINE,
},
.stnr_attr = {
.stnr_en = XMEDIA_TRUE,
.compress_mode = XMEDIA_VIDEO_COMPRESS_MODE_LINE,
},
};
static xmedia_vi_chn_config MEDIA_COMM_VI_CHN_CFG_SENSOR0 = {
.compress_mode = XMEDIA_VIDEO_COMPRESS_MODE_NONE,
.dynamic_range = XMEDIA_VIDEO_DYNAMIC_RANGE_SDR,
.flip_en = XMEDIA_FALSE,
.mirror_en = XMEDIA_FALSE,
.pix_fmt = XMEDIA_VIDEO_PIXEL_FMT_YVU_SEMIPLANAR_420,
.video_fmt = XMEDIA_VIDEO_FMT_LINEAR,
.depth = 0,
.frm_rate_ctrl = {
.src_frm_rate = -1,
.dst_frm_rate = -1,
},
.out_size = {
.width = sc485sl_width,
.height = sc485sl_height,
},
};
#endif
#ifdef SMART_SC235HAI_MIPI_2M_2LANE_30FPS_10BIT
static xmedia_isp_config MEDIA_COMM_ISP_CFG_SENSOR0 = {
.fps = 30,
.size = {
.width = 1920,
.height = 1080,
},
.bayer_fmt = XMEDIA_VIDEO_BAYER_FMT_BGGR,
.pixel_fmt = XMEDIA_VIDEO_PIXEL_FMT_RAW,
.wdr_mode = XMEDIA_VIDEO_WDR_MODE_NONE,
.mode_config = {
.work_mode = XMEDIA_ISP_WORK_MODE_MASTER,
.master_mode = {
.blend_stat_enable = XMEDIA_FALSE,
.slave_num = 0,
},
},
};
static xmedia_vi_dev_config MEDIA_COMM_VI_DEV_CFG_SENSOR0 = {
.intf_type = XMEDIA_INTF_TYPE_MIPI_CSI,
.mipi_attr = {
.input_data_type = XMEDIA_INTF_MIPI_CSI_DATA_TYPE_RAW_10BIT,
.lane_mode = XMEDIA_VI_MIPI_LANE_DIVIDE_MODE_2_LANE,
.wdr_format = XMEDIA_VIDEO_WDR_FMT_NONE,
},
};
static xmedia_vi_pipe_config MEDIA_COMM_VI_PIPE_CFG_SENSOR0 = {
.bit_width = XMEDIA_VIDEO_DATA_WIDTH_10,
.compress_mode = XMEDIA_VIDEO_COMPRESS_MODE_NONE,
.frm_rate_ctrl = {
.src_frm_rate = -1,
.dst_frm_rate = -1,
},
.isp_bypass = XMEDIA_FALSE,
.pipe_bypass_mode = XMEDIA_VI_PIPE_BYPASS_NONE,
.pix_fmt = XMEDIA_VIDEO_PIXEL_FMT_RAW,
.gdc_en = XMEDIA_FALSE, //default false
.in_size = {
.width = 1920,
.height = 1080,
},
.bnr_attr = {
.bnr_en = XMEDIA_TRUE,
.compress_mode = XMEDIA_VIDEO_COMPRESS_MODE_LINE,
},
.stnr_attr = {
.stnr_en = XMEDIA_TRUE,
.compress_mode = XMEDIA_VIDEO_COMPRESS_MODE_LINE,
},
};
static xmedia_vi_chn_config MEDIA_COMM_VI_CHN_CFG_SENSOR0 = {
.compress_mode = XMEDIA_VIDEO_COMPRESS_MODE_NONE,
.dynamic_range = XMEDIA_VIDEO_DYNAMIC_RANGE_SDR,
.flip_en = XMEDIA_FALSE,
.mirror_en = XMEDIA_FALSE,
.pix_fmt = XMEDIA_VIDEO_PIXEL_FMT_YVU_SEMIPLANAR_420,
.video_fmt = XMEDIA_VIDEO_FMT_LINEAR,
.depth = 0,
.frm_rate_ctrl = {
.src_frm_rate = -1,
.dst_frm_rate = -1,
},
.out_size = {
.width = 1920,
.height = 1080,
},
};
#endif
#ifdef OMNIVISION_OS04D10_MIPI_4M_30FPS_10BIT
static xmedia_isp_config MEDIA_COMM_ISP_CFG_SENSOR0 = {
.fps = 25,
.size = {
.width = 2560,
.height = 1440,
},
.bayer_fmt = XMEDIA_VIDEO_BAYER_FMT_BGGR,
.pixel_fmt = XMEDIA_VIDEO_PIXEL_FMT_RAW,
.wdr_mode = XMEDIA_VIDEO_WDR_MODE_NONE,
.mode_config = {
.work_mode = XMEDIA_ISP_WORK_MODE_MASTER,
.master_mode = {
.blend_stat_enable = XMEDIA_FALSE,
.slave_num = 0,
},
},
};
static xmedia_vi_dev_config MEDIA_COMM_VI_DEV_CFG_SENSOR0 = {
.intf_type = XMEDIA_INTF_TYPE_MIPI_CSI,
.mipi_attr = {
.input_data_type = XMEDIA_INTF_MIPI_CSI_DATA_TYPE_RAW_10BIT,
.lane_mode = XMEDIA_VI_MIPI_LANE_DIVIDE_MODE_2_LANE,
.wdr_format = XMEDIA_VIDEO_WDR_FMT_NONE,
},
};
static xmedia_vi_pipe_config MEDIA_COMM_VI_PIPE_CFG_SENSOR0 = {
.bit_width = XMEDIA_VIDEO_DATA_WIDTH_10,
.compress_mode = XMEDIA_VIDEO_COMPRESS_MODE_NONE,
.frm_rate_ctrl = {
.src_frm_rate = -1,
.dst_frm_rate = -1,
},
.isp_bypass = XMEDIA_FALSE,
.pipe_bypass_mode = XMEDIA_VI_PIPE_BYPASS_NONE,
.pix_fmt = XMEDIA_VIDEO_PIXEL_FMT_RAW,
.gdc_en = XMEDIA_FALSE, //default false
.in_size = {
.width = 2560,
.height = 1440,
},
.bnr_attr = {
.bnr_en = XMEDIA_TRUE,
.compress_mode = XMEDIA_VIDEO_COMPRESS_MODE_LINE,
},
.stnr_attr = {
.stnr_en = XMEDIA_TRUE,
.compress_mode = XMEDIA_VIDEO_COMPRESS_MODE_LINE,
},
};
static xmedia_vi_chn_config MEDIA_COMM_VI_CHN_CFG_SENSOR0 = {
.compress_mode = XMEDIA_VIDEO_COMPRESS_MODE_NONE,
.dynamic_range = XMEDIA_VIDEO_DYNAMIC_RANGE_SDR,
.flip_en = XMEDIA_FALSE,
.mirror_en = XMEDIA_FALSE,
.pix_fmt = XMEDIA_VIDEO_PIXEL_FMT_YVU_SEMIPLANAR_420,
.video_fmt = XMEDIA_VIDEO_FMT_LINEAR,
.depth = 0,
.frm_rate_ctrl = {
.src_frm_rate = -1,
.dst_frm_rate = -1,
},
.out_size = {
.width = 2560,
.height = 1440,
},
};
#endif
#endif