## 2. 排除1后, 要查EE 在mode0, 1, 2, 3开启状态. 默认0 关闭, 其他开启.
assert(sharpness_regular[2] > sharpness_regular[0])
中
1 |
prepareHw_PerFrame_EE(constRAWIspCamInfo& rIspCamInfo) |
这个函数.
2.2 开启m_bDebugEnable 设置为1, 确保上面的log有打印; // 0: enable, 1: disable后抓log 排查fail时是否走到了
1 2 |
3165 CAM_LOGD_IF(m_bDebugEnable, "[%s] fgRPGEnable(%d), level %d mode %d", __FUNCTION__, 3166 fgRPGEnable, rIspCamInfo.rIspUsrSelectLevel.eIdx_Edge, rIspCamInfo.eEdgeMode); |
2.3 <可选项> 在如下3174打log确认是否有走到这段code.
1 2 3 4 5 6 7 |
3168 //EE3169 if ((bDisable) || (!rSeee.isCCTEEEnable()) || 3170 (rIspCamInfo.eEdgeMode == MTK_EDGE_MODE_OFF) || 3171 ((rIspCamInfo.eEdgeMode == MTK_EDGE_MODE_ZERO_SHUTTER_LAG)&&(!fgRPGEnable))|| 3172 (!(m_pFeatureCtrl[rIspCamInfo.eIspProfile] & M_EE_EN)) ) 3173 { 3174 rSeee.setEEEnable(MFALSE); 3175 } |
2.4 从对应mail log找到上述mode2和mode0 过程. 结合上述2.2 2.3 的code分析推测<若您在2.3 3173 打log了, 那就不用推测了>,正常应该是mode0 走到2.3的code, 但mode2 不该走到2.3的code.
36183 01-02 12:41:51.899728 31562 1902 D paramctrl_per_frame: [prepareHw_PerFrame_EE] fgRPGEnable(1), level 0 mode 0
181393 01-02 12:42:14.711005 31562 31562 I mtkcam-PipelineModelSession: [submitRequest] <4Cell/1> requestNo:550 { repeating:0 control.aeTargetFpsRange:5,30 control.captureIntent:6 control.enableZsl:0 control.mode:0 control.sceneMode:0 control.videoStabilizationMode:0 edge.mode:1 }
182020 01-02 12:42:14.727738 31562 2870 D paramctrl_per_frame: [prepareHw_PerFrame_EE] fgRPGEnable(1), level 0 mode 1
208454 01-02 12:42:18.424990 31562 31639 I mtkcam-PipelineModelSession: [submitRequest] <4Cell/1> requestNo:560 { repeating:0 control.aeTargetFpsRange:5,30 control.captureIntent:6 control.enableZsl:0 control.mode:0 control.sceneMode:0 control.videoStabilizationMode:0 edge.mode:2 }
213352 01-02 12:42:18.685493 31562 3203 D paramctrl_per_frame: [prepareHw_PerFrame_EE] fgRPGEnable(0), level 1 mode 2
26010 01-02 12:42:48.827038 31562 31667 I mtkcam-PipelineModelSession: [submitRequest] <4Cell/1> requestNo:959 { repeating:0 control.aeTargetFpsRange:5,30 control.captureIntent:6 control.enableZsl:0 control.mode:0 control.sceneMode:0 control.videoStabilizationMode:0 edge.mode:3 }
26642 01-02 12:42:48.844840 31562 4315 D paramctrl_per_frame: [prepareHw_PerFrame_EE] fgRPGEnable(1), level 0 mode 3
256050 01-02 12:43:03.746830 4896 4896 I ItsTestHost: FAIL scene3/test_edge_enhancement [95.9s]
2.4 若符合2.4 正常预期. mode0 关闭. mode2 开启. 比如上述2.3的log中就是正常的.
1 2 3 4 |
667 prepareHw_PerFrame_NR1() 668 { 669 670 MBOOLbDisable = propertyGet("vendor.isp.nr1.disable", 0); |
Mode2 时, 这里下拍照的request, 说明要抓R 196 这张.
114778 01-01 10:29:00.682226 11605 12185 I mtkcam-PipelineModelSession: [submitRequest] <4Cell/1> requestNo:196 { repeating:0 control.aeTargetFpsRange:5,30 control.captureIntent:6 control.enableZsl:0 control.mode:0 control.sceneMode:0 control.videoStabilizationMode:0 edge.mode:2 }
R193 吐出了, 丢.
115525 01-01 10:29:00.711225 11605 12767 D HwIRQ3A : [wait] VSIrq
116125 01-01 10:29:00.727478 11605 13382 D MtkCam/P1NodeImp: [hardwareOps_deque] [Cam::1] mpCamIO->deque ---
116235 01-01 10:29:00.729816 11605 13382 I MtkCam/P1NodeImp: [releaseAction] [Cam::1 R60 S60 E60 D58 O57 #1] [P1::DEQ][Num Q:58 M:58 F:56 R:193 @58][Type:1 Out:x15 Rec:x0 Raw:1 Cap:0 Exe:3 Flush:x0] job(0/1) IMG(pure) RRZ0(0-0-2320x1744)(0-0-640x496)(640x496) T-ns(EXP: 9998000)(Src:1)(SOF: m_848142482000 b_848142468000)(SS: 848132470000) Q(SensorTs:848134970000) [MetaInAPP_0](0x80000000)<N:x0><U:xc> [MetaInHAL_1](0x10000000d)<N:x0><U:xc> [MetaOutAPP_2](0x100000015)<W:x2><U:xc> [MetaOutHAL_3](0x10000000f)<W:x2><U:xc> [ImgOutIMG_4](0x100000001)<W:x2><U:xc> [ImgOutRRZ_6](0x100000002)<W:x2><U:xc> [ImgOutLCS_7](0x100000003)<W:x2><U:xc> [MetaCnt] In(66,6) Out(105,33) Aaa(102,19) Aaa-Isp(102,19) [ApplyRelease] [Last-Frame-Num(55_10:29:00.696226@13382) 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 ... ]
R194 丢.
117376 01-01 10:29:00.761251 11605 13382 D MtkCam/P1NodeImp: [hardwareOps_deque] [Cam::1] mpCamIO->deque ---
117476 01-01 10:29:00.763610 11605 13382 I MtkCam/P1NodeImp: [releaseAction] [Cam::1 R61 S61 E61 D59 O58 #1] [P1::DEQ][Num Q:59 M:59 F:57 R:194 @59][Type:1 Out:x15 Rec:x0 Raw:1 Cap:0 Exe:3 Flush:x0] job(0/1) IMG(pure) RRZ0(0-0-2320x1744)(0-0-640x496)(640x496) T-ns(EXP: 9998000)(Src:1)(SOF: m_848176265000 b_848176251000)(SS: 848166253000) Q(SensorTs:848168753000) [MetaInAPP_0](0x80000000)<N:x0><U:xc> [MetaInHAL_1](0x10000000d)<N:x0><U:xc> [MetaOutAPP_2](0x100000015)<W:x2><U:xc> [MetaOutHAL_3](0x10000000f)<W:x2><U:xc> [ImgOutIMG_4](0x100000001)<W:x2><U:xc> [ImgOutRRZ_6](0x100000002)<W:x2><U:xc> [ImgOutLCS_7](0x100000003)<W:x2><U:xc> [MetaCnt] In(66,6) Out(105,33) Aaa(102,19) Aaa-Isp(102,19) [ApplyRelease] [Last-Frame-Num(56_10:29:00.730042@13382) 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 ... ]
R195 丢.
117954 01-01 10:29:00.778768 11605 12767 D HwIRQ3A : [wait] VSIrq
118187 01-01 10:29:00.781682 11605 12767 D paramctrl_validate: eIspProfile = 0, eSensorMode = 0, eIdx_Scene = 0, eIdx_ISO = 1 , eIdx_Zoom = 0, eIdx_Zoom_U = 0, eIdx_Zoom_L = 0
118189 01-01 10:29:00.781707 11605 12767 D isp_tuning_idx: [IndexMgr][dump] DBS:1, OBC:0, BPC:1, NR1:1, PDC:1, RNR:1, UDM:1, ANR:1, ANR2:1, CCR:1, HFG:1, EE:1, MFB:0, MIX3:0
118545 01-01 10:29:00.795013 11605 13382 D MtkCam/P1NodeImp: [hardwareOps_deque] [Cam::1] mpCamIO->deque ---
118648 01-01 10:29:00.797543 11605 13382 I MtkCam/P1NodeImp: [releaseAction] [Cam::1 R62 S62 E62 D60 O59 #1] [P1::DEQ][Num Q:60 M:60 F:58 R:195 @60][Type:1 Out:x15 Rec:x0 Raw:1 Cap:0 Exe:3 Flush:x0] job(0/1) IMG(pure) RRZ0(0-0-2320x1744)(0-0-640x496)(640x496) T-ns(EXP: 9998000)(Src:1)(SOF: m_848210049000 b_848210035000)(SS: 848200037000) Q(SensorTs:848202537000) [MetaInAPP_0](0x80000000)<N:x0><U:xc> [MetaInHAL_1](0x10000000d)<N:x0><U:xc> [MetaOutAPP_2](0x100000015)<W:x2><U:xc> [MetaOutHAL_3](0x10000000f)<W:x2><U:xc> [ImgOutIMG_4](0x100000001)<W:x2><U:xc> [ImgOutRRZ_6](0x100000002)<W:x2><U:xc> [ImgOutLCS_7](0x100000003)<W:x2><U:xc> [MetaCnt] In(66,6) Out(103,33) Aaa(100,19) Aaa-Isp(100,19) [ApplyRelease] [Last-Frame-Num(57_10:29:00.763817@13382) 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 ... ]
R196 拿出.
注意这里P1 P2的isp 参数是独立不一样的.
=è P2 的RISPCamINFO 参数, RNR用401, EE 用401, NR1用401
118786 01-01 10:29:00.804198 11605 13443 D paramctrl_validate: [validatePerFrameP2] i4FrameID = 60
118789 01-01 10:29:00.804251 11605 13443 D paramctrl_validate: [BEFORE][evaluate_nvram_index], eIspProfile(2)
118791 01-01 10:29:00.804263 11605 13443 D isp_tuning_idx: [IndexMgr][dump] DBS:401, OBC:80, BPC:401, NR1:401, PDC:401, RNR:401, UDM:401, ANR:401, ANR2:401, CCR:1, HFG:401, EE:401, MFB:0, MIX3:0
119081 01-01 10:29:00.807536 11605 13443 D paramctrl_validate: getISPIndex_byISOIdx[AFTER][evaluate_nvram_index] ISO idx(0)
119082 01-01 10:29:00.807546 11605 13443 D isp_tuning_idx: [IndexMgr][dump] DBS:400, OBC:80, BPC:400, NR1:400, PDC:400, RNR:400, UDM:400, ANR:400, ANR2:400, CCR:0, HFG:400, EE:400, MFB:0, MIX3:0
- P1的mISPINFO 参数
119136 01-01 10:29:00.812553 11605 12767 D HwIRQ3A : [wait] VSIrq
119360 01-01 10:29:00.815259 11605 12767 D paramctrl_validate: [validatePerFrame] i4FrameID(63), keep(0)
119362 01-01 10:29:00.815275 11605 12767 D paramctrl_validate: [validatePerFrame](ParamChangeCount, fgForce)=(0, 1)
119365 01-01 10:29:00.815301 11605 12767 D paramctrl_validate: eIspProfile = 0, eSensorMode = 0, eIdx_Scene = 0, eIdx_ISO = 1 , eIdx_Zoom = 0, eIdx_Zoom_U = 0, eIdx_Zoom_L = 0
119366 01-01 10:29:00.815316 11605 12767 D paramctrl_validate: [BEFORE][evaluate_nvram_index]
119367 01-01 10:29:00.815325 11605 12767 D isp_tuning_idx: [IndexMgr][dump] DBS:1, OBC:0, BPC:1, NR1:1, PDC:1, RNR:1, UDM:1, ANR:1, ANR2:1, CCR:1, HFG:1, EE:1, MFB:0, MIX3:0
119799 01-01 10:29:00.828970 11605 13382 D MtkCam/P1NodeImp: [hardwareOps_deque] [Cam::1] mpCamIO->deque ---
119902 01-01 10:29:00.831672 11605 13382 I MtkCam/P1NodeImp: [releaseAction] [Cam::1 R63 S63 E63 D61 O60 #1] [P1::DEQ][Num Q:61 M:61 F:59 R:196 @61][Type:1 Out:x15 Rec:x0 Raw:1 Cap:0 Exe:3 Flush:x0] job(0/1) IMG(pure) RRZ0(0-0-2320x1744)(0-0-640x496)(640x496) T-ns(EXP: 9998000)(Src:1)(SOF: m_848243832000 b_848243818000)(SS: 848233820000) Q(SensorTs:848236320000) [MetaInAPP_0](0x80000000)<N:x0><U:xc> [MetaInHAL_1](0x10000000d)<N:x0><U:xc> [MetaOutAPP_2](0x100000015)<W:x2><U:xc> [MetaOutHAL_3](0x10000000f)<W:x2><U:xc> [ImgOutIMG_4](0x100000001)<W:x2><U:xc> [ImgOutRRZ_6](0x100000002)<W:x2><U:xc> [ImgOutLCS_7](0x100000003)<W:x2><U:xc> [MetaCnt] In(66,6) Out(103,33) Aaa(100,19) Aaa-Isp(100,19) [ApplyRelease] [Last-Frame-Num(58_10:29:00.797746@13382) 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 ... ]
Mode0 时, pass2 用的参数是: DBS:1, OBC:0, BPC:1, NR1:1, PDC:1, RNR:1, UDM:1, ANR:1, ANR2:1, CCR:1, HFG:1, EE:1, MFB:0, MIX3:0
149779 01-01 10:28:45.721479 11605 12185 I mtkcam-PipelineModelSession: [submitRequest] <4Cell/1> requestNo:1 { repeating:0 control.aeTargetFpsRange:5,30 control.captureIntent:6 control.enableZsl:0 control.mode:0 control.sceneMode:0 control.videoStabilizationMode:0 edge.mode:0 }
153319 01-01 10:28:45.939149 11605 13029 I MtkCam/P1NodeImp: [releaseAction] [Cam::1 R4 S4 E4 D2 O1 #1] [P1::DEQ][Num Q:2 M:2 F:0 R:1 @2][Type:1 Out:x85 Rec:x0 Raw:1 Cap:0 Exe:3 Flush:x0] job(0/1) IMG(pure) RRZ0(0-0-2320x1744)(0-0-640x496)(640x496) T-ns(EXP: 9998000)(Src:1)(SOF: m_833349056000 b_833349036000)(SS: 833339038000) Q(SensorTs:833341538000) [MetaInAPP_0](0x80000000)<N:x0><U:xc> [MetaInHAL_1](0x10000000d)<N:x0><U:xc> [MetaOutAPP_2](0x100000015)<W:x2><U:xc> [MetaOutHAL_3](0x10000000f)<W:x2><U:xc> [ImgOutRRZ_6](0x100000002)<W:x2><U:xc> [ImgOutLCS_7](0x100000003)<W:x2><U:xc> [MetaCnt] In(66,8) Out(103,35) Aaa(100,21) Aaa-Isp(100,21) [ApplyRelease] [Last-Frame-Num(-1_08:00:00.000000@00000) ... ]
153390 01-01 10:28:45.944503 11605 13080 D paramctrl_validate: [validatePerFrameP2] i4FrameID = 2
153406 01-01 10:28:45.945084 11605 13080 D isp_tuning_idx: [IndexMgr][dump] DBS:1, OBC:0, BPC:1, NR1:1, PDC:1, RNR:1, UDM:1, ANR:1, ANR2:1, CCR:1, HFG:1, EE:1, MFB:0, MIX3:0
对比Mode0 mode2 的参数看:
影响edge效果的参数:UDM, NR1, RNR, EE都不一样. 故要把这些参数都对比调整. 比如说把mode2的EE加强, NR1, RNR减弱.UDM里面的NR EE RNR也做同样的修改.
而客户的diff看, EE没有动, 但RNR, ANR, UDM都有修改.
故后面有这种问题,可以要求客户把所有的RNR, ANR, UDM, NR1 都用一样的值.或者关闭. 单纯把EE mode2 那组index 调的比mode0 的强, 这样应该可以测试pass.
<--CTG_SUPPORT_MAIL_END-->
===================================================================
====================================================================
1 2 3 4 5 6 7 |
871 // MTK_EDGE_MODE 872 typedef enum mtk_camera_metadata_enum_android_edge_mode { 873 MTK_EDGE_MODE_OFF, 874 MTK_EDGE_MODE_FAST, 875 MTK_EDGE_MODE_HIGH_QUALITY, 876 MTK_EDGE_MODE_ZERO_SHUTTER_LAG, 877 } mtk_camera_metadata_enum_android_edge_mode_t; |