From 05d88704e824c5f8ec21937cd4b5e380a4c213fe Mon Sep 17 00:00:00 2001 From: Vikash Garodia Date: Fri, 24 May 2019 16:26:09 +0530 Subject: [PATCH] msm: vidc: update video dimensions during port reconfiguration During a decode session, video output port can go through reconfiguration. As a result, update the reconfig dimension when client calls for g_fmt on output port. Change-Id: Ib5f5866acbdfe107ba4693b8b94498d42f74b312 Signed-off-by: Vikash Garodia --- msm/vidc/msm_vdec.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/msm/vidc/msm_vdec.c b/msm/vidc/msm_vdec.c index cc6dc12d9617..cfe5f13784ce 100644 --- a/msm/vidc/msm_vdec.c +++ b/msm/vidc/msm_vdec.c @@ -662,6 +662,10 @@ int msm_vdec_g_fmt(struct msm_vidc_inst *inst, struct v4l2_format *f) if (f->type == OUTPUT_MPLANE) { fmt = &inst->fmts[OUTPUT_PORT].v4l2_fmt; + if (inst->in_reconfig) { + fmt->fmt.pix_mp.width = inst->reconfig_width; + fmt->fmt.pix_mp.height = inst->reconfig_height; + } fmt->fmt.pix_mp.plane_fmt[0].sizeimage = msm_vidc_calculate_dec_output_frame_size(inst); if (fmt->fmt.pix_mp.num_planes > 1) @@ -670,10 +674,6 @@ int msm_vdec_g_fmt(struct msm_vidc_inst *inst, struct v4l2_format *f) memcpy(f, fmt, sizeof(struct v4l2_format)); } else if (f->type == INPUT_MPLANE) { fmt = &inst->fmts[INPUT_PORT].v4l2_fmt; - if (inst->in_reconfig) { - fmt->fmt.pix_mp.width = inst->reconfig_width; - fmt->fmt.pix_mp.height = inst->reconfig_height; - } fmt->fmt.pix_mp.plane_fmt[0].sizeimage = msm_vidc_calculate_dec_input_frame_size(inst); memcpy(f, fmt, sizeof(struct v4l2_format));