From fa1bb477031f56ad0131b2122a8362d667711922 Mon Sep 17 00:00:00 2001 From: Leo Liu Date: Sat, 7 Aug 2021 17:09:55 -0400 Subject: [PATCH] frontends/va: Reallocate p010 buffer for AV1 10 bits decode Check bit depth and reallocate p010 buffer if it's 10 bits. Signed-off-by: Leo Liu Reviewed-by: Boyuan Zhang Part-of: --- src/gallium/frontends/va/picture.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/gallium/frontends/va/picture.c b/src/gallium/frontends/va/picture.c index 6af7397..5a5792e 100644 --- a/src/gallium/frontends/va/picture.c +++ b/src/gallium/frontends/va/picture.c @@ -741,6 +741,14 @@ vlVaEndPicture(VADriverContextP ctx, VAContextID context_id) realloc = true; } + if (u_reduce_video_profile(context->templat.profile) == PIPE_VIDEO_FORMAT_AV1 && + surf->buffer->buffer_format == PIPE_FORMAT_NV12) { + if (context->desc.av1.picture_parameter.bit_depth_idx == 1) { + surf->templat.buffer_format = PIPE_FORMAT_P010; + realloc = true; + } + } + if (realloc) { struct pipe_video_buffer *old_buf = surf->buffer; -- 2.7.4