media: coda: align internal mpeg4 framebuffers to 16x16 macroblocks
This fixes visual artifacts in the first macroblock row of encoded MPEG-4 video output caused by 8 additional lines of luma data leaking into the chroma planes of the internal reference framebuffers: the buffer size is rounded up to a multiple of 16x16 macroblock size, same as for the h.264 encoder. Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de> Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
This commit is contained in:
parent
52fde8491d
commit
551c675782
|
@ -394,7 +394,8 @@ static int coda_alloc_framebuffers(struct coda_ctx *ctx,
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
if (ctx->codec->src_fourcc == V4L2_PIX_FMT_H264 ||
|
if (ctx->codec->src_fourcc == V4L2_PIX_FMT_H264 ||
|
||||||
ctx->codec->dst_fourcc == V4L2_PIX_FMT_H264) {
|
ctx->codec->dst_fourcc == V4L2_PIX_FMT_H264 ||
|
||||||
|
ctx->codec->dst_fourcc == V4L2_PIX_FMT_MPEG4) {
|
||||||
width = round_up(q_data->width, 16);
|
width = round_up(q_data->width, 16);
|
||||||
height = round_up(q_data->height, 16);
|
height = round_up(q_data->height, 16);
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in New Issue