NVIDIA DRIVE 5.0 Linux SDK API Reference

5.0.10.3 Release

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
nvmedia_2d.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2013-2018, NVIDIA CORPORATION. All rights reserved. All
3  * information contained herein is proprietary and confidential to NVIDIA
4  * Corporation. Any use, reproduction, or disclosure without the written
5  * permission of NVIDIA Corporation is prohibited.
6  */
7 
16 #ifndef _NVMEDIA_2D_H
17 #define _NVMEDIA_2D_H
18 
19 #ifdef __cplusplus
20 extern "C" {
21 #endif
22 
23 #include "nvmedia_core.h"
24 #include "nvmedia_common.h"
25 #include "nvmedia_image.h"
37 #define NVMEDIA_2D_VERSION_MAJOR 2
38 
39 #define NVMEDIA_2D_VERSION_MINOR 1
40 
41 
47 typedef enum
48 {
58 
62 typedef enum
63 {
67 
68 /*---------------------------------------------------------*/
78 typedef enum
79 {
89 
97 typedef struct
98 {
105  uint32_t validFields;
109  uint32_t flags;
117 
123 typedef struct
124 {
126  uint32_t crc;
128 
139  NvMediaVersion *version
140 );
141 
145 typedef void NvMedia2D;
146 
155 NvMedia2D *
157  NvMediaDevice *device
158 );
159 
166 void
168  NvMedia2D *i2d
169 );
170 
225  NvMedia2D *i2d,
226  NvMediaImage *dstSurface,
227  const NvMediaRect *dstRect,
228  NvMediaImage *srcSurface,
229  const NvMediaRect *srcRect,
230  const NvMedia2DBlitParameters *params,
231  NvMedia2DBlitParametersOut *paramsOut
232 );
233 
253  NvMediaImage *dstSurface,
254  uint32_t dstPlane,
255  NvMediaImage *srcSurface,
256  uint32_t srcPlane
257 );
258 
284  NvMediaDevice *device,
285  NvMediaImage *imageOdd,
286  NvMediaImage *imageEven,
287  NvMediaImage *outImage
288 );
289 
290 /*
291  * \defgroup history_nvmedia_2d History
292  * Provides change history for the NvMedia 2D API.
293  *
294  * \section history_nvmedia_2d Version History
295  *
296  * <b> Version 1.1 </b> February 1, 2016
297  * - Initial release
298  *
299  * <b> Version 1.2 </b> May 11, 2016
300  * - Added \ref NvMedia2DCheckVersion API
301  *
302  * <b> Version 1.3 </b> May 5, 2017
303  * - Removed compositing, blending and alpha related defines and structures
304  *
305  * <b> Version 2.0 </b> May 11, 2017
306  * - Deprecated NvMedia2DBlit API
307  * - Deprecated NvMedia2DCheckVersion API
308  * - Deprecated NvMedia2DColorStandard, NvMedia2DColorRange and
309  * NvMedia2DColorMatrix types
310  * - Added \ref NvMedia2DGetVersion API
311  *
312  * <b> Version 2.1 </b> May 17, 2017
313  * - Moved transformation to nvmedia_common.h
314  * - Renamed NvMedia2DTransform to \ref NvMediaTransform
315  */
318 #ifdef __cplusplus
319 }; /* extern "C" */
320 #endif
321 
322 #endif /* _NVMEDIA_2D_H */
Holds the additional parameters for a blit.
Definition: nvmedia_2d.h:97
A handle representing image objects.
Definition: nvmedia_image.h:75
Specifies enable the best quality filtering.
Definition: nvmedia_2d.h:56
NvMediaTransform dstTransform
Holds destination transformation when NVMEDIA_2D_BLIT_PARAMS_DST_TRANSFORM is set.
Definition: nvmedia_2d.h:112
NvMedia2DStretchFilter filter
Indicates filter mode.
Definition: nvmedia_2d.h:107
NvMediaStatus NvMedia2DCopyPlane(NvMediaImage *dstSurface, uint32_t dstPlane, NvMediaImage *srcSurface, uint32_t srcPlane)
Copies a plane of a YUV image to another YUV image.
NvMediaStatus NvMedia2DWeave(NvMediaDevice *device, NvMediaImage *imageOdd, NvMediaImage *imageEven, NvMediaImage *outImage)
Performs an NvMedia2D weave operation on NvMedia images.
NVIDIA Media Interface: Image Processing
NvMediaStatus NvMedia2DBlitEx(NvMedia2D *i2d, NvMediaImage *dstSurface, const NvMediaRect *dstRect, NvMediaImage *srcSurface, const NvMediaRect *srcRect, const NvMedia2DBlitParameters *params, NvMedia2DBlitParametersOut *paramsOut)
Performs a 2D blit operation with supplementary return values.
uint32_t crc
Holds returned CRC value.
Definition: nvmedia_2d.h:126
Holds NvMedia Version information.
Definition: nvmedia_core.h:242
Specifies compute and return CRC value.
Definition: nvmedia_2d.h:65
NVIDIA Media Interface: Common Types for Video/Image Encode/Decode
NvMediaColorStandard colorStandard
Holds color space conversion standard when NVMEDIA_2D_BLIT_PARAMS_COLOR_STD is set.
Definition: nvmedia_2d.h:115
NvMediaColorStandard
Defines color standards.
Definition: nvmedia_core.h:123
void NvMedia2DDestroy(NvMedia2D *i2d)
Destroys a 2D object.
Specifies enable use of blit flags.
Definition: nvmedia_2d.h:83
Specifies disable the horizontal and vertical filtering.
Definition: nvmedia_2d.h:50
Specifies enable use of color space conversion standard.
Definition: nvmedia_2d.h:87
NVIDIA Media Interface: Core
NvMediaStatus
The set of all possible error codes.
Definition: nvmedia_core.h:189
NvMediaTransform
Transformations.
NvMediaStatus NvMedia2DGetVersion(NvMediaVersion *version)
Returns the version information for the NvMedia 2D library.
uint32_t flags
Holds flags to use when setting NVMEDIA_2D_BLIT_PARAMS_FLAGS.
Definition: nvmedia_2d.h:109
NvMedia2DStretchFilter
Specifies filtering mode used for stretched blits.
Definition: nvmedia_2d.h:47
NvMedia2DBlitFlags
Specifies operation flags that affect blit behavior.
Definition: nvmedia_2d.h:62
NvMedia2DBlitParamField
Specifies bit-mask for NvMedia2DBlitParameters::validFields.
Definition: nvmedia_2d.h:78
Holds a rectangular region of a surface.
Definition: nvmedia_core.h:146
Holds additional values returned from a blit.
Definition: nvmedia_2d.h:123
NvMedia2D * NvMedia2DCreate(NvMediaDevice *device)
Creates a 2D object.
Specifies enable low quality filtering.
Definition: nvmedia_2d.h:52
void NvMediaDevice
An opaque handle representing a NvMediaDevice object.
Definition: nvmedia_core.h:295
void NvMedia2D
An opaque handle representing an NvMedia2D object.
Definition: nvmedia_2d.h:145
Specifies enable use of stretch filter.
Definition: nvmedia_2d.h:81
uint32_t validFields
Indicates valid fields in this structure.
Definition: nvmedia_2d.h:105
Specifies enable use of destination transform.
Definition: nvmedia_2d.h:85
Specifies enable media quality filtering.
Definition: nvmedia_2d.h:54