summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPraveen Chavan <pchavan@codeaurora.org>2015-10-08 00:14:23 -0700
committerVineeta Srivastava <vsrivastava@google.com>2015-10-08 00:34:43 -0700
commit115f87fd886c61972b220c6ed94fc74ca1911cf6 (patch)
treef016793a28c9dfdbf44597ea3e0a0a7328e320b5
parent6ee2d713ec3877635f654ba65aa95395e5323eb6 (diff)
downloadandroid_hardware_qcom_media-115f87fd886c61972b220c6ed94fc74ca1911cf6.tar.gz
android_hardware_qcom_media-115f87fd886c61972b220c6ed94fc74ca1911cf6.tar.bz2
android_hardware_qcom_media-115f87fd886c61972b220c6ed94fc74ca1911cf6.zip
mm-video-v4l2: Specify the colorspace of the YUV (diff)
Fix builds and disable extradata on legacy devices Bug: 24444518 Change-Id: I4e355a50e1901d0a51045d7c4848aa22b03e5196
-rw-r--r--mm-video-v4l2/vidc/vdec.mk1
-rw-r--r--mm-video-v4l2/vidc/vdec/src/omx_vdec_msm8974.cpp3
-rw-r--r--mm-video-v4l2/vidc/venc/src/video_encoder_device_v4l2.cpp4
3 files changed, 6 insertions, 2 deletions
diff --git a/mm-video-v4l2/vidc/vdec.mk b/mm-video-v4l2/vidc/vdec.mk
index ffee562d..0ccefd6c 100644
--- a/mm-video-v4l2/vidc/vdec.mk
+++ b/mm-video-v4l2/vidc/vdec.mk
@@ -43,6 +43,7 @@ libOmxVdec-def += -DPROCESS_EXTRADATA_IN_OUTPUT_PORT
libOmxVdec-def += -D_MSM8974_
libOmxVdec-def += -D_HEVC_USE_ADSP_HEAP_
libOmxVdec-def += -DDISABLE_INPUT_BUFFER_CACHE
+libOmxVdec-def += -DDISABLE_EXTRADATA
endif
ifeq ($(TARGET_BOARD_PLATFORM),msm7627a)
libOmxVdec-def += -DMAX_RES_720P
diff --git a/mm-video-v4l2/vidc/vdec/src/omx_vdec_msm8974.cpp b/mm-video-v4l2/vidc/vdec/src/omx_vdec_msm8974.cpp
index 8600dffc..7f20e629 100644
--- a/mm-video-v4l2/vidc/vdec/src/omx_vdec_msm8974.cpp
+++ b/mm-video-v4l2/vidc/vdec/src/omx_vdec_msm8974.cpp
@@ -128,7 +128,10 @@ extern "C" {
#define EXTRADATA_IDX(__num_planes) (__num_planes - 1)
#define ALIGN(x, to_align) ((((unsigned) x) + (to_align - 1)) & ~(to_align - 1))
+#ifndef DISABLE_EXTRADATA
#define DEFAULT_EXTRADATA (OMX_INTERLACE_EXTRADATA | OMX_VUI_DISPLAY_INFO_EXTRADATA)
+#endif
+
#define DEFAULT_CONCEAL_COLOR "32784" //0x8010, black by default
diff --git a/mm-video-v4l2/vidc/venc/src/video_encoder_device_v4l2.cpp b/mm-video-v4l2/vidc/venc/src/video_encoder_device_v4l2.cpp
index b7f004bf..32d73b59 100644
--- a/mm-video-v4l2/vidc/venc/src/video_encoder_device_v4l2.cpp
+++ b/mm-video-v4l2/vidc/venc/src/video_encoder_device_v4l2.cpp
@@ -2730,7 +2730,7 @@ bool venc_dev::venc_empty_buf(void *buffer, void *pmem_data_buf, unsigned index,
struct v4l2_format fmt;
fmt.type = V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE;
fmt.fmt.pix_mp.pixelformat = m_sVenc_cfg.inputformat;
- fmt.fmt.pix_mp.colorspace = color_space;
+ fmt.fmt.pix_mp.colorspace = static_cast<decltype(fmt.fmt.pix_mp.colorspace)>(color_space);
fmt.fmt.pix_mp.height = m_sVenc_cfg.input_height;
fmt.fmt.pix_mp.width = m_sVenc_cfg.input_width;
if (ioctl(m_nDriver_fd, VIDIOC_S_FMT, &fmt)) {
@@ -4099,7 +4099,7 @@ bool venc_dev::venc_set_color_format(OMX_COLOR_FORMATTYPE color_format)
fmt.type = V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE;
fmt.fmt.pix_mp.pixelformat = m_sVenc_cfg.inputformat;
- fmt.fmt.pix_mp.colorspace = color_space;
+ fmt.fmt.pix_mp.colorspace = static_cast<decltype(fmt.fmt.pix_mp.colorspace)>(color_space);
fmt.fmt.pix_mp.height = m_sVenc_cfg.input_height;
fmt.fmt.pix_mp.width = m_sVenc_cfg.input_width;