Expose missing camera characteristics.
These keys are documented as present for every camera and are causing
camera CTS failures.
Bug: 301023410
Bug: 322965201
Test: adb shell cmd virtual_camera enable_test_camera && atest BustCaptureTest
Test: atest virtual_camera_tests
Test: atest CtsVirtualCameraTestCases
Change-Id: I6d67f94b69eb9c1af2bf288156891b8a952092af
diff --git a/services/camera/virtualcamera/VirtualCameraDevice.cc b/services/camera/virtualcamera/VirtualCameraDevice.cc
index 768dffb..55d4c69 100644
--- a/services/camera/virtualcamera/VirtualCameraDevice.cc
+++ b/services/camera/virtualcamera/VirtualCameraDevice.cc
@@ -156,6 +156,8 @@
.setAvailableMaxDigitalZoom(1.0)
.setControlAvailableModes({ANDROID_CONTROL_MODE_AUTO})
.setControlAfAvailableModes({ANDROID_CONTROL_AF_MODE_OFF})
+ .setControlAvailableSceneModes({ANDROID_CONTROL_SCENE_MODE_DISABLED})
+ .setControlAvailableEffects({ANDROID_CONTROL_EFFECT_MODE_OFF})
.setControlAeAvailableFpsRange(10, 30)
.setControlMaxRegions(0, 0, 0)
.setControlAfRegions({kDefaultEmptyControlRegion})
@@ -163,8 +165,13 @@
.setControlAwbRegions({kDefaultEmptyControlRegion})
.setControlAeCompensationRange(0, 1)
.setControlAeCompensationStep(camera_metadata_rational_t{0, 1})
+ .setControlAwbLockAvailable(false)
+ .setControlAeLockAvailable(false)
+ .setControlAvailableAwbModes({ANDROID_CONTROL_AWB_MODE_AUTO})
.setControlZoomRatioRange(/*min=*/1.0, /*max=*/1.0)
.setMaxJpegSize(kMaxJpegSize)
+ .setSyncMaxLatency(ANDROID_SYNC_MAX_LATENCY_UNKNOWN)
+ .setAvailableRequestKeys({})
.setAvailableRequestKeys({ANDROID_CONTROL_AF_MODE})
.setAvailableResultKeys({ANDROID_CONTROL_AF_MODE})
.setAvailableCapabilities(