[Bug 709747] [wayland_egl] Add support for GstVideoOverlay
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Thu Oct 10 14:41:34 CEST 2013
https://bugzilla.gnome.org/show_bug.cgi?id=709747
GStreamer | gst-plugins-gl | git
--- Comment #4 from Sebastian Dröge (slomo) <slomo at circular-chaos.org> 2013-10-10 12:41:30 UTC ---
(In reply to comment #3)
> (In reply to comment #2)
> > Review of attachment 256826 [details] [details]:
> >
> > Does all this still work without setting a window handle/display, and then
> > creates a new window?
>
> For wayland_egl, and about the display: yes, if you go back to ready state
> first. No if you do that in paused or playing.
> For wayland_egl surface, yes in paused or playing state too.
Sounds good :)
> >
> > ::: configure.ac
> > @@ +878,3 @@
> > + else
> > + PKG_CHECK_MODULES(GTK2, gtk+-2.0, HAVE_GTK_20=yes, HAVE_GTK_20=no)
> > + if test "x$HAVE_GTK_20" = "xyes"; then
> >
> > Just remove GTK2 support, nobody needs that :)
>
> WHy not keep it as it's done in my patch, then in a near future remove GTK2
> support. No ?
> Also it could be interesting for comparisons.
Or remove it later, just makes the configure check a bit more complicated for
no good reason ;)
> > ::: gst-libs/gst/gl/gstgldisplay.h
> > @@ +68,2 @@
> > GstGLAPI gst_gl_display_get_gl_api (GstGLDisplay * display);
> > +gpointer gst_gl_display_get_platform_display (GstGLDisplay * display);
> >
> > Would this be an EGLDisplay with EGL, a X11 display connection with X11, etc.?
>
> With wayland_egl, it's a wl_display, not a EGLDisplay. EGLDisplay is created
> using gst_gl_window_get_display which return this wl_display too.
> Later one is available when the window is already "open".
>
> Note sure about glx/X11 and egl/X11 display, because in gst-gl 0.10 it was not
> necessary that glimagesink and the application share the same instance of X11
> Display. (same with win32, wgl, egl)
>
> Maybe it's only related to wayland.
So for Wayland there is a EGLDisplay and a separate wl_display? Ugly :/ I think
this should somehow be made more clear then in the API, and more strict
distinction between the EGLDisplay-like things and the wl_display.
> > Make it's usage consistent :) I think that would make sense in general, and
> > then also connected with GstContext usage
> >
> > ::: gst-libs/gst/gl/wayland/wayland_event_source.c
> > @@ +113,2 @@
> > if (source->pfd.revents) {
> > + gst_gl_wl_display_roundtrip_queue (source->display, source->queue);
> >
> > Why not the Wayland function?
>
> Interesting point, initially I replaced the wl_display_dispatch (which is there
> in master) by wl_display_dispatch_queue. But that's not enough when a surface
> and its child does not share the same queue.
> I found this morning this discussion
> https://bugs.launchpad.net/glmark2/+bug/1211076 . The comments have also an
> interest. It's not the exact same problem but it seems that the common point is
> that there is a difference between events and requests.
>
> So I needed something like wl_display_roundtrip but for just a queue, and
> wl_display_roundtrip_queue does not exist. So I created
> gst_gl_wl_display_roundtrip_queue. See wl_display_roundtrip in
> http://cgit.freedesktop.org/wayland/wayland/tree/src/wayland-client.c
Makes sense, maybe add a comment with all this explanation to the code :)
--
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs
mailing list