Jetson Linux Multimedia API Reference

32.4.2 Release

 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
nvbuf_utils.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2016-2020, NVIDIA CORPORATION. All rights reserved.
3  *
4  * NVIDIA Corporation and its licensors retain all intellectual property
5  * and proprietary rights in and to this software, related documentation
6  * and any modifications thereto. Any use, reproduction, disclosure or
7  * distribution of this software and related documentation without an express
8  * license agreement from NVIDIA Corporation is strictly prohibited.
9  */
10 
25 #ifndef _NVBUF_UTILS_H_
26 #define _NVBUF_UTILS_H_
27 
28 #ifdef __cplusplus
29 extern "C"
30 {
31 #endif
32 
33 #include <EGL/egl.h>
34 #include <EGL/eglext.h>
35 #include <errno.h>
36 #include <stdbool.h>
37 
41 #define MAX_NUM_PLANES 4
42 
46 #define MAX_COMPOSITE_FRAME 16
47 
52 #define NVBUF_CHROMA_SUBSAMPLING_HORIZ_DEFAULT 0
53 #define NVBUF_CHROMA_SUBSAMPLING_VERT_DEFAULT 1
54 
58 #define NVBUF_MAX_SYNCOBJ_PARAMS 5
59 
66 #define NVBUFFER_SYNCPOINT_WAIT_INFINITE 0xFFFFFFFF
67 
71 typedef enum
72 {
78 
82 typedef enum
83 {
89 
93 typedef enum
94 {
100 
104 typedef enum
105 {
113 
119 typedef enum
120 {
135 } NvBufferTag;
136 
140 typedef enum
141 {
245 
249 typedef enum
250 {
268 
272 typedef enum
273 {
287 
291 typedef enum {
301 
305 typedef enum {
309  NVBUFFER_BLEND = 1 << 1,
311 
318 {
319  uint32_t syncpointID;
320  uint32_t value;
322 
326 typedef struct _NvBufferSyncObjRec
327 {
329  uint32_t num_insyncobj;
331  uint32_t use_outsyncobj;
333 
337 typedef struct
338 {
340  float r;
342  float g;
344  float b;
346 
350 typedef struct
351 {
353  uint32_t top;
355  uint32_t left;
357  uint32_t width;
359  uint32_t height;
360 }NvBufferRect;
361 
368 typedef struct _NvBufferSession * NvBufferSession;
369 
374 {
376  uint8_t chromaLocHoriz;
377  uint8_t chromaLocVert;
379 
380 #define NVBUF_CHROMA_SUBSAMPLING_PARAMS_DEFAULT \
381  { \
382  NVBUF_CHROMA_SUBSAMPLING_HORIZ_DEFAULT, \
383  NVBUF_CHROMA_SUBSAMPLING_VERT_DEFAULT \
384  }
385 
389 typedef struct _NvBufferCreateParams
390 {
392  int32_t width;
394  int32_t height;
398  int32_t memsize;
406 
410 typedef struct _NvBufferParams
411 {
413  uint32_t dmabuf_fd;
415  void *nv_buffer;
419  int32_t memsize;
421  uint32_t nv_buffer_size;
425  uint32_t num_planes;
439 
443 typedef struct _NvBufferParamsEx
444 {
472  void *reserved;
474 
479 {
481  uint32_t composite_flag;
483  uint32_t input_buf_count;
494  NvBufferSession session;
496 
501 {
503  uint32_t transform_flag;
514  NvBufferSession session;
516 
517 
526 int NvBufferSyncObjWait (NvBufferSyncObjParams *syncobj_params, unsigned int timeout);
527 
533 int NvBufferGetSize (void);
534 
546 EGLImageKHR NvEGLImageFromFd (EGLDisplay display, int dmabuf_fd);
547 
558 int NvDestroyEGLImage (EGLDisplay display, EGLImageKHR eglImage);
559 
572 int NvBufferCreate (int *dmabuf_fd, int width, int height,
573  NvBufferLayout layout, NvBufferColorFormat colorFormat);
574 
583 int NvBufferCreateEx (int *dmabuf_fd, NvBufferCreateParams *input_params);
584 
593 int NvBufferCreateInterlace (int *dmabuf_fd, NvBufferCreateParams *input_params);
594 
595 
605 int NvBufferCreateWithChromaLoc (int *dmabuf_fd, NvBufferCreateParams *input_params, NvBufferChromaSubsamplingParams *chromaSubsampling);
606 
614 int NvBufferGetParams (int dmabuf_fd, NvBufferParams *params);
615 
623 int NvBufferGetParamsEx (int dmabuf_fd, NvBufferParamsEx *exparams);
624 
631 int NvBufferDestroy (int dmabuf_fd);
632 
640 int ExtractFdFromNvBuffer (void *nvbuf, int *dmabuf_fd);
641 
649 int NvReleaseFd (int dmabuf_fd);
650 
663 int NvBufferMemSyncForCpu (int dmabuf_fd, unsigned int plane, void **pVirtAddr);
664 
676 int NvBufferMemSyncForDevice (int dmabuf_fd, unsigned int plane, void **pVirtAddr);
677 
699 int NvBufferMemMap (int dmabuf_fd, unsigned int plane, NvBufferMemFlags memflag, void **pVirtAddr);
700 
716 int NvBufferMemUnMap (int dmabuf_fd, unsigned int plane, void **pVirtAddr);
717 
728 int NvBuffer2Raw (int dmabuf_fd, unsigned int plane, unsigned int out_width, unsigned int out_height, unsigned char *ptr);
729 
740 int Raw2NvBuffer (unsigned char *ptr, unsigned int plane, unsigned int in_width, unsigned int in_height, int dmabuf_fd);
741 
748 NvBufferSession NvBufferSessionCreate(void);
749 
754 void NvBufferSessionDestroy(NvBufferSession session);
755 
765 int NvBufferTransform (int src_dmabuf_fd, int dst_dmabuf_fd, NvBufferTransformParams *transform_params);
766 
777 int NvBufferTransformAsync (int src_dmabuf_fd, int dst_dmabuf_fd, NvBufferTransformParams *transform_params, NvBufferSyncObj *syncobj);
778 
779 
792 int NvBufferComposite (int *src_dmabuf_fds, int dst_dmabuf_fd, NvBufferCompositeParams *composite_params);
793 
794 #ifdef __cplusplus
795 }
796 #endif
797 
800 #endif
uint32_t layout[MAX_NUM_PLANES]
layout type of each planes of hardware buffer.
Definition: nvbuf_utils.h:437
uint32_t num_planes
number of planes of hardware buffer.
Definition: nvbuf_utils.h:425
NvBufferParams params
nvbuffer basic parameters.
Definition: nvbuf_utils.h:446
NvBufferSession session
NvBufferSession to be used for transform.
Definition: nvbuf_utils.h:514
int ExtractFdFromNvBuffer(void *nvbuf, int *dmabuf_fd)
Extracts the dmabuf_fd from the hardware buffer.
NvBufferColorFormat pixel_format
video format type of hardware buffer.
Definition: nvbuf_utils.h:423
BT.601 colorspace - Y/CbCr 4:2:0 multi-planar.
Definition: nvbuf_utils.h:155
8-bit grayscale.
Definition: nvbuf_utils.h:215
uint32_t left
rectangle left.
Definition: nvbuf_utils.h:355
NvBufferRect src_comp_rect[MAX_COMPOSITE_FRAME]
source rectangle coordinates of input buffers for composition.
Definition: nvbuf_utils.h:487
void * reserved
reserved field.
Definition: nvbuf_utils.h:472
bool is_protected
get buffer vpr information.
Definition: nvbuf_utils.h:468
uint32_t transform_flag
flag to indicate which of the transform parameters are valid.
Definition: nvbuf_utils.h:503
NvBufferSyncObj syncobj
buffer sync point object parameters
Definition: nvbuf_utils.h:470
BT.601 colorspace - YUV 4:2:2 planar.
Definition: nvbuf_utils.h:167
BT.601 colorspace - YUV444 multi-planar.
Definition: nvbuf_utils.h:213
struct _NvBufferParamsEx NvBufferParamsEx
Holds extended parameters for a hardware buffer.
tag for H264/H265/VP9 Video Decoder.
Definition: nvbuf_utils.h:132
transform flag to set flip method.
Definition: nvbuf_utils.h:299
float g
background color value for g.
Definition: nvbuf_utils.h:342
uint32_t psize[MAX_NUM_PLANES]
size of each vodeo planes of hardware buffer.
Definition: nvbuf_utils.h:435
transform flag to set filter type.
Definition: nvbuf_utils.h:297
struct _NvBufferChromaSubSamplingParams NvBufferChromaSubsamplingParams
Holds Chroma Subsampling parameters.
int NvReleaseFd(int dmabuf_fd)
Releases the dmabuf_fd buffer.
Memory read.
Definition: nvbuf_utils.h:107
flag to set for composition.
Definition: nvbuf_utils.h:307
Memory write.
Definition: nvbuf_utils.h:109
struct _NvBufferSyncObjParams NvBufferSyncObjParams
Holds parameters for buffer sync point object.
transform flag to crop source rectangle.
Definition: nvbuf_utils.h:293
Video flip rotate 270 degree counter-clockwise.
Definition: nvbuf_utils.h:258
Video flip with respect to Y-axis.
Definition: nvbuf_utils.h:262
LegacyRGBA colorspace - BGRA-8-8-8-8 planar.
Definition: nvbuf_utils.h:175
int32_t sizeofvaliddatainbytes
size of the valid data from the first to the last valid byte.
Definition: nvbuf_utils.h:452
uint32_t input_buf_count
number of the input buffers to be composited.
Definition: nvbuf_utils.h:483
tag for Video Transform/Composite.
Definition: nvbuf_utils.h:134
NvBufferTransform_Filter transform_filter
transform filter.
Definition: nvbuf_utils.h:507
int32_t memsize
size of the memory.
Definition: nvbuf_utils.h:398
Video flip inverse transpode.
Definition: nvbuf_utils.h:266
BT.601 colorspace - Y/CbCr 4:4:4 multi-planar.
Definition: nvbuf_utils.h:221
NvBufferRect dst_comp_rect[MAX_COMPOSITE_FRAME]
destination rectangle coordinates of input buffers for composition.
Definition: nvbuf_utils.h:489
BT.709 colorspace - Y/CbCr 10 bit 4:4:4 multi-planar.
Definition: nvbuf_utils.h:235
int32_t width
width of the buffer.
Definition: nvbuf_utils.h:392
Video flip rotate 180 degree.
Definition: nvbuf_utils.h:256
Holds composition background r,g,b colors.
Definition: nvbuf_utils.h:337
int NvBufferMemUnMap(int dmabuf_fd, unsigned int plane, void **pVirtAddr)
Unmaps the mapped virtual address of the plane.
BT.601 colorspace - YUV ER 4:2:2 planar.
Definition: nvbuf_utils.h:169
uint32_t physicaladdress[MAX_NUM_PLANES]
physical address of allocated planes.
Definition: nvbuf_utils.h:460
BT.601 colorspace - Y/CbCr 4:2:0 multi-planar.
Definition: nvbuf_utils.h:151
Pitch Layout.
Definition: nvbuf_utils.h:96
struct _NvBufferCreateParams NvBufferCreateParams
Holds the input parameters for hardware buffer creation.
BT.601 colorspace - Y/CrCb 4:2:0 10-bit multi-planar.
Definition: nvbuf_utils.h:189
BT.709 colorspace - Y/CbCr 4:2:0 10-bit multi-planar.
Definition: nvbuf_utils.h:183
transform filter bilinear.
Definition: nvbuf_utils.h:277
LegacyRGBA colorspace - XRGB-8-8-8-8 planar.
Definition: nvbuf_utils.h:177
LegacyRGBA colorspace - ARGB-8-8-8-8 planar.
Definition: nvbuf_utils.h:179
int NvBufferGetParamsEx(int dmabuf_fd, NvBufferParamsEx *exparams)
Gets buffer extended parameters.
buffer payload with HW memory handle for specific memory size.
Definition: nvbuf_utils.h:76
transform filter 10 tap.
Definition: nvbuf_utils.h:281
uint32_t secondfieldoffset[MAX_NUM_PLANES]
offset of the second field for interlaced buffer.
Definition: nvbuf_utils.h:456
Holds parameters for a hardware buffer.
Definition: nvbuf_utils.h:410
uint32_t nv_buffer_size
size of hardware buffer.
Definition: nvbuf_utils.h:421
Holds Chroma Subsampling parameters.
Definition: nvbuf_utils.h:373
BT.709_ER colorspace - Y/CbCr 4:4:4 multi-planar.
Definition: nvbuf_utils.h:233
int NvBuffer2Raw(int dmabuf_fd, unsigned int plane, unsigned int out_width, unsigned int out_height, unsigned char *ptr)
Copies the NvBuffer plane contents to a raw buffer plane.
Memory read & write.
Definition: nvbuf_utils.h:111
transform filter nearest.
Definition: nvbuf_utils.h:275
uint32_t composite_flag
flag to indicate which of the composition/blending parameters are valid.
Definition: nvbuf_utils.h:481
uint32_t height
rectangle height.
Definition: nvbuf_utils.h:359
transform filter smart.
Definition: nvbuf_utils.h:283
int Raw2NvBuffer(unsigned char *ptr, unsigned int plane, unsigned int in_width, unsigned int in_height, int dmabuf_fd)
Copies raw buffer plane contents to an NvBuffer plane.
NvBufferTransform_Flag
Defines flags to indicate for valid transform.
Definition: nvbuf_utils.h:291
transform filter 5 tap.
Definition: nvbuf_utils.h:279
int NvBufferMemSyncForCpu(int dmabuf_fd, unsigned int plane, void **pVirtAddr)
Syncs the HW memory cache for the CPU.
NvBufferComposite_Flag
Defines flags that specify valid composition/blending operations.
Definition: nvbuf_utils.h:305
int NvBufferMemMap(int dmabuf_fd, unsigned int plane, NvBufferMemFlags memflag, void **pVirtAddr)
Gets the memory-mapped virtual address of the plane.
BT.709 colorspace - Y/CbCr 4:2:0 multi-planar.
Definition: nvbuf_utils.h:201
BT.601 colorspace - YUV 4:2:2 planar.
Definition: nvbuf_utils.h:171
NvBufferChromaSubsamplingParams chromaSubsampling
chroma subsampling parameters
Definition: nvbuf_utils.h:466
Interlaced scan formats.
Definition: nvbuf_utils.h:87
uint32_t width
rectangle width.
Definition: nvbuf_utils.h:357
BT.601 colorspace - YUV ER 4:2:2 planar.
Definition: nvbuf_utils.h:165
NvBufferTag
Defines tags that identify the components requesting a memory allocation.
Definition: nvbuf_utils.h:119
BT.2020 colorspace - Y/CbCr 4:2:0 12-bit multi-planar.
Definition: nvbuf_utils.h:193
NvBufferSession NvBufferSessionCreate(void)
Creates a new NvBufferSession for parallel scheduling of buffer transformations and compositions...
float b
background color value for b.
Definition: nvbuf_utils.h:344
#define MAX_NUM_PLANES
Defines the maximum number of planes for a video frame.
Definition: nvbuf_utils.h:41
BT.601 colorspace - YVU420 ER multi-planar.
Definition: nvbuf_utils.h:149
tag for Camera.
Definition: nvbuf_utils.h:124
NvBufferColorFormat colorFormat
colorformat of the buffer.
Definition: nvbuf_utils.h:402
BT.601 colorspace - YUV420 multi-planar.
Definition: nvbuf_utils.h:143
struct _NvBufferCompositeParams NvBufferCompositeParams
Holds parameters related to compositing/blending.
NvBufferCompositeBackground composite_bgcolor
background color values for composition.
Definition: nvbuf_utils.h:491
NvBufferSyncObjParams insyncobj[NVBUF_MAX_SYNCOBJ_PARAMS]
Definition: nvbuf_utils.h:328
BT.2020 colorspace - Y/CbCr 10 bit 4:4:4 multi-planar.
Definition: nvbuf_utils.h:239
BT.709_ER colorspace - Y/CbCr 4:2:2 multi-planar.
Definition: nvbuf_utils.h:231
int32_t startofvaliddata
offset in bytes from the start of the buffer to the first valid byte.
Definition: nvbuf_utils.h:449
float dst_comp_rect_alpha[MAX_COMPOSITE_FRAME]
alpha values of input buffers for the blending.
Definition: nvbuf_utils.h:485
NvBufferDisplayScanFormat scanformat[MAX_NUM_PLANES]
display scan format - progressive/interlaced.
Definition: nvbuf_utils.h:454
int NvBufferCreateInterlace(int *dmabuf_fd, NvBufferCreateParams *input_params)
Allocates a hardware buffer for interlace scan format.
NvBufferPayloadType payloadType
payload type of the buffer.
Definition: nvbuf_utils.h:396
Holds extended parameters for a hardware buffer.
Definition: nvbuf_utils.h:443
NvBufferTransform_Flip transform_flip
flip method.
Definition: nvbuf_utils.h:505
uint32_t height[MAX_NUM_PLANES]
height of each planes of hardware buffer.
Definition: nvbuf_utils.h:429
#define NVBUF_MAX_SYNCOBJ_PARAMS
Defines the maximum number of sync object parameters.
Definition: nvbuf_utils.h:58
tag for Jpeg Encoder/Decoder.
Definition: nvbuf_utils.h:126
struct _NvBufferParams NvBufferParams
Holds parameters for a hardware buffer.
int NvBufferMemSyncForDevice(int dmabuf_fd, unsigned int plane, void **pVirtAddr)
Syncs the hardware memory cache for the device.
uint32_t blockheightlog2[MAX_NUM_PLANES]
block height of the planes for blockLinear layout hardware buffer.
Definition: nvbuf_utils.h:458
uint32_t width[MAX_NUM_PLANES]
width of each planes of hardware buffer.
Definition: nvbuf_utils.h:427
Holds parameters for buffer sync point object.
Definition: nvbuf_utils.h:317
uint32_t pitch[MAX_NUM_PLANES]
pitch of each planes of hardware buffer.
Definition: nvbuf_utils.h:431
uint32_t use_outsyncobj
Definition: nvbuf_utils.h:331
NvBufferDisplayScanFormat
Defines display scan formats for NvBuffer video planes.
Definition: nvbuf_utils.h:82
BT.709 ER colorspace - Y/CbCr 10 bit 4:4:4 multi-planar.
Definition: nvbuf_utils.h:237
int NvBufferCreate(int *dmabuf_fd, int width, int height, NvBufferLayout layout, NvBufferColorFormat colorFormat)
Allocates a HW buffer (deprecated).
EGLImageKHR NvEGLImageFromFd(EGLDisplay display, int dmabuf_fd)
Creates an instance of EGLImage from a DMABUF FD.
BT.601 colorspace - YUV420 ER multi-planar.
Definition: nvbuf_utils.h:147
uint32_t dmabuf_fd
Holds the DMABUF FD of the hardware buffer.
Definition: nvbuf_utils.h:413
BT.601 colorspace - YUV ER 4:2:2 planar.
Definition: nvbuf_utils.h:161
int NvBufferCreateWithChromaLoc(int *dmabuf_fd, NvBufferCreateParams *input_params, NvBufferChromaSubsamplingParams *chromaSubsampling)
Allocates a hardware buffer with a given chroma subsampling location.
BT.709 colorspace - YUV420 ER multi-planar.
Definition: nvbuf_utils.h:199
uint32_t offset[MAX_NUM_PLANES]
memory offset values of each video planes of hardware buffer.
Definition: nvbuf_utils.h:433
buffer payload with HW memory handle for set of planes.
Definition: nvbuf_utils.h:74
BlockLinear Layout.
Definition: nvbuf_utils.h:98
BT.601 colorspace - YUV420 multi-planar.
Definition: nvbuf_utils.h:145
uint32_t top
rectangle top.
Definition: nvbuf_utils.h:353
int32_t memsize
size of the memory.
Definition: nvbuf_utils.h:419
int NvBufferTransform(int src_dmabuf_fd, int dst_dmabuf_fd, NvBufferTransformParams *transform_params)
Transforms one DMA buffer to another DMA buffer.
int NvBufferGetSize(void)
This method can be used to get HW Buffer struct size.
Video flip with respect to X-axis.
Definition: nvbuf_utils.h:260
Invalid color format.
Definition: nvbuf_utils.h:243
BT.709 colorspace - Y/CbCr ER 4:2:0 multi-planar.
Definition: nvbuf_utils.h:203
uint64_t flags[MAX_NUM_PLANES]
flags associated with planes
Definition: nvbuf_utils.h:462
void * nv_buffer
pointer to hardware buffer memory.
Definition: nvbuf_utils.h:415
void NvBufferSessionDestroy(NvBufferSession session)
Destroys an existing NvBufferSession.
Holds the input parameters for hardware buffer creation.
Definition: nvbuf_utils.h:389
int NvBufferGetParams(int dmabuf_fd, NvBufferParams *params)
Gets buffer parameters.
NvBufferPayloadType
Defines Payload types for NvBuffer.
Definition: nvbuf_utils.h:71
uint8_t chromaLocHoriz
location settings
Definition: nvbuf_utils.h:376
Progessive scan formats.
Definition: nvbuf_utils.h:85
int NvBufferTransformAsync(int src_dmabuf_fd, int dst_dmabuf_fd, NvBufferTransformParams *transform_params, NvBufferSyncObj *syncobj)
Transforms one DMA buffer to another DMA buffer asyncroniously (non-blocking).
int NvBufferComposite(int *src_dmabuf_fds, int dst_dmabuf_fd, NvBufferCompositeParams *composite_params)
Composites multiple input DMA buffers to one output DMA buffer.
int32_t height
height of the buffer.
Definition: nvbuf_utils.h:394
BT.601 colorspace - Y/CbCr ER 4:2:0 multi-planar.
Definition: nvbuf_utils.h:157
NvBufferTransform_Filter
Defines transform video filter types.
Definition: nvbuf_utils.h:272
BT.601 colorspace - Y/CbCr ER 4:2:0 multi-planar.
Definition: nvbuf_utils.h:153
BT.601 colorspace - Y/CbCr 4:2:0 10-bit multi-planar.
Definition: nvbuf_utils.h:181
BT.601 colorspace - Y/CbCr 4:2:0 12-bit multi-planar.
Definition: nvbuf_utils.h:191
buffer sync point object.
Definition: nvbuf_utils.h:326
BT.601 colorspace - Y/CrCb 4:2:0 12-bit multi-planar.
Definition: nvbuf_utils.h:195
Holds parameters for buffer transform functions.
Definition: nvbuf_utils.h:500
BT.601_ER colorspace - Y/CbCr 4:4:4 multi-planar.
Definition: nvbuf_utils.h:225
BT.709 colorspace - YUV420 multi-planar.
Definition: nvbuf_utils.h:197
NvBufferLayout layout
layout of the buffer.
Definition: nvbuf_utils.h:400
NvBufferTag nvbuf_tag
tag to associate with the buffer.
Definition: nvbuf_utils.h:404
BT.601 colorspace - Y/CbCr 4:2:2 multi-planar.
Definition: nvbuf_utils.h:217
float r
background color value for r.
Definition: nvbuf_utils.h:340
struct _NvBufferSyncObjRec NvBufferSyncObj
buffer sync point object.
BT.601_ER colorspace - Y/CbCr 4:2:2 multi-planar.
Definition: nvbuf_utils.h:223
tag None.
Definition: nvbuf_utils.h:122
Video flip none.
Definition: nvbuf_utils.h:252
BT.601 colorspace - YUV 4:2:2 planar.
Definition: nvbuf_utils.h:163
struct _NvBufferTransformParams NvBufferTransformParams
Holds parameters for buffer transform functions.
uint32_t num_insyncobj
Definition: nvbuf_utils.h:329
transform flag to crop destination rectangle.
Definition: nvbuf_utils.h:295
BT.2020 colorspace - Y/CbCr 12 bit 4:4:4 multi-planar.
Definition: nvbuf_utils.h:241
BT.2020 colorspace - Y/CbCr 4:2:0 10-bit multi-planar.
Definition: nvbuf_utils.h:187
Optical flow SAD calculation Buffer format.
Definition: nvbuf_utils.h:211
Video flip transpose.
Definition: nvbuf_utils.h:264
NvBufferPayloadType payloadType
payload type of the buffer.
Definition: nvbuf_utils.h:417
BT.709 colorspace - Y/CbCr 4:2:2 multi-planar.
Definition: nvbuf_utils.h:227
NvBufferSyncObjParams outsyncobj
Definition: nvbuf_utils.h:330
BT.2020 colorspace - Y/CbCr 4:2:0 multi-planar.
Definition: nvbuf_utils.h:207
NvBufferTransform_Flip
Defines video flip methods.
Definition: nvbuf_utils.h:249
BT.601 colorspace - YUV 4:2:2 planar.
Definition: nvbuf_utils.h:159
BT.601 colorspace - Y/CbCr 4:2:2 10-bit semi-planar.
Definition: nvbuf_utils.h:219
NvBufferRect dst_rect
destination rectangle coordinates for crop opeartion.
Definition: nvbuf_utils.h:511
void * payloadmetaInfo
metadata associated with the hardware buffer.
Definition: nvbuf_utils.h:464
NvBufferLayout
Defines Layout formats for NvBuffer video planes.
Definition: nvbuf_utils.h:93
tag for H264/H265 Video Encoder.
Definition: nvbuf_utils.h:130
int NvBufferDestroy(int dmabuf_fd)
Destroys a HW buffer.
int NvBufferCreateEx(int *dmabuf_fd, NvBufferCreateParams *input_params)
Allocates a hardware buffer.
Holds coordinates for a rectangle.
Definition: nvbuf_utils.h:350
NvBufferColorFormat
Defines color formats for NvBuffer.
Definition: nvbuf_utils.h:140
Holds parameters related to compositing/blending.
Definition: nvbuf_utils.h:478
Video flip rotate 90 degree counter-clockwise.
Definition: nvbuf_utils.h:254
BT.709_ER colorspace - Y/CbCr 4:2:0 10-bit multi-planar.
Definition: nvbuf_utils.h:185
struct _NvBufferSession * NvBufferSession
Holds an opaque NvBuffer session type required for parallel buffer tranformations and compositions...
Definition: nvbuf_utils.h:368
transform filter nicest.
Definition: nvbuf_utils.h:285
BT.2020 colorspace - YUV420 multi-planar.
Definition: nvbuf_utils.h:205
tag for VPR Buffers.
Definition: nvbuf_utils.h:128
int NvBufferSyncObjWait(NvBufferSyncObjParams *syncobj_params, unsigned int timeout)
This method can be used to wait on sync point ID.
BT.709 colorspace - Y/CbCr 4:4:4 multi-planar.
Definition: nvbuf_utils.h:229
NvBufferRect src_rect
source rectangle coordinates for crop opeartion.
Definition: nvbuf_utils.h:509
BT.601 colorspace - YUV ER 4:2:2 planar.
Definition: nvbuf_utils.h:173
int NvDestroyEGLImage(EGLDisplay display, EGLImageKHR eglImage)
Destroys an EGLImage object.
NvBufferSession session
NvBufferSession to be used for composition.
Definition: nvbuf_utils.h:494
flag to set for blending.
Definition: nvbuf_utils.h:309
NvBufferMemFlags
Defines memory access flags for NvBuffer.
Definition: nvbuf_utils.h:104
#define MAX_COMPOSITE_FRAME
Defines the maximum number of input video frames that can be used for composition.
Definition: nvbuf_utils.h:46