ISVP-SDK  3.12.0
Ingenic Smart Video Platform SDK
Data Structures | Typedefs | Enumerations | Functions

Image signal processing unit. More...

Collaboration diagram for IMP_ISP:

Data Structures

struct  IMPI2CInfo
 Defines I2C bus information. More...
 
struct  IMPSPIInfo
 Defines SPI bus information. More...
 
struct  IMPSensorInfo
 Defines the information of sensor. More...
 
struct  IMPISPDrcAttr
 ISP DRC arrribute. More...
 
struct  IMPISPSinterDenoiseAttr
 ISP Spatial noise reduction module attribute parameter. More...
 
struct  imp_isp_temper_denoise_attr
 ISP noise reduction module attribute for a certain amount of time. More...
 
struct  IMPISPGamma
 Defines the attribute of gamma. More...
 
union  isp_core_expr_attr
 exposure parameters. More...
 
union  isp_core_ae_roi_select
 exposure region of interest. More...
 
struct  isp_core_wb_attr
 White balance attributes. More...
 
struct  isp_core_rgb_coefft_wb_attr
 
struct  IMPISPEVAttr
 attributes of ISP exposure value. More...
 
struct  IMPISPITAttr
 Integration time parameters. More...
 
struct  IMPISPWeight
 Weight information. More...
 
struct  IMPISPAEHist
 AE statistics. More...
 
struct  IMPISPAEZone
 
struct  isp_core_awb_sta_info
 AWB statistics. More...
 
struct  IMPISPAWBHist
 AWB statictis parameters. More...
 
struct  isp_core_wb_zone_info
 
struct  IMPISPAWBZone
 
struct  isp_core_af_sta_info
 AF statistics. More...
 
struct  IMPISPAFHist
 AF statistics. More...
 
struct  IMPISPWaitFrameAttr
 ISP Wait Frame paramater。 More...
 

Typedefs

typedef struct imp_isp_temper_denoise_attr IMPISPTemperDenoiseAttr
 ISP noise reduction module attribute for a certain amount of time.
 
typedef union isp_core_expr_attr IMPISPExpr
 exposure parameters.
 
typedef union isp_core_ae_roi_select IMPISPAERoi
 exposure region of interest.
 
typedef struct isp_core_wb_attr IMPISPWB
 White balance attributes.
 
typedef struct isp_core_rgb_coefft_wb_attr IMPISPCOEFFTWB
 

Enumerations

enum  IMPSensorControlBusType { TX_SENSOR_CONTROL_INTERFACE_I2C = 1, TX_SENSOR_CONTROL_INTERFACE_SPI }
 The enum is types of sensor control bus. More...
 
enum  IMPISPTuningOpsMode { IMPISP_TUNING_OPS_MODE_DISABLE, IMPISP_TUNING_OPS_MODE_ENABLE, IMPISP_TUNING_OPS_MODE_BUTT }
 
enum  IMPISPTuningOpsType { IMPISP_TUNING_OPS_TYPE_AUTO, IMPISP_TUNING_OPS_TYPE_MANUAL, IMPISP_TUNING_OPS_TYPE_RANGE, IMPISP_TUNING_OPS_TYPE_BUTT }
 
enum  IMPISPAntiflickerAttr { IMPISP_ANTIFLICKER_DISABLE, IMPISP_ANTIFLICKER_50HZ, IMPISP_ANTIFLICKER_60HZ, IMPISP_ANTIFLICKER_BUTT }
 ISP Anti-flicker property parameter structure. More...
 
enum  IMPISPDrcMode {
  IMPISP_DRC_MANUAL, IMPISP_DRC_UNLIMIT, IMPISP_DRC_HIGH, IMPISP_DRC_MEDIUM,
  IMPISP_DRC_LOW, IMPISP_DRC_DISABLE, IMPISP_DRC_RANGE
}
 ISP Dynamic range compression (DRC) mode. More...
 
enum  IMPISPTemperMode { IMPISP_TEMPER_DISABLE, IMPISP_TEMPER_AUTO, IMPISP_TEMPER_MANUAL, IMPISP_TEMPER_RANGE }
 ISP noise reduction module operation mode for a certain amount of time. More...
 
enum  IMPISPSceneMode {
  IMPISP_SCENE_MODE_AUTO = 0, IMPISP_SCENE_MODE_BEACH_SNOW = 2, IMPISP_SCENE_MODE_CANDLE_LIGHT = 3, IMPISP_SCENE_MODE_DAWN_DUSK = 4,
  IMPISP_SCENE_MODE_FALL_COLORS = 5, IMPISP_SCENE_MODE_FIREWORKS = 6, IMPISP_SCENE_MODE_LANDSCAPE = 7, IMPISP_SCENE_MODE_NIGHT = 8,
  IMPISP_SCENE_MODE_PARTY_INDOOR = 9, IMPISP_SCENE_MODE_SPORTS = 11, IMPISP_SCENE_MODE_SUNSET = 12, IMPISP_SCENE_MODE_TEXT = 13,
  IMPISP_SCENE_MODE_NIGHT_PORTRAIT = 14
}
 Synthetical expansion function, scene mode selection. More...
 
enum  IMPISPColorfxMode {
  IMPISP_COLORFX_MODE_AUTO = 0, IMPISP_COLORFX_MODE_BW = 1, IMPISP_COLORFX_MODE_SEPIA = 2, IMPISP_COLORFX_MODE_NEGATIVE = 3,
  IMPISP_COLORFX_MODE_VIVID = 9
}
 ISP synthetical expansion function, color mode selection. More...
 
enum  IMPISPRunningMode { IMPISP_RUNNING_MODE_DAY = 0, IMPISP_RUNNING_MODE_NIGHT = 1, IMPISP_RUNNING_MODE_BUTT }
 Defines the enumeration of ISP working mode. More...
 
enum  IMPISPAeStrategy { IMPISP_AE_STRATEGY_SPLIT_BALANCED = 0, IMPISP_AE_STRATEGY_SPLIT_INTEGRATION_PRIORITY = 1, IMPISP_AE_STRATEGY_BUTT }
 Defines the enumeration of ISP's auto exposure strategy. More...
 
enum  isp_core_expr_mode { ISP_CORE_EXPR_MODE_AUTO, ISP_CORE_EXPR_MODE_MANUAL }
 exposure mode. More...
 
enum  isp_core_expr_unit { ISP_CORE_EXPR_UNIT_LINE, ISP_CORE_EXPR_UNIT_US }
 exposure unit. More...
 
enum  isp_core_wb_mode {
  ISP_CORE_WB_MODE_AUTO = 0, ISP_CORE_WB_MODE_MANUAL, ISP_CORE_WB_MODE_DAY_LIGHT, ISP_CORE_WB_MODE_CLOUDY,
  ISP_CORE_WB_MODE_INCANDESCENT, ISP_CORE_WB_MODE_FLOURESCENT, ISP_CORE_WB_MODE_TWILIGHT, ISP_CORE_WB_MODE_SHADE,
  ISP_CORE_WB_MODE_WARM_FLOURESCENT
}
 White balance mode. More...
 
enum  IMPISPAntiFogAttr { ANTIFOG_DISABLE, ANTIFOG_STRONG, ANTIFOG_MEDIUM, ANTIFOG_WEAK }
 ISP antifog working mode. More...
 
enum  IMPISPTuningMode { IMPISP_TUNING_MODE_AUTO, IMPISP_TUNING_MODE_MANUAL, IMPISP_TUNING_MODE_RANGE, IMPISP_TUNING_MODE_BUTT }
 Mode selection. More...
 
enum  isp_core_awb_stats_mode { IMPISP_AWB_STATS_LEGACY_MODE = 0, IMPISP_AWB_STATS_CURRENT_MODE = 1, IMPISP_AWB_STATS_MODE_BUTT }
 AWB statictis mode. More...
 
enum  IMPISPMeshShadingScale { IMPISP_SHAD_SCALE_L, IMPISP_SHAD_SCALE_M, IMPISP_SHAD_SCALE_H, IMPISP_SHAD_SCALE_U }
 

Functions

int IMP_ISP_Open (void)
 Open the ISP module. More...
 
int IMP_ISP_Close (void)
 Close the ISP module. More...
 
int IMP_ISP_AddSensor (IMPSensorInfo *pinfo)
 Add a sensor into ISP module. More...
 
int IMP_ISP_DelSensor (IMPSensorInfo *pinfo)
 Delete a sensor from ISP module. More...
 
int IMP_ISP_EnableSensor (void)
 Enable the registered sensor. More...
 
int IMP_ISP_DisableSensor (void)
 Disable the running sensor. More...
 
int IMP_ISP_SetSensorRegister (uint32_t reg, uint32_t value)
 Set the value of a register of a sensor. More...
 
int IMP_ISP_GetSensorRegister (uint32_t reg, uint32_t *value)
 Obtain a value of the register of sensor. More...
 
int IMP_ISP_EnableTuning (void)
 Enable effect debugging of ISP. More...
 
int IMP_ISP_DisableTuning (void)
 Disable effect debugging of ISP. More...
 
int IMP_ISP_Tuning_SetSensorFPS (uint32_t fps_num, uint32_t fps_den)
 Set the FPS of enabled sensor. More...
 
int IMP_ISP_Tuning_GetSensorFPS (uint32_t *fps_num, uint32_t *fps_den)
 Get the FPS of enabled sensor. More...
 
int IMP_ISP_Tuning_SetAntiFlickerAttr (IMPISPAntiflickerAttr attr)
 Set the antiflicker parameter. More...
 
int IMP_ISP_Tuning_GetAntiFlickerAttr (IMPISPAntiflickerAttr *pattr)
 Get the mode of antiflicker. More...
 
int IMP_ISP_Tuning_SetRawDRC (IMPISPDrcAttr *pinfo)
 Set ISP RAW picture DRC attributes. More...
 
int IMP_ISP_Tuning_GetRawDRC (IMPISPDrcAttr *pinfo)
 Get ISP RAW picture DRC attributes. More...
 
int IMP_ISP_Tuning_SetSinterDnsAttr (IMPISPSinterDenoiseAttr *pinfo)
 Set the attributes of Spatial noise reduction module. More...
 
int IMP_ISP_Tuning_GetSinterDnsAttr (IMPISPSinterDenoiseAttr *pinfo)
 Set the attributes of Spatial noise reduction module. More...
 
int IMP_ISP_Tuning_SetTemperDnsAttr (IMPISPTemperDenoiseAttr *pinfo)
 Set the attribute(s) of noise reduction (for a certain amount of time) module. More...
 
int IMP_ISP_Tuning_GetTemperDnsAttr (IMPISPTemperDenoiseAttr *pinfo)
 Get the attribute(s) of noise reduction (for a certain amount of time) module. More...
 
int IMP_ISP_Tuning_SetWDRAttr (IMPISPTuningOpsMode mode)
 Set ISP wide dynamic module mode (enable/ disable) More...
 
int IMP_ISP_Tuning_GetWDRAttr (IMPISPTuningOpsMode *pmode)
 Get ISP wide dynamic module mode (enable/ disable) More...
 
int IMP_ISP_Tuning_SetSceneMode (IMPISPSceneMode mode)
 Set ISP synthetical effect scene mode. More...
 
int IMP_ISP_Tuning_GetSceneMode (IMPISPSceneMode *pmode)
 Get ISP synthetical effect scene mode. More...
 
int IMP_ISP_Tuning_SetColorfxMode (IMPISPColorfxMode mode)
 Set the color mode of image effect. More...
 
int IMP_ISP_Tuning_GetColorfxMode (IMPISPColorfxMode *pmode)
 Get the color mode of image effect. More...
 
int IMP_ISP_Tuning_SetBrightness (unsigned char bright)
 Set the brightness of image effect. More...
 
int IMP_ISP_Tuning_GetBrightness (unsigned char *pbright)
 Get the brightness of image effect. More...
 
int IMP_ISP_Tuning_SetContrast (unsigned char contrast)
 Set the contrast of image effect. More...
 
int IMP_ISP_Tuning_GetContrast (unsigned char *pcontrast)
 Get the contrast of image effect. More...
 
int IMP_ISP_Tuning_SetSharpness (unsigned char sharpness)
 Set the sharpness of image effect. More...
 
int IMP_ISP_Tuning_GetSharpness (unsigned char *psharpness)
 Get the sharpness of image effect. More...
 
int IMP_ISP_Tuning_SetSaturation (unsigned char sat)
 Set the saturation of image effect. More...
 
int IMP_ISP_Tuning_GetSaturation (unsigned char *psat)
 Get the saturation of image effect. More...
 
int IMP_ISP_Tuning_SetFWFreeze (IMPISPTuningOpsMode mode)
 Freeze ISP firmware operation. More...
 
int IMP_ISP_Tuning_SaveAllParam (char *path)
 Saves all debugging parameters of ISP modules. More...
 
int IMP_ISP_Tuning_SetISPBypass (IMPISPTuningOpsMode enable)
 Control ISP modules. More...
 
int IMP_ISP_Tuning_GetTotalGain (uint32_t *gain)
 Get the overall gain value of the ISP output image. More...
 
int IMP_ISP_Tuning_SetISPHflip (IMPISPTuningOpsMode mode)
 Set ISP image mirror(horizontal) effect function (enable/disable) More...
 
int IMP_ISP_Tuning_GetISPHflip (IMPISPTuningOpsMode *pmode)
 Get ISP image mirror(horizontal) effect function (enable/disable) More...
 
int IMP_ISP_Tuning_SetISPVflip (IMPISPTuningOpsMode mode)
 Set ISP image mirror(vertical) effect function (enable/disable) More...
 
int IMP_ISP_Tuning_GetISPVflip (IMPISPTuningOpsMode *pmode)
 Get ISP image mirror(vertical) effect function (enable/disable) More...
 
int IMP_ISP_Tuning_SetISPHVflip (IMPISPTuningOpsMode hmode, IMPISPTuningOpsMode vmode)
 Set ISP image mirror(horizontal/vertical) effect function (enable/disable) More...
 
int IMP_ISP_Tuning_GetISPHVflip (IMPISPTuningOpsMode *phmode, IMPISPTuningOpsMode *pvmode)
 获取ISP图像H/V反转效果功能的操作状态 More...
 
int IMP_ISP_Tuning_SetISPRunningMode (IMPISPRunningMode mode)
 Set ISP running mode, normal mode or night vision mode; default mode: normal mode. More...
 
int IMP_ISP_Tuning_GetISPRunningMode (IMPISPRunningMode *pmode)
 Get ISP running mode, normal mode or night vision mode;. More...
 
int IMP_ISP_Tuning_SetAeStrategy (IMPISPAeStrategy strategy)
 Set ISP working mode, auto exposure policy configuration, normal mode or exposure priority mode; default: normal mode. More...
 
int IMP_ISP_Tuning_GetAeStrategy (IMPISPAeStrategy *pstrategy)
 Get ISP working mode, auto exposure policy configuration, normal mode or exposure priority mode. More...
 
int IMP_ISP_Tuning_SetGamma (IMPISPGamma *gamma)
 Sets the attributes of ISP gamma. More...
 
int IMP_ISP_Tuning_GetGamma (IMPISPGamma *gamma)
 Obtains the attributes of gamma. More...
 
int IMP_ISP_Tuning_SetAeComp (int comp)
 Setting AE compensation.AE compensation parameters can adjust the target of the image AE. More...
 
int IMP_ISP_Tuning_GetAeComp (int *comp)
 Obtains the compensation of AE. More...
 
int IMP_ISP_Tuning_SetExpr (IMPISPExpr *expr)
 Set AE attributes. More...
 
int IMP_ISP_Tuning_GetExpr (IMPISPExpr *expr)
 Get AE attributes. More...
 
int IMP_ISP_Tuning_AE_GetROI (IMPISPAERoi *isp_ae_roi)
 Access to AE statistical area. More...
 
int IMP_ISP_Tuning_AE_SetROI (IMPISPAERoi *isp_ae_roi)
 Set AE statistical area. More...
 
int IMP_ISP_Tuning_SetWB (IMPISPWB *wb)
 Set the white balance function settings. More...
 
int IMP_ISP_Tuning_GetWB (IMPISPWB *wb)
 Get the white balance function settings. More...
 
int IMP_ISP_Tuning_GetWB_Statis (IMPISPWB *wb)
 Get the white balance statistic value. More...
 
int IMP_ISP_Tuning_Awb_GetCwfShift (IMPISPWB *isp_wb_attr)
 Get the position of the AWB's CWF light source in ISP. More...
 
int IMP_ISP_Tuning_Awb_SetCwfShift (IMPISPWB *isp_wb_attr)
 Set the attributes of CWF light. More...
 
int IMP_ISP_Tuning_Awb_GetRgbCoefft (IMPISPCOEFFTWB *isp_core_rgb_coefft_wb_attr)
 Set the AWB r g b channel offset source in ISP. More...
 
int IMP_ISP_Tuning_Awb_SetRgbCoefft (IMPISPCOEFFTWB *isp_core_rgb_coefft_wb_attr)
 Sets the Max value of sensor color r g b. More...
 
int IMP_ISP_Tuning_SetMaxAgain (uint32_t gain)
 Sets the Max value of sensor analog gain. More...
 
int IMP_ISP_Tuning_GetMaxAgain (uint32_t *gain)
 Get the Max value of sensor analog gain. More...
 
int IMP_ISP_Tuning_SetMaxDgain (uint32_t gain)
 Set the Max value of sensor Digital gain. More...
 
int IMP_ISP_Tuning_GetMaxDgain (uint32_t *gain)
 Obtains the Max value of isp digital gain. More...
 
int IMP_ISP_Tuning_SetVideoDrop (void(*cb)(void))
 Set the video loss function. More...
 
int IMP_ISP_Tuning_SetHiLightDepress (uint32_t strength)
 Set highlight intensity controls. More...
 
int IMP_ISP_Tuning_SetTemperStrength (uint32_t ratio)
 Set 3D noise reduction intensity. More...
 
int IMP_ISP_Tuning_SetSinterStrength (uint32_t ratio)
 Set 2D noise reduction intensity. More...
 
int IMP_ISP_Tuning_SetDPStrength (uint32_t ratio)
 Set DPC intensity. More...
 
int IMP_ISP_Tuning_SetAntiFogAttr (IMPISPAntiFogAttr attr)
 Sets the attributes of antifog. More...
 
int IMP_ISP_Tuning_GetEVAttr (IMPISPEVAttr *attr)
 Obtains the attributes of exposure value. More...
 
int IMP_ISP_Tuning_EnableMovestate (void)
 When the sensor will motion, it should be called. More...
 
int IMP_ISP_Tuning_DisableMovestate (void)
 When the sensor is from motion to still, it should be called. More...
 
int IMP_ISP_Tuning_SetIntegrationTime (IMPISPITAttr *itattr)
 Set ISP Integration time attributes. More...
 
int IMP_ISP_Tuning_GetIntegrationTime (IMPISPITAttr *itattr)
 Get ISP integration time attributes. More...
 
int IMP_ISP_Tuning_SetAeWeight (IMPISPWeight *ae_weight)
 Set zone weighting for AE. More...
 
int IMP_ISP_Tuning_GetAeWeight (IMPISPWeight *ae_weight)
 Get zone weighting for AE. More...
 
int IMP_ISP_Tuning_SetAwbWeight (IMPISPWeight *awb_weight)
 Set zone weighting for AWB. More...
 
int IMP_ISP_Tuning_GetAwbWeight (IMPISPWeight *awb_weight)
 Get zone weighting for AWB. More...
 
int IMP_ISP_Tuning_SetAeHist (IMPISPAEHist *ae_hist)
 Set AE statistics parameters. More...
 
int IMP_ISP_Tuning_GetAeHist (IMPISPAEHist *ae_hist)
 Get AE statistics information. More...
 
int IMP_ISP_Tuning_GetAeZone (IMPISPAEZone *ae_zone)
 Get AE Statistics every block. More...
 
int IMP_ISP_Tuning_GetAwbZone (IMPISPAWBZone *awb_zone)
 Get AWB Statistics every blcok。 More...
 
int IMP_ISP_Tuning_SetAwbHist (IMPISPAWBHist *awb_hist)
 Set AWB statistic parameters. More...
 
int IMP_ISP_Tuning_GetAfHist (IMPISPAFHist *af_hist)
 Set AF statistic parameters. More...
 
int IMP_ISP_Tuning_SetAfHist (IMPISPAFHist *af_hist)
 Get AF statistics. More...
 
int IMP_ISP_Tuning_WaitFrame (IMPISPWaitFrameAttr *attr)
 Wait frame done. More...
 
int IMP_ISP_Tuning_SetMeshShadingScale (IMPISPMeshShadingScale scale)
 Set Mesh Shading Scale. More...
 

Detailed Description

Image signal processing unit.

It contains several key function, for example, image effects setting, night scene, sensor's operations and so on.

ISP module is not related to the data flow, so no need to process Bind, Only used for effect parameters configuration and sensor controls.

The ISP manipulation is as follow:

int ret = 0;
ret = IMP_ISP_Open(); // step.1 create ISP module
if(ret < 0){
printf("Failed to ISPInit\n");
return -1;
}
sensor.name = "xxx";
sensor.cbus_type = SENSOR_CONTROL_INTERFACE_I2C; // OR SENSOR_CONTROL_INTERFACE_SPI
sensor.i2c = {
.type = "xxx", // I2C sets the name, this name has to be the same as the name of the sensor drivers in struct i2c_device_id.
.addr = xx, // the I2C address
.i2c_adapter_id = xx, // The value is the I2C adapter ID.
}
OR
sensor.spi = {
.modalias = "xx", // SPI sets the name, this name has to be the same as the name of the sensor drivers in struct i2c_device_id.
.bus_num = xx, // It is the address of SPI bus.
}
ret = IMP_ISP_AddSensor(&sensor); //step.2, add a sensor. Before the function is called, the sensor driver has to be registered into kernel.
if (ret < 0) {
printf("Failed to Register sensor\n");
return -1;
}
ret = IMP_ISP_EnableSensor(void); //step.3, Enable sensor and sensor starts to output image.
if (ret < 0) {
printf("Failed to EnableSensor\n");
return -1;
}
ret = IMP_ISP_EnableTuning(); //step.4, Enable ISP tuning, then you can use ISP debug interface.
if (ret < 0) {
printf("Failed to EnableTuning\n");
return -1;
}
Debug interface, please refer to the ISP debug interface documentation //step.5

The process which uninstall(disable)ISP is as follows:

int ret = 0;
sensor.name = "xxx";
ret = IMP_ISP_DisableTuning(); //step.1 Turn off ISP tuning
if (ret < 0) {
printf("Failed to disable tuning\n");
return -1;
}
ret = IMP_ISP_DisableSensor(); //step.2, Turn off sensor, Note that sensor will stop output pictures, so that all FrameSource should be closed.
if (ret < 0) {
printf("Failed to disable sensor\n");
return -1;
}
ret = IMP_ISP_DelSensor(&sensor); //step.3, Delete sensor, before that step, the sensor has to be stopped.
if (ret < 0) {
printf("Failed to disable sensor\n");
return -1;
}
ret = IMP_ISP_Close(); //step.4, After deleting all sensors, you can run this interface to clean up the ISP module.
if (ret < 0) {
printf("Failed to disable sensor\n");
return -1;
}

There are more examples in the samples.

Enumeration Type Documentation

Defines the enumeration of ISP's auto exposure strategy.

Enumerator
IMPISP_AE_STRATEGY_SPLIT_BALANCED 

normal mode >

IMPISP_AE_STRATEGY_SPLIT_INTEGRATION_PRIORITY 

Integration of preference mode.

IMPISP_AE_STRATEGY_BUTT 

maximum value >

ISP Anti-flicker property parameter structure.

Enumerator
IMPISP_ANTIFLICKER_DISABLE 

Disable antiflicker module.

IMPISP_ANTIFLICKER_50HZ 

Enable antiflicker module and set the frequency to 50HZ.

IMPISP_ANTIFLICKER_60HZ 

Enable antiflicker module and set the frequencye to 60HZ.

IMPISP_ANTIFLICKER_BUTT 

effect parameter, parameters have to be less than this value

ISP antifog working mode.

Enumerator
ANTIFOG_DISABLE 

Disable antifog.

ANTIFOG_STRONG 

Strong intensity.

ANTIFOG_MEDIUM 

Medium intensity.

ANTIFOG_WEAK 

Weak intensity.

ISP synthetical expansion function, color mode selection.

Enumerator
IMPISP_COLORFX_MODE_AUTO 

Auto mode.

IMPISP_COLORFX_MODE_BW 

white and black mode

IMPISP_COLORFX_MODE_SEPIA 

sepia mode

IMPISP_COLORFX_MODE_NEGATIVE 

reverse color mode

IMPISP_COLORFX_MODE_VIVID 

vivid color mode

ISP Dynamic range compression (DRC) mode.

Enumerator
IMPISP_DRC_MANUAL 

DRC manual mode.

IMPISP_DRC_UNLIMIT 

DRC very high Compression mode.

IMPISP_DRC_HIGH 

DRC high compression mode.

IMPISP_DRC_MEDIUM 

DRC medium compression mode.

IMPISP_DRC_LOW 

DRC low compression mode.

IMPISP_DRC_DISABLE 

Disable DRC mode.

IMPISP_DRC_RANGE 

DRC Set Rnage mode.

Enumerator
IMPISP_SHAD_SCALE_L 

Mesh Shading scale is 0.

IMPISP_SHAD_SCALE_M 

Mesh Shading scale is 1.

IMPISP_SHAD_SCALE_H 

Mesh Shading scale is 2.

IMPISP_SHAD_SCALE_U 

Mesh Shading scale is 3.

Defines the enumeration of ISP working mode.

Enumerator
IMPISP_RUNNING_MODE_DAY 

ISP day mode.

IMPISP_RUNNING_MODE_NIGHT 

ISP night mode.

IMPISP_RUNNING_MODE_BUTT 

maximum value

Synthetical expansion function, scene mode selection.

Enumerator
IMPISP_SCENE_MODE_AUTO 

Auto mode.

IMPISP_SCENE_MODE_BEACH_SNOW 

beach and snow mode

IMPISP_SCENE_MODE_CANDLE_LIGHT 

candle light mode

IMPISP_SCENE_MODE_DAWN_DUSK 

dawn mode

IMPISP_SCENE_MODE_FALL_COLORS 

fall colors mode

IMPISP_SCENE_MODE_FIREWORKS 

fireworks mode

IMPISP_SCENE_MODE_LANDSCAPE 

landscape mode

IMPISP_SCENE_MODE_NIGHT 

night mode

IMPISP_SCENE_MODE_PARTY_INDOOR 

indoor party mode

IMPISP_SCENE_MODE_SPORTS 

sports mode

IMPISP_SCENE_MODE_SUNSET 

sunset mode

IMPISP_SCENE_MODE_TEXT 

text mode

IMPISP_SCENE_MODE_NIGHT_PORTRAIT 

night portrait mode

ISP noise reduction module operation mode for a certain amount of time.

Enumerator
IMPISP_TEMPER_DISABLE 

Disable mode.

IMPISP_TEMPER_AUTO 

Auto mode.

IMPISP_TEMPER_MANUAL 

Manual mode.

IMPISP_TEMPER_RANGE 

Set Range mode.

Mode selection.

Enumerator
IMPISP_TUNING_MODE_AUTO 

AUTO mode of the current module.

IMPISP_TUNING_MODE_MANUAL 

MANUAL mode of the current module.

IMPISP_TUNING_MODE_RANGE 

Set the range of current module.

IMPISP_TUNING_MODE_BUTT 

effect paramater, parameters have to be less than this value

Enumerator
IMPISP_TUNING_OPS_MODE_DISABLE 

DISABLE mode of the current module.

IMPISP_TUNING_OPS_MODE_ENABLE 

ENABLE mode of the current module.

IMPISP_TUNING_OPS_MODE_BUTT 

effect paramater, parameters have to be less than this value

Enumerator
IMPISP_TUNING_OPS_TYPE_AUTO 

AUTO mode of the current module.

IMPISP_TUNING_OPS_TYPE_MANUAL 

MANUAL mode of the current module.

IMPISP_TUNING_OPS_TYPE_RANGE 

Set Range of the current module.

IMPISP_TUNING_OPS_TYPE_BUTT 

effect paramater, parameters have to be less than this value

The enum is types of sensor control bus.

Enumerator
TX_SENSOR_CONTROL_INTERFACE_I2C 

I2C control bus.

TX_SENSOR_CONTROL_INTERFACE_SPI 

SPI control bus.

AWB statictis mode.

Enumerator
IMPISP_AWB_STATS_LEGACY_MODE 

Legacy mode.

IMPISP_AWB_STATS_CURRENT_MODE 

Current mode.

exposure mode.

Enumerator
ISP_CORE_EXPR_MODE_AUTO 

Auto exposure mode.

ISP_CORE_EXPR_MODE_MANUAL 

Manual exposure mode.

exposure unit.

Enumerator
ISP_CORE_EXPR_UNIT_LINE 

The unit is integration line.

ISP_CORE_EXPR_UNIT_US 

The unit is millisecond.

White balance mode.

Enumerator
ISP_CORE_WB_MODE_AUTO 

Auto WB mode.

ISP_CORE_WB_MODE_MANUAL 

Manual WB mode.

ISP_CORE_WB_MODE_DAY_LIGHT 

Day-light mode.

ISP_CORE_WB_MODE_CLOUDY 

Cloudy day mode.

ISP_CORE_WB_MODE_INCANDESCENT 

Incandescent mode.

ISP_CORE_WB_MODE_FLOURESCENT 

Fluorescent mode.

ISP_CORE_WB_MODE_TWILIGHT 

Twilight mode.

ISP_CORE_WB_MODE_SHADE 

Shade mode.

ISP_CORE_WB_MODE_WARM_FLOURESCENT 

Warm color fluorescent mode.

Function Documentation

int IMP_ISP_AddSensor ( IMPSensorInfo pinfo)

Add a sensor into ISP module.

Parameters
[in]pinfoThe pointer for the sensor information.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
The sensor will be used to capture image.
Attention
Before using this function, you must ensure that the camera driver has been registered into the kernel.
int IMP_ISP_Close ( void  )

Close the ISP module.

Parameters
none
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
After calling the function, ISP will stop working.
Attention
Before calling this function, make sure that all FrameSources and effect debugging functions are off(disabled), and all sensors are deleted.
int IMP_ISP_DelSensor ( IMPSensorInfo pinfo)

Delete a sensor from ISP module.

Parameters
[in]pinfoThe pointer for the sensor information
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
Delete a sensor(image sensor which would be a camera)
Attention
Before using this function, you must ensure that the sensor has been stopped working, use IMP_ISP_DisableSensor function to do so.
int IMP_ISP_DisableSensor ( void  )

Disable the running sensor.

Parameters
none
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
if a sensor is not used, FrameSource and ISP won't be working either.
Attention
Before using this function, you must ensure that the Framesource and ISP have stopped working.
int IMP_ISP_DisableTuning ( void  )

Disable effect debugging of ISP.

Parameters
none
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
First you must ensure that ISP is no longer working, then stop the sensor, after that you can use this function.
int IMP_ISP_EnableSensor ( void  )

Enable the registered sensor.

Parameters
none
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
Enable the registered sensor, then FrameSource can ouput image and ISP tuns on the image effects.
Attention
Before using this function, you must ensure that the sensor is already registered into ISP module.
int IMP_ISP_EnableTuning ( void  )

Enable effect debugging of ISP.

Parameters
none
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using this function, you must ensure that 'IMP_ISP_EnableSensor' is working.
int IMP_ISP_GetSensorRegister ( uint32_t  reg,
uint32_t *  value 
)

Obtain a value of the register of sensor.

Parameters
[in]regThe address of the register.
[in]valueThe pointer of register value.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
You can directly obtain the value of the sensor's register.
Attention
Before using this function, you must ensure that the sensor is working.
int IMP_ISP_Open ( void  )

Open the ISP module.

Parameters
none
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
After calling the function,it first creates the ISP module, then prepares to add sensor to ISP, and starts the ISP effect debugging function.
Attention
Before adding sensor image, this function must be called firstly.
int IMP_ISP_SetSensorRegister ( uint32_t  reg,
uint32_t  value 
)

Set the value of a register of a sensor.

Parameters
[in]regThe address of the register.
[in]valueThe value of the register.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
Value of a register can be directly set.
Attention
Before using this function, you must ensure that the sensor is working, so it will be able to be configured or set.
int IMP_ISP_Tuning_AE_GetROI ( IMPISPAERoi isp_ae_roi)

Access to AE statistical area.

Parameters
[out]isp_ae_roiThe related pointer
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_AE_SetROI ( IMPISPAERoi isp_ae_roi)

Set AE statistical area.

Parameters
[out]isp_ae_roiThe related pointer
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_Awb_GetCwfShift ( IMPISPWB isp_wb_attr)

Get the position of the AWB's CWF light source in ISP.

Parameters
[out]isp_wb_attrThe pointer for the attributes
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_Awb_GetRgbCoefft ( IMPISPCOEFFTWB isp_core_rgb_coefft_wb_attr)

Set the AWB r g b channel offset source in ISP.

Parameters
[out]isp_wb_attrThe pointer for the attributes
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_Awb_SetCwfShift ( IMPISPWB isp_wb_attr)

Set the attributes of CWF light.

Parameters
[out]isp_wb_attrThe pointer for the attributes
Return values
0means success.
Othervalues mean failure, its value is an error code. Example:
1  IMPISPWB isp_wb_attr;
2 
3 *isp_wb_attr.rgain = x;
4 *isp_wb_attr.bgain = y;
5 *IMP_ISP_Tuning_Awb_SetCwfShift(isp_wb_attr);
6 if(ret){
7 IMP_LOG_ERR(TAG, "IMP_ISP_Tuning_Awb_SetCwfShift error !\n");
8 return -1;
9 }
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_Awb_SetRgbCoefft ( IMPISPCOEFFTWB isp_core_rgb_coefft_wb_attr)

Sets the Max value of sensor color r g b.

Parameters
[in]gainThe value for sensor sensor color r g b..
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
IMP_ISP_Tuning_DisableMovestate ( void  )

When the sensor is from motion to still, it should be called.

Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_Tuning_EnableMovestate' is working properly.
int IMP_ISP_Tuning_EnableMovestate ( void  )

When the sensor will motion, it should be called.

Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_GetAeComp ( int *  comp)

Obtains the compensation of AE.

Parameters
[out]compThe pointer of the compensation.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_GetAeHist ( IMPISPAEHist ae_hist)

Get AE statistics information.

Parameters
[out]ae_histAE statistics
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using that function, make sure that ISP is working properly.
int IMP_ISP_Tuning_GetAeStrategy ( IMPISPAeStrategy pstrategy)

Get ISP working mode, auto exposure policy configuration, normal mode or exposure priority mode.

Parameters
[in]pstrategyThe pointer of strategy.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_GetAeWeight ( IMPISPWeight ae_weight)

Get zone weighting for AE.

Parameters
[out]ae_weightaexp weight.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using that function, make sure that ISP is working properly.
int IMP_ISP_Tuning_GetAeZone ( IMPISPAEZone ae_zone)

Get AE Statistics every block.

Parameters
[out]ae_zoneAE statistics every block。
Return values
0means success
Othervalues mean failure, its value is an error code.
Attention
Before using that function, make sure that ISP is working properly.
int IMP_ISP_Tuning_GetAfHist ( IMPISPAFHist af_hist)

Set AF statistic parameters.

Parameters
[in]af_histAF statistic parameters
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using that function, make sure that ISP is working properly.
int IMP_ISP_Tuning_GetAntiFlickerAttr ( IMPISPAntiflickerAttr pattr)

Get the mode of antiflicker.

Parameters
[in]pattrThe pointer for antiflicker mode.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before calling this function, make sure that ISP debugging function is working.
int IMP_ISP_Tuning_GetAwbWeight ( IMPISPWeight awb_weight)

Get zone weighting for AWB.

Parameters
[out]awb_weightawb weight。
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using that function, make sure that ISP is working properly.
int int IMP_ISP_Tuning_GetAwbZone ( IMPISPAWBZone awb_zone)

Get AWB Statistics every blcok。

Parameters
[out]awb_zoneAWB statistics every block
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using that function, make sure that ISP is working properly.
int IMP_ISP_Tuning_GetBrightness ( unsigned char *  pbright)

Get the brightness of image effect.

Parameters
[in]pbrightThe pointer for brightness value.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
The default value is 128, more than 128 (increase brightness), and less than 128 (decrease brightness).
Attention
Before using it, make sure that ISP is working properly.
int IMP_ISP_Tuning_GetColorfxMode ( IMPISPColorfxMode pmode)

Get the color mode of image effect.

Parameters
[in]pmodeThe pointer for color mode.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
none
Attention
Before using it, make sure that ISP is working properly.
int IMP_ISP_Tuning_GetContrast ( unsigned char *  pcontrast)

Get the contrast of image effect.

Parameters
[in]pcontrastThe pointer for contrast.
Return values
0means success.
Othervalue means failure, its value is an error code.
Remarks
The default value is 128, more than 128 (increase contrast), and less than 128 (decrease contrast).
Attention
Before using it, make sure that ISP is working properly.
int IMP_ISP_Tuning_GetEVAttr ( IMPISPEVAttr attr)

Obtains the attributes of exposure value.

Parameters
[out]attrThe pointer for attributes.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_GetExpr ( IMPISPExpr expr)

Get AE attributes.

Parameters
[in]exprThe pointer for exposure attributes.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_GetGamma ( IMPISPGamma gamma)

Obtains the attributes of gamma.

Parameters
[out]gammaThe address of the attributes.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_GetIntegrationTime ( IMPISPITAttr itattr)

Get ISP integration time attributes.

Parameters
[out]itattrIntegration time attribute.
Return values
00 means success.
Othervalues mean failure, its value is an error code.
Attention
Before using that function, make sure that ISP is working properly.
int IMP_ISP_Tuning_GetISPHflip ( IMPISPTuningOpsMode pmode)

Get ISP image mirror(horizontal) effect function (enable/disable)

Parameters
[in]pmodeThe pointer for the hflip mode.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
Left and Right flip.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_GetISPHVflip ( IMPISPTuningOpsMode phmode,
IMPISPTuningOpsMode pvmode 
)

获取ISP图像H/V反转效果功能的操作状态

Parameters
[in]phmodeThe pointer for hhe vflip mode.
[in]pvmodeThe pointer for the vflip mode.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_GetISPRunningMode ( IMPISPRunningMode pmode)

Get ISP running mode, normal mode or night vision mode;.

Parameters
[in]pmodeThe pointer of the running mode.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_GetISPVflip ( IMPISPTuningOpsMode pmode)

Get ISP image mirror(vertical) effect function (enable/disable)

Parameters
[in]pmodeThe pointer for the vflip mode.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
UP and DOWN flip.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_GetMaxAgain ( uint32_t *  gain)

Get the Max value of sensor analog gain.

Parameters
[in]gainThe pointer for sensor analog gain. The value of 0 corresponds to 1x gain, 32 corresponds to 2x gain and so on.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_GetMaxDgain ( uint32_t *  gain)

Obtains the Max value of isp digital gain.

Get the Max value of sensor Digital gain.

Parameters
[out]gainThe pointer for isp digital gain. The value of 0 corresponds to 1x gain, 32 corresponds to 2x gain and so on.
Return values
0means success.
Othervalues means failure, its value is an error code.
Attention
When the interface is called, 'IMP_ISP_EnableTuning' has returned successfully.
Parameters
[out]gainThe pointer for sensor digital gain. The value of 0 corresponds to 1x gain, 32 corresponds to 2x gain and so on.
Return values
0success
othersfailure
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_GetRawDRC ( IMPISPDrcAttr pinfo)

Get ISP RAW picture DRC attributes.

Parameters
[in]pinfoThe pointer for DRC attribute.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
Set RGB RAW pictures DRC operation type, Intensity, it is needed to enhance the maximum and minimum pixel value.
Attention
Before using that function, make sure that ISP is working properly.
int IMP_ISP_Tuning_GetSaturation ( unsigned char *  psat)

Get the saturation of image effect.

Parameters
[in]psatThe pointer for saturation strength.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
The default value is 128, more than 128 (increase saturation), and less than 128 (decrease saturation).
Attention
Before using it, make sure that ISP is working properly.
int IMP_ISP_Tuning_GetSceneMode ( IMPISPSceneMode pmode)

Get ISP synthetical effect scene mode.

Parameters
[in]pmodeThe value for scene mode, the default value is auto.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
none
Attention
Before using it, make sure that ISP is working properly.
int IMP_ISP_Tuning_GetSensorFPS ( uint32_t *  fps_num,
uint32_t *  fps_den 
)

Get the FPS of enabled sensor.

Parameters
[in]fps_numThe pointer for numerator value of FPS.
[in]fps_denThe pointer for denominator value of FPS.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using this function, make sure that 'IMP_ISP_EnableSensor' and 'IMP_ISP_EnableTuning' are working properly.
Before starting data transmission in a Channel, you must first call this function in order to obtain the sensor's default FPS.
int IMP_ISP_Tuning_GetSharpness ( unsigned char *  psharpness)

Get the sharpness of image effect.

Parameters
[in]psharpnessThe pointer for sharpness strength.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
The default value is 128, more than 128 (increase sharpening), and less than 128 (decrease sharpening).
Attention
Before using it, make sure that ISP is working properly.
int IMP_ISP_Tuning_GetSinterDnsAttr ( IMPISPSinterDenoiseAttr pinfo)

Set the attributes of Spatial noise reduction module.

Parameters
[in]pinfoThe related pointer.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
Get parameters for spatial noise reduction module
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_GetTemperDnsAttr ( IMPISPTemperDenoiseAttr pinfo)

Get the attribute(s) of noise reduction (for a certain amount of time) module.

Parameters
[in]pinfoThe related pointer
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
Get the attributes of the current module
Attention
Before using it, make sure that ISP is working properly.
int IMP_ISP_Tuning_GetTotalGain ( uint32_t *  gain)

Get the overall gain value of the ISP output image.

Parameters
[in]gainThe pointer of total gain value, its format is [24.8], 24 (integer), 8(decimal)
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using this function, make sure that 'IMP_ISP_EnableSensor' and 'IMP_ISP_EnableTuning' are working properly.
int IMP_ISP_Tuning_GetWB ( IMPISPWB wb)

Get the white balance function settings.

Parameters
[in]wbThe pointer for WB attribute.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
IMP_ISP_Tuning_GetWB_Statis ( IMPISPWB wb)

Get the white balance statistic value.

Parameters
[out]wbThe pointer for the statistic.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_GetWDRAttr ( IMPISPTuningOpsMode pmode)

Get ISP wide dynamic module mode (enable/ disable)

Parameters
[in]pmodeThe related pointer
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
Get ISP wide dynamic module mode
Attention
Before using it, make sure that ISP is working properly.
int IMP_ISP_Tuning_SaveAllParam ( char *  path)

Saves all debugging parameters of ISP modules.

Parameters
[in]pathThe pointer for the file path.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
Saves all debugging parameters of ISP modules.
Attention
Before using it, make sure that ISP is working properly.
int IMP_ISP_Tuning_SetAeComp ( int  comp)

Setting AE compensation.AE compensation parameters can adjust the target of the image AE.

the recommended value range is from 90 to 150.

Parameters
[in]compcompensation parameter.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_SetAeHist ( IMPISPAEHist ae_hist)

Set AE statistics parameters.

Parameters
[in]ae_histAE statictics parameters.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using that function, make sure that ISP is working properly.
int IMP_ISP_Tuning_SetAeStrategy ( IMPISPAeStrategy  strategy)

Set ISP working mode, auto exposure policy configuration, normal mode or exposure priority mode; default: normal mode.

Parameters
[in]strategyThe mode of auto exposure
Return values
0means success.
Othervalues mean failure, its value is an error code. Example:
1 IMPISPAeStrategy strategy;
2 
3  if( it is a normal scence){
4  mode = IMPISP_AE_STRATEGY_SPLIT_BALANCED
5  }else{
6  mode = IMPISP_AE_STRATEGY_SPLIT_INTEGRATION_PRIORITY;
7  }
8  ret = IMP_ISP_Tuning_SetAeStrategy(strategy);
9  if(ret){
10  IMP_LOG_ERR(TAG, "IMP_ISP_Tuning_SetAeStrategy error !\n");
11  return -1;
12  }
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_SetAeWeight ( IMPISPWeight ae_weight)

Set zone weighting for AE.

Parameters
[in]ae_weightaexp weight.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using that function, make sure that ISP is working properly.
int IMP_ISP_Tuning_SetAfHist ( IMPISPAFHist af_hist)

Get AF statistics.

Parameters
[out]af_histAF statistics parameters
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using that function, make sure that ISP is working properly.
int IMP_ISP_Tuning_SetAntiFlickerAttr ( IMPISPAntiflickerAttr  attr)

Set the antiflicker parameter.

Parameters
[in]attrThe value for antiflicker mode
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before calling this function, make sure that ISP debugging function is working.
int IMP_ISP_Tuning_SetAntiFogAttr ( IMPISPAntiFogAttr  attr)

Sets the attributes of antifog.

Parameters
[in]attrThe value for antifog intensity.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_SetAwbHist ( IMPISPAWBHist awb_hist)

Set AWB statistic parameters.

Get AWB Statistics.

Parameters
[in]awb_histAWB statistic parameters
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using that function, make sure that ISP is working properly.
Parameters
[out]awb_histAWB statistic
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using that function, make sure that ISP is working properly.
int IMP_ISP_Tuning_SetAwbWeight ( IMPISPWeight awb_weight)

Set zone weighting for AWB.

Parameters
[in]awb_weightawb weight.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using that function, make sure that ISP is working properly.
int IMP_ISP_Tuning_SetBrightness ( unsigned char  bright)

Set the brightness of image effect.

Parameters
[in]brightThe value for brightness.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
The default value is 128, more than 128 that means increase brightness, and less than 128 that means decrease brightness.
Attention
Before using it, make sure that ISP is working properly.
int IMP_ISP_Tuning_SetColorfxMode ( IMPISPColorfxMode  mode)

Set the color mode of image effect.

Parameters
[in]modethe parameter for color mode, the default value is auto.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
none
Attention
Before using it, make sure that ISP is working properly.
int IMP_ISP_Tuning_SetContrast ( unsigned char  contrast)

Set the contrast of image effect.

Parameters
[in]contrastThe value for contrast.
Return values
0means success.
Othervalue means failure, its value is an error code.
Remarks
The default value is 128, more than 128 (increase contrast), and less than 128 (decrease contrast).
Attention
Before using it, make sure that ISP is working properly.
int IMP_ISP_Tuning_SetDPStrength ( uint32_t  ratio)

Set DPC intensity.

Parameters
[in]ratioIntensity modulation ratio. If it is set to 90, that means it is set to 90% 0f the default value. The value range is [50-150].
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_SetExpr ( IMPISPExpr expr)

Set AE attributes.

Parameters
[in]exprThe pointer for exposure attributes.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_SetFWFreeze ( IMPISPTuningOpsMode  mode)

Freeze ISP firmware operation.

Freeze the ISP firmware means that the ISP automatic algorithm will be stopped; If it is disabled, the ISP firmware can be said to work properly.

Parameters
[in]modeISP firmware freeze parameter.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that ISP is working properly.
int IMP_ISP_Tuning_SetGamma ( IMPISPGamma gamma)

Sets the attributes of ISP gamma.

Parameters
[in]gammaThe pointer of the attributes.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_SetHiLightDepress ( uint32_t  strength)

Set highlight intensity controls.

Parameters
[in]strengthHighlight control parameter, the value range is [0-10], set to 0 means disable the current function.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_SetIntegrationTime ( IMPISPITAttr itattr)

Set ISP Integration time attributes.

Parameters
[in]itattrIntegration time attribute.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using that function, make sure that ISP is working properly.
int IMP_ISP_Tuning_SetISPBypass ( IMPISPTuningOpsMode  enable)

Control ISP modules.

Parameters
[in]enablebypass output mode (yes / no)
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
none
Attention
Before using it, make sure that ISP is working properly.
int IMP_ISP_Tuning_SetISPHflip ( IMPISPTuningOpsMode  mode)

Set ISP image mirror(horizontal) effect function (enable/disable)

Parameters
[in]modeThe hflip (enable/disable).
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
Left and Right flip.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_SetISPHVflip ( IMPISPTuningOpsMode  hmode,
IMPISPTuningOpsMode  vmode 
)

Set ISP image mirror(horizontal/vertical) effect function (enable/disable)

Parameters
[in]hmodeThe hflip enable.
[in]vmodeThe vflip enable.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_SetISPRunningMode ( IMPISPRunningMode  mode)

Set ISP running mode, normal mode or night vision mode; default mode: normal mode.

Parameters
[in]moderunning mode parameter
Return values
0means success.
Othervalues mean failure, its value is an error code.

Example:

1 IMPISPRunningMode mode;
2 
3  if( it is during a night now){
4  mode = IMPISP_RUNNING_MODE_NIGHT
5  }else{
6  mode = IMPISP_RUNNING_MODE_DAY;
7  }
8  ret = IMP_ISP_Tuning_SetISPRunningMode(mode);
9  if(ret){
10  IMP_LOG_ERR(TAG, "IMP_ISP_Tuning_SetISPRunningMode error !\n");
11  return -1;
12  }
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_SetISPVflip ( IMPISPTuningOpsMode  mode)

Set ISP image mirror(vertical) effect function (enable/disable)

Parameters
[in]modeThe vflip enable.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
UP and DOWN flip.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_SetMaxAgain ( uint32_t  gain)

Sets the Max value of sensor analog gain.

Parameters
[in]gainThe value for sensor analog gain. The value of 0 corresponds to 1x gain, 32 corresponds to 2x gain and so on.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_SetMaxDgain ( uint32_t  gain)

Set the Max value of sensor Digital gain.

Parameters
[in]gainThe pointer for sensor digital gain. The value of 0 corresponds to 1x gain, 32 corresponds to 2x gain and so on.
Return values
0success
othersfailure
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly. Sets the Max value of isp digital gain.。
Parameters
[in]gainThe value for isp digital gain. The value of 0 corresponds to 1x gain, 32 corresponds to 2x gain and so on.
Return values
0means success.
Othervalues means failure, its value is an error code.
Attention
When the interface is called, 'IMP_ISP_EnableTuning' has returned successfully.
int IMP_ISP_Tuning_SetMeshShadingScale ( IMPISPMeshShadingScale  scale)

Set Mesh Shading Scale.

Parameters
[out]scaleMesh Shading Scale
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using that function, make sure that ISP is working properly.
int IMP_ISP_Tuning_SetRawDRC ( IMPISPDrcAttr pinfo)

Set ISP RAW picture DRC attributes.

Parameters
[in]pinfoThe pointer for DRC attribute.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
Set RGB RAW pictures DRC operation type, Intensity, it is needed to enhance the maximum and minimum pixel value.
Attention
Before using that function, make sure that ISP is working properly.
int IMP_ISP_Tuning_SetSaturation ( unsigned char  sat)

Set the saturation of image effect.

Parameters
[in]satThe value for saturation strength.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
The default value is 128, more than 128 (increase saturation), and less than 128 (decrease saturation).
Attention
Before using it, make sure that ISP is working properly.
int IMP_ISP_Tuning_SetSceneMode ( IMPISPSceneMode  mode)

Set ISP synthetical effect scene mode.

Parameters
[in]modeThe value for scene mode, the default value is auto.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
none
Attention
Before using it, make sure that ISP is working properly.
int IMP_ISP_Tuning_SetSensorFPS ( uint32_t  fps_num,
uint32_t  fps_den 
)

Set the FPS of enabled sensor.

Parameters
[in]fps_numThe numerator value of FPS.
[in]fps_denThe denominator value of FPS.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using this function, make sure that 'IMP_ISP_EnableSensor' and 'IMP_ISP_EnableTuning' are working properly.
int IMP_ISP_Tuning_SetSharpness ( unsigned char  sharpness)

Set the sharpness of image effect.

Parameters
[in]sharpnessThe value for sharpening strength.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
The default value is 128, more than 128 (increase sharpening), and less than 128 (decrease sharpening).
Attention
Before using it, make sure that ISP is working properly.
int IMP_ISP_Tuning_SetSinterDnsAttr ( IMPISPSinterDenoiseAttr pinfo)

Set the attributes of Spatial noise reduction module.

Parameters
[in]pinfoThe related pointer
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
Set parameters for spatial noise reduction module
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_SetSinterStrength ( uint32_t  ratio)

Set 2D noise reduction intensity.

Parameters
[in]ratioIntensity modulation ratio. If it is set to 90, that means it is set to 90% 0f the default value. The value range is [50-150].
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_SetTemperDnsAttr ( IMPISPTemperDenoiseAttr pinfo)

Set the attribute(s) of noise reduction (for a certain amount of time) module.

Parameters
[in]pinfoThe pointer for temper attributes.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
This module is provided to correct the parameters of the related function, and the module is switched on by default. As the module requires additional memory, if you do not need the module, it is better to close it, the memory is released and it will not be able to turn it on again.
Attention
Before using it, make sure that ISP is working properly.
int IMP_ISP_Tuning_SetTemperStrength ( uint32_t  ratio)

Set 3D noise reduction intensity.

Parameters
[in]ratioIntensity modulation ratio. If it is set to 90, that means it is set to 90% 0f the default value. The value range is [50-150].
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_SetVideoDrop ( void(*)(void)  cb)

Set the video loss function.

When there is a problem with the connection line of the sensor board, the callback function will be executed.

Parameters
[in]cbThe pointer for callback function.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_SetWB ( IMPISPWB wb)

Set the white balance function settings.

You can set the automatic and manual mode, manual mode is achieved mainly through setting of bgain, rgain.

Parameters
[in]wbThe pointer for WB attribute.
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using it, make sure that 'IMP_ISP_EnableTuning' is working properly.
int IMP_ISP_Tuning_SetWDRAttr ( IMPISPTuningOpsMode  mode)

Set ISP wide dynamic module mode (enable/ disable)

Parameters
[in]modeThe related mode
Return values
0means success.
Othervalues mean failure, its value is an error code.
Remarks
This module is provided to correct the parameters of the related function, and the module is switched on by default. As the module requires additional memory, if you do not need the module, it is better to close it, the memory is released and it will not be able to turn it on again.
Attention
Before using it, make sure that ISP is working properly.
int IMP_ISP_Tuning_WaitFrame ( IMPISPWaitFrameAttr attr)

Wait frame done.

Parameters
[out]attrframe done parameters
Return values
0means success.
Othervalues mean failure, its value is an error code.
Attention
Before using that function, make sure that ISP is working properly.