vlc | branch: master | Romain Vimont <[email protected]> | Tue Jul 7 12:33:54 2020 +0200| [1f203efd998c1f0ef05e7e26258e481355d2a348] | committer: Alexandre Janniaux
opengl: use default draw framebuffer The default draw framebuffer might be != 0 on some platforms. Read the bound draw framebuffer on initialization, and use it for drawing to the display. Co-authored-by: Alexandre Janniaux <[email protected]> Signed-off-by: Alexandre Janniaux <[email protected]> > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1f203efd998c1f0ef05e7e26258e481355d2a348 --- modules/video_output/opengl/filters.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/modules/video_output/opengl/filters.c b/modules/video_output/opengl/filters.c index d6762b0b56..2f4f7af64a 100644 --- a/modules/video_output/opengl/filters.c +++ b/modules/video_output/opengl/filters.c @@ -201,6 +201,10 @@ vlc_gl_filters_Draw(struct vlc_gl_filters *filters) { const opengl_vtable_t *vt = &filters->api->vt; + GLint value; + vt->GetIntegerv(GL_DRAW_FRAMEBUFFER_BINDING, &value); + GLuint draw_framebuffer = value; /* as GLuint */ + struct vlc_gl_filter_priv *priv; vlc_list_foreach(priv, &filters->list, node) { @@ -221,7 +225,8 @@ vlc_gl_filters_Draw(struct vlc_gl_filters *filters) } } - GLuint draw_fb = priv->has_framebuffer_out ? priv->framebuffer_out : 0; + GLuint draw_fb = priv->has_framebuffer_out ? priv->framebuffer_out + : draw_framebuffer; vt->BindFramebuffer(GL_DRAW_FRAMEBUFFER, draw_fb); _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
