vaapivideobufferpool: add GstVaapiVideoBufferPoolAcquireParams

Useful to let the pool know the current surface proxy when calling
gst_buffer_pool_alloc_buffer() / gst_buffer_pool_acquire_buffer()

https://bugzilla.gnome.org/show_bug.cgi?id=755072
This commit is contained in:
Julien Isorce 2016-10-19 15:55:27 +01:00 committed by Víctor Manuel Jáquez Leal
parent 4f037a036b
commit 9132510ce0

View file

@ -25,6 +25,7 @@
#include <gst/video/gstvideopool.h>
#include <gst/vaapi/gstvaapidisplay.h>
#include <gst/vaapi/gstvaapisurfaceproxy.h>
G_BEGIN_DECLS
@ -41,6 +42,7 @@ G_BEGIN_DECLS
#define GST_VAAPI_IS_VIDEO_BUFFER_POOL_CLASS(klass) \
(G_TYPE_CHECK_CLASS_TYPE ((klass), GST_VAAPI_TYPE_VIDEO_BUFFER_POOL))
typedef struct _GstVaapiVideoBufferPoolAcquireParams GstVaapiVideoBufferPoolAcquireParams;
typedef struct _GstVaapiVideoBufferPool GstVaapiVideoBufferPool;
typedef struct _GstVaapiVideoBufferPoolClass GstVaapiVideoBufferPoolClass;
typedef struct _GstVaapiVideoBufferPoolPrivate GstVaapiVideoBufferPoolPrivate;
@ -83,6 +85,24 @@ typedef enum
GST_VAAPI_VIDEO_BUFFER_POOL_OPTION_GL_TEXTURE_UPLOAD = (1u << 2),
} GstVaapiVideoBufferPoolOption;
/**
* GstVaapiVideoBufferPoolAcquireParams:
* @proxy: the #GstVaapiSurfaceProxy associated to the dmabuf-base
* memory
*
* Parameters passed to the gst_buffer_pool_acquire_buffer() function
* on a #GstVaapiVideoBufferPool, to control the allocation of the
* buffer.
*
* This is an extension of #GstBufferPoolAcquireParams
*/
struct _GstVaapiVideoBufferPoolAcquireParams
{
GstBufferPoolAcquireParams parent_instance;
GstVaapiSurfaceProxy *proxy;
};
/**
* GstVaapiVideoBufferPool:
*