1. 客户使用外挂GPIO或者I2C的flashlight IC通常会遇到:打闪拍照, 抓到的图片会很暗. 客户通常描述为:预闪与主闪不同步,或者打闪时序有问题.
2. 然后我司工程师会结合flashlight IC spec查看和修改leds_strobe.c以及flash_tuning_custom.cpp文档(想要了解具体操作,请登录MTKOnline-->Ecourse
专区-->标签"mt6589 flashlight"-->"mt6589 Flashlight Driver&Tuning 解析"视频).然后做实验,通过试验数据flash_nvdata.bin解析出engTab[]中的数据.
3. 更新过engTab[]以后,拍照就不会出现"不同步"问题, 那为什么会这样呢?这些值又是干嘛的?
[SOLUTION]
1. flash_tuning_custom_cct.cpp中有个值为:
p->tuningPara[0/1/2/3].yTar=188;
该值是使用flashlight以后AE收敛的Target(目标值).
2. 从上图可知duty=0(预闪),1(主闪)时候对应的闪光灯亮度值为:1171 8768.
所以预闪和主闪亮度比为eng=8768/1171.
假设预闪和主闪闪光时间内,场景对AE和flash的感光度分别为A和B.
3. 那么yTar=AE*(A+eng*B),从而可以推出:
AE=yTar/(A+eng*B)
所以AE的正确与否,直接受eng的影响.
eng过大capture的图片就偏暗, eng过小capture的图片就过曝.
4. 所以客户使用外挂的flashlight,需要对engTab[]进行客制化
1. 客户使用外挂GPIO或者I2C的flashlight IC通常会遇到:打闪拍照, 抓到的图片会很暗. 客户通常描述为:预闪与主闪不同步,或者打闪时序有问题.
2. 然后我司工程师会结合flashlight IC spec查看和修改leds_strobe.c以及flash_tuning_custom.cpp文档(想要了解具体操作,请登录MTKOnline-->Ecourse
专区-->标签"mt6589 flashlight"-->"mt6589 Flashlight Driver&Tuning 解析"视频).然后做实验,通过试验数据flash_nvdata.bin解析出engTab[]中的数据.
3. 更新过engTab[]以后,拍照就不会出现"不同步"问题, 那为什么会这样呢?这些值又是干嘛的?
[SOLUTION]
1. flash_tuning_custom_cct.cpp中有个值为:
p->tuningPara[0/1/2/3].yTar=188;
该值是使用flashlight以后AE收敛的Target(目标值).
2. 从上图可知duty=0(预闪),1(主闪)时候对应的闪光灯亮度值为:1171 8768.
所以预闪和主闪亮度比为eng=8768/1171.
假设预闪和主闪闪光时间内,场景对AE和flash的感光度分别为A和B.
3. 那么yTar=AE*(A+eng*B),从而可以推出:
AE=yTar/(A+eng*B)
所以AE的正确与否,直接受eng的影响.
eng过大capture的图片就偏暗, eng过小capture的图片就过曝.
4. 所以客户使用外挂的flashlight,需要对engTab[]进行客制化