Using output buffer with 8 bits video RGB as back buffer certainly is not working for 30 bits color depth visual.
Signed-off-by: Leo Liu <leo....@amd.com> Reviewed-by: Michel Dänzer <michel.daen...@amd.com> --- src/gallium/state_trackers/vdpau/output.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gallium/state_trackers/vdpau/output.c b/src/gallium/state_trackers/vdpau/output.c index 6ef7a404474..878a3546727 100644 --- a/src/gallium/state_trackers/vdpau/output.c +++ b/src/gallium/state_trackers/vdpau/output.c @@ -80,7 +80,8 @@ vlVdpOutputSurfaceCreate(VdpDevice device, * if the VDPAU RGB component order doesn't match the X11 one so * we only allow the X11 format */ - vlsurface->send_to_X = rgba_format == VDP_RGBA_FORMAT_B8G8R8A8; + vlsurface->send_to_X = dev->vscreen->color_depth == 24 && + rgba_format == VDP_RGBA_FORMAT_B8G8R8A8; res_tmpl.target = PIPE_TEXTURE_2D; res_tmpl.format = VdpFormatRGBAToPipe(rgba_format); -- 2.17.1 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev