| GStreamer VA-API Plugins 1.2 Library Reference Manual | ||||
|---|---|---|---|---|
| Top | Description | ||||
GstVaapiTexture; GstVaapiTexture * gst_vaapi_texture_new (GstVaapiDisplay *display,GLenum target,GLenum format,guint width,guint height); GstVaapiTexture * gst_vaapi_texture_new_with_texture (GstVaapiDisplay *display,GLuint texture_id,GLenum target,GLenum format); GLuint gst_vaapi_texture_get_id (GstVaapiTexture *texture); GLenum gst_vaapi_texture_get_target (GstVaapiTexture *texture); GLenum gst_vaapi_texture_get_format (GstVaapiTexture *texture); guint gst_vaapi_texture_get_width (GstVaapiTexture *texture); guint gst_vaapi_texture_get_height (GstVaapiTexture *texture); void gst_vaapi_texture_get_size (GstVaapiTexture *texture,guint *pwidth,guint *pheight); gboolean gst_vaapi_texture_put_surface (GstVaapiTexture *texture,GstVaapiSurface *surface,guint flags);
typedef struct _GstVaapiTexture GstVaapiTexture;
Base object for system-dependent textures.
GstVaapiTexture * gst_vaapi_texture_new (GstVaapiDisplay *display,GLenum target,GLenum format,guint width,guint height);
Creates a texture with the specified dimensions, target and
format. Note that only GL_TEXTURE_2D target and GL_RGBA or
GL_BGRA formats are supported at this time.
The application shall maintain the live GL context itself. That is,
gst_vaapi_window_glx_make_current() must be called beforehand, or
any other function like glXMakeCurrent() if the context is managed
outside of this library.
|
a GstVaapiDisplay |
|
the target to which the texture is bound |
|
the format of the pixel data |
|
the requested width, in pixels |
|
the requested height, in pixels |
Returns : |
the newly created GstVaapiTexture object |
GstVaapiTexture * gst_vaapi_texture_new_with_texture (GstVaapiDisplay *display,GLuint texture_id,GLenum target,GLenum format);
Creates a texture from an existing GL texture, with the specified
target and format. Note that only GL_TEXTURE_2D target and
GL_RGBA or GL_BGRA formats are supported at this time. The
dimensions will be retrieved from the texture_id.
The application shall maintain the live GL context itself. That is,
gst_vaapi_window_glx_make_current() must be called beforehand, or
any other function like glXMakeCurrent() if the context is managed
outside of this library.
|
a GstVaapiDisplay |
|
the foreign GL texture name to use |
|
the target to which the texture is bound |
|
the format of the pixel data |
Returns : |
the newly created GstVaapiTexture object |
GLuint gst_vaapi_texture_get_id (GstVaapiTexture *texture);
Returns the underlying texture id of the texture.
|
a GstVaapiTexture |
Returns : |
the underlying texture id of the texture
|
GLenum gst_vaapi_texture_get_target (GstVaapiTexture *texture);
Returns the texture target type
|
a GstVaapiTexture |
Returns : |
the texture target |
GLenum gst_vaapi_texture_get_format (GstVaapiTexture *texture);
Returns the texture format
|
a GstVaapiTexture |
Returns : |
the texture format |
guint gst_vaapi_texture_get_width (GstVaapiTexture *texture);
Returns the texture width.
|
a GstVaapiTexture |
Returns : |
the texture width, in pixels |
guint gst_vaapi_texture_get_height (GstVaapiTexture *texture);
Returns the texture height.
|
a GstVaapiTexture |
Returns : |
the texture height, in pixels. |
void gst_vaapi_texture_get_size (GstVaapiTexture *texture,guint *pwidth,guint *pheight);
Retrieves the dimensions of a GstVaapiTexture.
|
a GstVaapiTexture |
|
return location for the width, or NULL
|
|
return location for the height, or NULL
|
gboolean gst_vaapi_texture_put_surface (GstVaapiTexture *texture,GstVaapiSurface *surface,guint flags);
Renders the surface into the àtexture. The flags specify how
de-interlacing (if needed), color space conversion, scaling and
other postprocessing transformations are performed.
|
a GstVaapiTexture |
|
a GstVaapiSurface |
|
postprocessing flags. See GstVaapiTextureRenderFlags |
Returns : |
TRUE on success |