vaapivideocontext: add gst_vaapi_video_context_set_display()

This function set the display to an already created context. This function is
going to be used later.

Also, gst_vaapi_video_context_new_with_display() now uses this function.

Signed-off-by: Víctor Manuel Jáquez Leal <victorx.jaquez@intel.com>

https://bugzilla.gnome.org/show_bug.cgi?id=757598
This commit is contained in:
Víctor Manuel Jáquez Leal 2015-11-04 20:29:03 +01:00
parent ef3fb4afaf
commit ed280f5b84
2 changed files with 19 additions and 4 deletions

View file

@ -52,17 +52,27 @@ _init_context_debug (void)
#endif
}
void
gst_vaapi_video_context_set_display (GstContext * context,
GstVaapiDisplay * display)
{
GstStructure *structure;
g_return_if_fail (context != NULL);
structure = gst_context_writable_structure (context);
gst_structure_set (structure, GST_VAAPI_DISPLAY_CONTEXT_TYPE_NAME,
GST_VAAPI_TYPE_DISPLAY, display, NULL);
}
GstContext *
gst_vaapi_video_context_new_with_display (GstVaapiDisplay * display,
gboolean persistent)
{
GstContext *context;
GstStructure *structure;
context = gst_context_new (GST_VAAPI_DISPLAY_CONTEXT_TYPE_NAME, persistent);
structure = gst_context_writable_structure (context);
gst_structure_set (structure, GST_VAAPI_DISPLAY_CONTEXT_TYPE_NAME,
GST_VAAPI_TYPE_DISPLAY, display, NULL);
gst_vaapi_video_context_set_display (context, display);
return context;
}

View file

@ -31,6 +31,11 @@
#define GST_VAAPI_DISPLAY_CONTEXT_TYPE_NAME "gst.vaapi.Display"
G_GNUC_INTERNAL
void
gst_vaapi_video_context_set_display (GstContext * context,
GstVaapiDisplay * display);
G_GNUC_INTERNAL
GstContext *
gst_vaapi_video_context_new_with_display (GstVaapiDisplay * display,