static gboolean
set_surface_proxy (GstVaapiVideoMeta * meta, GstVaapiSurfaceProxy * proxy)
{
  GstVaapiSurface *surface;

  surface = GST_VAAPI_SURFACE_PROXY_SURFACE (proxy);
  if (!surface)
    return FALSE;

  meta->proxy = gst_vaapi_surface_proxy_ref (proxy);
  set_display (meta, gst_vaapi_object_get_display (GST_VAAPI_OBJECT (surface)));
  return TRUE;
}
示例#2
0
static void
gst_vaapi_object_get_property(
    GObject    *gobject,
    guint       prop_id,
    GValue     *value,
    GParamSpec *pspec
)
{
    GstVaapiObject * const object = GST_VAAPI_OBJECT(gobject);

    switch (prop_id) {
    case PROP_DISPLAY:
        g_value_set_object(value, gst_vaapi_object_get_display(object));
        break;
    case PROP_ID:
        gst_vaapi_value_set_id(value, gst_vaapi_object_get_id(object));
        break;
    default:
        G_OBJECT_WARN_INVALID_PROPERTY_ID(gobject, prop_id, pspec);
        break;
    }
}
static inline void
set_image (GstVaapiVideoMeta * meta, GstVaapiImage * image)
{
  meta->image = gst_vaapi_object_ref (image);
  set_display (meta, gst_vaapi_object_get_display (GST_VAAPI_OBJECT (image)));
}