diff options
author | Vikash Garodia <vgarodia@codeaurora.org> | 2016-05-19 17:32:55 -0700 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2016-05-23 18:24:03 -0700 |
commit | 5ae76764a15284c36a30b08bc77e93691957311a (patch) | |
tree | aca4c84159048b3c82ab17a88e2c18dcea8a3db4 | |
parent | 090ea0de0e635c5c0f2f6bd00d6027c810cfe6c3 (diff) | |
download | android_hardware_qcom_media-5ae76764a15284c36a30b08bc77e93691957311a.tar.gz android_hardware_qcom_media-5ae76764a15284c36a30b08bc77e93691957311a.tar.bz2 android_hardware_qcom_media-5ae76764a15284c36a30b08bc77e93691957311a.zip |
mm-video-v4l2: vdec: Update the buffer size after g_fmt
The buffer size check for C2D is done after getting the updated
size from the g_fmt.
Change-Id: If7154536f469c8d941e3ae8a8f2f5f0411ac7f49
CRs-fixed: 1018025
-rw-r--r-- | mm-video-v4l2/vidc/vdec/src/omx_vdec_v4l2.cpp | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/mm-video-v4l2/vidc/vdec/src/omx_vdec_v4l2.cpp b/mm-video-v4l2/vidc/vdec/src/omx_vdec_v4l2.cpp index ed9fe25b..c2c37f4e 100644 --- a/mm-video-v4l2/vidc/vdec/src/omx_vdec_v4l2.cpp +++ b/mm-video-v4l2/vidc/vdec/src/omx_vdec_v4l2.cpp @@ -9700,11 +9700,6 @@ OMX_ERRORTYPE omx_vdec::update_portdef(OMX_PARAM_PORTDEFINITIONTYPE *portDefn) } else if (1 == portDefn->nPortIndex) { unsigned int buf_size = 0; int ret = 0; - if (!client_buffers.update_buffer_req()) { - DEBUG_PRINT_ERROR("client_buffers.update_buffer_req Failed"); - return OMX_ErrorHardware; - } - memset(&fmt, 0x0, sizeof(struct v4l2_format)); fmt.type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE; fmt.fmt.pix_mp.pixelformat = capture_capability; @@ -9716,6 +9711,10 @@ OMX_ERRORTYPE omx_vdec::update_portdef(OMX_PARAM_PORTDEFINITIONTYPE *portDefn) drv_ctx.op_buf.buffer_size = fmt.fmt.pix_mp.plane_fmt[0].sizeimage; drv_ctx.op_buf.buffer_size += drv_ctx.extradata_info.buffer_size; drv_ctx.op_buf.buffer_size = (drv_ctx.op_buf.buffer_size + drv_ctx.op_buf.alignment - 1)&(~(drv_ctx.op_buf.alignment - 1)); + if (!client_buffers.update_buffer_req()) { + DEBUG_PRINT_ERROR("client_buffers.update_buffer_req Failed"); + return OMX_ErrorHardware; + } if (!client_buffers.get_buffer_req(buf_size)) { DEBUG_PRINT_ERROR("update buffer requirements"); |