VDPAU

Macros | Typedefs
Entry Point Retrieval
Core API
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.
typedef VdpStatus | VdpGetProcAddress(VdpDevice device, VdpFuncId function_id, void **function_pointer)
| Retrieve a VDPAU function pointer.

## 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] | device | The device that the function will operate against.
  [in] | function_id | The specific function to retrieve.
  [out] | function_pointer | The actual pointer for the application to call.

Returns
  VdpStatus The completion status of the operation.