| GStreamer VA-API Plugins 0.10 Library Reference Manual | ||||
|---|---|---|---|---|
| Top | Description | Object Hierarchy | Properties | ||||
struct GstVaapiVideoPool; struct GstVaapiVideoPoolClass; GstVaapiDisplay * gst_vaapi_video_pool_get_display (GstVaapiVideoPool *pool); GstCaps * gst_vaapi_video_pool_get_caps (GstVaapiVideoPool *pool); gpointer gst_vaapi_video_pool_get_object (GstVaapiVideoPool *pool); void gst_vaapi_video_pool_put_object (GstVaapiVideoPool *pool,gpointer object); gboolean gst_vaapi_video_pool_add_object (GstVaapiVideoPool *pool,gpointer object); gboolean gst_vaapi_video_pool_add_objects (GstVaapiVideoPool *pool,GPtrArray *objects); guint gst_vaapi_video_pool_get_capacity (GstVaapiVideoPool *pool); void gst_vaapi_video_pool_set_capacity (GstVaapiVideoPool *pool,guint capacity); guint gst_vaapi_video_pool_get_size (GstVaapiVideoPool *pool); gboolean gst_vaapi_video_pool_reserve (GstVaapiVideoPool *pool,guint n);
"capacity" guint : Read / Write "caps" gpointer : Read / Write / Construct Only "display" GstVaapiDisplay* : Read / Write / Construct Only
struct GstVaapiVideoPool;
A pool of lazily allocated video objects. e.g. surfaces, images.
struct GstVaapiVideoPoolClass {
void (*set_caps) (GstVaapiVideoPool *pool, GstCaps *caps);
gpointer (*alloc_object)(GstVaapiVideoPool *pool, GstVaapiDisplay *display);
};
A pool base class used to hold video objects. e.g. surfaces, images.
GstVaapiDisplay * gst_vaapi_video_pool_get_display (GstVaapiVideoPool *pool);
Retrieves the GstVaapiDisplay the pool is bound to. The pool
owns the returned object and it shall not be unref'ed.
|
a GstVaapiVideoPool |
Returns : |
the GstVaapiDisplay the pool is bound to |
GstCaps * gst_vaapi_video_pool_get_caps (GstVaapiVideoPool *pool);
Retrieves the GstCaps the pool was created with. The pool owns
the returned object and it shall not be unref'ed.
|
a GstVaapiVideoPool |
Returns : |
the GstCaps the pool was created with |
gpointer gst_vaapi_video_pool_get_object (GstVaapiVideoPool *pool);
Retrieves a new object from the pool, or allocates a new one if
none was found. The pool holds a reference on the returned object
and thus shall be released through gst_vaapi_video_pool_put_object()
when it's no longer needed.
|
a GstVaapiVideoPool |
Returns : |
a possibly newly allocated object, or NULL on error |
void gst_vaapi_video_pool_put_object (GstVaapiVideoPool *pool,gpointer object);
Pushes the object back into the pool. The object shall be
obtained from the pool through gst_vaapi_video_pool_get_object().
Calling this function with an arbitrary object yields undefined
behaviour.
|
a GstVaapiVideoPool |
|
the object to add back to the pool |
gboolean gst_vaapi_video_pool_add_object (GstVaapiVideoPool *pool,gpointer object);
Adds the object to the pool. The pool then holds a reference on
the object. This operation does not change the capacity of the
pool.
|
a GstVaapiVideoPool |
|
the object to add to the pool |
Returns : |
TRUE on success. |
gboolean gst_vaapi_video_pool_add_objects (GstVaapiVideoPool *pool,GPtrArray *objects);
Adds the objects to the pool. The pool then holds a reference on
the objects. This operation does not change the capacity of the
pool and is just a wrapper around gst_vaapi_video_pool_add_object().
|
a GstVaapiVideoPool |
|
a GPtrArray of objects |
Returns : |
TRUE on success. |
guint gst_vaapi_video_pool_get_capacity (GstVaapiVideoPool *pool);
Returns the maximum number of objects in the pool. i.e. the maximum
number of objects that can be returned by gst_vaapi_video_pool_get_object().
|
a GstVaapiVideoPool |
Returns : |
the capacity of the pool |
void gst_vaapi_video_pool_set_capacity (GstVaapiVideoPool *pool,guint capacity);
Sets the maximum number of objects that can be allocated in the pool.
|
a GstVaapiVideoPool |
|
the maximal capacity of the pool |
guint gst_vaapi_video_pool_get_size (GstVaapiVideoPool *pool);
Returns the number of free objects available in the pool.
|
a GstVaapiVideoPool |
Returns : |
number of free objects in the pool |
gboolean gst_vaapi_video_pool_reserve (GstVaapiVideoPool *pool,guint n);
Pre-allocates up to n objects in the pool. If n is less than or
equal to the number of free and used objects in the pool, this call
has no effect. Otherwise, it is a request for allocation of
additional objects.
|
a GstVaapiVideoPool |
|
the number of objects to pre-allocate |
Returns : |
TRUE on success |
"capacity" property"capacity" guint : Read / Write
The maximum number of objects in the pool.
Default value: 0
"display" property"display" GstVaapiDisplay* : Read / Write / Construct Only
The GstVaapiDisplay this pool is bound to.