summaryrefslogtreecommitdiffstats
path: root/media/java
diff options
context:
space:
mode:
authorRuben Brunk <rubenbrunk@google.com>2014-09-23 23:35:43 -0700
committerRuben Brunk <rubenbrunk@google.com>2014-09-24 10:43:12 -0700
commit0fd198ad89ec9c600bb1761b10d938146c28bb98 (patch)
tree413982c700e2e5c76df3800ebdb8ec2ddc17a9bb /media/java
parent54fee6862871170e2db0d02262a4724b7dad1485 (diff)
downloadframeworks_base-0fd198ad89ec9c600bb1761b10d938146c28bb98.zip
frameworks_base-0fd198ad89ec9c600bb1761b10d938146c28bb98.tar.gz
frameworks_base-0fd198ad89ec9c600bb1761b10d938146c28bb98.tar.bz2
camera2: Hide JPEGs in RGBA gralloc buffers.
Bug: 17379185 - WAR for SW Write usage flags being unavailable on certain devices for JPEG (blob) format buffers. Change-Id: Ic7299785b743f35dd47264b9d1cea01a88b71d91
Diffstat (limited to 'media/java')
-rw-r--r--media/java/android/media/ImageReader.java9
1 files changed, 5 insertions, 4 deletions
diff --git a/media/java/android/media/ImageReader.java b/media/java/android/media/ImageReader.java
index b786f94..b541454 100644
--- a/media/java/android/media/ImageReader.java
+++ b/media/java/android/media/ImageReader.java
@@ -642,7 +642,7 @@ public class ImageReader implements AutoCloseable {
private void createSurfacePlanes() {
mPlanes = new SurfacePlane[ImageReader.this.mNumPlanes];
for (int i = 0; i < ImageReader.this.mNumPlanes; i++) {
- mPlanes[i] = nativeCreatePlane(i);
+ mPlanes[i] = nativeCreatePlane(i, ImageReader.this.mFormat);
}
}
private class SurfacePlane extends android.media.Image.Plane {
@@ -661,7 +661,8 @@ public class ImageReader implements AutoCloseable {
if (mBuffer != null) {
return mBuffer;
} else {
- mBuffer = SurfaceImage.this.nativeImageGetBuffer(mIndex);
+ mBuffer = SurfaceImage.this.nativeImageGetBuffer(mIndex,
+ ImageReader.this.mFormat);
// Set the byteBuffer order according to host endianness (native order),
// otherwise, the byteBuffer order defaults to ByteOrder.BIG_ENDIAN.
return mBuffer.order(ByteOrder.nativeOrder());
@@ -711,8 +712,8 @@ public class ImageReader implements AutoCloseable {
private SurfacePlane[] mPlanes;
private boolean mIsImageValid;
- private synchronized native ByteBuffer nativeImageGetBuffer(int idx);
- private synchronized native SurfacePlane nativeCreatePlane(int idx);
+ private synchronized native ByteBuffer nativeImageGetBuffer(int idx, int readerFormat);
+ private synchronized native SurfacePlane nativeCreatePlane(int idx, int readerFormat);
}
private synchronized native void nativeInit(Object weakSelf, int w, int h,