Top | ![]() |
![]() |
![]() |
![]() |
GstVaapiSurface * | gst_vaapi_surface_new () |
GstVaapiSurface * | gst_vaapi_surface_new_with_format () |
GstVaapiID | gst_vaapi_surface_get_id () |
GstVaapiChromaType | gst_vaapi_surface_get_chroma_type () |
GstVideoFormat | gst_vaapi_surface_get_format () |
guint | gst_vaapi_surface_get_width () |
guint | gst_vaapi_surface_get_height () |
void | gst_vaapi_surface_get_size () |
GstVaapiImage * | gst_vaapi_surface_derive_image () |
gboolean | gst_vaapi_surface_get_image () |
gboolean | gst_vaapi_surface_put_image () |
gboolean | gst_vaapi_surface_associate_subpicture () |
gboolean | gst_vaapi_surface_deassociate_subpicture () |
gboolean | gst_vaapi_surface_sync () |
gboolean | gst_vaapi_surface_query_status () |
GstVaapiSurface * gst_vaapi_surface_new (GstVaapiDisplay *display
,GstVaapiChromaType chroma_type
,guint width
,guint height
);
Creates a new GstVaapiSurface with the specified chroma format and dimensions.
GstVaapiSurface * gst_vaapi_surface_new_with_format (GstVaapiDisplay *display
,GstVideoFormat format
,guint width
,guint height
);
Creates a new GstVaapiSurface with the specified pixel format and dimensions.
display |
||
format |
the surface format |
|
width |
the requested surface width |
|
height |
the requested surface height |
the newly allocated GstVaapiSurface object, or NULL
if creation of VA surface with explicit pixel format is not
supported or failed.
GstVaapiID
gst_vaapi_surface_get_id (GstVaapiSurface *surface
);
Returns the underlying VASurfaceID of the surface
.
GstVaapiChromaType
gst_vaapi_surface_get_chroma_type (GstVaapiSurface *surface
);
Returns the GstVaapiChromaType the surface
was created with.
GstVideoFormat
gst_vaapi_surface_get_format (GstVaapiSurface *surface
);
Returns the GstVideoFormat the surface
was created with.
the GstVideoFormat, or GST_VIDEO_FORMAT_ENCODED
if
the surface was not created with an explicit video format, or if
the underlying video format could not be determined
guint
gst_vaapi_surface_get_width (GstVaapiSurface *surface
);
Returns the surface
width.
guint
gst_vaapi_surface_get_height (GstVaapiSurface *surface
);
Returns the surface
height.
void gst_vaapi_surface_get_size (GstVaapiSurface *surface
,guint *pwidth
,guint *pheight
);
Retrieves the dimensions of a GstVaapiSurface.
GstVaapiImage *
gst_vaapi_surface_derive_image (GstVaapiSurface *surface
);
Derives a GstVaapiImage from the surface
. This image buffer can
then be mapped/unmapped for direct CPU access. This operation is
only possible if the underlying implementation supports direct
rendering capabilities and internal surface formats that can be
represented with a GstVaapiImage.
When the operation is not possible, the function returns NULL
and
the user should then fallback to using gst_vaapi_surface_get_image()
or gst_vaapi_surface_put_image()
to accomplish the same task in an
indirect manner (additional copy).
An image created with gst_vaapi_surface_derive_image()
should be
unreferenced when it's no longer needed. The image and image buffer
data structures will be destroyed. However, the surface contents
will remain unchanged until destroyed through the last call to
gst_vaapi_object_unref()
.
gboolean gst_vaapi_surface_get_image (GstVaapiSurface *surface
,GstVaapiImage *image
);
Retrieves surface data into a GstVaapiImage. The image
must have
a format supported by the surface
.
gboolean gst_vaapi_surface_put_image (GstVaapiSurface *surface
,GstVaapiImage *image
);
Copies data from a GstVaapiImage into a surface
. The image
must
have a format supported by the surface
.
gboolean gst_vaapi_surface_associate_subpicture (GstVaapiSurface *surface
,GstVaapiSubpicture *subpicture
,const GstVaapiRectangle *src_rect
,const GstVaapiRectangle *dst_rect
);
Associates the subpicture
with the surface
. The src_rect
coordinates and size are relative to the source image bound to
subpicture
. The dst_rect
coordinates and size are relative to the
target surface
. Note that the surface
holds an additional
reference to the subpicture
.
gboolean gst_vaapi_surface_deassociate_subpicture (GstVaapiSurface *surface
,GstVaapiSubpicture *subpicture
);
Deassociates subpicture
from surface
. Other associations are kept.
gboolean
gst_vaapi_surface_sync (GstVaapiSurface *surface
);
Blocks until all pending operations on the surface
have been
completed.
gboolean gst_vaapi_surface_query_status (GstVaapiSurface *surface
,GstVaapiSurfaceStatus *pstatus
);
Finds out any pending operations on the surface
. The
GstVaapiSurfaceStatus flags are returned into pstatus
.
The set of all chroma types for GstVaapiSurface.
The set of all surface status for GstVaapiSurface.
The set of all render flags for gst_vaapi_window_put_surface()
.
selects the top field of the surface |
||
selects the bottom field of the surface |
||
selects the entire surface |
||
uses ITU-R BT.601 standard for color space conversion |
||
uses ITU-R BT.709 standard for color space conversion |
||
uses ITU-R BT.470-2 System M standard for color space conversion |
||
uses ITU-R BT.470-2 System B, G standard for color space conversion |
||
uses SMPTE-170M standard for color space conversion |
||
uses SMPTE-240M standard for color space conversion |
||