NVIDIA DRIVE OS Linux API Reference

5.1.0.2 Release

 All Data Structures Namespaces 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 2
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 )__NVM_DEPRECATED_MSG__("Use NvMedia2DCopyPlaneNew API");
258 
279  NvMedia2D *i2d,
280  NvMediaImage *dstSurface,
281  uint32_t dstPlane,
282  NvMediaImage *srcSurface,
283  uint32_t srcPlane
284 );
285 
311  NvMediaDevice *device,
312  NvMediaImage *imageOdd,
313  NvMediaImage *imageEven,
314  NvMediaImage *outImage
315 )__NVM_DEPRECATED_MSG__("Use NvMedia2DWeaveNew() API");
316 
342  NvMedia2D *i2d,
343  NvMediaImage *imageOdd,
344  NvMediaImage *imageEven,
345  NvMediaImage *outImage
346 );
347 
348 /*
349  * \defgroup history_nvmedia_2d History
350  * Provides change history for the NvMedia 2D API.
351  *
352  * \section history_nvmedia_2d Version History
353  *
354  * <b> Version 1.1 </b> February 1, 2016
355  * - Initial release
356  *
357  * <b> Version 1.2 </b> May 11, 2016
358  * - Added \ref NvMedia2DCheckVersion API
359  *
360  * <b> Version 1.3 </b> May 5, 2017
361  * - Removed compositing, blending and alpha related defines and structures
362  *
363  * <b> Version 2.0 </b> May 11, 2017
364  * - Deprecated NvMedia2DBlit API
365  * - Deprecated NvMedia2DCheckVersion API
366  * - Deprecated NvMedia2DColorStandard, NvMedia2DColorRange and
367  * NvMedia2DColorMatrix types
368  * - Added \ref NvMedia2DGetVersion API
369  *
370  * <b> Version 2.1 </b> May 17, 2017
371  * - Moved transformation to nvmedia_common.h
372  * - Renamed NvMedia2DTransform to \ref NvMediaTransform
373  *
374  * <b> Version 2.2 </b> September 4, 2018
375  * - Added deprecated warning message for \refNvMedia2DCopyPlane,
376  NvMedia2DWeave
377  * - Added APIs \ref NvMedia2DCopyPlaneNew, \ref NvMedia2DWeaveNew
378  */
381 #ifdef __cplusplus
382 }; /* extern "C" */
383 #endif
384 
385 #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
NVIDIA Media Interface: Image Processing
#define __NVM_DEPRECATED_MSG__(fmt)
Definition: nvmedia_core.h:39
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:252
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:199
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
NvMediaStatus NvMedia2DCopyPlane(NvMediaImage *dstSurface, uint32_t dstPlane, NvMediaImage *srcSurface, uint32_t srcPlane) __NVM_DEPRECATED_MSG__("Use NvMedia2DCopyPlaneNew API")
Copies a plane of a YUV image to another YUV image.
NvMedia2D * NvMedia2DCreate(NvMediaDevice *device)
Creates a 2D object.
NvMediaStatus NvMedia2DCopyPlaneNew(NvMedia2D *i2d, NvMediaImage *dstSurface, uint32_t dstPlane, NvMediaImage *srcSurface, uint32_t srcPlane)
Copies a plane of a YUV image to another YUV image.
Specifies enable low quality filtering.
Definition: nvmedia_2d.h:52
void NvMediaDevice
An opaque handle representing a NvMediaDevice object.
Definition: nvmedia_core.h:305
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
NvMediaStatus NvMedia2DWeaveNew(NvMedia2D *i2d, NvMediaImage *imageOdd, NvMediaImage *imageEven, NvMediaImage *outImage)
Performs an NvMedia2D weave operation on NvMedia images.
NvMediaStatus NvMedia2DWeave(NvMediaDevice *device, NvMediaImage *imageOdd, NvMediaImage *imageEven, NvMediaImage *outImage) __NVM_DEPRECATED_MSG__("Use NvMedia2DWeaveNew() API")
Performs an NvMedia2D weave operation on NvMedia images.
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