mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-04 08:04:24 -04:00
media: verisilicon: av1: Fix reference video buffer pointer assignment
Always get new destination buffer for reference frame because nothing
garantees the one set previously is still valid or unused.
Fixes this chromium test suite:
https://chromium.googlesource.com/chromium/src/media/+/refs/heads/main/test/data/test-25fps.av1.ivf
Fixes: 727a400686 ("media: verisilicon: Add Rockchip AV1 decoder")
Cc: <stable@vger.kernel.org>
Signed-off-by: Benjamin Gaignard <benjamin.gaignard@collabora.com>
Reviewed-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
[hverkuil: fix typo and add link to chromium test suite]
This commit is contained in:
committed by
Hans Verkuil
parent
365365a266
commit
672f24ed6e
@@ -161,8 +161,7 @@ static int rockchip_vpu981_av1_dec_frame_ref(struct hantro_ctx *ctx,
|
||||
av1_dec->frame_refs[i].timestamp = timestamp;
|
||||
av1_dec->frame_refs[i].frame_type = frame->frame_type;
|
||||
av1_dec->frame_refs[i].order_hint = frame->order_hint;
|
||||
if (!av1_dec->frame_refs[i].vb2_ref)
|
||||
av1_dec->frame_refs[i].vb2_ref = hantro_get_dst_buf(ctx);
|
||||
av1_dec->frame_refs[i].vb2_ref = hantro_get_dst_buf(ctx);
|
||||
|
||||
for (j = 0; j < V4L2_AV1_TOTAL_REFS_PER_FRAME; j++)
|
||||
av1_dec->frame_refs[i].order_hints[j] = frame->order_hints[j];
|
||||
|
||||
Reference in New Issue
Block a user