fix[mpp_sys_cfg]: Fix ver_stride calc issue

Platform: General
Spec: vp8/vp9/mpeg2

Error case:
Ver_stride is set externally, causing sys_cfg
to use the external ver_stride directly

Solution:
If it is not necessary, do not set ver/hor_stride
externally. To minimize the impact, currently only
modify the specs that encounters problems

Source:
vp9 3840x2026 in rk3576
vp8 1920x1080 in rk3588
m2v 1920x1080 in rk3588

Reported-by: redmine #550255

Change-Id: Ie1e73e17fa2db1740d36821a5bb26fb1487e81cb
Signed-off-by: Hongjin Li <vic.hong@rock-chips.com>
This commit is contained in:
Hongjin Li 2025-05-15 15:42:04 +08:00
parent 39e40c3aa8
commit 161345e67f
3 changed files with 0 additions and 6 deletions

View file

@ -1283,8 +1283,6 @@ static MPP_RET m2vd_alloc_frame(M2VDParserContext *ctx)
mpp_frame_set_width(ctx->frame_cur->f, ctx->display_width);
mpp_frame_set_height(ctx->frame_cur->f, ctx->display_height);
mpp_frame_set_hor_stride(ctx->frame_cur->f, ctx->display_width);
mpp_frame_set_ver_stride(ctx->frame_cur->f, ctx->display_height);
mpp_frame_set_errinfo(ctx->frame_cur->f, 0);
mpp_frame_set_pts(ctx->frame_cur->f, frm_pts);
ctx->frame_cur->flags = M2V_OUT_FLAG;

View file

@ -626,8 +626,6 @@ static MPP_RET vp8d_alloc_frame(VP8DParserContext_t *p)
if (p->frame_out->slot_index == 0xff) {
mpp_frame_set_width(p->frame_out->f, p->width);
mpp_frame_set_height(p->frame_out->f, p->height);
mpp_frame_set_hor_stride(p->frame_out->f, p->width);
mpp_frame_set_ver_stride(p->frame_out->f, p->height);
mpp_frame_set_errinfo(p->frame_out->f, 0);
mpp_frame_set_pts(p->frame_out->f, p->pts);
ret = mpp_buf_slot_get_unused(p->frame_slots,

View file

@ -387,8 +387,6 @@ static RK_S32 vp9_alloc_frame(Vp9CodecContext *ctx, VP9Frame *frame)
mpp_frame_set_width(frame->f, ctx->width);
mpp_frame_set_height(frame->f, ctx->height);
mpp_frame_set_hor_stride(frame->f, ctx->width * s->bpp / 8);
mpp_frame_set_ver_stride(frame->f, ctx->height);
mpp_frame_set_errinfo(frame->f, 0);
mpp_frame_set_discard(frame->f, 0);
mpp_frame_set_pts(frame->f, s->pts);