GstVaapiSurfaceProxy

GstVaapiSurfaceProxy — VA surface proxy

Synopsis

GstClockTime        gst_vaapi_surface_proxy_get_duration
                                                        (GstVaapiSurfaceProxy *proxy);
guint               gst_vaapi_surface_proxy_get_flags   (GstVaapiSurfaceProxy *proxy);
GstVaapiSurface *   gst_vaapi_surface_proxy_get_surface (GstVaapiSurfaceProxy *proxy);
GstVaapiID          gst_vaapi_surface_proxy_get_surface_id
                                                        (GstVaapiSurfaceProxy *proxy);
GstClockTime        gst_vaapi_surface_proxy_get_timestamp
                                                        (GstVaapiSurfaceProxy *proxy);
GstVaapiSurfaceProxy * gst_vaapi_surface_proxy_new_from_pool
                                                        (GstVaapiSurfacePool *pool);
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_destroy_notify
                                                        (GstVaapiSurfaceProxy *proxy,
                                                         GDestroyNotify destroy_func,
                                                         gpointer user_data);
void                gst_vaapi_surface_proxy_unref       (GstVaapiSurfaceProxy *proxy);

Description

Details

gst_vaapi_surface_proxy_get_duration ()

GstClockTime        gst_vaapi_surface_proxy_get_duration
                                                        (GstVaapiSurfaceProxy *proxy);

Returns the presentation duration for this surface proxy.

proxy :

a GstVaapiSurfaceProxy

Returns :

the presentation duration

gst_vaapi_surface_proxy_get_flags ()

guint               gst_vaapi_surface_proxy_get_flags   (GstVaapiSurfaceProxy *proxy);

Returns the GstVaapiSurfaceProxyFlags associated with this surface proxy.

proxy :

a GstVaapiSurfaceProxy

Returns :

the set of GstVaapiSurfaceProxyFlags

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_timestamp ()

GstClockTime        gst_vaapi_surface_proxy_get_timestamp
                                                        (GstVaapiSurfaceProxy *proxy);

Returns the presentation timestamp for this surface proxy.

proxy :

a GstVaapiSurfaceProxy

Returns :

the presentation timestamp

gst_vaapi_surface_proxy_new_from_pool ()

GstVaapiSurfaceProxy * gst_vaapi_surface_proxy_new_from_pool
                                                        (GstVaapiSurfacePool *pool);


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_destroy_notify ()

void                gst_vaapi_surface_proxy_set_destroy_notify
                                                        (GstVaapiSurfaceProxy *proxy,
                                                         GDestroyNotify destroy_func,
                                                         gpointer user_data);

Sets destroy_func as the function to call when the surface proxy was released. At this point, the proxy object is considered released, i.e. the underlying data storage is no longer valid and the callback function shall not expect anything from that.

proxy :

a GstVaapiSurfaceProxy

destroy_func :

a GDestroyNotify function

user_data :

some extra data to pass to the destroy_func function

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