ISP Software Development Guide

Version 1.12


1. OVERVIEW


1.1. Module Description

The ISP module analyses and processes data inputted from video source, sets up associated video parameters, and conducts camera tuning to realize various functions such as black level correction, lens correction, 3A and 2D/3D noise reduction, CCM, and Gamma.


1.2. Flow Chart

The ISP block diagram is as illustrated below:

图 1-1: ISP Block Diagram


1.3. 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 3DNR.

    2DNR: Average an image pixel to the surrounding image pixels to reduce noise. This, however, comes with the disadvantage that the picture will be blurred.

    3DNR: 3DNR provides time-domain processing. In contrast to 2DNR, which focuses on single frame only, 3DNR 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

  • HDR

    Acronym for High-Dynamic Range. The HDR function provides high-dynamic-range image via double frame synthesis.

  • WDR

    Acronym for Wide Dynamic Range. High dynamic range impact by single frame processing.


2. MI ISP REFERENCE API


2.1. MI_ISP_IQ_GetVersionInfo

  • Object

    This function is used to get the IQ version information.

  • Syntax

    MI_S32 MI_ISP_IQ_GetVersionInfo(MI_U32 Channel, MI_ISP_IQ_VERSION_INFO_TYPE_t *data);
    
  • Description

    Call this function to get the IQ version information.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to IQ version number.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.2. MI_ISP_IQ_SetVersionInfo

  • Object

    This function is used to set the IQ version information.

  • Syntax

    MI_S32 MI_ISP_IQ_SetVersionInfo(MI_U32 Channel, MI_ISP_IQ_VERSION_INFO_TYPE_t *data);
    
  • Description

    Call this function to set the IQ version information.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to IQ version number.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.3. MI_ISP_IQ_GetParaInitStatus

  • Object

    This function is used to get the parameter value for ISP initialization ready status.

  • Syntax

    MI_S32 MI_ISP_IQ_GetParaInitStatus(MI_U32 Channel, MI_ISP_IQ_PARAM_INIT_INFO_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value for ISP initialization 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 function.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to ISP initialization parameter value.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so

  • Example

    MI_SYS_INIT();
    
    While(1)
    
    {
    
        MI_ISP_IQ_GetParaInitStatus (0, &FLAG);
    
        if(FLAG ==1)
    
        {
    
            break;
    
        }
    
    }
    

2.4. MI_ISP_IQ_GetIQind

  • Object

    This function is used to get the value of ISO index parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_GetIQind(MI_U32 Channel, MI_ISP_IQ_INDEX_e *data);
    
  • Description

    Call this function to get the value of ISO index parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of ISO index parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.5. MI_ISP_IQ_SetColorToGray

  • Object

    This function is used to set the parameter value of converting color image to grayscale.

  • Syntax

    MI_S32 MI_ISP_IQ_SetColorToGray(MI_U32 Channel, MI_ISP_IQ_COLORTOGRAY_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of converting color image to grayscale.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of color to grayscale image parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.6. MI_ISP_IQ_GetColorToGray

  • Object

    This function is used to get the parameter value of converting color image to grayscale.

  • Syntax

    MI_S32 MI_ISP_IQ_GetColorToGray(MI_U32 Channel,MI_ISP_IQ_COLORTOGRAY_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of converting color image to grayscale.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of color to grayscale image parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.7. MI_ISP_IQ_SetContrast

  • Object

    This function is used to set the value of contrast parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_SetContrast(MI_U32 Channel,    MI_ISP_IQ_CONTRAST_TYPE_t *data);
    
  • Description

    Call this function to set the value of contrast parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of contrast parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.8. MI_ISP_IQ_GetContrast

  • Object

    This function is used to get the value of contrast parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_GetContrast(MI_U32 Channel,MI_ISP_IQ_CONTRAST_TYPE_t *data);
    
  • Description

    Call this function to get the value of contrast parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of contrast parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.9. MI_ISP_IQ_SetBrightness

  • Object

    This function is used to set the value of brightness parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_SetBrightness(MI_U32 Channel, MI_ISP_IQ_BRIGHTNESS_TYPE_t *data);
    
  • Description

    Call this function to set the value of brightness parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of brightness parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.10. MI_ISP_IQ_GetBrightness

  • Object

    This function is used to get the value of brightness parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_GetBrightness(MI_U32 Channel,MI_ISP_IQ_BRIGHTNESS_TYPE_t *data);
    
  • Description

    Call this function to get the value of brightness parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of brightness parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.11. MI_ISP_IQ_SetLightness

  • Object

    This function is used to set the value of lightness parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_SetLightness(MI_U32 Channel, MI_ISP_IQ_LIGHTNESS_TYPE_t *data);
    
  • Description

    Call this function to set the value of lightness parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of lightness parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.12. MI_ISP_IQ_GetLightness

  • Object

    This function is used to get the value of lightness parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_GetLightness(MI_U32 Channel, MI_ISP_IQ_LIGHTNESS_TYPE_t *data);
    
  • Description

    Call this function to get the value of lightness parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of lightness parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.13. MI_ISP_IQ_SetRGBGamma

  • Object

    This function is used to set the parameter value of RGB Gamma curve.

  • Syntax

    MI_S32 MI_ISP_IQ_SetRGBGamma(MI_U32 Channel,MI_ISP_IQ_RGBGAMMA_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of RGB Gamma curve.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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 File: libmi_isp.so


2.14. MI_ISP_IQ_GetRGBGamma

  • Object

    This function is used to get the parameter value of RGB Gamma curve.

  • Syntax

    MI_S32 MI_ISP_IQ_GetRGBGamma(MI_U32 Channel, MI_ISP_IQ_RGBGAMMA_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of RGB Gamma curve.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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 File: libmi_isp.so


2.15. MI_ISP_IQ_SetYUVGamma

  • Object

    This function is used to set the parameter value of YUV Gamma curve.

  • Syntax

    MI_S32 MI_ISP_IQ_SetYUVGamma(MI_U32 Channel,MI_ISP_IQ_YUVGAMMA_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of YUV Gamma curve.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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 File: libmi_isp.so


2.16. MI_ISP_IQ_GetYUVGamma

  • Object

    This function is used to get the parameter value of YUV Gamma curve.

  • Syntax

    MI_S32 MI_ISP_IQ_GetYUVGamma(MI_U32 Channel,MI_ISP_IQ_YUVGAMMA_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of YUV Gamma curve.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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 File: libmi_isp.so


2.17. MI_ISP_IQ_SetAdaptiveGamma

  • Object

    This function 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 Channel, MI_ISP_IQ_ADAPTIVE_GAMMA_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of Adaptive Gamma curve.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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.h

    • Library File: libmi_isp.so


2.18. MI_ISP_IQ_GetAdaptiveGamma

  • Object

    This function is used to get the parameter value of Adaptive Gamma curve.

  • Syntax

    MI_S32 MI_ISP_IQ_GetAdaptiveGamma(MI_U32 Channel, MI_ISP_IQ_ADAPTIVE_GAMMA_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of Adaptive Gamma curve.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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.h

    • Library File: libmi_isp.so


2.19. MI_ISP_IQ_SetSaturation

  • Object

    This function is used to set the value of saturation parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_SetSaturation(MI_U32 Channel,MI_ISP_IQ_SATURATION_TYPE_t *data);
    
  • Description

    Call this function to set the value of saturation parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of saturation parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.20. MI_ISP_IQ_GetSaturation

  • Object

    This function is used to get the value of saturation parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_GetSaturation(MI_U32 Channel, MI_ISP_IQ_SATURATION_TYPE_t *data);
    
  • Description

    Call this function to get the value of saturation parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of saturation parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.21. MI_ISP_IQ_SetRGBMatrix

  • Object

    This function is used to set the parameter value of RGB color correction matrix.

  • Syntax

    MI_S32 MI_ISP_IQ_SetRGBMatrix(MI_U32 Channel,MI_ISP_IQ_RGBMATRIX_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of RGB color correction matrix.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of RGB color correction matrix parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.22. MI_ISP_IQ_GetRGBMatrix

  • Object

    This function is used to get the parameter value of RGB color correction matrix.

  • Syntax

    MI_S32 MI_ISP_IQ_GetRGBMatrix(MI_U32 Channel,MI_ISP_IQ_RGBMATRIX_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of RGB color correction matrix.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of RGB color correction matrix parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.23. MI_ISP_IQ_SetFalseColor

  • Object

    This function is used to set the parameter value of false color suppression.

  • Syntax

    MI_S32 MI_ISP_IQ_SetFalseColor(MI_U32 Channel, MI_ISP_IQ_FALSECOLOR_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of false color suppression.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of false color suppression parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.24. MI_ISP_IQ_GetFalseColor

  • Object

    This function is used to get the parameter value of false color suppression.

  • Syntax

    MI_S32 MI_ISP_IQ_GetFalseColor(MI_U32 Channel, MI_ISP_IQ_FALSECOLOR_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of false color suppression.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of false color suppression parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.25. MI_ISP_IQ_SetNR3D

  • Object

    This function is used to set the parameter value of 3D noise reduction.

  • Syntax

    MI_S32 MI_ISP_IQ_SetNR3D(MI_U32 Channel, MI_ISP_IQ_NR3D_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of 3D noise reduction.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of 3D noise reduction parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.26. MI_ISP_IQ_GetNR3D

  • Object

    This function is used to get the parameter value of 3D noise reduction.

  • Syntax

    MI_S32 MI_ISP_IQ_GetNR3D(MI_U32 Channel, MI_ISP_IQ_NR3D_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of 3D noise reduction.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of 3D noise reduction parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.27. MI_ISP_IQ_SetNRDeSpike

  • Object

    This function is used to set the parameter value of DeSpike noise reduction.

  • Syntax

    MI_S32 MI_ISP_IQ_SetNRDeSpike(MI_U32 Channel, MI_ISP_IQ_NRDESPIKE_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of DeSpike noise reduction.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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 File: libmi_isp.so


2.28. MI_ISP_IQ_GetNRDeSpike

  • Object

    This function is used to get the parameter value of DeSpike noise reduction.

  • Syntax

    MI_S32 MI_ISP_IQ_GetNRDeSpike(MI_U32 Channel, MI_ISP_IQ_NRDESPIKE_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of DeSpike noise reduction.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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 File: libmi_isp.so


2.29. MI_ISP_IQ_SetNRLuma

  • Object

    This function is used to set the parameter value of Luma noise reduction.

  • Syntax

    MI_S32 MI_ISP_IQ_SetNRLuma(MI_U32 Channel, MI_ISP_IQ_NRLUMA_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of Luma noise reduction.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of Luma noise reduction parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.30. MI_ISP_IQ_GetNRLuma

  • Object

    This function is used to get the parameter value of Luma noise reduction.

  • Syntax

    MI_S32 MI_ISP_IQ_GetNRLuma(MI_U32 Channel, MI_ISP_IQ_NRLUMA_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of Luma noise reduction.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of Luma noise reduction parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.31. MI_ISP_IQ_SetNRChroma

  • Object

    This function is used to set the parameter value of NRChroma color noise reduction.

  • Syntax

    MI_S32 MI_ISP_IQ_SetNRChroma(MI_U32 Channel, MI_ISP_IQ_NRChroma_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of NRChroma color noise reduction.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of NRChroma color noise reduction parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.32. MI_ISP_IQ_GetNRChroma

  • Object

    This parameter is used to get the parameter value of NRChroma color noise reduction.

  • Syntax

    MI_S32 MI_ISP_IQ_GetNRChroma(MI_U32 Channel, MI_ISP_IQ_NRChroma_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of NRChroma color noise reduction.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the parameter value of NRChroma color noise reduction.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.33. MI_ISP_IQ_SetSharpness

  • Object

    This function is used to set the value of sharpness parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_SetSharpness(MI_U32 Channel, MI_ISP_IQ_SHARPNESS_TYPE_t *data);
    
  • Description

    Call this function to set the value of sharpness parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of sharpness parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.34. MI_ISP_IQ_GetSharpness

  • Object

    This function is used to get the value of sharpness parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_GetSharpness(MI_U32 Channel, MI_ISP_IQ_SHARPNESS_TYPE_t *data);
    
  • Description

    Call this function to get the value of sharpness parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of sharpness parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.35. MI_ISP_IQ_SetCrossTalk

  • Object

    This function is used to set the value of crosstalk parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_SetCrossTalk(MI_U32 Channel, MI_ISP_IQ_CROSSTALK_TYPE_t *data);
    
  • Description

    Call this function to set the value of crosstalk parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of crosstalk parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.36. MI_ISP_IQ_GetCrossTalk

  • Object

    This function is used to get the value of crosstalk parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_GetCrossTalk(MI_U32 Channel, MI_ISP_IQ_CROSSTALK_TYPE_t *data);
    
  • Description

    Call this function to get the value of crosstalk parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of crosstalk parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.37. MI_ISP_IQ_SetOBC

  • Object

    This function is used to set the parameter value of optical black compensation.

  • Syntax

    MI_S32 MI_ISP_IQ_SetOBC(MI_U32 Channel, MI_ISP_IQ_OBC_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of optical black compensation.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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 File: libmi_isp.so


2.38. MI_ISP_IQ_GetOBC

  • Object

    This function is used to get the parameter value of optical black compensation.

  • Syntax

    MI_S32 MI_ISP_IQ_GetOBC(MI_U32 Channel, MI_ISP_IQ_OBC_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of optical black compensation.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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 File: libmi_isp.so


2.39. MI_ISP_IQ_SetOBC_P1

  • Object

    This function is used to set the parameter value of optical black compensation for pipeline 1.

  • Syntax

    MI_S32 MI_ISP_IQ_SetOBC_P1(MI_U32 Channel, MI_ISP_IQ_OBC_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of optical black compensation for pipeline 1.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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 File: libmi_isp.so


2.40. MI_ISP_IQ_GetOBC_P1

  • Object

    This function is used to get the parameter value of optical black compensation for pipeline 1.

  • Syntax

    MI_S32 MI_ISP_IQ_GetOBC_P1(MI_U32 Channel, MI_ISP_IQ_OBC_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of optical black compensation for pipeline 1.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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 File: libmi_isp.so


2.41. MI_ISP_IQ_SetWDR

  • Object

    This function is used to set the parameter value of wide dynamic range (WDR).

  • Syntax

    MI_S32 MI_ISP_IQ_SetWDR(MI_U32 Channel, MI_ISP_IQ_WDR_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of wide dynamic range (WDR).

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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 File: libmi_isp.so


2.42. MI_ISP_IQ_GetWDR

  • Object

    This function is used to get the parameter value of WDR.

  • Syntax

    MI_S32 MI_ISP_IQ_GetWDR(MI_U32 Channel, MI_ISP_IQ_WDR_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of WDR.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of WDR parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.43. MI_ISP_IQ_SetDynamicDP

  • Object

    This function is used to set the parameter value of dynamic dead-pixel compensation.

  • Syntax

    MI_S32 MI_ISP_IQ_SetDynamicDP(MI_U32 Channel, MI_ISP_IQ_DYNAMIC_DP_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of dynamic dead-pixel compensation.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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 File: libmi_isp.so


2.44. MI_ISP_IQ_GetDynamicDP

  • Object

    This function is used to get the parameter value of dynamic dead-pixel compensation.

  • Syntax

    MI_S32 MI_ISP_IQ_GetDynamicDP(MI_U32 Channel, MI_ISP_IQ_DYNAMIC_DP_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of dynamic dead-pixel compensation.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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 File: libmi_isp.so


2.45. MI_ISP_IQ_SetDynamicDP_CLUSTER

  • Object

    This function is used to set the parameter value of dynamic compensation for dead-pixel cluster.

  • Syntax

    MI_S32 MI_ISP_IQ_SetDynamicDP_CLUSTER(MI_U32 Channel, MI_ISP_IQ_DYNAMIC_DP_CLUSTER_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of dynamic compensation for dead-pixel cluster.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the parameter value of dynamic compensation for dead-pixel cluster.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.46. MI_ISP_IQ_GetDynamicDP_CLUSTER

  • Object

    This function is used to get the parameter value of dynamic compensation for dead-pixel cluster.

  • Syntax

    MI_S32 MI_ISP_IQ_GetDynamicDP_CLUSTER(MI_U32 Channel, MI_ISP_IQ_DYNAMIC_DP_CLUSTER_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of dynamic compensation for dead-pixel cluster.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the parameter value of dynamic compensation for dead-pixel cluster.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.47. MI_ISP_IQ_SetHSV

  • Object

    This function is used to set the value of HSV parameter. You can use this function to do local hue rotation and saturation adjustment.

  • Syntax

    MI_S32 MI_ISP_IQ_SetHSV(MI_U32 Channel, MI_ISP_IQ_HSV_TYPE_t *data);
    
  • Description

    Call this function to set the value of HSV parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of HSV parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.48. MI_ISP_IQ_GetHSV

  • Object

    This function is used to get the value of HSV parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_GetHSV(MI_U32 Channel, MI_ISP_IQ_HSV_TYPE_t *data);
    
  • Description

    Call this function to get the value of HSV parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of HSV parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.49. MI_ISP_IQ_SetRGBIR

  • Object

    This function is used to set the value of RGBIR parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_SetRGBIR(MI_U32 Channel, MI_ISP_IQ_RGBIR_TYPE_t *data);
    
  • Description

    Call this function to set the value of RGBIR parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of RGBIR parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.50. MI_ISP_IQ_GetRGBIR

  • Object

    This function is used to get the value of RGBIR parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_GetRGBIR(MI_U32 Channel, MI_ISP_IQ_RGBIR_TYPE_t *data);
    
  • Description

    Call this function to get the value of RGBIR parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of RGBIR parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.51. MI_ISP_IQ_SetDEMOSAIC

  • Object

    This function is used to set the value of demosaic parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_SetDEMOSAIC(MI_U32 Channel, MI_ISP_IQ_DEMOSAIC_TYPE_t *data);
    
  • Description

    Call this function to set the value of demosaic parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of demosaic parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.52. MI_ISP_IQ_GetDEMOSAIC

  • Object

    This function is used to get the value of demosaic parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_GetDEMOSAIC(MI_U32 Channel, MI_ISP_IQ_DEMOSAIC_TYPE_t *data);
    
  • Description

    Call this function to get the value of demosaic parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of demosaic parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.53. MI_ISP_IQ_SetR2Y

  • Object

    This function is used to set the parameter value of color transition.

  • Syntax

    MI_S32 MI_ISP_IQ_SetR2Y(MI_U32 Channel, MI_ISP_IQ_R2Y_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of color transition.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of color transition parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.54. MI_ISP_IQ_GetR2Y

  • Object

    This function is used to get the parameter value of color transition.

  • Syntax

    MI_S32 MI_ISP_IQ_GetR2Y(MI_U32 Channel, MI_ISP_IQ_R2Y_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of color transition.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of color transition parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.55. MI_ISP_IQ_SetCOLORTRANS

  • Object

    This function is used to set the parameter value of color transition.

  • Syntax

    MI_S32 MI_ISP_IQ_SetCOLORTRANS(MI_U32 Channel, MI_ISP_IQ_COLORTRANS_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of color transition.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of color transition parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.56. MI_ISP_IQ_GetCOLORTRANS

  • Object

    This function is used to get the parameter value of color transition.

  • Syntax

    MI_S32 MI_ISP_IQ_GetCOLORTRANS(MI_U32 Channel, MI_ISP_IQ_COLORTRANS_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of color transition.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of color transition parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.57. MI_ISP_IQ_SetHDR

  • Object

    This function is used to set the value of High Dynamic Range (HDR) parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_SetHDR(MI_U32 Channel, MI_ISP_IQ_HDR_TYPE_t *data);
    
  • Description

    Call this function to set the value of HDR parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of HDR parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.58. MI_ISP_IQ_GetHDR

  • Object

    This function is used to get the value of HDR parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_GetHDR(MI_U32 Channel, MI_ISP_IQ_HDR_TYPE_t *data);
    
  • Description

    Call this function to get the value of HDR parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of HDR parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.59. MI_ISP_IQ_SetLSC

  • Object

    This function is used to set the value of LSC parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_SetLSC(MI_U32 Channel, MI_ISP_IQ_LSC_TYPE_t *data);
    
  • Description

    Call this function to set the value of LSC parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of LSC parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.60. MI_ISP_IQ_GetLSC

  • Object

    This function is used to get the value of LSC parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_GetLSC(MI_U32 Channel, MI_ISP_IQ_LSC_TYPE_t *data);
    
  • Description

    Call this function to get the value of LSC parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of LSC parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.61. MI_ISP_IQ_SetLSC_CTRL

  • Object

    This function is used to set the value of LSC CTRL parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_SetLSC_CTRL(MI_U32 Channel, MI_ISP_IQ_LSC_CTRL_TYPE_t *data);
    
  • Description

    Call this function to set the value of LSC CTRL parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of LSC CTRL parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.62. MI_ISP_IQ_GetLSC_CTRL

  • Object

    This function is used to get the value of LSC CTRL parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_GetLSC_CTRL(MI_U32 Channel, MI_ISP_IQ_LSC_CTRL_TYPE_t *data);
    
  • Description

    Call this function to get the value of LSC CTRL parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of LSC CTRL parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.63. MI_ISP_IQ_SetALSC

  • Object

    This function is used to set the value of ALSC parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_SetALSC(MI_U32 Channel, MI_ISP_IQ_ALSC_TYPE_t *data);
    
  • Description

    Call this function to set the value of ALSC parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of ALSC parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.64. MI_ISP_IQ_GetALSC

  • Object

    This function is used to get the value of ALSC parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_GetALSC(MI_U32 Channel, MI_ISP_IQ_ALSC_TYPE_t *data);
    
  • Description

    Call this function to get the value of ALSC parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of ALSC parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.65. MI_ISP_IQ_SetALSC_CTRL

  • Object

    This function is used to set the value of ALSC CTRL parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_SetALSC_CTRL(MI_U32 Channel, MI_ISP_IQ_ALSC_CTRL_TYPE_t *data);
    
  • Description

    Call this function to set the value of ALSC CTRL parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of ALSC CTRL parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.66. MI_ISP_IQ_GetALSC_CTRL

  • Object

    This function is used to get the value of ALSC CTRL parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_GetALSC_CTRL(MI_U32 Channel, MI_ISP_IQ_ALSC_CTRL_TYPE_t *data);
    
  • Description

    Call this function to get the value of ALSC CTRL parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of ALSC CTRL parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.67. MI_ISP_IQ_SetIQMode

  • Object

    This function is used to set the parameter value of IQ mode. Currently only Day mode and Night Mode under RGBIR night view scenario are supported.

  • Syntax

    MI_S32 MI_ISP_IQ_SetIQMode(MI_U32 Channel, MI_ISP_IQ_PARAM_MODE_e *data);
    
  • Description

    Call this function to set the parameter value of IQ mode.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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 File: libmi_isp.so


2.68. MI_ISP_IQ_GetIQMode

  • Object

    This function is used to get the parameter value of IQ mode. Currently only Day mode and Night Mode under RGBIR night view scenario are supported.

  • Syntax

    MI_S32 MI_ISP_IQ_GetIQMode(MI_U32 Channel, MI_ISP_IQ_PARAM_MODE_e *data);
    
  • Description

    Call this function to get the parameter value of IQ mode.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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 File: libmi_isp.so


2.69. MI_ISP_IQ_SetAPIBypassMode

  • Object

    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 Channel, MI_ISP_API_BYPASS_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of the ISP bypass mode corresponding to IP module.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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 File: libmi_isp.so


2.70. MI_ISP_IQ_GetAPIBypassMode

  • Object

    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 Channel, MI_ISP_API_BYPASS_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of the ISP bypass mode corresponding to IP module.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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 File: libmi_isp.so


2.71. MI_ISP_IQ_QueryCCMInfo

  • Object

    This function is used to get the CCM parameter value of current color temperature.

  • Syntax

    MI_S32 MI_ISP_IQ_QueryCCMInfo(MI_U32 Channel, MI_ISP_IQ_CCM_INFO_TYPE_t *data);
    
  • Description

    Call this function to get the CCM parameter value of current color temperature.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the CCM parameter value of current color temperature.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.72. MI_ISP_IQ_SetDayNightDetection

  • Object

    This function is used to set the parameter value of Day/Night detection.

  • Syntax

    MI_S32 MI_ISP_IQ_ SetDayNightDetection(MI_U32 Channel, MI_ISP_DAYNIGHT_DETECTION_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of Day/Night detection.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to Day/Night detection parameter value.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp.h

    • Library File: libmi_isp.so


2.73. MI_ISP_IQ_GetDayNightDetection

  • Object

    This function is used to get the parameter value of Day/Night detection.

  • Syntax

    MI_S32 MI_ISP_IQ_GetDayNightDetection(MI_U32 Channel, MI_ISP_DAYNIGHT_DETECTION_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of Day/Night detection.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to Day/Night detection parameter value.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp.h

    • Library File: libmi_isp.so


2.74. MI_ISP_IQ_QueryDayNightInfo

  • Object

    This function is used to get Day/Night detection result.

  • Syntax

    MI_ISP_IQ_QueryDayNightInfo(MI_U32 Channel, MI_ISP_DAYNIGHT_INFO_TYPE_t *data);
    
  • Description

    Call this function to get Day/Night detection result. Please note that this API shows the result only and you should still take actions accordingly, such as loading Day/Night API bin file or controlling IR LED, when necessary.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to Day/Night detection result.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp.h

    • Library File: libmi_isp.so


2.75. MI_ISP_IQ_SetNRLuma_Adv

  • Object

    This function is used to set the value of NRLuma_Adv parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_SetNRLuma_Adv (MI_U32 Channel, MI_ISP_IQ_NRLuma_Adv_TYPE_t *data);
    
  • Description

    Call this function to set the value of NRLuma_Adv parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of NRLuma_Adv parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.76. MI_ISP_IQ_GetNRLuma_Adv

  • Object

    This function is used to get the value of NRLuma_Adv parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_GetNRLuma_Adv (MI_U32 Channel, MI_ISP_IQ_NRLuma_Adv_TYPE_t *data);
    
  • Description

    Call this function to get the value of NRLuma_Adv parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of NRLuma_Adv parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.77. MI_ISP_IQ_SetNRChroma_Adv

  • Object

    This function is used to set the value of NRChroma_Adv parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_SetNRChroma_Adv (MI_U32 Channel, MI_ISP_IQ_NRChroma_Adv_TYPE_t *data);
    
  • Description

    Call this function to set the value of NRChroma_Adv parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of NRChroma_Adv parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.78. MI_ISP_IQ_GetNRChroma_Adv

  • Object

    This function is used to get the value of NRChroma_Adv parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_GetNRChroma_Adv(MI_U32 Channel, MI_ISP_IQ_NRChroma_Adv_TYPE_t *data);
    
  • Description

    Call this function to get the value of NRChroma_Adv parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of NRChroma_Adv parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.79. MI_ISP_IQ_SetPFC

  • Object

    This function is used to set the value of PFC parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_SetPFC (MI_U32 Channel, MI_ISP_IQ_PFC_TYPE_t *data);
    
  • Description

    Call this function to set the value of PFC parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of PFC parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.80. MI_ISP_IQ_GetPFC

  • Object

    This function is used to get the value of PFC parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_GetPFC (MI_U32 Channel, MI_ISP_IQ_PFC_TYPE_t *data);
    
  • Description

    Call this function to get the value of PFC parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of PFC parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.81. MI_ISP_IQ_SetPFC_EX

  • Object

    This function is used to set the value of PFC_EX parameters, including parameters that are less adjusted or unadjusted by ISO.

  • Syntax

    MI_S32 MI_ISP_IQ_SetPFC_EX (MI_U32 Channel, MI_ISP_IQ_PFC_EX_TYPE_t *data);
    
  • Description

    Call this function to set the value of PFC_EX parameters.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of PFC_EX parameters.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.82. MI_ISP_IQ_GetPFC_EX

  • Object

    This function is used to get the value of PFC_EX parameters, including parameters that are less adjusted or unadjusted by ISO.

  • Syntax

    MI_S32 MI_ISP_IQ_GetPFC_EX (MI_U32 Channel, MI_ISP_IQ_PFC_EX_TYPE_t *data);
    
  • Description

    Call this function to get the value of PFC_EX parameters.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of PFC_EX parameters.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.83. MI_ISP_IQ_SetHDR_EX

  • Object

    This function is used to set the value of HDR_EX parameters, including parameters that are less adjusted or unadjusted by ISO.

  • Syntax

    MI_S32 MI_ISP_IQ_SetHDR_EX (MI_U32 Channel, MI_ISP_IQ_HDR_EX_TYPE_t *data);
    
  • Description

    Call this function to set the value of HDR_EX parameters.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of HDR_EX parameters.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.84. MI_ISP_IQ_GetHDR_EX

  • Object

    This function is used to get the value of HDR_EX parameters, including parameters that are less adjusted or unadjusted by ISO.

  • Syntax

    MI_S32 MI_ISP_IQ_GetHDR_EX (MI_U32 Channel, MI_ISP_IQ_HDR_EX_TYPE_t *data);
    
  • Description

    Call this function to get the value of HDR_EX parameters.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of HDR_EX parameters.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.85. MI_ISP_IQ_SetSHP_EX

  • Object

    This function is used to set the value of SHP_EX (Sharpness_EX) parameters, including parameters that are less adjusted or unadjusted by ISO.

  • Syntax

    MI_S32 MI_ISP_IQ_SetSHP_EX (MI_U32 Channel, MI_ISP_IQ_SHP_EX_TYPE_t *data);
    
  • Description

    Call this function to set the value of SHP_EX parameters.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of SHP_EX parameters.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.86. MI_ISP_IQ_GetSHP_EX

  • Object

    This function is used to get the value of SHP_EX (Sharpness_EX) parameters, including parameters that are less adjusted or unadjusted by ISO.

  • Syntax

    MI_S32 MI_ISP_IQ_GetSHP_EX (MI_U32 Channel, MI_ISP_IQ_SHP_EX_TYPE_t *data);
    
  • Description

    Call this function to get the value of SHP_EX parameters.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of SHP_EX parameters.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.87. MI_ISP_IQ_SetNR3D_EX

  • Object

    This function is used to set the value of NR3D_EX parameters, including parameters that are less adjusted or unadjusted by ISO.

  • Syntax

    MI_S32 MI_ISP_IQ_SetNR3D_EX (MI_U32 Channel, MI_ISP_IQ_NR3D_EX_TYPE_t *data);
    
  • Description

    Call this function to set the value of NR3D_EX parameters.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of NR3D_EX parameters.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.88. MI_ISP_IQ_GetNR3D_EX

  • Object

    This function is used to get the value of NR3D_EX parameters, including parameters that are less adjusted or unadjusted by ISO.

  • Syntax

    MI_S32 MI_ISP_IQ_GetNR3D_EX (MI_U32 Channel, MI_ISP_IQ_NR3D_EX_TYPE_t *data);
    
  • Description

    Call this function to get the value of NR3D_EX parameters.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of NR3D_EX parameters.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.89. MI_ISP_IQ_SetDUMMY

  • Object

    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 Channel, MI_ISP_IQ_DUMMY_TYPE_t *data);
    
  • Description

    Call this function to set the value of DUMMY parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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 File: libmi_isp.so


2.90. MI_ISP_IQ_GetDUMMY

  • Object

    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 Channel, MI_ISP_IQ_DUMMY_TYPE_t *data);
    
  • Description

    Call this function to get the value of DUMMY parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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 File: libmi_isp.so


2.91. MI_ISP_IQ_SetDUMMY_EX

  • Object

    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_SetDUMMY_EX (MI_U32 Channel, MI_ISP_IQ_DUMMY_EX_TYPE_t *data);
    
  • Description

    Call this function to set the value of DUMMY_EX parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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 File: libmi_isp.so


2.92. MI_ISP_IQ_GetDUMMY_EX

  • Object

    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_GetDUMMY_EX (MI_U32 Channel, MI_ISP_IQ_DUMMY_EX_TYPE_t *data);
    
  • Description

    Call this function to get the value of DUMMY_EX parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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 File: libmi_isp.so


2.93. MI_ISP_IQ_SetWDRCurveFull

  • Object

    This function is used to set the value of WDRCurveFull parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_SetWDRCurveFull (MI_U32 Channel, MI_ISP_IQ_WDRCurveFull_TYPE_t *data);
    
  • Description

    Call this function to set the value of WDRCurveFull parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of WDRCurveFull parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.94. MI_ISP_IQ_GetWDRCurveFull

  • Object

    This function is used to get the value of WDRCurveFull parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_GetWDRCurveFull (MI_U32 Channel, MI_ISP_IQ_WDRCurveFull_TYPE_t *data);
    
  • Description

    Call this function to get the value of WDRCurveFull parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of WDRCurveFull parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.95. MI_ISP_IQ_SetDefog

  • Object

    This function is used to set the value of Defog parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_SetDefog (MI_U32 Channel, MI_ISP_IQ_DEFOG_TYPE_t *data);
    
  • Description

    Call this function to set the value of Defog parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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 File: libmi_isp.so


2.96. MI_ISP_IQ_GetDefog

  • Object

    This function is used to get the value of Defog parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_GetDefog (MI_U32 Channel, MI_ISP_IQ_Defog_TYPE_t *data);
    
  • Description

    Call this function to get the value of Defog parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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 File: libmi_isp.so


2.97. MI_ISP_IQ_SetTEMP

  • Object

    This function is used to set the value of Temperature parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_SetTEMP (MI_U32 Channel, MI_ISP_IQ_TEMP_TYPE_t *data);
    
  • Description

    Call this function to set the value of Temperature parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of Temperature parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.98. MI_ISP_IQ_GetTEMP

  • Object

    This function is used to get the value of Temperature parameter.

  • Syntax

    MI_S32 MI_ISP_IQ_GetTEMP (MI_U32 Channel, MI_ISP_IQ_TEMP_TYPE_t *data);
    
  • Description

    Call this function to get the value of Temperature parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of Temperature parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.99. MI_ISP_IQ_GetTEMP_INFO

  • Object

    This function is used to get the parameter value of Temperature Info.

  • Syntax

    MI_S32 MI_ISP_IQ_GetTEMP_INFO (MI_U32 Channel, MI_ISP_IQ_TEMP_INFO_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of Temperature Info.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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 File: libmi_isp.so


2.100. MI_ISP_AE_QueryExposureInfo

  • Object

    This function is used to get the parameter value of auto exposure.

  • Syntax

    MI_S32 MI_ISP_AE_QueryExposureInfo(MI_U32 Channel, MI_ISP_AE_EXPO_INFO_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of auto exposure.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of auto exposure parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.101. MI_ISP_AE_GetHistoWghtY

  • Object

    This function is used to get the brightness of current image and statistical data of histogram.

  • Syntax

    MI_S32 MI_ISP_AE_GetHistoWghtY(MI_U32 Channel, MI_ISP_AE_HIST_WEIGHT_Y_TYPE_t *data);
    
  • Description

    Call this function to get the brightness of current image and statistical data of histogram.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the the brightness of current image and statistical data of histogram.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.102. MI_ISP_AE_SetEVComp

  • Object

    This function is used to set the parameter value of exposure compensation.

  • Syntax

    MI_S32 MI_ISP_AE_SetEVComp(MI_U32 Channel, MI_ISP_AE_EV_COMP_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of exposure compensation.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of exposure compensation parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.103. MI_ISP_AE_GetEVComp

  • Object

    This function is used to get the parameter value of exposure compensation.

  • Syntax

    MI_S32 MI_ISP_AE_GetEVComp(MI_U32 Channel, MI_ISP_AE_EV_COMP_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of exposure compensation.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of exposure compensation parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.104. MI_ISP_AE_SetExpoMode

  • Object

    This function is used to set the parameter value of exposure modes.

  • Syntax

    MI_S32 MI_ISP_AE_SetExpoMode(MI_U32 Channel, MI_ISP_AE_MODE_TYPE_e *data);
    
  • Description

    Call this function to set the parameter value of exposure modes.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the parameter value of exposure modes.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.105. MI_ISP_AE_GetExpoMode

  • Object

    This function is used to get the parameter value of exposure modes.

  • Syntax

    MI_S32 MI_ISP_AE_GetExpoMode(MI_U32 Channel, MI_ISP_AE_MODE_TYPE_e *data);
    
  • Description

    Call this function to get the parameter value of exposure modes.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the parameter value of exposure modes.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.106. MI_ISP_AE_SetManualExpo

  • Object

    This function is used to set the parameter value of manual exposure.

  • Syntax

    MI_S32 MI_ISP_AE_SetManualExpo(MI_U32 Channel, MI_ISP_AE_EXPO_VALUE_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of manual exposure.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.107. MI_ISP_AE_GetManualExpo

  • Object

    This function is used to get the parameter value of manual exposure.

  • Syntax

    MI_S32 MI_ISP_AE_GetManualExpo(MI_U32 Channel, MI_ISP_AE_EXPO_VALUE_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of manual exposure.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.108. MI_ISP_AE_SetManualShortExpo

  • Object

    This function is used to set the parameter value of short manual exposure.

  • Syntax

    MI_S32 MI_ISP_AE_SetManualShortExpo(MI_U32 Channel, MI_ISP_AE_EXPO_VALUE_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of short manual exposure.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.109. MI_ISP_AE_GetManualShortExpo

  • Object

    This function is used to get the parameter value of short manual exposure.

  • Syntax

    MI_S32 MI_ISP_AE_GetManualShortExpo(MI_U32 Channel, MI_ISP_AE_EXPO_VALUE_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of short manual exposure.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.110. MI_ISP_AE_SetState

  • Object

    This function is used to set the parameter value of auto exposure operation status.

  • Syntax

    MI_S32 MI_ISP_AE_SetState(MI_U32 Channel, MI_ISP_SM_STATE_TYPE_e *data);
    
  • Description

    Call this function to set the parameter value of auto exposure operation status.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of auto exposure operation parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.111. MI_ISP_AE_GetState

  • Object

    This function is used to get the parameter value of auto exposure operation status.

  • Syntax

    MI_S32 MI_ISP_AE_GetState(MI_U32 Channel, MI_ISP_SM_STATE_TYPE_e *data);
    
  • Description

    Call this function to get the parameter value of auto exposure operation status.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of auto exposure operation parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.112. MI_ISP_AE_SetTarget

  • Object

    This function is used to set the parameter value of exposure target in screen under different ambient brightness value (BV).

  • Syntax

    MI_S32 MI_ISP_AE_SetTarget(MI_U32 Channel, MI_ISP_AE_INTP_LUT_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of exposure target.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.113. MI_ISP_AE_GetTarget

  • Object

    This function is used to get the parameter value of exposure target in screen under different ambient brightness value (BV).

  • Syntax

    MI_S32 MI_ISP_AE_GetTarget(MI_U32 Channel, MI_ISP_AE_INTP_LUT_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of exposure target.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.114. MI_ISP_AE_SetConverge

  • Object

    This function is used to set the parameter value of exposure convergence.

  • Syntax

    MI_S32 MI_ISP_AE_SetConverge(MI_U32 Channel, MI_ISP_AE_CONV_CONDITON_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of exposure convergence.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.115. MI_ISP_AE_GetConverge

  • Object

    This function is used to get the parameter value of exposure convergence.

  • Syntax

    MI_S32 MI_ISP_AE_GetConverge(MI_U32 Channel, MI_ISP_AE_CONV_CONDITON_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of exposure convergence.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.116. MI_ISP_AE_SetExposureLimit

  • Object

    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 Channel, MI_ISP_AE_EXPO_LIMIT_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value for the range limit of auto exposure.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.117. MI_ISP_AE_GetExposureLimit

  • Object

    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 Channel, MI_ISP_AE_EXPO_LIMIT_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value for the range limit of auto exposure.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.118. MI_ISP_AE_SetPlainLongExpoTable

  • Object

    This function is used to set the parameter value of the exposure table for long exposure.

  • Syntax

    MI_S32 MI_ISP_AE_SetPlainLongExpoTable(MI_U32 Channel, MI_ISP_AE_EXPO_TABLE_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of the exposure table for long exposure.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the parameter value of exposure table for long exposure.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.119. MI_ISP_AE_GetPlainLongExpoTable

  • Object

    This function is used to get the parameter value of the exposure table for long exposure.

  • Syntax

    MI_S32 MI_ISP_AE_GetPlainLongExpoTable(MI_U32 Channel, MI_ISP_AE_EXPO_TABLE_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of the exposure table for long exposure.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the parameter value of exposure table for long exposure.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.120. MI_ISP_AE_SetPlainShortExpoTable

  • Object

    This function is used to set the parameter value of the exposure table for short exposure.

  • Syntax

    MI_S32 MI_ISP_AE_SetPlainShortExpoTable(MI_U32 Channel, MI_ISP_AE_EXPO_TABLE_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of the exposure table for short exposure.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the parameter value of exposure table for short exposure.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.121. MI_ISP_AE_GetPlainShortExpoTable

  • Object

    This function is used to get the parameter value of the exposure table for short exposure.

  • Syntax

    MI_S32 MI_ISP_AE_GetPlainShortExpoTable(MI_U32 Channel, MI_ISP_AE_EXPO_TABLE_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of the exposure table for short exposure.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the parameter value of exposure table for short exposure.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.122. MI_ISP_AE_SetWinWgtType

  • Object

    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 Channel, MI_ISP_AE_WIN_WEIGHT_MODE_TYPE_e *data);
    
  • Description

    Call this function to set the parameter value for the type of exposure weight table.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.123. MI_ISP_AE_GetWinWgtType

  • Object

    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 Channel, MI_ISP_AE_WIN_WEIGHT_MODE_TYPE_e *data);
    
  • Description

    Call this function to get the parameter value for the type of exposure weight table.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.124. MI_ISP_AE_SetWinWgt

  • Object

    This function is used to set the parameter value of exposure weight table.

  • Syntax

    MI_S32 MI_ISP_AE_SetWinWgt(MI_U32 Channel, MI_ISP_AE_WIN_WEIGHT_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of exposure weight table.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.125. MI_ISP_AE_GetWinWgt

  • Object

    This function is used to get the parameter value of exposure weight table.

  • Syntax

    MI_S32 MI_ISP_AE_GetWinWgt(MI_U32 Channel, MI_ISP_AE_WIN_WEIGHT_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of exposure weight table.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.126. MI_ISP_AE_SetFlicker

  • Object

    This function is used to set the value of anti-flicker parameter.

  • Syntax

    MI_S32 MI_ISP_AE_SetFlicker(MI_U32 Channel, MI_ISP_AE_FLICKER_TYPE_e *data);
    
  • Description

    Call this function to set the value of anti-flicker parameter. 50Hz and 60Hz are supported.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so

  • Note

    Supports anti-flicker at 50Hz and 60Hz.


2.127. MI_ISP_AE_GetFlicker

  • Object

    This function is used to get the value of anti-flicker parameter.

  • Syntax

    MI_S32 MI_ISP_AE_GetFlicker(MI_U32 Channel, MI_ISP_AE_FLICKER_TYPE_e *data);
    
  • Description

    Call this function to get the value of anti-flicker parameter. 50Hz and 60Hz are supported.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.128. MI_ISP_AE_SetFlickerEX

  • Object

    This function is used to set the parameter value of anti-flicker frequency detection.

  • Syntax

    MI_S32 MI_ISP_AE_SetFlickerEX(MI_U32 Channel, MI_ISP_AE_FLICKER_EX_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of anti-flicker frequency detection. 50Hz and 60Hz are supported.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so

  • Note

    Supports anti-flicker frequency detection at 50Hz and 60Hz.


2.129. MI_ISP_AE_GetFlickerEX

  • Object

    This function is used to get the parameter value of anti-flicker frequency detection.

  • Syntax

    MI_S32 MI_ISP_AE_GetFlickerEX(MI_U32 Channel, MI_ISP_AE_FLICKER_EX_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of anti-flicker frequency detection. 50Hz and 60Hz are supported.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.130. MI_ISP_AE_QueryFlickerInfo

  • Object

    This function is used to get information about anti-flicker parameter values.

  • Syntax

    MI_S32 MI_ISP_AE_QueryFlickerInfo(MI_U32 Channel, MI_ISP_AE_FLICKER_EX_INFO_TYPE_t *data);
    
  • Description

    Call this function to get information about anti-flicker frequency detection parameter values, including the effective state of anti-flicker, the anti-flicker mode (50Hz/60Hz), and effective score of anti-flicker mode.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.131. MI_ISP_AE_SetStrategy

  • Object

    This function is used to set the parameter value of exposure strategy.

  • Syntax

    MI_S32 MI_ISP_AE_SetStrategy(MI_U32 Channel, MI_ISP_AE_STRATEGY_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of exposure strategy.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of exposure strategy parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.132. MI_ISP_AE_GetStrategy

  • Object

    This function is used to get the parameter value of exposure strategy.

  • Syntax

    MI_S32 MI_ISP_AE_GetStrategy(MI_U32 Channel, MI_ISP_AE_STRATEGY_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of exposure strategy.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of exposure strategy parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.133. MI_ISP_AE_SetStrategyEX

  • Object

    This function is used to set the parameter value of exposure strategy.

  • Syntax

    MI_S32 MI_ISP_AE_SetStrategyEX(MI_U32 Channel, MI_ISP_AE_STRATEGY_EX_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of exposure strategy

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of exposure strategy parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp.h

    • Library File: libmi_isp.so


2.134. MI_ISP_AE_GetStrategyEX

  • Object

    This function is used to get the parameter value of exposure strategy.

  • Syntax

    MI_S32 MI_ISP_AE_GetStrategyEX(MI_U32 Channel, MI_ISP_AE_STRATEGY_EX_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of exposure strategy.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of exposure strategy parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp.h

    • Library File: libmi_isp.so


2.135. MI_ISP_AE_QueryStrategyEXInfo

  • Object

    This function is used to get the information about exposure strategy.

  • Syntax

    MI_S32 MI_ISP_AE_QueryStrategyEXInfo(MI_U32 Channel, MI_ISP_AE_STRATEGY_EX_INFO_TYPE_t *data);
    
  • Description

    Call this function to get the information about exposure strategy.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the information about exposure strategy.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp.h

    • Library File: libmi_isp.so


2.136. MI_ISP_AE_SetRGBIRAE

  • Object

    This function is used to set the parameter value of exposure strategy for RGBIR mode.

  • Syntax

    MI_S32 MI_ISP_AE_SetRGBIRAE(MI_U32 Channel, MI_ISP_AE_RGBIR_AE_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of exposure strategy for RGBIR mode.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of exposure strategy parameters in RGBIR mode.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.137. MI_ISP_AE_GetRGBIRAE

  • Object

    This function is used to get the parameter value of exposure strategy for RGBIR mode.

  • Syntax

    MI_S32 MI_ISP_AE_GetRGBIRAE(MI_U32 Channel, MI_ISP_AE_RGBIR_AE_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of exposure strategy for RGBIR mode.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of exposure strategy parameters in RGBIR mode.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.138. MI_ISP_AE_SetHDR

  • Object

    This function is used to set the parameter value of exposure strategy in HDR mode.

  • Syntax

    MI_S32 MI_ISP_AE_SetHDR(MI_U32 Channel, MI_ISP_AE_HDR_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of exposure strategy in HDR mode.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of exposure strategy parameters in HDR mode.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.139. MI_ISP_AE_GetHDR

  • Object

    This function is used to get the parameter value of exposure strategy in HDR mode.

  • Syntax

    MI_S32 MI_ISP_AE_GetHDR(MI_U32 Channel, MI_ISP_AE_HDR_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of exposure strategy in HDR mode.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of exposure strategy parameters in HDR mode.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.140. MI_ISP_AE_SetStabilizer

  • Object

    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 Channel, MI_ISP_AE_STABILIZER_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of stabilizer strategy.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of stabilizer strategy parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.141. MI_ISP_AE_GetStabilizer

  • Object

    This function is used to get the parameter value of stabilizer strategy.

  • Syntax

    MI_S32 MI_ISP_AE_GetStabilizer(MI_U32 Channel, MI_ISP_AE_STABILIZER_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of stabilizer strategy.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of stabilizer strategy parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.142. MI_ISP_AWB_QueryInfo

  • Object

    This function is used to get information about the parameter value of auto white balance.

  • Syntax

    MI_S32 MI_ISP_AWB_QueryInfo(MI_U32 Channel, MI_ISP_AWB_QUERY_INFO_TYPE_t *data);
    
  • Description

    Call this function to get information about the parameter value of auto white balance.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of auto white balance parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.143. MI_ISP_AWB_GetCTStats

  • Object

    This function is used to get the statistical value of auto white balance calibration.

  • Syntax

    MI_S32 MI_ISP_AWB_GetCTStats(MI_U32 Channel, MI_ISP_AWB_CT_STATISTICS_TYPE_t *data);
    
  • Description

    Call this function to get the statistical value of auto white balance calibration.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the statistical value of auto white balance calibration.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.144. MI_ISP_AWB_GetAwbHwAvgStats

  • Object

    This function is used to get the statistical value of auto white balance hardware.

  • Syntax

    MI_S32 MI_ISP_AWB_GetAwbHwAvgStats(MI_U32 Channel, MI_ISP_AWB_HW_STATISTICS_t *data);
    
  • Description

    Call this function to get the statistical value of auto white balance hardware.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the statistical value of auto white balance hardware.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp.h

    • Library File: libmi_isp.so


2.145. MI_ISP_AWB_SetAttr

  • Object

    This function is used to set the value of auto white balance attribute parameter.

  • Syntax

    MI_S32 MI_ISP_AWB_SetAttr(MI_U32 Channel, MI_ISP_AWB_ATTR_TYPE_t *data);
    
  • Description

    Call this function to set the value of auto white balance attribute parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of auto white balance attribute parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.146. MI_ISP_AWB_GetAttr

  • Object

    This function is used to get the value of auto white balance attribute parameter.

  • Syntax

    MI_S32 MI_ISP_AWB_GetAttr(MI_U32 Channel, MI_ISP_AWB_ATTR_TYPE_t *data);
    
  • Description

    Call this function to get the value of auto white balance attribute parameter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of auto white balance attribute parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.147. MI_ISP_AWB_SetAttrEx

  • Object

    This function is used to set the parameter value of the extended attribute of auto white balance.

  • Syntax

    MI_S32 MI_ISP_AWB_SetAttrEx(MI_U32 Channel, MI_ISP_AWB_ATTR_EX_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of the extended attribute of auto white balance.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of the extended attribute parameter of auto white balance.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so

  • Note

    The parameter set in this function takes effect only when “eAlgType = SS_AWB_ALG_ADVANCE” in AWB_ATTR_PARAM_t.


2.148. MI_ISP_AWB_GetAttrEx

  • Object

    This function is used to get the parameter value of the extended attribute of auto white balance.

  • Syntax

    MI_S32 MI_ISP_AWB_GetAttrEx(MI_U32 Channel, MI_ISP_AWB_ATTR_EX_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of the extended attribute of auto white balance.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of the extended attribute parameter of auto white balance.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.149. MI_ISP_AWB_SetMultiLSAttr

  • Object

    This function is used to set the parameter value of auto white balance mixed-light offset correction.

  • Syntax

    MI_S32 MI_ISP_AWB_SetMultiLSAttr(MI_U32 Channel, MI_ISP_AWB_MULTILS_LS_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of auto white balance mixed-light offset correction.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of auto white balance mixed-light offset correction parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so

  • Note

    The parameter set in this function takes effect only when “bWpWeightEnable = 1” in AWB_ATTR_PARAM_t.


2.150. MI_ISP_AWB_GetMultiLSAttr

  • Object

    This function is used to get the parameter value of auto white balance mixed-light offset correction.

  • Syntax

    MI_S32 MI_ISP_AWB_GetMultiLSAttr(MI_U32 Channel, MI_ISP_AWB_MULTILS_LS_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of auto white balance mixed-light offset correction.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the value of auto white balance mixed-light offset correction parameter.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.151. MI_ISP_AWB_SetCTCaliAttr

  • Object

    This function is used to set the parameter value of auto white balance calibration.

  • Syntax

    MI_S32 MI_ISP_AWB_SetCTCaliAttr(MI_U32 Channel, MI_ISP_AWB_CT_CALI_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of auto white balance calibration.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the parameter value of auto white balance calibration.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.152. MI_ISP_AWB_GetCTCaliAttr

  • Object

    This function is used to get the parameter value of auto white balance calibration.

  • Syntax

    MI_S32 MI_ISP_AWB_GetCTCaliAttr(MI_U32 Channel, MI_ISP_AWB_CT_CALI_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of auto white balance calibration.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the parameter value of auto white balance calibration.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.153. MI_ISP_AWB_GetCurCTCaliAttr

  • Object

    This function is used to get color temperature range data after auto white balance applies calibration data.

  • Syntax

    MI_S32 MI_ISP_AWB_GetCurCTCaliAttr(MI_U32 Channel, MI_ISP_AWB_CUR_CT_CALI_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of auto white balance calibration.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the parameter value of auto white balance calibration.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.154. MI_ISP_AWB_SetCTMwbAttr

  • Object

    This function is used to select color temperature manually and apply it to the corresponding WB gain, effective only when CT Manual is chosen for AwbMode.

  • Syntax

    MI_S32 MI_ISP_AWB_SetCurCTMwbAttr(MI_U32 Channel, MI_ISP_AWB_CTMWB_PARAM_t *data);
    
  • Description

    Call this function to set color temperature settings for manual white balance.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the parameter value of auto white balance calibration.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.155. MI_ISP_AWB_GetCTMwbAttr

  • Object

    This function is used to get color temperature settings for manual white balance.

  • Syntax

    MI_S32 MI_ISP_AWB_GetCurCTMwbAttr(MI_U32 Channel, MI_ISP_AWB_CTMWB_PARAM_t *data);
    
  • Description

    Call this function to get color temperature settings for manual white balance.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the parameter value of auto white balance calibration.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.156. MI_ISP_AWB_SetStabilizer

  • Object

    When the environment is stable but AWB is continuously triggered, causing constant flickering of screen color, it is recommended that you enable this function to stabilize AWB changes.

  • Syntax

    MI_S32 MI_ISP_AWB_SetStabilizer(MI_U32 Channel, MI_ISP_AWB_STABILIZER_PARAM_t *data);
    
  • Description

    Call this function to set AWB stabilizer.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.157. MI_ISP_AWB_GetStabilizer

  • Object

    This function is used to get the setting of AWB stabilizer.

  • Syntax

    MI_S32 MI_ISP_AWB_GetStabilizer(MI_U32 Channel, MI_ISP_AWB_STABILIZER_PARAM_t *data);
    
  • Description

    Call this function to get the setting of AWB stabilizer.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.158. MI_ISP_AF_QueryInfo

  • Object

    This function is used to get AF parameter values.

  • Syntax

    MI_S32 MI_ISP_AF_QueryInfo(MI_U32 Channel, MI_ISP_AF_QUERY_INFO_TYPE_t *data);
    
  • Description

    Call this function to get AF parameter values.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.159. MI_ISP_AF_SetHWRoiMode

  • Object

    This function is used to set the mode of AF statistical value.

  • Syntax

    MI_S32 MI_ISP_AF_SetHWRoiMode(MI_U32 Channel, MI_ISP_AF_HW_ROI_MODE_TYPE_t *data);
    
  • Description

    Call this function to set the mode of AF statistical value.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the parameter value of AF ROI mode attribute.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.160. MI_ISP_AF_GetHWRoiMode

  • Object

    This function is used to get the mode of AF statistical value.

  • Syntax

    MI_S32 MI_ISP_AF_GetHWRoiMode(MI_U32 Channel, MI_ISP_AF_HW_ROI_MODE_TYPE_t *data);
    
  • Description

    Call this function to get the mode of AF statistical value.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the parameter value of AF ROI mode attribute.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.161. MI_ISP_AF_SetHWWin

  • Object

    This function is used to set AF win.

  • Syntax

    MI_S32 MI_ISP_AF_SetHWWin(MI_U32 Channel, MI_ISP_AF_HW_WIN_TYPE_t *data);
    
  • Description

    Call this function to set AF win.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *data Pointer to the parameter value of AF ROI mode attribute.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp_iq.h

    • Library File: libmi_isp.so


2.162. MI_ISP_AF_GetHWWin

  • Object

    This function is used to get AF win.

  • Syntax

    MI_S32 MI_ISP_AF_GetHWWin(MI_U32 Channel, MI_ISP_AF_HW_WIN_TYPE_t *data);
    
  • Description

    Call this function to get AF win.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.163. MI_ISP_AF_SetHWFilterAttr

  • Object

    This function is used to set the coefficients of AF filter.

  • Syntax

    MI_S32 MI_ISP_AF_SetHWFilterAttr(MI_U32 Channel, MI_ISP_AF_HW_FILTER_ATTR_TYPE_t *data);
    
  • Description

    Call this function to set the coefficients of AF filter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.164. MI_ISP_AF_GetHWFilterAttr

  • Object

    This function is used to get the coefficients of AF filter.

  • Syntax

    MI_S32 MI_ISP_AF_GetHWFilterAttr(MI_U32 Channel, MI_ISP_AF_HW_FILTER_ATTR_TYPE_t *data);
    
  • Description

    Call this function to get the coefficients of AF filter.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.165. MI_ISP_AF_SetHWFilterSq

  • Object

    This function is used to set the coefficients of AF filter square.

  • Syntax

    MI_S32 MI_ISP_AF_SetHWFilterSq(MI_U32 Channel, MI_ISP_AF_HW_FILTERSQ_TYPE_t *data);
    
  • Description

    Call this function to set the coefficients of AF filter square.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.166. MI_ISP_AF_GetHWFilterSq

  • Object

    This function is used to get the coefficients of AF filter square.

  • Syntax

    MI_S32 MI_ISP_AF_GetHWFilterSq(MI_U32 Channel, MI_ISP_AF_HW_FILTERSQ_TYPE_t *data);
    
  • Description

    Call this function to get the coefficients of AF filter square.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.167. MI_ISP_AF_SetAttr

  • Object

    This function is used to set the parameter value of AF attribute.

  • Syntax

    MI_S32 MI_ISP_AF_SetAttr(MI_U32 Channel, MI_ISP_AF_ATTR_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of AF attribute.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.168. MI_ISP_AF_GetAttr

  • Object

    This function is used to get the parameter value of AF attribute.

  • Syntax

    MI_S32 MI_ISP_AF_GetAttr(MI_U32 Channel, MI_ISP_AF_ATTR_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of AF attribute.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.169. MI_ISP_AF_SetMotor

  • Object

    This function is used to set the parameter value of AF Motor attribute.

  • Syntax

    MI_S32 MI_ISP_AF_SetMotor (MI_U32 Channel, MI_ISP_AF_MOTOR_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of AF Motor attribute.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.170. MI_ISP_AF_GetMotor

  • Object

    This function is used to get the parameter value of AF Motor attribute.

  • Syntax

    MI_S32 MI_ISP_AF_GetMotor (MI_U32 Channel, MI_ISP_AF_MOTOR_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of AF Motor attribute.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.171. MI_ISP_AF_SetAccWeight

  • Object

    This function is used to set the parameter value of AF Acc Weight attribute.

  • Syntax

    MI_S32 MI_ISP_AF_SetAccWeight (MI_U32 Channel, MI_ISP_AF_ACC_WEIGHT_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of AF Acc Weight attribute.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.172. MI_ISP_AF_GetAccWeight

  • Object

    This function is used to get the parameter value of AF Acc Weight attribute.

  • Syntax

    MI_S32 MI_ISP_AF_GetAttr(MI_U32 Channel, MI_ISP_AF_ACC_WEIGHT_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of AF Acc Weight attribute.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.173. MI_ISP_AF_SetOneShot

  • Object

    This function is used to set the parameter value of AF OneShot attribute.

  • Syntax

    MI_S32 MI_ISP_AF_SetOneShot (MI_U32 Channel, MI_ISP_AF_ONESHOT_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of AF OneShot attribute.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.174. MI_ISP_AF_GetOneShot

  • Object

    This function is used to get the parameter value of AF OneShot attribute.

  • Syntax

    MI_S32 MI_ISP_AF_GetAttr(MI_U32 Channel, MI_ISP_AF_ONESHOT_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of AF OneShot attribute.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.175. MI_ISP_AF_SetSceneChange

  • Object

    This function is used to set the parameter value of AF Scene Change attribute.

  • Syntax

    MI_S32 MI_ISP_AF_SetSceneChange(MI_U32 Channel, MI_ISP_AF_SCENE_CHANGE_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of AF Scene Change attribute.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.176. MI_ISP_AF_GetSceneChange

  • Object

    This function is used to get the parameter value of AF Scene Change attribute.

  • Syntax

    MI_S32 MI_ISP_AF_GetSceneChange(MI_U32 Channel, MI_ISP_AF_SCENE_CHANGE_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of AF Scene Change attribute.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.177. MI_ISP_AF_SetSearchStart

  • Object

    This function is used to set the parameter value of AF SearchStart attribute.

  • Syntax

    MI_S32 MI_ISP_AF_SetSearchStart(MI_U32 Channel, MI_ISP_AF_SEARCH_START_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of AF SearchStart attribute.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.178. MI_ISP_AF_GetSearchStart

  • Object

    This function is used to get the parameter value of AF SearchStart attribute.

  • Syntax

    MI_S32 MI_ISP_AF_GetAttr(MI_U32 Channel, MI_ISP_AF_SEARCH_START_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of AF SearchStart attribute.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.179. MI_ISP_AF_SetSearch

  • Object

    This function is used to set the parameter value of AF Search attribute.

  • Syntax

    MI_S32 MI_ISP_AF_SetSearch(MI_U32 Channel, MI_ISP_AF_SEARCH_TYPE_t *data);
    
  • Description

    Call this function to set the parameter value of AF Search attribute.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.180. MI_ISP_AF_GetSearch

  • Object

    This function is used to get the parameter value of AF Search attribute.

  • Syntax

    MI_S32 MI_ISP_AF_GetSearch(MI_U32 Channel, MI_ISP_AF_SEARCH_TYPE_t *data);
    
  • Description

    Call this function to get the parameter value of AF Search attribute.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    *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_iq.h

    • Library File: libmi_isp.so


2.181. MI_ISP_API_CmdLoadBinFile

  • Object

    This function is used to load cmd bin file to the IQ parameter of the user application after being calibrated by the IQ Tool.

  • Syntax

    MI_S32 MI_ISP_API_CmdLoadBinFile(MI_U32 Channel, char* filepath, MI_U32 user_key);
    
  • Description

    Call this function to load the API cmd bin file calibrated by the IQ Tool. With this function, loading the bin file from the user application will have the same calibration effect gained by the IQ Tool.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    filepath Filepath of ISP API bin file.
    user_key User key must match with the magic key. 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 File: libmi_isp.so

  • Example

    Filepath is the path where bin file is located. The user_key value will be compared with the magic key value 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.

    Figure 2-1: IQ Tool Interface Magic Key Setting Page


2.182. MI_ISP_API_CmdLoadCaliData

  • Object

    This function is used to load offline calibration data file to the parameter file (*.data) of the user application so that this API function can be called during offline calibration.

  • Syntax

    MI_S32 MI_ISP_API_CmdLoadCaliData(MI_U32 Channel, MI_ISP_CALI_ITEM_e eCaliItem, char* filepath);
    
  • Description

    Call this function to load offline calibration data file to the parameter file (*.data) of client’s application, to allow the application to load this data file directly.

  • Parameter

    Parameter Name Description
    Channel Image input channel number (normally 0).
    eCaliItem Enum structure of the calibration project.
    filepath Filepath of calibration parameter file.
  • Return Value

    Parameter Name Description
    MI_ISP_OK Successful.
    MI_ISP_FAILURE Failed.
  • Requirement

    • Header File: mi_isp.h

    • Library File: libmi_isp.so


3. MI ISP API DATA TYPE

Detailed Description of MI ISP API Structure Types


3.1. MI_ISP_BOOL Structure

3.1.1. Enum Structure

  • Description

    The enum structure of Boolean value.

  • Definition

    typedef enum
    
    {
    
        SS_FALSE = 0,
    
        SS_TRUE = !SS_FALSE,
    
        SS_BOOL_MAX
    
    } MI_ISP_BOOL_e;
    
  • Name

    Variable Name Description
    SS_FALSE Boolean value = 0.
    SS_TRUE Boolean value = 1.
    SS_BOOL_MAX To determine the max value of Boolean enum list.

3.2. MI_ISP_OP_TYPE Structure

3.2.1. Enum Structure

  • Description

    The enum structure of work mode.

  • Definition

    typedef enum
    
    {
    
        SS_OP_TYP_AUTO = 0,
    
        SS_OP_TYP_MANUAL = !SS_OP_TYP_AUTO,
    
        SS_OP_TYP_MODE_MAX
    
    } MI_ISP_OP_TYPE_e;
    
  • Name

    Variable Name Description
    SS_OP_TYP_AUTO Auto mode.
    SS_OP_TYP_MANUAL Manual mode.
    SS_OP_TYP_MODE_MAX To determine the maximum of the work mode enum list.

3.3. MI_ISP_SM_STATE_TYPE Structure

3.3.1. Enum Structure

  • Description

    The enum structure of State Machine.

  • Definition

    typedef enum
    
    {
    
        SS_ISP_STATE_NORMAL = 0,
    
        SS_ISP_STATE_PAUSE = 1,
    
        SS_ISP_STATE_MAX
    
    } MI_ISP_SM_STATE_TYPE_e;
    
  • Name

    Variable Name Description
    SS_OP_TYP_AUTO Normal mode.
    SS_OP_TYP_MANUAL Pause mode.
    SS_OP_TYP_MODE_MAX To determine the maximum of State Machine enum list.

3.4. MI_ISP_IQ_PARAM_MODE Structure

3.4.1. Enum Structure

  • Description

    The enum structure of IQ special mode.

  • Definition

    typedef enum
    
    {
    
        SS_IQ_PARAM_MODE_NORMAL = 0,
    
        SS_IQ_PARAM_MODE_NIGHT = 1,
    
        SS_IQ_PARAM_MODE_MAX
    
    } MI_ISP_IQ_PARAM_MODE_e;
    
  • Name

    Variable Name Description
    SS_IQ_PARAM_MODE_NORMAL IQ day mode.
    SS_IQ_PARAM_MODE_NIGHT IQ night mode.
    SS_IQ_PARAM_MODE_MAX To determine the maximum in the enum list of IQ work mode.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetIQMode(MI_U32 Channel, MI_ISP_IQ_PARAM_MODE_e *data);

    MI_S32 MI_ISP_IQ_GetIQMode(MI_U32 Channel, MI_ISP_IQ_PARAM_MODE_e *data);


3.5. MI_ISP_BYPASS_MODE Structure

3.5.1. Enum Structure

  • Description

    The enum structure of ByPass mode.

  • Definition

    typedef enum
    
    {
    
        SS_BYPASS_OFF = 0,
    
        SS_BYPASS_ON,
    
        SS_BYPASS_MAX
    
    } MI_ISP_BYPASS_MODE_e;
    
  • Name

    Variable Name Description
    SS_BYPASS_OFF ByPass mode is disabled.
    SS_BYPASS_ON ByPass mode is enabled.
    SS_ BYPASS_MAX To determine the maximum in the enum list of ByPass mode.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetAPIBypassMode(MI_U32 Channel, MI_ISP_API_BYPASS_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetAPIBypassMode(MI_U32 Channel, MI_ISP_API_BYPASS_TYPE_t *data);


3.6. MI_ISP_IQ_INDEX Structure

3.6.1. Enum Structure

  • Description

    The enum structure of IQ exposure index (ISO index).

  • Definition

    typedef enum
    
    {
    
        SS_IQ_INDEX_0 = 0,
    
        SS_IQ_INDEX_1,
    
        SS_IQ_INDEX_2,
    
        SS_IQ_INDEX_3,
    
        SS_IQ_INDEX_4,
    
        SS_IQ_INDEX_5,
    
        SS_IQ_INDEX_6,
    
        SS_IQ_INDEX_7,
    
        SS_IQ_INDEX_8,
    
        SS_IQ_INDEX_9,
    
        SS_IQ_INDEX_10,
    
        SS_IQ_INDEX_11,
    
        SS_IQ_INDEX_12,
    
        SS_IQ_INDEX_13,
    
        SS_IQ_INDEX_14,
    
        SS_IQ_INDEX_15,
    
        SS_IQ_INDEX_MAX
    
    } MI_ISP_IQ_INDEX_e;
    
  • Name

    Variable Name Description
    SS_IQ_INDEX_0 SS_IQ_INDEX_0 ISO index = 0, gain value = 1x.
    SS_IQ_INDEX_1 SS_IQ_INDEX_1 ISO index = 1, gain value = 2x.
    SS_IQ_INDEX_2 SS_IQ_INDEX_2 ISO index = 2, gain value = 4x.
    SS_IQ_INDEX_3 SS_IQ_INDEX_3 ISO index = 3, gain value = 8x.
    SS_IQ_INDEX_4 SS_IQ_INDEX_4 ISO index = 4, gain value = 16x.
    SS_IQ_INDEX_5 SS_IQ_INDEX_5 ISO index = 5, gain value = 32x.
    SS_IQ_INDEX_6 SS_IQ_INDEX_6 ISO index = 6, gain value = 64x.
    SS_IQ_INDEX_7 SS_IQ_INDEX_7 ISO index = 7, gain value = 128x.
    SS_IQ_INDEX_8 SS_IQ_INDEX_8 ISO index = 8, gain value = 256x.
    SS_IQ_INDEX_9 SS_IQ_INDEX_9 ISO index = 9, gain value = 512x.
    SS_IQ_INDEX_10 SS_IQ_INDEX_10 ISO index = 10, gain value = 1024x.
    SS_IQ_INDEX_11 SS_IQ_INDEX_11 ISO index = 11, gain value = 2048x.
    SS_IQ_INDEX_12 SS_IQ_INDEX_12 ISO index = 12, gain value = 4096x.
    SS_IQ_INDEX_13 SS_IQ_INDEX_13 ISO index = 13, gain value = 8192x.
    SS_IQ_INDEX_14 SS_IQ_INDEX_14 ISO index = 14, gain value = 16384x.
    SS_IQ_INDEX_15 SS_IQ_INDEX_15 ISO index = 15, gain value = 32768x.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_GetIQind(MI_U32 Channel, MI_ISP_IQ_INDEX_e *data);


3.7. MI_ISP_API_ID Structure

3.7.1. Enum Structure

  • Description

    The enum structure of each API ID.

  • Definition

    typedef enum
    
    {
    
        API20_AUTO = 0,
    
        API20_FPN = 1,
    
        API20_CCM = 2,
    
        API20_SAT = 3,
    
        API20_OBC = 4,
    
        API20_OBC_P1 = 5,
    
        API20_FCOLOR = 6,
    
        API20_CR = 7,
    
        API20_NR_DeSpike = 8,
    
        API20_SHP2 = 9,
    
        API20_NR_3D = 10,
    
        API20_BRI = 11,
    
        API20_LIG = 12,
    
        API20_CST = 13,
    
        API20_GMA = 14,
    
        API20_CTG = 15,
    
        API20_NR_NLM = 16,
    
        API20_DEFOG = 17,
    
        API20_DRC = 18,
    
        API20_DPC = 19,
    
        API20_HSV = 20,
    
        API20_WDR_LOC = 21,
    
        API20_RGBIR = 22,
    
        API20_YUVGMA = 23,
    
        API20_HDR16to12 = 24,
    
        API20_COLORTRANS = 25,
    
        API20_HDR = 26,
    
        API20_EFFECT = 27,
    
        API20_PFC = 28,
    
        API20_NRChroma = 29,
    
        API20_DM = 30,
    
        API20_NR_3D_P1 = 31,
    
        API20_WDRCurveAdv = 32,
    
        API20_MXNR = 33,
    
        API20_R2Y = 34,
    
        API20_LSC = 35,
    
        API20_LSC_CTRL = 36,
    
        API20_ALSC = 37,
    
        API20_ALSC_CTRL = 38,
    
        API20_DPC_CLUSTER = 39,
    
        API20_PFC_EX = 40,
    
        API20_HDR_EX = 41,
    
        API20_SHP_EX = 42,
    
        API20_NR_3D_EX = 43,
    
        API20_GNR = 44,
    
        API20_DUMMY = 45,
    
        API20_DUMMY_EX = 46,
    
        API20_WDRCurveFull = 47,
    
        API20_MAX = 48,
    
    } MI_ISP_API_ID_e;
    
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetAPIBypassMode(MI_U32 Channel, MI_ISP_API_BYPASS_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetAPIBypassMode(MI_U32 Channel, MI_ISP_API_BYPASS_TYPE_t *data);


3.8. MI_ISP_AWB_ALG_TYPE Structure

3.8.1. Enum Structure

  • Description

    The enum structure of auto white balance algorithm.

  • Definition

    typedef enum
    
    {
    
        SS_AWB_ALG_GRAYWORLD = 0,
    
        SS_AWB_ALG_NORMAL = 1,
    
        SS_AWB_ALG_BALANCE =2,
    
        SS_AWB_ALG_FOCUS =3,
    
        SS_AWB_ALG_MAX
    
    } MI_ISP_AWB_ALG_TYPE_e;
    
  • Name

    Variable Name Description
    SS_AWB_ALG_ GRAYWORLD Use all AWB statistics to calculate the WB gain.
    SS_AWB_ALG_NORMAL Use the AWB statistics located in the first two or three CT blocks that have the highest count to calculate the WB gain.
    SS_AWB_ALG_BALANCE Use the AWB statistics located in all effective CT blocks to calculate the WB gain.
    SS_AWB_ALG_FOCUS WB gain calculation will focus on single color temperature.
    SS_AWB_ALG_MAX To determine the maximum in the enum list of auto white balance algorithm.

3.9. MI_ISP_AWB_ADV_TYPE Structure

3.9.1. Enum Structure

  • Description

    The enum structure of advanced auto white balance algorithm.

  • Definition

    typedef enum
    
    {
    
        SS_AWB_ADV_DEFAULT = 0,
    
        SS_AWB_ADV_ADVANCE = 1,
    
        SS_AWB_ADV_MAX
    
    } MI_ISP_AWB_ADV_TYPE_e;
    
  • Name

    Variable Name Description
    SS_AWB_ADV_DEFAULT Default auto white balance algorithm.
    SS_AWB_ADV_ADVANCE Advanced auto white balance algorithm, which allows you to set MI_ISP_AWB_SetAttrEx.
    SS_AWB_ADV_MAX To determine the maximum in the enum list of advanced auto white balance algorithm.

3.10. MI_ISP_AF_ALGO_TYPE Structure

3.10.1. Enum Structure

  • Description

    The enum structure of advanced auto focus algorithm.

  • Definition

    typedef enum __attribute__ ((aligned (4)))
    {
        SS_AF_ALGO_ONESHOT = 0,
        SS_AF_ALGO_CONTINUOUS = 1
    } MI_ISP_AF_ALGO_TYPE_e;
    
  • Name

    Variable Name Description
    SS_AF_ALGO_ONESHOT Scan all spots in one shot and then stay at the spot of the maximum statistical value.
    SS_AF_ALGO_CONTINUOUS Detect environmental changes dynamically and refocus if any change is found.

3.11. MI_ISP_AF_ACC_SEL_TYPE Structure

3.11.1. Enum Structure

  • Description

    The enum structure of auto focus statistical value.

  • Definition

    typedef enum __attribute__ ((aligned (4)))
    {
        SS_AF_ACC_IIRH = 0,
        SS_AF_ACC_IIRL = 1,
        SS_AF_ACC_SBLV = 2,
        SS_AF_ACC_SBLH = 3,
        SS_AF_ACC_LUMA = 4,
        SS_AF_ACC_MAX  = 0xffffffff
    } MI_ISP_AF_ACC_SEL_TYPE_e;
    
  • Name

    Variable Name Description
    SS_AF_ACC_IIRH Statistical value of IIRH
    SS_AF_ACC_IIRL Statistical value of IIRL
    SS_AF_ACC_SBLV Statistical value of SBLV
    SS_AF_ACC_SBLH Statistical value of SBLH
    SS_AF_ACC_LUMA Statistical value of LUMA
    SS_AF_ACC_MAX The maximum in the enum list of statistical values.

3.12. MI_ISP_CALI_ITEM Structure

3.12.1. Enum Structure

  • Description

    Enum structure of calibration item.

  • Definition

    typedef enum
    
    {
    
        SS_CALI_ITEM_AWB = 0,
    
        SS_CALI_ITEM_OBC,
    
        SS_CALI_ITEM_SDC,
    
        SS_CALI_ITEM_ALSC,
    
        SS_CALI_ITEM_LSC,
    
        SS_CALI_ITEM_MAX,
    
    } MI_ISP_CALI_ITEM_e;
    
  • Name

    Variable Name Description
    SS_CALI_ITEM_AWB Calibration of auto white balance compensation.
    SS_CALI_ITEM_OBC Calibration of optical black compensation.
    SS_CALI_ITEM_SDC Calibration of static defective pixel compensation.
    SS_CALI_ITEM_ALSC Calibration of lens compensation.
    SS_CALI_ITEM_LSC Calibration of lens compensation.
    SS_CALI_ITEM_MAX To determine the maximum in the enum list of calibration item.
  • Related Structure Type and Function

    MI_S32 MI_ISP_API_CmdLoadCaliData(MI_U32 Channel, MI_ISP_CALI_ITEM_e eCaliItem, char* filepath);


3.13. MI_ISP_IQ_VERSION_INFO Structure

3.13.1. Type Structure

  • Description

    Get type structure of ISP IQ version number.

  • Definition

    typedef struct MI_ISP_IQ_VERSION_INFO_TYPE_s
    
    {
    
        IQ_VERSION_INFO_PARAM_t stParaAPI;
    
    } MI_ISP_IQ_VERSION_INFO_TYPE_t;
    
  • Name

    Variable Name Description
    stParaAPI Get type structure of ISP IQ version number.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_GetVersionInfo(MI_U32 Channel, MI_ISP_IQ_VERSION_INFO_TYPE_t *data);

3.13.2. Parameter Structure

  • Description

    Get the parameter structure of ISP IQ version number.

  • Definition

    typedef struct IQ_VERSION_INFO_PARAM_s
    
    {
    
        MI_U32 u32Vendor;
    
        MI_U32 u32Major;
    
        MI_U32 u32Minor;
    
    } IQ_VERSION_INFO_PARAM_t;
    
  • Name

    Variable Name Description
    u32Vendor ISP IQ Vendor version number, can get/set info.
    u32Major ISP IQ Major version number, can get info only
    u32Minor ISP IQ Minor version number, can get info only.

3.14. MI_ISP_IQ_PARAM_INIT_INFO Structure

3.14.1. Type Structure

  • Description

    Get the type structure of ISP initialization ready status.

  • Definition

    typedef struct MI_ISP_IQ_PARAM_INIT_INFO_TYPE_s
    
    {
    
        IQ_PARAM_INIT_INFO_PARAM_t stParaAPI;
    
    } MI_ISP_IQ_PARAM_INIT_INFO_TYPE_t;
    
  • Name

    Variable Name Description
    stParaAPI Get the type structure of ISP initialization ready status.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_GetParaInitStatus(MI_U32 Channel, MI_ISP_IQ_PARAM_INIT_INFO_TYPE_t *data);

3.14.2. Parameter Structure

  • Description

    Get the parameter structure of ISP initialization ready status.

  • Definition

    typedef struct IQ_PARAM_INIT_INFO_PARAM_s

    {

    MI_ISP_BOOL_e bFlag;
    

    } IQ_PARAM_INIT_INFO_PARAM_t;

  • Name

    Variable Name Description
    bFlag Set Boolean value for ISP initialization ready status. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.

3.15. MI_ISP_IQ_COLORTOGRAY Structure

3.15.1. Type Structure

  • Description

    Set the type structure of color to grayscale image conversion.

  • Definition

    typedef struct MI_ISP_IQ_COLORTOGRAY_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
    } MI_ISP_IQ_COLORTOGRAY_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for color to grayscale image conversion. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetColorToGray(MI_U32 Channel, *data);

    MI_S32 MI_ISP_IQ_GetColorToGray(MI_U32 Channel, *data);


3.16. MI_ISP_IQ_CONTRAST Structure

3.16.1. Type Structure

  • Description

    Set the type structure of contrast.

  • Definition

    typedef struct MI_ISP_IQ_CONTRAST_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_ISP_OP_TYPE_e  enOpType;
    
        CONTRAST_AUTO_ATTR_t stAuto;
    
        CONTRAST_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_CONTRAST_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for contrast. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    enOpType Set the operation mode of contrast. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    stAuto Set the automatic mode attribute structure of contrast.
    stManual Set the manual mode attribute structure of contrast.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetContrast(MI_U32 Channel, MI_ISP_IQ_CONTRAST_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetContrast(MI_U32 Channel, MI_ISP_IQ_CONTRAST_TYPE_t *data);

3.16.2. Automatic Mode Attribute Structure

  • Description

    Set the automatic mode attribute structure of contrast.

  • Definition

    typedef struct CONTRAST_AUTO_ATTR_s
    
    {
    
        LEVEL_BASE_PARAM_t stParaAPI[MI_ISP_AUTO_NUM];
    
    } CONTRAST_AUTO_ATTR_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.

3.16.3. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of contrast.

  • Definition

    typedef struct CONTRAST_MANUAL_ATTR_s
    
    {
    
        LEVEL_BASE_PARAM_t  stParaAPI;
    
    } CONTRAST_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure.

3.16.4. Parameter Structure

  • Description

    Set the parameter structures of contrast, brightness and lightness.

  • Definition

    typedef struct LEVEL_BASE_PARAM_s
    
    {
    
        MI_U32 u32Lev;
    
    } LEVEL_BASE_PARAM_t;
    
  • Name

    Variable Name Description
    u32Lev Set variable strength value of contrast, brightness and lightness. Parameter range: 0 ~ 100.

3.17. MI_ISP_IQ_BRIGHTNESS Structure

3.17.1. Type Structure

  • Description

    Set the type structure of brightness.

  • Definition

    typedef struct MI_ISP_IQ_BRIGHTNESS_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_ISP_OP_TYPE_e  enOpType;
    
        BRIGHTNESS_AUTO_ATTR_t stAuto;
    
        BRIGHTNESS_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_BRIGHTNESS_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for brightness. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    enOpType Set operation mode of brightness. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    stAuto Set the automatic mode attribute structure of brightness.
    stManual Set the manual mode attribute structure of brightness.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetBrightness(MI_U32 Channel, MI_ISP_IQ_BRIGHTNESS_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetBrightness(MI_U32 Channel, MI_ISP_IQ_BRIGHTNESS_TYPE_t *data);

3.17.2. Automatic Mode Attribute Structure

  • Description

    Set the automatic mode attribute structure of brightness.

  • Definition

    typedef struct BRIGHTNESS_AUTO_ATTR_s
    
    {
    
        LEVEL_BASE_PARAM_t stParaAPI[MI_ISP_AUTO_NUM];
    
    } BRIGHTNESS_AUTO_ATTR_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.

3.17.3. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of brightness.

  • Definition

    typedef struct BRIGHTNESS_MANUAL_ATTR_s
    
    {
    
        LEVEL_BASE_PARAM_t  stParaAPI;
    
    } BRIGHTNESS_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure.

3.18. MI_ISP_IQ_LIGHTNESS Structure

3.18.1. Type Structure

  • Description

    Set the type structure of lightness.

  • Definition

    typedef struct MI_ISP_IQ_LIGHTNESS_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_ISP_OP_TYPE_e  enOpType;
    
        LIGHTNESS_AUTO_ATTR_t   stAuto;
    
        LIGHTNESS_MANUAL_ATTR_t   stManual;
    
    } MI_ISP_IQ_LIGHTNESS_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for lightness. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    enOpType Set operation mode of lightness. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    stAuto Set the automatic mode attribute structure of lightness.
    stManual Set the manual mode attribute structure of lightness.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetLightness(MI_U32 Channel, MI_ISP_IQ_LIGHTNESS_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetLightness(MI_U32 Channel, MI_ISP_IQ_LIGHTNESS_TYPE_t *data);

3.18.2. Automatic Mode Attribute Structure

  • Description

    Set the automatic mode attribute structure of lightness.

  • Definition

    typedef struct LIGHTNESS_AUTO_ATTR_s
    
    {
    
        LEVEL_BASE_PARAM_t  stParaAPI[MI_ISP_AUTO_NUM];
    
    } LIGHTNESS_AUTO_ATTR_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.

3.18.3. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of lightness.

  • Definition

    typedef struct LIGHTNESS_MANUAL_ATTR_s
    
    {
    
        LEVEL_BASE_PARAM_t  stParaAPI;
    
    } LIGHTNESS_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure.

3.19. MI_ISP_IQ_RGBGAMMA Structure

3.19.1. Type Structure

  • Description

    Set the type structure of RGB Gamma curve.

  • Definition

    typedef struct MI_ISP_IQ_RGBGAMMA_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_ISP_OP_TYPE_e  enOpType;
    
        RGBGAMMA_AUTO_ATTR_t  stAuto;
    
        RGBGAMMA_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_RGBGAMMA_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for RGB Gamma curve. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    enOpType Set RGB Gamma curve mode. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    stAuto Set the RGB Gamma curve automatic mode attribute structure.
    stManual Set the RGB Gamma curve manual mode attribute structure.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetRGBGamma(MI_U32 Channel, MI_ISP_IQ_RGBGAMMA_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetRGBGamma(MI_U32 Channel, MI_ISP_IQ_RGBGAMMA_TYPE_t *data);

3.19.2. Automatic Mode Attribute Structure

  • Description

    Set the automatic mode attribute structure of RGB Gamma curve.

  • Definition

    typedef struct RGBGAMMA_AUTO_ATTR_s
    
    {
    
        RGBGAMMA_PARAM_t stParaAPI[MI_ISP_AUTO_NUM];
    
    } RGBGAMMA_AUTO_ATTR_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.

3.19.3. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of RGB Gamma curve.

  • Definition

    typedef struct RGBGAMMA_MANUAL_ATTR_s
    
    {
    
        RGBGAMMA_PARAM_t stParaAPI;
    
    } RGBGAMMA_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure.

3.19.4. Parameter Structure

  • Description

    Set the parameter structure of RGB Gamma curve.

  • Definition

    typedef struct RGBGAMMA_PARAM_s
    
    {
    
        MI_U16 u16LutR[256];
    
        MI_U16 u16LutG[256];
    
        MI_U16 u16LutB[256];
    
    } RGBGAMMA_PARAM_t;
    
  • Name

    Variable Name Description
    u16LutR[256] R channel component. Parameter range: 0 ~ 1023.
    u16LutG[256] G channel component. Parameter range: 0 ~ 1023.
    u16LutB[256] B channel component. Parameter range: 0 ~ 1023.
  • Note

    Three-channel Gamma setting is supported. We suggest setting the three channels to same value.

    Figure 3-1: RGB Gamma Curve


3.20. MI_ISP_IQ_YUVGAMMA Structure

3.20.1. Type Structure

  • Description

    Set the type structure for YUV Gamma curve.

  • Definition

    typedef struct MI_ISP_IQ_YUVGAMMA_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_ISP_OP_TYPE_e  enOpType;
    
        YUVGAMMA_AUTO_ATTR_t  stAuto;
    
        YUVGAMMA_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_YUVGAMMA_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for YUV Gamma curve. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    enOpType Set YUV Gamma curve mode. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    stAuto Set the YUV Gamma curve automatic mode attribute structure.
    stManual Set the YUV Gamma curve manual mode attribute structure.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetYUVGamma(MI_U32 Channel, MI_ISP_IQ_YUVGAMMA_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetYUVGamma(MI_U32 Channel, MI_ISP_IQ_YUVGAMMA_TYPE_t *data);

3.20.2. Automatic Mode Attribute Structure

  • Description

    Set the automatic mode attribute structure of YUV Gamma curve.

  • Definition

    typedef struct YUVGAMMA_AUTO_ATTR_s
    
    {
    
        YUVGAMMA_PAMAR_t stParaAPI[MI_ISP_AUTO_NUM];
    
    } YUVGAMMA_AUTO_ATTR_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.

3.20.3. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of YUV Gamma curve.

  • Definition

    typedef struct YUVGAMMA_MANUAL_ATTR_s
    
    {
    
        YUVGAMMA_PAMAR_t  stParaAPI;
    
    } YUVGAMMA_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure.

3.20.4. Parameter Structure

  • Description

    Set the parameter structure of YUV Gamma curve.

  • Definition

    typedef struct YUVGAMMA_PAMAR_s
    
    {
    
        MI_U16 u16LutY[256];
    
        MI_U16 u16LutU[128];
    
        MI_U16 u16LutV[128];
    
    } YUVGAMMA_PAMAR_t;
    
  • Name

    Variable Name Description
    u16LutY[256] Y channel component. Parameter range: 0 ~ 1023.
    u16LutU[128] U channel component. Parameter range: 0 ~ 511.
    u16LutV[128] V channel component. Parameter range: 0 ~ 511.

3.21. MI_ISP_IQ_ADAPTIVE GAMMA Structure

3.21.1. Type Structure

  • Description

    Set the type structure of Adaptive Gamma curve.

  • Definition

    typedef struct MI_ISP_IQ_ADAPTIVE_GAMMA_TYPE_s
    {
        MI_ISP_BOOL_e    bEnable;
        MI_U16            u16BTGamma[256];
        MI_U16            u16DTGamma[256];
    } MI_ISP_IQ_ADAPTIVE_GAMMA_TYPE _t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for Adaptive Gamma curve. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    u16BTGamma[256] Bright Tone Gamma curve; if GMBlendRatio in StrategyExInfo is smaller than 512, BTGamma and normal Gamma will be mixed according to GMBlendRatio.
    u16DTGamma[256] Dark Tone Gamma curve; if GMBlendRatio in StrategyExInfo is larger than 512, BTGamma and normal Gamma will be mixed according to GMBlendRatio.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetAdaptiveGamma(MI_U32 Channel, MI_ISP_IQ_ADAPTIVE_GAMMA_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetAdaptiveGamma(MI_U32 Channel, MI_ISP_IQ_ADAPTIVE_GAMMA_TYPE_t *data);


3.22. MI_ISP_IQ_SATURATION Structure

3.22.1. Type Structure

  • Description

    Set the type structure of saturation.

  • Definition

    typedef struct MI_ISP_IQ_SATURATION_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_ISP_OP_TYPE_e  enOpType;
    
        SATURATION_AUTO_ATTR_t  stAuto;
    
        SATURATION_MANUAL_ATTR_t  stManual;
    
    } MI_ISP_IQ_SATURATION_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for saturation. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    enOpType Set saturation mode. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    stAuto Set the automatic mode attribute structure of saturation.
    stManual Set the manual mode attribute structure of saturation.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetSaturation(MI_U32 Channel, MI_ISP_IQ_SATURATION_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetSaturation(MI_U32 Channel, MI_ISP_IQ_SATURATION_TYPE_t *data);

3.22.2. Automatic Mode Attribute Structure

  • Description

    Set the automatic mode attribute structure of saturation.

  • Definition

    typedef struct SATURATION_AUTO_ATTR_s

    {

    SATURATION_PARAM_t  stParaAPI[MI_ISP_AUTO_NUM];
    

    } SATURATION_AUTO_ATTR_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.

3.22.3. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of saturation.

  • Definition

    typedef struct SATURATION_MANUAL_ATTR_s
    
    {
    
        SATURATION_PARAM_t  stParaAPI;
    
    } SATURATION_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure.

3.22.4. Parameter Structure

  • Description

    Set the parameter structure of saturation.

  • Definition

    typedef struct SATURATION_PARAM_s
    
    {
    
        MI_U8 u8SatAllStr;
    
        MI_U8 u8SatByYSFTAdv[5];
    
        MI_U8 u8SatByYLUTAdv[6];
    
        MI_U8 u8SatBySSFTAdv[5];
    
        MI_U8 u8SatBySLUTAdv[6];
    
        MI_U8 u8SatCoring;
    
    } SATURATION_PARAM_t;
    
  • Name

    Variable Name Description
    u8SatAllStr Global saturation strength. Parameter range: 0 ~ 127 (32 = 1x).
    u8SatByYSFTAdv[5] Adjust the bright area strength. Parameter range: 0 ~ 8.
    u8SatByYLUTAdv[6] Adjust the saturation based on the bright area setting. Parameter range: 0 ~ 128.
    u8SatBySSFTAdv[5] Adjust the Chroma area strength. Parameter range: 0 ~ 8.
    u8SatBySLUTAdv[6] Adjust the saturation based on the Chroma area setting. Parameter range: 0 ~ 128.
    u8SatCoring Reduce Chroma by one. Parameter range: 0 ~ 255.

3.23. MI_ISP_IQ_RGBMATRIX Structure

3.23.1. Type Structure

  • Description

    Set the type structure of RGB matrix.

  • Definition

    typedef struct MI_ISP_IQ_RGBMATRIX_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_ISP_OP_TYPE_e  enOpType;
    
        RGBMATRIX_AUTO_ATTR_t stAuto;
    
        RGBMATRIX_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_RGBMATRIX_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for RGB matrix. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    enOpType Set RGB matrix mode. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    stAuto Set the RGB matrix automatic mode attribute structure.
    stManual Set the RGB matrix manual mode attribute structure.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetRGBMatrix(MI_U32 Channel, MI_ISP_IQ_RGBMATRIX_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetRGBMatrix(MI_U32 Channel, MI_ISP_IQ_RGBMATRIX_TYPE_t *data);

3.23.2. Automatic Mode Attribute Structure

  • Description

    Set the automatic mode attribute structure of RGB matrix.

  • Definition

    typedef struct RGBMATRIX_AUTO_ATTR_s
    
    {
    
        MI_ISP_BOOL_e bISOActEn;
    
        RGBMATRIX_PARAM_t stParaAPI[MI_ISP_AUTO_NUM];
    
    } RGBMATRIX_AUTO_ATTR_t;
    
  • Name

    Variable Name Description
    bISOActEn Set Boolean value for ISO. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    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.

3.23.3. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of RGB matrix.

  • Definition

    typedef struct RGBMATRIX_MANUAL_ATTR_s
    
    {
    
        MI_U16 u16CCM[12];
    
        MI_U8 u8CCMSat;
    
    } RGBMATRIX_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    u16CCM[12] CCM value, parameter range: 0 ~ 8191. 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 saturation strength by RGB matrix. Parameter range: 0 ~ 100.
  • Note

    u8CCMSat = 0 means the color correction unit matrix value.

    u8CCMSat = 100 means the color correction matrix value.

3.23.4. Parameter Structure

  • Description

    Set the parameter structure of RGB matrix.

  • Definition

    typedef struct RGBMATRIX_PARAM_s
    
    {
    
        MI_U16 u16CCTthr;
    
        MI_U16 u16CCM[12];
    
        MI_U8 u8CCMSat;
    
    } RGBMATRIX_PARAM_t;
    
  • Name

    Variable Name Description
    u16CCTthr Color temperature of the CCM. Parameter range: 0 ~ 10000.
    u16CCM[12] CCM value, parameter range: 0 ~ 8191. 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 saturation strength by RGB matrix. Parameter range: 0 ~ 100.
  • Note

    u8CCMSat = 0 means the color correction unit matrix value.

    u8CCMSat = 100 means the color correction matrix value.


3.24. MI_ISP_IQ_CCM_INFO Structure

3.24.1. Type Structure

  • Description

    Get the type structure of the current CCM matrix.

  • Definition

    typedef struct MI_ISP_IQ_ CCM_INFO_TYPE_s
    
    {
    
        MI_U16 u16CCM[12]; //0 ~ 8191(1024 = 1X)
    
        MI_U16 u16CCT;
    
    } MI_ISP_IQ_CCM_INFO_TYPE_t;
    
  • Name

    Variable Name Description
    u16CCM[12] Get the color correction matrix value which include the sum of CCM coefficients. Parameter range: 0 ~ 8191. u16CCM [0 ~ 3] CCM00, CCM01, CCM02, CCM_Rsum u16CCM [4 ~ 7] CCM10, CCM11, CCM12, CCM_Gsum u16CCM [8 ~ 11] CCM20, CCM21, CCM22, CCM_Bsum
    u16CCT Get the current color temperature parameter value.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_QueryCCMInfo(MI_U32 Channel, MI_ISP_IQ_CCM_INFO_TYPE_t *data);


3.25. MI_ISP_IQ_FALSECOLOR Structure

3.25.1. Type Structure

  • Description

    Set the type structure of false color suppression.

  • Definition

    typedef struct MI_ISP_IQ_FALSECOLOR_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_ISP_OP_TYPE_e  enOpType;
    
        FALSECOLOR_AUTO_ATTR_t  stAuto;
    
        FALSECOLOR_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_FALSECOLOR_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for false color suppression. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    enOpType Set false color suppression mode. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    stAuto Set the false color suppression automatic mode attribute structure.
    stManual Set the false color suppression manual mode attribute structure.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetFalseColor(MI_U32 Channel, MI_ISP_IQ_FALSECOLOR_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetFalseColor(MI_U32 Channel, MI_ISP_IQ_FALSECOLOR_TYPE_t *data);

3.25.2. Automatic Mode Attribute Structure

  • Description

    Set the automatic mode attribute structure of false color suppression.

  • Definition

    typedef struct FALSECOLOR_AUTO_ATTR_s
    
    {
    
        FALSECOLOR_PARAM_t stParaAPI[MI_ISP_AUTO_NUM];
    
    } FALSECOLOR_AUTO_ATTR_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.

3.25.3. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of false color suppression.

  • Definition

    typedef struct FALSECOLOR_MANUAL_ATTR_s
    
    {
    
        FALSECOLOR_PARAM_t  stParaAPI;
    
    } FALSECOLOR_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure.

3.25.4. Parameter Structure

  • Description

    Set the parameter structure of false color suppression.

  • Definition

    typedef struct FALSECOLOR_PARAM_s
    
    {
    
        MI_U8 u8FreqThrd;
    
        MI_U8 u8EdgeScoreThrd;
    
        MI_U8 u8ChromaThrdOfStrengthMax;
    
        MI_U8 u8ChromaThrdOfStrengthMid;
    
        MI_U8 u8ChromaThrdOfStrengthMin;
    
        MI_U8 u8StrengthMid;
    
        MI_U8 u8StrengthMin;
    
    } FALSECOLOR_PARAM_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.

    Figure 3-2: Chroma Strength Threshold Limit


3.26. MI_ISP_IQ_NRD Structure

3.26.1. Type Structure

  • Description

    Set the type structure of 3D noise reduction.

  • Definition

    typedef struct MI_ISP_IQ_NR3D_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_ISP_OP_TYPE_e  enOpType;
    
        NR3D_AUTO_ATTR_t stAuto;
    
        NR3D_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_NR3D_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for 3D noise reduction. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    enOpType Set 3D noise reduction mode. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    stAuto Set the 3D noise reduction automatic mode attribute structure.
    stManual Set the 3D noise reduction manual mode attribute structure.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetNR3D(MI_U32 Channel, MI_ISP_IQ_NR3D_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetNR3D(MI_U32 Channel, MI_ISP_IQ_NR3D_TYPE_t *data);

3.26.2. Automatic Mode Attribute Structure

  • Description

    Set the automatic mode attribute structure of 3D noise reduction.

  • Definition

    typedef struct NR3D_AUTO_ATTR_s
    
    {
    
        NR3D_PARAM_t stParaAPI[MI_ISP_AUTO_NUM];
    
    } NR3D_AUTO_ATTR_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.

3.26.3. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of 3D noise reduction.

  • Definition

    typedef struct NR3D_MANUAL_ATTR_s
    
    {
    
        NR3D_PARAM_t stParaAPI;
    
    } NR3D_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure.

3.26.4. Parameter Structure

  • Description

    Set the parameter structure of 3D noise reduction.

  • Definition

    typedef struct NR3D_PARAM_s
    
    {
    
        MI_U8 u8MdThd;
    
        MI_U16 u16MdGain;
    
        MI_U8 u8TfStr;
    
        MI_U8 u8TfStrEx;
    
        MI_U8 u8MdThdByY[16];
    
        MI_U8 u8MdGainByY[16];
    
        MI_U8 u8M2SLut[16];
    
        MI_U16 u16TfLut[16];
    
        MI_U8 u8YSfBlendLut[16];
    
        MI_U8 u8YSfBlendOffset;
    
    } NR3D_PARAM_t;
    
  • Name

    Variable Name Description
    u8MdThd MD threshold. Objects 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 MD gain. The higher the value, the easier it is to judge objects as static 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[16] Motion detection threshold by Y. The higher the value, the stronger the 3D noise reduction. Parameter range: 0 ~ 255.
    u8MdGainByY[16] Motion detection gain by Y. The higher the value, the stronger the 3D noise reduction. Parameter range: 0 ~ 255.
    u8M2SLut[16] Convergence speed of 3D noise reduction from motion to stillness. Higher value have slower convergence speed, and are therefore useful for minimizing ghost images. Parameter range: 0 ~ 31.
    u16TfLut[16] Control the 3D noise reduction strength based on motion. Parameter range: 0 ~ 4095.
    u8YSfBlendLut[16] Control the 2D noise reduction strength based on motion. Parameter range: 0 ~ 16.
    u8YSfBlendOffset Control the ratio of extra 3D noise reduction against returned reference frame based on motion. The higher the value, the stronger the 3D noise reduction. Parameter range: 0 ~ 16.

3.27. MI_ISP_IQ_NRDESPIKE Structure

3.27.1. Type Structure

  • Description

    Set the type structure of DeSpike noise reduction.

  • Definition

    typedef struct MI_ISP_IQ_NRDESPIKE_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_ISP_OP_TYPE_e  enOpType;
    
        NRDESPIKE_AUTO_ATTR_t stAuto;
    
        NRDESPIKE_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_NRDESPIKE_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for DeSpike noise reduction. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    enOpType Set the mode of DeSpike noise reduction. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    stAuto Set the automatic mode attribute structure of DeSpike noise reduction.
    stManual Set the manual mode attribute structure of DeSpike noise reduction.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetNRDeSpike(MI_U32 Channel, MI_ISP_IQ_NRDESPIKE_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetNRDeSpike(MI_U32 Channel, MI_ISP_IQ_NRDESPIKE_TYPE_t *data);

3.27.2. Automatic Mode Attribute Structure

  • Description

    Set the automatic mode attribute structure of DeSpike noise reduction.

  • Definition

    typedef struct NRDESPIKE_AUTO_ATTR_s
    
    {
    
        NRDESPIKE_PARAM_t stParaAPI[MI_ISP_AUTO_NUM];
    
    } NRDESPIKE_AUTO_ATTR_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.

3.27.3. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of DeSpike noise reduction.

  • Definition

    typedef struct NRDESPIKE_MANUAL_ATTR_s
    
    {
    
        NRDESPIKE_PARAM_t stParaAPI;
    
    } NRDESPIKE_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure.

3.27.4. Parameter Structure

  • Description

    Set the parameter structure of DeSpike noise reduction.

  • Definition

    typedef struct NRDESPIKE_PARAM_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[5];
    
        MI_U8 u8StrengthByY[16];
    
    } NRDESPIKE_PARAM_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 the neighboring endpoint. 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 of the average difference between the center point and the neighboring endpoint. 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 of the diagonal cross and cross endpoint mean subtraction. Parameter range: 0 ~ 255.
    u16BlendLut[5] Select median/mean mixing ratio by Y. The greater the value, the closer to the median setting; the smaller the value, the closer to the mean setting. Parameter range: 0 ~ 2047.
    u8StrengthByY[16] Adjust strength by Y. 64 means no adjustment. The greater the value, the stronger the strength. Parameter range: 0 ~ 127.
  • Note

    • The greater the difference between the center point and the neighboring endpoint, the easier it is to erase the center point.

    • The smaller the DiffGain and the greater the Strength, the easier it is to erase the center point.


3.28. MI_ISP_IQ_NRLUMA Structure

3.28.1. Type Structure

  • Description

    Set the type structure of Luma noise reduction.

  • Definition

    typedef struct MI_ISP_IQ_NRLUMA \_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_ISP_OP_TYPE_e  enOpType;
    
        NRLUMA_AUTO_ATTR_t stAuto;
    
        NRLUMA_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_NRLUMA_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for Luma noise reduction. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    enOpType Set Luma noise reduction mode. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_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 Channel, MI_ISP_IQ_NRLUMA_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetNRLuma(MI_U32 Channel, MI_ISP_IQ_NRLUMA_TYPE_t *data);

3.28.2. Automatic Mode Attribute Structure

  • Description

    Set the automatic mode attribute structure of Luma noise reduction.

  • Definition

    typedef struct NRLUMA_AUTO_ATTR_s
    
    {
    
        NRLUMA_PARAM_t  stParaAPI[MI_ISP_AUTO_NUM];
    
    } NRLUMA_AUTO_ATTR_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.

3.28.3. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of Luma noise reduction.

  • Definition

    typedef struct NRLUMA_MANUAL_ATTR_s

    {

    NRLUMA_PARAM_t stParaAPI;
    

    } NRLUMA_MANUAL_ATTR_t;

  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure.

3.28.4. Parameter Structure

  • Description

    Set the parameter structure of Luma noise reduction.

  • Definition

    typedef struct NRLUMA_PARAM_s

    {

    MI_U8 u8Strength;
    
    MI_U8 u8GMaskSel;
    
    MI_U16 u16SpfBlendLut[2];
    

    } NRLUMA_PARAM_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[2] 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.

3.29. MI_ISP_IQ_NRChroma Structure

3.29.1. Type Structure

  • Description

    Set the type structure of color noise reduction.

  • Definition

    typedef struct MI_ISP_IQ_NRChroma_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_ISP_OP_TYPE_e  enOpType;
    
        NRChroma_AUTO_ATTR_t stAuto;
    
        NRChroma_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_NRChroma_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for color noise reduction. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    enOpType Set color noise reduction mode. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    stAuto Set the color noise reduction automatic mode attribute structure.
    stManual Set the color noise reduction manual mode attribute structure.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetNRChroma(MI_U32 Channel, MI_ISP_IQ_NRChroma_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetNRChroma(MI_U32 Channel, MI_ISP_IQ_NRChroma_TYPE_t *data);

3.29.2. Automatic Mode Attribute Structure

  • Description

    Set the automatic mode attribute structure of color noise reduction.

  • Definition

    typedef struct NRChroma_AUTO_ATTR_s
    
    {
    
        NRChroma_PARAM_t stParaAPI[MI_ISP_AUTO_NUM];
    
    } NRChroma_AUTO_ATTR_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.

3.29.3. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of color noise reduction.

  • Definition

    typedef struct NRChroma_MANUAL_ATTR_s
    
    {
    
        NRChroma_PARAM_t  stParaAPI;
    
    } NRChroma_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure.

3.29.4. Parameter Structure

  • Description

    Set the parameter structure of color noise reduction.

  • Definition

    typedef struct NRChroma_PARAM_s
    
    {
    
        MI_U8 u8MatchRatio;
    
        MI_U16 u16UvTh;
    
        MI_U16 u16StrengthByCEdge[6];
    
    } NRChroma_PARAM_t;
    
  • Name

    Variable Name Description
    u8MatchRatio Threshold of match ratio. Parameter range: 0 ~ 31.
    u16UvTh U/V noise threshold. Parameter range: 0 ~ 256.
    u16StrengthByCEdge[6] Control the color noise reduction strength by color edge. Parameter range: 0 ~ 511.

3.30. MI_ISP_IQ_SHARPNESS Structure

3.30.1. Type Structure

  • Description

    Set the type structure of sharpness.

  • Definition

    typedef struct MI_ISP_IQ_SHARPNESS_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_ISP_OP_TYPE_e  enOpType;
    
        SHARPNESS_AUTO_ATTR_t  stAuto;
    
        SHARPNESS_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_SHARPNESS_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for sharpness. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    enOpType Set the sharpness mode. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    stAuto Set the sharpness automatic mode attribute structure.
    stManual Set the sharpness manual mode attribute structure.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetSharpness(MI_U32 Channel, MI_ISP_IQ_SHARPNESS_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetSharpness(MI_U32 Channel, MI_ISP_IQ_SHARPNESS_TYPE_t *data);

3.30.2. Automatic Mode Attribute Structure

  • Description

    Set the automatic mode attribute structure of sharpness.

  • Definition

    typedef struct SHARPNESS_AUTO_ATTR_s
    
    {
    
        SHARPNESS_PARAM_t stParaAPI[MI_ISP_AUTO_NUM];
    
    } SHARPNESS_AUTO_ATTR_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.

3.30.3. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of sharpness.

  • Definition

    typedef struct SHARPNESS_MANUAL_ATTR_s
    
    {
    
        SHARPNESS_PARAM_t stParaAPI;
    
    } SHARPNESS_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure.

3.30.4. Parameter Structure

  • Description

    Set the parameter structure of sharpness.

  • Definition

    typedef struct SHARPNESS_PARAM_s
    
    {
    
        MI_U8 u8OverShootGain;
    
        MI_U8 u8UnderShootGain;
    
        MI_U8 u8CorLUT[6];
    
        MI_U8 u8SclLUT[6];
    
        MI_U16 u16EdgeKillLUT[6];
    
        MI_U8 u8CornerReduce;
    
        MI_U8 u8DirTh;
    
        MI_U16 u16SharpnessUD[2];
    
        MI_U16 u16SharpnessD[2];
    
        MI_U8 u8PreCorUD[2];
    
        MI_U8 u8PreCorD[2];
    
        MI_U8 u8PreCorMotGain;
    
        MI_U8 u8LpfEdgeGainUD;
    
        MI_U8 u8LpfEdgeGainD;
    
        MI_U8 u8WeakDetailEnhance;
    
        MI_U16 u16DetailTh;
    
        MI_U8 u8DetailMotOffset;
    
        MI_U8 u8DetailByY[6];
    
        MI_U16 u16OverShootLimit;
    
        MI_U16 u16UnderShootLimit;
    
        MI_U8 u8MotGain[16];
    
    } SHARPNESS_PARAM_t;
    
  • Name

    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[6] Smooth-area high-brightness suppression. Parameter range: 0 ~ 255.
    u8SclLUT[6] Adjust edge output by Y. Parameter range: 0 ~ 255.
    u16EdgeKillLUT[6] Set the edge strength output. Parameter range: 0 ~ 1023.
    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[2] 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.
    u16SharpnessD[2] 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.
    u8PreCorUD[2] 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.
    u8PreCorD[2] 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.
    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 Adjust SharpnessUD by luminance. Parameter range: 0 ~ 255.
    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[16] 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.

3.31. MI_ISP_IQ_CROSSTALK Structure

3.31.1. Type Structure

  • Description

    Set the type structure of crosstalk.

  • Definition

    typedef struct MI_ISP_IQ_CROSSTALK_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_ISP_OP_TYPE_e  enOpType;
    
        CROSSTALK_AUTO_ATTR_t stAuto;
    
        CROSSTALK_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_CROSSTALK_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for crosstalk. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    enOpType Set the crosstalk mode. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    stAuto Set the crosstalk automatic mode attribute structure.
    stManual Set the crosstalk attribute structure of Manual mode.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetCrossTalk(MI_U32 Channel, MI_ISP_IQ_CROSSTALK_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetCrossTalk(MI_U32 Channel, MI_ISP_IQ_CROSSTALK_TYPE_t *data);

3.31.2. Automatic Mode Attribute Structure

  • Description

    Set the automatic mode attribute structure of crosstalk.

  • Definition

    typedef struct CROSSTALK_AUTO_ATTR_s
    
    {
    
        CROSSTALK_PARAM_t stParaAPI[MI_ISP_AUTO_NUM];
    
    } CROSSTALK_AUTO_ATTR_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.

3.31.3. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of crosstalk.

  • Definition

    typedef struct CROSSTALK_MANUAL_ATTR_s
    
    {
    
        CROSSTALK_PARAM_t  stParaAPI;
    
    } CROSSTALK_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure.

3.31.4. Parameter Structure

  • Description

    Set the parameter structure of crosstalk.

  • Definition

    typedef struct CROSSTALK_PARAM_s
    
    {
    
        MI_U8 u8Strength;
    
        MI_U8 u8StrengthByY[15];
    
        MI_U8 u8Threshold;
    
        MI_U16 u16ThresholdOffset;
    
    } CROSSTALK_PARAM_t;
    
  • Name

    Variable Name Description
    u8Strength Crosstalk variable strength. Parameter range: 0 ~ 31.
    u8StrengthByY[15] Adjust crosstalk strength by Y. Parameter range: 0 ~ 127.
    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.


3.32. MI_ISP_IQ_OBC Structure

3.32.1. Type Structure

  • Description

    Set the type structure of optical black compensation.

  • Definition

    typedef struct MI_ISP_IQ_OBC_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_ISP_OP_TYPE_e  enOpType;
    
        OBC_AUTO_ATTR_t stAuto;
    
        OBC_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_OBC_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for optical black compensation. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    enOpType Set the optical black compensation mode. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    stAuto Set the optical black compensation automatic mode attribute structure.
    stManual Set the optical black compensation manual mode attribute structure.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetOBC(MI_U32 Channel, MI_ISP_IQ_OBC_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetOBC(MI_U32 Channel, MI_ISP_IQ_OBC_TYPE_t *data);

    MI_S32 MI_ISP_IQ_SetOBC_P1(MI_U32 Channel, MI_ISP_IQ_OBC_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetOBC_P1(MI_U32 Channel, MI_ISP_IQ_OBC_TYPE_t *data);

3.32.2. Automatic Mode Attribute Structure

  • Description

    Set the automatic mode attribute structure of optical black compensation.

  • Definition

    typedef struct OBC_AUTO_ATTR_s
    
    {
    
        OBC_PARAM_t stParaAPI[MI_ISP_AUTO_NUM];
    
    } OBC_AUTO_ATTR_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.

3.32.3. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of optical black compensation.

  • Definition

    typedef struct OBC_MANUAL_ATTR_s
    
    {
    
        OBC_PARAM_t stParaAPI;
    
    } OBC_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure.

3.32.4. Parameter Structure

  • Description

    Set the parameter structure of optical black compensation.

  • Definition

    typedef struct OBC_PARAM_s
    
    {
    
        MI_U16 u16ValR;
    
        MI_U16 u16ValGr;
    
        MI_U16 u16ValGb;
    
        MI_U16 u16ValB;
    
    } OBC_PARAM_t;
    
  • Name

    Variable Name Description
    u16ValR R channel optical black compensation controllable value. Pipeline 0 parameter range: 0 ~ 65535. Pipeline 1 parameter range: 0 ~ 65535.
    u16ValGr Gr channel optical black compensation controllable value. Pipeline 0 parameter range: 0 ~ 65535 Pipeline 1 parameter range: 0 ~ 65535
    u16ValGb Gb channel optical black compensation controllable value. Pipeline 0 parameter range: 0 ~ 65535 Pipeline 1 parameter range: 0 ~ 65535
    u16ValB B channel optical black compensation controllable value. Pipeline 0 parameter range: 0 ~ 65535 Pipeline 1 parameter range: 0 ~ 65535

3.33. MI_ISP_IQ_WDR Structure

3.33.1. Type Structure

  • Description

    Set the type structure of wide dynamic range.

  • Definition

    typedef struct MI_ISP_IQ_WDR_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_ISP_OP_TYPE_e  enOpType;
    
        WDR_AUTO_ATTR_t stAuto;
    
        WDR_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_WDR_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for wide dynamic range. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    enOpType Set the wide dynamic range mode. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    stAuto Set the wide dynamic range automatic mode attribute structure.
    stManual Set the wide dynamic range manual mode attribute structure.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetWDR(MI_U32 Channel, MI_ISP_IQ_WDR_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetWDR(MI_U32 Channel, MI_ISP_IQ_WDR_TYPE_t *data);

3.33.2. Automatic Mode Attribute Structure

  • Description

    Set the automatic mode attribute structure of wide dynamic range.

  • Definition

    typedef struct WDR_AUTO_ATTR_s
    
    {
    
        WDR_PARAM_t  stParaAPI[MI_ISP_AUTO_NUM];
    
    } WDR_AUTO_ATTR_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.

3.33.3. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of wide dynamic range.

  • Definition

    typedef struct WDR_MANUAL_ATTR_s
    
    {
    
        WDR_PARAM_t  stParaAPI;
    
    } WDR_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure.

3.33.4. Parameter Structure

  • Description

    Set the parameter structure of wide dynamic range.

  • Definition

    typedef struct WDR_PARAM_s
    
    {
    
        MI_U8 u8BoxNum;
    
        MI_ISP_BOOL_e bAutoDetailEnhance;
    
        MI_U8 u8ManualDetailEnhance;
    
        MI_U8 u8GlobalDarkToneEnhance;
    
        MI_U8 u8WDRStrByY[33];
    
        MI_U8 u8Strength;
    
        MI_U8 u8DarkLimit;
    
        MI_U8 u8BrightLimit;
    
        MI_ISP_BOOL_e bGammaSyncEn;
    
    } WDR_PARAM_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[33] Control the wide dynamic range strength by Y. Parameter range: 0 ~ 255.
    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.

3.34. MI_ISP_IQ_DYNAMIC_DP Structure

3.34.1. Type Structure

  • Description

    Set the type structure of dynamic dead-pixel compensation.

  • Definition

    typedef struct MI_ISP_IQ_DYNAMIC_DP_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_ISP_OP_TYPE_e  enOpType;
    
        DYNAMIC_DP_AUTO_ATTR_t stAuto;
    
        DYNAMIC_DP_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_DYNAMIC_DP_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for dynamic dead-pixel compensation. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    enOpType Set the mode of dynamic dead-pixel compensation. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    stAuto Set the automatic mode attribute structure of dynamic dead-pixel compensation.
    stManual Set the manual mode attribute structure of dynamic dead-pixel compensation.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetDynamicDP(MI_U32 Channel, MI_ISP_IQ_DYNAMIC_DP_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetDynamicDP(MI_U32 Channel, MI_ISP_IQ_DYNAMIC_DP_TYPE_t *data);

3.34.2. Automatic Mode Attribute Structure

  • Description

    Set the automatic mode attribute structure of dynamic dead pixel compensation.

  • Definition

    typedef struct DYNAMIC_DP_AUTO_ATTR_s
    
    {
    
        DYNAMIC_DP_PARAM_t stParaAPI[MI_ISP_AUTO_NUM];
    
    } DYNAMIC_DP_AUTO_ATTR_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.

3.34.3. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of dynamic dead pixel compensation.

  • Definition

    typedef struct DYNAMIC_DP_MANUAL_ATTR_s
    
    {
    
        DYNAMIC_DP_PARAM_t stParaAPI;
    
    } DYNAMIC_DP_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure.

3.34.4. Parameter Structure

  • Description

    Set the parameter structure of dynamic dead pixel compensation.

  • Definition

    typedef struct DYNAMIC_DP_PARAM_s
    
    {
    
        MI_ISP_BOOL_e bHotPixEn;
    
        MI_U16 u16HotPixCompSlpoe;
    
        MI_ISP_BOOL_e bDarkPixEn;
    
        MI_U16 u16DarkPixCompSlpoe;
    
        MI_U16 u16DPCTH;
    
        MI_ISP_BOOL_e bBlendEn;
    
        MI_U16 u16DiffLut[6];
    
        MI_U16 u16YLut[6];
    
    } DYNAMIC_DP_PARAM_t;
    
  • Name

    Variable Name Description
    bHotPixEn Set Boolean value for dynamic compensation hot pixel. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    u16HotPixCompSlpoe Adjust the dynamic compensation hot pixel threshold. Parameter range: 0 ~ 255.
    bDarkPixEn Set Boolean value for dynamic compensation dark pixel. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    u16DarkPixCompSlpoe Adjust the dynamic compensation dark pixel threshold. Parameter range: 0 ~ 255.
    u16DPCTH Set the threshold of dynamic dead-pixel compensation. Parameter range: 0 ~ 255.
    bBlendEn Set Boolean value for blending. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    u16DiffLut[6] Blending depends on the difference between DPC result and original one. Parameter range: 0 ~ 1024.
    u16YLut[6]; Blending depends on Y. Parameter range: 0 ~ 1024.

3.35. MI_ISP_IQ_DYNAMIC_DP_CLUSTER Structure

3.35.1. Type Structure

  • Description

    Set the type structure of dynamic dead-pixel compensation.

  • Definition

    typedef struct MI_ISP_IQ_DYNAMIC_DP_CLUSTER_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_ISP_OP_TYPE_e  enOpType;
    
        DYNAMIC_DP_CLUSTER_AUTO_ATTR_t stAuto;
    
        DYNAMIC_DP_CLUSTER_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_DYNAMIC_DP_CLUSTER _TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for dynamic dead-pixel compensation. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    enOpType Set the mode of dynamic dead-pixel compensation. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    stAuto Set the automatic mode attribute structure of dynamic dead-pixel compensation.
    stManual Set the manual mode attribute structure of dynamic dead-pixel compensation.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetDynamicDP_CLUSTER(MI_U32 Channel, MI_ISP_IQ_DYNAMIC_DP_CLUSTER TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetDynamicDP_CLUSTER (MI_U32 Channel, MI_ISP_IQ_DYNAMIC_DP_CLUSTER_TYPE_t *data);

3.35.2. Automatic Mode Attribute Structure

  • Description

    Set the automatic mode attribute structure of dynamic dead-pixel compensation.

  • Definition

    typedef struct DYNAMIC_DP_CLUSTER_AUTO_ATTR_s
    
    {
    
        DYNAMIC_DP_PARAM_t stParaAPI[MI_ISP_AUTO_NUM];
    
    } DYNAMIC_DP_CLUSTER_AUTO_ATTR_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.

3.35.3. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of dynamic dead-pixel compensation.

  • Definition

    typedef struct DYNAMIC_DP_CLUSTER_MANUAL_ATTR_s
    
    {
    
        DYNAMIC_DP_PARAM_t  stParaAPI;
    
    } DYNAMIC_DP_CLUSTER_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure.

3.35.4. Parameter Structure

  • Description

    Set the parameter structure of dynamic dead-pixel compensation.

  • Definition

    typedef struct DYNAMIC_DP_CLUSTER_PARAM_s
    
    {
    
        MI_ISP_BOOL_e bEdgeMode;
    
        MI_U16 u16NeiDeltaTh;
    
        MI_U8 u8NeiSmooth;
    
        MI_ISP_BOOL_e bSortEn;
    
        MI_ISP_BOOL_e bSortRGGBEn[4];
    
        MI_ISP_BOOL_e bSort1x3ModeEn;
    
        MI_U16 u16SortLumTblL[6];
    
        MI_U16 u16SortLumTblD[6];
    
        MI_U16 u16SortLumTblS[6];
    
    } DYNAMIC_DP_CLUSTER_PARAM_t;
    
  • Name

    Variable Name Description
    bEdgeMode Set Boolean value for edge mode. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    u16NeiDeltaTh Diff threshold between the center point and surrounding 8 points. Parameter range: 0 ~ 4095.
    u8NeiSmooth Accumulated threshold between the center point and surrounding 8 points. Parameter range: 0 ~ 8.
    bSortEn Sort mode enable.
    bSortRGGBEn[4] Sort mode channel enable.
    bSort1x3ModeEn 1x3 mode enable.
    u16SortLumTblL[6] Threshold of the two brightest points. Parameter range: 0 ~ 4095.
    u16SortLumTblD[6] Threshold of the two darkest points. Parameter range: 0 ~ 4095.
    u16SortLumTblS[6] Threshold of the second and third brightest (darkest) points. Parameter range: 0 ~ 4095.

3.36. MI_ISP_IQ_HSV Structure

3.36.1. Type Structure

  • Description

    Set the type structure of HSV.

  • Definition

    typedef struct MI_ISP_IQ_HSV_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_ISP_OP_TYPE_e  enOpType;
    
        HSV_AUTO_ATTR_t stAuto;
    
        HSV_MANUAL_ATTR_t  stManual;
    
    } MI_ISP_IQ_HSV_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for HSV. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    enOpType Set the mode of HSV. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    stAuto Set the automatic mode attribute structure of HSV.
    stManual Set the manual mode attribute structure of HSV.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetHSV(MI_U32 Channel, MI_ISP_IQ_HSV_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetHSV(MI_U32 Channel, MI_ISP_IQ_HSV_TYPE_t *data);

3.36.2. Automatic Mode Attribute Structure

  • Description

    Set the automatic mode attribute structure of HSV.

  • Definition

    typedef struct HSV_AUTO_ATTR_s
    
    {
    
        HSV_PARAM_t stParaAPI[MI_ISP_AUTO_NUM];
    
    } HSV_AUTO_ATTR_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.

3.36.3. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of HSV.

  • Definition

    typedef struct HSV_MANUAL_ATTR_s
    
    {
    
        HSV_PARAM_t stParaAPI;
    
    } HSV_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure.

3.36.4. Parameter Structure

  • Description

    Set the parameter structure of HSV.

  • Definition

    typedef struct HSV_PARAM_s
    
    {
    
        MI_S16 s16HueLut[24];
    
        MI_U16 u16SatLut[24];
    
        MI_S16 s16HueLut_ForUnitCCM[24];
    
        MI_U16 u16SatLut_ForUnitCCM[24];
    
        MI_U8 u8GlobalSat;
    
    } HSV_PARAM_t;
    
  • Name

    Variable Name Description
    s16HueLut[24] Divide the 360 degree hue circle into 24 equal sectors, to control the hue rotation angle of the respective sectors. The hue rotation angle will be switched according to color temperature in automatic mode. Parameter range: -15 ~ 15.
    u16SatLut[24] Divide the 360 degree hue circle into 24 equal sectors, to control the saturation of the respective sectors. The saturation will be switched according to color temperature in automatic mode. Parameter range: 0 ~ 255 (64 = 1x).
    s16HueLut_ForUnitCCM[24] Divide the 360 degree hue circle into 24 equal sectors, to control the hue rotation angle and the unit CCM matching parameter of the respective sectors. The hue rotation angle and the unit CCM matching parameter will be switched according to color temperature in automatic mode. Parameter range: -15 ~ 15.
    u16SatLut_ForUnitCCM[24] Divide the 360 degree hue circle into 24 equal sectors, to control the saturation and the unit CCM matching parameter of the respective sectors. The saturation and the unit CCM matching parameter will be switched according to color temperature in automatic mode. Parameter range: 0 ~ 255 (64 = 1x).
    u8GlobalSat Global saturation control, will be switched according to gain value in automatic mode. Parameter range: 0 ~ 255 (64 = 1x).

3.37. MI_ISP_IQ_RGBIR Structure

3.37.1. Type Structure

  • Description

    Set the type structure of RGBIR.

  • Definition

    typedef struct MI_ISP_IQ_RGBIR_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_ISP_OP_TYPE_e  enOpType;
    
        RGBIR_AUTO_ATTR_t stAuto;
    
        RGBIR_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_RGBIR_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for RGBIR. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    enOpType Set the mode of RGBIR. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    stAuto Set the automatic mode attribute structure of RGBIR.
    stManual Set the manual mode attribute structure of RGBIR.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetRGBIR(MI_U32 Channel, MI_ISP_IQ_RGBIR_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetRGBIR(MI_U32 Channel, MI_ISP_IQ_RGBIR_TYPE_t *data);

3.37.2. Automatic Mode Attribute Structure

  • Description

    Set the automatic mode attribute structure of RGBIR.

  • Definition

    typedef struct RGBIR_AUTO_ATTR_s
    
    {
    
        RGBIR_PARAM_t  stParaAPI[MI_ISP_AUTO_NUM];
    
    } RGBIR_AUTO_ATTR_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.

3.37.3. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of RGBIR.

  • Definition

    typedef struct RGBIR_MANUAL_ATTR_s
    
    {
    
        RGBIR_PARAM_t  stParaAPI;
    
    } RGBIR_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure.

3.37.4. Parameter Structure

  • Description

    Set the parameter structure of RGBIR.

  • Definition

    typedef struct RGBIR_PARAM_s
    
    {
    
        MI_U8 u8IrPosType;
    
        MI_ISP_BOOL_e bRemovelEn;
    
        MI_U16 u16Ratio_R[6];
    
        MI_U16 u16Ratio_G[6];
    
        MI_U16 u16Ratio_B[6];
    
    } RGBIR_PARAM_t;
    
  • Name

    Variable Name Description
    u8IrPosType RGBIR position type. Parameter range: 0 ~ 7, default is 0.
    bRemovelEn Set Boolean value for IR removal, default is 1. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    u16Ratio_R[6] Red IR removal ratio, from dark to bright \@12 bits.
    u16Ratio_G[6] Green IR removal ratio, from dark to bright \@12 bits.
    u16Ratio_B[6] Blue IR removal ratio, from dark to bright \@12 bits.

3.38. MI_ISP_IQ_DEMOSAIC Structure

3.38.1. Type Structure

  • Description

    Set the demosaic type structure.

  • Definition

    typedef struct MI_ISP_IQ_DEMOSAIC_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        DEMOSAIC_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_DEMOSAIC_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for demosaic function. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    stManual Set the manual mode attribute structure of demosaic.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetDEMOSAIC(MI_U32 Channel, MI_ISP_IQ_DEMOSAIC_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetDEMOSAIC(MI_U32 Channel, MI_ISP_IQ_DEMOSAIC_TYPE_t *data);

3.38.2. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of demosaic.

  • Definition

    typedef struct DEMOSAIC_MANUAL_ATTR_s
    
    {
    
        DEMOSAIC_PARAM_t  paraAPI;
    
    } DEMOSAIC_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure.

3.38.3. Parameter Structure

  • Description

    Set the parameter structure of demosaic.

  • Definition

    typedef struct DEMOSAIC_PARAM_s
    
    {
    
        MI_U8 u8DirThrd;
    
        MI_U8 u8EdgeSmoothThrdY;
    
        MI_U8 u8EdgeSmoothThrdC;
    
    } DEMOSAIC_PARAM_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.

3.39. MI_ISP_IQ_R2Y Structure

3.39.1. Type Structure

  • Description

    Set the type structure of color transition.

  • Definition

    typedef struct MI_ISP_IQ_R2Y_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        R2Y_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_R2Y_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for color transition. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    stManual Set the manual mode attribute structure of color transition.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetR2Y(MI_U32 Channel, MI_ISP_IQ_R2Y_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetR2Y(MI_U32 Channel, MI_ISP_IQ_R2Y_TYPE_t *data);

3.39.2. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of color transition.

  • Definition

    typedef struct R2Y_MANUAL_ATTR_s
    
    {
    
        R2Y_PARAM_t  stParaAPI;
    
    } R2Y_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure.

3.39.3. Parameter Structure

  • Description

    Set the parameter structure of color transition.

  • Definition

    typedef struct R2Y_PARAM_s
    
    {
    
        MI_U16 u16Matrix[9];
    
        MI_U8 u8AddY16;
    
    } R2Y_PARAM_t;
    
  • Name

    Variable Name Description
    u16Matrix[9] Adjust RGB to YUV color transform. Parameter range: 0 ~ 8191, value 1024 means 1x gain. Use 2’s complement to represent negative number, equal to ±3.996 gain.
    u8AddY16 Adjust Y offset after color transform, to determine whether or not to add 16 to Y channel.

3.40. MI_ISP_IQ_COLORTRANS Structure

3.40.1. Type Structure

  • Description

    Set the type structure of color transition.

  • Definition

    typedef struct MI_ISP_IQ_COLORTRANS_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        COLORTRANS_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_COLORTRANS_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for color transition. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    stManual Set the manual mode attribute structure of color transition.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetCOLORTRANS(MI_U32 Channel, MI_ISP_IQ_COLORTRANS_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetCOLORTRANS(MI_U32 Channel, MI_ISP_IQ_COLORTRANS_TYPE_t *data);

3.40.2. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of color transition.

  • Definition

    typedef struct COLORTRANS_MANUAL_ATTR_s
    
    {
    
        COLORTRANS_PARAM_t stParaAPI;
    
    } COLORTRANS_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure.

3.40.3. Parameter Structure

  • Description

    Set the parameter structure of color transition.

  • Definition

    typedef struct COLORTRANS_PARAM_s
    
    {
    
        MI_U16 u16Y_OFST;
    
        MI_U16 u16U_OFST;
    
        MI_U16 u16V_OFST;
    
        MI_U16 u16Matrix[9];
    
    } COLORTRANS_PARAM_t;
    
  • Name

    Variable Name Description
    u16Y_OFST Adjust Y offset in 10-bit domain. Parameter range: 0 ~ 2047. Use 2’s complement to represent negative number, equal to ±1023.
    u16U_OFST Adjust U offset in 10-bit domain. Parameter range: 0 ~ 2047. Use 2’s complement to represent negative number, equal to ±1023.
    u16V_OFST Adjust V offset in 10-bit domain. Parameter range: 0 ~ 2047. Use 2’s complement to represent negative number, equal to ±1023.
    u16Matrix[9] Adjust RGB to YUV data range. Parameter range: 0 ~ 1023, value 256 means 1x gain. Use 2’s complement to represent negative number, equal to ±1.996.
  • Note

    YUV_OFST and Matrix[9] use 2’s complement 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 = \left( 0.257*R \right) + \left( 0.504*G \right) + \left( 0.098*B \right) + 16
    Cb = - \left( 0.148*R \right) - \left( 0.291*G \right) + \left( 0.439*B \right) + 128
    Cr = \left( 0.439*R \right) - \left( 0.368*G \right) - \left( 0.071*B \right) + 128

    Matrix[9] = {66, 129, 25, 986, 950, 112, 112, 930, 1006}

    Y_OFST = 64

    U_OFST = 0 (add 128*4 by default, so input 0)

    V_OFST = 0 (add 128*4 by default, so input 0)


3.41. MI_ISP_IQ_HDR Structure

3.41.1. Type Structure

  • Description

    Set the type structure of high dynamic range.

  • Definition

    typedef struct MI_ISP_IQ_HDR_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_ISP_OP_TYPE_e  enOpType;
    
        HDR_AUTO_ATTR_t  stAuto;
    
        HDR_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_HDR_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for high dynamic range. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    enOpType Set the mode of high dynamic range. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    stAuto Set the automatic mode attribute structure of high dynamic range.
    stManual Set the manual mode attribute structure of high dynamic range.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetHDR(MI_U32 Channel, MI_ISP_IQ_HDR_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetHDR(MI_U32 Channel, MI_ISP_IQ_HDR_TYPE_t *data);

3.41.2. Automatic Mode Attribute Structure

  • Description

    Set the automatic mode attribute structure of high dynamic range.

  • Definition

    typedef struct HDR_AUTO_ATTR_s
    
    {
    
        HDR_PARAM_t stParaAPI[MI_ISP_AUTO_NUM];
    
    } HDR_AUTO_ATTR_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.

3.41.3. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of high dynamic range.

  • Definition

    typedef struct HDR_MANUAL_ATTR_s
    
    {
    
        HDR_PARAM_t stParaAPI;
    
    } HDR_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure.

3.41.4. Parameter Structure

  • Description

    Set the parameter structure of high dynamic range.

  • Definition

    typedef struct HDR_PARAM_s
    
    {
    
        MI_ISP_BOOL_e bNrEn;
    
        MI_U16 u16YwtTh1;
    
        MI_U16 u16YwtTh2;
    
        MI_U16 u16NoiseLevel[16];
    
        MI_U16 u16MotionTh;
    
        MI_U16 u16MotionAdjLut[7];
    
    } HDR_PARAM_t;
    
  • Name

    Variable Name Description
    bNrEn Control the short exposure NR switch. Parameter range: 0 ~ 1.
    u16YwtTh1 Long exposure min. Y threshold. Parameter range: 0 ~ 1023.
    u16YwtTh2 Long exposure max. Y threshold. Parameter range: 1 ~ 1023.
    u16NoiseLevel[16] Noise level. The horizontal axis represents brightness. Parameter range: 0 ~ 1023.
    u16MotionTh Motion threshold. When higher than this threshold, the image is judged as in motion and will be blended by the motion. When lower than this threshold, the image is judged as in stillness and will be blended by Y. Parameter range: 0 ~ 256.
    u16MotionAdjLut[7] Ratio of use of long exposure in motion area. The horizontal axis represents the degree of motion. The closer to the right end of the axis, the more motion. Parameter range: 0 ~ 256.

3.42. MI_ISP_IQ_LSC Structure

3.42.1. Type Structure

  • Description

    Set the type structure of LSC.

  • Definition

    typedef struct MI_ISP_IQ_LSC_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_U16 u16CenterX;
    
        MI_U16 u16CenterY;
    
        MI_U8 u8Shift;
    
        MI_U16 u16RGainTable[32*3];
    
        MI_U16 u16GGainTable[32*3];
    
        MI_U16 u16BGainTable[32*3];
    
    } MI_ISP_IQ_LSC_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for LSC function. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    u16CenterX Set the X-axis compensation center point. Parameter range: 0 ~ 4095.
    u16CenterY Set the Y-axis compensation center point. Parameter range: 0 ~ 4095.
    u8Shift This parameter is set on the basis of resolution, modification is not suggested. Parameter range: 0 ~ 31.
    u16RGainTable[32*3] R channel LSC compensation table. Parameter range: 0 ~ 1023.
    u16GGainTable[32*3] G channel LSC compensation table. Parameter range: 0 ~ 1023.
    u16BGainTable[32*3] B channel LSC compensation table. Parameter range: 0 ~ 1023.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetLSC(MI_U32 Channel, MI_ISP_IQ_LSC_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetLSC(MI_U32 Channel, MI_ISP_IQ_LSC_TYPE_t *data);


3.43. MI_ISP_IQ_LSC_CTRL Structure

3.43.1. Type Structure

  • Description

    Set the type structure of LSC CTRL.

  • Definition

    typedef struct MI_ISP_IQ_LSC_CTRL_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_U8 u8RRatioByCct[3];
    
        MI_U8 u8GRatioByCct[3];
    
        MI_U8 u8BRatioByCct[3];
    
        INTP_LUT_IQ RatioByBv;
    
    } MI_ISP_IQ_LSC_TYPE_t;
    
    typedef struct
    
    {
    
        MI_U16 u16NumOfPoints;
    
        MI_S32 s32Y[16];
    
        MI_S32 s32X[16];
    
    } INTP_LUT_IQ;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for LSC CTRL function. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    u8RRatioByCct [3] R channel LSC additional ratio. Parameter range: 0 ~ 128 (128 = 1x).
    u8GRatioByCct [3] G channel LSC additional ratio. Parameter range: 0 ~ 128 (128 = 1x).
    u8BRatioByCct [3] B channel LSC additional ratio. Parameter range: 0 ~ 128 (128 = 1x).
    RatioByBv.u16NumOfPoints Number of effective points in the table data. Parameter range: 0 ~ 16.
    RatioByBv.s32Y Ratio corresponding to each point. Parameter range: 0 ~ 128 (128 = 1x).
    RatioByBv.s32X BV corresponding to each point.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetLSC_CTRL(MI_U32 Channel, MI_ISP_IQ_LSC_CTRL TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetLSC_CTRL (MI_U32 Channel, MI_ISP_IQ_LSC_CTRL_TYPE_t *data);


3.44. MI_ISP_IQ_ALSC Structure

3.44.1. Type Structure

  • Description

    Set the type structure of ALSC.

  • Definition

    typedef struct MI_ISP_IQ_ALSC_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_U8 u8GridX;
    
        MI_U8 u8GridY;
    
        MI_U16 u16CCTthr[3];
    
        MI_U8 u8DeltaMode;
    
        MI_ISP_BOOL_e bDeltaModeAdvEn;
    
        MI_U8 u8DeltaLutX[26];
    
        MI_U8 u8DeltaLutY[26];
    
        MI_U16 u16TableR[459*3];
    
        MI_U16 u16TableG[459*3];
    
        MI_U16 u16TableB[459*3];
    
    } MI_ISP_IQ_ALSC_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for ALSC function. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    u8GridX Total number of X-axis shading table grids. Parameter range: 0 ~ 27.
    u8GridY Total number of Y-axis shading table grids. Parameter range: 0 ~ 17.
    u16CCTthr[3] Color temperature node. Parameter range: 0 ~ 20000.
    u8DeltaMode Mode with 16 default shading table spacings. 0 means isometric. The greater the value, the greater the spacing in the center and the smaller the spacing in the surrounding area. Parameter range: 0 ~ 15.
    bDeltaModeAdvEn Manual control of each grid spacing. When enabled, u8DeltaMode will be of no use. Parameter range: 0 ~ 1.
    u8DeltaLutX[26] X-axis grid spacing. Only value 1, 2, 4, 8 and 16 are valid. Parameter range: 0 ~ 16.
    u8DeltaLutY[26] Y-axis grid spacing. Only value 1, 2, 4, 8 and 16 are valid. Parameter range: 0 ~ 16.
    u16TableR[459*3] R channel ALSC compensation table. Parameter range: 0 ~ 8191 (1024 = 1x).
    u16TableG[459*3] G channel ALSC compensation table. Parameter range: 0 ~ 8191 (1024 = 1x).
    u16TableB[459*3] B channel ALSC compensation table. Parameter range: 0 ~ 8191 (1024 = 1x).
  • Note

    Do not set the R/G/B Table to a value lower than 1024; otherwise, the high brightness part might have a color shift problem due to unsaturatedness.

  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetALSC(MI_U32 Channel, MI_ISP_IQ_ALSC_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetALSC(MI_U32 Channel, MI_ISP_IQ_ALSC_TYPE_t *data);


3.45. MI_ISP_IQ_ALSC_CTRL Structure

3.45.1. Type Structure

  • Description

    Set the type structure of ALSC CTRL.

  • Definition

    typedef struct MI_ISP_IQ_ALSC_CTRL_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_U8 u8RRatioByCct[3];
    
        MI_U8 u8GRatioByCct[3];
    
        MI_U8 u8BRatioByCct[3];
    
        INTP_LUT_IQ RatioByBv;
    
    } MI_ISP_IQ_ALSC_TYPE_t;
    
    typedef struct
    
    {
    
        MI_U16 u16NumOfPoints;
    
        MI_S32 s32Y[16];
    
        MI_S32 s32X[16];
    
    } INTP_LUT_IQ;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for ALSC CTRL function. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    u8RRatioByCct [3] R channel ALSC additional ratio. Parameter range: 0 ~ 128 (128 = 1x).
    u8GRatioByCct [3] G channel ALSC additional ratio. Parameter range: 0 ~ 128 (128 = 1x).
    u8BRatioByCct [3] B channel ALSC additional ratio. Parameter range: 0 ~ 128 (128 = 1x).
    RatioByBv.u16NumOfPoints Number of effective points in the table data. Parameter range: 0 ~ 16.
    RatioByBv.s32Y Ratio corresponding to each point. Parameter range: 0 ~ 128 (128 = 1x).
    RatioByBv.s32X BV corresponding to each point.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetALSC_CTRL(MI_U32 Channel, MI_ISP_IQ_ALSC_CTRL _TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetALSC_CTRL (MI_U32 Channel, MI_ISP_IQ_ALSC_CTRL _TYPE_t *data);


3.46. MI_ISP_IQ_DAYNIGHT_DETECTION Structure

3.46.1. Type Structure

  • Description

    Set the type structure of Day/Night detection.

  • Definition

    typedef struct MI_ISP_DAYNIGHT_DETECTION_TYPE_s
    {
        MI_ISP_BOOL_e   bEnable;
        MI_S32          s32D2N_BvThd;
        MI_U32          u32N2D_VsbLtScoreThd;
    } MI_ISP_DAYNIGHT_DETECTION_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for the Day/Night detection function. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    s32D2N_BvThd The threshold value of brightness for determining whether Day mode should be switched to Night mode. If the current brightness value (accessible as “BV” in AEInfo) falls below this threshold, the D2N field in the DayNightInfo interface will show “1” and become true. Value range: -1048576 ~ 1048576.
    u32N2D_VsbLtScoreThd Score threshold for determining whether Night mode should be switched 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 (accessible as “N2D_VsbLtScore” in the DayNightInfo interface) grows larger than this threshold, the N2D field in the DayNightInfo interface will show “1” and become true. Value range: 0 ~ 2000.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetDayNightDetection (MI_U32 Channel, MI_ISP_DAYNIGHT_DETECTION_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetDayNightDetection (MI_U32 Channel, MI_ISP_DAYNIGHT_DETECTION_TYPE_t *data);


3.47. MI_ISP_IQ_QueryDayNightInfo Structure

3.47.1. Type Structure

  • Description

    Get the type structure of Day/Night detection result.

  • Definition

    typedef struct MI_ISP_DAYNIGHT_INFO_TYPE_s
    {
        MI_ISP_BOOL_e   bD2N;
        MI_ISP_BOOL_e   bN2D;
        MI_U32          u32N2D_VsbLtScore;
    } MI_ISP_DAYNIGHT_INFO_TYPE_t;
    
  • Name

    Variable Name Description
    bD2N Field for determining whether switching to Night mode is necessary. The value “1” means that the current environmental brightness has met the switching condition. Note: The field is only meaningful when the current mode is Day mode.
    bN2D Field for determining whether switching to Day mode is necessary. The value “1” means that the current environmental brightness has met the switching condition. Note: The field is only meaningful when the current mode is Night mode.
    u32N2D_VsbLtScore The score as calculated by the ratio of visible light to IR light. Higher score means visible light is more dominant in the environment. In cases where switching to Day mode is considered desirable, users can read this score to set “N2D_VsbLtScoreThd” in the DayNightDetection Adjustment Interface.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_QueryDayNightInfo (MI_U32 Channel, MI_ISP_DAYNIGHT_INFO_TYPE_t *data);


3.48. MI_ISP_IQ_NRLUMA_ADV Structure

3.48.1. Type Structure

  • Description

    Set the type structure of Luma_Adv noise reduction.

  • Definition

    typedef struct MI_ISP_IQ_NRLUMA_ADV_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_ISP_OP_TYPE_e  enOpType;
    
        NRLUMA_ADV_AUTO_ATTR_t stAuto;
    
        NRLUMA_ADV_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_NRLUMA_ADV_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for Luma_Adv noise reduction. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    enOpType Set the mode of Luma_Adv noise reduction. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    stAuto Set the automatic mode attribute structure of Luma_Adv noise reduction.
    stManual Set the manual mode attribute structure of Luma_Adv noise reduction.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetNRLuma_Adv(MI_U32 Channel, MI_ISP_IQ_NRLUMA_ADV_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetNRLuma_Adv(MI_U32 Channel, MI_ISP_IQ_NRLUMA_ADV_TYPE_t *data);

3.48.2. Automatic Mode Attribute Structure

  • Description

    Set the automatic mode attribute structure of Luma_Adv noise reduction.

  • Definition

    typedef struct NRLUMA_ADV_AUTO_ATTR_s
    
    {
    
        NRLUMA_ADV_PARAM_t
        stParaAPI[MI_ISP_AUTO_NUM];
    
    } NRLUMA_ADV_AUTO_ATTR_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.

3.48.3. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of Luma_Adv noise reduction.

  • Definition

    typedef struct NRLUMA_ADV_MANUAL_ATTR_s
    
    {
    
        NRLUMA_ADV_PARAM_t stParaAPI;
    
    } NRLUMA_ADV_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure

3.48.4. Parameter Structure

  • Description

    Set the parameter structure of Luma_Adv noise reduction.

  • Definition

    typedef struct NRLUMA_ADV_PARAM_s
    
    {
    
        MI_ISP_BOOL_e bDbgEn;
    
        MI_U8 u8Strength;
    
        MI_U8 u8StrengthByY[10];
    
        MI_U8 u8StrengthByMot[16];
    
        MI_U16 u16EdgeTh[8];
    
        MI_U32 u32EdgeGain[8];
    
        MI_U8 u8StrengthByType[2];
    
    } NRLUMA_ADV_PARAM_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[10] 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.
    u8StrengthByMot[16] 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.
    u16EdgeTh[8] 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.
    u32EdgeGain[8] 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.
    u8StrengthByType[2] 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.

3.49. MI_ISP_IQ_NRCHROMA_ADV Structure

3.49.1. Type Structure

  • Description

    Set the type structure of Chroma_Adv noise reduction.

  • Definition

    typedef struct MI_ISP_IQ_NRCHROMA_ADV_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_ISP_OP_TYPE_e  enOpType;
    
        NRCHROMA_ADV_AUTO_ATTR_t stAuto;
    
        NRCHROMA_ADV MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_NRCHROMA_ADV_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for Chroma_Adv noise reduction. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    enOpType Set the mode of Chroma_Adv noise reduction. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    stAuto Set the automatic mode attribute structure of Chroma_Adv noise reduction.
    stManual Set the manual mode attribute structure of Chroma_Adv noise reduction.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetNRChroma_Adv (MI_U32 Channel, MI_ISP_IQ_NRCHROMA_ADV_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetNRChroma_Adv (MI_U32 Channel, MI_ISP_IQ_NRCHROMA_ADV TYPE_t *data);

3.49.2. Automatic Mode Attribute Structure

  • Description

    Set the automatic mode attribute structure of Chroma_Adv noise reduction.

  • Definition

    typedef struct NRCHROMA_ADV_AUTO_ATTR_s
    
    {
    
        NRCHROMA_ADV_PARAM_t  stParaAPI[MI_ISP_AUTO_NUM];
    
    } NRCHROMA_ADV_AUTO_ATTR_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.

3.49.3. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of Chroma_Adv noise reduction.

  • Definition

    typedef struct NRCHROMA_ADV_MANUAL_ATTR_s
    
    {
    
        NRCHROMA_ADV_PARAM_t stParaAPI;
    
    } NRCHROMA_ADV_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure

3.49.4. Parameter Structure

  • Description

    Set the parameter structure of Chroma_Adv noise reduction.

  • Definition

    typedef struct NRCHROMA_ADV_PARAM_s
    
    {
    
        MI_U8 u8StrengthByY[8];
    
        MI_U8 u8StrengthByYEdge[8];
    
        MI_U8 u8StrengthByCEdge[8];
    
        MI_U8 u8MaxStrength;
    
        MI_U8 u8StaticLimitRatio;
    
        MI_U8 u8MotionClip;
    
        MI_U8 u8MotionColorReduce;
    
        MI_U8 u8MotionColorRecover;
    
        MI_U8 u8PreStrength;
    
    } NRCHROMA_ADV_PARAM_t;
    
  • Name

    Variable Name Description
    u8StrengthByY[8] 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. Parameter range: 0 ~ 32.
    u8StrengthByYEdge[8] Use Luma to detect the degree of an edge and adjust NR strength according to different edges. The closer to the right end of the horizontal axis, the bigger the edge. The greater the value, the stronger the strength. Parameter range: 0 ~ 63.
    u8StrengthByCEdge[8] Use Chroma to detect the degree of an edge and adjust NR strength according to different edges. The closer to the right end of the horizontal axis, the bigger the edge. The greater the value, the stronger the strength. Parameter range: 0 ~ 255.
    u8MaxStrength Control the NR strength of areas with small Y/C difference. The greater the value, the stronger the strength. Parameter range: 0 ~ 255.
    u8StaticLimitRatio Control the NR strength of still areas. The greater the value, the stronger the strength. Parameter range: 0 ~ 63.
    u8MotionClip Increase the NR strength of motion areas. The greater the value, the stronger the strength. Parameter range: 0 ~ 255.
    u8MotionColorReduce Reduce the saturation of motion areas. The greater the value, the greater the saturation is reduced. Parameter range: 0 ~ 255.
    u8MotionColorRecover Recover the gain of saturation reduced by MotionColorReduce against motion areas. The greater the value, the greater the saturation is recovered. Parameter range: 0 ~ 255.
    u8PreStrength Perform simple Chroma noise reduction. The greater the value, the stronger the strength. Parameter range: 0 ~ 128.

3.50. MI_ISP_IQ_PFC Structure

3.50.1. Type Structure

  • Description

    Set the type structure of PFC.

  • Definition

    typedef struct MI_ISP_IQ_PFC_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_ISP_OP_TYPE_e  enOpType;
    
        PFC_AUTO_ATTR_t stAuto;
    
        PFC_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_PFC_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set for PFC. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    enOpType Set the mode of PFC. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    stAuto Set the automatic mode attribute structure of PFC.
    stManual Set the manual mode attribute structure of PFC.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetPFC (MI_U32 Channel, MI_ISP_IQ_PFC_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetPFC (MI_U32 Channel, MI_ISP_IQ_PFC_TYPE_t *data);

3.50.2. Automatic Mode Attribute Structure

  • Description

    Set the automatic mode attribute structure of PFC.

  • Definition

    typedef struct PFC_AUTO_ATTR_s
    
    {
    
        PFC_PARAM_t stParaAPI[MI_ISP_AUTO_NUM];
    
    } PFC_AUTO_ATTR_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.

3.50.3. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of PFC.

  • Definition

    typedef struct PFC_MANUAL_ATTR_s
    
    {
    
        PFC_PARAM_t stParaAPI;
    
    } PFC_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure

3.50.4. Parameter Structure

  • Description

    Set the parameter structure of PFC.

  • Definition

    typedef struct PFC_PARAM_s
    
    {
    
        MI_U8 u8Strength;
    
        MI_U8 u8UStrength;
    
        MI_U8 u8VStrength;
    
        MI_U8 u8StrengthByY[8];
    
        MI_U8 u8FlatProtect;
    
        MI_U8 u8SatByY[2];
    
        MI_U8 u8SatSrcSel;
    
        MI_U8 u8StrengthByContrast[8];
    
    } PFC_PARAM_t;
    
  • Name

    Variable Name Description
    u8Strength PFC strength. The greater the value, the stronger the strength. Parameter range: 0 ~ 255.
    u8UStrength PFC strength against U channel. The greater the value, the stronger the strength. Parameter range: 0 ~ 63.
    u8VStrength PFC strength against V channel. The greater the value, the stronger the strength. Parameter range: 0 ~ 63.
    u8StrengthByY[8] Since purple fringe normally occurs at a darker spot surrounded by high-brightness areas, we can assign different PFC strengths against different brightnesses. The closer to the right end of the horizontal axis, the stronger the brightness. The greater the value, the stronger the strength. Parameter range: 0 ~ 255.
    u8FlatProtect Flat-area judgement to protect large areas of purple from being misjudged as purple fringe. The greater the value, the wider the areas to be exempt from PFC processing. Parameter range: 0 ~ 127.
    u8SatByY[2] High-contrast-area judgement. Since purple fringe normally occurs in areas with relatively higher contrast, we can use SatByY[0] to judge the extent of the contrast. Higher value mean that the detected contrast must be higher than SatByY[0] to be judged as high contrast. SatByY[1] is used to judge the extent of brightness saturation. Higher value means brighter areas will be exempt from PFC processing. Parameter range: 0 ~ 25.
    u8SatSrcSel Decide whether or not to perform NR pre-processing when making high-contrast judgement. 0 for not performing NR, and 1 for performing NR. We suggest that you enable this feature in low-luminance cases. Parameter range: 0 ~ 1.
    u8StrengthByContrast[8] Adjust PFC strength by contrast. The closer to the right end of the horizontal axis, the stronger the strength. The greater the value, the stronger the PFC strength. Parameter range: 0 ~ 63.

3.51. MI_ISP_IQ_PFC_EX Structure

3.51.1. Type Structure

  • Description

    Set the type structure of PFC_EX.

  • Definition

    typedef struct MI_ISP_IQ_PFC_EX_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        PFC_EX_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_PFC_EX_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for PFC_EX. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    stManual Set the manual mode attribute structure of PFC_EX.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetPFC_EX (MI_U32 Channel, MI_ISP_IQ_PFC_EX_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetPFC_EX (MI_U32 Channel, MI_ISP_IQ_PFC_EX_TYPE_t *data);

3.51.2. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of PFC_EX.

  • Definition

    typedef struct PFC_EX_MANUAL_ATTR_s
    
    {
    
        PFC_EX_PARAM_t  stParaAPI;
    
    } PFC_EX_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure

3.51.3. Parameter Structure

  • Description

    Set the parameter structure of PFC_EX.

  • Definition

    typedef struct PFC_EX_PARAM_s
    
    {
    
        MI_ISP_BOOL_e bDbgEn;
    
        MI_ISP_BOOL_e bGSkipEn;
    
        MI_U8 u8SatMaskSel;
    
        MI_ISP_BOOL_e bSatAmpEn;
    
        MI_U8 u8StrengthByHue[12];
    
    } PFC_EX_PARAM_t;
    
  • Name

    Variable Name Description
    bDbgEn PFC function enable. Parameter range: 0 ~ 1, 1 for enable.
    bGSkipEn Skip PFC processing of G Channel, to protect against edge loss issue. Parameter range: 0 ~ 1, 1 for enable.
    u8SatMaskSel Select size of the mask for contrast-area judgement. Parameter range: 0 ~ 1. Mask 0 is smaller, and Mask 1 bigger.
    bSatAmpEn When enabled during contrast-area judgement, this function can increase the accuracy of contrast judgement.
    u8StrengthByHue[12] Adjust PFC strength by hue. Parameter range: 0 ~ 255.

3.52. MI_ISP_IQ_HDR_EX Structure

3.52.1. Type Structure

  • Description

    Set the type structure of HDR_EX.

  • Definition

    typedef struct MI_ISP_IQ_HDR_EX_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        HDR_EX_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_HDR_EX_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for HDR_EX. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    stManual Set the manual mode attribute structure of HDR_EX.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetHDR_EX (MI_U32 Channel, MI_ISP_IQ_HDR_EX_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetHDR_EX(MI_U32 Channel, MI_ISP_IQ_HDR_EX_TYPE_t *data);

3.52.2. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of HDR_EX.

  • Definition

    typedef struct HDR_EX_MANUAL_ATTR_s
    
    {
    
        HDR_EX_PARAM_t  stParaAPI;
    
    } HDR_EX_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure

3.52.3. Parameter Structure

  • Description

    Set the parameter structure of HDR_EX.

  • Definition

    typedef struct HDR_EX_PARAM_s
    
    {
    
        MI_U16 u16SensorExpRatio;
    
        MI_ISP_BOOL_e bDynRatioEn;
    
        MI_U8 u8DynRatioSrcSel;
    
        MI_U8 u8YSrcSel;
    
        MI_U8 u8NoiseLevelSrcSel;
    
        MI_U8 u8MotionMaxVal;
    
        MI_U16 u16MotionLumaTh;
    
        MI_U8 u8MotionAdjSft[6];
    
    } HDR_EX_PARAM_t;
    
  • Name

    Variable Name Description
    u16SensorExpRatio HDR exposure ratio, should preferably be consistent with the AE setting. Parameter range: 0 ~ 65535.
    bDynRatioEn Dynamic exposure compensation enable. Parameter range: 0 ~ 1.
    u8DynRatioSrcSel Dynamic exposure compensation source selection. 0 for long exposure, and 1 for short exposure. Parameter range: 0 ~ 1.
    u8YSrcSel Source selection by Y. 0 for the long exposure value at the point, 1 for ambient long exposure maximum value, 2 for the short exposure value at the point, and 3 for ambient short exposure maximum value. Parameter range: 0 ~ 3.
    u8NoiseLevelSrcSel Noise level source selection. 0 for long exposure, 1 for short exposure, 2 for minimum of both, and 3 maximum of both. Parameter range: 0 ~ 3.
    u8MotionMaxVal Motion maximum value. The greater the value, the less likely noise will be judged as motion. Modification not suggested. Parameter range: 0 ~ 3.
    u16MotionLumaTh Luma threshold by motion. When higher than this threshold, short exposure is applied. Modification not suggested. Parameter range: 0 ~ 1023.
    u8MotionAdjSft Horizontal axis of long exposure ratio used in motion areas. Modification not suggested. Parameter range: 0 ~ 7.

3.53. MI_ISP_IQ_SHP_EX Structure

3.53.1. Type Structure

  • Description

    Set the type structure of SHP_EX.

  • Definition

    typedef struct MI_ISP_IQ_SHP_EX_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        SHP_EX_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_SHP_EX_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for SHP_EX. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    stManual Set the manual mode attribute structure of SHP_EX.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetSHP_EX(MI_U32 Channel, MI_ISP_IQ_SHP_EX_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetSHP_EX(MI_U32 Channel, MI_ISP_IQ_SHP_EX_TYPE_t *data);

3.53.2. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of SHP_EX.

  • Definition

    typedef struct SHP_EX_MANUAL_ATTR_s
    
    {
    
        SHP_EX_PARAM_t  stParaAPI;
    
    } SHP_EX_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure

3.53.3. Parameter Structure

  • Description

    Set the parameter structure of SHP_EX.

  • Definition

    typedef struct SHP_EX_PARAM_s
    
    {
    
        MI_ISP_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];
    
    } SHP_EX_PARAM_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-directioanl 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[6] 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.
    u8Sbl2LutY[6] 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.
    u8StrengthByHue[24] 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.

3.54. MI_ISP_IQ_NR3D_EX Structure

3.54.1. Type Structure

  • Description

    Set the type structure of NR3D_EX.

  • Definition

    typedef struct MI_ISP_IQ_NR3D_EX_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        NR3D_EX_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_NR3D_EX_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for NR3D_EX. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    stManual Set the manual mode attribute structure of NR3D_EX.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetN R3D_EX(MI_U32 Channel, MI_ISP_IQ_NR3D_EX_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetNR3D_EX (MI_U32 Channel, MI_ISP_IQ_NR3D_EX_TYPE_t *data);

3.54.2. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of NR3D_EX.

  • Definition

    typedef struct NR3D_EX_MANUAL_ATTR_s
    
    {
    
        NR3D_EX_PARAM_t  stParaAPI;
    
    } NR3D_EX_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure

3.54.3. Parameter Structure

  • Description

    Set the parameter structure of NR3D_EX.

  • Definition

    typedef struct NR3D_EX_PARAM_s
    
    {
    
        MI_ISP_BOOL_e bAREn;
    
        MI_U8 u8ARLumaTh[2];
    
        MI_U8 u8ARMotTh[2];
    
        MI_ISP_BOOL_e bPREn;
    
        MI_U16 u16PRDiffTh;
    
        MI_U8 u8PRRatioConf[4];
    
        MI_U8 u8PRContrastTh[2];
    
        MI_U8 u8PRMotTh[2];
    
    } NR3D_EX_PARAM_t;
    
  • Name

    Variable Name Description
    bAREn Switch to enable or disable the function for limiting the NR3D strength by Y and motion information. Parameter range: 0 ~ 1.
    u8ARLumaTh[2] If Luma \< LumaTh[0], the NR3D strength remains unchanged. If Luma > LumaTh[1], the NR3D strength is 0. Parameter range: 0 ~ 255.
    u8ARMotTh[2] If motion \< MotTh[0], the NR3D strength remains unchanged. If motion > MotTh[1], the NR3D strength is 0. Parameter range: 0 ~ 255.
    bPREn Motion switch to assit the NR3D in purple fringe judgement.
    u16PRDiffTh Depending on the PFC result, if PFC > PRDiffTh, purple fringe is confirmed. Parameter range: 0 ~ 4095. The smaller the value, the easier it is to be judged as purple fringe.
    u8PRRatioConf[4] Judge whether the color is similar to purple fringe. Parameter range: 0 ~ 16. The horizontal axis represents color resemblance. The closer to the right end of the axis, the more similar to purple fringe. The vertical axis represents the degree of purple fringe justment. The greater the value, the easier it is to be judged as purple fringe.
    u8PRContrastTh[2] Judge the extent of contrast. Purple fringe occurs more often in high-contrast cases. Parameter range: 0 ~ 16. If lower than ContrastTh1, no adjustment is done; if higher than ContrastTh2, it is judged as purple fringe.
    u8PRMotTh[2] If the probability of purple fringe is high, the following setting will be used to redecide motion information. If it is not purple fringe, the motion information will remain unchanged. Set MotTh1, and judge motion lower than this threshold as misjudged information. As a result, the motion will be reset to 0, which means still. On the other hand, motion higher than MotTh2 represents normal motion and will remain unchanged. Parameter range: 0 ~ 255.

3.55. MI_ISP_IQ_DUMMY Structure

3.55.1. Type Structure

  • Description

    Set the type structure of DUMMY.

  • Definition

    typedef struct MI_ISP_IQ_DUMMY_TYPE_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_DUMMY_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for DUMMY. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    enOpType Set the mode of DUMMY. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    stAuto Set DUMMY automatic mode attribute structure.
    stManual Set DUMMY manual mode attribute structure.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetDUMMY(MI_U32 Channel, MI_ISP_IQ_DUMMY_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetDUMMY(MI_U32 Channel, MI_ISP_IQ_DUMMY_TYPE_t *data);

3.55.2. Automatic Mode Attribute Structure

  • Description

    Set the DUMMY automatic mode attribute structure

  • Definition

    typedef struct DUMMY_AUTO_ATTR_s
    
    {
    
        DUMMY_PARAM_t stParaAPI[MI_ISP_AUTO_NUM];
    
    } DUMMY_AUTO_ATTR_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.

3.55.3. Manual Mode Attribute Structure

  • Description

    Set the DUMMY manual mode attribute structure

  • Definition

    typedef struct DUMMY_MANUAL_ATTR_s
    
    {
    
        DUMMY_PARAM_t stParaAPI;
    
    } DUMMY_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure

3.55.4. Parameter Structure

  • Description

    Set the DUMMY parameter structure

  • Definition

    typedef struct DUMMY_PARAM_s
    
    {
        MI_S16 s16Dummy0[256];
    
        MI_S16 s16Dummy1[256];
    
        MI_S16 s16Dummy2[256];
    
        MI_S16 s16Dummy3;
    
        MI_S16 s16Dummy4;
    
    } DUMMY_PARAM_t;
    
  • Name

    Variable Name Description
    s16Dummy0[256] Currently not functional. The default value is “-1.” Parameter range: -1 ~ 255.
    s16Dummy1[256] Strength of NRLuma bilateral filter, with s16Dummy1[0] representing the level of intensity. Parameter range: 0 ~ 7. s16Dummy1[1 ~ 32] is the weight table, and the horizontal axis represents the difference from the center. The smaller the difference is, the greater the weight. Parameter range: 0 ~ 31.
    s16Dummy2[256] Adjustment of SharpnessUD according to the level of motion. This function is basically the same with DetailMotOffset of sharpness. Whereas only one value is subject to adjustment in DetailMotOffset and other data will be automatically processed, s16Dummy2 allows for respective adjustments to be made according to different levels of motion or stasis. When s16Dummy2 is on, DetailMotOffset of sharpness automatically becomes ineffective, and only when the value is set from 0 to 15 would this variable be functional. Parameter range: 0 ~ 255.
    s16Dummy3 Currently not functional. The default value is “-1.” Parameter range: -1 ~ 255.
    s16Dummy4 Currently not functional. The default value is “-1.” Parameter range: -1 ~ 255.

3.56. MI_ISP_IQ_DUMMY_EX Structure

3.56.1. Type Structure

  • Description

    Set the DUMMY_EX type structure

  • Definition

    typedef struct MI_ISP_IQ_DUMMY_EX_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        DUMMY_EX_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_DUMMY_EX_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for DUMMY_EX. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    stManual Set the DUMMY_EX automatic mode attribute structure
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetDUMMY_EX(MI_U32 Channel, MI_ISP_IQ_DUMMY_EX_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetDUMMY_EX(MI_U32 Channel, MI_ISP_IQ_DUMMY_EX_TYPE_t *data);

3.56.2. Manual Mode Attribute Structure

  • Description

    Set the DUMMY_EX manual mode attribute structure

  • Definition

    typedef struct DUMMY_EX_MANUAL_ATTR_s
    
    {
    
        DUMMY_EX_PARAM_t stParaAPI;
    
    } DUMMY_EX_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure

3.56.3. Parameter Structure

  • Description

    Set the DUMMY_EX parameter structure

  • Definition

    typedef struct DUMMY_EX_PARAM_s
    
    {
    
        MI_S16 s16DummyEx0[256];
    
        MI_S16 s16DummyEx1[256];
    
        MI_S16 s16DummyEx2[256];
    
        MI_S16 s16DummyEx3;
    
        MI_S16 s16DummyEx4;
    
    } DUMMY_EX_PARAM_t;
    
  • Name

    Variable Name Description
    s16DummyEx0[256] The nodes on the horizontal axis of EdgeKillLut in sharpness, accumulated by the power of two. Only when the value is set from 0 to 5 will this variable become functional. Parameter range: 0 ~ 15.
    s16DummyEx1[256] Enables the results processed by the NR3D to come closer to the results from the current frame, with s16DummyEx1[0] being the switch. Parameter range: 0 ~ 1. s16DummyEx1[1] is the maximum value of motion. The smaller the value is, the more limited will the NR3D results get closer to the current frame. Parameter range: 0 ~ 255. Dummy1[2] is the moving threshold value. In cases where the difference between the NR3D results and that of the current frame is smaller than this threshold value, this variable will not be functional. Parameter range: 0 ~ 255.
    s16DummyEx2[256] Currently not functional. The default value is “-1.” Parameter range: -1 ~ 255.
    s16DummyEx3 The modes of transmission by the NR3D for motion information. “0” means direct reference to the difference between current frame and reference frame, while “1” means one extra limitation. When situation changes from dynamic to static, the maximum change of motion information in each frame is no more than 1, showing a slower motion change. Parameter range: 0 ~ 1.
    s16DummyEx4 Currently not functional. The default value is “-1.” Parameter range: -1 ~ 255.

3.57. MI_ISP_IQ_WDRCurveFull Structure

3.57.1. Type Structure

  • Description

    Set the type structure of WDR curve.

  • Definition

    typedef struct MI_ISP_IQ_WDRCurveFull_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_ISP_OP_TYPE_e  enOpType;
    
        WDRCurveFull_AUTO_ATTR_t stAuto;
    
        WDRCurveFull_MANUAL_ATTR_t stManual;
    
    } MI_ISP_IQ_ WDRCurveFull_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for WDR curve. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    enOpType Set the mode of WDR curve. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    stAuto Set the automatic mode attribute structure of WDR curve.
    stManual Set the manual mode attribute structure of WDR curve.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetWDRCurveFull(MI_U32 Channel, MI_ISP_IQ_WDRCurveFull_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetWDRCurveFull(MI_U32 Channel, MI_ISP_IQ_WDRCurveFull_TYPE_t *data);

3.57.2. Automatic Mode Attribute Structure

  • Description

    Set the automatic mode attribute structure of WDR Curve.

  • Definition

    typedef struct WDRCurveFull_AUTO_ATTR_s
    
    {
    
        WDRCurveFull_PARAM_t stParaAPI[MI_ISP_AUTO_NUM];
    
    } WDRCurveFull_AUTO_ATTR_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.

3.57.3. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of WDR curve.

  • Definition

    typedef struct WDRCurveFull_MANUAL_ATTR_s
    
    {
    
        WDRCurveFull_PARAM_t stParaAPI;
    
    } WDRCurveFull_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure

3.57.4. Parameter Structure

  • Description

    Set the parameter structure of WDR curve.

  • Definition

    typedef struct WDRCurveFull_PARAM_s
    
    {
    
        MI_U16 u16FCurve[256];
    
    } WDRCurveFull_PARAM_t;
    
  • Name

    Variable Name Description
    u16FCurve[256] Used to replace the Dark Tone Enhance Curve and WDRCurveAdv of WDR, this parameter allows you to adjust the curve by yourselves. Modification by ISO is not recommended, since flicker might happen while switching curve. Parameter range: 0 ~ 4095.

3.58. MI_ISP_IQ_DEFOG Structure

3.58.1. Type Structure

  • Description

    Set Defog type structure.

  • Definition

    typedef struct MI_ISP_IQ_DEFOG_TYPE_s
    {
        MI_ISP_BOOL_e               bEnable;
        MI_ISP_OP_TYPE_e                enOpType;
        DEFOG_AUTO_ATTR_t           stAuto;
        DEFOG_MANUAL_ATTR_t             stManual;
    } MI_ISP_IQ_DEFOG_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for Defog function. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    enOpType Set Defog work mode. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    stAuto Set the automatic mode attribute structure of Defog.
    stManual Set the manual mode attribute structure of Defog.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetDefog(MI_U32 Channel, MI_ISP_IQ_DEFOG_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetDefog(MI_U32 Channel, MI_ISP_IQ_DEFOG_TYPE_t *data);

3.58.2. Automatic Mode Attribute Structure

  • Description

    Set the automatic mode attribute structure of Defog.

  • Definition

    typedef struct DEFOG_AUTO_ATTR_s
    {
        DEFOG_PARAM_t stParaAPI[MI_ISP_AUTO_NUM];
    } DEFOG _AUTO_ATTR_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.

3.58.3. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of Defog.

  • Definition

    typedef struct DEFOG_MANUAL_ATTR_s
    {
        DEFOG_PARAM_t stParaAPI;
    } DEFOG_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure

3.58.4. Parameter Structure

  • Description

    Set the parameter structure of Defog.

  • Definition

    typedef struct DEFOG_PARAM_s
    {
        MI_U8 u8Strength;
    } DEFOG _PARAM_t;
    
  • Name

    Variable Name Description
    u8Strength Set variable strength value of contrast, brightness and lightness. Parameter range: 0 ~ 100.

3.59. MI_ISP_IQ_TEMP Structure

3.59.1. Type Structure

  • Description

    Set the type structure of Temperature.

  • Definition

    typedef struct MI_ISP_IQ_TEMP_TYPE_s
    {
        MI_ISP_BOOL_e               bEnable;
        MI_U8                       u8TemperatureLut[16];
        MI_ISP_OP_TYPE_e                enOpType;
        TEMP_AUTO_ATTR_t                stAuto;
        TEMP_MANUAL_ATTR_t          stManual;
    } MI_ISP_IQ_TEMP_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for Temperature function. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    u8TemperatureLut[16] Set Temperature nodes, up to 16 nodes are supported. Parameter range: 0 ~ 100.
    enOpType Set the work mode of Temperature. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    stAuto Set the automatic mode attribute structure of Temperature.
    stManual Set the manual mode attribute structure of Temperature.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetTEMP(MI_U32 Channel, MI_ISP_IQ_TEMP_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetTEMP(MI_U32 Channel, MI_ISP_IQ_TEMP_TYPE_t *data);

3.59.2. Automatic Mode Attribute Structure

  • Description

    Set the automatic mode attribute structure of Temperature.

  • Definition

    typedef struct TEMP_AUTO_ATTR_s
    {
        TEMP_PARAM_t stParaAPI[MI_ISP_AUTO_NUM];
    } TEMP_AUTO_ATTR_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.

3.59.3. Manual Mode Attribute Structure

  • Description

    Set the manual mode attribute structure of Temperature.

  • Definition

    typedef struct TEMP_MANUAL_ATTR_s
    {
        TEMP_PARAM_t stParaAPI;
    } TEMP_MANUAL_ATTR_t;
    
  • Name

    Variable Name Description
    stParaAPI Manual mode attribute structure

3.59.4. Parameter Structure

  • Description

    Set the parameter structure of Temperature.

  • Definition

    typedef struct TEMP_PARAM_s
    {
        MI_S16  s16ObcOffset;
        MI_U8   u8DynamicDPRatio;
        MI_U8   u8CrosstalkRatio;
        MI_U8   u8NRDeSpikeRatio;
        MI_U8   u8NR3DRatio[2];
        MI_U8   u8NRLumaRatio;
        MI_U8   u8SharpnessRatio[2];
        MI_U8   u8SaturationRatio;
        MI_U8   u8ColorToneRatio[3];
    } TEMP_PARAM_t;
    
  • Name

    Variable Name Description
    s16ObcOffset Offset value of OBC. The larger the value is, the greater the subtraction. The default value is 0. Parameter range: 32768 ~ 32767.
    u8DynamicDPRatio Strength change ratio of DynamicDP. The larger the value is, the greater the strength. The default value is 50. Parameter range: 0 ~ 100.
    u8CrosstalkRatio Strength change ratio of Crosstalk. The larger the value is, the greater the strength. The default value is 50. Parameter range: 0 ~ 100.
    u8NRDeSpikeRatio Strength change ratio of NRDeSpike. The larger the value is, the greater the strength. The default value is 50. Parameter range: 0 ~ 100.
    u8NR3DRatio[2] Strength change ratio of NR3D. The larger the value is, the greater the strength. u8NR3DRatio[0] represents MD.Thd, while u8NR3DRatio[1] represents MD.Gain. The default value is 50. Parameter range: 0 ~ 100.
    u8NRLumaRatio Strength change ratio of NRLuma. The larger the value is, the greater the strength. The default value is 50. Parameter range: 0 ~ 100.
    u8SharpnessRatio[2] Strength change ratio of Sharpness. The larger the value is, the greater the strength. u8SharpnessRatio[0] represents OverShootGain, while u8SharpnessRatio[1] represents UnderShootGain. The default value is 50. Parameter range: 0 ~ 100.
    u8SaturationRatio Strength change ratio of Saturation. The larger the value is, the greater the saturation. The default value is 50. Parameter range: 0 ~ 100.
    u8ColorToneRatio[3] Strength change ratio of ColorTone. The larger the value is, the greater the saturation. The default value is 50. u8ColorToneRatio[0 ~ 2] respectively corresponds to R/G/B in order. The default value is 50. Parameter range: 0 ~ 100.

3.60. MI_ISP_IQ_TEMP_INFO Structure

3.60.1. Type Structure

  • Description

    Set the type structure of temperature info.

  • Definition

    typedef struct MI_ISP_IQ_TEMP_INFO_TYPE_s
    
    {
    
        MI_U8 u8Temperature;
    
    } MI_ISP_IQ_TEMP_INFO_TYPE_t;
    
  • Name

    Variable Name Description
    u8Temperature Obtain current chip temperature. Read only. Parameter range: 0 ~ 255.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_GetTEMP_INFO(MI_U32 Channel, MI_ISP_IQ_TEMP_INFO_TYPE_t *data);


3.61. MI_ISP_API_BYPASS Structure

3.61.1. Type Structure

  • Description

    Set the type structure of bypass mode for ISP-corresponding IP module.

  • Definition

    typedef struct MI_ISP_API_BYPASS_TYPE_s
    
    {
    
        MI_ISP_BYPASS_MODE_e  bEnable;
    
        MI_ISP_API_ID_e  eAPIIndex;
    
    } MI_ISP_API_BYPASS_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for bypass mode for ISP-corresponding IP module. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    eAPIIndex Set the ISP API ID enum index.
  • Related Structure Type and Function

    MI_S32 MI_ISP_IQ_SetAPIBypassMode(MI_U32 Channel, MI_ISP_API_BYPASS_TYPE_t *data);

    MI_S32 MI_ISP_IQ_GetAPIBypassMode(MI_U32 Channel, MI_ISP_API_BYPASS_TYPE_t *data);


3.62. MI_ISP_AE_EXPO_VALUE Structure

3.62.1. Type Structure

  • Description

    Record the type structure of exposure parameter.

  • Definition

    typedef struct MI_ISP_AE_EXPO_VALUE_TYPE_s
    
    {
    
        MI_U32 u32FNx10;
    
        MI_U32 u32SensorGain;
    
        MI_U32 u32ISPGain;
    
        MI_U32 u32US;
    
    } MI_ISP_AE_EXPO_VALUE_TYPE_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).
  • Related Structure Type and Function

    MI_ISP_AE_EXPO_INFO_TYPE_t

    MI_S32 MI_ISP_AE_SetManualExpo(MI_U32 Channel, MI_ISP_AE_EXPO_VALUE_TYPE_t *data);

    MI_S32 MI_ISP_AE_GetManualExpo(MI_U32 Channel, MI_ISP_AE_EXPO_VALUE_TYPE_t *data);

    MI_S32 MI_ISP_AE_SetManualShortExpo(MI_U32 Channel, [MI_ISP_AE_EXPO_VALUE_TYPE_t *data);

    MI_S32 MI_ISP_AE_GetManualShortExpo(MI_U32 Channel, [MI_ISP_AE_EXPO_VALUE_TYPE_t *data);


3.63. MI_ISP_AE_HIST_WEIGHT_Y Structure

3.63.1. Type Structure

  • Description

    Record the current screen brightness and histogram statistical data structure.

  • Definition

    typedef struct MI_ISP_AE_HIST_WEIGHT_Y_TYPE_s
    
    {
    
        MI_U32 u32LumY;
    
        MI_U32 u32AvgY;
    
        MI_U32 u32Hits[128];
    
    } MI_ISP_AE_HIST_WEIGHT_Y_TYPE_t;
    
  • Name

    Variable Name Description
    u32LumY Current screen brightness after longitudinal area weighting.
    u32AvgY Average current screen brightness (without weighting).
    u32Hits[128] Screen histogram statistical data (128 columns, corresponding to 0 ~ 255.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AE_GetHistoWghtY(MI_U32 Channel, MI_ISP_AE_HIST_WEIGHT_Y_TYPE_t *data);


3.64. MI_ISP_AE_EXPO_INFO Structure

3.64.1. Type Structure

  • Description

    Get the current global exposure information structure.

  • Definition

    typedef struct MI_ISP_AE_EXPO_INFO_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bIsStable;
    
        MI_ISP_BOOL_e bIsReachBoundary;
    
        MI_ISP_AE_EXPO_VALUE_TYPE_t stExpoValueLong;
    
        MI_ISP_AE_EXPO_VALUE_TYPE_t stExpoValueShort;
    
        MI_ISP_AE_HIST_WEIGHT_Y_TYPE_t stHistWeightY;
    
        MI_U32 u32LVx10;
    
        MI_S32 s32BV;
    
        MI_U32 u32SceneTarget;
    
    } MI_ISP_AE_EXPO_INFO_TYPE_t;
    
  • Name

    Variable Name Description
    bIsStable AE stability (1: Stable, 0: Not stable).
    bIsReachBoundary Has the current exposure parameter reached the boundary? (1: Boundary reached, 0: Boundary not reached yet).
    stExpoValueLong Current exposure parameter (or long exposure parameter in HDR mode).
    stExpoValueShort Short exposure parameter in HDR mode.
    stHistWeightY Current screen brightness and histogram statistical data.
    u32LVx10 Current LV value ×10.
    s32BV Current BV value ×16384.
    u32SceneTarget Current AE target brightness.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AE_QueryExposureInfo(MI_U32 Channel, [MI_ISP_AE_EXPO_INFO_TYPE_t *data);


3.65. MI_ISP_AE_EV_COMP Structure

3.65.1. Type Structure

  • Description

    Set the type structure of additional exposure energy compensation strength.

  • Definition

    typedef struct MI_ISP_AE_EV_COMP_TYPE_s
    
    {
    
        MI_S32 s32EV;
    
        MI_U32 u32Grad;
    
    } MI_ISP_AE_EV_COMP_TYPE_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 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 Channel, MI_ISP_AE_EV_COMP_TYPE_t *data);

    MI_S32 MI_ISP_AE_GetEVComp(MI_U32 Channel, MI_ISP_AE_EV_COMP_TYPE_t *data);


3.66. MI_ISP_AE_MODE Structure

3.66.1. Type Structure

  • Description

    Set the fully automatic, semi-automatic, or manual exposure mode.

  • Definition

    typedef enum
    
    {
    
        SS_AE_MODE_A,
    
        SS_AE_MODE_AV,
    
        SS_AE_MODE_SV,
    
        SS_AE_MODE_TV,
    
        SS_AE_MODE_M,
    
        SS_AE_MODE_MAX
    
    } MI_ISP_AE_MODE_TYPE_e;
    
  • Name

    Variable Name Description
    SS_AE_MODE_A Fully automatic exposure mode.
    SS_AE_MODE_AV Aperture first mode.
    SS_AE_MODE_SV Gain first mode.
    SS_AE_MODE_TV Shutter first mode.
    SS_AE_MODE_M Manual mode.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AE_SetExpoMode(MI_U32 Channel, MI_ISP_AE_MODE_TYPE_e *data);

    MI_S32 MI_ISP_AE_GetExpoMode(MI_U32 Channel, MI_ISP_AE_MODE_TYPE_e *data);


3.67. MI_ISP_AE_INTP_LUT Structure

3.67.1. Type Structure

  • Description

    Parameter data setup table with point interpolation function.

    This function can be used to set up screen target brightness that varies with ambient brightness (e. g., X-axis BV or Y-axis screen target brightness), or floating range of screen target brightness that varies with ambient brightness (e. g., floating range of X-axis BV or Y-axis screen target brightness).

  • Definition

    typedef struct MI_ISP_AE_INTP_LUT_TYPE_s
    
    {
    
        MI_U16 u16NumOfPoints;
    
        MI_U32 u32Y[16];
    
        MI_U32 u32X[16];
    
    } MI_ISP_AE_INTP_LUT_TYPE_t;
    
  • Name

    Variable Name Description
    u16NumOfPoints Number of effective points in the table data. Max. 16 points are supported, that is, 16 entries of data can be inputted to the X-axis and Y-axis.
    u32Y[16] Y-axis parameter corresponding to each point. For points not used, set the parameter to 0.
    u32X[16]; X-axis parameter corresponding to each point. For points not used, set the parameter to 0.
  • Related Structure Type and Function

    MI_ISP_AE_STRATEGY_TYPE_t

    MI_S32 MI_ISP_AE_SetTarget(MI_U32 Channel, MI_ISP_AE_INTP_LUT_TYPE_t *data);

    MI_S32 MI_ISP_AE_GetTarget(MI_U32 Channel, MI_ISP_AE_INTP_LUT_TYPE_t *data);


3.68. MI_ISP_AE_CONV_CONDITON Structure

3.68.1. Type Structure

  • Description

    Set the auto exposure convergence condition.

  • Definition

    typedef struct MI_ISP_AE_CONV_CONDITON_TYPE_s
    
    {
    
        CONV_THD_PARAM_t  stConvThrd;
    
        CONV_SPEED_PARAM_t  stConvSpeed;
    
    } MI_ISP_AE_CONV_CONDITON_TYPE_t;
    
  • Name

    Variable Name Description
    stConvThrd Set the auto exposure start/end range.
    stConvSpeed Set the auto exposure convergence speed.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AE_SetConverge(MI_U32 Channel, MI_ISP_AE_CONV_CONDITON_TYPE_t *data);

    MI_S32 MI_ISP_AE_GetConverge(MI_U32 Channel, MI_ISP_AE_CONV_CONDITON_TYPE_t *data);

3.68.2. Convergence Range Structure (CONV_THD_PARAM_t)

  • Description

    Set the auto exposure start/end range.

  • Definition

    typedef struct CONV_THD_PARAM_s
    
    {
    
        MI_U32 u32InThd;
    
        MI_U32 u32OutThd;
    
    } CONV_THD_PARAM_t;
    
  • Name

    Variable Name Description
    u32InThd If the difference between the weighted screen brightness and the screen target brightness is smaller than this threshold, the auto exposure is considered already converged. Parameter range: 1 ~ 100.
    u32OutThd If the difference between the weighted screen brightness and the screen target brightness is larger than this threshold, the auto exposure is considered not yet converged and a convergence procedure will be launched automatically. Parameter range: 2 ~ 100.
  • Related Structure Type and Function

    MI_ISP_AE_CONV_CONDITON_TYPE_t

3.68.3. Convergence Speed Structure (CONV_SPEED_PARAM_t)

  • Description

    Set the auto exposure convergence speed. There are four points available, in which the X-axis corresponds to the screen brightness and the Y-axis corresponds to the screen brightness convergence speed.

  • Definition

    typedef struct CONV_SPEED_PARAM_s
    
    {
    
        MI_U32 u32SpeedX[4];
    
        MI_U32 u32SpeedY[4];
    
    } CONV_SPEED_PARAM_t;
    
  • Name

    Variable Name Description
    u32SpeedX[4] Select the current weighted screen brightness to apply the convergence speed. Parameter range: 1 ~ 2550.
    u32SpeedY[4] Convergence speed, basically 1024. (For example, if Y is set to 500, when the current screen brightness falls on the X point corresponding to Y, the auto exposure will advance toward the exposure target by 500 / 1024 for each move). Parameter range: 1 ~ 1024.
  • 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 correspond automatically to the corresponding value when the target brightness is not fixed. Therefore, modifying the two points manually will have no effect.


3.69. MI_ISP_AE_EXPO_LIMIT Structure

3.69.1. Type Structure

  • Description

    Set the auto exposure limit.

  • Definition

    typedef struct MI_ISP_AE_EXPO_LIMIT_TYPE_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_EXPO_LIMIT_TYPE_t;
    
  • Name

    Variable Name Description
    u32MinShutterUS Min. shutter (μsec). Parameter range: 1 ~ 1000000.
    u32MaxShutterUS Max. shutter (μsec). Parameter range: 1 ~ 1000000.
    u32MinFNx10 Min. aperture (ex: F1.8 = 18). Parameter range: 10 ~ 220.
    u32MaxFNx10 Max. aperture (ex: F1.8 = 18). Parameter range: 10 ~ 220.
    u32MinSensorGain Min. sensor gain (1024 = 1x). Parameter range: 1024 ~ 5242880.
    u32MinISPGain Min. ISP gain (1024 = 1x). Parameter range: 1024 ~ 262144.
    u32MaxSensorGain Max. sensor gain (1024 = 1x). Parameter range: 1024 ~ 5242880.
    u32MaxISPGain Max. ISP gain (1024 = 1x). Parameter range: 1024 ~ 262144.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AE_SetExposureLimit(MI_U32 Channel, MI_ISP_AE_EXPO_LIMIT_TYPE_t *data);

    MI_S32 MI_ISP_AE_GetExposureLimit(MI_U32 Channel, MI_ISP_AE_EXPO_LIMIT_TYPE_t *data);


3.70. MI_ISP_AE_EXPO_TABLE Structure

3.70.1. Type Structure

  • Description

    Exposure table.

  • Definition

    typedef struct MI_ISP_AE_EXPO_TABLE_TYPE_s
    
    {
    
        MI_U32 u32NumPoints;
    
        EXPO_POINT_PARAM_t  stExpoTbl[16];
    
    } MI_ISP_AE_EXPO_TABLE_TYPE_t;
    
  • Name

    Variable Name Description
    u32NumPoints Number of points in exposure table. Parameter range: 1 ~ 16.
    stExpoTbl[16] Exposure table point parameter value.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AE_SetPlainLongExpoTable (MI_U32 Channel, [MI_ISP_AE_EXPO_TABLE_TYPE_t *data);

    MI_S32 MI_ISP_AE_GetPlainLongExpoTable (MI_U32 Channel, [MI_ISP_AE_EXPO_TABLE_TYPE_t *data);

    MI_S32 MI_ISP_AE_SetPlainShortExpoTable (MI_U32 Channel, [MI_ISP_AE_EXPO_TABLE_TYPE_t *data);

    MI_S32 MI_ISP_AE_GetPlainShortExpoTable (MI_U32 Channel, [MI_ISP_AE_EXPO_TABLE_TYPE_t *data);

3.70.2. Exposure Point Parameter Structure (EXPO_POINT_PARAM_t)

  • Description

    Set the exposure time, aperture and gain of each point in the exposure table.

  • Definition

    typedef struct EXPO_POINT_PARAM_s
    
    {
    
        MI_U32 u32FNumx10;
    
        MI_U32 u32Shutter;
    
        MI_U32 u32TotalGain;
    
        MI_U32 u32SensorGain;
    
    } EXPO_POINT_PARAM_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.

3.71. MI_ISP_AE_WIN_WEIGHT_MODE Structure

3.71.1. Type Structure

  • Description

    Set or switch the weight type for calculation of screen brightness.

  • Definition

    typedef enum
    
    {
    
        SS_AE_WEIGHT_AVERAGE = 0,
    
        SS_AE_WEIGHT_CENTER,
    
        SS_AE_WEIGHT_SPOT,
    
        SS_AE_WEIGHT_MAX
    
    } MI_ISP_AE_WIN_WEIGHT_MODE_TYPE_e;
    
  • Name

    Variable Name Description
    SS_AE_WEIGHT_AVERAGE Switch to average light metering weight table.
    SS_AE_WEIGHT_CENTER Switch to center light metering weight table.
    SS_AE_WEIGHT_SPOT Switch to spot light metering weight table.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AE_SetWinWgtType(MI_U32 Channel, MI_ISP_AE_WIN_WEIGHT_MODE_TYPE_e *data);

    MI_S32 MI_ISP_AE_GetWinWgtType(MI_U32 Channel, MI_ISP_AE_WIN_WEIGHT_MODE_TYPE_e *data);


3.72. MI_ISP_AE_WIN_WEIGHT Structure

3.72.1. Type Structure

  • Description

    Set or switch the weight type for calculation of screen brightness and set the weight table.

  • Definition

    typedef struct MI_ISP_AE_WIN_WEIGHT_TYPE_s
    
    {
    
        MI_ISP_AE_WIN_WEIGHT_MODE_TYPE_e eTypeID;
    
        WIN_WEIGHT_PARAM_t  stParaAPI;
    
    } MI_ISP_AE_WIN_WEIGHT_TYPE_t;
    
  • Name

    Variable Name Description
    eTypeID Select the light metering weight type to switch to. Average light metering: SS_AE_WEIGHT_AVERAGE Center light metering: SS_AE_WEIGHT_CENTER Spot light metering: SS_AE_WEIGHT_SPOT
    PARAM_t Set the exposure weight.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AE_SetWinWgt(MI_U32 Channel, MI_ISP_AE_WIN_WEIGHT_TYPE_t *data);

    MI_S32 MI_ISP_AE_GetWinWgt(MI_U32 Channel, MI_ISP_AE_WIN_WEIGHT_TYPE_t *data);

3.72.2. Light Metering Weight Table Parameter Structure (WIN_WEIGHT_PARAM_t)

  • Description

    Set the 32×32 light metering weight table.

  • Definition

    typedef struct WIN_WEIGHT_PARAM_s
    
    {
    
        MI_U8 u8AverageTbl[32×32];
    
        MI_U8 u8CenterTbl[32×32];
    
        MI_U8 u8SpotTbl[32×32];
    
    } WIN_WEIGHT_PARAM_t;
    
  • Name

    Variable Name Description
    u8AverageTbl[32×32] Average light metering weight table. Parameter range: 0 ~ 255.
    u8CenterTbl[32×32] Center light metering weight table. Parameter range: 0 ~ 255.
    u8SpotTbl[32×32] Spot light metering weight table. Parameter range: 0 ~ 255.
  • Note

    Maximum size supported is 32×32, and the current default size is 16×16.


3.73. MI_ISP_AE_FLICKER Structure

3.73.1. Type Structure

  • Description

    Set the anti-flicker frequency.

  • Definition

    typedef enum
    
    {
    
        SS_AE_FLICKER_TYPE_DISABLE = 0,
    
        SS_AE_FLICKER_TYPE_60HZ = 1,
    
        SS_AE_FLICKER_TYPE_50HZ = 2,
    
        SS_AE_FLICKER_TYPE_AUTO = 3,
    
        SS_AE_FLICKER_TYPE_MAX
    
    } MI_ISP_AE_FLICKER_TYPE_e;
    
  • Name

    Variable Name Description
    SS_AE_FLICKER_TYPE_DISABLE Disable anti-flicker function.
    SS_AE_FLICKER_TYPE_60HZ Set the anti-flicker environment as 60Hz.
    SS_AE_FLICKER_TYPE_50HZ Set the anti-flicker environment as 50Hz.
    SS_AE_FLICKER_TYPE_AUTO Auto set the anti-flicker environment.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AE_SetFlicker(MI_U32 Channel, MI_ISP_AE_FLICKER_TYPE_e *data);

    MI_S32 MI_ISP_AE_GetFlicker(MI_U32 Channel, MI_ISP_AE_FLICKER_TYPE_e *data);


3.74. MI_ISP_AE_FLICKER_EX Structure

3.74.1. Type Structure

  • Description

    Set the anti-flicker frequency detection.

  • Definition

    typedef struct MI_ISP_AE_FLICKER_EX_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_ISP_OP_TYPE_e  enOpType;
    
        MI_U8 u8AmpSensitivity;
    
        MI_U8 u8ScoreThd;
    
        MI_U8 u8RefreshCycles;
    
        MI_U8 u8ValidTimesThd;
    
        MI_ISP_AE_FLICKER_DETECT_TYPE_e         eFlickerType;
    
    } MI_ISP_AE_FLICKER_EX_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for anti-flicker frequency detection. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1. If FlickerEx is enabled, the old Flicker API will not work.
    enOpType Set the anti-flicker frequency detection mode. When OpType is set to Auto, if flicker is detected, the Flicker type will be changed to the other one automatically. Auto is recommended. Automatic mode: SS_OP_TYP_AUTO = 0. Manual mode: SS_OP_TYP_MANUAL = 1.
    u8AmpSensitivity Sensitivity of flicker detection (the greater the value, the higher the sensitivity). Parameter range: 0 ~ 100. Suggested setting is 70.
    u8ScoreThd A threshold for auto mode to judge if there is flicker or not. If the Score in FlickerInfo is smaller than this threshold, ValidTimes will add one. If the Score in FlickerInfo is larger than this threshold, the ValidTimes will be reset to 0. Parameter range: 0 ~ 100. Suggested setting is 50.
    u8RefreshCycles Refresh rate for calculating anti-flicker score, this parameter indicates how many cycles are required for updateing score once. It usually takes 4 to 7 frames for each cycle. Parameter range: 1 ~ 10; the more cycles, the more reliable score, but the longer time. Suggested setting is 3.
    u8ValidTimesThd In Auto mode, when ValidTimes reaches this threshold, the Flicker mode will be changed to the other one automatically. Parameter range: 1 ~ 10, the more cycles, the more reliable score, but the longer time. Suggested setting is 2.
    eFlickerType Set the anti-flicker frequency detection mode. The modes are “0 = 60Hz” and “1 = 50Hz”.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AE_SetFlickerEX(MI_U32 Channel, MI_ISP_AE_FLICKER_EX_TYPE_t *data);

    MI_S32 MI_ISP_AE_GetFlickerEX(MI_U32 Channel, MI_ISP_AE_FLICKER_EX_TYPE_t *data);

3.74.2. Anti-flicker Frequency Detection Structure (MI_ISP_AE_FLICKER_DETECT_TYPE_e)

  • Description

    Select the anti-flicker frequency detection mode.

  • Definition

    typedef enum
    
    {
    
        SS_AE_FLICKER_TYPE_DETECT_60HZ = 0,
    
        SS_AE_FLICKER_TYPE_DETECT_50HZ = 1,
    
        SS_AE_FLICKER_TYPE_DETECT_MAX
    
    } MI_ISP_AE_FLICKER_DETECT_TYPE_e;
    
  • Name

    Variable Name Description
    SS_AE_FLICKER_TYPE_DETECT_60HZ Set the anti-flicker detection environment as 60Hz.
    SS_AE_FLICKER_TYPE_DETECT_50HZ Set the anti-flicker detection environment as 50Hz.

3.75. MI_ISP_AE_QueryFlickerInfo Structure

3.75.1. Type Structure

  • Description

    Get the current anti-flicker frequency detection information type structure.

  • Definition

    typedef struct MI_ISP_AE_FLICKER_EX_INFO_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bIsEffective;
    
        MI_ISP_AE_FLICKER_DETECT_TYPE_e     eFlickerType;
    
        MI_U16 u16Score;
    
    } MI_ISP_AE_FLICKER_EX_INFO_TYPE_t;
    
  • Name

    Variable Name Description
    bIsEffective Get the current effective state of anti-flicker frequency detection (1: Effective, 0: Ineffective)
    eFlickerType Get the current anti-flicker frequency detection mode (0 = 60Hz, 1 = 50Hz)
    u16Score Get the current effective score of anti-flicker frequency detection mode.
    If the score is higher, it is determined as current anti-flicker frequency mode.
    If the score is lower, it is determined as another anti-flicker frequency mode.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AE_QueryFlickerInfo(MI_U32 Channel, MI_ISP_AE_FLICKER_EX_INFO_TYPE_t *data);


3.76. MI_ISP_AE_STRATEGY Structure

3.76.1. Type Structure

  • Description

    Set the type structure of auto-exposure exposure strategy.

  • Definition

    typedef struct MI_ISP_AE_STRATEGY_TYPE_s
    
    {
    
        MI_ISP_AE_STRATEGY_TYPE_e eAEStrategyMode;
    
        MI_U32 u32Weighting;
    
        MI_ISP_AE_INTP_LUT_TYPE_t stUpperOffset;
    
        MI_ISP_AE_INTP_LUT_TYPE_t stLowerOffset;
    
        MI_U32 u32BrightToneStrength;
    
        MI_U32 u32BrightToneSensitivity;
    
        MI_U32 u32DarkToneStrength;
    
        MI_U32 u32DarkToneSensitivity;
    
        MI_U32 u32AutoStrength;
    
        MI_U32 u32AutoSensitivity;
    
    } MI_ISP_AE_STRATEGY_TYPE_t;
    
  • Name

    Variable Name Description
    eAEStrategyMode Auto exposure strategy mode selection.
    u32Weighting The weight calculated by auto exposure strategy between the screen target brightness and the screen target brightness set in MI_ISP_AE_SetTarget. FinalAETarget = defaultAETarget × (1 - weighting) + StragetyTarget × weighting.
    stUpperOffset Upward floating adjustment by auto exposure strategy of screen brightness target space. X-axis represents the ambient brightness BV, and Y-axis the upward floating space (0 ~ 470).
    stLowerOffset Downward floating adjustment by auto exposure strategy of screen brightness target space. X-axis represents the ambient brightness BV, and Y-axis the downward floating space (0 ~ 470).
    u32BrightToneStrength When eAEStrategyMode is set to SS_AE_STRATEGY_BRIGHTTONE, this parameter can adjust the bright tone area target brightness (the greater the value, the darker the image). Parameter range: 0 ~ 1024.
    BrightToneSensitivity When eAEStrategyMode is set to SS_AE_STRATEGY_BRIGHTTONE, this parameter can adjust the sensitivity towards bright tone area (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 When eAEStrategyMode is set to SS_AE_STRATEGY_DARKTONE, this parameter can adjust the dark tone area target brightness (the greater the value, the brighter the image). Parameter range: 0 ~ 1024.
    DarkToneSensitivity When eAEStrategyMode is set to SS_AE_STRATEGY_DARKTONE, this parameter can adjust the sensitivity towards dark tone area (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 When eAEStrategyMode is set to SS_AE_STRATEGY_AUTO, this parameter can adjust the bright tone area target brightness (the greater the value, the darker the image). Parameter range: 0 ~ 1024.
    AutoSensitivity When eAEStrategyMode is set to SS_AE_STRATEGY_AUTO, this parameter can adjust the sensitivity towards bright tone area (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 be of no effect since there is no valid floating range, 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 Channel, MI_ISP_AE_STRATEGY_TYPE_t *data);

    MI_S32 MI_ISP_AE_GetStrategy(MI_U32 Channel, MI_ISP_AE_STRATEGY_TYPE_t *data);

3.76.2. Exposure Strategy Mode Structure (MI_ISP_AE_STRATEGY_TYPE_e)

  • Description

    Select the mode of exposure strategy.

  • Definition

    typedef enum
    
    {
    
        SS_AE_STRATEGY_BRIGHTTONE,
    
        SS_AE_STRATEGY_DARKTONE,
    
        SS_AE_STRATEGY_AUTO,
    
        SS_AE_STRATEGY_MAX
    
    } MI_ISP_AE_STRATEGY_TYPE_e;
    
  • Name

    Variable Name Description
    SS_AE_STRATEGY_BRIGHTTONE Bright light suppression mode (bright tone first).
    SS_AE_STRATEGY_DARKTONE Backlight compensation mode (dark tone first).
    SS_AE_STRATEGY_AUTO Auto compensation mode.

3.77. MI_ISP_AE_STRATEGY_EX Structure

3.77.1. Type Structure

  • Description

    Set the auto-exposure exposure strategy.

  • Definition

    typedef struct MI_ISP_AE_STRATEGY_EX_TYPE_s
    {
        MI_ISP_BOOL_e                       bEnable;
        MI_ISP_AE_STRATEGY_EX_MODE_e        eMode;
        MI_ISP_AE_STRATEGY_EX_PRIORITY_e    ePriority;
        MI_U16                          u16BT_NodeNum;
        MI_U32                          u32BT_NodeBV[16];
        MI_U32                                  u32BT_ThdY[16];
        MI_U32                                  u32BT_Percentx10[16];
        MI_U32                                  u32BT_TargetYx10[16];
        MI_U32                                  u32BT_MaxOffsetDown[16];
        MI_U16                          u16DT_NodeNum;
        MI_U32                          u32DT_NodeBV[16];
        MI_U32                                  u32DT_ThdY[16];
        MI_U32                                  u32DT_Percentx10[16];
        MI_U32                                  u32DT_TargetYx10[16];
        MI_U32                                  u32DT_MaxOffsetUp[16];
    } MI_ISP_AE_STRATEGY_EX_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Enables auto exposure strategy.
    eMode Modes 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 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 for exposure strategy. Dark Tone (under-exposure prevention) and Bright Tone (over-exposure prevention) are available.
    u16BT_NodeNum The number of nodes for parameters related to Bright Tone.
    u32BT_NodeBV[16] The setting of Bright Tone nodes in correspondance with BV.
    u32BT_ThdY[16] The setting of brightness threshold for Bright Tone. Data range: 0 ~ 255; effective only in Count Mode.
    u32BT_Percentx10[16] The setting of Bright Tone permillage. Data range: 0 ~ 1000; effective both in Count Mode and Target Mode.
    u32BT_TargetYx10[16] Average target brightness of Bright Tone. Data range: 0 ~ 2550; effective only in Target Mode.
    u32BT_MaxOffsetDown[16] The downward offset range of AE target. Data range: 0 ~ 2550. Setting it to 0 means disabling offset target and soly relies on Target Offset setting.
    u16DT_NodeNum The number of nodes for parameters related to Dark Tone.
    u32DT_NodeBV[16] The setting of Dark Tone nodes in correspondance with BV.
    u32DT_ThdY[16] The setting of brightness threshold for Dark Tone. Data range: 0 ~ 255; effective only in Count Mode.
    u32DT_Percentx10[16] The setting of Dark Tone permillage. Data range: 0 ~ 1000; effective both in Count Mode and Target Mode.
    u32DT_TargetYx10[16] Average brightness of Dark Tone target. Data range: 0 ~ 2550; effective only in Target Mode.
    u32DT_MaxOffsetUp[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.
  • Note

    Figure 3-3:AE StrategyEx Count Mode & Bright Priority

    Figure 3-4:AE StrategyEx Target Mode & Bright Priority

    Figure 3-5:All LUTs share the same NodeNum & NodeBV

  • Related Structure Type and Function

    MI_S32 MI_ISP_AE_SetStrategyEX(MI_U32 Channel, MI_ISP_AE_STRATEGY_EX_TYPE_t *data);

    MI_S32 MI_ISP_AE_GetStrategyEX(MI_U32 Channel, MI_ISP_AE_STRATEGY_EX_TYPE_t *data);

3.77.2. Exposure Strategy Mode Structure (MI_ISP_AE_STRATEGY_TYPE_e)

  • Description

    Select the mode of exposure strategy.

  • Definition

    typedef enum
    
    {
    
        SS_AE_STRATEGY_EX_COUNT,
    
        SS_AE_STRATEGY_EX_TARGET,
    
    } MI_ISP_AE_STRATEGY_EX_TYPE_e;
    
  • Name

    Variable Name Description
    SS_AE_STRATEGY_EX_COUNT Selection of 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.
    SS_AE_STRATEGY_EX_TARGET Selection of 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.

3.77.3. Priority Exposure Strategy Mode Structure (MI_ISP_AE_STRATEGY_EX_PRIORITY_e)

  • Description

Mode selection of priority exposure strategy.

  • Definition

    typedef enum
    
    {
    
        SS_AE_STRATEGY_EX_BRIGHTTONE,
    
        SS_AE_STRATEGY_EX_DARKTONE,
    
    } MI_ISP_AE_STRATEGY_EX_PRIORITY_e;
    
  • Name

    Variable Name Description
    SS_AE_STRATEGY_EX_BRIGHTTONE Priority setting for exposure strategy. Bright Tone (over-exposure prevention) priority.
    SS_AE_STRATEGY_EX_DARKTONE Priority setting for exposure strategy. Dark Tone (under-exposure prevention) priority.

3.78. MI_ISP_AE_QueryStrategyEXInfo

3.78.1. Type Structure

  • Description

    Set type structure for obtaining information about current exposure strategy.

  • Definition

    typedef struct MI_ISP_AE_STRATEGY_EX_INFO_TYPE_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_STRATEGY_EX_INFO_TYPE _t;
    
  • Name

    Variable Name Description
    u16GMBlendRatio The mixing ratio of Adaptive Gamma and ordinary Gamma. Parameter range: 0 ~ 1024. The ratio derives from the calculation of the final value of SceneTarget and TargetOffset as well as the maximum BT_MaxOffsetDown and DT_MaxOffsetUp. Parameter range: 0 ~ 1024. When ratio is smaller than 512, BTGamma will be mixed with ordinary Gamma; If ratio is larger than 512, DT Gamma will be mixed with ordinary Gamma. Ordinary Gamma will be taken as the ratio when Ratio equal to 512.
    u16UpperLimitTargetx10 The upper limit of crurrent AE target offset.
    u16LowerLimitTargetx10 The lower limit of crurrent AE target offset.
    u16BTCntPcntx10 The current permillage of the statistical value above BT_ThdY to the total statistical value.
    u16DTCntPcntx10 The current permillage of the statistical value below BT_ThdY to the total statistical value.
    u16BTYx10 The average brightness of the statistical value of the current brightest BT_Percentx10 permillage.
    u16DTYx10 The average brightness of the statistical value of the current darkest DT_Percentx10 permillage.
  • Note

    Figure 3-6: How GNBlendRatio and AdaptiveGamma Work

  • Related Structure Type and Function

    MI_S32 MI_ISP_AE_QueryStrategyEXInfo (MI_U32 Channel, MI_ISP_AE_STRATEGY_EX_INFO_TYPE_t *data);


3.79. MI_ISP_AE_RGBIR_AE Structure

3.79.1. Type Structure

  • Description

    Set the type structure of AE control parameters for RGBIR mode.

  • Definition

    typedef struct MI_ISP_AE_RGBIR_AE_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_U16 u16MaxYWithIR;
    
        MI_U16 u16MinISPGainCompRatio;
    
    } MI_ISP_AE_RGBIR_AE_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Enable/Disable RGBIR AE
    u16MaxYWithIR Set the maximum luminance (Y) value allowed by the R, G, B components before subtracting IR. Range: 0 ~ 2550
    u16MinISPGainCompRatio Set the minimum conversion ratio for using ISP gain to compensate for the image brightness. The maximum ISP gain used = 10000/ u16MinISPGainCompRatio. (ex: 10000 = 1x, 1000 = 10x)
  • Related Structure Type and Function

    MI_S32 MI_ISP_AE_SetRGBIRAE(MI_U32 Channel, MI_ISP_AE_RGBIR_AE_TYPE_t *data);

    MI_S32 MI_ISP_AE_GetRGBIRAE(MI_U32 Channel, MI_ISP_AE_RGBIR_AE_TYPE_t *data);


3.80. MI_ISP_AE_HDR Structure

3.80.1. Type Structure

  • Description

    Parameter data setup table with point interpolation function. This function can be used to set HDR long/short exposure ratio that varies with the total gain (e.g., X-axis total gain or Y-axis HDR long/short exposure ratio).

  • Definition

    typedef struct MI_ISP_AE_HDR_TYPE_s
    
    {
    
        MI_ISP_AE_INTP_LUT_TYPE_t stAeHdrRatio;
    
    } MI_ISP_AE_HDR_TYPE_t;
    
  • Name

    Variable Name Description
    stAeHdrRatio Set HDR long/short exposure ratio that varies with the total gain. The method of use is the same as that for MI_ISP_AE_INTP_LUT_TYPE_t.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AE_SetHDR(MI_U32 Channel, MI_ISP_AE_HDR_TYPE_t *data);

    MI_S32 MI_ISP_AE_GetHDR(MI_U32 Channel, MI_ISP_AE_HDR_TYPE_t *data);


3.81. MI_ISP_AE_STABILIZER Structure

3.81.1. Type Structure

  • Description

    Set the type structure of stabilizer.

  • Definition

    typedef struct MI_ISP_AE_STABILIZER_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_U16 u16DiffThd;
    
        MI_[U16 u16Percent;
    
    } MI_ISP_AE_ STABILIZER _TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Stabilizer function switch.
    u16DiffThd The threshold of the difference between reference frame statistics and current frame statistics. If the Y difference of this statstics block exceeds this threshold, it means this statistics block has changed. On the other hand, if the Y difference of this statstics block is smaller than this threshold, it means there is no change in this statistics block. Data range: 0 ~ 20 (in 8-bit precision), suggested value: 2. Too big value is not recommended, because this will cause brightness change to be not smooth enough when you increase or decrease the brightness of the light soure smoothly.
    u16Percent The percentage threshold of the frame. When AE is in converged state, if the percentage the brightnees-changed area occupying the whole frame is smaller than this value, AE will keep current setting. Data range: 0 ~ 100, default value: 50.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AE_SetStabilizer(MI_U32 Channel, MI_ISP_AE_STABILIZER_TYPE_t *data);

    MI_S32 MI_ISP_AE_GetStabilizer(MI_U32 Channel, MI_ISP_AE_STABILIZER_TYPE_t *data);


3.82. MI_ISP_AWB_QUERY_INFO Structure

3.82.1. Type Structure

  • Description

    Set the type structure of current global white balance information.

  • Definition

    typedef struct MI_ISP_AWB_QUERY_INFO_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bIsStable;
    
        MI_U16 u16Rgain;
    
        MI_U16 u16Grgain;
    
        MI_U16 u16Gbgain;
    
        MI_U16 u16Bgain;
    
        MI_U16 u16ColorTemp;
    
        MI_U8 u8WPInd;
    
        MI_ISP_BOOL_e bMultiLSDetected;
    
        MI_U8 u8FirstLSInd;
    
        MI_U8 u8SecondLSInd;
    
    } MI_ISP_AWB_QUERY_INFO_TYPE_t;
    
  • Name

    Variable Name Description
    bIsStable Get A WB stable/unstable information.
    u16Rgain Get the current white balance R channel gain.
    u16Grgain Get the current white balance Gr channel gain.
    u16Gbgain Get the current white balance Gb channel gain.
    u16Bgain Get the current white balance B channel gain.
    u16ColorTemp Get the current color temperature value.
    u8WPInd When WpWeight function is enabled, get the current reference white pixel color temperature range index.
    bMultiLSDetected When mixed-light color shift calibration function is enabled, check if mixed-light is detected. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    u8FirstLSInd When mixed-light color shift calibration function is enabled, get the largest light source index×2.
    u8SecondLSInd When mixed-light color shift calibration function is enabled, get the second largest light source index×2.
  • Note

    The indexes shown by u8FirstLSInd and u8SecondLSInd represent the actual color temperature range index 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 Channel, MI_ISP_AWB_QUERY_INFO_TYPE_t *data);


3.83. MI_ISP_AWB_CT_STATISTICS Structure

3.83.1. Type Structure

  • Description

    Set the type structure of auto white balance calibration statistical data.

  • Definition

    typedef struct MI_ISP_AWB_CT_STATISTICS_TYPE_s
    
    {
    
        MI_U16 u16Width;
    
        MI_U16 u16Height;
    
        MI_U16 u16StatisX[5760];
    
        MI_U16 u16StatisY[5760];
    
    } MI_ISP_AWB_CT_STATISTICS_TYPE_t;
    
  • Name

    Variable Name Description
    u16Width Effective area width.
    u16Height Effective area height.
    u16StatisX[5760] Color temperature range statistical X.
    u16StatisY[5760] Color temperature range statistical Y.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AWB_GetCTStats(MI_U32 Channel, MI_ISP_AWB_CT_STATISTICS_TYPE_t *data);


3.84. MI_ISP_AWB_HW_STATISTICS Structure

3.84.1. Type Structure

  • Description

    Set the type structure of AWB Hardware statistical data.

  • Definition

    typedef struct
    
    {
    
        MI_U32 nBlkX;
    
        MI_U32 nBlkY;
    
        MI_ISP_AWB_AVGSnAvg[128*90];
    
    } MI_ISP_AWB_HW_STATISTICS_t;
    
  • Name

    Variable Name Description
    nBlkX The number of statistical values on the horizontal axis.
    nBlkY The number of statistical values on the vertical axis.
    nAvg[128*90] The data of AWB statistical values.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AWB_GetAwbHwAvgStats(MI_U32 Channel, MI_ISP_AWB_HW_STATISTICS t *data);

3.84.2. Type Structure of Individual AWB Hardware Statistical Data (MI_ISP_AWB_AVGS)

  • Description

    The type structure of individual AWB Hardware statistical data.

  • Definition

    typedef enum

    {

    MI_U8 uAvgR;
    
    MI_U8 uAvgG;
    
    MI_U8 uAvgB;
    

    } MI_ISP_AWB_AVGS;

  • Name

    Variable Name Description
    uAvgR The average value of R in the individual statistical value. Parameter range: 0 ~ 255.
    uAvgG The average value of G in the individual statistical value. Parameter range: 0 ~ 255.
    uAvgB The average value of B in the individual statistical value. Parameter range: 0 ~ 255.

3.85. MI_ISP_AWB_ATTR Structure

3.85.1. Type Structure

  • Description

    Set the type structure of AWB attribute.

  • Definition

    typedef struct MI_ISP_AWB_ATTR_TYPE_s
    
    {
    
        MI_ISP_SM_STATE_TYPE_e  eState;
    
        MI_ISP_AWB_MODE_TYPE_e    eOpType;
    
        MWB_ATTR_PARAM_t        stManualParaAPI;
    
        AWB_ATTR_PARAM_t        stAutoParaAPI;
    
    } MI_ISP_AWB_ATTR_TYPE_t;
    
  • Name

    Variable Name Description
    eState Set the status mode of AWB attribute. Normal: SS_ISP_STATE_NORMAL = 0. Pause: SS_ISP_STATE_PAUSE = 1.
    enOpType Set the work mode of AWB attribute. Automatic mode: SS_AWB_MODE_AUTO = 0. Manual mode: SS_AWB_MODE_MANUAL = 1. Color Temperature manual mode: SS_AWB_MODE_CTMANUAL = 2
    stAutoParaAPI Set the automatic mode attribute structure of AWB attribute.
    stManualParaAPI Set the manual mode attribute structure of AWB attribute.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AWB_SetAttr(MI_U32 Channel, MI_ISP_AWB_ATTR_TYPE_t *data);

    MI_S32 MI_ISP_AWB_GetAttr(MI_U32 Channel, MI_ISP_AWB_ATTR_TYPE_t *data);

3.85.2. Enum Structure of AWB Work Mode (MI_ISP_AWB_MODE_TYPE_e)

  • Description

    Set the enumeration structure of AWB work mode.

  • Definition

    typedef enum
    
    {
    
        SS_AWB_MODE_AUTO,
    
        SS_AWB_MODE_MANUAL,
    
        SS_AWB_MODE_CTMANUAL,
    
        SS_AWB_MODE_MAX
    
    } MI_ISP_AWB_MODE_TYPE_e;
    
  • Name

    Variable Name Description
    SS_AWB_MODE_AUTO Auto Mode
    SS_AWB_MODE_MANUAL Manual Mode
    SS_AWB_MODE_CTMANUAL Manual mode for color temperature. By selecting this mode, WB gain will be applied according to the CTMWB setting of color temperature.

3.85.3. Manual Mode Parameter Structure

  • Description

    Set the manual mode parameter structure.

  • Definition

    typedef struct MWB_ATTR_PARAM_s
    
    {
    
        MI_U16 u16Rgain;
    
        MI_U16 u16Grgain;
    
        MI_U16 u16Gbgain;
    
        MI_U16 u16Bgain;
    
    } MWB_ATTR_PARAM_t;
    
  • Name

    Variable Name Description
    u16Rgain White balance R channel gain. Parameter range: 0 ~ 8192.
    u16Grgain White balance Gr channel gain. Parameter range: 0 ~ 8192.
    u16Gbgain White balance Gb channel gain. Parameter range: 0 ~ 8192.
    u16Bgain White balance B channel gain. Parameter range: 0 ~ 8192.

3.85.4. Automatic Mode Parameter Structure

  • Description

    Set the automatic mode parameter structure.

  • Definition

    typedef struct AWB_ATTR_PARAM_s
    
    {
    
        MI_U8 u8Speed;
    
        MI_U8 u8ConvInThd;
    
        MI_U8 u8ConvOutThd;
    
        MI_ISP_AWB_ALG_TYPE_e eAlgType;
    
        MI_ISP_AWB_ADV_TYPE_e eAdvType;
    
        MI_U8 u8RGStrength;
    
        MI_U8 u8BGStrength;
    
        CT_LIMIT_PARAM_t stCTLimit;
    
        CT_WEIGHT_PARAM_t stLvWeight[MI_ISP_AWB_LV_CT_TBL_NUM];
    
        CT_RATIO_PARAM_t stPreferRRatio[MI_ISP_AWB_LV_CT_TBL_NUM];
    
        CT_RATIO_PARAM_t 
        stPreferBRatio[MI_ISP_AWB_LV_CT_TBL_NUM];
    
        MI_U16 u16WpWeight[MI_ISP_AWB_CT_TBL_NUM];
    
        MS_U32 u4WeightWin[MI_ISP_AWB_WEIGHT_WIN_NUM];
    
    } AWB_ATTR_PARAM_t;
    
  • Name

    Variable Name Description
    u8Speed Auto white balance algorithm convergence speed. The greater the value, the higher the convergence speed. Parameter range: 0 ~ 100.
    u8ConvInThd Set the converge-in threshold. The smaller the value, the closer it is to target WB gain. Parameter range: 0 ~ 255. Value too small is not suggested because the AWB can easily become unstable. Recommended setting is 32.
    u8ConvOutThd Set the converge-out threshold. The greater the value, the less likely the AWB is to be re-calculated after the convergence becomes stable. Parameter range: 0 ~ 255. Value too large is not suggested. Recommended setting is 64.
    eAlgType Auto white balance algorithm selection. There are four types to choose from:
    1. GrayWorld
    2. Normal
    3. Balance
    4. Focus
    Please refer to MI_ISP_AWB_ALG_TYPE_e for more detail.
    eAdvType Auto white balance advance mode selection. When set to SS_AWB_ADV_ADVANCE, MI_ISP_AWB_SetAttrEx API setting functions will be enabled.
    u8RGStrength Auto white balance R Gain strength. = 0x80: R Gain remains the same. > 0x80: R Gain becomes bigger and reddish. \< 0x80: R Gain becomes smaller.
    u8BGStrength Auto white balance B Gain strength. = 0x80: B Gain remains the same. > 0x80: B Gain becomes bigger and bluish. \< 0x80: B Gain becomes smaller.
    stCTLimit White balance algorithm ambient color temperature. It can set the gain limit calculation mode and the manual gain value when out of the color temperature curve range. Adjustment of this parameter is not suggested. This parameter limits the entire color temperature curve coordinate range. 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 specified ambient brightness. Higher weight will render the final target R, B gain closer to the R, B gain of that color temperature. There are 18 sets of setting. Parameter range: 1 ~ 255.
    stPreferRRatio[MI_ISP_AWB_LV_CT_TBL_NUM] Assign R rartio to each color temperature under specified ambient brightness, for target R gain fine-tuing. There are 18 sets of setting. Parameter range: 1 ~ 255.
    stPreferBRatio[MI_ISP_AWB_LV_CT_TBL_NUM] Assign B rartio to each color temperature under specified ambient brightness, for target B gain fine-tuing. There are 18 options for selection. Parameter range: 1 ~ 255.
    u16WpWeight[MI_ISP_AWB_CT_TBL_NUM] Reference white pixel weight. The greater 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, default is 100.
    u4WeightWin[MI_ISP_AWB_WEIGHT_WIN_NUM] Separate image into 9x9 segments. Each segment can be assigned a different weighting to allow the AWB calculation to balance the segment specified. Parameter range: 0 ~ 16.
  • Note

    Suggested u8RGStrength and u8BGStrength adjustment: You can adjust these two parameters according to the customer’s expectation. For example, if greenish tone is preferred in certain scenes, you can fine-tune u8RGStrength and u8BGStrength at the same time, and set them to a value smaller than 128.

3.85.5. Parameter Structure

  • Description

    Set the white balance gain range limit parameter structure.

  • Definition

    typedef struct CT_LIMIT_PARAM_s
    
    {
    
        MI_U16 u16MaxRgain;
    
        MI_U16 u16MinRgain;
    
        MI_U16 u16MaxBgain;
    
        MI_U16 u16MinBgain;
    
    } CT_LIMIT_PARAM_t;
    
  • Name

    Variable Name Description
    u16MaxRgain Set the high color temperature max. R Gain. Parameter range: 256 ~ 4095.
    u16MinRgain Set the low color temperature min. R Gain. Parameter range: 256 ~ 4095.
    u16MaxBgain Set the high color temperature max. B Gain. Parameter range: 256 ~ 4095.
    u16MinBgain Set the low color temperature min. B Gain. Parameter range: 256 ~ 4095.

3.85.6. Parameter Structure

  • Description

    Set the parameter structure of R, B gain color temperature weights.

  • Definition

    typedef struct CT_WEIGHT_PARAM_s
    
    {
    
        MI_U16 u16Weight[MI_ISP_AWB_CT_TBL_NUM];
    
    } CT_WEIGHT_PARAM_t;
    
  • Name

    Variable Name Description
    u16Weight[MI_ISP_AWB_CT_TBL_NUM] Set the weight of the various color temperatures for calculating target R, B gain. The greater the weight, the closer the target R, B gain will get toward the R, B gain of the color temperature. MI_ISP_AWB_CT_TBL_NUM = 10. Parameter range: 1 ~ 255, default is 100.

3.85.7. Parameter Structure

  • Description

    Set the ratio to multiply the target R, B gain for fine-tuning.

  • Definition

    typedef struct CT_RATIO_PARAM_s
    
    {
    
        MI_U16 u16Ratio[MI_ISP_AWB_CT_TBL_NUM];
    
    } CT_RATIO_PARAM_t;
    
  • Name

    Variable Name Description
    u16Ratio [MI_ISP_AWB_CT_TBL_NUM] Ratio to multiply the target R, B gain of various color temperatures. MI_ISP_AWB_CT_TBL_NUM = 10. Parameter range: 1 ~ 255, default is 100.

3.86. MI_ISP_AWB_ATTR_EX Structure

3.86.1. Type Structure

  • Description

    Set the type structure of AWB extended attribute.

  • Definition

    typedef struct MI_ISP_AWB_ATTR_EX_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bExtraLightEn;
    
        AWB_ATTR_EXTRA_LIGHTSOURCE_PARAM_t stLightInfo[4];
    
    } MI_ISP_AWB_ATTR_EX_TYPE_t;
    
  • Name

    Variable Name Description
    bExtraLightEn Enable reference to user-defined extra color temperature range during auto white balance calculation. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    stLightInfo[4] User-defined extra light source information.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AWB_SetAttrEx(MI_U32 Channel, MI_ISP_AWB_ATTR_EX_TYPE_t *data);

    MI_S32 MI_ISP_AWB_GetAttrEx(MI_U32 Channel, MI_ISP_AWB_ATTR_EX_TYPE_t *data);

3.86.2. AWB Extra Light Source Parameter Structure

  • Description

    Set the parameter structure of white balance extra light source.

  • Definition

    typedef struct AWB_ATTR_EXTRA_LIGHTSOURCE_PARAM_s
    
    {
    
        MI_U16 u16WhiteRgain;
    
        MI_U16 u16WhiteBgain;
    
        MI_U8 u8AreaSize;
    
        MI_ISP_BOOL_e bExclude;
    
    } AWB_ATTR_EXTRA_LIGHTSOURCE_PARAM_t;
    
  • Name

    Variable Name Description
    u16WhiteRgain This setting will mirror to an independent point on the color temperature coordinate, reference to color temperature not required, corresponding to the R gain (G × 1024 / R) of user-defined extra light source. Parameter range: 256 ~ 4095.
    u16WhiteBgain This setting will mirror to an independent point on the color temperature coordinate, reference to color temperature not required, corresponding to the B gain (G × 1024 / B) of user-defined extra light source. Parameter range: 256 ~ 4095.
    u8AreaSize User-defined extra light source within the color temperature coordinate range. The greater the value, the broader the range. Parameter range: 1 ~ 32.
    bExclude Exclude or include user-defined extra light source during white balance algorithm calculation. Determines whether white pixels are to be included in user-defined extra light source during white balance algorithm calculation. Include: SS_FALSE = 0. Exclude: SS_TRUE = 1.

3.87. MI_ISP_AWB_MULTILS_LS Structure

3.87.1. Type Structure

  • Description

    Set the type structure of auto white balance mixed-light offset correction.

  • Definition

    typedef struct MI_ISP_AWB_MULTILS_LS_TYPE_s
    
    {
    
        MI_ISP_BOOL_e bEnable;
    
        MI_U8 u8Sensitive;
    
        MI_U8 u8CaliStrength;
    
        MI_U16 u16CcmForLow[9];
    
        MI_U16 u16CcmForHigh[9];
    
    } MI_ISP_AWB_MULTILS_LS_TYPE_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for mixed-light color shift calibration. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    u8Sensitive Sensitivity of mixed-light judgement. The greater the value, the easier it is to judge a scene as a mixed-light scene. Parameter range: 1 ~ 10, default is 5.
    u8CaliStrength Color shift calibration strength for maximum mixed-light color temperature difference. The maximum mixed-light color temperature difference means the fall points of the two light sources happen to be the StartIdx and the EndIdx respectively. The strength acutally applied will be adjusted according to the ratio of the color temperature difference between the two light sources to the max. color temperature difference. Parameter range: 0 ~ 100, default is 100.
    u16CcmForLow[9] When the scene is judged as a mixed-light scene, and high color temperature light source is balanced, this parameter can be used to compensate color shifted CCM under low color temperature light source. 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.
    u16CcmForHigh[9] When the scene is judged as a mixed-light scene, and low color temperature light source is balanced, this parameter can be used to compensate color shifted CCM under high color temperature light source. 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.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AWB_SetMultiLSAttr(MI_U32 Channel, MI_ISP_AWB_MULTILS_LS_TYPE_t *data);

    MI_S32 MI_ISP_AWB_GetMultiLSAttr(MI_U32 Channel, MI_ISP_AWB_MULTILS_LS_TYPE_t *data);


3.88. MI_ISP_AWB_CT_CALI Structure

3.88.1. Type Structure

  • Description

    Set the type structure of auto white balance calibration.

  • Definition

    typedef struct MI_ISP_AWB_CT_CALI_TYPE_s
    
    {
    
        MI_U16 u16StartIdx;
    
        MI_U16 u16EndIdx;
    
        MI_U16 u16CtParams[40];
    
    } MI_ISP_AWB_CT_CALI_TYPE_t;
    
  • Name

    Variable Name Description
    u16StartIdx Bright area start index.
    u16EndIdx Bright area end index.
    u16CtParams[40] Color temperature calibration parameter.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AWB_SetCTCaliAttr(MI_U32 Channel, MI_ISP_AWB_CT_CALI_TYPE_t *data);

    MI_S32 MI_ISP_AWB_GetCTCaliAttr(MI_U32 Channel, MI_ISP_AWB_CT_CALI_TYPE_t *data);


3.89. MI_ISP_AWB_CUR_CT_CALI Structure

3.89.1. Type Structure

  • Description

    Set the type structure of the auto mode for white balance color temperature curve range.

  • Definition

    typedef struct MI_ISP_AWB_CUR_CT_CALI_TYPE_s
    
    {
    
        MI_U16 u16CtParams[40];
    
    } MI_ISP_AWB_CUR_CT_CALI_TYPE_t;
    
  • Name

    Variable Name Description
    u16CtParams[40] Color temperature calibration parameter.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AWB_GetCurCTCaliAttr(MI_U32 Channel, MI_ISP_AWB_CUR_CT_CALI_TYPE_t *data);


3.90. MI_ISP_AWB_CTMWB Structure

3.90.1. Type Structure

  • Description

    Set the type structure of the manual mode for white balance color temperature.

  • Definition

    typedef struct MI_ISP_AWB_CTMWB_PARAM_s
    
    {
    
        MI_U32 u32CT;
    
    } MI_ISP_AWB_CTMWB_PARAM_t;
    
  • Name

    Variable Name Description
    u32CT Color temperature setting. Parameter range: 1000 ~ 20000.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AWB_SetCTMwbAttr(MI_U32 Channel, MI_ISP_AWB_CTMWB_PARAM_t *data);

    MI_S32 MI_ISP_AWB_GetCTMwbAttr(MI_U32 Channel, MI_ISP_AWB_CTMWB_PARAM_t *data);


3.91. MI_ISP_AWB_STABILIZER Structure

3.91.1. Type Structure

  • Description

    Set the type structure of AWB stabilizer.

  • Definition

    typedef struct MI_ISP_AWB_STABILIZER_PARAM_s
    {
        MI_ISP_BOOL_e bEnable;
        MI_U16 u16GlbGainThd;
        MI_U16 u16CountThd;
        MI_U16 u16ForceTriGainThd;
    } MI_ISP_AWB_STABILIZER_PARAM_t;
    
  • Name

    Variable Name Description
    bEnable Set Boolean value for AWB stabilizer. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1.
    u16GlbGainThd The threshold value of global change in WB gain. When AWB is converged, it can only be re-triggered 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 A threshold value of gain used for mandatorily triggering AWB. 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.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AWB_SetStabilizer(MI_U32 Channel, MI_ISP_AWB_STABILIZER_PARAM_t *data);

    MI_S32 MI_ISP_AWB_GetStabilizer(MI_U32 Channel, MI_ISP_AWB_STABILIZER_PARAM_t *data);


3.92. MI_ISP_AF_QUERY_INFO Structure

3.92.1. Type Structure

  • Description

    Set the information about the current AF state.

  • Definition

    typedef struct MI_ISP_AF_QUERY_INFO_TYPE_s
    {
        MI_ISP_BOOL_e bIsStable;
        MI_U16 u16CurMotorPos;
    } MI_ISP_AF_QUERY_INFO_TYPE_t;
    
  • Name

    Variable Name Description
    bIsStable Get information about whether the current AF state is converged.
    u16CurMotorPos Get the current motor position.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AF_QueryInfo(MI_U32 Channel, MI_ISP_AF_QUERY_INFO_TYPE_t *data);


3.93. MI_ISP_AF_HW_ROI_MODE Structure

3.93.1. Type Structure

  • Description

    Set the mode of AF statistical value.

  • Definition

    typedef struct MI_ISP_AF_HW_ROI_MODE_TYPE_s
    
    {
    
        MI_U8 u8Mode;
    
        MI_U32 u32VerticalBlockNumber;
    
    } MI_ISP_AF_HW_ROI_MODE_TYPE_t;
    
  • Name

    Variable Name Description
    u8Mode ROI mode control option. If the Mode is set to 0, the screen can be divided into 16 sets of ROI blocks, and the window size and position can be set according to user’s preference; If the Mode is set to 1, the screen can be divided into 16 * N sets of ROI windows. The window size and position are relatively more limited. Parameter range: 0 ~ 1.
    u32VerticalBlockNumber Effective only when the Mode is set to Matrix, this parameter can divide the window into 16 * Nsets of ROI blocks (N = VerticalBlockNumber). Parameter range: 1 ~ 16.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AF_SetHWRoiMode(MI_U32 Channel, MI_ISP_AF_HW_ROI_MODE_TYPE_t *data);

    MI_S32 MI_ISP_AF_GetHWRoiMode(MI_U32 Channel, MI_ISP_AF_HW_ROI_MODE_TYPE_t *data);


3.94. MI_ISP_AF_HW_WIN Structure

3.94.1. Type Structure

  • Description

    Set type structure of AF Win.

  • Definition

    typedef struct MI_ISP_AF_HW_WIN_TYPE_s
    
    {
    
        MI_U16 u16Win[4*16];
    
    } MI_ISP_AF_HW_WIN_TYPE_t;
    
  • Name

    Variable Name Description
    u16Win Coordinates of the 16 ROIs, in the sequence of x_start, y_start, x_end, y_end. Parameter range: 0 ~ 1023.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AF_SetHWWin(MI_U32 Channel, MI_ISP_AF_HW_WIN_TYPE_t *data);

    MI_S32 MI_ISP_AF_GetHWWin(MI_U32 Channel, MI_ISP_AF_HW_WIN_TYPE_t *data);


3.95. MI_ISP_AF_HW_ FILTER_ATTR Structure

3.95.1. Type Structure

  • Description

    Set type structure of AF filter coefficients.

  • Definition

    typedef struct MI_ISP_AF_HW_FILTER_ATTR_TYPE_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_HW_FILTER_ATTR_TYPE_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.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AF_SetHWFilterAttr(MI_U32 Channel, MI_ISP_AF_HW_FILTER_ATTR_TYPE_t *data);

    MI_S32 MI_ISP_AF_GetHWFilterAttr(MI_U32 Channel, MI_ISP_AF_HW_FILTER_ATTR_TYPE_t *data);


3.96. MI_ISP_AF_HW_ FILTERSQ Structure

3.96.1. Type Structure

  • Description

    Set AF filter square

  • Definition

    typedef struct MI_ISP_AF_HW_FILTERSQ_TYPE_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 u8AFTblX[12];
    
        MI_U16 u16AFTblY[13];
    
    } MI_ISP_AF_HW_FILTERSQ_TYPE_t;
    
  • Name

    Variable Name Description
    bSobelYSatEn Sobelfilter Y threshold switch. Parameter range: 0 ~ 1.
    u16SobelYThd Sobelfilter Y threshold. It takes effect only when SobelYSatEn is true. Pixels with brightness lower than this threshold will be included in the Sobel filter calculation. Parameter range: 0 ~ 1023.
    bIIRSquareAccEn IIR filter enhanced control switch. Parameter range: 0 ~ 1.
    bSobelSquareAccEn Sobelfilter enhanced control switch. Parameter range: 0 ~ 1.
    u16IIR1Thd IIR high filter threshold. The output value will be subtracted by this value before output. Parameter range: 0 ~ 1023.
    u16IIR2Thd IIR low filter threshold. The output value will be subtracted by this value before output. Parameter range: 0 ~ 1023.
    u16SobelHThd Sobel H filter threshold. The output value will be subtracted by this value before output. Parameter range: 0 ~ 1023.
    u16SobelVThd Sobel V filter threshold. The output value will be subtracted by this value before output. Parameter range: 0 ~ 1023.
    u8AFTblX[12] Nodes on the horizontal axis in the nonlinear mapping of IIR/Sobel filter, accumulated by the power of two. Parameter range: 0 ~ 15.
    u16AFTblY[13] Nodes on the vertical axis in the nonlinear mapping of IIR/Sobel filter. Parameter range: 0 ~ 8191.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AF_SetHWFilterSq(MI_U32 Channel, MI_ISP_AF_HW_FILTERSQ_TYPE_t *data);

    MI_S32 MI_ISP_AF_GetHWFilterSq(MI_U32 Channel, MI_ISP_AF_HW_FILTERSQ_TYPE_t *data); 


3.97. MI_ISP_AF_ATTR Structure

3.97.1. Type Structure

  • Description

    Set type structure of AF attributes.

  • Definition

    typedef struct MI_ISP_AF_ATTR_TYPE_s
    {
        MI_ISP_SM_STATE_TYPE_e      eState;
        MI_ISP_OP_TYPE_e            eType;
        MI_U16                  u16ManualMotorPos;
        MI_ISP_AF_ALGO_TYPE_e       eAlgo;
    } MI_ISP_AF_ATTR_TYPE_t;
    
  • Name

    Variable Name Description
    eState Set the work mode of AF attribute function. Normal: SS_ISP_STATE_NORMAL = 0. Pause: SS_ISP_STATE_PAUSE = 1.
    eType Set the work mode of AF attribute. Auto Mode: SS_OP_TYP_AUTO = 0. Manual Mode: SS_OP_TYP_MANUAL = 1.
    u16ManualMotorPos Set the Manual Mode structure of AF Attribute. Parameter range: 0 ~ 1023.
    eAlgo The setting of the type of Auto Focus algorithm. Two options are available:
    1. OneShot
    2. Continuous
  • Related Structure Type and Function

    MI_S32 MI_ISP_AF_SetAttr(MI_U32 Channel, MI_ISP_AF_ATTR_TYPE_t *data);

    MI_S32 MI_ISP_AF_GetAttr(MI_U32 Channel, MI_ISP_AF_ATTR_TYPE_t *data);


3.98. MI_ISP_AF_MOTOR Structure

3.98.1. Type Structure

  • Description

    Set type structure of AF motor.

  • Definition

    typedef struct MI_ISP_AF_MOTOR_TYPE_s
    
    {
    
        MI_U16 u16MinMotorPos;
    
        MI_U16 u16MaxMotorPos;
    
        MI_U16 u16MinMotorStep;
    
        MI_U16 u16MaxMotorStep;
    
    } MI_ISP_AF_MOTOR_TYPE_t;
    
  • Name

    Variable Name Description
    u16MinMotorPos Minimum Motor position. Parameter range: 0 ~ 1023.
    u16MaxMotorPos Maximum Motor position. 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.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AF_SetMotor(MI_U32 Channel, MI_ISP_AF_MOTOR_TYPE_t *data);

    MI_S32 MI_ISP_AF_GetMotor(MI_U32 Channel, MI_ISP_AF_MOTOR_TYPE_t *data);


3.99. MI_ISP_AF_ACC_WEIGHT Structure

3.99.1. Type Structure

  • Description

    Set type structure of AF acc weight.

  • Definition

    typedef struct MI_ISP_AF_ACC_WEIGHT_TYPE_s
    {
        MI_U8           u8WinNumX;
        MI_U8           u8WinNumY;
        MI_ISP_BOOL_e       bEqualWinWgt;
        MI_U8           u8WinWgt[256];
        MI_ISP_BOOL_e       bIIRHBlendEn;
        MI_U8               u8IIRHWgt_FirstBlendIIRL;
        MI_U8               u8IIRHWgt_SecondBlendSBLV;
        MI_U8           u8IIRHWgt_ThirdBlendSBLH;
    } MI_ISP_AF_ACC_WEIGHT_TYPE_t;
    
  • Name

    Variable Name Description
    u8WinNumX The total number of X-direction window. Parameter range: 1 ~ 16.
    u8WinNumY The total number of Y-direction window. Parameter range: 1 ~ 16.
    bEqualWinWgt Equal weight switch of statistics value. Parameter range: 0 ~ 1.
    u8WinWgt[256] Weight table of statistical value, which only takes effect when EqualWinWgtEn is false. Parameter range: 0 ~ 255.
    bIIRHBlendEn IIRH blending switch. The blending takes place in the sequence of the following three variables. Parameter range: 0 ~ 1
    u8IIRHWgt_FirstBlendIIRL IIRH will be blended with IIRL first; this value is the IIRH ratio. Parameter range: 0 ~ 255.
    u8IIRHWgt_SecondBlendSBLV IIRH will then be blended with SobelV, as the IIRH ratio. Parameter range: 0 ~ 255.
    u8IIRHWgt_ThirdBlendSBLH IIRH will finally be blended with SobelH, as the IIRH ratio. Parameter range: 0 ~ 255.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AF_SetAccWeight(MI_U32 Channel, MI_ISP_AF_ACC_WEIGHT_TYPE_t *data);

    MI_S32 MI_ISP_AF_GetAccWeight(MI_U32 Channel, MI_ISP_AF_ACC_WEIGHT_TYPE_t *data);


3.100. MI_ISP_AF_ONESHOT Structure

3.100.1. Type Structure

  • Description

    Set type structure of AF OneShot, effective only when Algo is set to OneShot.

  • Definition

    typedef struct MI_ISP_AF_ONESHOT_TYPE_s
    {
        MI_ISP_AF_ACC_SEL_TYPE_e    eAccSel;
        MI_U16                      u16MotorStep;
    } MI_ISP_AF_ONESHOT_TYPE_t;
    
  • Name

    Variable Name Description
    eAccSel Type of statistical values. Parameter range: 0 ~ 3.
    u16MotorStep Motor step for each frame. Parameter range: 0 ~ 1023.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AF_SetOneShot(MI_U32 Channel, MI_ISP_AF_ONESHOT_TYPE_t *data);

    MI_S32 MI_ISP_AF_GetOneShot(MI_U32 Channel, MI_ISP_AF_ONESHOT_TYPE_t *data);


3.101. MI_ISP_AF_SCENE_CHANGE Structure

3.101.1. Type Structure

  • Description

    Set type structure of AF Scene Change, effective only when Algo is set to Continuous.

  • Definition

    typedef struct MI_ISP_AF_SCENE_CHANGE_TYPE_s
    {
        MI_ISP_AF_ACC_SEL_TYPE_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_ACC_SEL_TYPE_e    eFocusAfAccSel;
        MI_U8                       u8FocusAeAccDiffTh;
        MI_U8                       u8FocusAeAccCntTh;
        MI_U8                       u8FocusAfAccDiffTh;
        MI_U8                       u8FocusAfAccCntTh;
        MI_U8                       u8StableCntTh;
    } MI_ISP_AF_SCENE_CHANGE_TYPE_t;
    
  • Name

    Variable Name Description
    ePreAfAccSel Type of statistical value. Determine whether the environment has changed according to the difference of statistical value from the previous frame. Parameter range: 0 ~ 3.
    u8PreAeAccDiffThOft Luma difference ratio threshold. Will count the total number exceeding this threshold. Parameter range: 0 ~ 100.
    u8PreAeAccDiffThSlp Luma difference ratio threshold slope. The threshold can be increased by motor step. Parameter range: 0 ~ 100.
    u8PreAeAccCntThOft Luma total ratio threshold. The environment will be judged as unstable if greater than this threshold. Parameter range: 0 ~ 100.
    u8PreAeAccCntThSlp Luma total ratio threshold slope. The threshold can be increased by motor step. Parameter range: 0 ~ 100.
    u8PreAfAccDiffThOft PreAccSel difference ratio threshold. Will count the total number exceeding this threshold. Parameter range: 0 ~ 100.
    u8PreAfAccDiffThSlp PreAccSel difference ratio threshold slope. The threshold can be increased by motor step. Parameter range: 0 ~ 100.
    u8PreAfAccCntThOft PreAccSel total ratio threshold. The environment will be judged as unstable if greater than this threshold. Parameter range: 0 ~ 100.
    u8PreAfAccCntThSlp PreAccSel total ratio threshold slope. The threshold can be increased by motor step. Parameter range: 0 ~ 100.
    eFocusAfAccSel Type of statistical value. Determine whether the environment has changed according to the difference from the previous end-of-convergence value. Parameter range: 0 ~ 3.
    u8FocusAeAccDiffTh Luma difference ratio threshold. Will count the total number exceeding this threshold. Parameter range: 0 ~ 100.
    u8FocusAeAccCntTh Luma total ratio threshold. The environment will be judged as unstable if greater than this threshold. Parameter range: 0 ~ 100.
    u8FocusAfAccDiffTh FocusAccSel difference ratio threshold. Will count the total number exceeding this threshold. Parameter range: 0 ~ 100.
    u8FocusAfAccCntTh FocusAccSel total ratio threshold. The environment will be judged as unstable if greater than this threshold. Parameter range: 0 ~ 100.
    u8StableCntTh Continuous stable frame count threshold. The environment will be judged as stable and the motor will be moved to perform auto focus if greater than this threshold. Parameter range: 0 ~ 255.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AF_SetSceneChange(MI_U32 Channel, MI_ISP_AF_SCENE_CHANGE_TYPE_t *data);

    MI_S32 MI_ISP_AF_GetSceneChange(MI_U32 Channel, MI_ISP_AF_SCENE_CHANGE_TYPE_t *data);


3.102. MI_ISP_AF_SEARCH_START Structure

3.102.1. Type Structure

  • Description

    Set the type structure of AF Search Start, effective only when Algo is set to Continuous.

  • Definition

    typedef struct MI_ISP_AF_SEARCH_START_TYPE_s
    {
        MI_U16                      u16SearchMotorStep
        MI_U16                      u16SearchMotorDirByPosTh;
        MI_ISP_AF_ACC_SEL_TYPE_e    eSearchAccSel;
    } MI_ISP_AF_SEARCH_START_TYPE_t;
    
  • Name

    Variable Name Description
    u16SearchMotorStep Motor step for each frame. Parameter range: 0 ~ 1023.
    u16SearchMotorDirByPosTh Determine the direction of movement according to motor’s current position. If greater than this value, the motor will move toward smaller position, and vice versa. Parameter range: 0 ~ 1023.
    eSearchAccSel Type of statistical value. Parameter range: 0 ~ 3.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AF_SetSearchStart(MI_U32 Channel, MI_ISP_AF_SEARCH_START_TYPE_t *data);

    MI_S32 MI_ISP_AF_GetSearchStart(MI_U32 Channel, MI_ISP_AF_SEARCH_START_TYPE_t *data);


3.103. MI_ISP_AF_SEARCH Structure

3.103.1. Type Structure

  • Description

    Set structure of AF Search, effective only when Algo is set to Continuous.

  • Definition

    typedef struct MI_ISP_AF_SEARCH_TYPE_s
    
    {
    
        MI_U8 u8MinMaxAccRatioPeakThOft;
    
        MI_U8 u8MinMaxAccRatioPeakThSlp;
    
        MI_U8 u8AccDecCntPeakTh;
    
        MI_U8 u8NowFakeMaxAccRatioPeakTh;
    
        MI_U8 u8AccDecCntWrongDirTh;
    
        MI_U8 u8NowFakeMaxAccRatioWrongDirTh;
    
    } MI_ISP_AF_SEARCH_TYPE_t;
    
  • Name

    Variable Name Description
    u8MinMaxAccRatioPeakThOft Min-Max value difference ratio threshold, used to determine the peak. Parameter range: 0 ~ 100.
    u8MinMaxAccRatioPeakThSlp Min-Max value difference ratio threshold slope. The thresold can be decreased according to the total path traveled. Parameter range: 0 ~ 100.
    u8AccDecCntPeakTh Threshold for the number of consecutive declines in statistical values, used to determine the peak. Parameter range: 0 ~ 255
    u8NowFakeMaxAccRatioPeakTh Statistic value decrease proportional threshold, used to determine the peak. Parameter range: 0 ~ 100.
    u8AccDecCntWrongDirTh Threshold for the number of consecutive declines in statistical values, used to determine if the direction is wrong. Parameter range: 0 ~ 255.
    u8NowFakeMaxAccRatioWrongDirTh Threshold for the declineratio of statistical values, used to determine if the direction is wrong. Parameter range: 0 ~ 100.
  • Related Structure Type and Function

    MI_S32 MI_ISP_AF_SetSearch(MI_U32 Channel, MI_ISP_AF_SEARCH_TYPE_t *data);

    MI_S32 MI_ISP_AF_GetSearch(MI_U32 Channel, MI_ISP_AF_SEARCH_TYPE_t *data);


4. Error Code

| Parameter Name   | Value | Description |
|------------------|--------------|-------------|
| MI_ISP_OK      | 0     | Successful. |
| MI_ISP_FAILURE | \-1   | Failed.     |