Adjust graphics dataspace references to new standard
Bug: 27344373
Change-Id: I0ad67868894b01948d40336812d836ee2f3bcfdb
diff --git a/core/java/android/hardware/camera2/params/StreamConfigurationMap.java b/core/java/android/hardware/camera2/params/StreamConfigurationMap.java
index 6cc7fec..dfa19b0 100644
--- a/core/java/android/hardware/camera2/params/StreamConfigurationMap.java
+++ b/core/java/android/hardware/camera2/params/StreamConfigurationMap.java
@@ -1196,7 +1196,7 @@
*
* <p>In particular these formats are converted:
* <ul>
- * <li>ImageFormat.JPEG => HAL_DATASPACE_JFIF
+ * <li>ImageFormat.JPEG => HAL_DATASPACE_V0_JFIF
* <li>ImageFormat.DEPTH_POINT_CLOUD => HAL_DATASPACE_DEPTH
* <li>ImageFormat.DEPTH16 => HAL_DATASPACE_DEPTH
* <li>others => HAL_DATASPACE_UNKNOWN
@@ -1223,7 +1223,7 @@
static int imageFormatToDataspace(int format) {
switch (format) {
case ImageFormat.JPEG:
- return HAL_DATASPACE_JFIF;
+ return HAL_DATASPACE_V0_JFIF;
case ImageFormat.DEPTH_POINT_CLOUD:
case ImageFormat.DEPTH16:
return HAL_DATASPACE_DEPTH;
@@ -1633,8 +1633,16 @@
private static final int HAL_PIXEL_FORMAT_Y16 = 0x20363159;
+ private static final int HAL_DATASPACE_STANDARD_SHIFT = 16;
+ private static final int HAL_DATASPACE_TRANSFER_SHIFT = 22;
+ private static final int HAL_DATASPACE_RANGE_SHIFT = 27;
+
private static final int HAL_DATASPACE_UNKNOWN = 0x0;
- private static final int HAL_DATASPACE_JFIF = 0x101;
+ private static final int HAL_DATASPACE_V0_JFIF =
+ (2 << HAL_DATASPACE_STANDARD_SHIFT) |
+ (3 << HAL_DATASPACE_TRANSFER_SHIFT) |
+ (1 << HAL_DATASPACE_RANGE_SHIFT);
+
private static final int HAL_DATASPACE_DEPTH = 0x1000;
private static final long DURATION_20FPS_NS = 50000000L;
diff --git a/core/jni/android_view_Surface.cpp b/core/jni/android_view_Surface.cpp
index b7701d6..14252dc 100644
--- a/core/jni/android_view_Surface.cpp
+++ b/core/jni/android_view_Surface.cpp
@@ -144,7 +144,7 @@
PublicFormat f) {
switch(f) {
case PublicFormat::JPEG:
- return HAL_DATASPACE_JFIF;
+ return HAL_DATASPACE_V0_JFIF;
case PublicFormat::DEPTH_POINT_CLOUD:
case PublicFormat::DEPTH16:
return HAL_DATASPACE_DEPTH;
@@ -156,7 +156,7 @@
case PublicFormat::YUV_420_888:
case PublicFormat::NV21:
case PublicFormat::YV12:
- return HAL_DATASPACE_JFIF;
+ return HAL_DATASPACE_V0_JFIF;
default:
// Most formats map to UNKNOWN
return HAL_DATASPACE_UNKNOWN;
@@ -210,7 +210,7 @@
switch (dataSpace) {
case HAL_DATASPACE_DEPTH:
return PublicFormat::DEPTH_POINT_CLOUD;
- case HAL_DATASPACE_JFIF:
+ case HAL_DATASPACE_V0_JFIF:
return PublicFormat::JPEG;
default:
// Assume otherwise-marked blobs are also JPEG