summaryrefslogtreecommitdiffstats
path: root/media/jni
diff options
context:
space:
mode:
authorRuben Brunk <rubenbrunk@google.com>2014-06-21 02:00:28 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2014-06-20 20:43:34 +0000
commit5e6421bd8f0ac6efd617b1bcdb976b10f001654e (patch)
tree02391e65ada4ed5ad3fe278d876d79da85a19766 /media/jni
parent7c0e6219c3c812354a507dd3db7a741a6e33b073 (diff)
parent91b9aabc9fa0c058ecc4a8b3f486540c28fe1cc0 (diff)
downloadframeworks_base-5e6421bd8f0ac6efd617b1bcdb976b10f001654e.zip
frameworks_base-5e6421bd8f0ac6efd617b1bcdb976b10f001654e.tar.gz
frameworks_base-5e6421bd8f0ac6efd617b1bcdb976b10f001654e.tar.bz2
Merge "camera2: Switch to using YV12 for ImageReader."
Diffstat (limited to 'media/jni')
-rw-r--r--media/jni/android_media_ImageReader.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/media/jni/android_media_ImageReader.cpp b/media/jni/android_media_ImageReader.cpp
index 36cfb0f..41ed9e1 100644
--- a/media/jni/android_media_ImageReader.cpp
+++ b/media/jni/android_media_ImageReader.cpp
@@ -767,11 +767,12 @@ static jint ImageReader_imageSetup(JNIEnv* env, jobject thiz,
int imgReaderFmt = ctx->getBufferFormat();
int bufFmt = buffer->format;
if (imgReaderFmt != bufFmt) {
- // Special casing for when producer switches format
- if (imgReaderFmt == HAL_PIXEL_FORMAT_YCbCr_420_888 && bufFmt ==
- HAL_PIXEL_FORMAT_YCrCb_420_SP) {
- ctx->setBufferFormat(HAL_PIXEL_FORMAT_YCrCb_420_SP);
- ALOGV("%s: Overriding NV21 to YUV_420_888.", __FUNCTION__);
+ // Special casing for when producer switches to a format compatible with flexible YUV
+ // (HAL_PIXEL_FORMAT_YCbCr_420_888).
+ if (imgReaderFmt == HAL_PIXEL_FORMAT_YCbCr_420_888 && (bufFmt ==
+ HAL_PIXEL_FORMAT_YCrCb_420_SP || bufFmt == HAL_PIXEL_FORMAT_YV12)) {
+ ctx->setBufferFormat(bufFmt);
+ ALOGV("%s: Overriding buffer format YUV_420_888 to %x.", __FUNCTION__, bufFmt);
} else {
// Return the buffer to the queue.
consumer->unlockBuffer(*buffer);