VDPAU
|
The Core API. More...
#include <stdint.h>
Go to the source code of this file.
Data Structures | |
struct | VdpPoint |
A location within a surface. More... | |
struct | VdpRect |
A rectangular region of a surface. More... | |
struct | VdpColor |
struct | VdpProcamp |
Procamp operation parameterization data. More... | |
struct | VdpOutputSurfaceRenderBlendState |
Complete blending operation definition. More... | |
struct | VdpBitstreamBuffer |
Application data buffer containing compressed video data. More... | |
struct | VdpPictureInfoMPEG1Or2 |
Picture parameter information for an MPEG 1 or MPEG 2 picture. More... | |
struct | VdpReferenceFrameH264 |
Information about an H.264 reference frame. More... | |
struct | VdpPictureInfoH264 |
Picture parameter information for an H.264 picture. More... | |
struct | VdpPictureInfoH264Predictive |
Picture parameter information for an H.264 Hi444PP picture. More... | |
struct | VdpPictureInfoVC1 |
Picture parameter information for a VC1 picture. More... | |
struct | VdpPictureInfoMPEG4Part2 |
Picture parameter information for an MPEG-4 Part 2 picture. More... | |
struct | VdpPictureInfoVP9 |
struct | VdpPictureInfoHEVC |
Picture parameter information for an H.265/HEVC picture. More... | |
struct | VdpPictureInfoHEVC444 |
Picture parameter information for an HEVC 444 picture. More... | |
struct | VdpPictureInfoAV1 |
Picture parameter information for an AV1 picture. More... | |
struct | VdpLayer |
Definition of an additional VdpOutputSurface layer in the composting model. More... | |
Macros | |
#define | VDP_TRUE 1 |
A true VdpBool value. | |
#define | VDP_FALSE 0 |
A false VdpBool value. | |
#define | VDP_INVALID_HANDLE 0xffffffffU |
An invalid object handle value. | |
#define | VDP_CHROMA_TYPE_420 |
4:2:0 chroma format. Undefined field/frame based Video surfaces allocated with this chroma type have undefined field/frame structure. The implementation is free to internally morph the surface between frame/field(NV12/NV24) as required by VdpVideoDecoder operation. Interop with OpenGL allows registration of these surfaces for either field- or frame-based interop. But, an implicit field/frame structure conversion may be performed. | |
#define | VDP_CHROMA_TYPE_422 |
4:2:2 chroma format. Undefined field/frame based Video surfaces allocated with this chroma type have undefined field/frame structure. The implementation is free to internally morph the surface between frame/field(NV12/NV24) as required by VdpVideoDecoder operation. Interop with OpenGL allows registration of these surfaces for either field- or frame-based interop. But, an implicit field/frame structure conversion may be performed. | |
#define | VDP_CHROMA_TYPE_444 |
4:4:4 chroma format. Undefined field/frame based Video surfaces allocated with this chroma type have undefined field/frame structure. The implementation is free to internally morph the surface between frame/field(NV12/NV24) as required by VdpVideoDecoder operation. Interop with OpenGL allows registration of these surfaces for either field- or frame-based interop. But, an implicit field/frame structure conversion may be performed. | |
#define | VDP_CHROMA_TYPE_420_FIELD |
4:2:0 chroma format. Field based. Video surfaces allocated with this chroma type can only be interoped with OpenGL if the matching field/frame structure is specified in the OpenGL API | |
#define | VDP_CHROMA_TYPE_422_FIELD |
4:2:2 chroma format. Field based. Video surfaces allocated with this chroma type can only be interoped with OpenGL if the matching field/frame structure is specified in the OpenGL API | |
#define | VDP_CHROMA_TYPE_444_FIELD |
4:4:4 chroma format. Field based. Video surfaces allocated with this chroma type can only be interoped with OpenGL if the matching field/frame structure is specified in the OpenGL API | |
#define | VDP_CHROMA_TYPE_420_FRAME |
4:2:0 chroma format. Frame based. Video surfaces allocated with this chroma type can only be interoped with OpenGL if the matching field/frame structure is specified in the OpenGL API | |
#define | VDP_CHROMA_TYPE_422_FRAME |
4:2:2 chroma format. Frame based. Video surfaces allocated with this chroma type can only be interoped with OpenGL if the matching field/frame structure is specified in the OpenGL API | |
#define | VDP_CHROMA_TYPE_444_FRAME |
4:4:4 chroma format. Frame based. Video surfaces allocated with this chroma type can only be interoped with OpenGL if the matching field/frame structure is specified in the OpenGL API | |
#define | VDP_CHROMA_TYPE_420_16 |
4:2:0 chroma format. Undefined field/frame based Video surfaces allocated with this chroma type have undefined field/frame structure. The implementation is free to internally morph the surface between frame/field as required by VdpVideoDecoder operation. Interop with OpenGL allows registration of these surfaces for either field- or frame-based interop. But, an implicit field/frame structure conversion may be performed. | |
#define | VDP_CHROMA_TYPE_422_16 |
4:2:2 chroma format. Undefined field/frame based Video surfaces allocated with this chroma type have undefined field/frame structure. The implementation is free to internally morph the surface between frame/field as required by VdpVideoDecoder operation. Interop with OpenGL allows registration of these surfaces for either field- or frame-based interop. But, an implicit field/frame structure conversion may be performed. | |
#define | VDP_CHROMA_TYPE_444_16 |
4:4:4 chroma format. Undefined field/frame based Video surfaces allocated with this chroma type have undefined field/frame structure. The implementation is free to internally morph the surface between frame/field as required by VdpVideoDecoder operation. Interop with OpenGL allows registration of these surfaces for either field- or frame-based interop. But, an implicit field/frame structure conversion may be performed. | |
#define | VDP_CHROMA_TYPE_420_FIELD_16 |
4:2:0 chroma format. Field based. Video surfaces allocated with this chroma type can only be interoped with OpenGL if the matching field/frame structure is specified in the OpenGL API | |
#define | VDP_CHROMA_TYPE_422_FIELD_16 |
4:2:2 chroma format. Field based. Video surfaces allocated with this chroma type can only be interoped with OpenGL if the matching field/frame structure is specified in the OpenGL API | |
#define | VDP_CHROMA_TYPE_444_FIELD_16 |
4:4:4 chroma format. Field based. Video surfaces allocated with this chroma type can only be interoped with OpenGL if the matching field/frame structure is specified in the OpenGL API | |
#define | VDP_CHROMA_TYPE_420_FRAME_16 |
4:2:0 chroma format. Frame based. Video surfaces allocated with this chroma type can only be interoped with OpenGL if the matching field/frame structure is specified in the OpenGL API | |
#define | VDP_CHROMA_TYPE_422_FRAME_16 |
4:2:2 chroma format. Frame based. Video surfaces allocated with this chroma type can only be interoped with OpenGL if the matching field/frame structure is specified in the OpenGL API | |
#define | VDP_CHROMA_TYPE_444_FRAME_16 |
4:4:4 chroma format. Frame based. Video surfaces allocated with this chroma type can only be interoped with OpenGL if the matching field/frame structure is specified in the OpenGL API | |
#define | VDP_YCBCR_FORMAT_NV12 |
The "NV12" YCbCr surface format. | |
#define | VDP_YCBCR_FORMAT_YV12 |
The "YV12" YCbCr surface format. | |
#define | VDP_YCBCR_FORMAT_UYVY |
The "UYVY" YCbCr surface format. | |
#define | VDP_YCBCR_FORMAT_YUYV |
The "YUYV" YCbCr surface format. | |
#define | VDP_YCBCR_FORMAT_Y8U8V8A8 |
A packed YCbCr format. | |
#define | VDP_YCBCR_FORMAT_V8U8Y8A8 |
A packed YCbCr format. | |
#define | VDP_YCBCR_FORMAT_Y_UV_444 |
The "Y_UV_444" YCbCr surface format. | |
#define | VDP_YCBCR_FORMAT_Y_U_V_444 |
The "Y_U_V_444" YCbCr surface format. | |
#define | VDP_YCBCR_FORMAT_P010 |
The P010 surface format. | |
#define | VDP_YCBCR_FORMAT_P016 |
The P016 surface format. | |
#define | VDP_YCBCR_FORMAT_Y_U_V_444_16 |
The "Y_U_V_444_16" YCbCr surface format. | |
#define | VDP_RGBA_FORMAT_B8G8R8A8 |
A packed RGB format. | |
#define | VDP_RGBA_FORMAT_R8G8B8A8 |
A packed RGB format. | |
#define | VDP_RGBA_FORMAT_R10G10B10A2 |
A packed RGB format. | |
#define | VDP_RGBA_FORMAT_B10G10R10A2 |
A packed RGB format. | |
#define | VDP_RGBA_FORMAT_A8 |
An alpha-only surface format. | |
#define | VDP_INDEXED_FORMAT_A4I4 |
A 4-bit indexed format, with alpha. | |
#define | VDP_INDEXED_FORMAT_I4A4 |
A 4-bit indexed format, with alpha. | |
#define | VDP_INDEXED_FORMAT_A8I8 |
A 8-bit indexed format, with alpha. | |
#define | VDP_INDEXED_FORMAT_I8A8 |
A 8-bit indexed format, with alpha. | |
#define | VDPAU_INTERFACE_VERSION 1 |
The VDPAU interface version described by this header file. | |
#define | VDPAU_VERSION 1 |
The VDPAU version described by this header file. | |
#define | VDP_PROCAMP_VERSION 0 |
#define | VDP_COLOR_STANDARD_ITUR_BT_601 |
ITU-R BT.601. | |
#define | VDP_COLOR_STANDARD_ITUR_BT_709 |
ITU-R BT.709. | |
#define | VDP_COLOR_STANDARD_SMPTE_240M |
SMPTE-240M. | |
#define | VDP_COLOR_TABLE_FORMAT_B8G8R8X8 |
8-bit per component packed into 32-bits | |
#define | VDP_OUTPUT_SURFACE_RENDER_BLEND_STATE_VERSION 0 |
#define | VDP_OUTPUT_SURFACE_RENDER_ROTATE_0 |
Do not rotate source_surface prior to compositing. | |
#define | VDP_OUTPUT_SURFACE_RENDER_ROTATE_90 |
Rotate source_surface 90 degrees clockwise prior to compositing. | |
#define | VDP_OUTPUT_SURFACE_RENDER_ROTATE_180 |
Rotate source_surface 180 degrees prior to compositing. | |
#define | VDP_OUTPUT_SURFACE_RENDER_ROTATE_270 |
Rotate source_surface 270 degrees clockwise prior to compositing. | |
#define | VDP_OUTPUT_SURFACE_RENDER_COLOR_PER_VERTEX |
A separate color is used for each vertex of the smooth-shaded quad. Hence, colors array contains 4 elements rather than 1. See description of colors array. | |
#define | VDP_DECODER_PROFILE_MPEG1 |
#define | VDP_DECODER_PROFILE_MPEG2_SIMPLE |
#define | VDP_DECODER_PROFILE_MPEG2_MAIN |
#define | VDP_DECODER_PROFILE_H264_BASELINE |
MPEG 4 part 10 == H.264 == AVC. | |
#define | VDP_DECODER_PROFILE_H264_MAIN |
#define | VDP_DECODER_PROFILE_H264_HIGH |
#define | VDP_DECODER_PROFILE_VC1_SIMPLE |
#define | VDP_DECODER_PROFILE_VC1_MAIN |
#define | VDP_DECODER_PROFILE_VC1_ADVANCED |
#define | VDP_DECODER_PROFILE_MPEG4_PART2_SP |
#define | VDP_DECODER_PROFILE_MPEG4_PART2_ASP |
#define | VDP_DECODER_PROFILE_DIVX4_QMOBILE |
#define | VDP_DECODER_PROFILE_DIVX4_MOBILE |
#define | VDP_DECODER_PROFILE_DIVX4_HOME_THEATER |
#define | VDP_DECODER_PROFILE_DIVX4_HD_1080P |
#define | VDP_DECODER_PROFILE_DIVX5_QMOBILE |
#define | VDP_DECODER_PROFILE_DIVX5_MOBILE |
#define | VDP_DECODER_PROFILE_DIVX5_HOME_THEATER |
#define | VDP_DECODER_PROFILE_DIVX5_HD_1080P |
#define | VDP_DECODER_PROFILE_H264_CONSTRAINED_BASELINE |
#define | VDP_DECODER_PROFILE_H264_EXTENDED |
#define | VDP_DECODER_PROFILE_H264_PROGRESSIVE_HIGH |
#define | VDP_DECODER_PROFILE_H264_CONSTRAINED_HIGH |
#define | VDP_DECODER_PROFILE_H264_HIGH_444_PREDICTIVE |
Support for 8 bit depth only. | |
#define | VDP_DECODER_PROFILE_VP9_PROFILE_0 |
#define | VDP_DECODER_PROFILE_VP9_PROFILE_1 |
#define | VDP_DECODER_PROFILE_VP9_PROFILE_2 |
#define | VDP_DECODER_PROFILE_VP9_PROFILE_3 |
#define | VDP_DECODER_PROFILE_HEVC_MAIN |
MPEG-H Part 2 == H.265 == HEVC. | |
#define | VDP_DECODER_PROFILE_HEVC_MAIN_10 |
#define | VDP_DECODER_PROFILE_HEVC_MAIN_STILL |
#define | VDP_DECODER_PROFILE_HEVC_MAIN_12 |
#define | VDP_DECODER_PROFILE_HEVC_MAIN_444 |
#define | VDP_DECODER_PROFILE_HEVC_MAIN_444_10 |
#define | VDP_DECODER_PROFILE_HEVC_MAIN_444_12 |
#define | VDP_DECODER_PROFILE_AV1_MAIN |
#define | VDP_DECODER_PROFILE_AV1_HIGH |
#define | VDP_DECODER_PROFILE_AV1_PROFESSIONAL |
#define | VDP_DECODER_LEVEL_MPEG1_NA |
#define | VDP_DECODER_LEVEL_MPEG2_LL |
#define | VDP_DECODER_LEVEL_MPEG2_ML |
#define | VDP_DECODER_LEVEL_MPEG2_HL14 |
#define | VDP_DECODER_LEVEL_MPEG2_HL |
#define | VDP_DECODER_LEVEL_H264_1 |
#define | VDP_DECODER_LEVEL_H264_1b |
#define | VDP_DECODER_LEVEL_H264_1_1 |
#define | VDP_DECODER_LEVEL_H264_1_2 |
#define | VDP_DECODER_LEVEL_H264_1_3 |
#define | VDP_DECODER_LEVEL_H264_2 |
#define | VDP_DECODER_LEVEL_H264_2_1 |
#define | VDP_DECODER_LEVEL_H264_2_2 |
#define | VDP_DECODER_LEVEL_H264_3 |
#define | VDP_DECODER_LEVEL_H264_3_1 |
#define | VDP_DECODER_LEVEL_H264_3_2 |
#define | VDP_DECODER_LEVEL_H264_4 |
#define | VDP_DECODER_LEVEL_H264_4_1 |
#define | VDP_DECODER_LEVEL_H264_4_2 |
#define | VDP_DECODER_LEVEL_H264_5 |
#define | VDP_DECODER_LEVEL_H264_5_1 |
#define | VDP_DECODER_LEVEL_VC1_SIMPLE_LOW |
#define | VDP_DECODER_LEVEL_VC1_SIMPLE_MEDIUM |
#define | VDP_DECODER_LEVEL_VC1_MAIN_LOW |
#define | VDP_DECODER_LEVEL_VC1_MAIN_MEDIUM |
#define | VDP_DECODER_LEVEL_VC1_MAIN_HIGH |
#define | VDP_DECODER_LEVEL_VC1_ADVANCED_L0 |
#define | VDP_DECODER_LEVEL_VC1_ADVANCED_L1 |
#define | VDP_DECODER_LEVEL_VC1_ADVANCED_L2 |
#define | VDP_DECODER_LEVEL_VC1_ADVANCED_L3 |
#define | VDP_DECODER_LEVEL_VC1_ADVANCED_L4 |
#define | VDP_DECODER_LEVEL_MPEG4_PART2_SP_L0 |
#define | VDP_DECODER_LEVEL_MPEG4_PART2_SP_L1 |
#define | VDP_DECODER_LEVEL_MPEG4_PART2_SP_L2 |
#define | VDP_DECODER_LEVEL_MPEG4_PART2_SP_L3 |
#define | VDP_DECODER_LEVEL_MPEG4_PART2_ASP_L0 |
#define | VDP_DECODER_LEVEL_MPEG4_PART2_ASP_L1 |
#define | VDP_DECODER_LEVEL_MPEG4_PART2_ASP_L2 |
#define | VDP_DECODER_LEVEL_MPEG4_PART2_ASP_L3 |
#define | VDP_DECODER_LEVEL_MPEG4_PART2_ASP_L4 |
#define | VDP_DECODER_LEVEL_MPEG4_PART2_ASP_L5 |
#define | VDP_DECODER_LEVEL_DIVX_NA |
#define | VDP_DECODER_LEVEL_VP9_L1 |
#define | VDP_DECODER_LEVEL_AV1_2_0 |
#define | VDP_DECODER_LEVEL_AV1_2_1 |
#define | VDP_DECODER_LEVEL_AV1_2_2 |
#define | VDP_DECODER_LEVEL_AV1_2_3 |
#define | VDP_DECODER_LEVEL_AV1_3_0 |
#define | VDP_DECODER_LEVEL_AV1_3_1 |
#define | VDP_DECODER_LEVEL_AV1_3_2 |
#define | VDP_DECODER_LEVEL_AV1_3_3 |
#define | VDP_DECODER_LEVEL_AV1_4_0 |
#define | VDP_DECODER_LEVEL_AV1_4_1 |
#define | VDP_DECODER_LEVEL_AV1_4_2 |
#define | VDP_DECODER_LEVEL_AV1_4_3 |
#define | VDP_DECODER_LEVEL_AV1_5_0 |
#define | VDP_DECODER_LEVEL_AV1_5_1 |
#define | VDP_DECODER_LEVEL_AV1_5_2 |
#define | VDP_DECODER_LEVEL_AV1_5_3 |
#define | VDP_DECODER_LEVEL_AV1_6_0 |
#define | VDP_DECODER_LEVEL_AV1_6_1 |
#define | VDP_DECODER_LEVEL_AV1_6_2 |
#define | VDP_DECODER_LEVEL_AV1_6_3 |
#define | VDP_DECODER_LEVEL_AV1_7_0 |
#define | VDP_DECODER_LEVEL_AV1_7_1 |
#define | VDP_DECODER_LEVEL_AV1_7_2 |
#define | VDP_DECODER_LEVEL_AV1_7_3 |
#define | VDP_DECODER_LEVEL_HEVC_1 30 |
#define | VDP_DECODER_LEVEL_HEVC_2 |
#define | VDP_DECODER_LEVEL_HEVC_2_1 |
#define | VDP_DECODER_LEVEL_HEVC_3 |
#define | VDP_DECODER_LEVEL_HEVC_3_1 |
#define | VDP_DECODER_LEVEL_HEVC_4 |
#define | VDP_DECODER_LEVEL_HEVC_4_1 |
#define | VDP_DECODER_LEVEL_HEVC_5 |
#define | VDP_DECODER_LEVEL_HEVC_5_1 |
#define | VDP_DECODER_LEVEL_HEVC_5_2 |
#define | VDP_DECODER_LEVEL_HEVC_6 |
#define | VDP_DECODER_LEVEL_HEVC_6_1 |
#define | VDP_DECODER_LEVEL_HEVC_6_2 |
#define | VDP_BITSTREAM_BUFFER_VERSION 0 |
#define | VDP_VIDEO_MIXER_FEATURE_DEINTERLACE_TEMPORAL |
A VdpVideoMixerFeature. | |
#define | VDP_VIDEO_MIXER_FEATURE_DEINTERLACE_TEMPORAL_SPATIAL |
A VdpVideoMixerFeature. | |
#define | VDP_VIDEO_MIXER_FEATURE_INVERSE_TELECINE |
A VdpVideoMixerFeature. | |
#define | VDP_VIDEO_MIXER_FEATURE_NOISE_REDUCTION |
A VdpVideoMixerFeature. | |
#define | VDP_VIDEO_MIXER_FEATURE_SHARPNESS |
A VdpVideoMixerFeature. | |
#define | VDP_VIDEO_MIXER_FEATURE_LUMA_KEY |
A VdpVideoMixerFeature. | |
#define | VDP_VIDEO_MIXER_FEATURE_HIGH_QUALITY_SCALING_L1 |
A VdpVideoMixerFeature. | |
#define | VDP_VIDEO_MIXER_FEATURE_HIGH_QUALITY_SCALING_L2 |
A VdpVideoMixerFeature. | |
#define | VDP_VIDEO_MIXER_FEATURE_HIGH_QUALITY_SCALING_L3 |
A VdpVideoMixerFeature. | |
#define | VDP_VIDEO_MIXER_FEATURE_HIGH_QUALITY_SCALING_L4 |
A VdpVideoMixerFeature. | |
#define | VDP_VIDEO_MIXER_FEATURE_HIGH_QUALITY_SCALING_L5 |
A VdpVideoMixerFeature. | |
#define | VDP_VIDEO_MIXER_FEATURE_HIGH_QUALITY_SCALING_L6 |
A VdpVideoMixerFeature. | |
#define | VDP_VIDEO_MIXER_FEATURE_HIGH_QUALITY_SCALING_L7 |
A VdpVideoMixerFeature. | |
#define | VDP_VIDEO_MIXER_FEATURE_HIGH_QUALITY_SCALING_L8 |
A VdpVideoMixerFeature. | |
#define | VDP_VIDEO_MIXER_FEATURE_HIGH_QUALITY_SCALING_L9 |
A VdpVideoMixerFeature. | |
#define | VDP_VIDEO_MIXER_PARAMETER_VIDEO_SURFACE_WIDTH |
The exact width of input video surfaces. | |
#define | VDP_VIDEO_MIXER_PARAMETER_VIDEO_SURFACE_HEIGHT |
The exact height of input video surfaces. | |
#define | VDP_VIDEO_MIXER_PARAMETER_CHROMA_TYPE |
The chroma type of the input video surfaces the will process. | |
#define | VDP_VIDEO_MIXER_PARAMETER_LAYERS |
The number of auxiliary layers in the mixer's compositing model. | |
#define | VDP_VIDEO_MIXER_ATTRIBUTE_BACKGROUND_COLOR |
The background color in the VdpVideoMixer's compositing model. | |
#define | VDP_VIDEO_MIXER_ATTRIBUTE_CSC_MATRIX |
The color-space conversion matrix used by the VdpVideoMixer. | |
#define | VDP_VIDEO_MIXER_ATTRIBUTE_NOISE_REDUCTION_LEVEL |
The amount of noise reduction algorithm to apply. | |
#define | VDP_VIDEO_MIXER_ATTRIBUTE_SHARPNESS_LEVEL |
The amount of sharpening, or blurring, to apply. | |
#define | VDP_VIDEO_MIXER_ATTRIBUTE_LUMA_KEY_MIN_LUMA |
The minimum luma value for the luma key algorithm. | |
#define | VDP_VIDEO_MIXER_ATTRIBUTE_LUMA_KEY_MAX_LUMA |
The maximum luma value for the luma key algorithm. | |
#define | VDP_VIDEO_MIXER_ATTRIBUTE_SKIP_CHROMA_DEINTERLACE |
Whether de-interlacers should operate solely on luma, and bob chroma. | |
#define | VDP_LAYER_VERSION 0 |
#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 int | VdpBool |
A boolean value, holding VDP_TRUE or VDP_FALSE. | |
typedef uint32_t | VdpChromaType |
The set of all chroma formats for VdpVideoSurfaces. | |
typedef uint32_t | VdpYCbCrFormat |
The set of all known YCbCr surface formats. | |
typedef uint32_t | VdpRGBAFormat |
The set of all known RGB surface formats. | |
typedef uint32_t | VdpIndexedFormat |
The set of all known indexed surface formats. | |
typedef char const * | VdpGetErrorString(VdpStatus status) |
Retrieve a string describing an error code. | |
typedef VdpStatus | VdpGetApiVersion(uint32_t *api_version) |
Retrieve the VDPAU version implemented by the backend. | |
typedef VdpStatus | VdpGetInformationString(char const **information_string) |
Retrieve an implementation-specific string description of the implementation. This typically includes detailed version information. | |
typedef uint32_t | VdpDevice |
An opaque handle representing a VdpDevice object. | |
typedef VdpStatus | VdpDeviceDestroy(VdpDevice device) |
Destroy a VdpDevice. | |
typedef float | VdpCSCMatrix[3][4] |
Storage for a color space conversion matrix. | |
typedef uint32_t | VdpColorStandard |
YCbCr color space specification. | |
typedef VdpStatus | VdpGenerateCSCMatrix(VdpProcamp *procamp, VdpColorStandard standard, VdpCSCMatrix *csc_matrix) |
Generate a color space conversion matrix. | |
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 uint32_t | VdpColorTableFormat |
The set of all known color table formats, for use with VdpOutputSurfacePutBitsIndexed. | |
typedef VdpStatus | VdpOutputSurfaceQueryCapabilities(VdpDevice device, VdpRGBAFormat surface_rgba_format, VdpBool *is_supported, uint32_t *max_width, uint32_t *max_height) |
Query the implementation's VdpOutputSurface capabilities. | |
typedef VdpStatus | VdpOutputSurfaceQueryGetPutBitsNativeCapabilities(VdpDevice device, VdpRGBAFormat surface_rgba_format, VdpBool *is_supported) |
Query the implementation's capability to perform a PutBits operation using application data matching the surface's format. | |
typedef VdpStatus | VdpOutputSurfaceQueryPutBitsIndexedCapabilities(VdpDevice device, VdpRGBAFormat surface_rgba_format, VdpIndexedFormat bits_indexed_format, VdpColorTableFormat color_table_format, VdpBool *is_supported) |
Query the implementation's capability to perform a PutBits operation using application data in a specific indexed format. | |
typedef VdpStatus | VdpOutputSurfaceQueryPutBitsYCbCrCapabilities(VdpDevice device, VdpRGBAFormat surface_rgba_format, VdpYCbCrFormat bits_ycbcr_format, VdpBool *is_supported) |
Query the implementation's capability to perform a PutBits operation using application data in a specific YCbCr/YUB format. | |
typedef uint32_t | VdpOutputSurface |
An opaque handle representing a VdpOutputSurface object. | |
typedef VdpStatus | VdpOutputSurfaceCreate(VdpDevice device, VdpRGBAFormat rgba_format, uint32_t width, uint32_t height, VdpOutputSurface *surface) |
Create a VdpOutputSurface. | |
typedef VdpStatus | VdpOutputSurfaceDestroy(VdpOutputSurface surface) |
Destroy a VdpOutputSurface. | |
typedef VdpStatus | VdpOutputSurfaceGetParameters(VdpOutputSurface surface, VdpRGBAFormat *rgba_format, uint32_t *width, uint32_t *height) |
Retrieve the parameters used to create a VdpOutputSurface. | |
typedef VdpStatus | VdpOutputSurfaceGetBitsNative(VdpOutputSurface surface, VdpRect const *source_rect, void *const *destination_data, uint32_t const *destination_pitches) |
Copy image data from a VdpOutputSurface to application memory in the surface's native format. | |
typedef VdpStatus | VdpOutputSurfacePutBitsNative(VdpOutputSurface surface, void const *const *source_data, uint32_t const *source_pitches, VdpRect const *destination_rect) |
Copy image data from application memory in the surface's native format to a VdpOutputSurface. | |
typedef VdpStatus | VdpOutputSurfacePutBitsIndexed(VdpOutputSurface surface, VdpIndexedFormat source_indexed_format, void const *const *source_data, uint32_t const *source_pitch, VdpRect const *destination_rect, VdpColorTableFormat color_table_format, void const *color_table) |
Copy image data from application memory in a specific indexed format to a VdpOutputSurface. | |
typedef VdpStatus | VdpOutputSurfacePutBitsYCbCr(VdpOutputSurface surface, VdpYCbCrFormat source_ycbcr_format, void const *const *source_data, uint32_t const *source_pitches, VdpRect const *destination_rect, VdpCSCMatrix const *csc_matrix) |
Copy image data from application memory in a specific YCbCr format to a VdpOutputSurface. | |
typedef VdpStatus | VdpBitmapSurfaceQueryCapabilities(VdpDevice device, VdpRGBAFormat surface_rgba_format, VdpBool *is_supported, uint32_t *max_width, uint32_t *max_height) |
Query the implementation's VdpBitmapSurface capabilities. | |
typedef uint32_t | VdpBitmapSurface |
An opaque handle representing a VdpBitmapSurface object. | |
typedef VdpStatus | VdpBitmapSurfaceCreate(VdpDevice device, VdpRGBAFormat rgba_format, uint32_t width, uint32_t height, VdpBool frequently_accessed, VdpBitmapSurface *surface) |
Create a VdpBitmapSurface. | |
typedef VdpStatus | VdpBitmapSurfaceDestroy(VdpBitmapSurface surface) |
Destroy a VdpBitmapSurface. | |
typedef VdpStatus | VdpBitmapSurfaceGetParameters(VdpBitmapSurface surface, VdpRGBAFormat *rgba_format, uint32_t *width, uint32_t *height, VdpBool *frequently_accessed) |
Retrieve the parameters used to create a VdpBitmapSurface. | |
typedef VdpStatus | VdpBitmapSurfacePutBitsNative(VdpBitmapSurface surface, void const *const *source_data, uint32_t const *source_pitches, VdpRect const *destination_rect) |
Copy image data from application memory in the surface's native format to a VdpBitmapSurface. | |
typedef VdpStatus | VdpOutputSurfaceRenderOutputSurface(VdpOutputSurface destination_surface, VdpRect const *destination_rect, VdpOutputSurface source_surface, VdpRect const *source_rect, VdpColor const *colors, VdpOutputSurfaceRenderBlendState const *blend_state, uint32_t flags) |
Composite a sub-rectangle of a VdpOutputSurface into a sub-rectangle of another VdpOutputSurface; Output Surface object VdpOutputSurface. | |
typedef VdpStatus | VdpOutputSurfaceRenderBitmapSurface(VdpOutputSurface destination_surface, VdpRect const *destination_rect, VdpBitmapSurface source_surface, VdpRect const *source_rect, VdpColor const *colors, VdpOutputSurfaceRenderBlendState const *blend_state, uint32_t flags) |
Composite a sub-rectangle of a VdpBitmapSurface into a sub-rectangle of a VdpOutputSurface; Output Surface object VdpOutputSurface. | |
typedef uint32_t | VdpDecoderProfile |
The set of all known compressed video formats, and associated profiles, that may be decoded. | |
typedef VdpStatus | VdpDecoderQueryProfileCapability(VdpDevice device, VdpDecoderProfile profile, VdpDecoderCapability capability, void *capability_value) |
Query the supported value of the requested capability, for the specified profile on the specified device. | |
typedef VdpStatus | VdpDecoderQueryCapabilities(VdpDevice device, VdpDecoderProfile profile, VdpBool *is_supported, uint32_t *max_level, uint32_t *max_macroblocks, uint32_t *max_width, uint32_t *max_height) |
Query the implementation's VdpDecoder capabilities. | |
typedef uint32_t | VdpDecoder |
An opaque handle representing a VdpDecoder object. | |
typedef VdpStatus | VdpDecoderCreate(VdpDevice device, VdpDecoderProfile profile, uint32_t width, uint32_t height, uint32_t max_references, VdpDecoder *decoder) |
Create a VdpDecoder. | |
typedef VdpStatus | VdpDecoderDestroy(VdpDecoder decoder) |
Destroy a VdpDecoder. | |
typedef VdpStatus | VdpDecoderGetParameters(VdpDecoder decoder, VdpDecoderProfile *profile, uint32_t *width, uint32_t *height) |
Retrieve the parameters used to create a VdpDecoder. | |
typedef void | VdpPictureInfo |
A generic "picture information" type. | |
typedef VdpPictureInfoMPEG4Part2 | VdpPictureInfoDivX4 |
Picture parameter information for a DivX 4 picture. | |
typedef VdpPictureInfoMPEG4Part2 | VdpPictureInfoDivX5 |
Picture parameter information for a DivX 5 picture. | |
typedef VdpPictureInfoHEVC444 | VdpPictureInfoHEVCRangeExt |
Picture parameter information for HEVC FormatRangeExtensions picture. | |
typedef VdpStatus | VdpDecoderRender(VdpDecoder decoder, VdpVideoSurface target, VdpPictureInfo const *picture_info, uint32_t bitstream_buffer_count, VdpBitstreamBuffer const *bitstream_buffers) |
Decode a compressed field/frame and render the result into a VdpVideoSurface. | |
typedef uint32_t | VdpVideoMixerFeature |
A VdpVideoMixer feature that must be requested at creation time to be used. | |
typedef uint32_t | VdpVideoMixerParameter |
A VdpVideoMixer creation parameter. | |
typedef uint32_t | VdpVideoMixerAttribute |
An adjustable attribute of VdpVideoMixer operation. | |
typedef VdpStatus | VdpVideoMixerQueryFeatureSupport(VdpDevice device, VdpVideoMixerFeature feature, VdpBool *is_supported) |
Query the implementation's support for a specific feature. | |
typedef VdpStatus | VdpVideoMixerQueryParameterSupport(VdpDevice device, VdpVideoMixerParameter parameter, VdpBool *is_supported) |
Query the implementation's support for a specific parameter. | |
typedef VdpStatus | VdpVideoMixerQueryAttributeSupport(VdpDevice device, VdpVideoMixerAttribute attribute, VdpBool *is_supported) |
Query the implementation's support for a specific attribute. | |
typedef VdpStatus | VdpVideoMixerQueryParameterValueRange(VdpDevice device, VdpVideoMixerParameter parameter, void *min_value, void *max_value) |
Query the implementation's supported for a specific parameter. | |
typedef VdpStatus | VdpVideoMixerQueryAttributeValueRange(VdpDevice device, VdpVideoMixerAttribute attribute, void *min_value, void *max_value) |
Query the implementation's supported for a specific attribute. | |
typedef uint32_t | VdpVideoMixer |
An opaque handle representing a VdpVideoMixer object. | |
typedef VdpStatus | VdpVideoMixerCreate(VdpDevice device, uint32_t feature_count, VdpVideoMixerFeature const *features, uint32_t parameter_count, VdpVideoMixerParameter const *parameters, void const *const *parameter_values, VdpVideoMixer *mixer) |
Create a VdpVideoMixer. | |
typedef VdpStatus | VdpVideoMixerSetFeatureEnables(VdpVideoMixer mixer, uint32_t feature_count, VdpVideoMixerFeature const *features, VdpBool const *feature_enables) |
Enable or disable features. | |
typedef VdpStatus | VdpVideoMixerSetAttributeValues(VdpVideoMixer mixer, uint32_t attribute_count, VdpVideoMixerAttribute const *attributes, void const *const *attribute_values) |
Set attribute values. | |
typedef VdpStatus | VdpVideoMixerGetFeatureSupport(VdpVideoMixer mixer, uint32_t feature_count, VdpVideoMixerFeature const *features, VdpBool *feature_supports) |
Retrieve whether features were requested at creation time. | |
typedef VdpStatus | VdpVideoMixerGetFeatureEnables(VdpVideoMixer mixer, uint32_t feature_count, VdpVideoMixerFeature const *features, VdpBool *feature_enables) |
Retrieve whether features are enabled. | |
typedef VdpStatus | VdpVideoMixerGetParameterValues(VdpVideoMixer mixer, uint32_t parameter_count, VdpVideoMixerParameter const *parameters, void *const *parameter_values) |
Retrieve parameter values given at creation time. | |
typedef VdpStatus | VdpVideoMixerGetAttributeValues(VdpVideoMixer mixer, uint32_t attribute_count, VdpVideoMixerAttribute const *attributes, void *const *attribute_values) |
Retrieve current attribute values. | |
typedef VdpStatus | VdpVideoMixerDestroy(VdpVideoMixer mixer) |
Destroy a VdpVideoMixer. | |
typedef VdpStatus | VdpVideoMixerRender(VdpVideoMixer mixer, VdpOutputSurface background_surface, VdpRect const *background_source_rect, VdpVideoMixerPictureStructure current_picture_structure, uint32_t video_surface_past_count, VdpVideoSurface const *video_surface_past, VdpVideoSurface video_surface_current, uint32_t video_surface_future_count, VdpVideoSurface const *video_surface_future, VdpRect const *video_source_rect, VdpOutputSurface destination_surface, VdpRect const *destination_rect, VdpRect const *destination_video_rect, uint32_t layer_count, VdpLayer const *layers) |
Perform a video post-processing and compositing operation. | |
typedef uint64_t | VdpTime |
The representation of a point in time. | |
typedef uint32_t | VdpPresentationQueueTarget |
An opaque handle representing the location where video will be presented. | |
typedef VdpStatus | VdpPresentationQueueTargetDestroy(VdpPresentationQueueTarget presentation_queue_target) |
Destroy a VdpPresentationQueueTarget. | |
typedef uint32_t | VdpPresentationQueue |
An opaque handle representing a presentation queue object. | |
typedef VdpStatus | VdpPresentationQueueCreate(VdpDevice device, VdpPresentationQueueTarget presentation_queue_target, VdpPresentationQueue *presentation_queue) |
Create a VdpPresentationQueue. | |
typedef VdpStatus | VdpPresentationQueueDestroy(VdpPresentationQueue presentation_queue) |
Destroy a VdpPresentationQueue. | |
typedef VdpStatus | VdpPresentationQueueSetBackgroundColor(VdpPresentationQueue presentation_queue, VdpColor *const background_color) |
Configure the background color setting. | |
typedef VdpStatus | VdpPresentationQueueGetBackgroundColor(VdpPresentationQueue presentation_queue, VdpColor *background_color) |
Retrieve the current background color setting. | |
typedef VdpStatus | VdpPresentationQueueGetTime(VdpPresentationQueue presentation_queue, VdpTime *current_time) |
Retrieve the presentation queue's "current" time. | |
typedef VdpStatus | VdpPresentationQueueDisplay(VdpPresentationQueue presentation_queue, VdpOutputSurface surface, uint32_t clip_width, uint32_t clip_height, VdpTime earliest_presentation_time) |
Enter a surface into the presentation queue. | |
typedef VdpStatus | VdpPresentationQueueBlockUntilSurfaceIdle(VdpPresentationQueue presentation_queue, VdpOutputSurface surface, VdpTime *first_presentation_time) |
Wait for a surface to finish being displayed. | |
typedef VdpStatus | VdpPresentationQueueQuerySurfaceStatus(VdpPresentationQueue presentation_queue, VdpOutputSurface surface, VdpPresentationQueueStatus *status, VdpTime *first_presentation_time) |
Poll the current queue status of a surface. | |
typedef void | VdpPreemptionCallback(VdpDevice device, void *context) |
A callback to notify the client application that a device's display has been preempted. | |
typedef VdpStatus | VdpPreemptionCallbackRegister(VdpDevice device, VdpPreemptionCallback callback, void *context) |
Configure the display preemption callback. | |
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. | |
The Core API.
This file contains the Core API.