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.
#define VDP_FUNC_ID_BASE_WINSYS 0x1000 |
#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_BITMAP_SURFACE_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_QUERY_CAPABILITIES |
#define VDP_FUNC_ID_DECODER_RENDER |
#define VDP_FUNC_ID_DEVICE_DESTROY |
#define VDP_FUNC_ID_GENERATE_CSC_MATRIX |
#define VDP_FUNC_ID_GET_API_VERSION |
#define VDP_FUNC_ID_GET_ERROR_STRING |
#define VDP_FUNC_ID_GET_INFORMATION_STRING |
#define VDP_FUNC_ID_GET_PROC_ADDRESS |
#define VDP_FUNC_ID_OUTPUT_SURFACE_CREATE |
#define VDP_FUNC_ID_OUTPUT_SURFACE_DESTROY |
#define VDP_FUNC_ID_OUTPUT_SURFACE_GET_BITS_NATIVE |
#define VDP_FUNC_ID_OUTPUT_SURFACE_GET_PARAMETERS |
#define VDP_FUNC_ID_OUTPUT_SURFACE_PUT_BITS_INDEXED |
#define VDP_FUNC_ID_OUTPUT_SURFACE_PUT_BITS_NATIVE |
#define VDP_FUNC_ID_OUTPUT_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_RENDER_BITMAP_SURFACE |
#define VDP_FUNC_ID_OUTPUT_SURFACE_RENDER_OUTPUT_SURFACE |
#define VDP_FUNC_ID_OUTPUT_SURFACE_RENDER_VIDEO_SURFACE_LUMA |
#define VDP_FUNC_ID_PREEMPTION_CALLBACK_REGISTER |
#define VDP_FUNC_ID_PRESENTATION_QUEUE_BLOCK_UNTIL_SURFACE_IDLE |
#define VDP_FUNC_ID_PRESENTATION_QUEUE_CREATE |
#define VDP_FUNC_ID_PRESENTATION_QUEUE_DESTROY |
#define VDP_FUNC_ID_PRESENTATION_QUEUE_DISPLAY |
#define VDP_FUNC_ID_PRESENTATION_QUEUE_GET_BACKGROUND_COLOR |
#define VDP_FUNC_ID_PRESENTATION_QUEUE_GET_TIME |
#define VDP_FUNC_ID_PRESENTATION_QUEUE_QUERY_SURFACE_STATUS |
#define VDP_FUNC_ID_PRESENTATION_QUEUE_SET_BACKGROUND_COLOR |
#define VDP_FUNC_ID_PRESENTATION_QUEUE_TARGET_DESTROY |
#define VDP_FUNC_ID_VIDEO_MIXER_CREATE |
#define VDP_FUNC_ID_VIDEO_MIXER_DESTROY |
#define VDP_FUNC_ID_VIDEO_MIXER_GET_ATTRIBUTE_VALUES |
#define VDP_FUNC_ID_VIDEO_MIXER_GET_FEATURE_ENABLES |
#define VDP_FUNC_ID_VIDEO_MIXER_GET_FEATURE_SUPPORT |
#define VDP_FUNC_ID_VIDEO_MIXER_GET_PARAMETER_VALUES |
#define VDP_FUNC_ID_VIDEO_MIXER_QUERY_ATTRIBUTE_SUPPORT |
#define VDP_FUNC_ID_VIDEO_MIXER_QUERY_ATTRIBUTE_VALUE_RANGE |
#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_PARAMETER_VALUE_RANGE |
#define VDP_FUNC_ID_VIDEO_MIXER_RENDER |
#define VDP_FUNC_ID_VIDEO_MIXER_SET_ATTRIBUTE_VALUES |
#define VDP_FUNC_ID_VIDEO_MIXER_SET_FEATURE_ENABLES |
#define VDP_FUNC_ID_VIDEO_SURFACE_CREATE |
#define VDP_FUNC_ID_VIDEO_SURFACE_DESTROY |
#define VDP_FUNC_ID_VIDEO_SURFACE_GET_BITS_Y_CB_CR |
#define VDP_FUNC_ID_VIDEO_SURFACE_GET_PARAMETERS |
#define VDP_FUNC_ID_VIDEO_SURFACE_PUT_BITS_Y_CB_CR |
#define VDP_FUNC_ID_VIDEO_SURFACE_QUERY_CAPABILITIES |
#define VDP_FUNC_ID_VIDEO_SURFACE_QUERY_GET_PUT_BITS_Y_CB_CR_CAPABILITIES |
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.