<div dir="ltr"><div class="gmail_quote"><div dir="ltr">On Fri, Aug 12, 2016 at 4:24 PM Emmanuel Pacaud <<a href="mailto:emmanuel.pacaud@lapp.in2p3.fr">emmanuel.pacaud@lapp.in2p3.fr</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">When this application runs in a X11 session, everything works fine,<br>
like on the attached screenshot. But in a wayland session, the video is<br>
displayed in a separate window, instead of being embedded in the main<br>
application window.<br>
<br>
My code is based on what is in the GstOverlayElement documentation, in<br>
the GstVideOverlay and Gtk+ paragraph, which obviously doesn't handle<br>
the wayland case. How are we supposed to proceed in this case ?<br></blockquote><div><br></div><div>You're using GDK_WINDOW_XID to get the X window ID to pass to GstVideoOverlay. On Wayland, this won't work and should have caused CRITICAL warnings to stderr, since you have a GdkWaylandWindow and not a GdkX11Window.<br><br></div><div>waylandsink expects to get a pointer to a struct wl_surface instead of an X window ID. You can obtain this pointer using gdk_wayland_window_get_wl_surface.<br><br></div><div>You can test which kind of window you have using GDK_IS_X11_WINDOW and GDK_IS_WAYLAND_WINDOW. <br></div></div></div>