Overlay Video on Wayland

Scott Talbert swt at techie.net
Thu Apr 19 03:13:58 UTC 2018


On Tue, 17 Apr 2018, Nicolas Dufresne wrote:

>>>> Is it possible to use video overlays (either with GstPlayer or playbin) on
>>>> Wayland surfaces?  And if so, what is the recommended approach?  I saw
>>>> there was 'waylandsink' but it doesn't seem to be public.
>>>
>>> waylansink is part of gst-plugins-bad (unstable), and can be used with
>>> GstVideoOverlay interface on wayland. Run "gst-inspect-1.0 waylandsink"
>>> for details. An example application can be found here:
>>>
>>> https://cgit.freedesktop.org/gstreamer/gst-plugins-bad/tree/tests/examples/waylandsink
>>
>> The problem, though, is that gst/wayland/wayland.h header is not public.
>>
>> See
>> https://cgit.freedesktop.org/gstreamer/gst-plugins-bad/tree/gst-libs/gst/wayland/Makefile.am#n26
>
> You don't really need that library. The geometry stuff can be ignored,
> and then the rest is just helpers around string comparison:
>
> https://cgit.freedesktop.org/gstreamer/gst-plugins-bad/tree/gst-libs/gst/wayland/wayland.c
>
> If you really want these helpers, you can copy them in your app.

OK.  I'm seeing a few issues with the sample application.

First, these warnings are issued during startup (on Fedora 27):

** (gst-wayland-gtk-demo:11908): WARNING **: Wayland compositor is missing 
the ability to scale, video display may not work properly.

** (gst-wayland-gtk-demo:11908): WARNING **: Could not bind to 
zwp_linux_dmabuf_v1

On Debian Unstable, I see the first warning only.

Second, the window seems to be drawn in the wrong location.  The window 
with the blue background and bouncing ball is shifted down and to the 
right about 100 pixels of where it should be.  This doesn't seem to be a 
problem with the coordinates passed to 
gst_video_overlay_set_render_rectangle().  If I mess with those 
coordinates, I can see that the black window changes position, but the 
blue window does not.

Thirdly, if I use the GTK+ close button to close the window, gnome-shell 
crashes.  While this is probably a gnome-shell bug, it is very annoying. 
:)

Scott


More information about the gstreamer-devel mailing list