ISP Software Development Guide
REVISION HISTORY¶
| Revision No. | Description |
Date |
|---|---|---|
| 1.0 (API Ver 1.0) | 04/25/2024 |
OVERVIEW¶
Module Description¶
The ISP module aims to analyse and process data inputted from video source, set up associated video parameters, and perform camera tuning to realize various functions such as black level correction, lens correction, 3A and 2D/3D noise reduction, CCM, and Gamma.
ISP Block Diagram¶

Keyword Description¶
-
ISP
Acronym for Image Signal Processing. The ISP unit is responsible for image noise reduction, color rendering, and brightness adjustment, etc.
-
NR
Acronym for Noise Reduction. NR includes 2DNR and NR3D.
2DNR: 2DNR averages an image pixel to the surrounding image pixels so as to reduce noise. This, however, comes with the disadvantage of blurring the picture.
NR3D: NR3D provides time-domain processing. In contrast to 2DNR, which focuses on single frame only, NR3D takes into consideration the time-domain relationship between frames and averages image pixels on a time-domain basis.
-
Lens shading
The lens shading functions, including LSC and ALSC, perform shading compensation against dark corners.
-
SDC
Acronym for Static Defect Correction. The SDC performs compensation for static defective pixels.
-
STA
Short for statistics.
-
WDR
Acronym for Wide Dynamic Range. The WDR function creates high dynamic range impact by single-frame processing.
YUV Path IQ Description¶
By selecting YUV as the input data format, only the following APIs will be available for application, including:
Note:
-
As this application does not contain any information on motion, API function that makes adjustment based on motion will become ineffective, and the most active areas will be taken as the motion information.
For example:
Parameter Description u8MotGain[16] Adjust the final edge based on the degree of motion, which is represented by the horizontal axis. The closer to the left end, the greater motion is suggested. The value is 128, indicating no adjustment. The greater the value, the stronger the edge. Value range: 0~255. Take this parameter in MI_ISP_IQ_Sharpness API, for instance, the function will only takes effect on the left end of the horizontal axis, where index = 0 (u8MotGain[0]).
-
Please take note that since AE, AWB, and AF will all become ineffective, there will be no IQ query based on ISO. We suggest setting IQ APIs to Manual Mode.
MI ISP API GUIDE¶
MI_ISP_IQ_GetVersionInfo¶
-
Objective
This function is used to get IQ version number information.
-
Syntax
MI_S32 MI_ISP_IQ_GetVersionInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_VersionInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the IQ version number. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetVersionInfo¶
-
Objective
This function is used to set IQ version number information.
-
Syntax
MI_S32 MI_ISP_IQ_SetVersionInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_VersionInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the IQ version number. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetParaInitStatus¶
-
Objective
This function is used to get the value of parameters when ISP is initialized and enters the ready status. Only when the status is shown as ready (1) will it be possible to load ISP API bin file or call ISP API functions.
-
Syntax
MI_S32 MI_ISP_IQ_GetParaInitStatus(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ParamInitInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of parameters when ISP is initialized. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
MI_SYS_INIT(); While(1) { MI_ISP_IQ_GetParaInitStatus (0, &FLAG); If(FLAG ==1) { break; } }
MI_ISP_IQ_GetIQind¶
-
Objective
This function is used to get the parameter value of ISO index.
-
Syntax
MI_S32 MI_ISP_IQ_GetIQind(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_Index_e *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of ISO index. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetColorToGray¶
-
Objective
This function is used to set the parameter value of color to grayscale image conversion.
-
Syntax
MI_S32 MI_ISP_IQ_SetColorToGray(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ColorToGrayType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of color to grayscale image conversion. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetColorToGray¶
-
Objective
This function is used to get the parameter value of color to grayscale image conversion.
-
Syntax
MI_S32 MI_ISP_IQ_GetColorToGray(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ColorToGrayType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of color to grayscale image conversion. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetContrast¶
-
Objective
This function is used to set the parameter value of contrast.
-
Syntax
MI_S32 MI_ISP_IQ_SetContrast(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ContrastType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of contrast. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetContrast¶
-
Objective
This function is used to get the parameter value of contrast.
-
Syntax
MI_S32 MI_ISP_IQ_GetContrast(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ContrastType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of contrast. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetBrightness¶
-
Objective
This function is used to set the parameter value of brightness.
-
Syntax
MI_S32 MI_ISP_IQ_SetBrightness(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_BrightnessType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of brightness. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetBrightness¶
-
Objective
This function is used to get the parameter value of brightness.
-
Syntax
MI_S32 MI_ISP_IQ_GetBrightness(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_BrightnessType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of brightness. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetLightness¶
-
Objective
This function is used to set the parameter value of lightness.
-
Syntax
MI_S32 MI_ISP_IQ_SetLightness(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_LightnessType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of lightness. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetLightness¶
-
Objective
This function is used to get the parameter value of lightness.
-
Syntax
MI_S32 MI_ISP_IQ_GetLightness(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_LightnessType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of lightness. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetRGBGamma¶
-
Objective
This function is used to set the parameter value of RGB Gamma curve.
-
Syntax
MI_S32 MI_ISP_IQ_SetRGBGamma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_RgbGammaType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of RGB Gamma curve. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetRGBGamma¶
-
Objective
This function is used to get the parameter value of RGB Gamma curve.
-
Syntax
MI_S32 MI_ISP_IQ_GetRGBGamma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_RgbGammaType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of RGB Gamma curve. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetYUVGamma¶
-
Objective
This function is used to set the parameter value of YUV Gamma curve.
-
Syntax
MI_S32 MI_ISP_IQ_SetYUVGamma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_YuvGammaType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of YUV Gamma curve. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetYUVGamma¶
-
Objective
This function is used to get the parameter value of YUV Gamma curve.
-
Syntax
MI_S32 MI_ISP_IQ_GetYUVGamma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_YuvGammaType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of YUV Gamma curve. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetAdaptiveGamma¶
-
Objective
This function is used to set the parameter value of Adaptive Gamma curve, which needs to be set up with StrategyEx to enable Gamma to make dynamic adjustment according to AE SceneTarget so as to achieve the effect of dynamic range enhancement.
-
Syntax
MI_S32 MI_ISP_IQ_SetAdaptiveGamma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AdaptiveGammaType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of Adaptive Gamma curve. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetAdaptiveGamma¶
-
Objective
This function is used to get the parameter value of Adaptive Gamma curve.
-
Syntax
MI_S32 MI_ISP_IQ_GetAdaptiveGamma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AdaptiveGammaType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of Adaptive Gamma curve. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetSaturation¶
-
Objective
This function is used to set the parameter value of saturation.
-
Syntax
MI_S32 MI_ISP_IQ_SetSaturation(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SaturationType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of saturation. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetSaturation¶
-
Objective
This function is used to get the parameter value of saturation.
-
Syntax
MI_S32 MI_ISP_IQ_GetSaturation(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SaturationType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of saturation. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetHsv¶
-
Objective
This function is used to set the value of Hue parameter.
-
Syntax
MI_S32 MI_ISP_IQ_SetHsv(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_HsvType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of Defog parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetHsv¶
-
Objective
This function is used to get the value of Hue parameter.
-
Syntax
MI_S32 MI_ISP_IQ_GetHsv(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_HsvType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of Defog parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetRGBMatrix¶
-
Objective
This function is used to set the parameter value of RGB color correction matrix.
-
Syntax
MI_S32 MI_ISP_IQ_SetRGBMatrix(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_RgbMatrixType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of RGB color correction matrix. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetRGBMatrix¶
-
Objective
This function is used to get the parameter value of RGB color correction matrix.
-
Syntax
MI_S32 MI_ISP_IQ_GetRGBMatrix(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_RgbMatrixType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of RGB color correction matrix. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetFalseColor¶
-
Objective
This function is used to set the parameter value of false color suppression.
-
Syntax
MI_S32 MI_ISP_IQ_SetFalseColor(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_FalseColorType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of false color suppression. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetFalseColor¶
-
Objective
This function is used to get the parameter value of false color suppression.
-
Syntax
MI_S32 MI_ISP_IQ_GetFalseColor(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_FalseColorType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of false color suppression. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetNr3d¶
-
Objective
This function is used to set the parameter value of 3D noise reduction.
-
Syntax
MI_S32 MI_ISP_IQ_SetNr3d(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_Nr3dType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of 3D noise reduction. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetNr3d¶
-
Objective
This function is used to get the parameter value of 3D noise reduction.
-
Syntax
MI_S32 MI_ISP_IQ_GetNr3d(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_Nr3dType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of 3D noise reduction. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetNrDeSpike¶
-
Objective
This function is used to set the parameter value of DeSpike noise reduction.
-
Syntax
MI_S32 MI_ISP_IQ_SetNrDeSpike(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrDespikeType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of DeSpike noise reduction. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetNrDeSpike¶
-
Objective
This function is used to get the parameter value of DeSpike noise reduction.
-
Syntax
MI_S32 MI_ISP_IQ_GetNrDeSpike(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrDespikeType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of DeSpike noise reduction. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetNrLuma¶
-
Objective
This function is used to set the parameter value of Luma noise reduction.
-
Syntax
MI_S32 MI_ISP_IQ_SetNrLuma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrLumaType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of Luma noise reduction. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetNrLuma¶
-
Objective
This function is used to get the parameter value of Luma noise reduction.
-
Syntax
MI_S32 MI_ISP_IQ_GetNrLuma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrLumaType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of Luma noise reduction. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetNrChroma¶
-
Objective
This function is used to set the parameter value of Chroma noise reduction.
-
Syntax
MI_S32 MI_ISP_IQ_SetNrChroma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrChromaType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of Chroma noise reduction. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetNrChroma¶
-
Objective
This function is used to get the parameter value of Chroma noise reduction.
-
Syntax
MI_S32 MI_ISP_IQ_GetNrChroma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrChromaType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of Chroma noise reduction. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetSharpness¶
-
Objective
This function is used to set the parameter value of sharpness.
-
Syntax
MI_S32 MI_ISP_IQ_SetSharpness(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SharpnessType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of sharpness. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetSharpness¶
-
Objective
This function is used to get the parameter value of sharpness.
-
Syntax
MI_S32 MI_ISP_IQ_GetSharpness(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SharpnessType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of sharpness. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetCrossTalk¶
-
Objective
This function is used to set the parameter value of crosstalk.
-
Syntax
MI_S32 MI_ISP_IQ_SetCrossTalk(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_CrosstalkType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of crosstalk. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetCrossTalk¶
-
Objective
This function is used to get the parameter value of crosstalk.
-
Syntax
MI_S32 MI_ISP_IQ_GetCrossTalk(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_CrosstalkType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of crosstalk. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. - Requirement - Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetObc¶
-
Objective
This function is used to set the parameter value of optical black compensation.
-
Syntax
MI_S32 MI_ISP_IQ_SetObc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ObcType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of optical black compensation. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetObc¶
-
Objective
This function is used to get the parameter value of optical black compensation.
-
Syntax
MI_S32 MI_ISP_IQ_GetObc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ObcType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of optical black compensation. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetObcP1¶
-
Objective
This function is used to set the parameter value of optical black compensation for pipeline 1.
-
Syntax
MI_S32 MI_ISP_IQ_SetObcP1(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ObcType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of optical black compensation for pipeline 1. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetObcP1¶
-
Objective
This function is used to get the parameter value of optical black compensation for pipeline 1.
-
Syntax
MI_S32 MI_ISP_IQ_GetObcP1(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ObcType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of optical black compensation for pipeline 1. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetWdr¶
-
Objective
This function is used to set the parameter value of wide dynamic range (WDR).
-
Syntax
MI_S32 MI_ISP_IQ_SetWdr(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WdrType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of WDR. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetWdr¶
-
Objective
This function is used to get the parameter value of WDR.
-
Syntax
MI_S32 MI_ISP_IQ_GetWdr(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WdrType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of WDR. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetDynamicDp¶
-
Objective
This function is used to set the parameter value of dynamic dead-pixel compensation.
-
Syntax
MI_S32 MI_ISP_IQ_SetDynamicDp(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DynamicDpType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of dynamic dead-pixel compensation. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetDynamicDp¶
-
Objective
This function is used to get the parameter value of dynamic dead-pixel compensation.
-
Syntax
MI_S32 MI_ISP_IQ_GetDynamicDp(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DynamicDpType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of dynamic dead-pixel compensation. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetDynamicDpCluster¶
-
Objective
This function is used to set the parameter value of dynamic dead-pixel cluster compensation.
-
Syntax
MI_S32 MI_ISP_IQ_SetDynamicDpCluster(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DynamicDpClusterType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of dynamic dead-pixel cluster compensation. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetDynamicDpCluster¶
-
Objective
This function is used to get the parameter value of dynamic dead-pixel cluster compensation.
-
Syntax
MI_S32 MI_ISP_IQ_GetDynamicDpCluster(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DynamicDpClusterType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of dynamic dead-pixel cluster compensation. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetRgbir¶
-
Objective
This function is used to set RGB-InfraRed (RGB-IR) parameter value.
-
Syntax
MI_S32 MI_ISP_IQ_SetRgbir(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_RgbirType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to RGB-IR parameter value. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetRgbir¶
-
Objective
This function is used to get RGB-InfraRed (RGB-IR) parameter value.
-
Syntax
MI_S32 MI_ISP_IQ_GetRgbir(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_RgbirType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to RGB-IR parameter value. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetDemosaic¶
-
Objective
This function is used to set demosaic parameter value.
-
Syntax
MI_S32 MI_ISP_IQ_SetDemosaic(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DemosaicType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to demosaic parameter value. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetDemosaic¶
-
Objective
This function is used to get demosaic parameter value.
-
Syntax
MI_S32 MI_ISP_IQ_GetDemosaic(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DemosaicType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to demosaic parameter value. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetR2Y¶
-
Objective
This function is used to set the parameter value of RGB to YUV conversion.
-
Syntax
MI_S32 MI_ISP_IQ_SetR2Y(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_R2YType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of RGB to YUV conversion. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetR2Y¶
-
Objective
This function is used to get the parameter value of RGB to YUV conversion.
-
Syntax
MI_S32 MI_ISP_IQ_GetR2Y(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_R2YType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of RGB to YUV conversion. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetColorTrans¶
-
Objective
This function is used to set the parameter value of color transformation.
-
Syntax
MI_S32 MI_ISP_IQ_SetColorTrans(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ColorTransType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of color transformation. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetColorTrans¶
-
Objective
This function is used to get the parameter value of color transformation.
-
Syntax
MI_S32 MI_ISP_IQ_GetColorTrans(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ColorTransType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of color transformation. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetLsc¶
-
Objective
This function is used to set the parameter value of LSC (Lens Shading Calibration).
-
Syntax
MI_S32 MI_ISP_IQ_SetLsc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_LscType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of LSC. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetLsc¶
-
Objective
This function is used to get the parameter value of LSC.
-
Syntax
MI_S32 MI_ISP_IQ_GetLsc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_LscType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of LSC. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetLscCtrl¶
-
Objective
This function is used to set the parameter value of LSC CTRL.
-
Syntax
MI_S32 MI_ISP_IQ_SetLscCtrl(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_LscCtrlType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of LSC CTRL. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetLscCtrl¶
-
Objective
This function is used to get the parameter value of LSC CTRL.
-
Syntax
MI_S32 MI_ISP_IQ_GetLscCtrl(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_LscCtrlType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of LSC CTRL. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetAlsc¶
-
Objective
This function is used to set the parameter value of ALSC (Automatic Lens Shading Calibration).
-
Syntax
MI_S32 MI_ISP_IQ_SetAlsc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AlscType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of ALSC. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetAlsc¶
-
Objective
This function is used to get the parameter value of ALSC.
-
Syntax
MI_S32 MI_ISP_IQ_GetAlsc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AlscType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of ALSC. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetAlscCtrl¶
-
Objective
This function is used to set the parameter value of ALSC CTRL.
-
Syntax
MI_S32 MI_ISP_IQ_SetAlscCtrl(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AlscCtrlType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of ALSC CTRL. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetAlscCtrl¶
-
Objective
This function is used to get the parameter value of ALSC CTRL.
-
Syntax
MI_S32 MI_ISP_IQ_GetAlscCtrl(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AlscCtrlType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of ALSC CTRL. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetAlscAdj¶
-
Objective
This function is used to set the parameter value of ALSC ADJ.
-
Syntax
MI_S32 MI_ISP_IQ_SetAlscAdj(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AlscAdjType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of ALSC ADJ. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetAlscAdj¶
-
Objective
This function is used to get the parameter value of ALSC ADJ.
-
Syntax
MI_S32 MI_ISP_IQ_GetAlscAdj(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AlscAdjType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of ALSC ADJ. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetIqMode¶
-
Objective
This function is used to set the parameter value of IQ mode. Only Day Mode and Night Mode under RGB-IR night view scenario are supported for the time being.
-
Syntax
MI_S32 MI_ISP_IQ_SetIqMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ParamMode_e *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of IQ mode. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetIqMode¶
-
Objective
This function is used to get the parameter value of IQ mode. Only Day Mode and Night Mode under RGB-IR night view scenario are supported for the time being.
-
Syntax
MI_S32 MI_ISP_IQ_GetIqMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ParamMode_e *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of IQ mode. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetApiBypassMode¶
-
Objective
This function is used to set the parameter value of the ISP Bypass Mode corresponding to IP module.
-
Syntax
MI_S32 MI_ISP_IQ_SetApiBypassMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ApiBypassType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of ISP bypass mode corresponding to IP module. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetApiBypassMode¶
-
Objective
This function is used to get the parameter value of the ISP bypass mode corresponding to IP module.
-
Syntax
MI_S32 MI_ISP_IQ_GetApiBypassMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ApiBypassType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of ISP bypass mode corresponding to IP module. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_QueryCcmInfo¶
-
Objective
This function is used to get the parameter value of CCM (Color Correction Matrix) for current color temperature.
-
Syntax
MI_S32 MI_ISP_IQ_QueryCcmInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_CcmInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of CCM for current color temperature. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetDayNightDetection¶
-
Objective
This function is used to set the parameter value of Day/Night detection.
-
Syntax
MI_S32 MI_ISP_IQ_SetDayNightDetection(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DaynightDetectionType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of Day/Night detection. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetDayNightDetection¶
-
Objective
This function is used to get the parameter value of Day/Night detection.
-
Syntax
MI_S32 MI_ISP_IQ_GetDayNightDetection(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DaynightDetectionType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of Day/Night detection. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_QueryDayNightInfo¶
-
Objective
This function is used to query the result of Day/Night detection. Please note that this API only shows the detection result and you should still take actions accordingly, such as loading Day/Night bin file or controlling IR LED, when necessary.
-
Syntax
MI_ISP_IQ_QueryDayNightInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DaynightInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the result of Day/Night detection. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetNrLumaAdv¶
-
Objective
Call this function to set the parameter value of NRLuma_Adv.
-
Syntax
MI_S32 MI_ISP_IQ_SetNrLumaAdv(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrLumaAdvType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of NRLuma_Adv. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetNrLumaAdv¶
-
Objective
This function is used to get the parameter value of NRLuma_Adv.
-
Syntax
MI_S32 MI_ISP_IQ_GetNrLumaAdv(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrLumaAdvType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of NRLuma_Adv. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetNrChromaAdv¶
-
Objective
This function is used to set the parameter value of NRChroma_Adv.
-
Syntax
MI_S32 MI_ISP_IQ_SetNrChromaAdv(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrChromaAdvType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of NRChroma_Adv. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetNrChromaAdv¶
-
Objective
This function is used to get the parameter value of NRChroma_Adv.
-
Syntax
MI_S32 MI_ISP_IQ_GetNrChromaAdv(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrChromaAdvType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of NRChroma_Adv. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetPfc¶
-
Objective
This function is used to set the parameter value of PFC (Purple Fringing Compensation).
-
Syntax
MI_S32 MI_ISP_IQ_SetPfc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_PfcType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of PFC. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetPfc¶
-
Objective
This function is used to get the parameter value of PFC (Purple Fringing Compensation).
-
Syntax
MI_S32 MI_ISP_IQ_GetPfc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_PfcType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of PFC. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetPfcEx¶
-
Objective
This function is used to set the value of PFC_EX parameter, including those parameters that are less often adjusted or those that are not adjusted by ISO.
-
Syntax
MI_S32 MI_ISP_IQ_SetPfcEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_PfcExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of PFC_EX. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetPfcEx¶
-
Objective
This function is used to get the value of PFC_EX parameter, including those parameters that are less often adjusted or those that are not adjusted by ISO.
-
Syntax
MI_S32 MI_ISP_IQ_GetPfcEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_PfcExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of PFC_EX. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetShpEx¶
-
Objective
This function is used to set the value of SHP_EX (Sharpness_EX) parameter, including those parameters that are less often adjusted or those that are not adjusted by ISO.
-
Syntax
MI_S32 MI_ISP_IQ_SetShpEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SharpnessExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of SHP_EX parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetShpEx¶
-
Objective
This function is used to get the value of SHP_EX (Sharpness_EX) parameter, including those parameters that are less often adjusted or those that are not adjusted by ISO.
-
Syntax
MI_S32 MI_ISP_IQ_GetShpEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SharpnessExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of SHP_EX parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetNr3dEx¶
-
Objective
This function is used to set the value of Nr3d_EX parameter, including those parameters that are less often adjusted or those that are not adjusted by ISO.
-
Syntax
MI_S32 MI_ISP_IQ_SetNr3dEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_Nr3dExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of Nr3d_EX parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetNr3dEx¶
-
Objective
This function is used to get the value of Nr3d_EX parameter, including those parameters that are less often adjusted or those that are not adjusted by ISO.
-
Syntax
MI_S32 MI_ISP_IQ_GetNr3dEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_Nr3dExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of Nr3d_EX parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetDummy¶
-
Objective
This function is used to set the value of DUMMY parameter. By opening an empty channel and connecting it when necessary, version incompatibility issue can be alleviated.
-
Syntax
MI_S32 MI_ISP_IQ_SetDummy(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DummyType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of DUMMY parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetDummy¶
-
Objective
This function is used to get the value of DUMMY parameter. By opening an empty channel and connecting it when necessary, version incompatibility issue can be alleviated.
-
Syntax
MI_S32 MI_ISP_IQ_GetDummy(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DummyType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of DUMMY parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetDummyEx¶
-
Objective
This function is used to set the value of DUMMY_EX parameter. By opening an empty channel and connecting it when necessary, version incompatibility issue can be alleviated.
-
Syntax
MI_S32 MI_ISP_IQ_SetDummyEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DummyExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of DUMMY_EX parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetDummyEx¶
-
Objective
This function is used to get the value of DUMMY_EX parameter. By opening an empty channel and connecting it when necessary, version incompatibility issue can be alleviated.
-
Syntax
MI_S32 MI_ISP_IQ_GetDummyEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DummyExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of DUMMY_EX parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetWdrCurveFull¶
-
Objective
This function is used to set the parameter value of WDRCurveFull.
-
Syntax
MI_S32 MI_ISP_IQ_SetWdrCurveFull(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WdrCurveFullType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of WDRCurveFull. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetWdrCurveFull¶
-
Objective
This function is used to get the parameter value of WDRCurveFull.
-
Syntax
MI_S32 MI_ISP_IQ_GetWdrCurveFull(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WdrCurveFullType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of WDRCurveFull. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetDefog¶
-
Objective
This function is used to set the parameter value of Defog.
-
Syntax
MI_S32 MI_ISP_IQ_SetDefog(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DefogType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of Defog. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetDefog¶
-
Objective
This function is used to get the parameter value of Defog.
-
Syntax
MI_S32 MI_ISP_IQ_GetDefog(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DefogType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of Defog. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetTemp¶
-
Objective
This function is used to set the parameter value of Temperature.
-
Syntax
MI_S32 MI_ISP_IQ_SetTemp(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_TempType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of Temperature. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetTemp¶
-
Objective
This function is used to get the parameter value of Temperature.
-
Syntax
MI_S32 MI_ISP_IQ_GetTemp(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_TempType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of Temperature. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetTempInfo¶
-
Objective
This function is used to get the parameter value of Temperature Info.
-
Syntax
MI_S32 MI_ISP_IQ_GetTempInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_TempInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of Temperature Info. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_QueryExposureInfo¶
-
Objective
This function is used to get the parameter value of auto exposure.
-
Syntax
MI_S32 MI_ISP_AE_QueryExposureInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of auto exposure. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetHistoWghtY¶
-
Objective
This function is used to get the value of current image brightness and statistical data of histogram.
-
Syntax
MI_S32 MI_ISP_AE_GetHistoWghtY(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_HistWeightYType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of current image brightness and statistical data of histogram. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetEvComp¶
-
Objective
This function is used to set the parameter value of exposure compensation.
-
Syntax
MI_S32 MI_ISP_AE_SetEvComp(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_EvCompType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure compensation. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetEvComp¶
-
Objective
This function is used to get the parameter value of exposure compensation.
-
Syntax
MI_S32 MI_ISP_AE_GetEvComp(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_EvCompType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure compensation. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetExpoMode¶
-
Objective
This function is used to set the parameter value of exposure mode.
-
Syntax
MI_S32 MI_ISP_AE_SetExpoMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ModeType_e *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure mode. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetExpoMode¶
-
Objective
Call this function to get the parameter value of exposure mode.
-
Syntax
MI_S32 MI_ISP_AE_GetExpoMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ModeType_e *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure mode. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetManualExpo¶
-
Objective
This function is used to set the parameter value of manual exposure.
-
Syntax
MI_S32 MI_ISP_AE_SetManualExpo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoValueType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of manual exposure. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetManualExpo¶
-
Objective
This function is used to get the parameter value of manual exposure.
-
Syntax
MI_S32 MI_ISP_AE_GetManualExpo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoValueType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of manual exposure. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetManualShortExpo¶
-
Objective
This function is used to set the parameter value of short manual exposure.
-
Syntax
MI_S32 MI_ISP_AE_SetManualShortExpo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoValueType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of short manual exposure. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetManualShortExpo¶
-
Objective
This function is used to get the parameter value of short manual exposure.
-
Syntax
MI_S32 MI_ISP_AE_GetManualShortExpo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoValueType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of short manual exposure. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetState¶
-
Objective
This function is used to set the parameter value of auto exposure working status.
-
Syntax
MI_S32 MI_ISP_AE_SetState(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_SmStateType_e *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of auto exposure working status. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetState¶
-
Objective
This function is used to get the parameter value of auto exposure working status.
-
Syntax
MI_S32 MI_ISP_AE_GetState(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_SmStateType_e *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of auto exposure working status. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetTarget¶
-
Objective
This function is used to set the parameter value of exposure target in screen under different ambient brightness values (BV).
-
Syntax
MI_S32 MI_ISP_AE_SetTarget(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_IntpLutType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure target. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetTarget¶
-
Objective
This function is used to get the parameter value of exposure target in screen under different ambient brightness values (BV).
-
Syntax
MI_S32 MI_ISP_AE_GetTarget(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_IntpLutType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure target. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetConverge¶
-
Objective
This function is used to set the parameter value of exposure convergence.
-
Syntax
MI_S32 MI_ISP_AE_SetConverge(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ConvConditonType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure convergence. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetConverge¶
-
Objective
This function is used to get the parameter value of exposure convergence.
-
Syntax
MI_S32 MI_ISP_AE_GetConverge(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ConvConditonType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure convergence. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetExposureLimit¶
-
Objective
This function is used to set the parameter value for the range limit of auto exposure.
-
Syntax
MI_S32 MI_ISP_AE_SetExposureLimit(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoLimitType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value for the range limit of auto exposure. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetExposureLimit¶
-
Objective
This function is used to get the parameter value for the range limit of auto exposure.
-
Syntax
MI_S32 MI_ISP_AE_GetExposureLimit(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoLimitType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of auto exposure range limit. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetPlainLongExpoTable¶
-
Objective
This function is used to set the parameter value for the exposure table of long exposure.
-
Syntax
MI_S32 MI_ISP_AE_SetPlainLongExpoTable(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoTableType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value for the exposure table of long exposure. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetPlainLongExpoTable¶
-
Objective
This function is used to get the parameter value for the exposure table of long exposure.
-
Syntax
MI_S32 MI_ISP_AE_GetPlainLongExpoTable(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoTableType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value for the exposure table of long exposure. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetPlainShortExpoTable¶
-
Objective
This function is used to set the parameter value for the exposure table of short exposure.
-
Syntax
MI_S32 MI_ISP_AE_SetPlainShortExpoTable(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoTableType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value for the exposure table of short exposure. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetPlainShortExpoTable¶
-
Objective
This function is used to get the parameter value for the exposure table of short exposure.
-
Syntax
MI_S32 MI_ISP_AE_GetPlainShortExpoTable(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoTableType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value for the exposure table of short exposure. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetWinWgtType¶
-
Objective
This function is used to set the parameter value for the type of exposure weight table.
-
Syntax
MI_S32 MI_ISP_AE_SetWinWgtType(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_WinWeightModeType_e *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value for the type of exposure weight table. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetWinWgtType¶
-
Objective
This function is used to get the parameter value for the type of exposure weight table.
-
Syntax
MI_S32 MI_ISP_AE_GetWinWgtType(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_WinWeightModeType_e *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value for the type of exposure weight table. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetWinWgt¶
-
Objective
This function is used to set the parameter value of exposure weight table.
-
Syntax
MI_S32 MI_ISP_AE_SetWinWgt(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_WinWeightType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure weight table. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetWinWgt¶
-
Objective
This function is used to get the parameter value of exposure weight table.
-
Syntax
MI_S32 MI_ISP_AE_GetWinWgt(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_WinWeightType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure weight table. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetFlicker¶
-
Objective
This function is used to set the value of anti-flicker parameter. Anti-flicker are supported at 50Hz and 60Hz.
-
Syntax
MI_S32 MI_ISP_AE_SetFlicker(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FlickerType_e *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of anti-flicker parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
Anti-flicker are supported at 50Hz and 60Hz.
-
Example
N/A.
MI_ISP_AE_GetFlicker¶
-
Objective
This function is used to get the value of anti-flicker parameter. Anti-flicker are supported at 50Hz and 60Hz.
-
Syntax
MI_S32 MI_ISP_AE_GetFlicker(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FlickerType_e *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of anti-flicker parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetFlickerEx¶
-
Objective
This function is used to set the parameter value of anti-flicker frequency detection. Anti-flicker are supported at 50Hz and 60Hz.
-
Syntax
MI_S32 MI_ISP_AE_SetFlickerEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FlickerExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of anti-flicker frequency detection. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
Anti-flicker are supported at 50Hz and 60Hz.
-
Example
N/A.
MI_ISP_AE_GetFlickerEx¶
-
Objective
This function is used to get the parameter value of anti-flicker frequency detection. Anti-flicker are supported at 50Hz and 60Hz.
-
Syntax
MI_S32 MI_ISP_AE_GetFlickerEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FlickerExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of anti-flicker frequency detection. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_QueryFlickerInfo¶
-
Objective
This function is used to query the the parameter value of anti-flicker detection, including the effective state of anti-flicker, the anti-flicker mode (50Hz/60Hz), and the effective score of anti-flicker mode.
-
Syntax
MI_S32 MI_ISP_AE_QueryFlickerInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FlickerExInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the information about the parameter value of anti-flicker frequency detection. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetStrategy¶
-
Objective
This function is used to set the parameter value of exposure strategy.
-
Syntax
MI_S32 MI_ISP_AE_SetStrategy(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyType_t
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure strategy. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetStrategy¶
-
Objective
This function is used to get the parameter value of exposure strategy.
-
Syntax
MI_S32 MI_ISP_AE_GetStrategy(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyType_t
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure strategy. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetStrategyEx¶
-
Objective
This function is used to set the parameter value of exposure strategy.
-
Syntax
MI_S32 MI_ISP_AE_SetStrategyEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure strategy. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetStrategyEx¶
-
Objective
This function is used to get the parameter value of exposure strategy.
-
Syntax
MI_S32 MI_ISP_AE_GetStrategyEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure strategy. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetStrategyExAdv¶
-
Objective
This function is used to set the parameter value of exposure strategy for HDR_Auto mode.
-
Syntax
MI_S32 MI_ISP_AE_SetStrategyExAdv(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyExAdvType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure strategy. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetStrategyExAdv¶
-
Objective
This function is used to get the parameter value of exposure strategy for HDR_Auto mode.
-
Syntax
MI_S32 MI_ISP_AE_GetStrategyExAdv(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyExAdvType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure strategy. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_QueryStrategyExInfo¶
-
Objective
This function is used to query the information of exposure strategy.
-
Syntax
MI_S32 MI_ISP_AE_QueryStrategyExInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyExInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the information of exposure strategy. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetRgbirAe¶
-
Objective
This function is used to set the parameter value of exposure strategy in RGB-IR mode.
-
Syntax
MI_S32 MI_ISP_AE_SetRgbirAe(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_RgbirAeType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure strategy in RGB-IR mode. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetRgbirAe¶
-
Objective
This function is used to get the parameter value of exposure strategy in RGB-IR mode.
-
Syntax
MI_S32 MI_ISP_AE_GetRgbirAe(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_RgbirAeType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure strategy in RGB-IR mode. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetStabilizer¶
-
Objective
This function is used to set the parameter value of stabilizer strategy. Stabilizer can prevent AE from being easily triggerd by local change in the current frame, thereby stablizing frame brightness.
-
Syntax
MI_S32 MI_ISP_AE_SetStabilizer(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StabilizerType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of stabilizer strategy. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetStabilizer¶
-
Objective
This function is used to get the parameter value of stabilizer strategy.
-
Syntax
MI_S32 MI_ISP_AE_GetStabilizer(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StabilizerType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of stabilizer strategy. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetLumaWgt¶
-
Objective
This function is used to set the parameter value of Weight by luminance. This function aims to adjust the weight of luminance in certain regions of the screen, and the weight will be applied to AE so as to enhance the adapatibility of target brightness of the screen.
-
Syntax
MI_S32 MI_ISP_AE_SetLumaWgt(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_LumaWgtType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of Weight by luminance. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetLumaWgt¶
-
Objective
This function is used to get the parameter value of Weight by luminance. This function aims to adjust the weight of luminance in certain regions of the screen, and the weight will be applied to AE so as to enhance the adapatibility of target brightness of the screen.
-
Syntax
MI_S32 MI_ISP_AE_GetLumaWgt(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_LumaWgtType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of Weight by luminance. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_QueryInfo¶
-
Objective
This function is used to get information about the value of auto white balance (AWB) parameters.
-
Syntax
MI_S32 MI_ISP_AWB_QueryInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_QueryInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of AWB parameters. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_GetCtStats¶
-
Objective
This function is used to get the statistical value of AWB calibration.
-
Syntax
MI_S32 MI_ISP_AWB_GetCtStats(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_CtStatisticsType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the statistical value of AWB calibration. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_SetAttr¶
-
Objective
This function is used to set the parameter value of AWB attribute.
-
Syntax
MI_S32 MI_ISP_AWB_SetAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_AttrType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_GetAttr¶
-
Objective
This function is used to get the parameter value of AWB attribute.
-
Syntax
MI_S32 MI_ISP_AWB_GetAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_AttrType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_SetAttrEx¶
-
Objective
This function is used to set the parameter value of AWB extended attribute.
-
Syntax
MI_S32 MI_ISP_AWB_SetAttrEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_AttrExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB extended attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
Parameters set by this function take effect only when eAlgType = SS_AWB_ALG_ADVANCE in MI_ISP_AWB_AttrParam_t.
-
Example
N/A.
MI_ISP_AWB_GetAttrEx¶
-
Objective
This function is used to get the parameter value of AWB extended attribute.
-
Syntax
MI_S32 MI_ISP_AWB_GetAttrEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_AttrExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB extended attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_SetMultiLsAttr¶
-
Objective
This function is used to set the parameter value of AWB calibration of color shift in mixed-light scenarios.
-
Syntax
MI_S32 MI_ISP_AWB_SetMultiLsAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_MultiLsType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB calibration of color shift in mixed-light scenarios. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
Parameters set by this function take effect only when bWpWeightEnable = 1 in MI_ISP_AWB_AttrParam_t.
-
Example
N/A.
MI_ISP_AWB_GetMultiLsAttr¶
-
Objective
This function is used to get the parameter value of AWB calibration of color shift in mixed-light scenarios.
-
Syntax
MI_S32 MI_ISP_AWB_GetMultiLsAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_MultiLsType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB calibration of color shift in mixed-light scenarios. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_SetCtCaliAttr¶
-
Objective
This function is used to set the parameter value of AWB calibration.
-
Syntax
MI_S32 MI_ISP_AWB_SetCtCaliAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_CtCaliType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB calibration. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_GetCtCaliAttr¶
-
Objective
This function is used to get the parameter value of AWB calibration.
-
Syntax
MI_S32 MI_ISP_AWB_GetCtCaliAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_CtCaliType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB calibration. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_GetCurCtCaliAttr¶
-
Objective
This function is used to get the information of color temperature range after AWB applies calibration data.
-
Syntax
MI_S32 MI_ISP_AWB_GetCurCtCaliAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_CurCtCaliType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB calibration. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_SetCtMwbAttr¶
-
Objective
This function is used to manually select color temperature to apply the corresponding WB gain, effective only when CT Manual is chosen for AwbMode.
-
Syntax
MI_S32 MI_ISP_AWB_SetCtMwbAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_CtmwbParam_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB calibration. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_GetCtMwbAttr¶
-
Objective
This function is used to get the color temperature settings for manual white balance.
-
Syntax
MI_S32 MI_ISP_AWB_GetCtMwbAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_CtmwbParam_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB calibration. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_SetStabilizer¶
-
Objective
This function is used to set AWB stabilizer. When the environment is stable but AWB is constantly being triggered, resulting in continuous screen color flickering, it is recommended that you enable this function to stabilize AWB changes.
-
Syntax
MI_S32 MI_ISP_AWB_SetStabilizer(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_StabilizerType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB stabilizer. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_GetStabilizer¶
-
Objective
This function is used to get the setting of AWB stabilizer.
-
Syntax
MI_S32 MI_ISP_AWB_GetStabilizer(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_StabilizerType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB stabilizer. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_SetSpecialCase¶
-
Objective
This function is used to set AWB SpecialCase, which allows users to define "case" by three conditions and to determine the corresponding AWB responses when different conditions are met. The ultimate purpose is to enhance the precision of AWB in certain scenes. A total of four cases can be defined, and their effects can be accumulated.
-
Syntax
MI_S32 MI_ISP_AWB_SetSpecialCase(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_SpecialCaseType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB SpecialCase. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_GetSpecialCase¶
-
Objective
This function is used to get the setting of AWB SpecialCase.
-
Syntax
MI_S32 MI_ISP_AWB_GetSpecialCase(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_SpecialCaseType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB SpecialCase. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_QuerySpecialCaseInfo¶
-
Objective
This function is used to get the information about the statistical data of AWB SpecialCase.
-
Syntax
MI_S32 MI_ISP_AWB_QuerySpecialCaseInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_SpecialCaseInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB QuerySpecialCase. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_SetStatisFilter¶
-
Objective
This function is used to set AWB StatisFilter, which aims to exclude statistics that are too dark or overly bright based on the range of effective brightness in BV setting, in order to prevent AWB from being affected by noise or over-exposed area.
-
Syntax
MI_S32 MI_ISP_AWB_SetStatisfilter(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_StatisFilterType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB StatisFilter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_GetStatisFilter¶
-
Objective
This function is used to get the setting of AWB StatisFilter.
-
Syntax
MI_S32 MI_ISP_AWB_GetStatisFilter(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_StatisFilterType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB StatisFilter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_QueryInfo¶
-
Objective
This function is used to get the parameter value of Auto Focus (AF).
-
Syntax
MI_S32 MI_ISP_AF_QueryInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_QueryInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of AF. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetHwWin¶
-
Objective
This function is used to set AF win.
-
Syntax
MI_S32 MI_ISP_AF_SetHwWin(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwWinType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF win attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetHwWin¶
-
Objective
This function is used to get AF win.
-
Syntax
MI_S32 MI_ISP_AF_GetHwWin(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwWinType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF win attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetHwFilterAttr¶
-
Objective
This function is used to set AF filter coefficients.
-
Syntax
MI_S32 MI_ISP_AF_SetHwFilterAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwFilterAttrType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF filter attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetHwFilterAttr¶
-
Objective
This function is used to get AF filter coefficients.
-
Syntax
MI_S32 MI_ISP_AF_GetHwFilterAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwFilterAttrType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF filter attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetHwFilterSq¶
-
Objective
This function is used to set the coefficients of AF filter square.
-
Syntax
MI_S32 MI_ISP_AF_SetHwFilterSq(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwFilterSqType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF filter square attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetHwFilterSq¶
-
Objective
This function is used to get the coefficients of AF filter square.
-
Syntax
MI_S32 MI_ISP_AF_GetHwFilterSq(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwFilterSqType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF filter square attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetAttr¶
-
Objective
This function is used to set the parameter value of AF attribute.
-
Syntax
MI_S32 MI_ISP_AF_SetAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AttrType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetAttr¶
-
Objective
Pointer to the parameter value of AF attribute.
-
Syntax
MI_S32 MI_ISP_AF_GetAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AttrType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetMotor¶
-
Objective
This function is used to set the parameter value of AF Motor attribute.
-
Syntax
MI_S32 MI_ISP_AF_SetMotor(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_MotorType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF Motor attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetMotor¶
-
Objective
This function is used to get the parameter value of AF Motor attribute.
-
Syntax
MI_S32 MI_ISP_AF_GetMotor(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_MotorType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF Motor attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetAccWeight¶
-
Objective
This function is used to set the parameter value of AF Acc Weight attribute.
-
Syntax
MI_S32 MI_ISP_AF_SetAccWeight(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AccWeightType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF Acc Weight attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetAccWeight¶
-
Objective
This function is used to get the parameter value of AF Acc Weight attribute.
-
Syntax
MI_S32 MI_ISP_AF_GetAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AccWeightType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF Acc Weight attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetOneShot¶
-
Objective
This function is used to set the parameter value of AF OneShot attribute.
-
Syntax
MI_S32 MI_ISP_AF_SetOneShot(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_OneShotType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF OneShot attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetOneShot¶
-
Objective
This function is used to get the parameter value of AF OneShot attribute.
-
Syntax
MI_S32 MI_ISP_AF_GetAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_OneShotType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF OneShot attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetSceneChange¶
-
Objective
This function is used to set the parameter value of AF Scene Change attribute.
-
Syntax
MI_S32 MI_ISP_AF_SetSceneChange(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_SceneChangeType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF Scene Change attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetSceneChange¶
-
Objective
This function is used to get the parameter value of AF Scene Change attribute.
-
Syntax
MI_S32 MI_ISP_AF_GetSceneChange(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_SceneChangeType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF Scene Change attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetSearchStart¶
-
Objective
This function is used to set the parameter value of AF SearchStart attribute.
-
Syntax
MI_S32 MI_ISP_AF_SetSearchStart(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_SearchStartType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF SearchStart attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetSearchStart¶
-
Objective
This function is used to get the parameter value of AF SearchStart attribute.
-
Syntax
MI_S32 MI_ISP_AF_GetAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_SearchStartType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF SearchStart attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetSearch¶
-
Objective
This function is used to set the parameter value of AF Search attribute.
-
Syntax
MI_S32 MI_ISP_AF_SetSearch(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_SearchType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF Search attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetSearch¶
-
Objective
This function is used to get the parameter value of AF Search attribute.
-
Syntax
MI_S32 MI_ISP_AF_GetSearch(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_SearchType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF Search attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_ApiCmdLoadBinFile¶
-
Objective
This function is used to load cmd bin file and tunnel the file to the customer’s application after user finishing tuning IQ parameters in IQ Tool.
-
Syntax
MI_S32 MI_ISP_ApiCmdLoadBinFile(MI_U32 DevId, MI_U32 Channel, char *filepath, MI_U32 user_key);
-
Description
Call this function to load the API cmd bin file, which was tuned by the IQ Tool. When customer loads this bin file into the application, they can also achieve the same effect as created by the IQ Tool.
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. filepath The filepath of ISP API bin file. user_key The user key must match the magic key, and the magic key can be modified via the Settings in the IQ Tool. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
Filepath is the path where bin file is located. The value of user_key will be compared to the value of magic key, which is stored by the IQ Tool in ISP API bin. When the ISP API bin is called via this function, the magic key in the ISP API bin will be examined to see if it matches the user_key transmitted by the function. The magic key value can be modified in the Settings in the IQ Tool, as shown in Figure 2.

MI_ISP_ApiCmdLoadCaliData¶
-
Objective
This function is used to load offline calibration data file, which will be tunneled to the customer’s application after user calibrates the parameter file (*.data) in the offline version of calibration program, so that this API function can be called during offline calibration.
-
Syntax
MI_S32 MI_ISP_ApiCmdLoadCaliData(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_CaliItem_e eCaliItem, char *filepath);
-
Description
Call this function to load the parameter file (*.data) from the offline version of calibration program, so that the customer can directly load this data file in their application.
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. eCaliItem Enum structure of the calibration project. filepath Filepath for the file of calibration parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI ISP API DATA TYPE¶
MI_ISP_IQ_Bool Structure¶
Enum Structure¶
-
Description
Enum structure of Boolean value.
-
Definition
typedef enum
{
E_SS_IQ_FALSE = 0,
E_SS_IQ_TRUE = !E_SS_IQ_FALSE,
E_SS_IQ_BOOL_MAX
} MI_ISP_IQ_Bool_e;
-
Name
Variable Name Description E_SS_IQ_FALSE Boolean value = 0. E_SS_IQ_TRUE Boolean value = 1. E_SS_IQ_BOOL_MAX Determine the maximum value in the enum list of Boolean value. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_OpType Structure¶
Enum Structure¶
-
Description
The enum structure of working mode.
-
Definition
typedef enum
{
E_SS_IQ_OP_TYP_AUTO = 0,
E_SS_IQ_OP_TYP_MANUAL = !E_SS_IQ_OP_TYP_AUTO,
E_SS_IQ_OP_TYP_MODE_MAX
} MI_ISP_IQ_OpType_e;
-
Name
Variable Name Description E_SS_IQ_OP_TYP_AUTO Auto working mode. E_SS_IQ_OP_TYP_MANUAL Manual working mode. E_SS_IQ_OP_TYP_MODE_MAX Determine the maximum value in the enum list of working mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_ParamMode Structure¶
Enum Structure¶
-
Description
The enum structure of IQ special mode.
-
Definition
typedef enum
{
E_SS_IQ_PARAM_MODE_NORMAL = 0,
E_SS_IQ_PARAM_MODE_NIGHT = 1,
E_SS_IQ_PARAM_MODE_MAX
} MI_ISP_IQ_ParamMode_e;
-
Name
Variable Name Description E_SS_IQ_PARAM_MODE_NORMAL IQ daytime working mode. E_SS_IQ_PARAM_MODE_NIGHT IQ nighttime working mode. E_SS_IQ_PARAM_MODE_MAX Determine the maximum value in the enum list of IQ working mode. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetIqMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ParamMode_e *data);
MI_S32 MI_ISP_IQ_GetIqMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ParamMode_e *data);
MI_ISP_IQ_BypassMode Structure¶
Enum Structure¶
-
Description
The enum structure of Bypass working mode.
-
Definition
typedef enum
{
E_SS_BYPASS_OFF = 0,
E_SS_BYPASS_ON,
E_SS_BYPASS_MAX
} MI_ISP_IQ_BypassMode_e;
-
Name
Variable Name Description E_SS_BYPASS_OFF Disable Bypass mode. E_SS_BYPASS_ON Enable Bypass mode. E_SS_ BYPASS_MAX Determine the maximum value in the enum list of Bypass working mode. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetApiBypassMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ApiBypassType_t *data);
MI_S32 MI_ISP_IQ_GetApiBypassMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ApiBypassType_t *data);
MI_ISP_IQ_Index Structure¶
Enum Structure¶
-
Description
The enum structure of IQ exposure index (ISO index).
-
Definition
typedef enum
{
E_SS_IQ_INDEX_0 = 0,
E_SS_IQ_INDEX_1,
E_SS_IQ_INDEX_2,
E_SS_IQ_INDEX_3,
E_SS_IQ_INDEX_4,
E_SS_IQ_INDEX_5,
E_SS_IQ_INDEX_6,
E_SS_IQ_INDEX_7,
E_SS_IQ_INDEX_8,
E_SS_IQ_INDEX_9,
E_SS_IQ_INDEX_10,
E_SS_IQ_INDEX_11,
E_SS_IQ_INDEX_12,
E_SS_IQ_INDEX_13,
E_SS_IQ_INDEX_14,
E_SS_IQ_INDEX_15,
E_SS_IQ_INDEX_MAX
} MI_ISP_IQ_Index_e;
-
Name
Variable Name Description E_SS_IQ_INDEX_0 E_SS_IQ_INDEX_0 ISO index = 0, gain value = 1x. E_SS_IQ_INDEX_1 E_SS_IQ_INDEX_0 ISO index = 1, gain value = 2x. E_SS_IQ_INDEX_2 E_SS_IQ_INDEX_0 ISO index = 2, gain value = 4x. E_SS_IQ_INDEX_3 E_SS_IQ_INDEX_0 ISO index = 3, gain value = 8x. E_SS_IQ_INDEX_4 E_SS_IQ_INDEX_0 ISO index = 4, gain value = 16x. E_SS_IQ_INDEX_5 E_SS_IQ_INDEX_0 ISO index = 5, gain value = 32x. E_SS_IQ_INDEX_6 E_SS_IQ_INDEX_0 ISO index = 6, gain value = 64x. E_SS_IQ_INDEX_7 E_SS_IQ_INDEX_0 ISO index = 7, gain value = 128x. E_SS_IQ_INDEX_8 E_SS_IQ_INDEX_0 ISO index = 8, gain value = 256x. E_SS_IQ_INDEX_9 E_SS_IQ_INDEX_0 ISO index = 9, gain value = 512x. E_SS_IQ_INDEX_10 E_SS_IQ_INDEX_0 ISO index = 10, gain value = 1024x. E_SS_IQ_INDEX_11 E_SS_IQ_INDEX_0 ISO index = 11, gain value = 2048x. E_SS_IQ_INDEX_12 E_SS_IQ_INDEX_0 ISO index = 12, gain value = 4096x. E_SS_IQ_INDEX_13 E_SS_IQ_INDEX_0 ISO index = 13, gain value = 8192x. E_SS_IQ_INDEX_14 E_SS_IQ_INDEX_0 ISO index = 14, gain value = 16384x. E_SS_IQ_INDEX_15 E_SS_IQ_INDEX_0 ISO index = 15, gain value = 32678x. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_GetIqInd(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_Index_e *data);
MI_ISP_IQ_ApiId Structure¶
Enum Structure¶
-
Description
The enum structure of of each API ID.
-
Definition
typedef enum
{
E_API20_AUTO = 0,
E_API20_FPN = 1,
E_API20_CCM = 2,
E_API20_SAT = 3,
E_API20_OBC = 4,
E_API20_OBC_P1 = 5,
E_API20_FCOLOR = 6,
E_API20_CR = 7,
E_API20_NR_DESPIKE = 8,
E_API20_SHP = 9,
E_API20_NR_3D = 10,
E_API20_BRI = 11,
E_API20_LIG = 12,
E_API20_CST = 13,
E_API20_GMA = 14,
E_API20_CTG = 15,
E_API20_NR_NLM = 16,
E_API20_DEFOG = 17,
E_API20_DRC = 18,
E_API20_DPC = 19,
E_API20_HSV = 20,
E_API20_WDR_LOC = 21,
E_API20_RGBIR = 22,
E_API20_YUVGMA = 23,
E_API20_HDR16TO12 = 24,
E_API20_COLORTRANS = 25,
E_API20_HDR = 26,
E_API20_EFFECT = 27,
E_API20_PFC = 28,
E_API20_SIIR = 29,
E_API20_DM = 30,
E_API20_NR_3D_P1 = 31,
E_API20_WDR_CURVE_ADV = 32,
E_API20_MXNR = 33,
E_API20_R2Y = 34,
E_API20_LSC = 35,
E_API20_LSC_CTRL = 36,
E_API20_ALSC = 37,
E_API20_ALSC_CTRL = 38,
E_API20_DPC_CLUSTER = 39,
E_API20_PFC_EX = 40,
E_API20_HDR_EX = 41,
E_API20_SHP_EX = 42,
E_API20_NR_3D_EX = 43,
E_API20_GNR = 44,
E_API20_DUMMY = 45,
E_API20_DUMMY_EX = 46,
E_API20_WDR_CURVE_FUL = 47,
E_API20_ADAPTIVE_GMA = 48,
E_API20_XNR = 49,
E_API20_TEMP = 50,
E_API20_TEMP_INFO = 51,
E_API20_MAX = 52,
} MI_ISP_API_ID_e;
-
Name
N/A.
-
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetApiBypassMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ApiBypassType_t *data);
MI_S32 MI_ISP_IQ_GetApiBypassMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ApiBypassType_t *data);
MI_ISP_AWB_AlgoType Structure¶
Enum Structure¶
-
Description
The enum structure of AWB algorithm.
-
Definition
typedef enum
{
E_SS_AWB_ALG_GRAYWORLD = 0,
E_SS_AWB_ALG_NORMAL = 1,
E_SS_AWB_ALG_BALANCE = 2,
E_SS_AWB_ALG_FOCUS = 3,
E_SS_AWB_ALG_MAX
} MI_ISP_AWB_AlgoType_e;
-
Name
Variable Name Description E_SS_AWB_ALG_ GRAYWORLD Use all AWB statistics to calculate the WB gain. E_SS_AWB_ALG_NORMAL Use the AWB statistics located in the first two to three CT blocks that have the highest count to calculate the WB gain. E_SS_AWB_ALG_BALANCE Use all the AWB statistics located in effective CT blocks to calculate the WB gain. E_SS_AWB_ALG_FOCUS WB gain calculation will focus on single color temperature. E_SS_AWB_ALG_MAX Determine the maximum value in the enum list of AWB algorithm. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_AWB_AdvType Structure¶
Enum Structure¶
-
Description
The enum structure of advanced AWB algorithm.
-
Definition
typedef enum
{
E_SS_AWB_ADV_DEFAULT = 0,
E_SS_AWB_ADV_ADVANCE = 1,
E_SS_AWB_ADV_MAX
} MI_ISP_AWB_AdvType_e;
-
Name
Variable Name Description E_SS_AWB_ADV_DEFAULT Default AWB algorithm. E_SS_AWB_ADV_ADVANCE Advanced AWB algorithm, which enables the setting function of MI_ISP_AWB_SetAttrEx. E_SS_AWB_ADV_MAX Determine the maximum value in the enum list of advanced AWB algorithm. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_AF_AlgoType Structure¶
Enum Structure¶
-
Description
The enum structure of advanced auto focus algorithm.
-
Definition
typedef enum
{
E_SS_AF_ALGO_ONESHOT = 0,
E_SS_AF_ALGO_CONTINUOUS = 1
} MI_ISP_AF_AlgoType_e;
-
Name
Variable Name Description E_SS_AF_ALGO_ONESHOT Scan all spots in one shot and then stay at the spot of the maximum statistical value. E_SS_AF_ALGO_CONTINUOUS Detect environmental changes dynamically and refocus if any change is found. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_AF_AccSelType Structure¶
Enum Structure¶
-
Description
The enum structure of auto focus statistical value.
-
Definition
typedef enum attribute ((aligned (4)))
{
E_SS_AF_ACC_IIRH = 0,
E_SS_AF_ACC_IIRL = 1,
E_SS_AF_ACC_SBLV = 2,
E_SS_AF_ACC_SBLH = 3,
E_SS_AF_ACC_LUMA = 4,
E_SS_AF_ACC_MAX = 0xffffffff
} MI_ISP_AF_AccSelType_e;
-
Name
Variable Name Description E_SS_AF_ACC_IIRH Statistical value of IIRH. E_SS_AF_ACC_IIRL Statistical value of IIRL. E_SS_AF_ACC_SBLV Statistical value of SBLV. E_SS_AF_ACC_SBLH Statistical value of SBLH. E_SS_AF_ACC_LUMA Statistical value of LUMA. E_SS_AF_ACC_MAX The maximum value in the enum list of statistical values. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_CaliItem Structure¶
Enum Structure¶
-
Description
The enum structure of calibration item.
-
Definition
typedef enum
{
E_SS_CALI_ITEM_AWB = 0,
E_SS_CALI_ITEM_OBC,
E_SS_CALI_ITEM_SDC,
E_SS_CALI_ITEM_ALSC,
E_SS_CALI_ITEM_LSC,
E_SS_CALI_ITEM_AWB_EX,
E_SS_CALI_ITEM_MAX,
} MI_ISP_CALI_ITEM_e;
-
Name
Variable Name Description E_SS_CALI_ITEM_AWB Calibration of AWB compensation. E_SS_CALI_ITEM_OBC Calibration of optical black compensation. E_SS_CALI_ITEM_SDC Calibration of static defective pixel compensation. E_SS_CALI_ITEM_ALSC Calibration of lens compensation. E_SS_CALI_ITEM_LSC Calibration of lens compensation. E_SS_CALI_ITEM_AWB_EX Calibration of AWB compensation with function of brightness compensation. E_SS_CALI_ITEM_MAX Determine the maximum value in the enum list of calibration item. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_ApiCmdLoadCaliData(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_CaliItem_e eCaliItem, char *filepath);
MI_ISP_IQ_VersionInfo Structure¶
Type Structure¶
-
Description
The type structure to get ISP IQ version number.
-
Definition
typedef struct MI_ISP_IQ_VersionInfoType_s
{
MI_ISP_IQ_VersionInfoParam_t stParaAPI;
} MI_ISP_IQ_VersionInfoType_t;
-
Name
Variable Name Description stParaAPI The type structure to get ISP IQ version number. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetVersionInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_VersionInfoType_t *data);
MI_S32 MI_ISP_IQ_GetVersionInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_VersionInfoType_t *data);
Parameter Structure¶
-
Description
The parameter structure to get ISP IQ version number.
-
Definition
typedef struct MI_ISP_IQ_VersionInfoParam_s
{
MI_U32 u32Vendor;
MI_U32 u32Major;
MI_U32 u32Minor;
} MI_ISP_IQ_VersionInfoParam_t;
-
Name
Variable Name Description u32Vendor ISP IQ Vendor version number, get and set info. u32Major ISP IQ Major version number, get info only u32Minor ISP IQ Minor version number, get info only. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_ParamInitInfo Structure¶
Type Structure¶
-
Description
The type structure to get the ready status upon ISP initialization.
-
Definition
typedef struct MI_ISP_IQ_ParamInitInfoType_s
{
MI_ISP_IQ_ParamInitInfoParam_t stParaAPI;
} MI_ISP_IQ_ParamInitInfoType_t;
-
Name
Variable Name Description stParaAPI The type structure to get the ready status upon ISP initialization. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_GetParaInitStatus(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ParamInitInfoType_t *data);
Parameter Structure¶
-
Description
The parameter structure to get the ready status upon ISP initialization.
-
Definition
typedef struct MI_ISP_IQ_ParamInitInfoParam_s
{
MI_ISP_IQ_Bool_e bFlag;
} MI_ISP_IQ_ParamInitInfoParam_t;
-
Name
Variable Name Description bFlag The Boolean value to get ISP status upon completing initialization.
To disable, set E_SS_IQ_FALSE = 0.
To enable, set E_SS_IQ_TRUE = 1. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_ColorToGray Structure¶
Type Structure¶
-
Description
The type structure to set color to grayscale image conversion.
-
Definition
typedef struct MI_ISP_IQ_ColorToGrayType_s
{
MI_ISP_IQ_Bool_e bEnable;
} MI_ISP_IQ_ColorToGrayType_t;
-
Name
Variable Name Description bEnable The Boolean value to set color to grayscale image conversion.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetColorToGray(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ColorToGrayType_t *data);
MI_S32 MI_ISP_IQ_GetColorToGray(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ColorToGrayType_t *data);
MI_ISP_IQ_Contrast Structure¶
Type Structure¶
-
Description
The type structure to set contrast.
-
Definition
typedef struct MI_ISP_IQ_ContrastType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_ContrastAutoAttr_t stAuto;
MI_ISP_IQ_ContrastManualAttr_t stManual;
} MI_ISP_IQ_ContrastType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of contrast.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of contrast.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set contrast. stManual The attribute structure of manual mode to set contrast. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetContrast(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ContrastType_t *data);
MI_S32 MI_ISP_IQ_GetContrast(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ContrastType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set contrast.
-
Definition
typedef struct MI_ISP_IQ_ContrastAutoAttr_s
{
MI_ISP_IQ_LevelBaseParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_ContrastAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set contrast.
-
Definition
typedef struct MI_ISP_IQ_ContrastManualAttr_s
{
MI_ISP_IQ_LevelBaseParam_t stParaAPI;
} MI_ISP_IQ_ContrastManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set contrast, brightness and lightness.
-
Definition
typedef struct MI_ISP_IQ_LevelBaseParam_s
{
MI_U32 u32Lev;
} MI_ISP_IQ_LevelBaseParam_t;
-
Name
Variable Name Description u32Lev The variable value of strength for contrast, brightness, and lightness. Parameter range: 0 ~ 100. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Brightness Structure¶
Type Structure¶
-
Description
The type structure to set brightness.
-
Definition
typedef struct MI_ISP_IQ_BrightnessType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_BrightnessAutoAttr_t stAuto;
MI_ISP_IQ_BrightnessManualAttr_t stManual;
} MI_ISP_IQ_BrightnessType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of brightness.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of brightness.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set brightness. stManual The attribute structure of manual mode to set brightness. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetBrightness(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_BrightnessType_t *data);
MI_S32 MI_ISP_IQ_GetBrightness(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_BrightnessType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set brightness.
-
Definition
typedef struct MI_ISP_IQ_BrightnessAutoAttr_s
{
MI_ISP_IQ_LevelBaseParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_BrightnessAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set brightness.
-
Definition
typedef struct MI_ISP_IQ_BrightnessManualAttr_s
{
MI_ISP_IQ_LevelBaseParam_t stParaAPI;
} MI_ISP_IQ_BrightnessManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Lightness Structure¶
Type Structure¶
-
Description
The type structure to set lightness.
-
Definition
typedef struct MI_ISP_IQ_LightnessType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_LightnessAutoAttr_t stAuto;
MI_ISP_IQ_LightnessManualAttr_t stManual;
} MI_ISP_IQ_LightnessType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of lightness.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of lightness.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set lightness. stManual The attribute structure of manual mode to set lightness. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetLightness(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_LightnessType_t *data);
MI_S32 MI_ISP_IQ_GetLightness(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_LightnessType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set lightness.
-
Definition
typedef struct MI_ISP_IQ_LightnessAutoAttr_s
{
MI_ISP_IQ_LevelBaseParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_LightnessAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set lightness.
-
Definition
typedef struct MI_ISP_IQ_LightnessManualAttr_s
{
MI_ISP_IQ_LevelBaseParam_t stParaAPI;
} MI_ISP_IQ_LightnessManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_RgbGamma Structure¶
Type Structure¶
-
Description
The type structure to set RGB Gamma curve.
-
Definition
typedef struct MI_ISP_IQ_RgbGammaType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_RgbGammaAutoAttr_t stAuto;
MI_ISP_IQ_RgbGammaManualAttr_t stManual;
} MI_ISP_IQ_RgbGammaType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of RGB Gamma curve.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of RGB Gamma curve.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set RGB Gamma curve. stManual The attribute structure of manual mode to set RGB Gamma curve. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetRgbGamma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_RgbGammaType_t *data);
MI_S32 MI_ISP_IQ_GetRgbGamma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_RgbGammaType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set RGB Gamma curve.
-
Definition
typedef struct MI_ISP_IQ_RgbGammaAutoAttr_s
{
MI_ISP_IQ_RgbGammaParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_RgbGammaAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set RGB Gamma curve.
-
Definition
typedef struct MI_ISP_IQ_RgbGammaManualAttr_s
{
MI_ISP_IQ_RgbGammaParam_t stParaAPI;
} MI_ISP_IQ_RgbGammaManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set RGB Gamma curve.
-
Definition
typedef struct MI_ISP_IQ_RgbGammaParam_s
{
MI_U16 u16LutR[RGBGAMMA_NUM];
MI_U16 u16LutG[RGBGAMMA_NUM];
MI_U16 u16LutB[RGBGAMMA_NUM];
} MI_ISP_IQ_RgbGammaParam_t;
-
Name
Variable Name Description u16LutR[RGBGAMMA_NUM] R channel component. Parameter range: 0 ~ 1023. RGBGAMMA_NUM = 256. u16LutG[RGBGAMMA_NUM] G channel component. Parameter range: 0 ~ 1023. RGBGAMMA_NUM = 256. u16LutB[RGBGAMMA_NUM] B channel component. Parameter range: 0 ~ 1023. RGBGAMMA_NUM = 256. -
Note
Gamma setting on three channels is supported. We suggest setting the same value to the three channels, as shown in Figure 3.

-
Related Structure Type and Function
N/A.
MI_ISP_IQ_YuvGamma Structure¶
Type Structure¶
-
Description
The type structure to set YUV Gamma curve.
-
Definition
typedef struct MI_ISP_IQ_YuvGammaType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_YuvGammaAutoAttr_t stAuto;
MI_ISP_IQ_YuvGammaManualAttr_t stManual;
} MI_ISP_IQ_YuvGammaType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of YUV Gamma curve.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of YUV Gamma curve.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set YUV Gamma curve. stManual The attribute structure of manual mode to set YUV Gamma curve. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetYuvGamma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_YuvGammaType_t *data);
MI_S32 MI_ISP_IQ_GetYuvGamma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_YuvGammaType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set YUV Gamma curve.
-
Definition
typedef struct MI_ISP_IQ_YuvGammaAutoAttr_s
{
MI_ISP_IQ_YuvGammaParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_YuvGammaAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set YUV Gamma curve.
-
Definition
typedef struct MI_ISP_IQ_YuvGammaManualAttr_s
{
MI_ISP_IQ_YuvGammaParam_t stParaAPI;
} MI_ISP_IQ_YuvGammaManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set YUV Gamma curve.
-
Definition
typedef struct MI_ISP_IQ_YuvGammaParam_s
{
MI_U16 u16LutY[YUVGAMMA_Y_NUM];
MI_S16 s16LutU[YUVGAMMA_U_NUM];
MI_S16 s16LutV[YUVGAMMA_V_NUM];
} MI_ISP_IQ_YuvGammaParam_t;
-
Name
Variable Name Description u16LutY[YUVGAMMA_Y_NUM] Y channel component. Parameter range: 0 ~ 1023.
YUVGAMMA_Y_NUM = 256s16LutU[YUVGAMMA_U_NUM] U channel component. Parameter range: 0 ~ 511.
YUVGAMMA_U_NUM = 128s16LutV[YUVGAMMA_V_NUM] V channel component. Parameter range: 0 ~ 511.
YUVGAMMA_V_NUM = 128 -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_AdaptiveGamma Structure¶
Type Structure¶
-
Description
The type structure to set Adaptive Gamma curve.
-
Definition
typedef struct MI_ISP_IQ_AdaptiveGammaType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_U16 u16BTGamma[ADAPTIVE_GAMMA_NUM];
MI_U16 u16DTGamma[ADAPTIVE_GAMMA_NUM];
} MI_ISP_IQ_AdaptiveGammaType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of Adaptive Gamma curve.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u16BTGamma[ADAPTIVE_GAMMA_NUM] Bright Tone Gamma curve; if GMBlendRatio in StrategyExInfo is lower than 512, BTGamma and normal Gamma will be blended according to GMBlendRatio. ADAPTIVE_GAMMA_NUM = 256. u16DTGamma[ADAPTIVE_GAMMA_NUM] Dark Tone Gamma curve; if GMBlendRatio in StrategyExInfo is higher than 512, DTGamma and normal Gamma will be blended according to GMBlendRatio. ADAPTIVE_GAMMA_NUM = 256. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetAdaptiveGamma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AdaptiveGammaType_t *data);
MI_S32 MI_ISP_IQ_GetAdaptiveGamma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AdaptiveGammaType_t *data);
MI_ISP_IQ_Saturation Structure¶
Type Structure¶
-
Description
The type structure to set saturation.
-
Definition
typedef struct MI_ISP_IQ_SaturationType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_SaturationAutoAttr_t stAuto;
MI_ISP_IQ_SaturationManualAttr_t stManual;
} MI_ISP_IQ_SaturationType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of saturation.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of saturation.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set saturation. stManual The attribute structure of manual mode to set saturation. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetSaturation(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SaturationType_t *data);
MI_S32 MI_ISP_IQ_GetSaturation(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SaturationType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set saturation.
-
Definition
typedef struct MI_ISP_IQ_SaturationAutoAttr_s
{
MI_ISP_IQ_SaturationParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_SaturationAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set saturation.
-
Definition
typedef struct MI_ISP_IQ_SaturationManualAttr_s
{
MI_ISP_IQ_SaturationParam_t stParaAPI;
} MI_ISP_IQ_SaturationManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set saturation.
-
Definition
typedef struct MI_ISP_IQ_SaturationParam_s
{
MI_U8 u8SatAllStr;
MI_U8 u8SatByYSFTAdv[SAT_LUT_X_NUM];
MI_U8 u8SatByYLUTAdv[SAT_LUT_Y_NUM];
MI_U8 u8SatBySSFTAdv[SAT_LUT_X_NUM];
MI_U8 u8SatBySLUTAdv[SAT_LUT_Y_NUM];
MI_U8 u8SatCoring;
} MI_ISP_IQ_SaturationParam_t;
-
Name
Variable Name Description u8SatAllStr The value of global saturation strength.
Parameter range: 0 ~ 127 (32 = 1x).u8SatByYSFTAdv[SAT_LUT_X_NUM] Adjust the strength of saturation in bright interval.
Parameter range: 0 ~ 8.
SAT_LUT_X_NUM = 5.u8SatByYLUTAdv[SAT_LUT_Y_NUM] Adjust the strength of saturation based on bright interval.
Parameter range: 0 ~ 128.
SAT_LUT_Y_NUM = 6.u8SatBySSFTAdv[SAT_LUT_X_NUM] Adjust the strength of saturation in Chroma interval.
Parameter range: 0 ~ 8.
SAT_LUT_X_NUM = 5.u8SatBySLUTAdv[SAT_LUT_Y_NUM] Adjust the strength of saturation based on Chroma interval.
Parameter range: 0 ~ 128.
SAT_LUT_Y_NUM = 6.u8SatCoring Reduce Chroma by one. Parameter range: 0 ~ 255. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Hsv Structure¶
Type Structure¶
-
Description
The type structure to set HSV.
-
Definition
typedef struct MI_ISP_IQ_HsvType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_HsvAutoAttr_t stAuto;
MI_ISP_IQ_HsvManualAttr_t stManual;
} MI_ISP_IQ_HsvType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of HSV.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of HSV.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set HSV. stManual The attribute structure of manual mode to set HSV. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetHsv(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_HsvType_t *data);
MI_S32 MI_ISP_IQ_GetHsv(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_HsvType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set HSV.
-
Definition
typedef struct MI_ISP_IQ_HsvAutoAttr_s
{
MI_ISP_IQ_HsvParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_HsvAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set HSV.
-
Definition
typedef struct MI_ISP_IQ_HsvManualAttr_s
{
MI_ISP_IQ_HsvParam_t stParaAPI;
} MI_ISP_IQ_HsvManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_RgbMatrix Structure¶
Type Structure¶
-
Description
The type structure to set RGB color correction matrix.
-
Definition
typedef struct MI_ISP_IQ_RgbMatrixType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_RgbMatrixAutoAttr_t stAuto;
MI_ISP_IQ_RgbMatrixManualAttr_t stManual;
} MI_ISP_IQ_RgbMatrixType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of RGB color correction matrix.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of RGB color correction matrix.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set RGB color correction matrix. stManual The attribute structure of manual mode to set RGB color correction matrix. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetRgbMatrix(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_RgbMatrixType_t *data);
MI_S32 MI_ISP_IQ_GetRgbMatrix(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_RgbMatrixType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set RGB color correction matrix.
-
Definition
typedef struct MI_ISP_IQ_RgbMatrixAutoAttr_s
{
MI_ISP_IQ_Bool_e bISOActEn;
MI_ISP_IQ_RgbMatrixParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_RgbMatrixAutoAttr_t;
-
Name
Variable Name Description bISOActEn Set Boolean value for the ISO function.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set RGB color correction matrix.
-
Definition
typedef struct MI_ISP_IQ_RgbMatrixManualAttr_s
{
MI_U16 u16CCM[CCM_COEFF_SUM_INFO_NUM];
MI_U8 u8CCMSat;
} MI_ISP_IQ_RgbMatrixManualAttr_t;
-
Name
Variable Name Description u16CCM[CCM_COEFF_SUM_INFO_NUM] The parameter value of color correction matrix. Parameter range: 0 ~ 8191.
CCM_COEFF_SUM_INFO_NUM = 12
u16CCM[3] = mod(u16CCM[0]+u16CCM[1]+u16CCM[2], 1024)
u16CCM[7] = mod(u16CCM[4]+u16CCM[5]+u16CCM[6], 1024)
u16CCM[11] = mod(u16CCM[8]+u16CCM[9]+u16CCM[10], 1024)u8CCMSat Adjust the strength of saturation through color correction matrix. Parameter range: 0 ~ 100. -
Note
u8CCMSat = 0 represents the value of color correction unit matrix.
u8CCMSat = 100 represents the value of color correction matrix.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set RGB color correction matrix.
-
Definition
typedef struct MI_ISP_IQ_RgbMatrixParam_s
{
MI_U16 u16CCTthr;
MI_U16 u16CCM[CCM_COEFF_SUM_INFO_NUM];
MI_U8 u8CCMSat;
} MI_ISP_IQ_RgbMatrixParam_t;
-
Name
Variable Name Description u16CCTthr The representative color temperature of certain color correction matrix (CCM). Parameter range: 0 ~ 10000. u16CCM[CCM_COEFF_SUM_INFO_NUM] The value of color correction matrix parameter. Parameter range: 0 ~ 8191.
CCM_COEFF_SUM_INFO_NUM = 12.
u16CCM[3] = mod(u16CCM[0]+u16CCM[1]+u16CCM[2], 1024).
u16CCM[7] = mod(u16CCM[4]+u16CCM[5]+u16CCM[6], 1024).
u16CCM[11] = mod(u16CCM[8]+u16CCM[9]+u16CCM[10], 1024).u8CCMSat Adjust the strength of saturation through color correction matrix. Parameter range: 0 ~ 100. -
Note
u8CCMSat = 0 represents the value of color correction unit matrix.
u8CCMSat = 100 represents the value of color correction matrix.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_CcmInfo Structure¶
Type Structure¶
-
Description
The type structure to set the color correction matrix of corrent color temperature.
-
Definition
typedef struct MI_ISP_IQ_CcmInfoType_s
{
MI_U16 u16CCM[CCM_COEFF_SUM_INFO_NUM]; //0 ~ 8191(1024 = 1x)
MI_U16 u16CCT;
} MI_ISP_IQ_CcmInfoType_t;
-
Name
Variable Name Description u16CCM[CCM_COEFF_SUM_INFO_NUM] Parameter value of color correction matrix, including the sum of CCM coefficients. Parameter range: 0 ~ 8191.
CCM_COEFF_SUM_INFO_NUM = 12
u16CCM[0 ~ 3] -> CCM00, CCM01, CCM02, CCM_Rsum
u16CCM[4 ~ 7] -> CCM10, CCM11, CCM12, CCM_Gsum
u16CCM[8 ~ 11] -> CCM20, CCM21, CCM22, CCM_Bsumu16CCT Get current color temperature value. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_QueryCcmInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_CcmInfoType_t *data);
MI_ISP_IQ_FalseColor Structure¶
Type Structure¶
-
Description
The type structure to set false color suppression.
-
Definition
typedef struct MI_ISP_IQ_FalseColorType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_FalseColorAutoAttr_t stAuto;
MI_ISP_IQ_FalseColorManualAttr_t stManual;
} MI_ISP_IQ_FalseColorType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of false color suppression.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of false color suppression.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set false color suppression. stManual The attribute structure of manual mode to set false color suppression. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetFalseColor(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_FalseColorType_t *data);
MI_S32 MI_ISP_IQ_GetFalseColor(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_FalseColorType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set false color suppression.
-
Definition
typedef struct MI_ISP_IQ_FalseColorAutoAttr_s
{
MI_ISP_IQ_FalseColorParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_FalseColorAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set false color suppression.
-
Definition
typedef struct MI_ISP_IQ_FalseColorManualAttr_s
{
MI_ISP_IQ_FalseColorParam_t stParaAPI;
} MI_ISP_IQ_FalseColorManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set false color suppression.
-
Definition
typedef struct MI_ISP_IQ_FalseColorParam_s
{
MI_U8 u8FreqThrd;
MI_U8 u8EdgeScoreThrd;
MI_U8 u8ChromaThrdOfStrengthMax;
MI_U8 u8ChromaThrdOfStrengthMid;
MI_U8 u8ChromaThrdOfStrengthMin;
MI_U8 u8StrengthMid;
MI_U8 u8StrengthMin;
} MI_ISP_IQ_FalseColorParam_t;
-
Name
Variable Name Description u8FreqThrd Moire frequency threshold. Patterns over this threshold will be judged as Moire patterns. Parameter range: 0 ~ 255, default is 140. u8EdgeScoreThrd Moire edge threshold. Patterns below this threshold will be judged as Moire patterns. Parameter range: 0 ~ 255, default is 31. u8ChromaThrdOfStrengthMax Maximum strength threshold. Parameter range: 0 ~ 127, default is 10. u8ChromaThrdOfStrengthMid Medium strength threshold. Parameter range: 0 ~ 127, default is 40. u8ChromaThrdOfStrengthMin Minimum strength threshold. Parameter range: 0 ~ 127, default is 80. u8StrengthMid Medium strength. Parameter range: 0 ~ 7, default is 7. u8StrengthMin Minimum strength. Parameter range: 0 ~ 7, default is 7. 
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Nr3d Structure¶
Type Structure¶
-
Description
The type structure to set 3D noise reduction.
-
Definition
typedef struct MI_ISP_IQ_Nr3dType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_Nr3dAutoAttr_t stAuto;
MI_ISP_IQ_Nr3dManualAttr_t stManual;
} MI_ISP_IQ_Nr3dType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of 3D noise reduction.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of 3D noise reduction.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set 3D noise reduction. stManual The attribute structure of manual mode to set 3D noise reduction. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetNr3d(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_Nr3dType_t *data);
MI_S32 MI_ISP_IQ_GetNr3d(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_Nr3dType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set 3D noise reduction.
-
Definition
typedef struct MI_ISP_IQ_Nr3dAutoAttr_s
{
MI_ISP_IQ_Nr3dParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_Nr3dAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set 3D noise reduction.
-
Definition
typedef struct MI_ISP_IQ_Nr3dManualAttr_s
{
MI_ISP_IQ_Nr3dParam_t stParaAPI;
} MI_ISP_IQ_Nr3dManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set 3D noise reduction.
-
Definition
typedef struct MI_ISP_IQ_Nr3dParam_s
{
MI_U8 u8TfStrY;
MI_U8 u8TfStrC;
MI_U8 u8MdThd;
MI_U16 u16MdGain;
MI_U16 u16MotEdgeRefineStr;
MI_U8 u8MdThdByY[NR3D_BY_Y_NUM];
MI_U8 u8MdGainByY[NR3D_BY_Y_NUM];
MI_U8 u8MdThdByMot[NR3D_BY_MOT];
MI_U8 u8MdGainByMot[NR3D_BY_Y_MOT];
MI_U16 u16M2SLut[NR3D_BY_MOT_NUM];
MI_U8 u8M2SHistDelayByDiff[NR3D_BY_MOT_NUM];
MI_U8 u8ShdMotSensitivity[NR3D_BY_MOT_NUM];
MI_U8 u8TfLut[15];
MI_U8 u8MotShpBlendLut[NR3D_BY_MOT_NUM];
} MI_ISP_IQ_Nr3dParam_t;
-
Name
Variable Name Description u8MdThd Control the threshold value of motion detection. Values lower than this threshold will be judged as still objects. The higher the threshold, the stronger the 3D noise reduction. Parameter range: 0 ~ 255. u16MdGain Control the gain of motion detection. The greater the gain, the easier an object will be judged as still, and the stronger the 3D noise reduction. Parameter range: 0 ~ 1023. u8TfStr 3D noise reduction strength control. Parameter range: 0 ~ 64. u8TfStrEx Enhanced 3D noise reduction strength control. If enabled, the strength will get greater, but with more obvious ghost images. Parameter range: 0 ~ 64. u8MdThdByY[NR3D_BY_Y_NUM] Control the threshold value of motion detection according to brightness (Y). The greater the value, the stronger the 3D noise reduction. Parameter range: 0 ~ 255. NR3D_BY_Y_NUM = 16. u8MdGainByY[NR3D_BY_Y_NUM] Control the gain of motion detection according to brightness (Y). The greater the value, the stronger the 3D noise reduction. Parameter range: 0 ~ 255. NR3D_BY_Y_NUM = 16. u8M2SLut[NR3D_BY_MOT_NUM] Control the convergence speed of 3D noise reduction from motion to stillness. The greater the value, the slower the convergence speed. This parameter can be used to prevent ghost image. Parameter range: 0 ~ 31. NR3D_BY_MOT_NUM = 16. u16TfLut[NR3D_BY_MOT_NUM] Control the 3D noise reduction strength based on motion. Parameter range: 0 ~ 4095. NR3D_BY_MOT_NUM = 16. u8YSfBlendLut[NR3D_BY_MOT_NUM] Control the 2D noise reduction strength based on motion. Parameter range: 0 ~ 16. NR3D_BY_MOT_NUM = 16. u8YSfBlendOffset Control the ratio of extra 3D noise reduction against returned reference frame based on motion. The greater the value, the stronger the 3D noise reduction. Parameter range: 0 ~ 16. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_NrDespike Structure¶
Type Structure¶
-
Description
The type structure to set DeSpike noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrDespikeType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_NrDespikeAutoAttr_t stAuto;
MI_ISP_IQ_NrDespikeManualAttr_t stManual;
} MI_ISP_IQ_NrDespikeType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of DeSpike noise reduction.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of DeSpike noise reduction.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set DeSpike noise reduction. stManual The attribute structure of manual mode to set DeSpike noise reduction. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetNrDeSpike(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrDespikeType_t *data);
MI_S32 MI_ISP_IQ_GetNrDeSpike(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrDespikeType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set DeSpike noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrDespikeAutoAttr_s
{
MI_ISP_IQ_NrDespikeParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_NrDespikeAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set DeSpike noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrDespikeManualAttr_s
{
MI_ISP_IQ_NrDespikeParam_t stParaAPI;
} MI_ISP_IQ_NrDespikeManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set DeSpike noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrDespikeParam_s
{
MI_U8 u8BlendRatio;
MI_U8 u8StrengthCenterNeighbor;
MI_U8 u8StrengthMeanStd;
MI_U8 u8StrengthCornerCross;
MI_U8 u8DiffGainMeanStd;
MI_U8 u8DiffGainCenterNeighbor;
MI_U8 u8DiffThdCornerCross;
MI_U16 u16BlendLut[NRDESPIKE_BLEND_LUT_NUM];
MI_U8 u8StrengthByY[NRDESPIKE_BY_Y_NUM];
} MI_ISP_IQ_NrDespikeParam_t;
-
Name
Variable Name Description u8BlendRatio Adjust the global strength of NRDeSpike. The greater the value, the stronger the denoise effect. Parameter range: 0 ~ 15. u8StrengthMeanStd Adjust the strength of the average difference between the center point and neighboring endpoints. Parameter range: 0 ~ 5. u8StrengthCenterNeighbor Adjust the strength of the average difference between the center point and the cross or diagonal cross endpoint. Parameter range: 0 ~ 5. u8StrengthCornerCross Adjust the strength of the diagonal cross and cross endpoint mean subtraction. Parameter range: 0 ~ 5. u8DiffGainMeanStd Adjust the gain to be multiplied by the average difference between the center point and neighboring endpoints. Parameter range: 0 ~ 31. u8DiffThdCenterNeighbor Adjust the threshold value of the average difference between the center point and the cross or diagonal cross endpoint. Parameter range: 0 ~ 255. u8DiffThdCornerCross Adjust the threshold value of the diagonal cross and cross endpoint mean subtraction. Parameter range: 0 ~ 255. u16BlendLut[NRDESPIKE_BLEND_LUT_NUM] Select the blending ratio of median/mean according to brightness (Y). The greater the value, the closer the blending ratio will lean toward the medium setting; the smaller the value, the closer to the mean setting. Parameter range: 0 ~ 2047. NRDESPIKE_BLEND_LUT_NUM = 5. u8StrengthByY[NRDESPIKE_BY_Y_NUM] Adjust strength by brightness (Y). 64 means no adjustment. The smaller the value, the weaker the strength. Parameter range: 0 ~ 64. NRDESPIKE_BY_Y_NUM = 16. -
Note
-
The greater the difference between the center point and the neighboring endpoints, the easier the center point will be erased.
-
The smaller the setting of DiffGain and the greater the setting of Strength, the easier the center point will be erased.
-
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_NrLuma Structure¶
Type Structure¶
-
Description
Set the type structure of Luma noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrLumaType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_NrLumaAutoAttr_t stAuto;
MI_ISP_IQ NrLumaManualAttr_t stManual;
} MI_ISP_IQ_NrLumaType_t;
-
Name
Variable Name Description bEnable Set Boolean value for Luma noise reduction. To disable, set E_SS_IQ_FALSE = 0. To enable, set E_SS_IQ_TRUE = 1. enOpType Set Luma noise reduction mode. Automatic mode: E_SS_IQ_OP_TYP_AUTO = 0. Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1. stAuto Set the Luma noise reduction automatic mode attribute structure. stManual Set the Luma noise reduction manual mode attribute structure. -
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetNRLuma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrLumaType_t *data);
MI_S32 MI_ISP_IQ_GetNRLuma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrLumaType_t *data);
-
Note
N/A.
-
Related Structure Type and Function
N/A.
Automatic Mode Attribute Structure¶
-
Description
Set the automatic mode attribute structure of Luma noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrLumaAutoAttr_s
{
MI_ISP_IQ_NrLumaParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_NrLumaAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Automatic mode attribute structure, MI_ISP_AUTO_NUM = 16. The 16 value correspond respectively to the setting value under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
Set the manual mode attribute structure of Luma noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrLumaManualAttr_s
{
MI_ISP_IQ_NrLumaParam_t stParaAPI;
} MI_ISP_IQ_NrLumaManualAttr_t;
-
Name
Variable Name Description stParaAPI Manual mode attribute structure. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
Set the parameter structure of Luma noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrLumaParam_s
{
MI_U8 u8Strength;
MI_U8 u8GMaskSel;
MI_U16 u16SpfBlendLut[2];
} MI_ISP_IQ_NrLumaParam_t;
-
Name
Variable Name Description u8Strength Final strength control. The greater the value, the stronger the strength. Parameter range: 0 ~ 63. u8GMaskSel Gaussian Filter size selection. 0 for smaller size, and 1 for larger size. Parameter range: 0 ~ 1. u16SpfBlendLut[NRLUMA_SPF_LUT] Blended use of Gaussian Filter (SPF) and Bilateral Filter. If the center point is similar to the surrounding points, more Gaussian results can be applied to achieve a smoother effect. If dissimilar, more Bilateral results can be applied to reserve more details. The horizontal axis represents the degree of similarity. The closer to the right end of the axis, the more similar. The vertical axis represents the strength of Gaussian blending. The greater the value, the greater the blending. Parameter range: 0 ~ 256. NRLUMA_SPF_LUT = 2. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_NRChroma Structure¶
Type Structure¶
-
Description
The type structure to set Chroma noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrChromaType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_NrChromaAutoAttr_t stAuto;
MI_ISP_IQ_NrChromaManualAttr_t stManual;
} MI_ISP_IQ_NrChromaType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of Chroma noise reduction.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of Chroma noise reduction.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set Chroma noise reduction. stManual The attribute structure of manual mode to set Chroma noise reduction. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetNrChroma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrChromaType_t *data);
MI_S32 MI_ISP_IQ_GetNrChroma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrChromaType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set Chroma noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrChromaAutoAttr_s
{
MI_ISP_IQ_NrChromaParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_NrChromaAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set Chroma noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrChromaManualAttr_s
{
MI_ISP_IQ_NrChromaParam_t stParaAPI;
} MI_ISP_IQ_NrChromaManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set Chroma noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrChromaParam_s
{
MI_U8 u8MatchRatio;
MI_U16 u16UvTh;
MI_U16 u16StrengthByCEdge[NRCHROMA_BY_CEDGE_NUM];
} MI_ISP_IQ_NrChromaParam_t;
-
Name
Variable Name Description u8MatchRatio Threshold of match ratio. Parameter range: 0 ~ 31. u16UvTh U/V noise threshold. Parameter range: 0 ~ 256. u16StrengthByCEdge[NRCHROMA_BY_CEDGE_NUM] Control the color noise reduction strength by color edge. Parameter range: 0 ~ 511. NRCHROMA_BY_CEDGE_NUM = 6. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Sharpness Structure¶
Type Structure¶
-
Description
The type structure to set sharpness.
-
Definition
typedef struct MI_ISP_IQ_SharpnessType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_SharpnessAutoAttr_t stAuto;
MI_ISP_IQ_SharpnessManualAttr_t stManual;
} MI_ISP_IQ_SharpnessType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of sharpness.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of sharpness.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set sharpness. stManual The attribute structure of manual mode to set sharpness. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetSharpness(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SharpnessType_t *data);
MI_S32 MI_ISP_IQ_GetSharpness(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SharpnessType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set sharpness.
-
Definition
typedef struct MI_ISP_IQ_SharpnessAutoAttr_s
{
MI_ISP_IQ_SharpnessParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_SharpnessAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set sharpness.
-
Definition
typedef struct MI_ISP_IQ_SharpnessManualAttr_s
{
MI_ISP_IQ_SharpnessParam_t stParaAPI;
} MI_ISP_IQ_SharpnessManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set sharpness.
-
Definition
typedef struct MI_ISP_IQ_SharpnessParam_s
{
MI_U8 u8OverShootGain;
MI_U8 u8UnderShootGain;
MI_U8 u8CorLUT[SHARPNESS_LUT_NUM];
MI_U8 u8SclLUT[SHARPNESS_LUT_NUM];
MI_U16 u16EdgeKillLUT[SHARPNESS_LUT_NUM];
MI_U8 u8CornerReduce;
MI_U8 u8DirTh;
MI_U16 u16SharpnessUD[SHARPNESS_DIRECTION_NUM];
MI_U16 u16SharpnessD[SHARPNESS_DIRECTION_NUM];
MI_U8 u8PreCorUD[SHARPNESS_DIRECTION_NUM];
MI_U8 u8PreCorD[SHARPNESS_DIRECTION_NUM];
MI_U8 u8PreCorMotGain;
MI_U8 u8LpfEdgeGainUD;
MI_U8 u8LpfEdgeGainD;
MI_U8 u8WeakDetailEnhance;
MI_U16 u16DetailTh;
MI_U8 u8DetailMotOffset;
MI_U8 u8DetailByY[SHARPNESS_LUT_NUM];
MI_U16 u16OverShootLimit;
MI_U16 u16UnderShootLimit;
MI_U8 u8MotGain[SHARPNESS_BY_MOT_NUM];
} MI_ISP_IQ_SharpnessParam_t;
-
Name
| Variable Name | Description | | Variable Name | Description | |---------------------|---------------------------------------------| | u8OverShootGain | Adjust the edge overshoot gain. The greater the value, the stronger the sharpness. Parameter range: 0 ~ 255. | | u8UnderShootGain | Adjust the edge undershoot gain. The greater the value, the stronger the sharpness. Parameter range: 0 ~ 255 | | u8CorLUT[SHARPNESS_LUT_NUM] | Smooth-area high-brightness suppression. Parameter range: 0 ~ 255. SHARPNESS_LUT_NUM = 6. | | u8SclLUT[SHARPNESS_LUT_NUM] | Adjust edge output by luminance. Parameter range: 0 ~ 255. SHARPNESS_LUT_NUM = 6. | | u16EdgeKillLUT[SHARPNESS_LUT_NUM] | Set the edge strength output. Parameter range: 0 ~ 1023. SHARPNESS_LUT_NUM = 6. | | u8CornerReduce | Adjust the corner edge sharpness level. Parameter range: 0 ~ 32. | | u8DirTh | Direction threshold. If higher than this threshold, directional filter will be used to strengthen the sharpness of the edge. This will render the edge more continuous, but less natural as a result of the enhancement of sharpness against small edges. Parameter range: 0 ~ 255. | | u16SharpnessUD[SHARPNESS_DIRECTION_NUM] | Non-directional detail texture enhancement, which can be used to enhance the sharpness of small textures such as hair and sod. SharpnessUD[0] can be used for high-frequency treatment, and SharpnessUD[1] for low-frequency treatment. The greater the value, the stronger the edge. Parameter range: 0 ~ 1023. SHARPNESS_DIRECTION_NUM = 2. | | u16SharpnessD[SHARPNESS_DIRECTION_NUM] | Enhance sharpness by direction of the edge for global enhancement of image edge. Excessive enhancement will, however, result in jaggedness. SharpnessD[0] can be used for high-frequency treatment, and SharpnessD[1] for low-frequency treatment. The greater the value, the stronger the edge. Parameter range: 0 ~ 1023. SHARPNESS_DIRECTION_NUM = 2. | | u8PreCorUD[SHARPNESS_DIRECTION_NUM] | Non-directional coring. SharpnessUD[0] can be used for high-frequency treatment, and SharpnessUD[1] for low-frequency treatment. The greater the value, the weaker the edge. Parameter range: 0 ~ 63. SHARPNESS_DIRECTION_NUM = 2. | | u8PreCorD[SHARPNESS_DIRECTION_NUM] | Directional coring. SharpnessD[0] can be used for high-frequency treatment, and SharpnessD[1] for low-frequency treatment. The greater the value, the weaker the edge. Parameter range: 0 ~ 63. SHARPNESS_DIRECTION_NUM = 2. | | u8PreCorMotGain | Enhance coring against motion area based on the value set to PreCorUD and PreCorD. The greater the value, the weaker the edge in the motion area. Parameter range: 0 ~ 255. | | u8LpfEdgeGainUD | Non-directional high/low frequency output ratio control. EdgeGain is further controlled by the results of SharpnessUD, PreCorUD, and PreCorMotGain. The greater the value, the stronger the low-frequency strength and the weaker the high-frequency strength. Parameter range: 0 ~ 255. | | u8LpfEdgeGainD | Directional high/low frequency output ratio control. EdgeGain is further controlled by the results of SharpnessD, PreCorD, and PreCorMotGain. The greater the value, the stronger the low-frequency strength and the weaker the high-frequency strength. Parameter range: 0 ~ 255. | | u8WeakDetailEnhance | Weak detail edge enhancement. Parameter range: 0 ~ 15. | | u16DetailTh | SharpnessUD threshold. Parameter range: 0 ~ 4095. | | u8DetailMotOffset | Adjust SharpnessUD by motion. Parameter range: 0 ~ 255. | | u8DetailByY[SHARPNESS_LUT_NUM] | Adjust SharpnessUD by luminance. Parameter range: 0 ~ 255. SHARPNESS_LUT_NUM = 6. | | u16OverShootLimit | Adjust overshoot limit by the brightest surrounding pixel. If 0, the edge upper limit is the Y value of the brightest surrounding pixel. Parameter range: 0 ~ 1023. | | u16UndreShootLimit | Adjust undershoot limit by the darkest surrounding pixel. If 0, the edge lower limit is the Y value of the darkest surrounding pixel, that is, no undershoot will happen. Parameter range: 0 ~ 1023. | | u8MotGain[SHARPNESS_BY_MOT_NUM] | Adjust final edge by the extent of motion. The horizontal axis represents the extent of motion. The closer to the left end of the axis, the more motion. Value 128 means no adjustment. The greater the value, the stronger the edge. Parameter range: 0 ~ 255. SHARPNESS_BY_MOT_NUM = 16. |
-
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Crosstalk Structure¶
Type Structure¶
-
Description
The type structure to set crosstalk.
-
Definition
typedef struct MI_ISP_IQ_CrosstalkType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_CrosstalkAutoAttr_t stAuto;
MI_ISP_IQ_CrosstalkManualAttr_t stManual;
} MI_ISP_IQ_CrosstalkType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of crosstalk.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of crosstalk.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set crosstalk. stManual The attribute structure of manual mode to set crosstalk. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetCrossTalk(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_CrosstalkType_t *data);
MI_S32 MI_ISP_IQ_GetCrossTalk(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_CrosstalkType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set crosstalk.
-
Definition
typedef struct MI_ISP_IQ_CrosstalkAutoAttr_s
{
MI_ISP_IQ_CrosstalkParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_CrosstalkAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set crosstalk.
-
Definition
typedef struct MI_ISP_IQ_CrosstalkManualAttr_s
{
MI_ISP_IQ_CrosstalkParam_t stParaAPI;
} MI_ISP_IQ_CrosstalkManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set crosstalk.
-
Definition
typedef struct MI_ISP_IQ_CrosstalkParam_s
{
MI_U8 u8Strength;
MI_U8 u8StrengthByY[CROSSTALK_BY_Y_NUM];
MI_U8 u8Threshold;
MI_U16 u16ThresholdOffset;
} MI_ISP_IQ_CrosstalkParam_t;
-
Name
Variable Name Description u8Strength Variable strength value of crosstalk. Parameter range: 0 ~ 31. u8StrengthByY[CROSSTALK_BY_Y_NUM] Adjust the strength value of crosstalk based on brightness. Parameter range: 0 ~ 127. CROSSTALK_BY_Y_NUM = 15. u8Threshold Crosstalk threshold ratio. Parameter range: 0 ~ 255. u16ThresholdOffset Crosstalk threshold offset. Parameter range: 0 ~ 4095. -
Note
- This function, if set too strong, will lead to detail loss. Hence, do not enable this function if crosstalk problem does not exist.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Obc Structure¶
Type Structure¶
-
Description
The type structure to set optical black level correction.
-
Definition
typedef struct MI_ISP_IQ_ObcType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_ObcAutoAttr_t stAuto;
MI_ISP_IQ_ObcManualAttr_t stManual;
} MI_ISP_IQ_ObcType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of optical black level correction.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of optical black level correction.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set optical black level correction. stManual The attribute structure of manual mode to set optical black level correction. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetObc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ObcType_t *data);
MI_S32 MI_ISP_IQ_GetObc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ObcType_t *data);
MI_S32 MI_ISP_IQ_SetObcP1(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ObcType_t *data);
MI_S32 MI_ISP_IQ_GetObcP1(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ObcType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set optical black level correction.
-
Definition
typedef struct MI_ISP_IQ_ObcAutoAttr_s
{
MI_ISP_IQ_ObcParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_ObcAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set optical black level correction.
-
Definition
typedef struct MI_ISP_IQ_ObcManualAttr_s
{
MI_ISP_IQ_ObcParam_t stParaAPI;
} MI_ISP_IQ_ObcManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set optical black level correction.
-
Definition
typedef struct MI_ISP_IQ_ObcParam_s
{
MI_U16 u16ValR;
MI_U16 u16ValGr;
MI_U16 u16ValGb;
MI_U16 u16ValB;
} MI_ISP_IQ_ObcParam_t;
-
Name
Variable Name Description u16ValR Controllable value of R channel optical black level.
Parameter range for pipeline 0: 0 ~ 65535.
Parameter range for pipeline 1: 0 ~ 65535.u16ValGr Controllable value of Gr channel optical black level.
Parameter range for pipeline 0: 0 ~ 65535.
Parameter range for pipeline 1: 0 ~ 65535.u16ValGb Controllable value of Gb channel optical black level.
Parameter range for pipeline 0: 0 ~ 65535.
Parameter range for pipeline 1: 0 ~ 65535.u16ValB Controllable value of B channel optical black level.
Parameter range for pipeline 0: 0 ~ 65535.
Parameter range for pipeline 1: 0 ~ 65535. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Wdr Structure¶
Type Structure¶
-
Description
The type structure to set wide dynamic range (WDR).
-
Definition
typedef struct MI_ISP_IQ_WdrType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_WdrAutoAttr_t stAuto;
MI_ISP_IQ_WdrManualAttr_t stManual;
} MI_ISP_IQ_WdrType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of WDR.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of WDR.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set WDR. stManual The attribute structure of manual mode to set WDR. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetWdr(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WdrType_t *data);
MI_S32 MI_ISP_IQ_GetWdr(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WdrType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set WDR.
-
Definition
typedef struct MI_ISP_IQ_WdrAutoAttr_s
{
MI_ISP_IQ_WdrParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_WdrAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set WDR.
-
Definition
typedef struct MI_ISP_IQ_WdrManualAttr_s
{
MI_ISP_IQ_WdrParam_t stParaAPI;
} MI_ISP_IQ_WdrManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set WDR.
-
Definition
typedef struct MI_ISP_IQ_WdrParam_s
{
MI_U8 u8BoxNum;
MI_U8 u8PreEnhance;
MI_ISP_BOOL_e bAutoDetailEnhance;
MI_U8 u8ManualDetailEnhance;
MI_U8 u8GlobalDarkToneEnhance;
MI_U8 u8WDRStrByY[WDR_BY_Y_NUM];
MI_U8 u8Strength;
MI_U8 u8DarkLimit;
MI_U8 u8BrightLimit;
MI_ISP_BOOL_e bGammaSyncEn;
} MI_ISP_IQ_WdrParam_t;
-
Name
Variable Name Description u8BoxNum Local wide dynamic range application size. Parameter range: 0 ~ 4. u8PreEnhance Bright area dynamic interval ratio. Parameter range: 1 ~ 6; 11 ~ 15. PreEnhance becomes ineffective when GammaSyncEn is on. bAutoDetailEnhance Advanced detail enhancement. Parameter range: 0 ~ 1. u8ManualDetailEnhance If bAutoDetailEnhance = 1, this parameter can control the strength of bright and dark area detail enhancement. Parameter range: 0 ~ 255. u8GlobalDarkToneEnhance Global wide dynamic range strength. Parameter range: 0 ~ 15. u8WDRStrByY[WDR_BY_Y_NUM] Control the wide dynamic range strength by Y. Parameter range: 0 ~ 255. WDR_BY_Y_NUM = 33. u8Strength Local wide dynamic range strength. Parameter range: 0 ~ 255. u8DarkLimit Limit the dark area strength. Parameter range: 0 ~ 255. u8BrightLimit Limit the bright area strength. Parameter range: 0 ~ 255. bGammaSyncEn Enable of WDR in sync with Gamma. Parameter range: 0 ~ 1. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_DynamicDp Structure¶
Type Structure¶
-
Description
The type structure to set dynamic dead-pixel compensation.
-
Definition
typedef struct MI_ISP_IQ_DynamicDpType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_DynamicDpAutoAttr_t stAuto;
MI_ISP_IQ_DynamicDpManualAttr_t stManual;
} MI_ISP_IQ_DynamicDpType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of dynamic dead-pixel compensation.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of dynamic dead-pixel compensation.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set dynamic dead-pixel compensation. stManual The attribute structure of manual mode to set dynamic dead-pixel compensation. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetDynamicDp(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DynamicDpType_t *data);
MI_S32 MI_ISP_IQ_GetDynamicDp(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DynamicDpType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set dynamic dead-pixel compensation.
-
Definition
typedef struct MI_ISP_IQ_DynamicDpAutoAttr_s
{
MI_ISP_IQ_DynamicDpParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_DynamicDpAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set dynamic dead-pixel compensation.
-
Definition
typedef struct MI_ISP_IQ_DynamicDpManualAttr_s
{
MI_ISP_IQ_DynamicDpParam_t stParaAPI;
} MI_ISP_IQ_DynamicDpManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set dynamic dead-pixel compensation.
-
Definition
typedef struct MI_ISP_IQ_DynamicDpParam_s
{
MI_ISP_IQ_Bool_e bHotPixEn;
MI_U16 u16HotPixCompSlpoe;
MI_ISP_IQ_Bool_e bDarkPixEn;
MI_U16 u16DarkPixCompSlpoe;
MI_U16 u16DPCTH;
MI_ISP_IQ_Bool_e bBlendEn;
MI_U16 u16DiffLut[DYNAMIC_DP_LUT_NUM];
MI_U16 u16YLut[DYNAMIC_DP_LUT_NUM];
} MI_ISP_IQ_DynamicDpParam_t;
-
Name
Variable Name Description bHotPixEn Set Boolean value for the function of dynamic hot-pixel compensation.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u16HotPixCompSlpoe Adjust the threshold value of dynamic hot-pixel compensation. Parameter range: 0 ~ 255. bDarkPixEn Set Boolean value for the function of dynamic dark-pixel compensation.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u16DarkPixCompSlpoe Adjust the threshold value of dynamic dark-pixel compensation. Parameter range: 0 ~ 255. u16DPCTH Set the threshold value of dynamic dead-pixel compensation. Parameter range: 0 ~ 255. bBlendEn Set Boolean value for the function of blending.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u16DiffLut[DYNAMIC_DP_LUT_NUM] Blending based on the difference between the DPC result and the original point. Parameter range: 0 ~ 1024. DYNAMIC_DP_LUT_NUM = 6. u16YLut[DYNAMIC_DP_LUT_NUM] Blending based on the difference between the DPC result and the original point. Parameter range: 0 ~ 1024. DYNAMIC_DP_LUT_NUM = 6. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_DynamicDpCluster Structure¶
Type Structure¶
-
Description
The type structure to set dynamic dead-pixel cluster compensation.
-
Definition
typedef struct MI_ISP_IQ_DynamicDpClusterType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_DynamicDpClusterAutoAttr_t stAuto;
MI_ISP_IQ_DynamicDpClusterManualAttr_t stManual;
} MI_ISP_IQ_DynamicDpClusterType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of dynamic dead-pixel cluster compensation.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of dynamic dead-pixel cluster compensation.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set dynamic dead-pixel cluster compensation. stManual The attribute structure of manual mode to set dynamic dead-pixel cluster compensation. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetDynamicDpCluster(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DynamicDpClusterType_t *data);
MI_S32 MI_ISP_IQ_GetDynamicDpCluster(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DynamicDpClusterType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set dynamic dead-pixel cluster compensation.
-
Definition
typedef struct MI_ISP_IQ_DynamicDpClusterAutoAttr_s
{
MI_ISP_IQ_DynamicDpClusterAttr_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_DynamicDpClusterAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set dynamic dead-pixel cluster compensation.
-
Definition
typedef struct MI_ISP_IQ_DynamicDpClusterManualAttr_s
{
MI_ISP_IQ_DynamicDpClusterAttr_t stParaAPI;
} MI_ISP_IQ_DynamicDpClusterManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set dynamic dead-pixel cluster compensation.
-
Definition
typedef struct MI_ISP_IQ_DynamicDpClusterAttr_s
{
MI_ISP_IQ_Bool_e bEdgeMode;
MI_U16 u16NeiDeltaTh;
MI_U8 u8NeiSmooth;
MI_ISP_IQ_Bool_e bSortEn;
MI_ISP_IQ_Bool_e bSortRGGBEn[DYNAMIC_DP_CLUSTER_CH_NUM];
MI_ISP_IQ_Bool_e bSort1x3ModeEn;
MI_U16 u16SortLumTblL[DYNAMIC_DP_CLUSTER_TBL_NUM];
MI_U16 u16SortLumTblD[DYNAMIC_DP_CLUSTER_TBL_NUM];
MI_U16 u16SortLumTblS[DYNAMIC_DP_CLUSTER_TBL_NUM];
} MI_ISP_IQ_DynamicDpClusterAttr_t;
-
Name
Variable Name Description bEdgeMode Set Boolean value for the function of Edge Mode.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u16NeiDeltaTh The threshold value of difference between the center point and surrounding 8 points. Parameter range: 0 ~ 4095. u8NeiSmooth Accumulated threshold value. Parameter range: 0 ~ 8. bSortEn Enable sort mode. bSortRGGBEn[DYNAMIC_DP_CLUSTER_CH_NUM] Enable each channel of sort mode. DYNAMIC_DP_CLUSTER_CH_NUM = 4. bSort1x3ModeEn Enable 1x3 mode. u16SortLumTblL[DYNAMIC_DP_CLUSTER_TBL_NUM] The threshold value of the two brightest points. Parameter range: 0 ~ 4095. DYNAMIC_DP_CLUSTER_TBL_NUM = 6. u16SortLumTblD[DYNAMIC_DP_CLUSTER_TBL_NUM] The threshold value of the two darkest points. Parameter range: 0 ~ 4095. DYNAMIC_DP_CLUSTER_TBL_NUM = 6. u16SortLumTblS[DYNAMIC_DP_CLUSTER_TBL_NUM] The threshold value of the second and third brightest (darkest) points. Parameter range: 0 ~ 4095. DYNAMIC_DP_CLUSTER_TBL_NUM = 6. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Rgbir Structure¶
Type Structure¶
-
Description
The type structure to set RGB-IR.
-
Definition
typedef struct MI_ISP_IQ_RgbirType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_RgbirAutoAttr_t stAuto;
MI_ISP_IQ_RgbirManualAttr_t stManual;
} MI_ISP_IQ_RgbirType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of RGB-IR.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of RGB-IR.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set RGB-IR. stManual The attribute structure of manual mode to set RGB-IR. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetRgbir(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_RgbirType_t *data);
MI_S32 MI_ISP_IQ_GetRgbir(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_RgbirType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set RGB-IR.
-
Definition
typedef struct MI_ISP_IQ_RgbirAutoAttr_s
{
MI_ISP_IQ_RgbirParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_RgbirAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set RGB-IR.
-
Definition
typedef struct MI_ISP_IQ_RgbirManualAttr_s
{
MI_ISP_IQ_RgbirParam_t stParaAPI;
} MI_ISP_IQ_RgbirManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set RGB-IR.
-
Definition
typedef struct MI_ISP_IQ_RgbirParam_s
{
MI_U8 u8IrPosType;
MI_ISP_IQ_Bool_e bRemovelEn;
MI_U16 u16Ratio_R[RGBIR_BY_Y_NUM];
MI_U16 u16Ratio_G[RGBIR_BY_Y_NUM];
MI_U16 u16Ratio_B[RGBIR_BY_Y_NUM];
} MI_ISP_IQ_RgbirParam_t;
-
Name
Variable Name Description u8IrPosType RGB-IR distribution type. Parameter range: 0 ~ 7, default is 0. bRemovelEn Set Boolean value for the function of IR removal, default is 1.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u16Ratio_R[RGBIR_BY_Y_NUM] Red IR removal ratio, from dark to bright @12 bits. RGBIR_BY_Y_NUM = 6. u16Ratio_G[RGBIR_BY_Y_NUM] Green IR removal ratio, from dark to bright @12 bits. RGBIR_BY_Y_NUM = 6. u16Ratio_B[RGBIR_BY_Y_NUM] Blue IR removal ratio, from dark to bright @12 bits. RGBIR_BY_Y_NUM = 6. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Demosaic Structure¶
Type Structure¶
-
Description
The type structure to set demosaic.
-
Definition
typedef struct MI_ISP_IQ_DemosaicType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_DemosaicAutoAttr_t stAuto;
MI_ISP_IQ_DemosaicManualAttr_t stManual;
} MI_ISP_IQ_DemosaicType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of demosaic.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of demosaic.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set demosaic. stManual The attribute structure of manual mode to set demosaic. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetDemosaic(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DemosaicType_t *data);
MI_S32 MI_ISP_IQ_GetDemosaic(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DemosaicType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set demosaic.
-
Definition
typedef struct MI_ISP_IQ_DemosaicAutoAttr_s
{
MI_ISP_IQ_DemosaicParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_DemosaicAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set demosaic.
-
Definition
typedef struct MI_ISP_IQ_DemosaicManualAttr_s
{
MI_ISP_IQ_DemosaicParam_t paraAPI;
} MI_ISP_IQ_DemosaicManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set demosaic.
-
Definition
typedef struct MI_ISP_IQ_DemosaicParam_s
{
MI_U8 u8DirThrd;
MI_U8 u8EdgeSmoothThrdY;
MI_U8 u8EdgeSmoothThrdC;
} MI_ISP_IQ_DemosaicParam_t;
-
Name
Variable Name Description u8DirThrd Direction threshold. If higher than this threshold, demosaic will take the direction result as the final result. Parameter range: 0 ~ 63, default is 35. u8EdgeSmoothThrdY Smooth edge Y threshold. The smaller the value, the blurrer the edge but the less false edge. Parameter range: 0 ~ 255, default is 230. u8EdgeSmoothThrdC Smooth edge color threshold. The smaller the value, the blurrer the edge but the less false edge. Parameter range: 0 ~ 127, default is 20. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_R2Y Structure¶
Type Structure¶
-
Description
The type structure to set RGB to YUV color conversion.
-
Definition
typedef struct MI_ISP_IQ_R2YType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_R2YManualAttr_t stManual;
} MI_ISP_IQ_R2YType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of demosaic. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1. stManual The attribute structure of manual mode to set RGB to YUV color conversion. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetR2Y(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_R2YType_t *data);
MI_S32 MI_ISP_IQ_GetR2Y(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_R2YType_t *data);
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set RGB to YUV color conversion.
-
Definition
typedef struct MI_ISP_IQ_R2YManualAttr_s
{
MI_ISP_IQ_R2YParam_t stParaAPI;
} MI_ISP_IQ_R2YManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set RGB to YUV color conversion.
-
Definition
typedef struct MI_ISP_IQ_R2YParam_s
{
MI_U16 u16Matrix[R2Y_MATRIX_NUM];
MI_U8 u8AddY16;
} MI_ISP_IQ_R2YParam_t;
-
Name
Variable Name Description u16Matrix[R2Y_MATRIX_NUM] Adjust RGB to YUV matrix. Parameter range: 0 ~ 8191. 1024 means 1x gain. Use the complement of 2 to represent negative number, equal to ±3.996. R2Y_MATRIX_NUM = 9. u8AddY16 Adjust Y Offset. This parameter determines whether 16 should be added to Y after matrix conversion. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_ColorTrans Structure¶
Type Structure¶
-
Description
The type structure to set color transformation.
-
Definition
typedef struct MI_ISP_IQ_ColorTransType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_ColorTransManualAttr_t stManual;
} MI_ISP_IQ_ColorTransType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of color transformation.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.stManual The attribute structure of manual mode to set color transformation. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetColorTrans(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ColorTransType_t *data);
MI_S32 MI_ISP_IQ_GetColorTrans(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ColorTransType_t *data);
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set color transformation.
-
Definition
typedef struct MI_ISP_IQ_ColorTransManualAttr_s
{
MI_ISP_IQ_ColorTransParam_t stParaAPI;
} MI_ISP_IQ_ColorTransManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set color transformation.
-
Definition
typedef struct MI_ISP_IQ_ColorTransParam_s
{
MI_U16 u16Y_OFST;
MI_U16 u16U_OFST;
MI_U16 u16V_OFST;
MI_U16 u16Matrix[COLORTRANS_MATRIX_NUM];
} MI_ISP_IQ_ColorTransParam_t;
-
Name
Variable Name Description u16Y_OFST Adjust Y offset in 10-bit domain. Parameter range: 0 ~ 2047. Use the complement of 2 to represent negative number, equal to ±1023. u16U_OFST Adjust U offset in 10-bit domain. Parameter range: 0 ~ 2047. Use the complement of 2 to represent negative number, equal to ±1023. u16V_OFST Adjust V offset in 10-bit domain. Parameter range: 0 ~ 2047. Use the complement of 2 to represent negative number, equal to ±1023. u16Matrix[COLORTRANS_MATRIX_NUM] Adjust RGB to YUV matrix. Parameter range: 0 ~ 1023, value 256 means 1x gain. Use the complement of 2 to represent negative number, equal to ±1.996. COLORTRANS_MATRIX_NUM = 9. -
Note
YUV_OFST and Matrix[9] use the complement of 2 to represent negative number.
For UV_OFST, the value obtained after matrix multiplication will be addeded by 128 by default.
Below is an example to convert YUV to the 16 ~ 235 data range.
Y=(0.257*R)+(0.504*G)+(0.098*B)+16 Cb=-(0.148*R)-(0.291*G)+(0.439*B)+128 Cr=(0.439*R)-(0.368*G)-(0.071*B)+128
Matrix[9] = {66, 129, 25, 986, 950, 112, 112, 930, 1006}
Y_OFST = 64
U_OFST = 0 (128*4 has been added by default, so input 0)
V_OFST = 0 (128*4 has been added by default, so input 0)
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Lsc Structure¶
Type Structure¶
-
Description
The type structure to set lens shading calibration (LSC).
-
Definition
typedef struct MI_ISP_IQ_LscType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_U16 u16CenterX;
MI_U16 u16CenterY;
MI_U16 u16RateX;
MI_U16 u16RateY;
MI_U8 u8Shift;
MI_U16 u16RGainTable[LSC_TBL_SIZE * LSC_CCT_NUM_MAX];
MI_U16 u16GGainTable[LSC_TBL_SIZE * LSC_CCT_NUM_MAX];
MI_U16 u16BGainTable[LSC_TBL_SIZE * LSC_CCT_NUM_MAX];
} MI_ISP_IQ_LscType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of LSC.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u16CenterX Set a compensation center point on the X-axis. Parameter range: 0 ~ 4095. u16CenterY Set a compensation center point on the Y-axis. Parameter range: 0 ~ 4095. u16RateX The zooming ratio o difference in the distance on the X-axis. The base is 1024. Parameter range: 0 ~ 2047. The difference between X of the current point and the X of the LSC center point will be multiplied by this ratio to calculate, by taking the Y-axis direction into account, the distance from the LSC center point. u16RateY The zooming ratio of difference in the distance on the Y-axis. The base is 1024. Parameter range: 0 ~ 2047. The difference between Y of the current point and the Y of the LSC center point will be multiplied by this ratio to calculate, by taking the X-axis direction into account, the distance from the LSC center point. u8Shift This parameter is set according to resolution, and modification is not suggested. Parameter range: 0 ~ 31. u16RGainTable [LSC_TBL_SIZE * LSC_CCT_NUM_MAX] The LSC compensation table for R channel. Parameter range: 0 ~ 1023. LSC_TBL_SIZE = 32, LSC_CCT_NUM_MAX = 3. u16GGainTable [LSC_TBL_SIZE * LSC_CCT_NUM_MAX] The LSC compensation table for G channel. Parameter range: 0 ~ 1023. LSC_TBL_SIZE = 32, LSC_CCT_NUM_MAX = 3. u16BGainTable [LSC_TBL_SIZE * LSC_CCT_NUM_MAX] The LSC compensation table for B channel. Parameter range: 0 ~ 1023. LSC_TBL_SIZE = 32, LSC_CCT_NUM_MAX = 3. -
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetLsc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_LscType_t *data);
MI_S32 MI_ISP_IQ_GetLsc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_LscType_t *data);
MI_ISP_IQ_LscCtrl Structure¶
Type Structure¶
-
Description
The type structure to set LSC CTRL.
-
Definition
typedef struct MI_ISP_IQ_LscCtrlType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_U8 u8RRatioByCct[LSC_CCT_NUM_MAX];
MI_U8 u8GRatioByCct[LSC_CCT_NUM_MAX];
MI_U8 u8BRatioByCct[LSC_CCT_NUM_MAX];
MI_ISP_IQ_IntpLut_t RatioByBv;
} MI_ISP_IQ_LscCtrlType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of LSC CTRL.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u8RRatioByCct [LSC_CCT_NUM_MAX] The extra ratio of LSC for R channel. Parameter range: 0 ~ 128 (128 = 1x). LSC_CCT_NUM_MAX = 3. u8GRatioByCct [LSC_CCT_NUM_MAX] The extra ratio of LSC for G channel. Parameter range: 0 ~ 128 (128 = 1x). LSC_CCT_NUM_MAX = 3. u8BRatioByCct [LSC_CCT_NUM_MAX] The extra ratio of LSC for B channel. Parameter range: 0 ~ 128 (128 = 1x). LSC_CCT_NUM_MAX = 3. RatioByBv.u16NumOfPoints The number of RatioByBv node. Parameter range: 0 ~ 16. RatioByBv.s32Y[INTP_LUT_NUM] The ratio of each node. Parameter range: 0 ~ 128 (128 = 1x). INTP_LUT_NUM = 16. RatioByBv.s32X[INTP_LUT_NUM] BV of each node. INTP_LUT_NUM = 16. -
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetLscCtrl(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_LscCtrlType_t *data);
MI_S32 MI_ISP_IQ_GetLscCtrl(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_LscCtrlType_t *data);
MI_ISP_IQ_Alsc Structure¶
Type Structure¶
-
Description
The type structure to set auto lens shading calibration (ALSC).
-
Definition
typedef struct MI_ISP_IQ_AlscType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_U8 u8GridX;
MI_U8 u8GridY;
MI_U16 u16CCTthr[ALSC_CCT_NUM_MAX];
MI_U8 u8DeltaMode;
MI_ISP_IQ_Bool_e bDeltaModeAdvEn;
MI_U8 u8DeltaLutX[ALSC_DELTA_LUT_NUM];
MI_U8 u8DeltaLutY[ALSC_DELTA_LUT_NUM];
MI_U16 u16TableR[ALSC_CCT_NUM_MAX][ALSC_TBL_MAX];
MI_U16 u16TableG[ALSC_CCT_NUM_MAX][ALSC_TBL_MAX];
MI_U16 u16TableB[ALSC_CCT_NUM_MAX][ALSC_TBL_MAX];
} MI_ISP_IQ_AlscType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of ALSC.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u8GridX The total number of grids on the X-axis of shading table. Parameter range: 0 ~ 27. u8GridY The total number of grids on the Y-axis of shading table. Parameter range: 0 ~ 17. u16CCTthr[ALSC_CCT_NUM_MAX] Color temperature node. Parameter range: 0 ~ 20000. ALSC_CCT_NUM_MAX = 3. u8DeltaMode 16 default modes of shading table spacing. 0 means isometric. The greater the value, the larger spacing in the center and the smaller the spacing in the surrounding area. Parameter range: 0 ~ 15. bDeltaModeAdvEn Manual control of spacing for each grid. When enabled, u8DeltaMode will become ineffective. Parameter range: 0 ~ 1. u8DeltaLutX[ALSC_DELTA_LUT_NUM] The spacing of each grid on the X-axis. Only 1, 2, 4, 8 and 16 are valid. Parameter range: 0 ~ 16. ALSC_DELTA_LUT_NUM = 26. u8DeltaLutY[ALSC_DELTA_LUT_NUM] The spacing of each grid on the Y-axis. Only 1, 2, 4, 8 and 16 are valid. Parameter range: 0 ~ 16. ALSC_DELTA_LUT_NUM = 26. u16TableR[ALSC_CCT_NUM_MAX][ALSC_TBL_MAX] The ALSC compensation table for R channel. Parameter range: 0 ~ 8191 (1024 = 1x). ALSC_CCT_NUM_MAX = 3, ALSC_TBL_MAX = 459. u16TableG[ALSC_CCT_NUM_MAX][ALSC_TBL_MAX] The ALSC compensation table for G channel. Parameter range: 0 ~ 8191 (1024 = 1x). ALSC_CCT_NUM_MAX = 3, ALSC_TBL_MAX = 459. u16TableB[ALSC_CCT_NUM_MAX][ALSC_TBL_MAX] The ALSC compensation table for B channel. Parameter range: 0 ~ 8191 (1024 = 1x). ALSC_CCT_NUM_MAX = 3, ALSC_TBL_MAX = 459. -
Note
- Do not set R/G/B Table to a value lower than 1024; otherwise, color shift might occur in high brightness part due to unsaturatedness.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetAlsc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AlscType_t *data);
MI_S32 MI_ISP_IQ_GetAlsc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AlscType_t *data);
MI_ISP_IQ_AlscCtrl Structure¶
Type Structure¶
-
Description
The type structure to set ALSC CTRL.
-
Definition
typedef struct MI_ISP_IQ_AlscCtrlType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_U8 u8RRatioByCct[ALSC_CCT_NUM_MAX];
MI_U8 u8GRatioByCct[ALSC_CCT_NUM_MAX];
MI_U8 u8BRatioByCct[ALSC_CCT_NUM_MAX];
MI_ISP_IQ_IntpLut_t RatioByBv;
} MI_ISP_IQ_AlscCtrlType_t;
typedef struct
{
MI_U16 u16NumOfPoints;
MI_S32 s32Y[INTP_LUT_NUM];
MI_S32 s32X[INTP_LUT_NUM];
} MI_ISP_IQ_IntpLut_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of ALSC CTRL.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u8RRatioByCct[ALSC_CCT_NUM_MAX] The extra ratio of ALSC for R channel. Parameter range: 0 ~ 128 (128 = 1x). LSC_CCT_NUM_MAX = 3. u8GRatioByCct[ALSC_CCT_NUM_MAX] The extra ratio of ALSC for G channel. Parameter range: 0 ~ 128 (128 = 1x). LSC_CCT_NUM_MAX = 3. u8BRatioByCct[ALSC_CCT_NUM_MAX] The extra ratio of ALSC for B channel. Parameter range: 0 ~ 128 (128 = 1x). LSC_CCT_NUM_MAX = 3. u16NumOfPoints The number of RatioByBv node. Parameter range: 0 ~ 16. s32Y[INTP_LUT_NUM] The ratio of each node. Parameter range: 0 ~ 128 (128 = 1x). INTP_LUT_NUM = 16. s32X[INTP_LUT_NUM] BV of each node. INTP_LUT_NUM = 16. -
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetAlscCtrl(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AlscCtrlType_t *data);
MI_S32 MI_ISP_IQ_GetAlscCtrl(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AlscCtrlType_t *data);
MI_ISP_IQ_AlscAdj Structure¶
Type Structure ¶
-
Description
The type structure to set ALSC ADJ.
-
Definition
typedef struct MI_ISP_IQ_AlscAdjType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_U16 u16ComplexTH;
MI_U16 u16MaxAdjustR;
MI_U16 u16MinAdjustR;
MI_U16 u16MaxAdjustB;
MI_U16 u16MinAdjustB;
MI_U8 u8CheckRange;
MI_U8 u8UniformLineTH;
MI_U8 u8DebugLevel;
MI_ISP_IQ_IntpLut_t GlobalStrengthByBv;
} MI_ISP_IQ_AlscAdjType_t;
typedef struct
{
MI_U16 u16NumOfPoints;
MI_S32 s32Y[INTP_LUT_NUM];
MI_S32 s32X[INTP_LUT_NUM];
} MI_ISP_IQ_IntpLut_t;
-
Name
Variable Name Description bEnable Set Boolean value for ALSC ADJ function. To disable, set E_SS_IQ_FALSE = 0; To enable, set E_SS_IQ_TRUE = 1. u16ComplexTH Parameter range: 0 ~ 65536. If the complexity of the area within the searched range is smaller than Complex Thr, the area will be listed as the candidate for evaluation of color shading judgement. u16MaxAdjustR Parameter range: 256 ~ 512. The maximum range allowed for the algorithm to increase R in ALSC table. 256 = 1x. We suggest that you carefully tune the parameter to an appropriate value inside the light box. Setting the value too large or too small is not recommended, otherwise color deviation may occur to the picture when algorithm misjudges. u16MinAdjustR Parameter range: 128 ~ 256. The minimum range allowed for the algorithm to reduce R in ALSC table. 256 = 1x. We suggest that you carefully tune the parameter to an appropriate value inside the light box. Setting the value too large or too small is not recommended, otherwise color deviation may occur to the picture when algorithm misjudges. u16MaxAdjustB Parameter range: 256 ~ 512. The maximum range allowed for the algorithm to increase B in ALSC table. 256 = 1x. We suggest that you carefully tune the parameter to an appropriate value inside the light box. Setting the value too large or too small is not recommended, otherwise color deviation may occur to the picture when algorithm misjudges. u16MinAdjustB Parameter range: 128 ~ 256. The maximum range allowed for the algorithm to reduce B in ALSC table. 256 = 1x. We suggest that you carefully tune the parameter to an appropriate value inside the light box. Setting the value too large or too small is not recommended, otherwise color deviation may occur to the picture when algorithm misjudges. u8CheckRange Parameter range: 8 ~ 16. The picture is divided into 32 regions both horizontally and vertically. The value represents the searched range starting from the center of the picture. We suggest that you set the range within the region of apparent color shading in the camera module. The self-adaptive algorithm determines compensation by the sum of shading within the checked range. If the range is set too large, the algorithm may have to deal with too many areas with no apparent color shading, thus affecting the overall evaluation result. u8UniformLineTH Parameter range: 8 ~ 128. Perform the evaluation of shading in the picture only when the number of areas listed as candidate (of which the complexity < Complex Thr) is larger than Uniform line count TH. If algorithm misjudgement often occurs to common scenes, you may increase this parameter so that evaluation will be carried out only when there are enough of candidate areas. u8DebugLevel Print out debug log. GlobalStrengthByBv The value of brightness of each node. Compensation can be reduced in scenes with a relatively low light source according to the value of brightness. This parameter makes direct impact upon Increase/Decrease R/B Gain in the algorithm. -
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetAlscAdj(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AlscAdjType_t *data);
MI_S32 MI_ISP_IQ_GetAlscAdj(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AlscAdjType_t *data);
MI_ISP_IQ_DaynightDetection Structure¶
Type Structure¶
-
Description
The type structure to set Day/Night detection.
-
Definition
typedef struct MI_ISP_IQ_DaynightDetectionType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_S32 s32D2N_BvThd;
MI_U32 u32N2D_VsbLtScoreThd;
} MI_ISP_IQ_DaynightDetectionType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of Day / Night detection.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.s32D2N_BvThd The threshold value of brightness for determining whether Day mode should switch to Night mode. If the current brightness value (accessible as “BV” in AEInfo) falls below this threshold, the D2N field in DayNightInfo Interface will show “1” (TRUE). Value range: -1048576 ~ 1048576. u32N2D_VsbLtScoreThd Score threshold for determining whether Night mode should switch to Day mode. The score is calculated by the ratio of visible light to IR light, and higher ratio means visible light is more dominant. Once the current score (as “N2D_VsbLtScore” in DayNightInfo interface) grows larger than this threshold, the N2D field in DayNightInfo Interface will show “1” (TRUE). Value range: 0 ~ 2000. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetDayNightDetection(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DaynightDetectionType_t *data);
MI_S32 MI_ISP_IQ_GetDayNightDetection(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DaynightDetectionType_t *data);
MI_ISP_IQ_DaynightInfo Structure¶
Type Structure¶
-
Description
The type structure to get Day/Night detection result.
-
Definition
typedef struct MI_ISP_IQ_DaynightInfoType_s
{
MI_ISP_IQ_Bool_e bD2N;
MI_ISP_IQ_Bool_e bN2D;
MI_U32 u32N2D_VsbLtScore;
} MI_ISP_IQ_DaynightInfoType_t;
-
Name
Variable Name Description bD2N Flag that determines whether Day mode should switch to Night mode. Value “1” means that the current environmental brightness has met the condition of switching to Night mode. Note: The flag is only meaningful when the current mode is Day mode. bN2D Flag that determines whether Night mode should switch to Day mode. Value “1” means that the current environmental brightness has met the condition of switching to Day mode. Note: The flag is only meaningful when the current mode is Night mode. u32N2D_VsbLtScore The score as calculated by the ratio of current visible light to IR light. Higher score means that visible light is more dominant in the environment. In cases where switching to Day mode is considered desirable, users can read this score to determine the setting of “N2D_VsbLtScoreThd” in DayNightDetection Interface. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_QueryDayNightInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DaynightInfoType_t *data);
MI_ISP_IQ_NrLumaAdv Structure¶
Type Structure¶
-
Description
The type structure to set Luma_Adv noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrLumaAdvType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_NrLumaAdvAutoAttr_t stAuto;
MI_ISP_IQ_NrLumaAdvManualAttr_t stManual;
} MI_ISP_IQ_NrLumaAdvType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of Luma_Adv noise reduction.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of Luma_Adv noise reduction.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set Luma_Adv noise reduction. stManual The attribute structure of manual mode to set Luma_Adv noise reduction. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetNrLumaAdv(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrLumaAdvType_t *data);
MI_S32 MI_ISP_IQ_GetNrLumaAdv(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrLumaAdvType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set Luma_Adv noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrLumaAdvAutoAttr_s
{
MI_ISP_IQ_NrLumaAdvParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_NrLumaAdvAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set Luma_Adv noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrLumaAdvManualAttr_s
{
MI_ISP_IQ_NrLumaAdvParam_t stParaAPI;
} MI_ISP_IQ_NrLumaAdvManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set Luma_Adv noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrLumaAdvParam_s
{
MI_ISP_BOOL_e bDbgEn;
MI_U8 u8Strength;
MI_U8 u8StrengthByY[NRLUMA_ADV_BY_Y_NUM];
MI_U8 u8StrengthByMot[NRLUMA_ADV_BY_MOT_NUM];
MI_U16 u16EdgeTh[NRLUMA_ADV_EDGE];
MI_U32 u32EdgeGain[NRLUMA_ADV_EDGE];
MI_U8 u8StrengthByType[NRLUMA_ADV_LEVEL_NUM];
} MI_ISP_IQ_NrLumaAdvParam_t;
-
Name
Variable Name Description bDbgEn Show the edge strength detected by NRLuma_Adv. Parameter range: 0 ~ 1. u8Strength Final strength control. Parameter range: 0 ~ 255. u8StrengthByY[NRLUMA_ADV_BY_Y_NUM] Adjust NR strength by Y. The closer to the right end of the horizontal axis, the stronger the brightness. The greater the value, the stronger the strength. Since, however, the default value is 0, which means no adjustment, this parameter can only increase the strength. Parameter range: 0 ~ 32. NRLUMA_ADV_BY_Y_NUM = 10. u8StrengthByMot[NRLUMA_ADV_BY_MOT_NUM] Adjust NR strength by motion. The closer to the right end of the horizontal axis, the greater the motion. The greater the value, the stronger the strength. Since, however, the default value is 0, which means no adjustment, this parameter can only increase the strength. Parameter range: 0 ~ 32. NRLUMA_ADV_BY_MOT_NUM = 16. u16EdgeTh[NRLUMA_ADV_EDGE] Threshold to control the judgement of an edge. The closer to the right end of the horizontal axis, the stronger the brightness. When the edge is below the threshold, it is regarded as noise, and will be subjected to NR process. When the edge is over the threshold, it is regarded as an edge. The stronger the edge, the weaker the NR effect. The greater the value, the less likely it is to be judged as an edge. Parameter range: 0 ~ 16383. NRLUMA_ADV_EDGE = 8. u32EdgeGain[NRLUMA_ADV_EDGE] Threshold to control the judgement of an edge. The closer to the right end of the horizontal axis, the stronger the brightness. For edges higher than the threshold, edge strength will be controlled. The stronger the edge, the weaker the NR effect. The greater the value, the stronger the edge strength. Parameter range: 0 ~ 65535. NRLUMA_ADV_EDGE = 8. u8StrengthByType[NRLUMA_ADV_LEVEL_NUM] NR contains two types of filter. Type[0] filter will apply a strength capable of maintaining the details, and ype [1] filter will apply a strength effective for noise reduction but harmful for detail retention. This parameter will blend the results of these two types of filter based on the edge strength. The greater the value, the stronger the NR effect. Parameter range: 0 ~ 32. NRLUMA_ADV_LEVEL_NUM = 2. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_NrChromaAdv Structure¶
Type Structure¶
-
Description
The Type Structure to set Chroma_Adv noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrChromaAdvType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_NrChromaAdvAutoAttr_t stAuto;
MI_ISP_IQ_NrChromaAdvManualAttr_t stManual;
} MI_ISP_IQ_NrChromaAdvType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of Chroma_Adv noise reduction.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of Chroma_Adv noise reduction.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set Chroma_Adv noise reduction. stManual The attribute structure of manual mode to set Chroma_Adv noise reduction. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetNrChromaAdv(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrChromaAdvType_t *data);
MI_S32 MI_ISP_IQ_GetNrChromaAdv(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrChromaAdvType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set Chroma_Adv noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrChromaAdvAutoAttr_s
{
MI_ISP_IQ_NrChromaAdvParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_NrChromaAdvAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set Chroma_Adv noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrChromaAdvManualAttr_s
{
MI_ISP_IQ_NrChromaAdvParam_t stParaAPI;
} MI_ISP_IQ_NrChromaAdvManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set Chroma_Adv noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrChromaAdvParam_s
{
MI_U8 u8StrengthByY[NRCHROMA_ADV_BY_Y_NUM];
MI_U8 u8StrengthByYEdge[NRCHROMA_ADV_BY_YEDGE_NUM] ;
MI_U8 u8StrengthByCEdge[NRCHROMA_ADV_BY_CEDGE_NUM];
MI_U8 u8MaxStrength;
MI_U8 u8StaticLimitRatio;
MI_U8 u8MotionClip;
MI_U8 u8MotionColorReduce;
MI_U8 u8MotionColorRecover;
MI_U8 u8PreStrength;
} MI_ISP_IQ_NrChromaAdvParam_t;
-
Name
Variable Name Description u8StrengthByY[NRCHROMA_ADV_BY_Y_NUM] Adjust NR strength by luma. The closer to the right end of the horizontal axis, the greater the luma. The greater the value, the stronger the strength. Parameter range: 0 ~ 255. NRCHROMA_ADV_BY_Y_NUM = 8. u8StrengthByYEdge[NRCHROMA_ADV_BY_YEDGE_NUM] Detect edge by luma. Adjust NR strength by edge. The closer to the right end of the horizontal axis, the greater the edge. The greater the value, the stronger the strength. Parameter range: 0 ~ 63. NRCHROMA_ADV_BY_YEDGE_NUM = 8. u8StrengthByCEdge[NRCHROMA_ADV_BY_CEDGE_NUM] Detect edge by chroma. Adjust NR strength by edge. The closer to the right end of the horizontal axis, the greater the edge. The greater the value, the stronger the strength. Parameter range: 0 ~ 255. NRCHROMA_ADV_BY_CEDGE_NUM = 8. u8MaxStrength Control NR strength in areas with small Y/C differences. The greater the value, the stronger the strength. Parameter range: 0 ~ 255. u8StaticLimitRatio Control NR strength in the static area. The greater the value, the stronger the strength. Parameter range: 0 ~ 63. u8MotionClip Give more NR strength for motion area. The greater the value, the stronger the strength. Parameter range: 0 ~ 255. u8MotionColorReduce Reduce more saturation for motion area. The greater the value, the more saturation decreases. Parameter range: 0 ~ 255. u8MotionColorRecover For motion area, the gain can be multiplied back based on the saturation reduced by MotionColorReduce. The larger the value, the more saturation will be recovered. Parameter range: 0 ~ 255. u8PreStrength Do a simple noise reduction first by chroma. The greater the value, the stronger the strength. Parameter range: 0 ~ 128. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Pfc Structure¶
Type Structure¶
-
Description
The type structure to set PFC.
-
Definition
typedef struct MI_ISP_IQ_PfcType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_PfcAutoAttr_t stAuto;
MI_ISP_IQ_PfcManualAttr_t stManual;
} MI_ISP_IQ_PfcType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of PFC.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of PFC.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set PFC. stManual The attribute structure of manual mode to set PFC. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetPfc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_PfcType_t *data);
MI_S32 MI_ISP_IQ_GetPfc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_PfcType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set PFC.
-
Definition
typedef struct MI_ISP_IQ_PfcAutoAttr_s
{
MI_ISP_IQ_PfcParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_PfcAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set PFC.
-
Definition
typedef struct MI_ISP_IQ_PfcManualAttr_s
{
MI_ISP_IQ_PfcParam_t stParaAPI;
} MI_ISP_IQ_PfcManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set PFC.
-
Definition
typedef struct MI_ISP_IQ_PfcParam_s
{
MI_U8 u8Strength;
MI_U8 u8UStrength;
MI_U8 u8VStrength;
MI_U8 u8StrengthByY[PFC_BY_Y_NUM];
MI_U8 u8FlatProtect;
MI_U8 u8SatByY[PFC_LUT_NUM];
MI_U8 u8SatSrcSel;
MI_U8 u8StrengthByContrast[PFC_BY_CONTRAST_NUM];
} MI_ISP_IQ_PfcParam_t;
-
Name
Variable Name Description u8Strength Control the strength of removing purple edges. The greater the value, the stronger the strength. Parameter range: 0 ~ 255. u8UStrength The strength of the effect of removing purple edges on the U channel. The larger the value, the stronger the strength. Parameter range: 0 ~ 63. u8VStrength The strength of the effect of removing purple edges on the V channel. The larger the value, the stronger the strength. Parameter range: 0 ~ 63. u8StrengthByY[PFC_BY_Y_NUM] Purple edges usually appear in darker areas and are surrounded by bright areas, so different strength for removing purple edges can be given for different brightness levels. The right side of the horizontal axis represents greater brightness. The larger the value, the stronger it is. Parameter range: 0 ~ 255. PFC_BY_Y_NUM = 8. u8FlatProtect The judgment of flat areas to avoid large areas of purple being judged as purple edges, and to provide protection. The larger the value, the more places will not perform PFC. Parameter range: 0 ~ 127. u8SatByY[PFC_LUT_NUM] Judging high contrast areas, purple edges usually appear in areas with higher contrast, so SatByY[0] is used to determine the degree of contrast. The larger the value, the higher the detected contrast needs to exceed SatByY[0] to achieve high contrast. SatByY[1] is used to determine the degree of brightness saturation zone. The larger the value, the less PFC will be applied in brighter areas. Parameter range: 0 ~ 25. PFC_LUT_NUM = 2. U8SatSrcSel When determining high contrast areas, one can choose whether to perform NR preprocessing. 0 represents not performing NR, 1 represents performing NR. It is recommended to enable this function under low light conditions. Parameter range: 0 ~ 1. u8StrengthByContrast[PFC_BY_CONTRAST_NUM] Different strength of PFC are given based on the degree of contrast. The right side of the horizontal axis represents greater contrast. The larger the value, the stronger the PFC. Parameter range: 0 ~ 63. PFC_BY_CONTRAST_NUM = 8. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_PfcEx Structure¶
Type Structure¶
-
Description
The type structure to set PFC_EX.
-
Definition
typedef struct MI_ISP_IQ_PfcExType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_PfcExManualAttr_t stManual;
} MI_ISP_IQ_PfcExType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of PFC_EX.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.stManual The attribute structure of manual mode to set PFC_EX. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetPfcEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_PfcExType_t *data);
MI_S32 MI_ISP_IQ_GetPfcEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_PfcExType_t *data);
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set PFC_EX.
-
Definition
typedef struct MI_ISP_IQ_PfcExManualAttr_s
{
MI_ISP_IQ_PfcExParam_t stParaAPI;
} MI_ISP_IQ_PfcExManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set PFC_EX.
-
Definition
typedef struct MI_ISP_IQ_PfcExParam_s
{
MI_ISP_IQ_Bool_e bDbgEn;
MI_ISP_IQ_Bool_e bGSkipEn;
MI_U8 u8SatMaskSel;
MI_ISP_IQ_Bool_e bSatAmpEn;
MI_U8 u8StrengthByHue[PFC_EX_BY_HUE_NUM];
} MI_ISP_IQ_PfcExParam_t;
-
Name
Variable Name Description BDbgEn Display the range of action of PFC. Value range 0~1, 1 represents on BGSkipEn Does not perform FPC processing on G channels to protect against partial edge loss issues. Value range 0~1, 1 represents on U8SatMaskSel Mask size selection for comparison zone judgment. The range is from 0 to 1, with Mask 0 having a smaller range and Mask 1 having a larger range BSatAmpEn When judging the contrast area, checking this function can increase the accuracy of judging contrast U8StrengthByHue [PFC.EX-BY_HUE.NUM] Depending on the Hue, different intensities of PFC processing are given. Parameter range: values from 0 to 255. PFC-EX-BY_HUE.NUM=12 -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_SharpnessEx Structure¶
Type Structure¶
-
Description
The type structure to set SHP_EX.
-
Definition
typedef struct MI_ISP_IQ_SharpnessExType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_SharpnessExManualAttr_t stManual;
} MI_ISP_IQ_SharpnessExType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of SHP_EX.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.stManual The attribute structure of manual mode to set SHP_EX. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetShpEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SharpnessExType_t *data);
MI_S32 MI_ISP_IQ_GetShpEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SharpnessExType_t *data);
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set SHP_EX.
-
Definition
typedef struct MI_ISP_IQ_SharpnessExManualAttr_s
{
MI_ISP_IQ_SharpnessExParam_t stParaAPI;
} MI_ISP_IQ_SharpnessExManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set SHP_EX.
-
Definition
typedef struct MI_ISP_IQ_SharpnessExParam_s
{
MI_ISP_IQ_BOOL_e bDbgEn;
MI_U8 u8DirSel;
MI_U8 u8DirOffA;
MI_U8 u8MaxRatio;
MI_U8 u8LpfY;
MI_U8 u8SblLutY[6];
MI_U8 u8Sbl2LutY[6];
MI_U8 u8StrengthByHue[24];
} MI_ISP_IQ_SharpnessExParam_t;
-
Name
Variable Name Description bDbgEn In debug mode, show only the edge requiring compensation. u8DirSel SharpnessD direction select. 0 means the direction is represented by the maximum value of each direction; 1 means the direction is represented by the direction judged by a simple denoise method. u8DirOffA The blending ratio of SharpnessD and SharpnessUD is decided based on the strength of the direction. The parameter DirOffA can be used to enhance the output of SharpnessUD. Parameter range: 0 ~ 255. The greater the value, the stronger the non-directional edge. u8MaxRatio If the line segment is not continuous, adjust DirTh first. If it does not help, increase the value of this parameter then. Parameter range: 0 ~ 255. The greater the value, the stronger the edge. u8LpfY Perform LPF against the brightness of the horizontal axis of CorLut and SclLut, to prevent Y from applying different Cor, Scl result due to noise motion. 0 disables LPF, and 1 enables LPF. u8SblLutY[SHARPNESSEX_LUT_Y_NUM] The strength of the SharpnessD low frequency part will be judged using Sobel filter first. This parameter can adjust the strength by Y. The horizontal axis represents brightness. The closer to the right end of the axis, the stronger the brightness. Parameter range: 0 ~ 255. The greater the value, the greater the strength. SHARPNESSEX_LUT_Y_NUM = 6. u8Sbl2LutY[SHARPNESSEX_LUT_Y_NUM] The strength of the SharpnessD high frequency part will be judged using Sobel filter first. This parameter can adjust the strength by Y. The horizontal axis represents brightness. The closer to the right end of the axis, the stronger the brightness. Parameter range: 0 ~ 255. The greater the value, the greater the strength. SHARPNESSEX_LUT_Y_NUM = 6. u8StrengthByHue[SHARPNESSEX_BY_HUE_NUM] Adjust Sharpness by hue. You can increase or decrease the extent of edge specific to a certain color. The horizontal axis represents Hue, which is divided into 24 equal parts from 0 to 360 degrees. The greater the value, the stronger the edge. Value 64 means no adjustment will be done. SHARPNESSEX_BY_HUE_NUM = 24. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Nr3dEx Structure¶
Type Structure¶
-
Description
The type structure to set NR3D_EX.
-
Definition
typedef struct MI_ISP_IQ_Nr3dExType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_Nr3dExManualAttr_t stManual;
} MI_ISP_IQ_Nr3dExType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of NR3D_EX.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.stManual The attribute structure of manual mode to set NR3D_EX. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetNr3dEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_Nr3dExType_t *data);
MI_S32 MI_ISP_IQ_GetNr3dEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_Nr3dExType_t *data);
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set NR3D_EX.
-
Definition
typedef struct MI_ISP_IQ_Nr3dExManualAttr_s
{
MI_ISP_IQ_Nr3dExParam_t stParaAPI;
} MI_ISP_IQ_Nr3dExManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set NR3D_EX.
-
Definition
typedef struct MI_ISP_IQ_Nr3dExParam_s
{
MI_ISP_IQ_BOOL_e bAREn;
MI_U8 u8ARLumaTh[NR3D_EX_AR_LUMA_NUM];
MI_U8 u8ARMotTh[NR3D_EX_AR_MOT_NUM];
MI_ISP_IQ_BOOL_e bPREn;
MI_U16 u16PRDiffTh;
MI_U8 u8PRRatioConf[NR3D_EX_PR_RATIO_CONF_NUM];
MI_U8 u8PRContrastTh[NR3D_EX_PR_CONTRAST_TH_NUM];
MI_U8 u8PRMotTh[NR3D_EX_PR_MOT_TH_NUM];
} MI_ISP_IQ_Nr3dExParam_t;
-
Name
Variable Name Description bAREn Enable the NR3D strength based on luma and motion information. Parameter range: 0 ~ 1. u8ARLumaTh[NR3D_EX_AR_LUMA_NUM] When Luma < LumaTh[0], the NR3D strength remains unchanged. When Luma > LumaTh[1], the NR3D strength is 0. Parameter range: 0 ~ 255. NR3D_EX_AR_LUMA_NUM = 2. u8ARMotTh[NR3D_EX_AR_MOT_NUM] When motion < MotTh[0], the NR3D strength remains unchanged. When motion > MotTh[1], the NR3D strength is 0. Parameter range: 0 ~ 255. NR3D_EX_AR_MOT_NUM = 2. bPREn The motion switch that assists NR3D in determining the purple edge. u16PRDiffTh Based on the PFC compensation result, if the PFC compensation at this point is greater than PRDiffTh, it is judged as a purple edge. The value range is from 0 to 4095, and the smaller the value, the easier it is to determine the purple edge. u8PRRatioConf[NR3D_EX_PR_RATIO_CONF_NUM] Determine if the color is similar to the purple edge. Value range 0~16, the horizontal axis represents color correlation, the more to the right, the more similar the purple edge, and the vertical axis represents the degree of purple edge judgment. The larger the value, the easier it is to determine as purple edge. NR3D_EX_PR_RATIO_CONF_NUM = 4 u8PRContrastTh[NR3D_EX_PR_CONTRAST_TH_NUM] Determine the degree of contrast. When the contrast is high, purple edges are more likely to appear. If the comparison in the range of 0 to 16 is less than ContrastTh1, it will not be processed. If it is greater than ContrastTh2, it will be judged as a purple edge. NR3D_EX_PR_CONTRAST_TH_NUM = 2. u8PRMotTh[NR3D_EX_PR_MOT_TH_NUM] If the degree of purple edge is high, the motion information will be redefined based on the following settings. If it is not purple edge, the motion information will remain unchanged. Set MotTh1 to consider motion below this level as misjudgment information, so motion will be reassigned to 0, representing stillness, while motion above MotTh2, representing normal motion, will remain stationary. Value range: 0 ~ 255. NR3D_EX_PR_MOT_TH_NUM = 2. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Dummy Structure¶
Type Structure¶
-
Description
The type structure to set DUMMY.
-
Definition
typedef struct MI_ISP_IQ_DummyType_s
{
MI_ISP_BOOL_e bEnable;
MI_ISP_OP_TYPE_e enOpType;
DUMMY_AUTO_ATTR_t stAuto;
DUMMY_MANUAL_ATTR_t stManual;
} MI_ISP_IQ_DummyType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of DUMMY.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of DUMMY.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set DUMMY. stManual The attribute structure of manual mode to set DUMMY. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetDummy(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DummyType_t *data);
MI_S32 MI_ISP_IQ_GetDummy(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DummyType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set DUMMY.
-
Definition
typedef struct MI_ISP_IQ_DummyAutoAttr_s
{
MI_ISP_IQ_DummyParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_DummyAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set DUMMY.
-
Definition
typedef struct MI_ISP_IQ_DummyManualAttr_s
{
MI_ISP_IQ_DummyParam_t stParaAPI;
} MI_ISP_IQ_DummyManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set DUMMY.
-
Definition
typedef struct MI_ISP_IQ_DummyParam_s
{
MI_S16 s16Dummy0[DUMMY_NUM];
MI_S16 s16Dummy1[DUMMY_NUM];
MI_S16 s16Dummy2[DUMMY_NUM];
MI_S16 s16Dummy3;
MI_S16 s16Dummy4;
} MI_ISP_IQ_DummyParam_t;
-
Name
Variable Name Description s16Dummy0[DUMMY_NUM] Currently not functional, preset to -1. Value range: -1 ~ 255. DUMMY_NUM = 256. s16Dummy1[DUMMY_NUM] NRLuma bilateral filter strength, s16Dummy1[0] is the strength. Parameter range: 0 to 7. s16Dummy1[1~32] is the weight table, with the horizontal axis representing the difference from the center point. The smaller the difference, the greater the weight. Parameter range: 0 to 31. DUMMY_NUM = 256 s16Dummy2[DUMMY_NUM] Adjust the Sharpness UD according to the degree of motion, which has the same function as the Sharpness DetailMotOffset. However, the Sharpness DetailMotOffset only has one value that can be adjusted, and the other values are automatically adjusted internally. s16Dummy2 can be adjusted separately according to different degrees of motion. If s16Dummy2 is enabled, the Sharpness DetailMotOffset will automatically expire, and only s16Dummy2[0~15] has an effect, with a value range of 0~255. DUMMY_NUM = 256. s16Dummy3 Currently not functional. Default value is “-1”. Parameter range: -1 ~ 255. s16Dummy4 Currently not functional. Default value is “-1”. Parameter range: -1 ~ 255. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_DummyEx Structure¶
Type Structure¶
-
Description
The type structure to set DUMMY_EX.
-
Definition
typedef struct MI_ISP_IQ_DummyExType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_DummyExManualAttr_t stManual;
} MI_ISP_IQ_DummyExType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of DUMMY_EX.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.stManual The attribute structure of manual mode to set DUMMY_EX. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetDummyEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DummyExType_t *data);
MI_S32 MI_ISP_IQ_GetDummyEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DummyExType_t *data);
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set DUMMY_EX.
-
Definition
typedef struct MI_ISP_IQ_DummyExManualAttr_s
{
MI_ISP_IQ_DummyExParam_t stParaAPI;
} MI_ISP_IQ_DummyExManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set DUMMY_EX.
-
Definition
typedef struct MI_ISP_IQ_DummyExParam_s
{
MI_S16 s16DummyEx0[DUMMY_EX_NUM];
MI_S16 s16DummyEx1[DUMMY_EX_NUM];
MI_S16 s16DummyEx2[DUMMY_EX_NUM];
MI_S16 s16DummyEx3;
MI_S16 s16DummyEx4;
} MI_ISP_IQ_DummyExParam_t;
-
Name
Variable Name Description s16DummyEx0[DUMMY_EX_NUM] The EdgeKillLut horizontal node in Shaprness, with a power of 2 barrier addition, only s16DummyEx0 [0~5] has an effect. Parameter range: 0~15. DUMMY_EX_NUM = 256. s16DummyEx1[DUMMY_EX_NUM] Moves the result that has passed 3DNR closer to the current frame. s16DummyEx1[0] is a switch with a range of 0 to 1. s16DummyEx1[1] is the maximum value for motion, and the smaller the value, the more it restricts the result of 3DNR closer to the current frame. Parameter range: 0 ~ 255. s16DummyEx1[2] is the motion threshold. If the difference between the result of 3DNR and the current frame is less than this value, this function has no effect. Parameter range: 0 ~ 255. DUMMY_EX_NUM = 256. s16DummyEx2[DUMMY_EX_NUM] Currently not functional, preset to -1, value range: -1 ~ 255. DUMMY_EX_NUM = 256. s16DummyEx3 3DNR transmits motion information in a backward manner, where 0 represents the direct difference between the current frame and the reference frame, and 1 represents an additional limit. In the case of motion to stillness, the motion information in each frame can change by up to 1, which means that the motion will change slowly. Parameter range: 0 ~ 1. s16DummyEx4 Currently not functional, default to -1, value range: -1 ~ 255. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_WDRCurveFull Structure¶
Type Structure¶
-
Description
The type structure to set WDRCurveFull.
-
Definition
typedef struct MI_ISP_IQ_WdrCurveFullType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_WdrCurveFullAutoAttr_t stAuto;
MI_ISP_IQ_WdrCurveFullManualAttr_t stManual;
} MI_ISP_IQ_WdrCurveFullType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of WDRCurveFull.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of WDRCurveFull.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set WDRCurveFull. stManual The attribute structure of manual mode to set WDRCurveFull. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetWdrCurveFull(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WdrCurveFullType_t *data);
MI_S32 MI_ISP_IQ_GetWdrCurveFull(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WdrCurveFullType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set WDRCurveFull.
-
Definition
typedef struct MI_ISP_IQ_WdrCurveFullAutoAttr_s
{
MI_ISP_IQ_WdrCurveFullParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_WdrCurveFullAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set WDRCurveFull.
-
Definition
typedef struct MI_ISP_IQ_WdrCurveFullManualAttr_s
{
MI_ISP_IQ_WdrCurveFullParam_t stParaAPI;
} MI_ISP_IQ_WdrCurveFullManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set WDRCurveFull.
-
Definition
typedef struct MI_ISP_IQ_WdrCurveFullParam_s
{
MI_U16 u16FCurve[WDR_CURVE_FULL_CURVE_NUM];
} MI_ISP_IQ_WdrCurveFullParam_t;
-
Name
Variable Name Description u16FCurve[WDR_CURVE_FULL_CURVE_NUM] Used to replace the Dark Tone Enhance Curve and WDRCurveAdv in WDR, providing the ability to modify curves on your own. It is not recommended to change the ISO settings, as there may be flickering when switching curves. Value range: 0 ~ 4095. WDR_CURVE_FULL_CURVE_NUM = 256. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Defog Structure¶
Type Structure¶
-
Description
The type structure to set Defog.
-
Definition
typedef struct MI_ISP_IQ_DefogType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_DefogAutoAttr_t stAuto;
MI_ISP_IQ_DefogManualAttr_t stManual;
} MI_ISP_IQ_DefogType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of Defog.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of Defog.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set Defog. stManual The attribute structure of manual mode to set Defog. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetDefog(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DefogType_t *data);
MI_S32 MI_ISP_IQ_GetDefog(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DefogType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set Defog.
-
Definition
typedef struct MI_ISP_IQ_DefogAutoAttr_s
{
MI_ISP_IQ_DefogParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_DefogAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set Defog.
-
Definition
typedef struct MI_ISP_IQ_DefogManualAttr_s
{
MI_ISP_IQ_DefogParam_t stParaAPI;
} MI_ISP_IQ_DefogManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set Defog.
-
Definition
typedef struct MI_ISP_IQ_DefogParam_s
{
MI_U8 u8Strength;
} MI_ISP_IQ_DefogParam_t;
-
Name
Variable Name Description u8Strength Set the variable strength values for contrast, luma and grayscale. Value range: 0 ~ 100. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Temp Structure¶
Type Structure¶
-
Description
The type structure to set Temperature.
-
Definition
typedef struct MI_ISP_IQ_TempType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_U8 u8TemperatureLut[TEMP_LUT_NUM];
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_TempAutoAttr_t stAuto;
MI_ISP_IQ_TempManualAttr_t stManual;
} MI_ISP_IQ_TempType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of Temperature.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u8TemperatureLut[TEMP_LUT_NUM] Set Temperature nodes, up to 16 nodes are supported. Parameter range: 0 ~ 100. TEMP_LUT_NUM = 16. enOpType Set working mode of Temperature.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set Temperature. stManual The attribute structure of manual mode to set Temperature. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetTemp(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_TempType_t *data);
MI_S32 MI_ISP_IQ_GetTemp(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_TempType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set Temperature.
-
Definition
typedef struct MI_ISP_IQ_TempAutoAttr_s
{
MI_ISP_IQ_TempParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_TempAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set Temperature.
-
Definition
typedef struct MI_ISP_IQ_TempManualAttr_s
{
MI_ISP_IQ_TempParam_t stParaAPI;
} MI_ISP_IQ_TempManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set Temperature.
-
Definition
typedef struct MI_ISP_IQ_TempParam_s
{
MI_S16 s16ObcOffset;
MI_U8 u8DynamicDPRatio;
MI_U8 u8CrosstalkRatio;
MI_U8 u8NRDeSpikeRatio;
MI_U8 u8NR3DRatio[TEMP_NR3D_NUM];
MI_U8 u8NRLumaRatio;
MI_U8 u8SharpnessRatio[TEMP_SHARPNESS_NUM];
MI_U8 u8SaturationRatio;
MI_U8 u8ColorToneRatio[TEMP_COLOR_TONE_NUM];
} MI_ISP_IQ_TempParam_t;
-
Name
Variable Name Description s16ObcOffset Offset value of OBC. The greater the value, the greater subtraction. Default value is 0. Parameter range: -32768 ~ 32767. u8DynamicDPRatio Ratio of DynamicDP strength change. The greater the value, the greater strength. Default value is 50. Parameter range: 0 ~ 100. u8CrosstalkRatio Ratio of Crosstalk strength change. The greater the value, the greater strength. Default value is 50. Parameter range: 0 ~ 100. u8NRDeSpikeRatio Ratio of NRDeSpike strength change. The greater the value, the greater strength. Default value is 50. Parameter range: 0 ~ 100. u8NR3DRatio[TEMP_NR3D_NUM] Ratio of NR3D strength change. The greater the value, the greater strength. u8NR3DRatio[0] represents MD.Thd, while u8NR3DRatio[1] represents MD.Gain. Default value is 50. Parameter range: 0 ~ 100. TEMP_NR3D_NUM = 2. u8NRLumaRatio Ratio of NRLuma strength change. The greater the value, the greater strength. Default value is 50. Parameter range: 0 ~ 100. u8SharpnessRatio[TEMP_SHARPNESS_NUM] Ratio of Sharpness strength change. The greater the value, the sharper. u8SharpnessRatio[0] represents OverShootGain, while u8SharpnessRatio[1] represents UnderShootGain. Default value is 50. Parameter range: 0 ~ 100. TEMP_SHARPNESS_NUM = 2. u8SaturationRatio Ratio of Saturation strength change. The greater the value, the greater the saturation. Default value is 50. Parameter range: 0 ~ 100. u8ColorToneRatio[TEMP_COLOR_TONE_NUM] Ratio of ColorTone strength change. The greater the value, the greater the saturation. Default value is 50. u8ColorToneRatio[0 ~ 2] respectively corresponds to R/G/B in order. Parameter range: 0 ~ 100. TEMP_COLOR_TONE_NUM = 3. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_TempInfo Structure¶
Type Structure¶
-
Description
The type structure to set temperature info.
-
Definition
typedef struct MI_ISP_IQ_TempInfoType_s
{
MI_U8 u8Temperature;
} MI_ISP_IQ_TempInfoType_t;
-
Name
Variable Name Description u8Temperature Obtain the current chip temperature. Read only. Parameter range: 0 ~ 255. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_GetTempInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_TempInfoType_t *data);
MI_ISP_IQ_ApiBypass Structure¶
Type Structure¶
-
Description
The type structure to set the IP module bypass mode corresponding to ISP.
-
Definition
typedef struct MI_ISP_IQ_ApiBypassType_s
{
MI_ISP_IQ_BypassMode_e bEnable;
MI_ISP_IQ_ApiId_e eAPIIndex;
} MI_ISP_IQ_ApiBypassType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of IP module bypass mode corresponding to ISP.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.eAPIIndex Set index value in the enum structure of ISP API ID. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetApiBypassMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ApiBypassType_t *data);
MI_S32 MI_ISP_IQ_GetApiBypassMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ApiBypassType_t *data);
MI_ISP_AE_bool Structure¶
Enum Structure¶
-
Description
The enum structure of bool value.
-
Definition
typedef enum
{
E_SS_AE_FALSE = 0,
E_SS_AE_TRUE = !E_SS_AE_FALSE,
E_SS_AE_BOOL_MAX
} MI_ISP_AE_bool_e;
-
Name
Variable Name Description E_SS_AE_FALSE Bool value = 0. E_SS_AE_TRUE Bool value = 1. E_SS_AE_BOOL_MAX Determine the maximum value in the enum list of Bool value. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AE_OpType Structure¶
Enum Structure¶
-
Description
The enum structure of working mode.
-
Definition
typedef enum
{
E_SS_AE_OP_TYP_AUTO = 0,
E_SS_AE_OP_TYP_MANUAL = ! E_SS_AE_OP_TYP_AUTO,
E_SS_AE_OP_TYP_MODE_MAX
} MI_ISP_AE_OpType_e;
-
Name
Variable Name Description E_SS_AE_OP_TYP_AUTO Auto working mode. E_SS_AE_OP_TYP_MANUAL Manual working mode. E_SS_AE_OP_TYP_MODE_MAX Determine the maximum value in the enum list of working mode. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AE_SmStateType Structure¶
Enum Structure¶
-
Description
The enum structure of State Machine.
-
Definition
typedef enum
{
E_SS_AE_STATE_NORMAL = 0,
E_SS_AE_STATE_PAUSE = 1,
E_SS_AE_STATE_MAX
} MI_ISP_AE_SmStateType_e;
-
Name
Variable Name Description E_SS_AE_STATE_NORMAL Normal mode. E_SS_AE_STATE_PAUSE Pause mode. E_SS_AE_STATE_MAX Determine the maximum value in the enum list of State Machine. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetState(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_SmStateType_e *data);
MI_S32 MI_ISP_AE_GetState(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_SmStateType_e *data);
MI_ISP_AE_ExpoValue Structure¶
Type Structure¶
-
Description
The type structure to record exposure parameter.
-
Definition
typedef struct MI_ISP_AE_ExpoValueType_s
{
MI_U32 u32FNx10;
MI_U32 u32SensorGain;
MI_U32 u32ISPGain;
MI_U32 u32US;
} MI_ISP_AE_ExpoValueType_t;
-
Name
Variable Name Description u32FNx10 Aperture value ×10 (e.g., if aperture is F1.8, the value will be 18). u32SensorGain Sensor gain (including sensor analog gain and sensor digital gain, 1024 = 1x). u32ISPGain ISP digital gain (1024 = 1x). u32US Exposure time (μsec). -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetManualExpo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoValueType_t *data);
MI_S32 MI_ISP_AE_GetManualExpo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoValueType_t *data);
MI_ISP_AE_HistWeightY Structure¶
Type Structure¶
-
Description
The type structure to record the current screen brightness and histogram statistical data.
-
Definition
typedef struct MI_ISP_AE_HistWeightYType_s
{
MI_U32 u32LumY;
MI_U32 u32AvgY;
MI_U32 u32Hits[MI_ISP_AE_HIST_BIN];
} MI_ISP_AE_HistWeightYType_t;
-
Name
Variable Name Description u32LumY The current screen brightness after being weighted in patch weight table. u32AvgY Average brightness of the current screen (unweighted). u32Hits[MI_ISP_AE_HIST_BIN] The statistical data of screen histogram (128 columns, corresponding to 0 ~ 255). MI_ISP_AE_HIST_BIN = 128. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_GetHistoWghtY(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_HistWeightYType_t *data);
MI_ISP_AE_ExpoInfo Structure¶
Type Structure¶
-
Description
The type structure to get the current general exposure information.
-
Definition
typedef struct MI_ISP_AE_ExpoInfoType_s
{
MI_ISP_AE_bool_e bIsStable;
MI_ISP_AE_bool_e bIsReachBoundary;
MI_ISP_AE_ExpoValueType_t stExpoValueLong;
MI_ISP_AE_ExpoValueType_t stExpoValueShort;
MI_ISP_AE_HistWeightYType_t stHistWeightY;
MI_U32 u32LVx10;
MI_S32 s32BV;
MI_U32 u32SceneTarget;
} MI_ISP_AE_ExpoInfoType_t;
-
Name
Variable Name Description bIsStable Whether AE is stable. (0: AE has not converged; 1: converged) bIsReachBoundary Whether the current exposure parameter has reached the upper or lower boundary of changing. (0: boundary has not yet been reached; 1: boundary reached) stExpoValueLong Current exposure parameter (or long exposure parameter in HDR mode). stExpoValueShort Short exposure parameter in HDR mode. stHistWeightY The current screen brightness and histogram statistical data. u32LVx10 The current LV value ×10. s32BV The current BV value ×16384. u32SceneTarget The current AE target brightness. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_QueryExposureInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoInfoType_t *data);
MI_ISP_AE_EvComp Structure¶
Type Structure¶
-
Description
The type structure to set additional strength of exposure compensation.
-
Definition
typedef struct MI_ISP_AE_EvCompType_s
{
MI_S32 s32EV;
MI_U32 u32Grad;
} MI_ISP_AE_EvCompType_t;
-
Name
Variable Name Description s32EV Additional exposure energy numerator. Parameter range: -10 ~ 10. u32Grad Additional exposure energy denominator. Parameter range: -10 ~ 10. -
Note
Example: If s32EV = 1 and u32Grad = 2, the exposure energy will be increased additionally by ½ EV as compared to value allowed by the original automatic mode.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetEvComp(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_EvCompType_t *data);
MI_S32 MI_ISP_AE_GetEvComp(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_EvCompType_t *data);
MI_ISP_AE_Mode Structure¶
Type Structure¶
-
Description
Set exposure mode: fully automatic, semi-automatic, or manual.
-
Definition
typedef enum
{
E_SS_AE_MODE_A,
E_SS_AE_MODE_AV,
E_SS_AE_MODE_SV,
E_SS_AE_MODE_TV,
E_SS_AE_MODE_M,
E_SS_AE_MODE_MAX
} MI_ISP_AE_ModeType_e;
-
Name
Variable Name Description E_SS_AE_MODE_A Fully automatic exposure mode. E_SS_AE_MODE_AV Aperture first mode. E_SS_AE_MODE_SV Gain first mode. E_SS_AE_MODE_TV Shutter first mode. E_SS_AE_MODE_M Manual mode. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetExpoMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ModeType_e *data);
MI_S32 MI_ISP_AE_GetExpoMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ModeType_e *data);
MI_ISP_AE_IntpLut Structure¶
Type Structure¶
-
Description
Parameter data setup table with point interpolation function. This function can be used to set up target screen brightness that varies with ambient brightness (X-axis for BV and Y-axis for target screen brightness), or set up floating range of target screen brightness that varies with ambient brightness (X-axis for BV and Y-axis for the floating range of target screen brightness).
-
Definition
typedef struct MI_ISP_AE_IntpLutType_s
{
MI_U16 u16NumOfPoints;
MI_S32 s32Y[MI_ISP_AE_LUT_16];
MI_S32 s32X[MI_ISP_AE_LUT_16];
} MI_ISP_AE_IntpLutType_t;
-
Name
Variable Name Description u16NumOfPoints The actual number of effective points of data in the table. A maximum of 16 points are supported, that is, 16 entries of X-axis and Y-axis data can be input. s32Y[MI_ISP_AE_LUT_16] Y-axis parameter corresponding to each point. For points not used, set the parameter to 0. MI_ISP_AE_LUT_16 = 16. s32X[MI_ISP_AE_LUT_16] X-axis parameter corresponding to each point. For points not used, set the parameter to 0. MI_ISP_AE_LUT_16 = 16. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetTarget(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_IntpLutType_t *data);
MI_S32 MI_ISP_AE_GetTarget(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_IntpLutType_t *data);
MI_ISP_AE_ConvConditon Structure¶
Type Structure¶
-
Description
Set convergence condition for auto exposure.
-
Definition
typedef struct MI_ISP_AE_ConvConditonType_s
{
MI_ISP_AE_ConvThdParam_t stConvThrd;
MI_ISP_AE_ConvSpeedParam_t stConvSpeed;
} MI_ISP_AE_ConvConditonType_t;
-
Name
Variable Name Description stConvThrd Set threshold for auto exposure to launch convergence or the range for determining that convergence has finished. stConvSpeed Set the convergence speed of auto exposure. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetConverge(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ConvConditonType_t *data);
MI_S32 MI_ISP_AE_GetConverge(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ConvConditonType_t *data);
Convergence Range Structure¶
-
Description
Set threshold for auto exposure to launch convergence or the range for auto exposure to determine that convergence has finished.
-
Definition
typedef struct MI_ISP_AE_ConvThdParam_s
{
MI_U32 u32InThd;
MI_U32 u32OutThd;
} MI_ISP_AE_ConvThdParam_t;
-
Name
Variable Name Description u32InThd If the difference between weighted screen brightness and target screen brightness is smaller than this threshold, the auto exposure is considered already converged. Parameter range: 1 ~ 100. u32OutThd If the difference between weighted screen brightness and target screen brightness is larger than this threshold, the auto exposure will be considered not yet converged and a convergence procedure will be launched automatically. Parameter range: 2 ~ 100. -
Note
N/A.
-
Related Structure Type and Function
Convergence Speed Structure¶
-
Description
Set the auto exposure convergence speed. There are four points available, in which the X-axis corresponds to screen brightness, while the Y-axis corresponds to the convergence speed of corresponding screen brightness.
-
Definition
typedef struct MI_ISP_AE_ConvSpeedParam_s
{
MI_U32 u32SpeedX[MI_ISP_AE_LUT_4];
MI_U32 u32SpeedY[MI_ISP_AE_LUT_4];
} MI_ISP_AE_ConvSpeedParam_t;
-
Name
Variable Name Description u32SpeedX[MI_ISP_AE_LUT_4] Select the current screen weighted brightness to be applied with the convergence speed. Parameter range: 1 ~ 2550. MI_ISP_AE_LUT_4 = 4. u32SpeedY[MI_ISP_AE_LUT_4] Convergence speed, and the base is 1024. (For example, if Y is set to 500, when the current screen brightness falls on the X point that corresponds to Y, auto exposure will advance toward exposure target by 500/1024 in each move). Parameter range: 1 ~ 1024. MI_ISP_AE_LUT_4 = 4. -
Note
- The central two points of u32SpeedX[1] and u32SpeedX[2] are set by default to represent the current screen target brightness, so as to automatically correspond to the corresponding value when the target brightness is not fixed. Therefore, modifying the two points manually will have no effect.
-
Related Structure Type and Function
N/A.
MI_ISP_AE_ExpoLimit Structure¶
Type Structure¶
-
Description
Set the maxima and minima of auto exposure.
-
Definition
typedef struct MI_ISP_AE_ExpoLimitType_s
{
MI_U32 u32MinShutterUS;
MI_U32 u32MaxShutterUS;
MI_U32 u32MinFNx10;
MI_U32 u32MaxFNx10;
MI_U32 u32MinSensorGain;
MI_U32 u32MinISPGain;
MI_U32 u32MaxSensorGain;
MI_U32 u32MaxISPGain;
} MI_ISP_AE_ExpoLimitType_t;
-
Name
Variable Name Description u32MinShutterUS The minimum shutter time (μsec). Parameter range: 1 ~ 1000000. u32MaxShutterUS The maximum shutter time (μsec). Parameter range: 1 ~ 1000000. u32MinFNx10 The minimum value of aperture (ex: F1.8 = 18). Parameter range: 10 ~ 220. u32MaxFNx10 The maximum value of aperture (ex: F1.8 = 18). Parameter range: 10 ~ 220. u32MinSensorGain The minimum sensor gain (1024 = 1x). Parameter range: 1024 ~ 5242880. u32MinISPGain The minimum ISP gain (1024 = 1x). Parameter range: 1024 ~ 262144. u32MaxSensorGain The maximum sensor gain (1024 = 1x). Parameter range: 1024 ~ 5242880. u32MaxISPGain The maximum ISP gain (1024 = 1x). Parameter range: 1024 ~ 262144. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetExposureLimit(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoLimitType_t *data);
MI_S32 MI_ISP_AE_GetExposureLimit(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoLimitType_t *data);
MI_ISP_AE_ExpoTable Structure¶
Type Structure¶
-
Description
Exposure table.
-
Definition
typedef struct MI_ISP_AE_ExpoTableType_s
{
MI_U32 u32NumPoints;
MI_ISP_AE_ExpoPointParam_t stExpoTbl[MI_ISP_AE_LUT_16];
} MI_ISP_AE_ExpoTableType_t;
-
Name
Variable Name Description u32NumPoints Number of points on exposure table. Parameter range: 1 ~ 16. stExpoTbl[MI_ISP_AE_LUT_16] Parameter data of the point on the exposure table. MI_ISP_AE_LUT_16 = 16. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetPlainLongExpoTable(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoTableType_t *data);
MI_S32 MI_ISP_AE_GetPlainLongExpoTable(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoTableType_t *data);
Exposure Point Parameter Structure¶
-
Description
Set exposure time, aperture and gain of each point on the exposure table.
-
Definition
typedef struct MI_ISP_AE_ExpoPointParam_s
{
MI_U32 u32FNumx10;
MI_U32 u32Shutter;
MI_U32 u32TotalGain;
MI_U32 u32SensorGain;
} MI_ISP_AE_ExpoPointParam_t;
-
Name
Variable Name Description u32FNumx10 Aperture (ex: F1.8 = 18). Parameter range: 10 ~ 220. u32Shutter Shutter time (μsec). Parameter range: 1 ~ 1000000. u32TotalGain Total gain = sensor gain × ISP digital gain (1024 = 1x). Parameter range: 1024 ~ 5242880. u32SensorGain Sensor gain (1024 = 1x). Parameter range: 1024 ~ 5242880. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_AE_WinWeightMode Structure¶
Type Structure¶
-
Description
Set or switch the type of weight table for the calculation of screen brightness.
-
Definition
typedef enum
{
E_SS_AE_WEIGHT_AVERAGE = 0,
E_SS_AE_WEIGHT_CENTER,
E_SS_AE_WEIGHT_SPOT,
E_SS_AE_WEIGHT_MAX
} MI_ISP_AE_WinWeightModeType_e;
-
Name
Variable Name Description E_SS_AE_WEIGHT_AVERAGE Switch to the weight table of average light metering. E_SS_AE_WEIGHT_CENTER Switch to the weight table of center light metering. E_SS_AE_WEIGHT_SPOT Switch to the weight table of spot light metering. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetWinWgtType(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_WinWeightModeType_e *data);
MI_S32 MI_ISP_AE_GetWinWgtType(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_WinWeightModeType_e *data);
MI_ISP_AE_WinWeight Structure¶
Type Structure¶
-
Description
Set or switch the type of weight table for the calculation of screen brightness and set the weight table.
-
Definition
typedef struct MI_ISP_AE_WinWeightType_s
{
MI_ISP_AE_WinWeightModeType_e eTypeID;
MI_ISP_AE_WinWeightParam_t stParaAPI;
} MI_ISP_AE_WinWeightType_t;
-
Name
Variable Name Description eTypeID Select the type of light-metering weight table to switch to.
Average light metering: E_SS_AE_WEIGHT_AVERAGE
Center light metering: E_SS_AE_WEIGHT_CENTER
Spot light metering: E_SS_AE_WEIGHT_SPOTPARAM_t Set exposure weight table. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetWinWgt(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_WinWeightType_t *data);
MI_S32 MI_ISP_AE_GetWinWgt(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_WinWeightType_t *data);
Light Metering Weight Table Parameter Structure¶
-
Description
Set a weight table in size of 32×32 for light metering.
-
Definition
typedef struct MI_ISP_AE_WinWeightParam_s
{
MI_U8 u8AverageTbl[MI_ISP_AE_LUT_32 * MI_ISP_AE_LUT_32];
MI_U8 u8CenterTbl[MI_ISP_AE_LUT_32 * MI_ISP_AE_LUT_32];
MI_U8 u8SpotTbl[MI_ISP_AE_LUT_32 * MI_ISP_AE_LUT_32];
} MI_ISP_AE_WinWeightParam_t;
-
Name
Variable Name Description u8AverageTbl [MI_ISP_AE_LUT_32 * MI_ISP_AE_LUT_32] Weight table of average light metering.
Parameter range: 0 ~ 255.
MI_ISP_AE_LUT_32 = 32.u8CenterTbl [MI_ISP_AE_LUT_32 * MI_ISP_AE_LUT_32] Weight table of center light metering.
Parameter range: 0 ~ 255.
MI_ISP_AE_LUT_32 = 32.u8SpotTbl [MI_ISP_AE_LUT_32 * MI_ISP_AE_LUT_32] Weight table of spot light metering.
Parameter range: 0 ~ 255.
MI_ISP_AE_LUT_32 = 32. -
Note
- The maximum supported size is 32×32, and the current default size is 16×16.
-
Related Structure Type and Function
N/A.
MI_ISP_AE_Flicker Structure¶
Type Structure¶
-
Description
Set anti-flicker frequency.
-
Definition
typedef enum
{
E_SS_AE_FLICKER_TYPE_DISABLE = 0,
E_SS_AE_FLICKER_TYPE_60HZ = 1,
E_SS_AE_FLICKER_TYPE_50HZ = 2,
E_SS_AE_FLICKER_TYPE_AUTO = 3,
E_SS_AE_FLICKER_TYPE_MAX
} MI_ISP_AE_FlickerType_e;
-
Name
Variable Name Description E_SS_AE_FLICKER_TYPE_DISABLE Disable anti-flicker function. E_SS_AE_FLICKER_TYPE_60HZ Set anti-flicker environment at 60Hz. E_SS_AE_FLICKER_TYPE_50HZ Set anti-flicker environment at 50Hz. E_SS_AE_FLICKER_TYPE_AUTO Auto set anti-flicker environment. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetFlicker(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FlickerType_e *data);
MI_S32 MI_ISP_AE_GetFlicker(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FlickerType_e *data);
MI_ISP_AE_FlickerEx Structure¶
Type Structure¶
-
Description
Set anti-flicker frequency detection.
-
Definition
typedef struct MI_ISP_AE_FlickerExType_s
{
MI_ISP_AE_bool_e bEnable;
MI_ISP_AE_OpType_e enOpType;
MI_U8 u8AmpSensitivity;
MI_U8 u8ScoreThd;
MI_U8 u8RefreshCycles;
MI_U8 u8ValidTimesThd;
MI_ISP_AE_FlickerDetectType_e eFlickerType;
} MI_ISP_AE_FlickerExType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of anti-flicker frequency detection. If bEnable = 1, the older version of Flicker API will become ineffective.
To disable, set E_SS_AE_FALSE = 0.
To enable, set E_SS_AE_TRUE = 1.enOpType Set working mode of anti-flicker frequency detection. When enOpType is set to Auto, eFlickerType will be automatically switched if flicker is detected.
Auto mode: E_SS_AE_OP_TYP_AUTO = 0.
Manual mode: E_SS_AE_OP_TYP_MANUAL = 1.u8AmpSensitivity Adjust the sensitivity of anti-flicker detection (The greater the value, the higher the sensitivity). Parameter range: 0 ~ 100. Suggested default setting: 70. u8ScoreThd The threshold value to trigger automatic switch of FlickerType in Auto mode. If Score is smaller than this threshold value, ValidTimes will be added by one. If Score is larger than this threshold value, ValidTimes will be reset to 0. Parameter range: 0 ~ 100. Suggested default setting: 50. u8RefreshCycles Adjust the refresh rate of anti-flicker detection score calculation. This parameter indicates how many cycles are required for the score to be refreshed, and each cycle usually takes 4 to 7 frames. Parameter range: 1 ~ 10. The greater the value, the more reliable the score will be, but the time spent is longer. Suggested default setting: 3. u8ValidTimesThd When ValidTimes reaches ValidTimesThd in auto mode, the algorithm will automatically switch to another Flicker mode. Parameter range: 1 ~ 10. The greater the value, the less likely it will be misjudged, but the time spent is longer. Suggested default setting: 2. eFlickerType Set anti-flicker frequency detection mode: “0 = 60Hz” and “1 = 50Hz”. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetFlickerEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FlickerExType_t *data);
MI_S32 MI_ISP_AE_GetFlickerEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FlickerExType_t *data);
Anti-flicker Frequency Detection Type Structure¶
-
Description
Select the type of anti-flicker frequency detection.
-
Definition
typedef enum
{
E_SS_AE_FLICKER_TYPE_DETECT_60HZ = 0,
E_SS_AE_FLICKER_TYPE_DETECT_50HZ = 1,
E_SS_AE_FLICKER_TYPE_DETECT_MAX
} MI_ISP_AE_FlickerDetectType_e;
-
Name
Variable Name Description E_SS_AE_FLICKER_TYPE_DETECT_60HZ Set anti-flicker frequency detection environment at 60Hz. E_SS_AE_FLICKER_TYPE_DETECT_50HZ Set anti-flicker frequency detection environment at 50Hz. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AE_QueryFlickerExInfo Structure¶
Type Structure¶
-
Description
The type structure to obtain information about current anti-flicker frequency detection.
-
Definition
typedef struct MI_ISP_AE_FlickerExInfoType_s
{
MI_ISP_AE_bool_e bIsEffective;
MI_ISP_AE_FlickerDetectType_e eFlickerType;
MI_U16 u16Score;
} MI_ISP_AE_FlickerExInfoType_t;
-
Name
Variable Name Description bIsEffective Get information about the effectiveness of current anti-flicker frequency detection (1: effective; 0: ineffective). eFlickerType Get information about the current mode of anti-flicker frequency detection (0 = 60Hz; 1 = 50Hz). u16Score Get the score of the current effective mode of anti-flicker frequency detection. If the score is high, the current anti-flicker frequency mode is determined as the effective mode. If the score is low, another anti-flicker frequency mode is determined as the effective mode. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_QueryFlickerInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FlickerExInfoType_t *data);
MI_ISP_AE_Strategy Structure¶
Type Structure¶
-
Description
The type structure to set exposure strategy of auto-exposure.
-
Definition
typedef struct MI_ISP_AE_StrategyType_s
{
MI_ISP_AE_StrategyType_e eAEStrategyMode;
MI_U32 u32Weighting;
MI_ISP_AE_IntpLutType_t stUpperOffset;
MI_ISP_AE_IntpLutType_t stLowerOffset;
MI_U32 u32BrightToneStrength;
MI_U32 u32BrightToneSensitivity;
MI_U32 u32DarkToneStrength;
MI_U32 u32DarkToneSensitivity;
MI_U32 u32AutoStrength;
MI_U32 u32AutoSensitivity;
} MI_ISP_AE_StrategyType_t;
-
Name
Variable Name Description eAEStrategyMode Select the mode of auto exposure strategy. u32Weighting The weighting as calculated by auto exposure strategy between the target screen brightness and the target screen brightness set in MI_ISP_AE_SetTarget. FinalAETarget = defaultAETarget × (1 - weighting) + StragetyTarget × weighting stUpperOffset Upward floating offset for the adjustment of screen brightness by auto exposure strategy. The X-axis represents the ambient brightness BV, while the Y-axis represents the upward floating range (0 ~ 470). stLowerOffset Downward floating offset for the adjustment of screen brightness by auto exposure strategy. The X-axis represents the ambient brightness BV, while the Y-axis represents the downward floating range (0 ~ 470). u32BrightToneStrength Adjust the target brightness of bright tone area when eAEStrategyMode is set to E_SS_AE_STRATEGY_BRIGHTTONE (the greater the value, the darker the image). Parameter range: 0 ~ 1024. BrightToneSensitivity Adjust the sensitivity towards bright tone area when eAEStrategyMode is set to E_SS_AE_STRATEGY_BRIGHTTONE (the greater the value, the higher the sensitivity). Even if there is only a small portion of overexposure in the image, the parameter will still darken the image as a whole. Parameter range: 0 ~ 1024. DarkToneStrength Adjust the target brightness of dark tone area when eAEStrategyMode is set to E_SS_AE_STRATEGY_DARKTONE (The greater the value, the brighter the image). Parameter range: 0 ~ 1024. DarkToneSensitivity Adjust the sensitivity towards dark tone area when eAEStrategyMode is set to E_SS_AE_STRATEGY_DARKTONE (The greater the value, the higher the sensitivity). Even if there is only a small portion of darkness in the image, the parameter will still brighten up the image as a whole. Parameter range: 0 ~ 1024. AutoStrength Adjust the target brightness in bright tone area when eAEStrategyMode is set to E_SS_AE_STRATEGY_AUTO (The greater the value, the darker the image). Parameter range: 0 ~ 1024. AutoSensitivity Adjust the sensitivity towards bright tone area when eAEStrategyMode is set to E_SS_AE_STRATEGY_AUTO (The greater the value, the higher the sensitivity). Even if there is only a small portion of overexposure in the image, the parameter will still darken the image as a whole. Parameter range: 0 ~ 1024. -
Note
-
If the floating range of stUpperOffset/stLowerOffset is set to 0, AE exposure strategy will become ineffective because no valid floating range is available, and the target brightness will assume the value set by MI_ISP_AE_SetTarget (default target).
-
The range of the exposure strategy floating target is equal to: default target – lower limit ~ default target + upperlimit.
-
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetStrategy(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyType_t
MI_S32 MI_ISP_AE_GetStrategy(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyType_t
Exposure Strategy Mode Structure¶
-
Description
Select the mode of exposure strategy.
-
Definition
typedef enum
{
E_SS_AE_STRATEGY_BRIGHTTONE,
E_SS_AE_STRATEGY_DARKTONE,
E_SS_AE_STRATEGY_AUTO,
E_SS_AE_STRATEGY_MAX
} MI_ISP_AE_StrategyType_e;
-
Name
Variable Name Description E_SS_AE_STRATEGY_BRIGHTTONE Bright light suppression mode (bright tone priority). E_SS_AE_STRATEGY_DARKTONE Backlight compensation mode (dark tone priority). E_SS_AE_STRATEGY_AUTO Auto compensation mode. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AE_StrategyEx Structure¶
Type Structure¶
-
Description
Set auto exposure strategy.
-
Definition
typedef struct MI_ISP_AE_StrategyExType_s
{
MI_ISP_AE_bool_e bEnable;
MI_ISP_AE_StrategyExMode_e eMode;
MI_ISP_AE_StrategyExPriority_e ePriority;
MI_U16 u16BT_NodeNum;
MI_S32 u32BT_NodeBV[MI_ISP_AE_LUT_16];
MI_U32 u32BT_ThdY[MI_ISP_AE_LUT_16];
MI_U32 u32BT_Percentx10[MI_ISP_AE_LUT_16];
MI_U32 u32BT_TargetYx10[MI_ISP_AE_LUT_16];
MI_U32 u32BT_MaxOffsetDown[MI_ISP_AE_LUT_16];
MI_U16 u16DT_NodeNum;
MI_S32 u32DT_NodeBV[MI_ISP_AE_LUT_16];
MI_U32 u32DT_ThdY[MI_ISP_AE_LUT_16];
MI_U32 u32DT_Percentx10[MI_ISP_AE_LUT_16];
MI_U32 u32DT_TargetYx10[MI_ISP_AE_LUT_16];
MI_U32 u32DT_MaxOffsetUp[MI_ISP_AE_LUT_16];
} MI_ISP_AE_StrategyExType_t;
-
Name
Variable Name Description bEnable Enables auto exposure strategy. eMode The mode of exposure strategy. Count Mode and Target Mode are available for selection. Count Mode mainly relies on BT(DT)_ThdY and BT(DT)_Percentx10, by which user may designate the permillage of the statistical value above (or below) a certain level of brightness to the total statistical value. Target Mode mainly relies on BT(DT)_Percentx10 and BT(DT)_Targetx10, by which user may designate the approximate target brightness for the average brightness of statistical value up to (or down to) a certain permillage. ePriority Priority setting of exposure strategy, including Dark Tone Priority (under-exposure prevention) / Bright Tone Priority (over-exposure prevention). u16BT_NodeNum The number of nodes related to Bright Tone parameters. u32BT_NodeBV[MI_ISP_AE_LUT_16] The setting of BV corresponding to each node of Bright Tone. MI_ISP_AE_LUT_16 = 16. u32BT_ThdY[MI_ISP_AE_LUT_16] The setting of brightness threshold for Bright Tone. Data range: 0 ~ 255; effective only in Count Mode. MI_ISP_AE_LUT_16 = 16. u32BT_Percentx10[MI_ISP_AE_LUT_16] The setting of Bright Tone permillage. Data range: 0 ~ 1000; effective both in Count Mode and Target Mode. MI_ISP_AE_LUT_16 = 16. u32BT_TargetYx10[MI_ISP_AE_LUT_16] The setting of average target brightness of Bright Tone. Data range: 0 ~ 2550; effective only in Target Mode. MI_ISP_AE_LUT_16 = 16. u32BT_MaxOffsetDown[MI_ISP_AE_LUT_16] The downward offset range of AE target. Data range: 0 ~ 2550. Setting it to 0 means disabling offset target and solely relies on Target Offset setting. MI_ISP_AE_LUT_16 = 16. u16DT_NodeNum The number of nodes related to Dark Tone parameters. u32DT_NodeBV[MI_ISP_AE_LUT_16] The setting of BV corresponding to each node of Dark Tone. MI_ISP_AE_LUT_16 = 16. u32DT_ThdY[MI_ISP_AE_LUT_16] The setting of brightness threshold for Dark Tone. Data range: 0 ~ 255; effective only in Count Mode. MI_ISP_AE_LUT_16 = 16. u32DT_Percentx10[MI_ISP_AE_LUT_16] The setting of Dark Tone permillage. Data range: 0 ~ 1000; effective both in Count Mode and Target Mode. MI_ISP_AE_LUT_16 = 16. u32DT_TargetYx10[MI_ISP_AE_LUT_16] The setting of average target brightness of Dark Tone. Data range: 0 ~ 2550; effective only in Target Mode. MI_ISP_AE_LUT_16 = 16. u32DT_MaxOffsetUp[MI_ISP_AE_LUT_16] The upward offset range of AE target. Data range: 0 ~ 2550. Setting it to 0 means disabling offset target and soly relies on Target Offset setting. MI_ISP_AE_LUT_16 = 16. -
Note



-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetStrategyEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyExType_t *data);
MI_S32 MI_ISP_AE_GetStrategyEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyExType_t *data);
Exposure Strategy Mode Structure¶
-
Description
Select the mode of exposure strategy.
-
Definition
typedef enum
{
E_SS_AE_STRATEGY_EX_COUNT,
E_SS_AE_STRATEGY_EX_TARGET,
} MI_ISP_AE_STRATEGY_EX_TYPE_e;
-
Name
Variable Name Description E_SS_AE_STRATEGY_EX_COUNT Select Count Mode, which mainly relies on BT(DT)_ThdY and BT(DT)_Percentx10. User may designate the permillage of the statistical value above (or below) a certain brightness to the total statistical value. E_SS_AE_STRATEGY_EX_TARGET Select Target Mode, which mainly relies on BT(DT)_Percentx10 and BT(DT)_Targetx10. User may designate the approximate target brightness for the average brightness of statistical value up to (or down to) a certain permillage. -
Note
N/A.
-
Related Structure Type and Function
Priority Exposure Strategy Mode Structure¶
-
Description
Select the mode of exposure strategy priority.
-
Definition
typedef enum
{
E_SS_AE_STRATEGY_EX_BRIGHTTONE,
E_SS_AE_STRATEGY_EX_DARKTONE,
E_SS_AE_STRATEGY_EX_AUTO,
} MI_ISP_AE_StrategyExPriority_e;
-
Name
Variable Name Description E_SS_AE_STRATEGY_EX_BRIGHTTONE Bright Tone priority (over-exposure prevention). E_SS_AE_STRATEGY_EX_DARKTONE Dark Tone priority (under-exposure prevention). E_SS_AE_STRATEGY_EX_AUTO HDR mode, select the best exposure strategy automatically. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_AE_StrategyExAdvType Structure¶
Type Structure¶
-
Description
Set the exposure strategy of automatic exposure in HDR mode.
-
Definition
typedef struct MI_ISP_AE_StrategyExAdvType_s
{
MI_S16 u16WeightRatio1;
MI_S16 u16WeightRatio2;
} MI_ISP_AE_StrategyExAdvType_t;
-
Name
Variable Name Description u16WeightRatio1 Adjust the weighting value to determine Dark Tone Priority or Bright Tone Priority. Parameter value: 0 ~ 1024. The smaller the value than 512, the greater priority will be given to Bright Tone; The larger the value than 512, the greater priority will be given to Darker Tone. u16WeightRatio2 Adjust the weighting value of AE Target. Parameter value: 0 ~ 1024. If the value equals 0, the weighting of AE Target will become ineffective, and the screen brightness will be based on the result of Weight 1; If the value is larger than 0, the weighting of AE Target will become greater, and the screen brightness will come closer to AE Target. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetStrategyExAdv(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyExAdvType_t *data);
MI_S32 MI_ISP_AE_GetStrategyExAdv(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyExAdvType_t *data);
MI_ISP_AE_StrategyExInfo Structure¶
Type Structure¶
-
Description
The type structure to obtain the information about the current exposure strategy.
-
Definition
typedef struct MI_ISP_AE_StrategyExInfoType_s
{
MI_U16 u16GMBlendRatio;
MI_U16 u16UpperLimitTargetx10;
MI_U16 u16LowerLimitTargetx10;
MI_U16 u16BTCntPcntx10;
MI_U16 u16DTCntPcntx10;
MI_U16 u16BTYx10;
MI_U16 u16DTYx10;
} MI_ISP_AE_StrategyExInfoType_t;
-
Name
Variable Name Description u16GMBlendRatio The blending ratio of Adaptive Gamma and common Gamma. Data range: 0 ~ 1024. The ratio is calculated from the final values of SceneTarget and TargetOffset as well as the maximum values of BT_MaxOffsetDown and DT_MaxOffsetUp. If the ratio is lower than 512, BTGamma will be blended with common Gamma; If the ratio is larger than 512, DT Gamma will be blended with common Gamma. Common Gamma will be taken as the ratio when the ratio is equal to 512. u16UpperLimitTargetx10 The upward floating limit for the current AE target. u16LowerLimitTargetx10 The downward floating limit for the current AE target. u16BTCntPcntx10 The permillage of the current number of statistical values above BT_ThdY to the total number of statistical values. u16DTCntPcntx10 The permillage of the current number of statistical values below DT_ThdY to the total number of statistical values. u16BTYx10 The average brightness of current top BT_Percentx10 per-mille bright statistics. u16DTYx10 The average brightness of current bottom DT_Percentx10 per-mille bright statistics. -
Note

-
Related Structure Type and Function
MI_S32 MI_ISP_AE_QueryStrategyExInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyExInfoType_t *data);
MI_ISP_AE_RgbirAe Structure¶
Type Structure¶
-
Description
The type structure to set relevant AE control parameters for RGB-IR mode.
-
Definition
typedef struct MI_ISP_AE_RgbirAeType_s
{
MI_ISP_AE_bool_e bEnable;
MI_U16 u16MaxYWithIR;
MI_U16 u16MinISPGainCompRatio;
} MI_ISP_AE_RgbirAeType_t;
-
Name
Variable Name Description bEnable Enable / Disable RGB-IR AE. u16MaxYWithIR Set the maximum value of brightness (Y) allowed by the R, G, B components before IR substraction. Range: 0 ~ 2550. u16MinISPGainCompRatio Set the minimum conversion ratio for using ISP gain to compensate for image brightness. The maximum ISP gain available for use = 10000/ u16MinISPGainCompRatio. (ex: 10000 = 1x, 1000 = 10x) -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetRgbirAe(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_RgbirAeType_t *data);
MI_S32 MI_ISP_AE_GetRgbirAe(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_RgbirAeType_t *data);
MI_ISP_AE_Stabilizer Structure¶
Type Structure¶
-
Description
Stabilizer Structure.
-
Definition
typedef struct MI_ISP_AE_StabilizerType_s
{
MI_ISP_AE_bool_e bEnable;
MI_U16 u16DiffThd;
MI_U16 u16Percent;
} MI_ISP_AE_StabilizerType_t;
-
Name
Variable Name Description bEnable Enable / Disable Stabilizer. u16DiffThd The threshold for judging whether the current image has changed with the reference image. If the Y difference exceeds this threshold, it is considered to have changed, and if it is less than this threshold, it is considered to have not changed. The value range is 0 ~ 20 (8 bits precision), and the recommended value is 2. It is not recommended to set it too large, which may cause discontinuity when the light gradually brightens or dims. u16Percent Image ratio threshold. When AE is converging, if the ratio of the area in the image that is judged to have changed to the entire image is less than this value, AE will remain unchanged. The value range is 0 ~ 100, and the default value is 50. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetStabilizer(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StabilizerType_t *data);
MI_S32 MI_ISP_AE_GetStabilizer(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StabilizerType_t *data);
MI_ISP_AE_PowerLine Structure¶
Type Structure¶
-
Description
PowerLine Structure.
-
Definition
typedef struct MI_ISP_AE_PowerLineType_s
{
MI_ISP_AE_bool_e bEnable;
MI_U16 u16Ratio;
} MI_ISP_AE_PowerLineType_t;
-
Name
Variable Name Description bEnable Enable / Disable PowerLine Flicker. u16Ratio Adjust the PowerLine compensation ratio. Value range: 0 ~ 1024 (128 = 1x). -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetPowerLine(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_PowerLineType_t *data);
MI_S32 MI_ISP_AE_GetPowerLine(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_PowerLineType_t *data);
MI_ISP_AE_PowerLineInfo Structure¶
Type Structure¶
-
Description
PowerLineInfo Structure.
-
Definition
typedef struct MI_ISP_AE_PowerLineInfoType_s
{
MI_S16 s2Direction;
MI_U16 u2IsEffective;
MI_U32 u4PreShutter;
} MI_ISP_AE_PowerLineInfoType_t;
-
Name
Variable Name Description s2Direction Determines the current shutter status from dark to bright or bright to dark, with a value range of -1 to 1. When Direction = 1, this function is effective; when Direction = -1 or 0, this function is not effective. u2IsEffective Indicates whether this function has entered the working range. Value range: 0 ~ 1. 0 means that the PowerLine function is not working; 1 means that the PowerLine function is working. u4PreShutter Record the previous exposure time value. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_QueryPowerLineInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_PowerLineInfoType_t *data);
MI_ISP_AE_LumaWgt Structure¶
Type Structure¶
-
Description
The type structure of Weight by luminance.
-
Definition
typedef struct MI_ISP_AE_LumaWgtType_s
{
MI_ISP_AE_bool_e bEnable;
MI_ISP_AE_IntpLutType_t WeightLuma;
MI_ISP_AE_IntpLutType_t WeightSatCnt;
MI_U16 u2SatCntThd;
} MI_ISP_AE_LumaWgtType_t;
-
Name
Variable Name Description bEnable Enable the function of Weight by luminance. WeightLuma Set corresponding weight to the brightness after AE statistical value is deducted by M x N, which are 16 x 16. The X-axis represents brightness (x10). Range: 0 ~ 2550. The Y-axis represents the weight. Range: 0 ~ 256. 1x = 256. WeightSatCnt Set corresponding weight based on the number of brightness, for which the AE statistical value, having been deducted by M x N, is greater than the number of SatCntThd. M x N = 16 x 16.The X-axis represents the number of Saturate Count. Range: 0 ~ 256. The Y-axis represents the weight. Range: 0 ~ 256. 1x = 256. u2SatCntThd Set the threshold value of Saturate count. The greater the number, the less weight the bright area represents. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetLumaWgt(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_LumaWgtType_t *data);
MI_S32 MI_ISP_AE_GetLumaWgt(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_LumaWgtType_t *data);
MI_ISP_AE_ExpoTableMode Structure¶
Type Structure ¶
-
Description
The type structure of the working mode of AE exposure table.
-
Definition
typedef struct MI_ISP_AE_ExpoTableMode_s
{
MI_ISP_AE_OpType_e enOpType;
} MI_ISP_AE_ExpoTableMode_t;
-
Name
Variable Name Description enOpType Mode selection for AE exposure schedule. Auto and Manual modes are available for selection. When Auto is selected, AE exposure schedule will be automatically generated based on HDR ratio; when Manual is selected, exposure schedule will have to be set by the user. This parameter is applicable to AEPlainTbl, AEPlainShortTbl, and AEPlainVeryShortTbl. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetExpoTableMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoTableMode_t *data);
MI_S32 MI_ISP_AE_GetExpoTableMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoTableMode_t *data);
MI_ISP_AE_VerInfo Structure¶
Type Structure¶
-
Description
AE Version Information structure.
-
Definition
typedef struct MI_ISP_AE_VerInfoType_s
{
MI_U32 u32ReleaseDate;
MI_U32 u32ReportID;
MI_U8 u8Major;
MI_U8 u8Minor;
MI_U8 u8TestVer;
} MI_ISP_AE_VerInfoType_t;
-
Name
Variable Name Description u32ReleaseDate Print AE FW update date. u32ReportID Print the numerical ID of the AE FW feedback issue, default: 0. u8Major Print the AE FW major version number. u8Minor Print the AE FW minor version number. u8TestVer Print AE FW test version number, default: 0. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_GetVersionInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_VerInfoType_t *data);
MI_ISP_AE_StabilizerEx Structure¶
Type Structure¶
-
Description
StabilizerEx structure.
-
Definition
typedef struct MI_ISP_AE_StabilizerExType_s
{
MI_U8 u8StableCnt;
MI_U8 u8StableTh;
MI_U8 u8DetectMotionSensitivity;
} MI_ISP_AE_StabilizerExType_t;
-
Name
Variable Name Description u8StableCnt Set the number of times the environment must be judged to be stable before starting AE. u8StableTh Set the conditions for judging the environment to be stable. u8DetectMotionSensitivity Set the frequency for detecting whether the environment is stable. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetStabilizerEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StabilizerExType_t *data);
MI_S32 MI_ISP_AE_GetStabilizerEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StabilizerExType_t *data);
MI_ISP_AE_ConvSpeed_Ex Structure¶
Type Structure¶
-
Description
Set the convergence condition for automatic exposure.
-
Definition
typedef struct MI_ISP_AE_ConvSpeed_Ex_s
{ MI_ISP_AE_bool_e bEnable;
MI_ISP_AE_ConvSpeedParam_Ex_t stConvSpeedEx;
} MI_ISP_AE_ConvSpeed_Ex_t;
-
Name
Variable Name Description bEnable Enable / Disable ConvSpeed_Ex. stConvSpeedEx Set the convergence speed of auto exposure. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetConvergeSpeed_Ex(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ConvSpeed_Ex_t *data);
MI_S32 MI_ISP_AE_GetConvergeSpeed_EX(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ConvSpeed_Ex_t *data);
Convergence Interval Structure¶
-
Description
Set the interval for the auto exposure to start convergence or judge convergence completion.
-
Definition
typedef struct MI_ISP_AE_ConvSpeedParam_Ex_s
{
MI_U32 u32SpeedX[MI_ISP_AE_LUT_16];
MI_U32 u32SpeedY[MI_ISP_AE_LUT_16];
} MI_ISP_AE_ConvSpeedParam_Ex_t;
-
Name
Variable Name Description u32SpeedX Set different brightness intervals. Value range: 1 ~ 2550. u32SpeedY Set different brightness intervals to give convergence speed. Value range: 1 ~ 1024. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AWB_bool Structure¶
Enum Structure¶
-
Description
Enumeration structure of boolean values.
-
Definition
typedef enum
{
E_SS_AWB_FALSE = 0,
E_SS_AWB_TRUE = !E_SS_AWB_FALSE,
E_SS_AWB_BOOL_MAX
} MI_ISP_AWB_bool_e;
-
Name
Variable Name Description E_SS_AWB_FALSE Boolean value = 0. E_SS_AWB_TRUE Boolean value = 1. E_SS_AWB_BOOL_MAX Determine the maximum value of a Boolean enumeration list. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AWB_OpType Structure¶
Enum Structure¶
-
Description
Enumeration structure of working modes.
-
Definition
typedef enum
{
E_SS_AWB_OP_TYP_AUTO = 0,
E_SS_AWB_OP_TYP_MANUAL = ! E_SS_AWB_OP_TYP_AUTO,
E_SS_AWB_OP_TYP_MODE_MAX
} MI_ISP_AWB_OpType_e;
-
Name
Variable Name Description E_SS_AWB_OP_TYP_AUTO Automatic working mode. E_SS_AWB_OP_TYP_MANUAL Manual working mode. E_SS_AWB_OP_TYP_MODE_MAX Determine the maximum value of the working mode enumeration list. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_AWB_AlgoType Structure¶
Enum Structure¶
-
Description
Enumeration structure of the automatic white balance algorithm.
-
Definition
typedef enum
{
E_SS_AWB_ALG_GRAYWORLD = 0,
E_SS_AWB_ALG_NORMAL = 1,
E_SS_AWB_ALG_BALANCE = 2,
E_SS_AWB_ALG_FOCUS = 3,
E_SS_AWB_ALG_MAX
} MI_ISP_AWB_AlgoType_e;
-
Name
Variable Name Description E_SS_AWB_ALG_ GRAYWORLD Calculate WB gain using all stats. E_SS_AWB_ALG_NORMAL Calculate WB gain based on the statistical values in the 2 to 3 color temperature boxes with the highest number of points. E_SS_AWB_ALG_BALANCE Calculate WB gain using the statistics of all colors falling into the valid color temperature box. E_SS_AWB_ALG_FOCUS WB gain calculation will be biased towards a single color temperature. E_SS_AWB_ALG_MAX Determine the maximum value of the automatic white balance algorithm enumeration list. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AWB_AdvType structure¶
Enum Structure¶
-
Description
Enumeration structure of the automatic white balance advanced algorithm.
-
Definition
typedef enum
{
E_SS_AWB_ADV_DEFAULT = 0,
E_SS_AWB_ADV_ADVANCE = 1,
E_SS_AWB_ADV_MAX
} MI_ISP_AWB_AdvType_e;
-
Name
Variable Name Description E_SS_AWB_ADV_DEFAULT The default automatic white balance algorithm. E_SS_AWB_ADV_ADVANCE Enhanced automatic white balance algorithm, which can enable the setting function of MI_ISP_AWB_SetAttrEx. E_SS_AWB_ADV_MAX Determine the maximum value of the automatic white balance advanced algorithm enumeration list. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AWB_SmStateType structure¶
Enum Structure¶
-
Description
State Machine enumeration structure.
-
Definition
typedef enum
{
E_SS_AWB_STATE_NORMAL = 0,
E_SS_AWB_STATE_PAUSE = 1,
E_SS_AWB_STATE_MAX
} MI_ISP_AWB_SmStateType_e;
-
Name
Variable Name Description E_SS_AWB_STATE_NORMAL Normal mode. E_SS_AWB_STATE_PAUSE Pause mode. E_SS_AWB_STATE_MAX Determine the maximum value of the state machine enumeration list. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AWB_FdAwb_Mode Structure¶
Enum Structure¶
-
Description
Enumeration structure of Face detection AWB algorithm.
-
Definition
typedef enum
{
E_SS_FDAWB_REFER_TO_SKIN,
E_SS_FDAWB_ASSIGN_SKIN_COLOR
} MI_ISP_AWB_FdAwb_Mode_e;
-
Name
Variable Name Description E_SS_FDAWB_REFER_TO_SKIN This mode will lock the most likely white point range to perform white balance based on the analysis results of face information. E_SS_FDAWB_ASSIGN_SKIN_COLOR This mode will force the face's statistical value point (before white balance) to be moved to the skin color point (after white balance) set by the user. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AWB_Fwst_AlgoType Structure¶
Enum Structure¶
-
Description
Enumeration structure of the FewStatisStrategy algorithm.
-
Definition
typedef enum
{
E_SS_AWB_FWST_KEEP = 0,
E_SS_AWB_FWST_MIX_PREFERGAIN = 1,
E_SS_AWB_FWST_MIX_GRAYWORLD = 2,
} MI_ISP_AWB_Fwst_AlgoType_e;
-
Name
Variable Name Description E_SS_AWB_FWST_KEEP Keep the WB gain obtained when there were enough stats last time. E_SS_AWB_FWST_MIX_PREFERGAIN WB Gain calculated based on the color temperature set by PreferCT. E_SS_AWB_FWST_MIX_GRAYWORLD WB gain calculated using GrayWorld algorithm. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AWB_QueryInfo Structure¶
Type Structure¶
-
Description
The type structure to set the current general information about auto white balance.
-
Definition
typedef struct MI_ISP_AWB_QueryInfoType_s
{
MI_ISP_AWB_bool_e bIsStable;
MI_U16 u16Rgain;
MI_U16 u16Grgain;
MI_U16 u16Gbgain;
MI_U16 u16Bgain;
MI_U16 u16ColorTemp;
MI_U8 u8WPInd;
MI_ISP_AWB_bool_e bMultiLSDetected;
MI_U8 u8FirstLSInd;
MI_U8 u8SecondLSInd;
} MI_ISP_AWB_QueryInfoType_t;
-
Name
Variable Name Description bIsStable Get information about whether the current AWB is in the state of convergence (0: AWB has not converged; 1: converged). u16Rgain Get the current R channel gain for auto white balance. u16Grgain Get the current Gr channel gain for auto white balance. u16Gbgain Get the current Gb channel gain for auto white balance. u16Bgain Get the current B channel gain for auto white balance. u16ColorTemp Get the current color temperature value. u8WPInd Get the current index of color temperature range of reference white pixel when WpWeight function is enabled. bMultiLSDetected Check if mixed light is detected when mixed-light color shift calibration function is enabled. To disable, set E_SS_AWB_FALSE = 0. To enable, set E_SS_AWB_TRUE = 1. u8FirstLSInd Get the largest light source index×2 in mixed-light scenarios when AWB mixed-light color shift calibration is enabled. u8SecondLSInd Get the second largest light source index×2 in mixed-light scenarios when AWB mixed-light color shift calibration is enabled. -
Note
- The index values shown by u8FirstLSInd and u8SecondLSInd represent the actual color temperature range index being multiplied by 2. That is, if u8FirstLSInd is 8, the actual color temperature range index is 8/2 = 4 (5000K), and if u8FirstLSInd is 9, the actual color temperature range index is 9/2 = 4.5, where the decimal point .5 means the light source color temperature range falls between indexes 4 (5000K) and 5 (4000K).
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_QueryInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_QueryInfoType_t *data);
MI_ISP_AWB_CtStatistics Structure¶
Type Structure¶
-
Description
The type structure to set the statistical value of AWB calibration.
-
Definition
typedef struct MI_ISP_AWB_CtStatisticsType_s
{
MI_U16 u16Width;
MI_U16 u16Height;
MI_U16 u16StatisX[MI_ISP_AWB_STAT_BLOCK / 2];
MI_U16 u16StatisY[MI_ISP_AWB_STAT_BLOCK / 2];
} MI_ISP_AWB_CtStatisticsType_t;
-
Name
Variable Name Description u16Width The width of effective area. u16Height The height of effective area. u16StatisX[MI_ISP_AWB_STAT_BLOCK / 2] Statistical X of the color temperature range. MI_ISP_AWB_STAT_BLOCK / 2 = 128 * 90 / 2 = 5760. u16StatisY[MI_ISP_AWB_STAT_BLOCK / 2] Statistical Y of the color temperature range. MI_ISP_AWB_STAT_BLOCK / 2 = 128 * 90 / 2 = 5760. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_GetCtStats(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_CtStatisticsType_t *data);
Individual AWB Hardware Statistics Structure¶
-
Description
Individual AWB Hardware Statistics Structure.
-
Definition
typedef enum
{
MI_U8 uAvgR;
MI_U8 uAvgG;
MI_U8 uAvgB;
} MI_ISP_AWB_AVGS;
-
Name
Variable Name Description uAvgR The R average of individual statistical values. The value range is 0~255. uAvgG The G average value of individual statistical values. The value range is 0~255. uAvgB The B average of individual statistical values. The value range is 0~255. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_AWB_Attr Structure¶
Type Structure¶
-
Description
The type structure to set AWB attribute.
-
Definition
typedef struct MI_ISP_AWB_AttrType_s
{
MI_ISP_AWB_SmStateType_e eState;
MI_ISP_AWB_ModeType_e eOpType;
MI_ISP_AWB_MwbAttrParam_t stManualParaAPI;
MI_ISP_AWB_AttrParam_t stAutoParaAPI;
} MI_ISP_AWB_AttrType_t;
-
Name
Variable Name Description eState Set Boolean value for the state of AWB attribute.
Normal: E_SS_AWB_STATE_NORMAL = 0.
Pause: E_SS_AWB_STATE_PAUSE = 1.enOpType Set working mode of AWB attribute.
Auto mode: E_SS_AWB_MODE_AUTO = 0.
Manual mode: E_SS_AWB_MODE_MANUAL = 1.
Manual mode by color temperature: E_SS_AWB_MODE_CTMANUAL = 2.stAutoParaAPI The attribute structure of automatic mode to set AWB attribute. stManualParaAPI The attribute structure of manual mode to set AWB attribute. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_SetAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_AttrType_t *data);
MI_S32 MI_ISP_AWB_GetAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_AttrType_t *data);
Enum Structure of AWB Working Mode¶
-
Description
The enum structure of AWB working mode.
-
Definition
typedef enum
{
E_SS_AWB_MODE_AUTO,
E_SS_AWB_MODE_MANUAL,
E_SS_AWB_MODE_CTMANUAL,
E_SS_AWB_MODE_MAX
} MI_ISP_AWB_ModeType_e;
-
Name
Variable Name Description E_SS_AWB_MODE_AUTO Auto mode. E_SS_AWB_MODE_MANUAL Manual mode. E_SS_AWB_MODE_CTMANUAL Manual mode by color temperature. By selecting this mode, WB gain will be applied according to the CTMWB setting of color temperature. -
Note
N/A.
-
Related Structure Type and Function
Manual Mode Parameter Structure¶
-
Description
The parameter structure to set manual mode.
-
Definition
typedef struct MI_ISP_AWB_MwbAttrParam_s
{
MI_U16 u16Rgain;
MI_U16 u16Grgain;
MI_U16 u16Gbgain;
MI_U16 u16Bgain;
} MI_ISP_AWB_MwbAttrParam_t;
-
Name
Variable Name Description u16Rgain White balance R channel gain. Parameter range: 0 ~ 8191. u16Grgain White balance Gr channel gain. Parameter range: 0 ~ 8191. u16Gbgain White balance Gb channel gain. Parameter range: 0 ~ 8191. u16Bgain White balance B channel gain. Parameter range: 0 ~ 8191. -
Note
N/A.
-
Related Structure Type and Function
Automatic Mode Parameter Structure¶
-
Description
The parameter structure to set Auto mode.
-
Definition
typedef struct MI_ISP_AWB_AttrParam_s
{
MI_U8 u8Speed;
MI_U8 u8ConvInThd;
MI_U8 u8ConvOutThd;
MI_ISP_AWB_AlgoType_e eAlgType;
MI_ISP_AWB_AdvType_e eAdvType;
MI_U8 u8RGStrength;
MI_U8 u8BGStrength;
MI_ISP_AWB_CtLimitParam_t stCTLimit;
MI_ISP_AWB_CtWeightParam_t stLvWeight[MI_ISP_AWB_LV_CT_TBL_NUM];
MI_ISP_AWB_CtRatioParam_t stPreferRRatio[MI_ISP_AWB_LV_CT_TBL_NUM];
MI_ISP_AWB_CtRatioParam_t stPreferBRatio[MI_ISP_AWB_LV_CT_TBL_NUM];
MI_U16 u16WpWeight[MI_ISP_AWB_CT_TBL_NUM];
MS_U32 u32WeightWin[MI_ISP_AWB_WEIGHT_WIN_NUM];
} MI_ISP_AWB_AttrParam_t;
-
Name
Variable Name Description u8Speed The convergence speed of auto white balance algorithm. The greater the value, the higher the convergence speed. Parameter range: 0 ~ 100. u8ConvInThd Set the threshold value for AWB to converge. The smaller the value, the closer AWB converges to the target WB gain. Parameter range: 0 ~ 255. Setting the value too small is not recommended as it might cause AWB to be constantly unstable. Recommended setting is 32. u8ConvOutThd Set the threshold value for AWB to leave convergence state and re-calculate white balance. The greater the value, the more difficult for AWB to re-calculate after the convergence becomes stable. Parameter range: 0 ~ 255. Value too large is not suggested. Recommended setting is 64. eAlgType Select AWB algorithm type. Four types are available:
1. GrayWorld;
2. Normal;
3. Balance;
4. Focus.
Please refer to MI_ISP_AWB_AlgoType_e for more detail.eAdvType Select the type of advanced AWB algorithm. When set to SS_AWB_ADV_ADVANCE, MI_ISP_AWB_SetAttrEx API setting will be enabled. u8RGStrength The strength of R Gain in auto white balance.
= 0x80: R Gain remains the same.
> 0x80: R Gain becomes larger and reddish.
< 0x80: R Gain becomes smaller.u8BGStrength The strength of B Gain in auto white balance.
= 0x80: B Gain remains the same.
> 0x80: B Gain becomes larger and reddish.
< 0x80: B Gain becomes smaller.stCTLimit Ambient color temperature of white balance algorithm to set the mode of calculation for gain limit and the manual gain value when temperature is out of the color temperature curve range. Adjustment to this parameter is not suggested, as this parameter imposes limitation upon the range of coordinates for the entire color temperature curve. Statistical data out of this range will not be counted in the white balance calculation algorithm. stLvWeight[MI_ISP_AWB_LV_CT_TBL_NUM] Assign weight to each color temperature under the specified ambient brightness. The higher the weight, the closer the target R and B gains lean toward their counterparts of the color temperature. There are 18 sets of setting. Parameter range: 1 ~ 255. stPreferRRatio[MI_ISP_AWB_LV_CT_TBL_NUM] Assign R ratio to each color temperature under the specified ambient brightness to fine-tune the target R gain. There are 18 sets of setting. Parameter range: 1 ~ 255. stPreferBRatio[MI_ISP_AWB_LV_CT_TBL_NUM] Assign B ratio to each color temperature under the specified ambient brightness to fine-tune the target B gain. There are 18 sets of setting. Parameter range: 1 ~ 255. u16WpWeight[MI_ISP_AWB_CT_TBL_NUM] The weight of reference white pixel. The higher the weight of the color temperature, the easier a pixel will be selected as the reference white pixel. There are 10 sets of setting. Parameter range: 1 ~ 400, and the default value is 100. u32WeightWin[MI_ISP_AWB_WEIGHT_WIN_NUM] Divide the screen into 9x9 segments. Each segment can be assigned with different weights, which allow AWB calculation to balance a segment. Parameter range: 0 ~ 16. -
Note
- Suggested adjustment to u8RGStrength and u8BGStrength: You can adjust these two parameters according to the customer’s need. For example, if greenish tone is preferred in certain scenes, you can fine-tune u8RGStrength and u8BGStrength at the same time and lower both values to less than 128.
-
Related Structure Type and Function
Parameter Structure¶
-
Description
The parameter structure that defines the range limit of white balance gain.
-
Definition
typedef struct MI_ISP_AWB_CtLimitParam_s
{
MI_U16 u16MaxRgain;
MI_U16 u16MinRgain;
MI_U16 u16MaxBgain;
MI_U16 u16MinBgain;
} MI_ISP_AWB_CtLimitParam_t;
-
Name
Variable Name Description u16MaxRgain Set the maximum R Gain in high color temperature. Parameter range: 256 ~ 4095. u16MinRgain Set the minimum R Gain in low color temperature. Parameter range: 256 ~ 4095. u16MaxBgain Set the maximum B Gain in high color temperature. Parameter range: 256 ~ 4095. u16MinBgain Set the minimum B Gain in low color temperature. Parameter range: 256 ~ 4095. -
Note
N/A.
-
Related Structure Type and Function
Parameter Structure¶
-
Description
The parameter structure to set the weight of each color temperature when target R and B gains are calculated.
-
Definition
typedef struct MI_ISP_AWB_CtWeightParam_s
{
MI_U16 u16Weight[MI_ISP_AWB_CT_TBL_NUM];
} MI_ISP_AWB_CtWeightParam_t;
-
Name
Variable Name Description u16Weight[MI_ISP_AWB_CT_TBL_NUM] The weight of each color temperature when target R and B gains are calculated. The higher the weight, the closer the target R and B gains lean toward their counterparts of the color temperature. MI_ISP_AWB_CT_TBL_NUM = 10. Parameter range: 1 ~ 255, and the default value is 100. -
Note
N/A.
-
Related Structure Type and Function
Parameter Structure¶
-
Description
The parameter structure to set the ratio to multiply the target R and B gains for fine-tuning.
-
Definition
typedef struct MI_ISP_AWB_CtRatioParam_s
{
MI_U16 u16Ratio[MI_ISP_AWB_CT_TBL_NUM];
} MI_ISP_AWB_CtRatioParam_t;
-
Name
Variable Name Description u16Ratio [MI_ISP_AWB_CT_TBL_NUM] Ratio used to multiply the target R and B gains of each ambient color temperature for fine-tuning. MI_ISP_AWB_CT_TBL_NUM = 10. Parameter range: 1 ~ 255, and the default value is 100. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AWB_AttrEx Structure¶
Type Structure¶
-
Description
The type structure to set AWB extended attribute.
-
Definition
typedef struct MI_ISP_AWB_AttrExType_s
{
MI_ISP_AWB_bool_e bExtraLightEn;
MI_ISP_AWB_AttrExtraLightsourceParam_t stLightInfo[MI_ISP_AWB_EX_LIGHT_CNT];
} MI_ISP_AWB_AttrExType_t;
-
Name
Variable Name Description bExtraLightEn Set Boolean value for the function of referring to the extra range of color temperature as defined by user during AWB calculation.
To disable, set E_SS_AWB_FALSE = 0.
To enable, set E_SS_AWB_TRUE = 1.stLightInfo[MI_ISP_AWB_EX_LIGHT_CNT] Information about the extra light source as set by user. MI_ISP_AWB_EX_LIGHT_CNT = 4. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_SetAttrEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_AttrExType_t *data);
MI_S32 MI_ISP_AWB_GetAttrEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_AttrExType_t *data);
AWB Extra LightSource Parameter Structure¶
-
Description
The parameter structure to set AWB extra light source.
-
Definition
typedef struct MI_ISP_AWB_AttrExtraLightsourceParam_s
{
MI_U16 u16WhiteRgain;
MI_U16 u16WhiteBgain;
MI_U8 u8AreaSize;
MI_ISP_AWB_bool_e bExclude;
} MI_ISP_AWB_AttrExtraLightsourceParam_t;
-
Name
Variable Name Description u16WhiteRgain The R gain (G × 1024 / R) of the extra light source set by user. This setting will mirror to an independent point of color temperature coordinate without referring to the color temperature. Parameter range: 256 ~ 4095. u16WhiteBgain The B gain (G × 1024 / B) of the extra light source set by user. This setting will mirror to an independent point of color temperature coordinate without referring to the color temperature. Parameter range: 256 ~ 4095. u8AreaSize The range of color temperature coordinate of user-defined extra light source. The greater the value, the broader the range. Parameter range: 1 ~ 32. bExclude Set the Boolean value for the function of excluding / including the extra light source set by user. During white balance algorithm calculation, this function determines whether white pixels will be included in the range of extra light source set by user. To include, set E_SS_AWB_FALSE = 0. To exclude, set E_SS_AWB_TRUE = 1. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AWB_MultiLs Structure¶
Type Structure¶
-
Description
The type structure to set AWB color shift calibration in mixed-light scenarios.
-
Definition
typedef struct MI_ISP_AWB_MultiLsType_s
{
MI_ISP_AWB_bool_e bEnable;
MI_U8 u8Sensitive;
MI_U8 u8CaliStrength;
MI_U16 u16CcmForLow[MI_ISP_AWB_MULTILS_CNT];
MI_U16 u16CcmForHigh[MI_ISP_AWB_MULTILS_CNT];
} MI_ISP_AWB_MultiLsType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of AWB mixed-light color shift calibration.
To disable, set E_SS_AWB_FALSE to 0.
To enable, set E_SS_AWB_TRUE to 1.u8Sensitive The sensitivity of mixed-light judgement. The greater the value, the easier a scene will be judged as a mixed-light scenario. Parameter range: 1 ~ 10, and the default value is 5. u8CaliStrength The strength of color shift calibration for the maximum mixed-light difference in color temperature. The maximum mixed-light difference implies that two light sources happen to fall on StartIdx and EndIdx respectively. The strength actually applied will be adjusted based on the ratio of the color temperature difference between the two light sources to the max. color temperature difference. Parameter range: 0 ~ 100, and the default value is 100. u16CcmForLow[MI_ISP_AWB_MULTILS_CNT] When the scene is judged as mixed-light scenario, and the light source of high color temperature is balanced, this parameter can be used to compensate the CCM of color shift for the light source of low color temperature. Note: u16CcmForLow[3]~[5] (G row) are of no use. Please modify u16CcmForLow[0]~[2] (R row) and u16CcmForLow[6]~[8] (B row) instead. Parameter range: 0 ~ 8191. MI_ISP_AWB_MULTILS_CNT = 9. u16CcmForHigh[MI_ISP_AWB_MULTILS_CNT] When the scene is judged as mixed-light scenario, and the light source of low color temperature is balanced, this parameter can be used to compensate the CCM of color shift for the light source of high color temperature. Note: u16CcmForLow[3]~[5] (G row) are of no use. Please modify u16CcmForLow[0]~[2] (R row) and u16CcmForLow[6]~[8] (B row) instead. Parameter range: 0 ~ 8191. MI_ISP_AWB_MULTILS_CNT = 9. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_SetMultiLsAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_MultiLsType_t *data);
MI_S32 MI_ISP_AWB_GetMultiLsAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_MultiLsType_t *data);
MI_ISP_AWB_CtCali Structure¶
Type Structure¶
-
Description
The type structure to set AWB calibration.
-
Definition
typedef struct MI_ISP_AWB_CtCaliType_s
{
MI_U16 u16StartIdx;
MI_U16 u16EndIdx;
MI_U16 u16CtParams[MI_ISP_AWB_CT_CALI_CNT];
} MI_ISP_AWB_CtCaliType_t;
-
Name
Variable Name Description u16StartIdx The starting index of bright area. u16EndIdx The ending index of bright area. u16CtParams[MI_ISP_AWB_CT_CALI_CNT] Color temperature calibration parameter. MI_ISP_AWB_CT_CALI_CNT = 40. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_SetCtCaliAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_CtCaliType_t *data);
MI_S32 MI_ISP_AWB_GetCtCaliAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_CtCaliType_t *data);
MI_ISP_AWB_CurCtCali Structure¶
Type Structure¶
-
Description
The type structure of AWB color temperature curve range.
-
Definition
typedef struct MI_ISP_AWB_CurCtCaliType_s
{
MI_U16 u16CtParams[MI_ISP_AWB_CT_CALI_CNT];
} MI_ISP_AWB_CurCtCaliType_t;
-
Name
Variable Name Description u16CtParams[MI_ISP_AWB_CT_CALI_CNT] Color temperature curve range. MI_ISP_AWB_CT_CALI_CNT = 40. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_GetCurCtCaliAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_CurCtCaliType_t *data);
MI_ISP_AWB_Ctmwb Structure¶
Type Structure¶
-
Description
The type structure of manual white balance color temperature.
-
Definition
typedef struct MI_ISP_AWB_CtmwbParam_s
{
MI_U32 u32CT;
} MI_ISP_AWB_CtmwbParam_t;
-
Name
Variable Name Description u32CT Color temperature setting. Parameter range: 1000 ~ 20000. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_SetCtMwbAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_CtmwbParam_t *data);
MI_S32 MI_ISP_AWB_GetCtMwbAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_CtmwbParam_t *data);
MI_ISP_AWB_Stabilizer Structure¶
Type Structure¶
-
Description
The type structure of AWB stabilizer.
-
Definition
typedef struct MI_ISP_AWB_StabilizerType_s
{
MI_ISP_AWB_bool_e bEnable;
MI_U16 u16GlbGainThd;
MI_U16 u16CountThd;
MI_U16 u16ForceTriGainThd;
} MI_ISP_AWB_StabilizerType_t;
-
Name
Variable Name Description bEnable Enable AWB stabilizer. u16GlbGainThd The threshold value of global change in WB gain. When AWB is converged, it will be re-triggered only when two conditions are met: the original requirement, which is set out in the description of ConvOutThd parameter; and that the global change in WB gain exceeds this threshold value. Parameter Range: 0 ~ 512. We recommend that you set this threshold to the same value of, or slightly smaller than, ConvOutThd. Default value is 64. u16CountThd The threshold value of continuous count that determines AWB to be re-triggered. If the value is 2, AWB will be re-triggered only if the two conditions are met three times in a row, otherwise AWB will stay stable. Parameter range: 0 ~ 100. Setting the value too large is not recommended because higher value would delay the response time for AWB to be re-triggered. Default value is 2. u16ForceTriGainThd The threshold value of gain to trigger AWB mandatorily. This parameter aims to prevent the response time of AWB from being delayed by CountThd in the situation where environmental color temperature or light source drastically changes. If the change of gain meets the re-triggering condition, and the amount of change is greater than this threshold, CountThd will be ignored and AWB will be directly triggered. Parameter range: 0 ~ 8191. Default value is 150. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_SetStabilizer(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_StabilizerType_t *data);
MI_S32 MI_ISP_AWB_GetStabilizer(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_StabilizerType_t *data);
MI_ISP_AWB_SpecialCase Structure¶
Type Structure¶
-
Description
The type structure of AWB SpecialCase.
-
Definition
typedef struct MI_ISP_AWB_SpecialCaseType_s
{
MI_U32 u32CaseNum;
MI_ISP_AWB_SpecialCaseParam_t stCase[MI_ISP_AWB_SPECIAL_CASE_NUM];
} MI_ISP_AWB_SpecialCaseType_t;
-
Name
Variable Name Description u32CaseNum The number of case to be used. Parameter range: 0 ~ 4. Setting this parameter to 0 means that this function is disabled. stCase[MI_ISP_AWB_SPECIAL_CASE_NUM] SpecialCase parameters, which are used to define each case. MI_ISP_AWB_SPECIAL_CASE_NUM = 4. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_SetSpecialCase(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_SpecialCaseType_t *data);
MI_S32 MI_ISP_AWB_GetSpecialCase(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_SpecialCaseType_t *data);
Parameter Structure¶
-
Description
The parameter structure of individual case, which is used to set the SpecialCase parameters for each case.
-
Definition
typedef struct MI_ISP_AWB_SpecialCaseParam_s
{
MI_U8 u8Group1_ZoneNum;
MI_U16 u16Group1_CenterX[MI_ISP_AWB_SPECIAL_ZONE_NUM];
MI_U16 u16Group1_CenterY[MI_ISP_AWB_SPECIAL_ZONE_NUM];
MI_U8 u8Group1_Radius[MI_ISP_AWB_SPECIAL_ZONE_NUM];
MI_U8 u8Group1_CntLutNodeNum;
MI_S32 s32Group1_CntLutX[MI_ISP_AWB_SPECIAL_NODE_NUM];
MI_S32 s32Group1_CntLutY[MI_ISP_AWB_SPECIAL_NODE_NUM];
MI_U8 u8Group2_ZoneNum;
MI_U16 u16Group2_CenterX[MI_ISP_AWB_SPECIAL_ZONE_NUM];
MI_U16 u16Group2_CenterY[MI_ISP_AWB_SPECIAL_ZONE_NUM];
MI_U8 u8Group2_Radius[MI_ISP_AWB_SPECIAL_ZONE_NUM];
MI_U8 u8Group2_CntLutNodeNum;
MI_S32 s32Group2_CntLutX[MI_ISP_AWB_SPECIAL_NODE_NUM];
MI_S32 s32Group2_CntLutY[MI_ISP_AWB_SPECIAL_NODE_NUM];
MI_U8 u8BvLutNodeNum;
MI_S32 s32BvLutX[MI_ISP_AWB_SPECIAL_NODE_NUM];
MI_S32 s32BvLutY[MI_ISP_AWB_SPECIAL_NODE_NUM];
MI_ISP_AWB_SpecialMode_e eMode;
MI_U16 u16Weight[MI_ISP_AWB_CT_TBL_NUM];
MI_U32 u32PreferCT;
MI_U16 u16PreferRgain;
MI_U16 u16PreferBgain;
} MI_ISP_AWB_SpecialCaseParam_t;
-
Name
Variable Name Description u8Group1_ZoneNum The number of zones to be defined. The algorithm will analyze the percentage of AWB statistics that fall into all the zones to the total number of statistics. Parameter range: 0 ~ 8. By setting it to 0, the condition will be fulfilled unconditionally. u16Group1_CenterX[MI_ISP_AWB_SPECIAL_ZONE_NUM] To determine the X coordinate of the center of each zone on R/G-B/G planes. Parameter range: 0 ~ 1023. MI_ISP_AWB_SPECIAL_ZONE_NUM = 8. u16Group1_CenterY[MI_ISP_AWB_SPECIAL_ZONE_NUM] To determine the Y coordinate of the center of each zone on R/G-B/G planes. Parameter range: 0 ~ 1023. MI_ISP_AWB_SPECIAL_ZONE_NUM = 8. u8Group1_Radius[MI_ISP_AWB_SPECIAL_ZONE_NUM] To determine the radius of each zone. Parameter range: 0 ~ 20. MI_ISP_AWB_SPECIAL_ZONE_NUM = 8. u8Group1_CntLutNodeNum To determine the number of nodes to be used by CntLut. Parameter range: 0 ~ 4. s32Group1_CntLutX[MI_ISP_AWB_SPECIAL_NODE_NUM] To determine the value of x for CntLut node. This value represents the percentage of AWB statistics that fall into the zones to the total number of statistics. The algorithm will analyze the percentage of statistics in Group1, query this table, and get Group1.CntRatio, which represents the fulfillment rate of Group1 condition. Parameter range: 0 ~ 100. MI_ISP_AWB_SPECIAL_NODE_NUM = 4. s32Group1_CntLutY[MI_ISP_AWB_SPECIAL_NODE_NUM] To determine the value of y for CntLut node. This value represents the ratio. The algorithm will analyze the percentage of statistics in Group1, query this table, and get Group1.CntRatio, which represents the fulfillment rate of Group1 condition. Parameter range: 0 ~ 100. MI_ISP_AWB_SPECIAL_NODE_NUM = 4. u8Group2_ZoneNum The number of zones to be defined. The algorithm will analyze the percentage of AWB statistics that fall into all the zones to the total number of statistics. Parameter range: 0 ~ 8. By setting it to 0, the condition will be fulfilled unconditionally. u16Group2_CenterX[MI_ISP_AWB_SPECIAL_ZONE_NUM] To determine the X coordinate of the center of each zone on R/G-B/G planes. Parameter range: 0 ~ 1023. MI_ISP_AWB_SPECIAL_ZONE_NUM = 8. u16Group2_CenterY[MI_ISP_AWB_SPECIAL_ZONE_NUM] To determine the Y coordinate of the center of each zone on R/G-B/G planes. Parameter range: 0 ~ 1023. MI_ISP_AWB_SPECIAL_ZONE_NUM = 8. u8Group2_Radius[MI_ISP_AWB_SPECIAL_ZONE_NUM] To determine the radius of each zone. Parameter range: 0 ~ 20. MI_ISP_AWB_SPECIAL_ZONE_NUM = 8. u8Group2_CntLutNodeNum To determine the number of nodes to be used by CntLut. Parameter range: 0 ~ 4. s32Group2_CntLutX[MI_ISP_AWB_SPECIAL_NODE_NUM] To determine the value of x for CntLut node. This value represents the percentage of AWB statistics that fall into the zones to the total number of statistics. The algorithm will analyze the percentage of statistics in Group2, query this table, and get Group2.CntRatio, which represents the fulfillment rate of Group2 condition. Parameter range: 0 ~ 100. MI_ISP_AWB_SPECIAL_NODE_NUM = 4. s32Group2_CntLutY[MI_ISP_AWB_SPECIAL_NODE_NUM] To determine the value of y for CntLut node. This value represents the ratio. The algorithm will analyze the percentage of statistics in Group2, query this table, and get Group2.CntRatio, which represents the fulfillment rate of Group2 condition. Parameter range: 0 ~ 100. MI_ISP_AWB_SPECIAL_NODE_NUM = 4. u8BvLutNodeNum The number of BvLut node. Parameter range: 0 ~ 4. By setting it to 0, the condition will be fulfilled unconditionally. s32BvLutX[MI_ISP_AWB_SPECIAL_NODE_NUM] To determine the X coordinate of BvLut node, which represents BV. Parameter range: -81920 ~ 245760. MI_ISP_AWB_SPECIAL_NODE_NUM = 4. s32BvLutY[MI_ISP_AWB_SPECIAL_NODE_NUM] To determine the Y coordinate of BvLut node, which represents the fulfillment rate. Parameter range: 0 ~ 1024. MI_ISP_AWB_SPECIAL_NODE_NUM = 4. eMode Select the mode of behavior when the condition of a case is met. Parameter range: 0 ~ 2.
0: Weight Ctrl mode;
1: PreferCT mode;
2: PreferGain mode.u16Weight[MI_ISP_AWB_CT_TBL_NUM] Effective when Mode is set to 0. The color temperature range will apply this setting of weight based on CaseRatio. Parameter range: 0 ~ 1024. MI_ISP_AWB_CT_TBL_NUM = 10. u32PreferCT Effective when Mode is set to 1. The original Target WB gain will be blended with the WB gain corresponding to PreferCT based on CaseRatio, becoming the new Target WB gain. Parameter range: 0 ~ 20000. u16PreferRgain Effective when Mode is set to 2. The original Target WB gain will be blended with PreferRgain based on CaseRatio, becoming the new Target WB gain. Parameter range: 0 ~ 8191. u16PreferBgain Effective when Mode is set to 2. The original Target WB gain will be blended with PreferBgain based on CaseRatio, becoming the new Target WB gain. Parameter range: 0 ~ 8191. -
Note
N/A.
-
Related Structure Type and Function
Enum Structure¶
-
Description
The enum structure of SpecialCase behavior modes.
-
Definition
typedef enum
{
E_SS_AWB_SPECIAL_WEIGHTCTRL = 0,
E_SS_AWB_SPECIAL_PREFER_CT = 1,
E_SS_AWB_SPECIAL_PREFER_GAIN = 2
} MI_ISP_AWB_SpecialMode_e;
-
Name
Variable Name Description E_SS_AWB_SPECIAL_WEIGHTCTRL Weight control mode, which can be used to adjust the weight of each color temperature range when a case is fulfilled. E_SS_AWB_SPECIAL_PREFER_CT PreferCT mode, which can be used to adjust the WB gain of a specified color temperature. This WB gain will be blended with the target WB gain when a case is fulfilled. E_SS_AWB_SPECIAL_PREFER_GAIN PreferGain mode, which can be used to adjust a specified WB gain to be blended with the target WB gain when a case is fulfilled. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AWB_SpecialCaseInfo Structure¶
SpecialCase Info Type Structure¶
-
Description
The type structure of AWB SpecialCase Info.
-
Definition
typedef struct MI_ISP_AWB_SpecialCaseInfoType_s
{
MI_U32 u32Group1Cnt[MI_ISP_AWB_SPECIAL_CASE_NUM];
MI_U32 u32Group1CntRatio[MI_ISP_AWB_SPECIAL_CASE_NUM];
MI_U32 u32Group2Cnt[MI_ISP_AWB_SPECIAL_CASE_NUM];
MI_U32 u32Group2CntRatio[MI_ISP_AWB_SPECIAL_CASE_NUM];
MI_U32 u32BvRatio[MI_ISP_AWB_SPECIAL_CASE_NUM];
MI_U32 u32CaseRatio[MI_ISP_AWB_SPECIAL_CASE_NUM];
MI_U16 u16CaseWeight[MI_ISP_AWB_SPECIAL_CASE_NUM][MI_ISP_AWB_CT_TBL_NUM];
MI_U16 u16SpecialWeight[MI_ISP_AWB_CT_TBL_NUM];
MI_U16 u16SpecialRgain[MI_ISP_AWB_SPECIAL_CASE_NUM];
MI_U16 u16SpecialBgain[MI_ISP_AWB_SPECIAL_CASE_NUM];
} MI_ISP_AWB_SpecialCaseInfoType_t;
-
Name
Variable Name Description u32Group1Cnt[MI_ISP_AWB_SPECIAL_CASE_NUM] Show the total number of drop points of Group1 statistics in each case. MI_ISP_AWB_SPECIAL_CASE_NUM = 4. u32Group1CntRatio[MI_ISP_AWB_SPECIAL_CASE_NUM] Show the ratio of the total number of drop points of Group1 statistics in each case after querying Group1.CntLut. Parameter range: 0 ~ 100. MI_ISP_AWB_SPECIAL_CASE_NUM = 4. u32Group2Cnt[MI_ISP_AWB_SPECIAL_CASE_NUM] Show the total number of drop points of Group2 statistics in each case. MI_ISP_AWB_SPECIAL_CASE_NUM = 4. u32Group2CntRatio[MI_ISP_AWB_SPECIAL_CASE_NUM] Show the ratio of the total number of drop points of Group2 statistics in each case after querying Group2.CntLut. Parameter range: 0 ~ 100. MI_ISP_AWB_SPECIAL_CASE_NUM = 4. u32BvRatio[MI_ISP_AWB_SPECIAL_CASE_NUM] Show the ratio of each case after querying BvLut according to BV. Parameter range: 0 ~ 1024. MI_ISP_AWB_SPECIAL_CASE_NUM = 4. u32CaseRatio[MI_ISP_AWB_SPECIAL_CASE_NUM] Show the ratio of each case after Group1.CntRatio, Group2.CntRatio and BvRatio are integrated into one. Parameter range: 0 ~ 100. MI_ISP_AWB_SPECIAL_CASE_NUM = 4. u16CaseWeight[MI_ISP_AWB_SPECIAL_CASE_NUM] [MI_ISP_AWB_CT_TBL_NUM] Show CaseWeight as obtained through CaseRatio in each case. In cases where Mode 0 is not selected, CaseWeight will be 100, which means ineffective. MI_ISP_AWB_SPECIAL_CASE_NUM = 4; MI_ISP_AWB_CT_TBL_NUM = 10. u16SpecialWeight[MI_ISP_AWB_CT_TBL_NUM] Incorporate four sets of CaseWeight into one SpecialWeight. MI_ISP_AWB_CT_TBL_NUM = 10. u16SpecialRgain[MI_ISP_AWB_SPECIAL_CASE_NUM] Show the R gain to be blended with Target WB gain in each case. MI_ISP_AWB_SPECIAL_CASE_NUM = 4. u16SpecialBgain[MI_ISP_AWB_SPECIAL_CASE_NUM] Show the B gain to be blended with Target WB gain in each case. MI_ISP_AWB_SPECIAL_CASE_NUM = 4. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_QuerySpecialCaseInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_SpecialCaseInfoType_t *data);
MI_ISP_AWB_StatisFilter Structure¶
Type Structure¶
-
Description
The type structure of AWB StatisFilter.
-
Definition
typedef struct MI_ISP_AWB_StatisFilterType_s
{
MI_U32 u32NodeNum;
MI_S32 s32LutX_BV[MI_ISP_AWB_STATISFILTER_NODE_NUM];
MI_S32 s32LutY_HighThd[MI_ISP_AWB_STATISFILTER_NODE_NUM];
MI_S32 s32LutY_LowThd[MI_ISP_AWB_STATISFILTER_NODE_NUM];
} MI_ISP_AWB_StatisFilterType_t;
-
Name
Variable Name Description u32NodeNum Set the number of nodes for lookup table. Parameter range: 0 ~ 4. When the value is set to 0, the default range of effective brightness (4 ~ 224) will be applied. s32LutX_BV[MI_ISP_AWB_STATISFILTER_NODE_NUM] Set the X coordinate of nodes in lookup table. This is the value of brightness (BV). Parameter range: -81920 ~ 245760. MI_ISP_AWB_STATISFILTER_NODE_NUM = 4 s32LutY_HighThd[MI_ISP_AWB_STATISFILTER_NODE_NUM] Set the Y coordinate of nodes in lookup table. This is the upper limit of brightness. When any value in the RGB of statistics exceeds this cap, the statistics will be ignored. Parameter range: 0 ~ 255. MI_ISP_AWB_STATISFILTER_NODE_NUM = 4 s32LutY_LowThd[MI_ISP_AWB_STATISFILTER_NODE_NUM] Set another Y coordinate of node in lookup table. This is the lower limit of brightness. When any value in the RGB of statistics falls below this lower limit, the statistics will be ignored. Parameter range: 0 ~ 255. Note: LowThd should be smaller than HighThd. MI_ISP_AWB_STATISFILTER_NODE_NUM = 4 -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_SetStatisFilter(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_StatisFilterType_t *data);
MI_S32 MI_ISP_AWB_GetStatisFilter(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_StatisFilterType_t *data);
MI_ISP_AWB_VerInfo Structure¶
Type Structure¶
-
Description
AWB Version Information structure.
-
Definition
typedef struct MI_ISP_AWB_VerInfoType_s
{
MI_U32 u32ReleaseDate;
MI_U32 u32ReportID;
MI_U8 u8Major;
MI_U8 u8Minor;
MI_U8 u8TestVer;
} MI_ISP_AWB_VerInfoType_t;
-
Name
Variable Name Description u32ReleaseDate Print AWB FW update date. u32ReportID Print the numerical ID of the AWB FW feedback issue, default: 0. u8Major Print the AWB FW major version number. u8Minor Print the AWB FW minor version number. u8TestVer Print AWB FW test version number, default: 0. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_GetVersionInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_VerInfoType_t *data);
MI_ISP_AWB_FdAwbParam Structure¶
Type Structure¶
-
Description
AWB FdAwbParam Type structure.
-
Definition
typedef struct MI_ISP_AWB_FdAwbParam_s
{
MI_ISP_AWB_bool_e bEnable;
MI_ISP_AWB_FdAwb_Mode_e eMode;
MI_U16 u16SkinAreaNum;
MI_U16 u16SkinAreaCntThd;
MI_U16 u16SkinAreaCT[MI_ISP_FDAWB_SKIN_NUM];
MI_U8 u8SkinAreaCenterX[MI_ISP_FDAWB_SKIN_NUM];
MI_U8 u8SkinAreaCenterY[MI_ISP_FDAWB_SKIN_NUM];
MI_U8 u8SkinAreaRadius[MI_ISP_FDAWB_SKIN_NUM];
MI_U8 u8SkinAreaSkipRadius[MI_ISP_FDAWB_SKIN_NUM];
MI_U16 u16UnStbCntThd;
MI_U8 u8GrayNum[MI_ISP_FDAWB_SKIN_NUM];
MI_U8 u8GrayCenterX[MI_ISP_FDAWB_SKIN_NUM][MI_ISP_FDAWB_Gray_NUM];
MY_U8 u8GrayCenterY[MY_ISP_FDAWB_SKIN_NUM][MY_ISP_FDAWB_Gray_NUM];
MI_U8 u8GrayRadius[MI_ISP_FDAWB_SKIN_NUM][MI_ISP_FDAWB_GRAY_NUM];
MY_U8 u8AssignSkinX[MY_ISP_FDAWB_SKIN_NUM];
MY_U8 u8AssignSkinY[MY_ISP_FDAWB_SKIN_NUM];
MY_ISP_AWB_BOOL_e bFwstWbFromSkin;
} MI_ISP_AWB_FdAwbParam_t;
-
名称
Variable Name Description bEnable FDAWB algorithm switch. To enable the FDAWB function, it is recommended to use it with AWB Blance AlgType to increase stability. eMode FDAWB algorithm mode selection. Currently two algorithms are provided: 1. Refer To Skin: This mode will lock the most likely white point range for white balance based on the analysis results of the face information. 2. Assign Skin Color: This mode will force the statistical value point of the face (before white balance) to move to the skin color point (after white balance) set by the user. u16SkinAreaNum The number of skin areas with different color temperatures set by user. The value range is 0~8. Note that no matter which mode is selected, the SkinArea setting must be filled in, otherwise FDAWB will not be able to analyze the face information. u16SkinAreaCntThd Stable threshold of face information. This threshold means that when a face appears, the face information must be valid for several consecutive times before FDAWB considers the information valid and starts to act; when a face disappears, the face information must be invalid for several consecutive times before FDAWB considers the information invalid and stops. Value range: 0~255, the larger the value, the more stable it is, but it will delay the time for FDAWB to start or end the action. The appropriate value should be set according to user needs. u16SkinAreaCT[MI_ISP_FDAWB_SKIN_NUM] The color temperature corresponding to each custom skin area. This color temperature is only for the user to indicate which color temperature environment the skin index corresponds to, and has no practical use. There is no rule for setting it, and it does not have to be from small to large or from large to small. The value range is 0~20000. MI_ISP_FDAWB_SKIN_NUM = 8. u8SkinAreaCenterX/Y[MI_ISP_FDAWB_SKIN_NUM] The center coordinates of each custom skin color area (R/G-B/G plane). Value range: 0~255. MI_ISP_FDAWB_SKIN_NUM = 8. u8SkinAreaRadius[MI_ISP_FDAWB_SKIN_NUM] The radius of each custom skin area. Value range: 0~255. MI_ISP_FDAWB_SKIN_NUM = 8. u16UnStbCntThd The threshold to prevent the skin index from changing back and forth between different values. When switching from the current skin index to another index, the skin index detected several times in a row must not be equal to the current index before switching, otherwise the current index will be maintained. The value range is 0~255. The larger the value, the greater the stability, but it will take longer to react when the ambient color temperature changes. u8GrayNum[MI_ISP_FDAWB_SKIN_NUM] Each skin color index needs to use several corresponding grayscale areas. Value range: 0~10. Note that this grayscale area is only effective when the Refer To Skin mode is selected. MI_ISP_FDAWB_SKIN_NUM = 8. u8GrayCenterX/Y[MI_ISP_FDAWB_SKIN_NUM][MI_ISP_FDAWB_Gray_NUM] Set the center coordinates of each grayscale area. Fill in the coordinates of the corresponding group number according to GrayNum. Value range: 0~255. MI_ISP_FDAWB_SKIN_NUM = 8, MI_ISP_FDAWB_Gray_NUM = 10. u8GrayRadius[MI_ISP_FDAWB_SKIN_NUM][MI_ISP_FDAWB_Gray_NUM] Set the radius of each grayscale area. Grayscale areas can overlap, so when you want to set a non-circular area, you can use multiple areas to achieve it. Value range: 0~255. MI_ISP_FDAWB_SKIN_NUM = 8, MI_ISP_FDAWB_Gray_NUM = 10. u8AssignSkinX/Y[MI_ISP_FDAWB_SKIN_NUM] Set the target coordinates of the face information. Value range: 0~255. When the Assign Skin Color mode is selected, the face point will be forced to move to this target coordinate. It is recommended to confirm the skin color point of color checker patch 2 at different color temperatures to help calibrate this coordinate, and then make fine adjustments based on the actual situation. In addition, when the Refer To Skin mode is selected, if FwstWbFromSkin is checked, when the statistical value is insufficient and the white balance cannot be calculated, Assign Skin Color will be used instead for white balance. MI_ISP_FDAWB_SKIN_NUM = 8. bFwstWbFromSkin When the statistics are insufficient, whether to use the Assign Skin Color mode to calculate the white balance. This mechanism needs to be used with the setting of MI_ISP_AWB_SetFewStatisStrategy, please refer to the description of the API. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_SetFDAWBParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_FdAwbParam_t *data);
MI_S32 MI_ISP_AWB_GetFDAWBParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_FdAwbParam_t *data);
MY_ISP_AWB_FdAwbInfoType Structure¶
Type Structure¶
-
Description
Type Structure of AWB FdAwbInfoType.
-
Definition
typedef struct MY_ISP_AWB_FdAwbInfoType_s
{
MI_U8 u8FaceNum;
MI_U8 u8FaceCor[4];
MY_ISP_AWB_BOOL_e bEffective;
MI_U32 u32EffectiveCnt;
MI_U32 u32FaceAvgX;
MI_U32 u32FaceAvgY;
MI_U16 u16FaceSkinInd;
MI_U32 u32FaceTarRgain;
MI_U32 u32FaceTarBgain;
} MI_ISP_AWB_FdAwbInfoType_t;
-
Name
Variable Name Description u8FaceNum The number of faces obtained through the face detection function. Currently, only one face is supported. If this value is 0, it means that the face detection function is not supported or the face detection function is supported but no face is detected. u8FaceCor[4] The coordinates of the face on the AWB 128x90 statistical values. The four values are the face frame start point X coordinate, start point Y coordinate, end point X coordinate, and end point Y coordinate in order. bEffective Indicate whether FDAWB is currently taking action. u32EffectiveCnt Display the number of consecutive face information that is effective, the highest is only SkinAreaCntThd+1. u32FaceAvgX/Y The face point coordinates (R/GB/G plane) analyzed based on the face information. u16FaceSkinInd User-defined skin color index analyzed based on face information. u32FaceTarR/Bgain Target WB gain obtained based on face information and AssignSkinX/Y. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_GetFDAWBInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_FdAwbInfoType_t *data);
MI_ISP_AWB_FwstStrategyParam Structure¶
Type Structure¶
-
Description
AWB FwstStrategyParam type structure.
-
Definition
typedef struct MI_ISP_AWB_FwstStrategyParam_s
{
MI_ISP_AWB_Fwst_AlgoType_e eAlgType;
MI_U32 u32CntThd;
MI_U32 u32SmoothWidth;
MI_U32 u32PreferCT;
} MI_ISP_AWB_FwstStrategyParam_t;
-
Name
Variable Name Description eAlgType Used to determine the behavior when the statistics are insufficient. There are three options: Keep, MixPreferGain and MixGrayWorld. u32CntThd The threshold of the minimum valid statistical value. When the number of statistical values is less than this value, AWB cannot be calculated. The WB gain used at this time will vary depending on the selection of AlgType. Value range: 0 ~ 5000. Keep: Maintain the WB gain obtained when there were sufficient statistical values last time. MixPreferGain: WB Gain calculated according to the color temperature set by PreferCT. MixGrayWorld: WB gain calculated using the GrayWorld algorithm. u32SmoothWidth When the algorithm selects MixPreferGain and MixGrayWorld, or FwstWbFromSkin is enabled and effective in FDAWB, different WB gains will be mixed with the target WB gain calculated by AWB according to the selected AlgoType in the statistical value between CntThd and CntThd + SmoothWidth. Note that when FwstWbFromSkin is enabled and effective, it has the highest priority. Value range: 0 ~ 5000. u32PreferCT Used when eAlgType selects MixPreferGain. The user can decide which color temperature WB gain to use when the statistical value is insufficient. Value range: 0~20000. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_SetFewStatisStrategy(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_FwstStrategyParam_t *data);
MI_S32 MI_ISP_AWB_GetFewStatisStrategy(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_FwstStrategyParam_t *data);
MI_ISP_AF_bool Structure¶
Enum Structure¶
-
Description
Enumeration structure of boolean values.
-
Definition
typedef enum
{
E_SS_AF_FALSE = 0,
E_SS_AF_TRUE = !E_SS_AF_FALSE,
E_SS_AF_BOOL_MAX
} MI_ISP_AF_bool_e;
-
Name
Variable Name Description E_SS_AF_FALSE Boolean value = 0. E_SS_AF_TRUE Boolean value = 1. E_SS_AF_BOOL_MAX Determine the maximum value of a Boolean enumeration list. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AF_OpType structure¶
Enum Structure¶
-
Description
Enumeration structure of working modes.
-
Definition
typedef enum
{
E_SS_AF_OP_TYP_AUTO = 0,
E_SS_AF_OP_TYP_MANUAL = ! E_SS_AF_OP_TYP_AUTO,
E_SS_AF_OP_TYP_MODE_MAX
} MI_ISP_AF_OpType_e;
-
Name
Variable Name Description E_SS_AF_OP_TYP_AUTO Automatic working mode. E_SS_AF_OP_TYP_MANUAL Manual working mode. E_SS_AF_OP_TYP_MODE_MAX Determine the maximum value of the working mode enumeration list. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AF_SmStateType Structure¶
Enum Structure¶
-
Description
State Machine enumeration structure.
-
Definition
typedef enum
{
E_SS_AF_STATE_NORMAL = 0,
E_SS_AF_STATE_PAUSE = 1,
E_SS_AF_STATE_MAX
} MI_ISP_AF_SmStateType_e;
-
Name
Variable Name Description E_SS_AF_STATE_NORMAL Normal mode. E_SS_AF_STATE_PAUSE Pause mode. E_SS_AF_STATE_MAX Determine the maximum value of the state machine enumeration list. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AF_QueryInfo Structure¶
Type Structure¶
-
Description
The type structure to query current AF information.
-
Definition
typedef struct MI_ISP_AF_QueryInfoType_s
{
MI_ISP_AF_bool_e bIsStable;
MI_U16 u16CurMotorPos;
} MI_ISP_AF_QueryInfoType_t;
-
Name
Variable Name Description bIsStable Get information about whether the current AF is converged. u16CurMotorPos Get the current position of motor. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_QueryInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_QueryInfoType_t *data);
MI_ISP_AF_HwWin Structure¶
Type Structure¶
-
Description
The type structure to set AF window.
-
Definition
typedef struct MI_ISP_AF_HwWinType_s
{
MI_ISP_AF_HwRoiModeType_e eMode;
MI_U32 u32VerticalBlockNumber;
MI_ISP_AF_WinType_t stParaAPI[AF_HW_WIN_NUM];
} MI_ISP_AF_HwWinType_t;
-
Name
Variable Name Description eMode Control option of ROI (Region of Interest) mode. If set to 0, the screen will be divided into 16 sets of ROI blocks, which allow window size and position to be set freely according to user’s preference; If set to 1, the screen can be divided into 16*N sets of ROI windows. The window size and position will be relatively limited. Parameter range: 0 ~ 1. u32VerticalBlockNumber Effective only when Mode is set to Matrix, which divides the window into 16*N sets of ROI blocks (N = VerticalBlockNumber). Parameter range: 1 ~ 16. stParaAPI[AF_HW_WIN_NUM] Coordinates of 16 sets of ROI, in the sequence of x_start, y_start, x_end, y_end. Parameter range: 0 ~ 1023. AF_HW_WIN_NUM = 16. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetHwWin(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwWinType_t *data);
MI_S32 MI_ISP_AF_GetHwWin(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwWinType_t *data);
Mode Enum Structure¶
-
Description
The ROI mode of AF statistical value.
-
Definition
typedef enum __attribute__ ((aligned (1)))
{
E_IQ_AF_ROI_MODE_NORMAL,
E_IQ_AF_ROI_MODE_MATRIX
} MI_ISP_AF_HwRoiModeType_e;
-
Name
Variable Name Description E_IQ_AF_ROI_MODE_NORMAL Normal mode, which enables the screen to be divided into 16 sets of ROI blocks, and both the window size and position can be set freely according to user’s preference. E_IQ_AF_ROI_MODE_MATRIX Matrix mode, which enables the screen to be divided 16*N sets of ROI windows. The window size and position will be relatively limited. -
Note
N/A.
-
Related Structure Type and Function
Window Type Structure¶
-
Description
The type structure to set the position of AF window.
-
Definition
typedef struct MI_ISP_AF_WinType_s
{
MI_U32 u16StartX;
MI_U32 u16StartY;
MI_U32 u16EndX;
MI_U32 u16EndY;
} MI_ISP_AF_WinType_t;
-
Name
Variable Name Description u16StartX The X coordinate of the starting position. Parameter range: 0 ~ 1023. u16StartY The Y coordinate of the starting position. Parameter range: 0 ~ 1023. u16EndX The X coordinate of the final position. Parameter range: 0 ~ 1023. u16EndY The Y coordinate of the final position. Parameter range: 0 ~ 1023. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AF_HwFilterAttr Structure¶
Type Structure¶
-
Description.
The type structure to set AF filter coefficients.
-
Definition
typedef struct MI_ISP_AF_HwFilterAttrType_s
{
MI_U16 u16IIR1_a0;
MI_U16 u16IIR1_a1;
MI_U16 u16IIR1_a2;
MI_U16 u16IIR1_b1;
MI_U16 u16IIR1_b2;
MI_U16 u16IIR1_1st_low_clip;
MI_U16 u16IIR1_1st_high_clip;
MI_U16 u16IIR1_2nd_low_clip;
MI_U16 u16IIR1_2nd_high_clip;
MI_U16 u16IIR2_a0;
MI_U16 u16IIR2_a1;
MI_U16 u16IIR2_a2;
MI_U16 u16IIR2_b1;
MI_U16 u16IIR2_b2;
MI_U16 u16IIR2_1st_low_clip;
MI_U16 u16IIR2_1st_high_clip;
MI_U16 u16IIR2_2nd_low_clip;
MI_U16 u16IIR2_2nd_high_clip;
MI_U16 u16IIR1_e1_en;
MI_U16 u16IIR1_e1_a0;
MI_U16 u16IIR1_e1_a1;
MI_U16 u16IIR1_e1_a2;
MI_U16 u16IIR1_e1_b1;
MI_U16 u16IIR1_e1_b2;
MI_U16 u16IIR1_e2_en;
MI_U16 u16IIR1_e2_a0;
MI_U16 u16IIR1_e2_a1;
MI_U16 u16IIR1_e2_a2;
MI_U16 u16IIR1_e2_b1;
MI_U16 u16IIR1_e2_b2;
MI_U16 u16IIR2_e1_en;
MI_U16 u16IIR2_e1_a0;
MI_U16 u16IIR2_e1_a1;
MI_U16 u16IIR2_e1_a2;
MI_U16 u16IIR2_e1_b1;
MI_U16 u16IIR2_e1_b2;
MI_U16 u16IIR2_e2_en;
MI_U16 u16IIR2_e2_a0;
MI_U16 u16IIR2_e2_a1;
MI_U16 u16IIR2_e2_a2;
MI_U16 u16IIR2_e2_b1;
MI_U16 u16IIR2_e2_b2;
} MI_ISP_AF_HwFilterAttrType_t;
-
Name
Variable Name Description u16IIR1_a0, a1, a2, b1, b2 IIR high filter coefficient. Parameter range: 0 ~ 1023. u16IIR1_1st_low_clip, 1st_high_clip, 2nd_low_clip, 2nd_high_clip IIR high filter coefficient input/output limit. Parameter range: 0 ~ 1023. u16IIR2_a0, a1, a2, b1, b2 IIR low filter coefficient. Parameter range: 0 ~ 1023. u16IIR2_1st_low_clip, 1st_high_clip, 2nd_low_clip, 2nd_high_clip IIR low filter coefficient input/output limit. Parameter range: 0 ~ 1023. u16IIR1_e1_en IIR high 2-tap serial filter switch. Parameter range: 0 ~ 1. u16IIR1_e1_a0, a1, a2, b1, b2 IIR high 2-tap serial filter coefficient. Parameter range: 0 ~ 1023. u16IIR1_e2_en IIR high 4-tap serial filter switch. Parameter range: 0 ~ 1. u16IIR1_e2_a0, a1, a2, b1, b2 IIR high 4-tap serial filter coefficient. Parameter range: 0 ~ 1023. u16IIR2_e1_en IIR low 2-tap serial filter switch. Parameter range: 0 ~ 1. u16IIR2_e1_a0, a1, a2, b1, b2 IIR low 2-tap serial filter coefficient. Parameter range: 0 ~ 1023. u16IIR2_e2_en IIR low 4-tap serial filter switch. Parameter range: 0 ~ 1. u16IIR2_e2_a0, a1, a2, b1, b2 IIR low 4-tap serial filter coefficient. Parameter range: 0 ~ 1023. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetHwFilterAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwFilterAttrType_t *data);
MI_S32 MI_ISP_AF_GetHwFilterAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwFilterAttrType_t *data);
MI_ISP_AF_HwFilterSq Structure¶
Type Structure¶
-
Description
The type structure to set AF filter square coefficient.
-
Definition
typedef struct MI_ISP_AF_HwFilterSqType_s
{
MI_U8 bSobelYSatEn;
MI_U16 u16SobelYThd;
MI_U8 bIIRSquareAccEn;
MI_U8 bSobelSquareAccEn;
MI_U16 u16IIR1Thd;
MI_U16 u16IIR2Thd;
MI_U16 u16SobelHThd;
MI_U16 u16SobelVThd;
MI_U8 u8AFTbl1X[AF_FILTER_SQ_TBL_X_NUM];
MI_U16 u16AFTbl1Y[AF_FILTER_SQ_TBL_Y_NUM];
MI_U8 u8AFTbl2X[AF_FILTER_SQ_TBL_X_NUM];
MI_U16 u16AFTbl2Y[AF_FILTER_SQ_TBL_Y_NUM];
} MI_ISP_AF_HwFilterSqType_t;
-
Name
Variable Name Description bSobelYSatEn The switch involves two actions:
1. Control the threshold value of Y for Sobel filter;
2. Control the setting of Y_sat statistics.u16SobelYThd When bSobelYSatEn = 1,
1. Control the threshold value of Y for Sobel filter: Pixels of which the brightness is lower than u16SobelYThd will be included in the Sobel filter calculation.
2. Control the setting of Y_sat statistics: Pixels larger than u16SobelYThd will be sent back and shown in Y_sat statistics.
Parameter range: 0 ~ 1023.bIIRSquareAccEn Enable IIR Filter Square enhancement. bSobelSquareAccEn Enable Sobel Filter Square enhancement. u16IIR1Thd IIR1 Filter Output = IIR1 Filter Output – IIR1Thd. Parameter range: 0 ~ 1023. u16IIR2Thd IIR2 Filter Output = IIR2 Filter Output – IIR2Thd. Parameter range: 0 ~ 1023. u16SobelHThd SobelH Filter Output = SobelH Filter Output – SobelH Thd. Parameter range: 0 ~ 1023. u16SobelVThd SobelV Filter Output = SobelV Filter Output – SobelV Thd. Parameter range: 0 ~ 1023. u8AFTbl1X [AF_FILTER_SQ_TBL_X_NUM] Perform non-linear mapping for IIR1 and SobelH Filter. u8AFTbl1X represents the horizontal axis of Tbl1, for which the nodes are accumulated by power of 2. The accumulation should be greater than 1024. Parameter range: 0 ~ 15. AF_FILTER_SQ_TBL_X_NUM = 12. u16AFTbl1Y [AF_FILTER_SQ_TBL_Y_NUM] Perform non-linear mapping for IIR1 and SobelH Filter. u16AFTbl1Y represents the vertical axis of Tbl1. Parameter range: 0 ~ 8191. AF_FILTER_SQ_TBL_Y_NUM = 13. u8AFTbl2X [AF_FILTER_SQ_TBL_X_NUM] Perform non-linear mapping for IIR2 and SobelV Filter. u8AFTbl2X represents the horizontal axis of Tbl2, for which the nodes are accumulated by power of 2. The accumulation should be greater than 1024. Parameter range: 0 ~ 15. AF_FILTER_SQ_TBL_X_NUM = 12. u16AFTbl2Y [AF_FILTER_SQ_TBL_Y_NUM] Perform non-linear mapping for IIR2 and SobelV Filter. u16AFTbl2Y represents the vertical axis of Tbl2. Parameter range: 0 ~ 8191. AF_FILTER_SQ_TBL_Y_NUM = 13. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetHwFilterSq(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwFilterSqType_t *data);
MI_S32 MI_ISP_AF_GetHwFilterSq(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwFilterSqType_t *data);
MI_ISP_AF_HwYParam Structure¶
Type Structure¶
-
Description
Set the RGB ratio factor of AF filter bayer to Y.
-
Definition
typedef struct MI_ISP_AF_HwYParamType_s
{
MI_U8 u8R;
MI_U8 u8G;
MI_U8 u8B;
} MI_ISP_AF_HwYParamType_t;
-
Name
Variable Name Description u8R R channel ratio of Bayer to Y (0~255). u8G G channel ratio of Bayer to Y (0~255). u8B B channel ratio of Bayer to Y (0~255). -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetHwYParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwYParamType_t *data);
MI_S32 MI_ISP_AF_GetHwYParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwYParamType_t *data);
MI_ISP_AF_Attr Structure¶
Type Structure¶
-
Description
The type structure to set AF attribute.
-
Definition
typedef struct MI_ISP_AF_AttrType_s
{
MI_ISP_AF_SmStateType_e eState;
MI_ISP_AF_OpType_e eType;
MI_U16 u16ManualMotorPos;
MI_ISP_AF_AlgoType_e eAlgo;
} MI_ISP_AF_AttrType_t;
-
Name
Variable Name Description eState Set the status of AF attribute function.
Normal: E_SS_AF_STATE_NORMAL = 0.
Pause: E_SS_AF_STATE_PAUSE = 1.eType Set the working mode of AF attribute.
Auto mode: E_SS_AF_OP_TYP_AUTO = 0.
Manual mode: E_SS_AF_OP_TYP_MANUAL = 1.u16ManualMotorPos The attribute structure of manual mode to set AF attribute. Parameter range: 0 ~ 1023. eAlgo Set the type of Auto Focus algorithm. Two options are available: 1. OneShot; 2. Continuous. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AttrType_t *data);
MI_S32 MI_ISP_AF_GetAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AttrType_t *data);
MI_ISP_AF_Motor Structure¶
Type Structure¶
-
Description
The type structure to set AF motor.
-
Definition
typedef struct MI_ISP_AF_MotorType_s
{
MI_U16 u16MinMotorPos;
MI_U16 u16MaxMotorPos;
MI_U16 u16MinMotorStep;
MI_U16 u16MaxMotorStep;
} MI_ISP_AF_MotorType_t;
-
Name
Variable Name Description u16MinMotorPos The minimum position to which motor can move. Parameter range: 0 ~ 1023. u16MaxMotorPos The maximum position to which motor can move. Parameter range: 0 ~ 1023. u16MinMotorStep The minimum step that motor can move within one frame. Parameter range: 0 ~ 1023. u16MaxMotorStep The maximum step that motor can move within one frame. Parameter range: 0 ~ 1023. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetMotor(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_MotorType_t *data);
MI_S32 MI_ISP_AF_GetMotor(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_MotorType_t *data);
MI_ISP_AF_AccWeight Structure¶
Type Structure¶
-
Description
The type structure to set AF acc weight.
-
Definition
typedef struct MI_ISP_AF_AccWeightType_s
{
MI_U8 u8WinNumX;
MI_U8 u8WinNumY;
MI_ISP_AF_bool_e bEqualWinWgt;
MI_U8 u8WinWgt[MI_ISP_AF_WIN_CNT];
MI_ISP_AF_bool_e bIIRHBlendEn;
MI_U8 u8IIRHWgt_FirstBlendIIRL;
MI_U8 u8IIRHWgt_SecondBlendSBLV;
MI_U8 u8IIRHWgt_ThirdBlendSBLH;
} MI_ISP_AF_AccWeightType_t;
-
Name
Variable Name Description u8WinNumX The total number of window in the direction of X. Parameter range: 1 ~ 16. u8WinNumY The total number of window in the direction of Y. Parameter range: 1 ~ 16. bEqualWinWgt Enable equal weight to be assigned to statistical values. Parameter range: 0 ~ 1. u8WinWgt[MI_ISP_AF_WIN_CNT] The weight table of statistical value, which only takes effect when EqualWinWgtEn is false. Parameter range: 0 ~ 255. MI_ISP_AF_WIN_CNT = 256. bIIRHBlendEn Enable IIRH blending with the three following values in this order. Parameter range: 0 ~ 1. u8IIRHWgt_FirstBlendIIRL IIRH will be first blended with IIRL; this value represents the proportion of IIRH. Parameter range: 0 ~ 255. u8IIRHWgt_SecondBlendSBLV IIRH will then be blended with SobelV, this value represents the proportion of IIRH. Parameter range: 0 ~ 255. u8IIRHWgt_ThirdBlendSBLH IIRH will finally be blended with SobelH, this value represents the proportion of IIRH. Parameter range: 0 ~ 255. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetAccWeight(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AccWeightType_t *data);
MI_S32 MI_ISP_AF_GetAccWeight(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AccWeightType_t *data);
MI_ISP_AF_OneShot Structure¶
Type Structure¶
-
Description
The type structure to set AF OneShot, effective only when Algo (Auto Focus algorithm) is set to OneShot.
-
Definition
typedef struct MI_ISP_AF_OneShotType_s
{
MI_ISP_AF_AccSelType_e eAccSel;
MI_U16 u16MotorStep;
} MI_ISP_AF_OneShotType_t;
-
Name
Variable Name Description eAccSel Type of statistical value. Parameter range: 0 ~ 3. u16MotorStep Motor step within each frame. Parameter range: 0 ~ 1023. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetOneShot(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_OneShotType_t *data);
MI_S32 MI_ISP_AF_GetOneShot(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_OneShotType_t *data);
MI_ISP_AF_SceneChange Structure¶
Type Structure¶
-
Description
The type structure to set AF Scene Change, effective only when Algo is set to Continuous.
-
Definition
typedef struct MI_ISP_AF_SceneChangeType_s
{
MI_ISP_AF_AccSelType_e ePreAfAccSel;
MI_U8 u8PreAeAccDiffThOft;
MI_U8 u8PreAeAccDiffThSlp;
MI_U8 u8PreAeAccCntThOft;
MI_U8 u8PreAeAccCntThSlp;
MI_U8 u8PreAfAccDiffThOft;
MI_U8 u8PreAfAccDiffThSlp;
MI_U8 u8PreAfAccCntThOft;
MI_U8 u8PreAfAccCntThSlp;
MI_ISP_AF_AccSelType_e eFocusAfAccSel;
MI_U8 u8FocusAeAccDiffTh;
MI_U8 u8FocusAeAccCntTh;
MI_U8 u8FocusAfAccDiffTh;
MI_U8 u8FocusAfAccCntTh;
MI_U8 u8StableCntTh;
} MI_ISP_AF_SceneChangeType_t;
-
Name
Variable Name Description ePreAfAccSel Type of statistical value, used to determine whether the environment has changed based on the difference in statistical value from the previous frame. Parameter range: 0 ~ 3. u8PreAeAccDiffThOft Threshold value of the ratio of statistical value to Luma difference. The total number exceeding this threshold will be counted. Parameter range: 0 ~ 100. u8PreAeAccDiffThSlp Slope of the threshold value of the ratio of statistical value to Luma difference. The threshold can be increased by motor step. Parameter range: 0 ~ 100. u8PreAeAccCntThOft Threshold value of the ratio of statistical value to total Luma value. The environment will be judged as unstable if the value is greater than this threshold. Parameter range: 0 ~ 100. u8PreAeAccCntThSlp Slope of the threshold value of the ratio of statistical value to total Luma value. The threshold can be increased by motor step. Parameter range: 0 ~ 100. u8PreAfAccDiffThOft Threshold value of the ratio of statistical value to PreAccSel difference. The total number exceeding this threshold will be counted. Parameter range: 0 ~ 100. u8PreAfAccDiffThSlp Slope of the threshold value of the ratio of statistical value to PreAccSel difference. The threshold can be increased by motor step. Parameter range: 0 ~ 100. u8PreAfAccCntThOft Threshold value of the ratio of statistical value to total PreAccSel value. The environment will be judged as unstable if the value is greater than this threshold. Parameter range: 0 ~ 100. u8PreAfAccCntThSlp Slope of the threshold value of the ratio of statistical value to total PreAccSel value. The threshold can be increased by motor step. Parameter range: 0 ~ 100. eFocusAfAccSel Type of statistical value, used to determine whether the environment has changed based on the difference in statistical value from the previous end-of-convergence. Parameter range: 0 ~ 3. u8FocusAeAccDiffTh Threshold value of the ratio of statistical value to Luma difference. The total number exceeding this threshold will be counted. Parameter range: 0 ~ 100. u8FocusAeAccCntTh Threshold value of the ratio of statistical value to total Luma value. The environment will be judged as unstable if the value is greater than this threshold. Parameter range: 0 ~ 100. u8FocusAfAccDiffTh Threshold value of the ratio of statistical value to FocusAccSel difference. The total number exceeding this threshold will be counted. Parameter range: 0 ~ 100. u8FocusAfAccCntTh Threshold value of the ratio of statistical value to total FocusAccSel value. The environment will be judged as unstable if the value is greater than this threshold. Parameter range: 0 ~ 100. u8StableCntTh Threshold value of continuous stable frame count. If the value is greater than this threshold, the environment will be judged as stable, and the motor will start moving to perform auto focus. Parameter range: 0 ~ 255. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetSceneChange(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_SceneChangeType_t *data);
MI_S32 MI_ISP_AF_GetSceneChange(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_SceneChangeType_t *data);
MI_ISP_AF_SearchStart Structure¶
Type Structure¶
-
Description
The type structure to set AF Search Start, effective only when Algo is set to Continuous.
-
Definition
typedef struct MI_ISP_AF_SearchStartType_s
{
MI_U16 u16SearchMotorStep
MI_U16 u16SearchMotorDirByPosTh;
MI_ISP_AF_AccSelType_e eSearchAccSel;
} MI_ISP_AF_SearchStartType_t;
-
Name
Variable Name Description u16SearchMotorStep Motor step within each frame. Parameter range: 0 ~ 1023. u16SearchMotorDirByPosTh Threshold value to determine the moving direction according to the motor’s current position. If the value is greater than this threshold, the motor will move toward smaller position, and vice versa. Parameter range: 0 ~ 1023. eSearchAccSel Type of statistical value. Parameter range: 0 ~ 3. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetSearchStart(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_SearchStartType_t *data);
MI_S32 MI_ISP_AF_GetSearchStart(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_SearchStartType_t *data);
MI_ISP_AF_Search Structure¶
Type Structure¶
-
Description
The type structure to set AF Search, effective only when Algo is set to Continuous.
-
Definition
typedef struct MI_ISP_AF_SearchType_s
{
MI_U8 u8MinMaxAccRatioPeakThOft;
MI_U8 u8MinMaxAccRatioPeakThSlp;
MI_U8 u8AccDecCntPeakTh;
MI_U8 u8NowFakeMaxAccRatioPeakTh;
MI_U8 u8AccDecCntWrongDirTh;
MI_U8 u8NowFakeMaxAccRatioWrongDirTh;
} MI_ISP_AF_SearchType_t;
-
Name
Variable Name Description u8MinMaxAccRatioPeakThOft Threshold value of the ratio of difference between the minimum and maximum statistical values, used to determine the peak. Parameter range: 0 ~ 100. u8MinMaxAccRatioPeakThSlp Slope of the threshold value of the ratio of difference between the minimum and maximum statistical values. The threshold value can be lowered based on the total path traveled. Parameter range: 0 ~ 100. u8AccDecCntPeakTh Threshold value of the number of consecutive declines in statistical values, used to determine the peak. Parameter range: 0 ~ 255. u8NowFakeMaxAccRatioPeakTh Threshold value of the proportion of decline in statistical values, used to determine the peak. Parameter range: 0 ~ 100. u8AccDecCntWrongDirTh Threshold value of the number of consecutive declines in statistical values, used to determine if the direction is wrong. Parameter range: 0 ~ 255. u8NowFakeMaxAccRatioWrongDirTh Threshold value of the number of consecutive declines in statistical values, used to determine if the direction is wrong. Parameter range: 0 ~ 100. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetSearch(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_SearchType_t *data);
MI_S32 MI_ISP_AF_GetSearch(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_SearchType_t *data);
MI_ISP_AF_VerInfo Structure¶
Type Structure¶
-
Description
AF Version Information structure.
-
Definition
typedef struct MI_ISP_AF_VerInfoType_s
{
MI_U32 u32ReleaseDate;
MI_U32 u32ReportID;
MI_U8 u8Major;
MI_U8 u8Minor;
MI_U8 u8TestVer;
} MI_ISP_AF_VerInfoType_t;
-
Name
Variable Name Description u32ReleaseDate Print AF FW update date. u32ReportID Print the numerical ID of the AF FW feedback problem, default: 0. u8Major Print AF FW major version number. u8Minor Print AF FW minor version number. u8TestVer Print AF FW test version number, default: 0. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_GetVersionInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_VerInfoType_t *data);
Error code¶
| Parameter Name | Value | Description |
|---|---|---|
| MI_ISP_IQ_OK | 0 | Successful. |
| MI_ISP_IQ_ERR_NOT_SUPPORT | 0xA0212201 | This chip is not supported. |
| MI_ISP_IQ_ERR_NULL_POINTER | 0xA0212202 | The pointer is null. |
| MI_ISP_IQ_ERR_3A_FAIL | 0xA0212203 | 3A is failed. |
| MI_ISP_IQ_ERR_OUT_OF_ARRAY | 0xA0212204 | Out of array size. |
| MI_ISP_IQ_ERR_BUFFER_TOO_SMALL | 0xA0212205 | The buffer is too small. |
| MI_ISP_IQ_ERR_EMPTY_VARIABLE | 0xA0212206 | The variable is empty. |
| MI_ISP_IQ_ERR_CALIB_VERSION_FAIL | 0xA0212207 | Wrong Calib version. |
| MI_ISP_IQ_ERR_API_STRUCTURE_SIZE_NOT_MATCH | 0xA0212208 | The structure size does not match. |
| MI_ISP_IQ_ERR_API_NOT_FOUND | 0xA0212209 | This API is not found. |