hi_isp_subflicker

Description

Defines the ISP sub-anti-flicker attribute.

Definition

typedef struct {
    hi_bool enable; 
    hi_u8 luma_diff; 
} hi_isp_subflicker;

Members

Member

Description

enable

If enable is HI_TRUE, sub-anti-flicker is enabled. If enable is HI_FALSE, sub-anti-flicker is disabled.

luma_diff

Anti-flicker level. The value range is [0x0, 0x64]. When the sub-anti-flicker function takes effect, a higher anti-flicker level indicates that the sub-anti-flicker function is closer to the anti-flicker function.

Restrictions

  • In forcible anti-flicker mode, the minimum exposure time is fixed at 1/120s (60 Hz) or 1/100s (50 Hz). In some scenarios, for example, the indoor backlight scenario (the lens is focused on the window), overexposure may be serious. However, image flicker at the power frequency is obvious if anti-flicker is disabled. In this case, the sub-anti-flicker mode is adopted to balance overexposure with flicker. When the sub-anti-flicker function takes effect in forcible anti-flicker mode, if the image luminance is less than (ae_compensation + luma_diff), the exposure time is still fixed at the minimum anti-flicker time of 1/120s (60 Hz) or 1/100s (50 Hz) to avoid image flicker. If the image luminance is greater than (ae_compensation + luma_diff), cancel anti-flicker and adjust the target image luminance to (ae_compensation + luma_diff). A certain degree of image flicker is introduced to avoid serious image overexposure.

    When luma_diff is small (less than 10) in the non-backlight scenario, the exposure time may fluctuate around the minimum anti-flicker point and cause slight image flicker. Therefore, you are advised to set luma_diff to a value greater than or equal to 20. In fact, if luma_diff is set to a small value in the backlight scenario, the effect is equivalent to that when the anti-flicker function is canceled, the effect is close to that in automatic anti-flicker mode, and the sub-anti-flicker effect cannot be achieved. Therefore, luma_diff is useful only when it is set to a large value.

  • The sub-anti-flicker function takes effect only when anti-flicker is enabled in forcible anti-flicker mode and the anti-flicker frequency is not 0.
  • The automatic anti-flicker mode does not support sub-anti-flicker. When the sub-anti-flicker function is enabled in automatic anti-flicker mode and then switched to the anti-flicker mode, overexposure may occur on one frame in the extremely bright scenario.