summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gralloc/Android.mk5
-rw-r--r--gralloc/gr_utils.cpp4
2 files changed, 9 insertions, 0 deletions
diff --git a/gralloc/Android.mk b/gralloc/Android.mk
index ebb3cd4e..2c2382d2 100644
--- a/gralloc/Android.mk
+++ b/gralloc/Android.mk
@@ -39,6 +39,11 @@ LOCAL_SHARED_LIBRARIES := $(common_libs) libqdMetaData libdl \
android.hardware.graphics.mapper@4.0
LOCAL_CFLAGS := $(common_flags) -DLOG_TAG=\"qdgralloc\" -Wno-sign-conversion \
-D__QTI_DISPLAY_GRALLOC__
+
+ifeq ($(TARGET_USES_YCRCB_CAMERA_PREVIEW),true)
+ LOCAL_CFLAGS += -DUSE_YCRCB_CAMERA_PREVIEW
+endif
+
LOCAL_ADDITIONAL_DEPENDENCIES := $(common_deps)
LOCAL_SRC_FILES := gr_utils.cpp gr_adreno_info.cpp
include $(BUILD_SHARED_LIBRARY)
diff --git a/gralloc/gr_utils.cpp b/gralloc/gr_utils.cpp
index 98e60e2c..ceb5e69f 100644
--- a/gralloc/gr_utils.cpp
+++ b/gralloc/gr_utils.cpp
@@ -1335,7 +1335,11 @@ int GetImplDefinedFormat(uint64_t usage, int format) {
if (format == HAL_PIXEL_FORMAT_YCbCr_420_888) {
gr_format = HAL_PIXEL_FORMAT_NV21_ZSL; // NV21
} else {
+#ifdef USE_YCRCB_CAMERA_PREVIEW
+ gr_format = HAL_PIXEL_FORMAT_YCrCb_420_SP; // NV21 preview
+#else
gr_format = HAL_PIXEL_FORMAT_YCbCr_420_SP_VENUS; // NV12 preview
+#endif
}
} else if (usage & BufferUsage::COMPOSER_OVERLAY) {
// XXX: If we still haven't set a format, default to RGBA8888