VDPAU
Macros | Typedefs
Entry Point Retrieval

In order to facilitate multiple implementations of VDPAU co-existing within a single process, all functionality is available via function pointers. The mechanism to retrieve those function pointers is described below. More...

Collaboration diagram for Entry Point Retrieval:

Macros

#define VDP_FUNC_ID_GET_ERROR_STRING
 
#define VDP_FUNC_ID_GET_PROC_ADDRESS
 
#define VDP_FUNC_ID_GET_API_VERSION
 
#define VDP_FUNC_ID_GET_INFORMATION_STRING
 
#define VDP_FUNC_ID_DEVICE_DESTROY
 
#define VDP_FUNC_ID_GENERATE_CSC_MATRIX
 
#define VDP_FUNC_ID_VIDEO_SURFACE_QUERY_CAPABILITIES
 
#define VDP_FUNC_ID_VIDEO_SURFACE_QUERY_GET_PUT_BITS_Y_CB_CR_CAPABILITIES
 
#define VDP_FUNC_ID_VIDEO_SURFACE_CREATE
 
#define VDP_FUNC_ID_VIDEO_SURFACE_DESTROY
 
#define VDP_FUNC_ID_VIDEO_SURFACE_GET_PARAMETERS
 
#define VDP_FUNC_ID_VIDEO_SURFACE_GET_BITS_Y_CB_CR
 
#define VDP_FUNC_ID_VIDEO_SURFACE_PUT_BITS_Y_CB_CR
 
#define VDP_FUNC_ID_OUTPUT_SURFACE_QUERY_CAPABILITIES
 
#define VDP_FUNC_ID_OUTPUT_SURFACE_QUERY_GET_PUT_BITS_NATIVE_CAPABILITIES
 
#define VDP_FUNC_ID_OUTPUT_SURFACE_QUERY_PUT_BITS_INDEXED_CAPABILITIES
 
#define VDP_FUNC_ID_OUTPUT_SURFACE_QUERY_PUT_BITS_Y_CB_CR_CAPABILITIES
 
#define VDP_FUNC_ID_OUTPUT_SURFACE_CREATE
 
#define VDP_FUNC_ID_OUTPUT_SURFACE_DESTROY
 
#define VDP_FUNC_ID_OUTPUT_SURFACE_GET_PARAMETERS
 
#define VDP_FUNC_ID_OUTPUT_SURFACE_GET_BITS_NATIVE
 
#define VDP_FUNC_ID_OUTPUT_SURFACE_PUT_BITS_NATIVE
 
#define VDP_FUNC_ID_OUTPUT_SURFACE_PUT_BITS_INDEXED
 
#define VDP_FUNC_ID_OUTPUT_SURFACE_PUT_BITS_Y_CB_CR
 
#define VDP_FUNC_ID_BITMAP_SURFACE_QUERY_CAPABILITIES
 
#define VDP_FUNC_ID_BITMAP_SURFACE_CREATE
 
#define VDP_FUNC_ID_BITMAP_SURFACE_DESTROY
 
#define VDP_FUNC_ID_BITMAP_SURFACE_GET_PARAMETERS
 
#define VDP_FUNC_ID_BITMAP_SURFACE_PUT_BITS_NATIVE
 
#define VDP_FUNC_ID_OUTPUT_SURFACE_RENDER_OUTPUT_SURFACE
 
#define VDP_FUNC_ID_OUTPUT_SURFACE_RENDER_BITMAP_SURFACE
 
#define VDP_FUNC_ID_OUTPUT_SURFACE_RENDER_VIDEO_SURFACE_LUMA
 
#define VDP_FUNC_ID_DECODER_QUERY_CAPABILITIES
 
#define VDP_FUNC_ID_DECODER_CREATE
 
#define VDP_FUNC_ID_DECODER_DESTROY
 
#define VDP_FUNC_ID_DECODER_GET_PARAMETERS
 
#define VDP_FUNC_ID_DECODER_RENDER
 
#define VDP_FUNC_ID_VIDEO_MIXER_QUERY_FEATURE_SUPPORT
 
#define VDP_FUNC_ID_VIDEO_MIXER_QUERY_PARAMETER_SUPPORT
 
#define VDP_FUNC_ID_VIDEO_MIXER_QUERY_ATTRIBUTE_SUPPORT
 
#define VDP_FUNC_ID_VIDEO_MIXER_QUERY_PARAMETER_VALUE_RANGE
 
#define VDP_FUNC_ID_VIDEO_MIXER_QUERY_ATTRIBUTE_VALUE_RANGE
 
#define VDP_FUNC_ID_VIDEO_MIXER_CREATE
 
#define VDP_FUNC_ID_VIDEO_MIXER_SET_FEATURE_ENABLES
 
#define VDP_FUNC_ID_VIDEO_MIXER_SET_ATTRIBUTE_VALUES
 
#define VDP_FUNC_ID_VIDEO_MIXER_GET_FEATURE_SUPPORT
 
#define VDP_FUNC_ID_VIDEO_MIXER_GET_FEATURE_ENABLES
 
#define VDP_FUNC_ID_VIDEO_MIXER_GET_PARAMETER_VALUES
 
#define VDP_FUNC_ID_VIDEO_MIXER_GET_ATTRIBUTE_VALUES
 
#define VDP_FUNC_ID_VIDEO_MIXER_DESTROY
 
#define VDP_FUNC_ID_VIDEO_MIXER_RENDER
 
#define VDP_FUNC_ID_PRESENTATION_QUEUE_TARGET_DESTROY
 
#define VDP_FUNC_ID_PRESENTATION_QUEUE_CREATE
 
#define VDP_FUNC_ID_PRESENTATION_QUEUE_DESTROY
 
#define VDP_FUNC_ID_PRESENTATION_QUEUE_SET_BACKGROUND_COLOR
 
#define VDP_FUNC_ID_PRESENTATION_QUEUE_GET_BACKGROUND_COLOR
 
#define VDP_FUNC_ID_PRESENTATION_QUEUE_GET_TIME
 
#define VDP_FUNC_ID_PRESENTATION_QUEUE_DISPLAY
 
#define VDP_FUNC_ID_PRESENTATION_QUEUE_BLOCK_UNTIL_SURFACE_IDLE
 
#define VDP_FUNC_ID_PRESENTATION_QUEUE_QUERY_SURFACE_STATUS
 
#define VDP_FUNC_ID_PREEMPTION_CALLBACK_REGISTER
 
#define VDP_FUNC_ID_DECODER_QUERY_CAPABILITY
 
#define VDP_FUNC_ID_BASE_WINSYS   0x1000
 

Typedefs

typedef uint32_t VdpFuncId
 A type suitable for VdpGetProcAddress's function_id parameter. More...
 
typedef VdpStatus VdpGetProcAddress(VdpDevice device, VdpFuncId function_id, void **function_pointer)
 Retrieve a VDPAU function pointer. More...
 

Detailed Description

In order to facilitate multiple implementations of VDPAU co-existing within a single process, all functionality is available via function pointers. The mechanism to retrieve those function pointers is described below.

Macro Definition Documentation

◆ VDP_FUNC_ID_BASE_WINSYS

#define VDP_FUNC_ID_BASE_WINSYS   0x1000

◆ VDP_FUNC_ID_BITMAP_SURFACE_CREATE

#define VDP_FUNC_ID_BITMAP_SURFACE_CREATE

◆ VDP_FUNC_ID_BITMAP_SURFACE_DESTROY

#define VDP_FUNC_ID_BITMAP_SURFACE_DESTROY

◆ VDP_FUNC_ID_BITMAP_SURFACE_GET_PARAMETERS

#define VDP_FUNC_ID_BITMAP_SURFACE_GET_PARAMETERS

◆ VDP_FUNC_ID_BITMAP_SURFACE_PUT_BITS_NATIVE

#define VDP_FUNC_ID_BITMAP_SURFACE_PUT_BITS_NATIVE

◆ VDP_FUNC_ID_BITMAP_SURFACE_QUERY_CAPABILITIES

#define VDP_FUNC_ID_BITMAP_SURFACE_QUERY_CAPABILITIES

◆ VDP_FUNC_ID_DECODER_CREATE

#define VDP_FUNC_ID_DECODER_CREATE

◆ VDP_FUNC_ID_DECODER_DESTROY

#define VDP_FUNC_ID_DECODER_DESTROY

◆ VDP_FUNC_ID_DECODER_GET_PARAMETERS

#define VDP_FUNC_ID_DECODER_GET_PARAMETERS

◆ VDP_FUNC_ID_DECODER_QUERY_CAPABILITIES

#define VDP_FUNC_ID_DECODER_QUERY_CAPABILITIES

◆ VDP_FUNC_ID_DECODER_QUERY_CAPABILITY

#define VDP_FUNC_ID_DECODER_QUERY_CAPABILITY

◆ VDP_FUNC_ID_DECODER_RENDER

#define VDP_FUNC_ID_DECODER_RENDER

◆ VDP_FUNC_ID_DEVICE_DESTROY

#define VDP_FUNC_ID_DEVICE_DESTROY

◆ VDP_FUNC_ID_GENERATE_CSC_MATRIX

#define VDP_FUNC_ID_GENERATE_CSC_MATRIX

◆ VDP_FUNC_ID_GET_API_VERSION

#define VDP_FUNC_ID_GET_API_VERSION

◆ VDP_FUNC_ID_GET_ERROR_STRING

#define VDP_FUNC_ID_GET_ERROR_STRING

◆ VDP_FUNC_ID_GET_INFORMATION_STRING

#define VDP_FUNC_ID_GET_INFORMATION_STRING

◆ VDP_FUNC_ID_GET_PROC_ADDRESS

#define VDP_FUNC_ID_GET_PROC_ADDRESS

◆ VDP_FUNC_ID_OUTPUT_SURFACE_CREATE

#define VDP_FUNC_ID_OUTPUT_SURFACE_CREATE

◆ VDP_FUNC_ID_OUTPUT_SURFACE_DESTROY

#define VDP_FUNC_ID_OUTPUT_SURFACE_DESTROY

◆ VDP_FUNC_ID_OUTPUT_SURFACE_GET_BITS_NATIVE

#define VDP_FUNC_ID_OUTPUT_SURFACE_GET_BITS_NATIVE

◆ VDP_FUNC_ID_OUTPUT_SURFACE_GET_PARAMETERS

#define VDP_FUNC_ID_OUTPUT_SURFACE_GET_PARAMETERS

◆ VDP_FUNC_ID_OUTPUT_SURFACE_PUT_BITS_INDEXED

#define VDP_FUNC_ID_OUTPUT_SURFACE_PUT_BITS_INDEXED

◆ VDP_FUNC_ID_OUTPUT_SURFACE_PUT_BITS_NATIVE

#define VDP_FUNC_ID_OUTPUT_SURFACE_PUT_BITS_NATIVE

◆ VDP_FUNC_ID_OUTPUT_SURFACE_PUT_BITS_Y_CB_CR

#define VDP_FUNC_ID_OUTPUT_SURFACE_PUT_BITS_Y_CB_CR

◆ VDP_FUNC_ID_OUTPUT_SURFACE_QUERY_CAPABILITIES

#define VDP_FUNC_ID_OUTPUT_SURFACE_QUERY_CAPABILITIES

◆ VDP_FUNC_ID_OUTPUT_SURFACE_QUERY_GET_PUT_BITS_NATIVE_CAPABILITIES

#define VDP_FUNC_ID_OUTPUT_SURFACE_QUERY_GET_PUT_BITS_NATIVE_CAPABILITIES

◆ VDP_FUNC_ID_OUTPUT_SURFACE_QUERY_PUT_BITS_INDEXED_CAPABILITIES

#define VDP_FUNC_ID_OUTPUT_SURFACE_QUERY_PUT_BITS_INDEXED_CAPABILITIES

◆ VDP_FUNC_ID_OUTPUT_SURFACE_QUERY_PUT_BITS_Y_CB_CR_CAPABILITIES

#define VDP_FUNC_ID_OUTPUT_SURFACE_QUERY_PUT_BITS_Y_CB_CR_CAPABILITIES

◆ VDP_FUNC_ID_OUTPUT_SURFACE_RENDER_BITMAP_SURFACE

#define VDP_FUNC_ID_OUTPUT_SURFACE_RENDER_BITMAP_SURFACE

◆ VDP_FUNC_ID_OUTPUT_SURFACE_RENDER_OUTPUT_SURFACE

#define VDP_FUNC_ID_OUTPUT_SURFACE_RENDER_OUTPUT_SURFACE

◆ VDP_FUNC_ID_OUTPUT_SURFACE_RENDER_VIDEO_SURFACE_LUMA

#define VDP_FUNC_ID_OUTPUT_SURFACE_RENDER_VIDEO_SURFACE_LUMA

◆ VDP_FUNC_ID_PREEMPTION_CALLBACK_REGISTER

#define VDP_FUNC_ID_PREEMPTION_CALLBACK_REGISTER

◆ VDP_FUNC_ID_PRESENTATION_QUEUE_BLOCK_UNTIL_SURFACE_IDLE

#define VDP_FUNC_ID_PRESENTATION_QUEUE_BLOCK_UNTIL_SURFACE_IDLE

◆ VDP_FUNC_ID_PRESENTATION_QUEUE_CREATE

#define VDP_FUNC_ID_PRESENTATION_QUEUE_CREATE

◆ VDP_FUNC_ID_PRESENTATION_QUEUE_DESTROY

#define VDP_FUNC_ID_PRESENTATION_QUEUE_DESTROY

◆ VDP_FUNC_ID_PRESENTATION_QUEUE_DISPLAY

#define VDP_FUNC_ID_PRESENTATION_QUEUE_DISPLAY

◆ VDP_FUNC_ID_PRESENTATION_QUEUE_GET_BACKGROUND_COLOR

#define VDP_FUNC_ID_PRESENTATION_QUEUE_GET_BACKGROUND_COLOR

◆ VDP_FUNC_ID_PRESENTATION_QUEUE_GET_TIME

#define VDP_FUNC_ID_PRESENTATION_QUEUE_GET_TIME

◆ VDP_FUNC_ID_PRESENTATION_QUEUE_QUERY_SURFACE_STATUS

#define VDP_FUNC_ID_PRESENTATION_QUEUE_QUERY_SURFACE_STATUS

◆ VDP_FUNC_ID_PRESENTATION_QUEUE_SET_BACKGROUND_COLOR

#define VDP_FUNC_ID_PRESENTATION_QUEUE_SET_BACKGROUND_COLOR

◆ VDP_FUNC_ID_PRESENTATION_QUEUE_TARGET_DESTROY

#define VDP_FUNC_ID_PRESENTATION_QUEUE_TARGET_DESTROY

◆ VDP_FUNC_ID_VIDEO_MIXER_CREATE

#define VDP_FUNC_ID_VIDEO_MIXER_CREATE

◆ VDP_FUNC_ID_VIDEO_MIXER_DESTROY

#define VDP_FUNC_ID_VIDEO_MIXER_DESTROY

◆ VDP_FUNC_ID_VIDEO_MIXER_GET_ATTRIBUTE_VALUES

#define VDP_FUNC_ID_VIDEO_MIXER_GET_ATTRIBUTE_VALUES

◆ VDP_FUNC_ID_VIDEO_MIXER_GET_FEATURE_ENABLES

#define VDP_FUNC_ID_VIDEO_MIXER_GET_FEATURE_ENABLES

◆ VDP_FUNC_ID_VIDEO_MIXER_GET_FEATURE_SUPPORT

#define VDP_FUNC_ID_VIDEO_MIXER_GET_FEATURE_SUPPORT

◆ VDP_FUNC_ID_VIDEO_MIXER_GET_PARAMETER_VALUES

#define VDP_FUNC_ID_VIDEO_MIXER_GET_PARAMETER_VALUES

◆ VDP_FUNC_ID_VIDEO_MIXER_QUERY_ATTRIBUTE_SUPPORT

#define VDP_FUNC_ID_VIDEO_MIXER_QUERY_ATTRIBUTE_SUPPORT

◆ VDP_FUNC_ID_VIDEO_MIXER_QUERY_ATTRIBUTE_VALUE_RANGE

#define VDP_FUNC_ID_VIDEO_MIXER_QUERY_ATTRIBUTE_VALUE_RANGE

◆ VDP_FUNC_ID_VIDEO_MIXER_QUERY_FEATURE_SUPPORT

#define VDP_FUNC_ID_VIDEO_MIXER_QUERY_FEATURE_SUPPORT

◆ VDP_FUNC_ID_VIDEO_MIXER_QUERY_PARAMETER_SUPPORT

#define VDP_FUNC_ID_VIDEO_MIXER_QUERY_PARAMETER_SUPPORT

◆ VDP_FUNC_ID_VIDEO_MIXER_QUERY_PARAMETER_VALUE_RANGE

#define VDP_FUNC_ID_VIDEO_MIXER_QUERY_PARAMETER_VALUE_RANGE

◆ VDP_FUNC_ID_VIDEO_MIXER_RENDER

#define VDP_FUNC_ID_VIDEO_MIXER_RENDER

◆ VDP_FUNC_ID_VIDEO_MIXER_SET_ATTRIBUTE_VALUES

#define VDP_FUNC_ID_VIDEO_MIXER_SET_ATTRIBUTE_VALUES

◆ VDP_FUNC_ID_VIDEO_MIXER_SET_FEATURE_ENABLES

#define VDP_FUNC_ID_VIDEO_MIXER_SET_FEATURE_ENABLES

◆ VDP_FUNC_ID_VIDEO_SURFACE_CREATE

#define VDP_FUNC_ID_VIDEO_SURFACE_CREATE

◆ VDP_FUNC_ID_VIDEO_SURFACE_DESTROY

#define VDP_FUNC_ID_VIDEO_SURFACE_DESTROY

◆ VDP_FUNC_ID_VIDEO_SURFACE_GET_BITS_Y_CB_CR

#define VDP_FUNC_ID_VIDEO_SURFACE_GET_BITS_Y_CB_CR

◆ VDP_FUNC_ID_VIDEO_SURFACE_GET_PARAMETERS

#define VDP_FUNC_ID_VIDEO_SURFACE_GET_PARAMETERS

◆ VDP_FUNC_ID_VIDEO_SURFACE_PUT_BITS_Y_CB_CR

#define VDP_FUNC_ID_VIDEO_SURFACE_PUT_BITS_Y_CB_CR

◆ VDP_FUNC_ID_VIDEO_SURFACE_QUERY_CAPABILITIES

#define VDP_FUNC_ID_VIDEO_SURFACE_QUERY_CAPABILITIES

◆ VDP_FUNC_ID_VIDEO_SURFACE_QUERY_GET_PUT_BITS_Y_CB_CR_CAPABILITIES

#define VDP_FUNC_ID_VIDEO_SURFACE_QUERY_GET_PUT_BITS_Y_CB_CR_CAPABILITIES

Typedef Documentation

◆ VdpFuncId

typedef uint32_t VdpFuncId

A type suitable for VdpGetProcAddress's function_id parameter.

◆ VdpGetProcAddress

typedef VdpStatus VdpGetProcAddress(VdpDevice device, VdpFuncId function_id, void **function_pointer)

Retrieve a VDPAU function pointer.

Parameters
[in]deviceThe device that the function will operate against.
[in]function_idThe specific function to retrieve.
[out]function_pointerThe actual pointer for the application to call.
Returns
VdpStatus The completion status of the operation.