(1)概述

我们都知道,Camera的效果文件在如下目录下,我们以gc08a3_mipi_raw这个摄像头为例来看效果文件的目录结构。

vendor/mediatek/proprietary/custom/mt6779/hal/imgsensor/ver1/gc08a3_mipi_raw


可以看到现在的效果文件会区分不同的Scenario,那我们应该怎么确定不同的场景走的是哪一个Scenario呢?

(2)如何确定Sensor Mode

首先我们要知道,我们现在Camera走的是哪一个Sensor Mode,可通过之前的一篇文章来确定。MTK平台如何决定SensorMode

Log显示如下:

//(1)这里的 mode=2 表示eNORMAL_CAPTURE,最终 sensorMode=1 表示SENSOR_SCENARIO_ID_NORMAL_CAPTURE
06-20 11:48:11.805 10951 10977 I mtkcam-SensorSettingPolicy: [determineScenDefault] dxf_determineScenDefault Image.w = 3072 , Image.h = 1728 , size.w = 1632 , size.h = 1224 , mode = 0
06-20 11:48:11.805 10951 10977 I mtkcam-SensorSettingPolicy: [determineScenDefault] dxf_determineScenDefault Image.w = 3072 , Image.h = 1728 , size.w = 3264 , size.h = 2448 , mode = 1
06-20 11:48:11.805 10951 10977 I mtkcam-SensorSettingPolicy: [determineScenDefault] skip video related mode since it didn't have full capbility
06-20 11:48:11.805 10951 10977 I mtkcam-SensorSettingPolicy: [determineScenDefault] dxf_determineScenDefault Image.w = 3072 , Image.h = 1728 , size.w = 3264 , size.h = 2448 , mode = 2
06-20 11:48:11.805 10951 10977 I mtkcam-SensorSettingPolicy: select size(3264x2448)@30  sensorMode:1 hdrSensorMode:0 hdrHalMode:0, hfpsMode:0//(2)这里的 mode=0 表示eNORMAL_PREVIEW,最终 sensorMode=0 表示SENSOR_SCENARIO_ID_NORMAL_PREVIEW
06-20 11:49:59.283 10951 11095 I mtkcam-SensorSettingPolicy: [determineScenDefault] dxf_determineScenDefault Image.w = 640 , Image.h = 480 , size.w = 1632 , size.h = 1224 , mode = 0
06-20 11:49:59.283 10951 11095 I mtkcam-SensorSettingPolicy: select size(1632x1224)@30  sensorMode:0 hdrSensorMode:0 hdrHalMode:0, hfpsMode:0

所以上面(1)的sensor Mode是Capture,而(2)的Sensor Mode是Preview。

(3)确定Scenario的相关信息

现在我们需要check每个Scenario的isp profile和scene mode的信息,用于核查不同场景跑的index。

这里我们提供6771和6779平台的命令。

//(1)6771
adb root
adb shell setenforce 0
adb shell logcat -G 80M
adb shell "ps -A | grep cameraserver | grep -v grep | sed 's/ [ ]*/:/g' | cut -d: -f2 | xargs kill -9"
adb shell setprop persist.vendor.mtk.camera.log_level 3
adb shell setprop vendor.debug.aaa.pvlog.enable 1
adb shell setprop vendor.debug.paramctrl.enable 1
adb shell setprop vendor.profile.paramctrl.enable 1
adb shell setprop vendor.debug.isp_tuning_mgr.enable 1
adb shell setprop vendor.debug.isp_mgr.enable 1
adb shell setprop vendor.debug.mapping_mgr.enable 3
adb shell setprop persist.vendor.mtk.camera.log_level 3
adb shell setprop persist.vendor.mtk.debug.camera.log 3
adb shell setprop persist.mtk.camera.log_level 3
adb shell setprop persist.vendor.debug.camera.log 3
adb shell setprop persist.vendor.debug.camera.dbginfo 1
adb shell setprop vendor.debug.camera.dump.JpegNode 1
adb shell setprop persist.vendor.dp.dumpreg.check 1
adb shell setprop vendor.debug.camera.SttBufQ.enable 60
adb shell setprop vendor.debug.camera.ufo_off 1
adb shell setprop vendor.debug.camera.p2.dump 1
adb shell setprop vendor.debug.camera.dump.campipe 1
adb shell setprop vendor.debug.camera.dump.p2 1
adb shell setprop vendor.debug.camera.dump.p2.ext.img3o 1
adb shell setprop vendor.debug.camera.img3o.dump 1
adb shell setprop vendor.debug.camera.copy.p1.lsc 1
adb shell setprop vendor.debug.hal3av3.forcedump 1
adb shell setprop vendor.debug.aaa.perframe_prop.enable 1
adb shell setprop vendor.debug.cache.mode 0
adb shell pkill camera*adb shell logcat | findstr "Mod:"//(2)6779
adb root
adb shell setenforce 0
adb shell logcat -G 200M
adb shell setprop persist.vendor.mtk.camera.log_level 3
adb shell setprop persist.vendor.debug.camera.log 3
adb shell setprop vendor.debug.mapping_mgr.enable 1
adb shell setprop vendor.debug.idxcache.log 1
adb shell setprop vendor.debug.aaa.perframe_prop.enable 1
adb shell setprop vendor.dataprovider.debug.enable 1
adb shell pkill camera*adb shell logcat | findstr "Mod:"

我们本地抓了6779平台的Log,用于看一下Log当中的信息:

3.txt:50838: 06-20 11:50:00.572 10951 11411 D Hal3ARaw: [IdxCache::From:IdxMgr] [Dev:1-Mod:AE(1)] (Idx 1) (Scene_Capture) (PF Preview, SM Preview, Bin 0, P2 0, FLASH 0, APP MTKCam, FD 0, ZOOM 0, LV 4, CT 5)
3.txt:50839: 06-20 11:50:00.572 10951 11411 D Hal3ARaw: [IdxCache::From:IdxMgr] [Dev:1-Mod:AWB(3)] (Idx 1) (Scene_Capture) (PF Preview, SM Preview, Bin 0, P2 0, FLASH 0, APP MTKCam, FD 0, ZOOM 0, LV 4, CT 5)
3.txt:50840: 06-20 11:50:00.572 10951 11411 D Hal3ARaw: [IdxCache::From:IdxMgr] [Dev:1-Mod:AF(2)] (Idx 1) (Scene_Capture) (PF Preview, SM Preview, Bin 0, P2 0, FLASH 0, APP MTKCam, FD 0, ZOOM 0, LV 4, CT 5)
3.txt:50842: 06-20 11:50:00.572 10951 11411 D Hal3ARaw: [IdxCache::From:IdxMgr] [Dev:1-Mod:Flash_AE(4)] (Idx 0) (Scene_Capture) (PF Preview, SM Preview, Bin 0, P2 0, FLASH 0, APP MTKCam, FD 0, ZOOM 0, LV 4, CT 5)
3.txt:50844: 06-20 11:50:00.572 10951 11411 D Hal3ARaw: [IdxCache::From:IdxMgr] [Dev:1-Mod:Flash_AWB(5)] (Idx 0) (Scene_Capture) (PF Preview, SM Preview, Bin 0, P2 0, FLASH 0, APP MTKCam, FD 0, ZOOM 0, LV 4, CT 5)
3.txt:50845: 06-20 11:50:00.572 10951 11411 D Hal3ARaw: [IdxCache::From:IdxMgr] [Dev:1-Mod:Flash_Calibration(6)] (Idx 0) (Scene_Capture) (PF Preview, SM Preview, Bin 0, P2 0, FLASH 0, APP MTKCam, FD 0, ZOOM 0, LV 4, CT 5)
//...

可以看到有很多不同场景的Mod信息,我们这里就以预览画面偏红的情况来分析,这种情况下需要查看Mod:AWB的信息。

3.txt:28141: 06-20 11:50:00.132 10951 11411 D Hal3ARaw: [IdxCache::From:IdxMgr] [Dev:1-Mod:AWB(3)] (Idx 1) (Scene_Capture) (PF Preview, SM Preview, Bin 0, P2 0, FLASH 0, APP MTKCam, FD 0, ZOOM 0, LV 4, CT 5)
3.txt:30706: 06-20 11:50:00.200 10951 11411 D Hal3ARaw: [IdxCache::From:IdxMgr] [Dev:1-Mod:AWB(3)] (Idx 1) (Scene_Capture) (PF Preview, SM Preview, Bin 0, P2 0, FLASH 0, APP MTKCam, FD 0, ZOOM 0, LV 4, CT 5)
3.txt:33605: 06-20 11:50:00.268 10951 11411 D Hal3ARaw: [IdxCache::From:IdxMgr] [Dev:1-Mod:AWB(3)] (Idx 1) (Scene_Capture) (PF Preview, SM Preview, Bin 0, P2 0, FLASH 0, APP MTKCam, FD 0, ZOOM 0, LV 4, CT 5)
3.txt:36555: 06-20 11:50:00.335 10951 11411 D Hal3ARaw: [IdxCache::From:IdxMgr] [Dev:1-Mod:AWB(3)] (Idx 1) (Scene_Capture) (PF Preview, SM Preview, Bin 0, P2 0, FLASH 0, APP MTKCam, FD 0, ZOOM 0, LV 4, CT 5)

结合之前的信息,现在就以Sensor Mode=0(Preview),Mod=AWB情况下,此时Idx=1来查看其走的Scenario文件夹是哪个。

(4)具体信息来查看Scenario

我们先看一张分析Log的图片。

这里是通过Log和Excel表格来确定Scenario,那这里的Excel表格从哪里来呢?

(5)通过Excel表格来确定Scenario

其实每个效果文件夹下都有一个类似的MT6779_NVRAM_IF_gc08a3mipiraw.xlsx文件,通过之前的Log信息:
Sensor Mode=0(Preview),Mod=AWB情况下,此时Idx=1。

我们来查看Excel表格的信息。

首先是AWB模式下的Sensor Mode = Preview,后Index = 1进而确定Scenario = Scene_Capture_4cell文件夹。

MTK平台如何确定Tuning的Scenario相关推荐

  1. MTK 平台上查询当前使用的摄像头模组及所支持预览分辨率

    1,MTK 平台如何查询当前使用的是哪颗摄像头及相关的模组信息? 在该目录下可以查到当前平台及相关项目的配置文件 ProjectConfig.mk \ALPS.JB.MP.V1_W_20120919\ ...

  2. LinuxGPIO操作和MTK平台GPIO

    GPIO口配置是一个历史性的问题,不管我们使用什么MCU,单片机也好,ARM也好,都离不开驱动GPIO口.Linux下有一个宏,GPIO_GPIO_SYSFS,打开这个宏后,编译烧录到设备端,去看看s ...

  3. mtk android 5.1 logo,Android ROM DIY之MTK平台手机通用移植

    在之前的文章中,我们讨论过ROM刷机原理,修改ROM包以及如何让ROM包获取root权限.那么接下来,我们谈谈MTK平台手机ROM移植的话题.如果你是ROM小白,那么建议可以先看看之前的文章. ROM ...

  4. MTK 平台修改或查看USB驱动能力有三种方法

    MTK 平台修改或查看USB驱动能力有三种方法:  1.工模菜单 通过"*#*#3646633#*#*"进入工程模式,通过如下菜单可以查看修改USB驱动能力: hardware t ...

  5. Android Camera (13)---MTK平台相机插值修改

    MTK平台相机插值修改 一.注意事项 二.HAL层修改 三.APP层修改 四.部分插值整理 五.快速编译指令 一.注意事项 Camera插值在底层已经做好,我们只需要在中间层和app层添加一个对应的p ...

  6. Android 系统(205)---MTK平台分区回读

    MTK平台分区回读 有时遇到各种开机卡死或重启问题,往往我们依靠分区回读的方法来验证是否为软件问题. 在MTK平台我们利用flash_tool工具来回读分区,简单归结为一下步骤. 1.首先选择Down ...

  7. Android 系统(159)----MTK 平台过CTA时,发生权限未明示问题

    MTK 平台过CTA时,发生权限未明示问题 Background:CTA是针对中国大陆地区的一个安全认证,目的是提高移动智能终端自身的安全防护能力,防范移动智能终端上的各种安全威胁,避免用户的利益受到 ...

  8. MTK 驱动(78)----MTK 平台查看eMMC和DDR的工作频率

    eMMC和DDR的工作clk确认 MTK 平台查看eMMC和DDR的工作频率 eMMC: adb shell cat /sys/kernel/debug/mmc0/clock DDR: adb she ...

  9. Android 系统(138 )---Mtk平台 Android 打包解包*.img ,修改system.img 参数

    Mtk平台 Android 打包解包*.img ,修改system.img 参数 MTK 升级包文件如下: 若存在软件版本号存在错误或需要修改,重新编译则需要几个小时,或者要几天的测试 若可以直接修改 ...

最新文章

  1. Photoshop图像处理操作汇总
  2. CTF---安全杂项入门第三题 这是捕获的黑客攻击数据包,Administrator用户的密码在此次攻击中泄露了,你能找到吗?...
  3. 【darknet速成】Darknet图像分类从模型自定义到测试
  4. 一步一步掌握设计模式一(最简单的开始--单例模式^_^)
  5. 阿里启动NASA计划创造新经济核心科技
  6. C++11 FAQ中文版:std::function 和 std::bind
  7. error: failed to push some refs to ‘......‘解决方案
  8. 53 年 IT 老兵详谈传统网络到互联网的演变史
  9. Android 属性动画Property Animation(中)
  10. 我想去做机器学习 接下来发一些机器学习实战的算法
  11. bootstrap select2 动态从后台Ajax动态获取数据
  12. 设置表格表头字体_Excel双栏和三栏斜线表头制作技巧
  13. 一幅图告诉你C-C++注释转换有多简单
  14. 贪心算法的数学证明 (更新中)
  15. 4月30日世界表白日_2020520世界表白日 你该怎么表白
  16. 【凯子哥带你学Framework】Activity启动过程全解析
  17. JSP——猜英文小写字母的Web小游戏
  18. 如何安装正版的Xmanager
  19. C语言求1000以内水仙花数
  20. 移动端测试——adb命令

热门文章

  1. 糗事百科 android源码,Android高仿糗事百科(含服务端)
  2. 电机与matlab突然,同步电机的三相突然短路的MATLAB计算
  3. MySQL缓冲池-Buffer Pull
  4. 全国计算机设计大赛音乐组作品,我校5部作品“中国大学生计算机设计大赛”获奖...
  5. python数据分析期末_Python数据分析期末作业
  6. 使用php创建WebSocket服务
  7. 怎么做好电商运营?40份电商运营表格模板,你离优秀的运营只差了一个表格
  8. 对php的感受100字_团建活动后的感想50字-100字《5篇》
  9. CSDN怎么转载他人博客
  10. php输出圆周率100位,JS计算圆周率到小数点后100位实现步骤详解