From 327480d10f2dab52de28e9a84609fac81c2034c5 Mon Sep 17 00:00:00 2001 From: Leo Liu Date: Sat, 30 Sep 2017 22:19:49 -0400 Subject: [PATCH] st/vdpau: don't re-allocate interlaced buffer with packed YUV format MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit It caused corruption, when vlVdpVideoSurfacePutBitsYCbCr putting YUV to the fields Cc: mesa-stable@lists.freedesktop.org Cc: Andy Furniss Tested-by: Andy Furniss Reviewed-by: Christian König --- src/gallium/state_trackers/vdpau/surface.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/gallium/state_trackers/vdpau/surface.c b/src/gallium/state_trackers/vdpau/surface.c index 884ae308319..c678eb70377 100644 --- a/src/gallium/state_trackers/vdpau/surface.c +++ b/src/gallium/state_trackers/vdpau/surface.c @@ -350,6 +350,8 @@ vlVdpVideoSurfacePutBitsYCbCr(VdpVideoSurface surface, /* adjust the template parameters */ p_surf->templat.buffer_format = nformat; + if (nformat == PIPE_FORMAT_YUYV || nformat == PIPE_FORMAT_UYVY) + p_surf->templat.interlaced = false; /* and try to create the video buffer with the new format */ p_surf->video_buffer = pipe->create_video_buffer(pipe, &p_surf->templat); -- 2.30.2