[vlc-commits] vout/opengl: pass gl extensions to converters

Thomas Guillem git at videolan.org
Fri Jan 6 10:27:35 CET 2017


vlc | branch: master | Thomas Guillem <thomas at gllm.fr> | Fri Jan  6 09:54:14 2017 +0100| [0c1fc24dbd2deb2e7121defd131cf7e5428123d8] | committer: Thomas Guillem

vout/opengl: pass gl extensions to converters

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=0c1fc24dbd2deb2e7121defd131cf7e5428123d8
---

 modules/video_output/opengl/internal.h    | 2 ++
 modules/video_output/opengl/vout_helper.c | 4 +++-
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/modules/video_output/opengl/internal.h b/modules/video_output/opengl/internal.h
index d925561..e9bf846 100644
--- a/modules/video_output/opengl/internal.h
+++ b/modules/video_output/opengl/internal.h
@@ -141,6 +141,8 @@ struct opengl_tex_converter_t
     vlc_object_t *parent;
     /* Function pointer to shaders commands, set by the caller of the init cb */
     const opengl_shaders_api_t *api;
+    /* Available gl extensions (from GL_EXTENSIONS) */
+    const char *glexts;
     /* Set it to request a special orientation (by default = fmt.orientation) */
     video_orientation_t orientation;
 
diff --git a/modules/video_output/opengl/vout_helper.c b/modules/video_output/opengl/vout_helper.c
index 4d0b6a6..84453f2 100644
--- a/modules/video_output/opengl/vout_helper.c
+++ b/modules/video_output/opengl/vout_helper.c
@@ -175,8 +175,8 @@ vout_display_opengl_t *vout_display_opengl_New(video_format_t *fmt,
         return NULL;
     }
 
-#if !defined(USE_OPENGL_ES2)
     const char *extensions = (const char *)glGetString(GL_EXTENSIONS);
+#if !defined(USE_OPENGL_ES2)
     const unsigned char *ogl_version = glGetString(GL_VERSION);
     bool supports_shaders = strverscmp((const char *)ogl_version, "2.0") >= 0;
 #else
@@ -265,6 +265,7 @@ vout_display_opengl_t *vout_display_opengl_New(video_format_t *fmt,
     opengl_tex_converter_t rgba_tex_conv = {
         .parent = VLC_OBJECT(vgl->gl),
         .api = &vgl->api,
+        .glexts = extensions,
         .orientation = fmt->orientation,
     };
 
@@ -281,6 +282,7 @@ vout_display_opengl_t *vout_display_opengl_New(video_format_t *fmt,
         tex_conv = (opengl_tex_converter_t) {
             .parent = VLC_OBJECT(vgl->gl),
             .api = &vgl->api,
+            .glexts = extensions,
             .orientation = fmt->orientation,
         };
         int ret = opengl_tex_converter_init_cbs[i](fmt, &tex_conv);



More information about the vlc-commits mailing list