diff options
author | SGCMarkus <markusornik@gmail.com> | 2019-10-03 16:55:58 +0200 |
---|---|---|
committer | alk3pInjection <webmaster@raspii.tech> | 2022-09-05 22:00:03 +0800 |
commit | b12b88a506bb085624a6b42495a59d8f0adc6842 (patch) | |
tree | e3bcee18a2506c196607fd6a957e918c24d9c034 | |
parent | f61326a1392b82e7f94f0cfe428903a38a33fba6 (diff) |
gralloc: Add option for YCrCb venus camera preview
On judypn (LG V40) camera preview has red/blue colors
switched with HAL_PIXEL_FORMAT_YCbCr_420_SP_VENUS but
HAL_PIXEL_FORMAT_YCrCb_420_SP breaks camera preview
entirely.
When using HAL_PIXEL_FORMAT_YCrCb_420_SP_VENUS camera
preview works fine, with correct colors.
Change-Id: I84ffcbbeb66acf4401294de6b4f3cf846c7530b9
-rw-r--r-- | gralloc/Android.mk | 2 | ||||
-rw-r--r-- | gralloc/gr_utils.cpp | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/gralloc/Android.mk b/gralloc/Android.mk index 2c2382d2..4dffadea 100644 --- a/gralloc/Android.mk +++ b/gralloc/Android.mk @@ -42,6 +42,8 @@ LOCAL_CFLAGS := $(common_flags) -DLOG_TAG=\"qdgralloc\" -Wno-si ifeq ($(TARGET_USES_YCRCB_CAMERA_PREVIEW),true) LOCAL_CFLAGS += -DUSE_YCRCB_CAMERA_PREVIEW +else ifeq ($(TARGET_USES_YCRCB_VENUS_CAMERA_PREVIEW),true) + LOCAL_CFLAGS += -DUSE_YCRCB_CAMERA_PREVIEW_VENUS endif LOCAL_ADDITIONAL_DEPENDENCIES := $(common_deps) diff --git a/gralloc/gr_utils.cpp b/gralloc/gr_utils.cpp index ceb5e69f..20508344 100644 --- a/gralloc/gr_utils.cpp +++ b/gralloc/gr_utils.cpp @@ -1337,6 +1337,8 @@ int GetImplDefinedFormat(uint64_t usage, int format) { } else { #ifdef USE_YCRCB_CAMERA_PREVIEW gr_format = HAL_PIXEL_FORMAT_YCrCb_420_SP; // NV21 preview +#elif USE_YCRCB_CAMERA_PREVIEW_VENUS + gr_format = HAL_PIXEL_FORMAT_YCrCb_420_SP_VENUS; // NV21 preview #else gr_format = HAL_PIXEL_FORMAT_YCbCr_420_SP_VENUS; // NV12 preview #endif |