GMS 关于Camera相关项测试问题汇总

android 5.1    6.0  测试命令:

run cts --package android.camera   

android  7.0测试命令:

run cts -m android.camera


更改kernel-3.18下面的文件

kernel-3.18\drivers\misc\mediatek\imgsensor\src\mt6580\

hal 文件地址:
vendor\mediatek\proprietary\custom\mt6580\hal\sendepfeature\


其他原则(这个为最先看的):

1  最大的Picture Size的宽和高需要大于所有的Preview Size的相应宽和高;

2  Preview Size中必须包含至少一个Video Size值,否则mediaserver初始化会失败;

3  Picture Size请按照16对齐来添加: 1920x1080这种近似16对齐的size在cts 6.0 R2也可以了;  除16得整

4  Preview Size最大请不要超过1080P;   =1920.1080

5  最大的Picture Size和最大Preview Size请用同样的ratio.

6."640x480", 30w的最低配置

能解决“java.lang.illegalArgumentException”的问题


摄像头:Sub camera (前置摄像头)gc0310   30w

               Main camera (主摄像头)gc2355    200w  ===  camera 0主摄像头(后摄)


话不多说下面我来几个常见的Fail:

--testBasicRecording

1.此处,Preview Size的最大值不同,需要添加的Preview Size项可能不同。Google在此处的行为有点稍显奇怪. 最好把Video Size中所有可能支持的Preview Size都加进来。

2.遇到的error项:Frame rate range [20,20]

这里是加在

#if 1

//  Preview Frame Rate Range

FTABLE_CONFIG_AS_TYPE_OF_USER(

KEY_AS_(MtkCameraParameters::KEY_PREVIEW_FPS_RANGE),

SCENE_AS_DEFAULT_SCENE(

ITEM_AS_DEFAULT_("30000,30000"),

ITEM_AS_USER_LIST_(

"(15000,15000)",

"(20000,20000)",//trz add 

"(24000,24000)",

"(30000,30000)",

)

),

)

#endif


--testAllocationFromCameraFlexibleYuv

log:

Legacy-CameraDevice-JNI: produceFrame: Dimens 1872 x 1123 are not divisible by 2.

原因:配置的preview size不能被2整除

solution:修改preview size,宽,高都不能为奇数

log:

AndroidRuntime: java.lang.IllegalArgumentException: previewSize must not be wider than activeArray

原因:配置的picture size最大值小于preview size最大值

solution:重新配置picture size和preview size,保证picture size最大值不小于preview size最大值


--testCameraDevicePreviewTemplate

log:

Test failed for camera 1: Test failed for camera 1: Key android.control.aeAntibandingMode value 3 isn't one of the expected values [1, 2] Expected: in(<[1, 2]>)

log:

java.lang.Exception: Test failed for camera 1: Test failed for camera 1: Key android.control.afMode value 1 doesn't match the expected value 4 Expected: <4>

原因:如果摄像头不支援对焦。需要配置focus mode为fixed,并且max-num-focus-areas需要为0.

Solution:

1)参考FAQ13421配置focus mode为fixed

//  Anti-banding (Flicker)

FTABLE_CONFIG_AS_TYPE_OF_DEFAULT_VALUES(

KEY_AS_(MtkCameraParameters::KEY_ANTIBANDING),

SCENE_AS_DEFAULT_SCENE(

ITEM_AS_DEFAULT_(MtkCameraParameters::ANTIBANDING_OFF),

ITEM_AS_VALUES_(

MtkCameraParameters::ANTIBANDING_OFF,

MtkCameraParameters::ANTIBANDING_50HZ,

MtkCameraParameters::ANTIBANDING_60HZ,

MtkCameraParameters::ANTIBANDING_AUTO,//trz add 

)

),

)

2)projectconfig.mk中配置为dummy lens。

3)af_mgr.cpp文件中,getAFMaxNum()方法中的if(m_i4EnableAF==-1)注释



android.hardware.camera2.cts.CameraManagerTest

--testAeModeAndLock

--testFlashControl

GMS 关于Camera相关项测试问题汇总_第1张图片


你可能感兴趣的:(GMS 关于Camera相关项测试问题汇总)