VdpVideoSurface; Video Surface object
[Core API]

Collaboration diagram for VdpVideoSurface; Video Surface object:

Detailed Description

A VdpVideoSurface stores YCbCr data in an internal format, with a variety of possible chroma sub-sampling options.

A VdpVideoSurface may be filled with:

VdpVideoSurface content may be accessed by:

VdpVideoSurfaces are not directly displayable. They must be converted into a displayable format using VdpVideoMixer objects.

See Video Mixer Usage for additional information.


Typedefs

typedef VdpStatus VdpVideoSurfaceQueryCapabilities (VdpDevice device, VdpChromaType surface_chroma_type, VdpBool *is_supported, uint32_t *max_width, uint32_t *max_height)
 Query the implementation's VdpVideoSurface capabilities.
typedef VdpStatus VdpVideoSurfaceQueryGetPutBitsYCbCrCapabilities (VdpDevice device, VdpChromaType surface_chroma_type, VdpYCbCrFormat bits_ycbcr_format, VdpBool *is_supported)
 Query the implementation's VdpVideoSurface GetBits/PutBits capabilities.
typedef uint32_t VdpVideoSurface
 An opaque handle representing a VdpVideoSurface object.
typedef VdpStatus VdpVideoSurfaceCreate (VdpDevice device, VdpChromaType chroma_type, uint32_t width, uint32_t height, VdpVideoSurface *surface)
 Create a VdpVideoSurface.
typedef VdpStatus VdpVideoSurfaceDestroy (VdpVideoSurface surface)
 Destroy a VdpVideoSurface.
typedef VdpStatus VdpVideoSurfaceGetParameters (VdpVideoSurface surface, VdpChromaType *chroma_type, uint32_t *width, uint32_t *height)
 Retrieve the parameters used to create a VdpVideoSurface.
typedef VdpStatus VdpVideoSurfaceGetBitsYCbCr (VdpVideoSurface surface, VdpYCbCrFormat destination_ycbcr_format, void *const *destination_data, uint32_t const *destination_pitches)
 Copy image data from a VdpVideoSurface to application memory in a specified YCbCr format.
typedef VdpStatus VdpVideoSurfacePutBitsYCbCr (VdpVideoSurface surface, VdpYCbCrFormat source_ycbcr_format, void const *const *source_data, uint32_t const *source_pitches)
 Copy image data from application memory in a specific YCbCr format to a VdpVideoSurface.


Typedef Documentation

typedef uint32_t VdpVideoSurface

An opaque handle representing a VdpVideoSurface object.

typedef VdpStatus VdpVideoSurfaceCreate(VdpDevice device, VdpChromaType chroma_type, uint32_t width, uint32_t height,VdpVideoSurface *surface)

Create a VdpVideoSurface.

Parameters:
[in] device The device that will contain the surface.
[in] chroma_type The chroma type of the new surface.
[in] width The width of the new surface.
[in] height The height of the new surface.
[out] surface The new surface's handle.
Returns:
VdpStatus The completion status of the operation.
The memory backing the surface may not be initialized during creation. Applications are expected to initialize any region that they use, via VdpDecoderRender or VdpVideoSurfacePutBitsYCbCr.

Destroy a VdpVideoSurface.

Parameters:
[in] surface The surface's handle.
Returns:
VdpStatus The completion status of the operation.

typedef VdpStatus VdpVideoSurfaceGetBitsYCbCr(VdpVideoSurface surface, VdpYCbCrFormat destination_ycbcr_format, void *const *destination_data, uint32_t const *destination_pitches)

Copy image data from a VdpVideoSurface to application memory in a specified YCbCr format.

Parameters:
[in] surface The surface's handle.
[in] destination_ycbcr_format The format of the application's data buffers.
[in] destination_data Pointers to the application data buffers into which the image data will be written. Note that this is an array of pointers, one per plane. The destination_format parameter will define how many planes are required.
[in] destination_pitches Pointers to the pitch values for the application data buffers. Note that this is an array of pointers, one per plane. The destination_format parameter will define how many planes are required.
Returns:
VdpStatus The completion status of the operation.

typedef VdpStatus VdpVideoSurfaceGetParameters(VdpVideoSurface surface,VdpChromaType *chroma_type, uint32_t *width, uint32_t *height)

Retrieve the parameters used to create a VdpVideoSurface.

Parameters:
[in] surface The surface's handle.
[out] chroma_type The chroma type of the surface.
[out] width The width of the surface.
[out] height The height of the surface.
Returns:
VdpStatus The completion status of the operation.

typedef VdpStatus VdpVideoSurfacePutBitsYCbCr(VdpVideoSurface surface, VdpYCbCrFormat source_ycbcr_format, void const *const *source_data, uint32_t const *source_pitches)

Copy image data from application memory in a specific YCbCr format to a VdpVideoSurface.

Parameters:
[in] surface The surface's handle.
[in] source_ycbcr_format The format of the application's data buffers.
[in] source_data Pointers to the application data buffers from which the image data will be copied. Note that this is an array of pointers, one per plane. The source_format parameter will define how many planes are required.
[in] source_pitches Pointers to the pitch values for the application data buffers. Note that this is an array of pointers, one per plane. The source_format parameter will define how many planes are required.
Returns:
VdpStatus The completion status of the operation.

typedef VdpStatus VdpVideoSurfaceQueryCapabilities(VdpDevice device, VdpChromaType surface_chroma_type,VdpBool *is_supported, uint32_t *max_width, uint32_t *max_height)

Query the implementation's VdpVideoSurface capabilities.

Parameters:
[in] device The device to query.
[in] surface_chroma_type The type of chroma type for which information is requested.
[out] is_supported Is this chroma type supported?
[out] max_width The maximum supported surface width for this chroma type.
[out] max_height The maximum supported surface height for this chroma type.
Returns:
VdpStatus The completion status of the operation.

typedef VdpStatus VdpVideoSurfaceQueryGetPutBitsYCbCrCapabilities(VdpDevice device, VdpChromaType surface_chroma_type, VdpYCbCrFormat bits_ycbcr_format,VdpBool *is_supported)

Query the implementation's VdpVideoSurface GetBits/PutBits capabilities.

Parameters:
[in] device The device to query.
[in] surface_chroma_type The type of chroma type for which information is requested.
[in] bits_ycbcr_format The format of application "bits" buffer for which information is requested.
[out] is_supported Is this chroma type supported?
Returns:
VdpStatus The completion status of the operation.


Generated on Mon Dec 22 07:09:02 2008 for VDPAU by  doxygen 1.5.6