From 115f87fd886c61972b220c6ed94fc74ca1911cf6 Mon Sep 17 00:00:00 2001 From: Praveen Chavan Date: Thu, 8 Oct 2015 00:14:23 -0700 Subject: mm-video-v4l2: Specify the colorspace of the YUV (diff) Fix builds and disable extradata on legacy devices Bug: 24444518 Change-Id: I4e355a50e1901d0a51045d7c4848aa22b03e5196 --- mm-video-v4l2/vidc/vdec.mk | 1 + mm-video-v4l2/vidc/vdec/src/omx_vdec_msm8974.cpp | 3 +++ mm-video-v4l2/vidc/venc/src/video_encoder_device_v4l2.cpp | 4 ++-- 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(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(color_space); fmt.fmt.pix_mp.height = m_sVenc_cfg.input_height; fmt.fmt.pix_mp.width = m_sVenc_cfg.input_width; -- cgit v1.2.3