Android13 相机CTS测试与问题分析(三)

5.5 android.hardware.cts.CameraGLTest#testCameraToSurfaceTextureMetadata

 

Log:

java.lang.AssertionError: Too many frame intervals out of frame rate bounds: 14, limit 4

源码:

cts/tests/camera/src/android/hardware/cts/CameraGLTest.java

 -》测试原理:对平台支持的Preview Size列表 + FpsRange进行测试,查看是否满足条件

前后摄每个Preview size需要测试100帧,

camera id=0, Threshold=100/25=4  //后摄超过4帧不满足条件则fail;

camera id=1, Threshold=100/10=10  //前摄超过10帧不满足条件则fail;    

分析:

有14帧时间戳不符合要求,可能和系统流畅性有关。

使用user版本、关闭camera所有log  -》复测fail

强制设置fps挡位只有(15,30) 这一档  -》复测fail

同步提Case给高通:

Width>1920,height>1080时固定fps=24 -》复测Pass;

解决:

--- a/vendor/qcom/proprietary/camx/src/core/camxhwenvironment.cpp
+++ b/vendor/qcom/proprietary/camx/src/core/camxhwenvironment.cpp
@@ -1617,10 +1617,15 @@ VOID HwEnvironment::InitializeScalerStaticCaps()
 
                         supportedFPS = ClosestMaxFps(supportedFPS, sensorIndex);
 
-                        CAMX_LOG_VERBOSE(CamxLogGroupHWL, "supportedFPS = %d BPS = %d,",
-                                         "IPE/OPE = %d for width x height = %d x %d",
+                        CAMX_LOG_VERBOSE(CamxLogGroupHWL, "debug111 supportedFPS = %d BPS = %d,IPE/OPE = %d for width x height = %d x %d\n",
                                          supportedFPS, maxBPSProcessingFPS, maxPostProcProcessingFPS, width, height);
 
+            if((width > 1920 || height > 1080) && (supportedFPS > 24)){
+                supportedFPS = 24;
+                CAMX_LOG_VERBOSE(CamxLogGroupHWL, "debug1112 %s %d supportedFPS=%d\n",__func__,__LINE__,supportedFPS);
+            }
+
+
                         SetAvailableMinFrameDuration(&(m_caps[sensorIndex].minFrameDurations[numMinFrameDurations]),
                                                      pPlatformCaps->scalerFormats[format],
                                                      width,

复测:Pass

5.6 android.hardware.camera2.cts.StillCaptureTest#testFullRawCapture[1]

      android.hardware.camera2.cts.StillCaptureTest#testFullRawZSLCapture[1]

Log:

java.lang.Exception: There were 4 errors:

java.lang.Throwable(Test failed for camera 1: NoiseProfile coefficients Pair{0.0 0.0} must have: S > 0, O >= 0)

java.lang.Throwable(Test failed for camera 1: NoiseProfile coefficients Pair{0.0 0.0} must have: S > 0, O >= 0)

java.lang.Throwable(Test failed for camera 1: NoiseProfile coefficients Pair{0.0 0.0} must have: S > 0, O >= 0)

java.lang.Throwable(Test failed for camera 1: NoiseProfile coefficients Pair{0.0 0.0} must have: S > 0, O >= 0)

源码:

cts/tests/camera/src/android/hardware/camera2/cts/StillCaptureTest.java

 -》上面4个NoiseProfile属性需要>0

分析:

怀疑时noiseCofficent配置0导致

-》检测驱动vendor/qcom/proprietary/chi-cdk/oem/qcom/sensor/s5k4h7/s5k4h7_sensor.xml

无属性:noiseCofficent 即默认为0

-》对比后摄驱动有这4个属性,copy至前摄

解决:

--- a/vendor/qcom/proprietary/chi-cdk/oem/qcom/sensor/s5k4h7/s5k4h7_sensor.xml
+++ b/vendor/qcom/proprietary/chi-cdk/oem/qcom/sensor/s5k4h7/s5k4h7_sensor.xml
@@ -1140,4 +1140,10 @@
         <sensingMethod>ONE_CHIP_COLOR_AREA</sensingMethod>
         <ADCReadoutTime>0</ADCReadoutTime>
     </sensorProperty>
+        <noiseCoefficent>
+        <gradient_S>1.504952e-06</gradient_S>
+        <offset_S>1.444901e-05</offset_S>
+        <gradient_O>6.742849e-12</gradient_O>
+        <offset_O>6.392815e-07</offset_O>
+    </noiseCoefficent>
 </sensorDriverData>

5.7 android.hardware.camera2.cts.CameraDeviceTest#testCameraDeviceStillTemplate[1]

       android.hardware.camera2.cts.StaticMetadataTest#testCapabilities[1]

       android.hardware.camera2.cts.StaticMetadataTest#testHwSupportedLevel[1]

log:

java.lang.Throwable

(Test failed for camera 0: Test failed for camera 0: Key android.statistics.lensShadingMapMode value 1 doesn't match the expected value 0 Expected: <0> but: was <1>)

java.lang.Throwable

(Test failed for camera 1: Test failed for camera 1: Key android.statistics.lensShadingMapMode value 1 doesn't match the expected value 0 Expected: <0> but: was <1>)

java.lang.Throwable

(Test failed for camera 0: Camera 0 doesn't list capability REQUEST_AVAILABLE_CAPABILITIES_RAW but contain all required keys and RAW format output)

java.lang.Throwable

(Test failed for camera 1: Camera 1 doesn't list capability REQUEST_AVAILABLE_CAPABILITIES_RAW but contain all required keys and RAW format output)

->Log显示camera0,camera1没有REQUEST_AVAILABLE_CAPABILITIES_RAW,但是支持raw图

源码:

cts/tests/camera/utils/src/android/hardware/camera2/cts/helpers/CameraErrorCollector.java

cts/tests/camera/src/android/hardware/camera2/cts/CameraDeviceTest.java

 通过android.statistics.lensShadingMapMode查找定位

request.availableCapabilities:REQUEST_AVAIABLE_CAPABILITIES_RAW 不支持导致;

分析:adb shell dumpsys media.camera

android.request.availableCapabilities (c000c): byte[7]

[BACKWARD_COMPATIBLE YUV_REPROCESSING PRIVATE_REPROCESSING READ_SENSOR_SETTINGS MANUAL_SENSOR BURST_CAPTURE MANUAL_POST_PROCESSING ]

//使用上个pass版本

android.request.availableCapabilities (c000c): byte[8]

[BACKWARD_COMPATIBLE RAW YUV_REPROCESSING PRIVATE_REPROCESSING READ_SENSOR_SETTINGS MANUAL_SENSOR BURST_CAPTURE MANUAL_POST_PROCESSING ]

-》2个版本差异是fail版本中不支持RAW功能

-》查看提交确认和camera raw提交有关的:

adb shell "echo enableRAWProcessing=FALSE >> /vendor/etc/camera/camxoverridesettings.txt"

-》设置TRUE手动复测Pass

解决:

--- a/vendor/qcom/proprietary/camx/src/settings/common/camxsettings.xml
+++ b/vendor/qcom/proprietary/camx/src/settings/common/camxsettings.xml
@@ -433,7 +433,7 @@
             <VariableName>enableRAWProcessing</VariableName>
             <VariableType>BOOL</VariableType>
             <SetpropKey>persist.vendor.camera.enableRAWProcessing</SetpropKey>
-            <DefaultValue>FALSE</DefaultValue>
+            <DefaultValue>TRUE</DefaultValue>
             <Dynamic>FALSE</Dynamic>
             <Public>TRUE</Public>
         </setting>
diff --git a/vendor/qcom/proprietary/camx/src/settings/g_camxsettings.xml b/vendor/qcom/proprietary/camx/src/settings/g_camxsettings.xml
index e39c3a12ff..642b8425f2 100755
--- a/vendor/qcom/proprietary/camx/src/settings/g_camxsettings.xml
+++ b/vendor/qcom/proprietary/camx/src/settings/g_camxsettings.xml
@@ -395,7 +395,7 @@
             <VariableName>enableRAWProcessing</VariableName>
             <VariableType>BOOL</VariableType>
             <SetpropKey>persist.vendor.camera.enableRAWProcessing</SetpropKey>
-            <DefaultValue>FALSE</DefaultValue>
+            <DefaultValue>TRUE</DefaultValue>
             <Dynamic>FALSE</Dynamic>
             <Public>TRUE</Public>
         </setting>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值