This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Can flicker detection (50Hz/60Hz) be turned off for outdoor daylight conditions?



Hello,

We're using IPNC_RDK 3.80 on our proprietary boards.

Our application includes motion detection and high quality video viewing for the end user. Therefore, flicker control must be used for indoor filming.

When filming outdoors in daylight, though, the flicker detection doesn't let the exposure time go lower than 10ms (for 50Hz) or 8.3ms (for 60Hz). This means that the video is always overexposed.

I received a fix from Anand for setting the minExposure below 5ms (to 100us). If the flicker_freq is set, though, this value is ignored.

In TI_2A_config function in \ti_tools\iss_03_80_00_00\packages\ti\psp\iss\drivers\alg\2A\src\issdrv_algTIaewb.c

flicker_detection = 0
gTi2aControlParams.flickerFreq = 50

if (flicker_detection == 0)
  {
    if (gTi2aControlParams.flickerFreq == 0)
    {
      min_exp = gTi2aControlParams.minExposure;
      stepSize = gTi2aControlParams.stepSize ;
    }
    else
    {
      min_exp = ((500000)/gTi2aControlParams.flickerFreq);  // 10000 = 10ms

      if (min_exp < gTi2aControlParams.minExposure)
      {
          min_exp =  gTi2aControlParams.minExposure + 1;
      }

      if (min_exp > gTi2aControlParams.maxExposure)
      {
          min_exp =  gTi2aControlParams.maxExposure - 1;
      }
      stepSize = min_exp;   // 10000 = 10ms
} }

Is there any setting that can let the 2A engine know that it is outside and daylight - so no flicker detection is necessary?

Can we use the WhiteBalance Modes DAY_D55 or DAY_D65 settings to determine that flicker detection is not necessary?

Thanks,

Mechi

  • I will notify the IPNC RDK team for help.

    BR
    Pavel
  • Hello,

    I made a small addition to the "if" and now it seems to work. The only drawback is that when changing WhiteBalance to/from Day mode, the camera has to be reset.

      if (flicker_detection == 0)
      {
    	  //  MMF - if we're outside in daylight, then no flicker detection
        if (gTi2aControlParams.flickerFreq == 0 ||
    	      gTi2aControlParams.wbSceneMode == TI2A_WB_SCENE_MODE_D65 ||
    	      gTi2aControlParams.wbSceneMode == TI2A_WB_SCENE_MODE_D55)
        {
          min_exp = gTi2aControlParams.minExposure;
          stepSize = gTi2aControlParams.stepSize ;
        }
        else
        {
          min_exp = ((500000)/gTi2aControlParams.flickerFreq);
    
          if (min_exp < gTi2aControlParams.minExposure)
          {
              min_exp =  gTi2aControlParams.minExposure + 1;
          }
    
          if (min_exp > gTi2aControlParams.maxExposure)
          {
              min_exp =  gTi2aControlParams.maxExposure - 1;
          }
          stepSize = min_exp;
    
        }
      }