GstVaapiSurfaceProxy

GstVaapiSurfaceProxy — VA surface proxy

Synopsis

GstVaapiContext *   gst_vaapi_surface_proxy_get_context (GstVaapiSurfaceProxy *proxy);
GstVaapiSurface *   gst_vaapi_surface_proxy_get_surface (GstVaapiSurfaceProxy *proxy);
GstVaapiID          gst_vaapi_surface_proxy_get_surface_id
                                                        (GstVaapiSurfaceProxy *proxy);
gpointer            gst_vaapi_surface_proxy_get_user_data
                                                        (GstVaapiSurfaceProxy *proxy);
GstVaapiSurfaceProxy * gst_vaapi_surface_proxy_new      (GstVaapiContext *context,
                                                         GstVaapiSurface *surface);
GstVaapiSurfaceProxy * gst_vaapi_surface_proxy_ref      (GstVaapiSurfaceProxy *proxy);
void                gst_vaapi_surface_proxy_replace     (GstVaapiSurfaceProxy **old_proxy_ptr,
                                                         GstVaapiSurfaceProxy *new_proxy);
void                gst_vaapi_surface_proxy_set_context (GstVaapiSurfaceProxy *proxy,
                                                         GstVaapiContext *context);
void                gst_vaapi_surface_proxy_set_surface (GstVaapiSurfaceProxy *proxy,
                                                         GstVaapiSurface *surface);
void                gst_vaapi_surface_proxy_set_user_data
                                                        (GstVaapiSurfaceProxy *proxy,
                                                         gpointer user_data,
                                                         GDestroyNotify destroy_notify);
void                gst_vaapi_surface_proxy_unref       (GstVaapiSurfaceProxy *proxy);

Description

Details

gst_vaapi_surface_proxy_get_context ()

GstVaapiContext *   gst_vaapi_surface_proxy_get_context (GstVaapiSurfaceProxy *proxy);

Returns the GstVaapiContext stored in the proxy.

proxy :

a GstVaapiSurfaceProxy

Returns :

the GstVaapiContext

gst_vaapi_surface_proxy_get_surface ()

GstVaapiSurface *   gst_vaapi_surface_proxy_get_surface (GstVaapiSurfaceProxy *proxy);

Returns the GstVaapiSurface stored in the proxy.

proxy :

a GstVaapiSurfaceProxy

Returns :

the GstVaapiSurface

gst_vaapi_surface_proxy_get_surface_id ()

GstVaapiID          gst_vaapi_surface_proxy_get_surface_id
                                                        (GstVaapiSurfaceProxy *proxy);

Returns the VA surface ID stored in the proxy.

proxy :

a GstVaapiSurfaceProxy

Returns :

the GstVaapiID

gst_vaapi_surface_proxy_get_user_data ()

gpointer            gst_vaapi_surface_proxy_get_user_data
                                                        (GstVaapiSurfaceProxy *proxy);

Gets user-provided data set on the object via a previous call to gst_vaapi_surface_proxy_set_user_data().

proxy :

a GstVaapiSurfaceProxy

Returns :

The previously set user_data. [transfer none]

gst_vaapi_surface_proxy_new ()

GstVaapiSurfaceProxy * gst_vaapi_surface_proxy_new      (GstVaapiContext *context,
                                                         GstVaapiSurface *surface);

Creates a new GstVaapiSurfaceProxy with the specified context and surface.

context :

a GstVaapiContext

surface :

a GstVaapiSurface

Returns :

the newly allocated GstVaapiSurfaceProxy object

gst_vaapi_surface_proxy_ref ()

GstVaapiSurfaceProxy * gst_vaapi_surface_proxy_ref      (GstVaapiSurfaceProxy *proxy);

Atomically increases the reference count of the given proxy by one.

proxy :

a GstVaapiSurfaceProxy

Returns :

The same proxy argument

gst_vaapi_surface_proxy_replace ()

void                gst_vaapi_surface_proxy_replace     (GstVaapiSurfaceProxy **old_proxy_ptr,
                                                         GstVaapiSurfaceProxy *new_proxy);

Atomically replaces the proxy object held in old_proxy_ptr with new_proxy. This means that old_proxy_ptr shall reference a valid object. However, new_proxy can be NULL.

old_proxy_ptr :

a pointer to a GstVaapiSurfaceProxy

new_proxy :

a GstVaapiSurfaceProxy

gst_vaapi_surface_proxy_set_context ()

void                gst_vaapi_surface_proxy_set_context (GstVaapiSurfaceProxy *proxy,
                                                         GstVaapiContext *context);

Stores a new context into the proxy. The proxy releases the previous reference, if any, and then holds a reference to the new context.

proxy :

a GstVaapiSurfaceProxy

context :

the new GstVaapiContext to be stored in proxy

gst_vaapi_surface_proxy_set_surface ()

void                gst_vaapi_surface_proxy_set_surface (GstVaapiSurfaceProxy *proxy,
                                                         GstVaapiSurface *surface);

Stores a new surface into the proxy. The proxy releases the previous reference, if any, and then holds a reference to the new surface.

proxy :

a GstVaapiSurfaceProxy

surface :

the new GstVaapiSurface to be stored in proxy

gst_vaapi_surface_proxy_set_user_data ()

void                gst_vaapi_surface_proxy_set_user_data
                                                        (GstVaapiSurfaceProxy *proxy,
                                                         gpointer user_data,
                                                         GDestroyNotify destroy_notify);

Sets user_data on the object and the GDestroyNotify that will be called when the data is freed.

If some user_data was previously set, then the former destroy_notify function will be called before the user_data is replaced.

proxy :

a GstVaapiSurfaceProxy

user_data :

user-provided data

destroy_notify :

a GDestroyNotify. [closure user_data]

gst_vaapi_surface_proxy_unref ()

void                gst_vaapi_surface_proxy_unref       (GstVaapiSurfaceProxy *proxy);

Atomically decreases the reference count of the proxy by one. If the reference count reaches zero, the object will be free'd.

proxy :

a GstVaapiSurfaceProxy