From 340d25b76f918d21d1ce75beb62be5686f26f8d3 Mon Sep 17 00:00:00 2001 From: Arnaud Vrac Date: Wed, 29 Nov 2017 15:25:35 +0100 Subject: [PATCH] gl-renderer: use correct pixel shader for NV12 format uploaded to RG texture Signed-off-by: Arnaud Vrac Fixes: 00a03d2f724 ("gl-renderer: add support of WL_SHM_FORMAT_NV12") Reviewed-by: Daniel Stone --- libweston/gl-renderer.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libweston/gl-renderer.c b/libweston/gl-renderer.c index 8726c340..5a4b83cd 100644 --- a/libweston/gl-renderer.c +++ b/libweston/gl-renderer.c @@ -1597,7 +1597,6 @@ gl_renderer_attach_shm(struct weston_surface *es, struct weston_buffer *buffer, } break; case WL_SHM_FORMAT_NV12: - gs->shader = &gr->texture_shader_y_xuxv; pitch = wl_shm_buffer_get_stride(shm_buffer); gl_pixel_type = GL_UNSIGNED_BYTE; num_planes = 2; @@ -1606,9 +1605,11 @@ gl_renderer_attach_shm(struct weston_surface *es, struct weston_buffer *buffer, gs->hsub[1] = 2; gs->vsub[1] = 2; if (gr->has_gl_texture_rg) { + gs->shader = &gr->texture_shader_y_uv; gl_format[0] = GL_R8_EXT; gl_format[1] = GL_RG8_EXT; } else { + gs->shader = &gr->texture_shader_y_xuxv; gl_format[0] = GL_LUMINANCE; gl_format[1] = GL_LUMINANCE_ALPHA; }