GNOME Bugzilla – Bug 729551
GstGLDisplay: mix platform and window
Last modified: 2014-05-06 11:11:17 UTC
1- It parses env "GST_GL_WINDOW" whereas it checks for "egl" platform: http://cgit.freedesktop.org/gstreamer/gst-plugins-bad/tree/gst-libs/gst/gl/gstgldisplay.c#n132 I understand the confusion because the egl platform is the only platform which has its own display type. But "EGLDisplay eglGetDisplay( NativeDisplayType native_display);" can be created from the native display. I have not tried to pass a native display to eglGetDisplay though. Anyway it needs some clarifications here and GST_GL_WINDOW en var cannot be equal to egl. 2 - gst_gl_display_get_gl_api and gst_gl_display_get_gl_vtable should be removed as it has moved to gstglcontext. (gl_api attribute as well) 3- implement gst_gl_display_get_handle_type 4- On OSX, I have both x11 and cocoa windows which get compiled. But then if I do not set GST_GL_WINDOW en var, it still calls XOpenDisplay because there is no cocoa case in gstgldisplay.c. Even if it won't use it as the selected platform is cocoa by default. This is annoying because it takes around 5 sec to launch a pipeline because it has to open XQuartz (if not already open).
Matthew do you have time to handle that ?
Sure, I can take a look at it.
Thx!
commit f19e5abcb8b6b6a6d1b1d1ad29dce6f94150912c Author: Matthew Waters <ystreet00@gmail.com> Date: Tue May 6 16:39:06 2014 +1000 gl/display: clean up pre gstglcontext api and struct fields https://bugzilla.gnome.org/show_bug.cgi?id=729551 commit c28dd9b0d34b4d678d0f9780a2c81ca9a7b29062 Author: Matthew Waters <ystreet00@gmail.com> Date: Tue May 6 17:27:15 2014 +1000 gl/display: add get_handle_type https://bugzilla.gnome.org/show_bug.cgi?id=729551 commit 1eeecae29e6e3c05ab84786dc9ff6fd6a056b565 Author: Matthew Waters <ystreet00@gmail.com> Date: Tue May 6 17:08:18 2014 +1000 gl/display: avoid opening the X11 display on systems with Cocoa (OS X) https://bugzilla.gnome.org/show_bug.cgi?id=729551 commit b694b292b9257897e6fc6a80fd23df20d285dfda Author: Matthew Waters <ystreet00@gmail.com> Date: Tue May 6 16:31:28 2014 +1000 gl/display: check the correct env variable for choosing an egl display GST_GL_WINDOW is used for window system specific choices. An EGLDisplay can be created from window systems with egl support by using eglGetDisplay(). https://bugzilla.gnome.org/show_bug.cgi?id=729551