mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-27 12:11:13 +00:00
videocontext: support wl-display in "gst.vaapi.app.Display"
Through "gst.vaapi.app.Display" context, users can set their own VADisplay and native display of their backend. So far we support only X11 display, from now we also support Wayland display. Attributes: - wl-display : pointer of struct wl_display . https://bugzilla.gnome.org/show_bug.cgi?id=705821
This commit is contained in:
parent
1825d939e7
commit
bfac678e9a
1 changed files with 14 additions and 0 deletions
|
@ -31,6 +31,9 @@
|
|||
#if USE_X11
|
||||
#include <gst/vaapi/gstvaapidisplay_x11.h>
|
||||
#endif
|
||||
#if USE_WAYLAND
|
||||
#include <gst/vaapi/gstvaapidisplay_wayland.h>
|
||||
#endif
|
||||
|
||||
GST_DEBUG_CATEGORY_STATIC (GST_CAT_CONTEXT);
|
||||
|
||||
|
@ -103,6 +106,17 @@ gst_vaapi_video_context_get_display (GstContext * context, gboolean app_context,
|
|||
gst_vaapi_display_x11_new_with_va_display (va_display, x11_display);
|
||||
}
|
||||
#endif
|
||||
#if USE_WAYLAND
|
||||
if (!display) {
|
||||
struct wl_display *wl_display = NULL;
|
||||
if (gst_structure_get (structure, "wl-display", G_TYPE_POINTER,
|
||||
&wl_display, NULL)) {
|
||||
display =
|
||||
gst_vaapi_display_wayland_new_with_va_display (va_display,
|
||||
wl_display);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
_init_context_debug ();
|
||||
|
||||
|
|
Loading…
Reference in a new issue