15 #ifndef _NVMEDIA_VMP_H
16 #define _NVMEDIA_VMP_H
39 #define NVMEDIA_VMP_VERSION_MAJOR 2
41 #define NVMEDIA_VMP_VERSION_MINOR 2
53 #define NVMEDIA_VMP_FEATURE_BACKGROUND_PRESENT (1<<0)
59 #define NVMEDIA_VMP_FEATURE_INTERLACED (1<<1)
65 #define NVMEDIA_VMP_FEATURE_DEINTERLACING (1<<2)
71 #define NVMEDIA_VMP_FEATURE_ADVANCED1_DEINTERLACING (1<<3)
77 #define NVMEDIA_VMP_FEATURE_ADVANCED2_DEINTERLACING (1<<4)
83 #define NVMEDIA_VMP_FEATURE_LIMITED_RGB_INPUT (1<<5)
90 #define NVMEDIA_VMP_FEATURE_INVERSE_TELECINE (1<<6)
96 #define NVMEDIA_VMP_FEATURE_NOISE_REDUCTION (1<<7)
102 #define NVMEDIA_VMP_FEATURE_SHARPENING (1<<8)
109 #define NVMEDIA_VMP_FEATURE_ALPHA_SURFACE_MODE (1<<9)
115 #define NVMEDIA_VMP_FEATURE_PROTECTED (1<<10)
121 #define NVMEDIA_VMP_FEATURE_ENABLE_DFS (1<<11)
135 #define NVMEDIA_VMP_ATTR_BRIGHTNESS (1<<0)
140 #define NVMEDIA_VMP_ATTR_CONTRAST (1<<1)
145 #define NVMEDIA_VMP_ATTR_SATURATION (1<<2)
150 #define NVMEDIA_VMP_ATTR_HUE (1<<3)
155 #define NVMEDIA_VMP_ATTR_COLOR_STANDARD (1<<4)
160 #define NVMEDIA_VMP_ATTR_DEINTERLACE_TYPE (1<<6)
165 #define NVMEDIA_VMP_ATTR_NOISE_REDUCTION (1<<7)
170 #define NVMEDIA_VMP_ATTR_NOISE_REDUCTION_ALGORITHM (1<<8)
175 #define NVMEDIA_VMP_ATTR_SHARPENING (1<<9)
180 #define NVMEDIA_VMP_ATTR_INVERSE_TELECINE (1<<10)
185 #define NVMEDIA_VMP_ATTR_FILTER_QUALITY (1<<11)
190 #define NVMEDIA_VMP_ATTR_DESTINATION_ALPHA (1<<12)
195 #define NVMEDIA_VMP_ATTR_DESTINATION_PREMULTIPLY_ALPHA (1<<13)
200 #define NVMEDIA_VMP_ATTR_TRANSFORM (1<<14)
278 uint16_t mixerHeight,
279 float_t sourceAspectRatio,
281 uint16_t videoHeight,
291 NvMediaVideoMixer *mixer
433 NvMediaVideoMixer *mixer,
434 uint32_t attributeMask,
500 NvMediaVideoMixer *mixer,
533 NvMediaVideoMixer *mixer,
#define NvMediaSurfaceType
Defines the set of NvMedia surface types.
NvMediaStatus NvMediaVideoMixerRenderSurface(NvMediaVideoMixer *mixer, NvMediaVideoSurface *outputSurface, NvMediaBackground *background, NvMediaVideoDesc *video)
Performs a video post-processing and compositing operation to a surface.
uint32_t NvMediaBool
A boolean value, holding NVMEDIA_TRUE or NVMEDIA_FALSE.
NvMediaPictureStructure
Defines picture structure types.
NvMediaNoiseReductionAlgorithm
Noise Reduction Algorithm.
void NvMediaVideoMixer
A handle representing a video mixer object.
NvMediaColorStandard
Defines color standards.
The picture is a field, and is the bottom field of the surface.
NvMediaStatus
The set of all possible error codes.
void NvMediaVideoMixerSetAttributes(NvMediaVideoMixer *mixer, uint32_t attributeMask, NvMediaVideoMixerAttributes *attributes)
Sets NvMediaVideoMixer attributes.
NvMediaDeinterlaceType
Defines deinterlace types.
NvMediaStatus NvMediaVideoMixerRenderSurfaceWithAlpha(NvMediaVideoMixer *mixer, NvMediaVideoSurface *outputSurface, NvMediaBackground *background, NvMediaVideoDesc *video, NvMediaAlphaSurface *alpha)
Performs post-processing and compositing with alpha channel replacement.
The picture is a field, and is the top field of the surface.
NvMediaFilterQuality
Defines filter quality levels.
NvMediaStatus NvMediaVideoMixerGetVersion(NvMediaVersion *version)
Returns the version information for the Video Mixer library.
void NvMediaDevice
An opaque handle representing a NvMediaDevice object.
void NvMediaVideoMixerDestroy(NvMediaVideoMixer *mixer)
Destroys a mixer created by NvMediaVideoMixerCreate.
The picture is a frame, and hence is the entire surface.
NvMediaVideoMixer * NvMediaVideoMixerCreate(NvMediaDevice *device, NvMediaSurfaceType surfaceType, uint16_t mixerWidth, uint16_t mixerHeight, float_t sourceAspectRatio, uint16_t videoWidth, uint16_t videoHeight, uint32_t features)
The principle job of the video mixer is to convert YUV data to RGB, and perform other post-processing...