diff options
author | Chien-Yu Chen <cychen@google.com> | 2015-06-19 19:51:40 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2015-06-19 19:51:42 +0000 |
commit | be2e38e01c5c23d1ac240313ecb8f71251c448c3 (patch) | |
tree | 964dec18bfe705568cfabf33ef5a2cbf4ea7390a | |
parent | f3e8dca84b51e6eab1cc1384a5baabb0bae433a1 (diff) | |
parent | 0782aab077b32613c6715190135008dbf3dc5d6d (diff) | |
download | frameworks_base-be2e38e01c5c23d1ac240313ecb8f71251c448c3.zip frameworks_base-be2e38e01c5c23d1ac240313ecb8f71251c448c3.tar.gz frameworks_base-be2e38e01c5c23d1ac240313ecb8f71251c448c3.tar.bz2 |
Merge "ImageReader: Fix format workarounds for legacy devices" into mnc-dev
-rw-r--r-- | core/java/android/hardware/camera2/legacy/SurfaceTextureRenderer.java | 2 | ||||
-rw-r--r-- | media/jni/android_media_ImageReader.cpp | 5 |
2 files changed, 4 insertions, 3 deletions
diff --git a/core/java/android/hardware/camera2/legacy/SurfaceTextureRenderer.java b/core/java/android/hardware/camera2/legacy/SurfaceTextureRenderer.java index f928a55..bc80fc1 100644 --- a/core/java/android/hardware/camera2/legacy/SurfaceTextureRenderer.java +++ b/core/java/android/hardware/camera2/legacy/SurfaceTextureRenderer.java @@ -630,8 +630,6 @@ public class SurfaceTextureRenderer { holder.width = surfaceSize.getWidth(); holder.height = surfaceSize.getHeight(); if (LegacyCameraDevice.needsConversion(s)) { - // Always override to YV12 output for YUV surface formats. - LegacyCameraDevice.setSurfaceFormat(s, ImageFormat.YV12); mConversionSurfaces.add(holder); } else { mSurfaces.add(holder); diff --git a/media/jni/android_media_ImageReader.cpp b/media/jni/android_media_ImageReader.cpp index 635fa11..0034b07 100644 --- a/media/jni/android_media_ImageReader.cpp +++ b/media/jni/android_media_ImageReader.cpp @@ -1240,8 +1240,11 @@ static jint Image_getFormat(JNIEnv* env, jobject thiz, jint readerFormat) return static_cast<jint>(PublicFormat::PRIVATE); } else { CpuConsumer::LockedBuffer* buffer = Image_getLockedBuffer(env, thiz); + int readerHalFormat = android_view_Surface_mapPublicFormatToHalFormat( + static_cast<PublicFormat>(readerFormat)); + int32_t fmt = applyFormatOverrides(buffer->flexFormat, readerHalFormat); PublicFormat publicFmt = android_view_Surface_mapHalFormatDataspaceToPublicFormat( - buffer->flexFormat, buffer->dataSpace); + fmt, buffer->dataSpace); return static_cast<jint>(publicFmt); } } |