summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Shuzhen Wang <shuzhenwang@google.com> 2024-05-08 17:21:42 -0700
committer Shuzhen Wang <shuzhenwang@google.com> 2024-05-20 16:39:17 +0000
commitac0abc50cd70347f6bdd9afca10af89cb859aa09 (patch)
tree3f61ed82a8dc1a25aed5874bd56d57ba243c8691
parent32390515f77e8d03bfb7e817dd4d87666f0b1000 (diff)
Camera: Allow multi-resolution raw reprocessing
Test: Camera CTS Bug: 336922859 Change-Id: I47ab35700e27d37c8980a1199d66c3f3eb9bdc4f
-rw-r--r--core/java/android/hardware/camera2/impl/CameraDeviceImpl.java13
1 files changed, 11 insertions, 2 deletions
diff --git a/core/java/android/hardware/camera2/impl/CameraDeviceImpl.java b/core/java/android/hardware/camera2/impl/CameraDeviceImpl.java
index 81bb9ac33df2..7f04d6448ccd 100644
--- a/core/java/android/hardware/camera2/impl/CameraDeviceImpl.java
+++ b/core/java/android/hardware/camera2/impl/CameraDeviceImpl.java
@@ -1556,8 +1556,7 @@ public class CameraDeviceImpl extends CameraDevice
}
// Allow RAW formats, even when not advertised.
- if (inputFormat == ImageFormat.RAW_PRIVATE || inputFormat == ImageFormat.RAW10
- || inputFormat == ImageFormat.RAW12 || inputFormat == ImageFormat.RAW_SENSOR) {
+ if (isRawFormat(inputFormat)) {
return true;
}
@@ -1627,6 +1626,11 @@ public class CameraDeviceImpl extends CameraDevice
}
}
+ // Allow RAW formats, even when not advertised.
+ if (Flags.multiResRawReprocessing() && isRawFormat(inputFormat)) {
+ return;
+ }
+
if (validFormat == false) {
throw new IllegalArgumentException("multi-resolution input format " +
inputFormat + " is not valid");
@@ -2569,6 +2573,11 @@ public class CameraDeviceImpl extends CameraDevice
return mCharacteristics;
}
+ private boolean isRawFormat(int format) {
+ return (format == ImageFormat.RAW_PRIVATE || format == ImageFormat.RAW10
+ || format == ImageFormat.RAW12 || format == ImageFormat.RAW_SENSOR);
+ }
+
/**
* Listener for binder death.
*