L4T Multimedia API Reference

28.2 Release

 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
nvbuf_utils.h File Reference

Detailed Description

NVIDIA Multimedia Utilities: Buffering and Transform/Composition/Blending

Definition in file nvbuf_utils.h.

Go to the source code of this file.

Data Structures

struct  NvBufferCompositeBackground
 Defines composition background r,g,b colors. More...
 
struct  NvBufferRect
 Defines coordinates for rectangle. More...
 
struct  _NvBufferCreateParams
 Defines input parameters for hardware buffer creation. More...
 
struct  _NvBufferParams
 Defines parameters related to hardware buffer. More...
 
struct  _NvBufferCompositeParams
 Defines parameters related to composition/blending. More...
 
struct  _NvBufferTransformParams
 Defines parameters related to transform. More...
 

Macros

#define MAX_NUM_PLANES   3
 Defines maximum number of planes for video frame. More...
 
#define MAX_COMPOSITE_FRAME   16
 Defines maximum number of input video frames can be used for composition. More...
 

Typedefs

typedef struct
_NvBufferCreateParams 
NvBufferCreateParams
 Defines input parameters for hardware buffer creation. More...
 
typedef struct _NvBufferParams NvBufferParams
 Defines parameters related to hardware buffer. More...
 
typedef struct
_NvBufferCompositeParams 
NvBufferCompositeParams
 Defines parameters related to composition/blending. More...
 
typedef struct
_NvBufferTransformParams 
NvBufferTransformParams
 Defines parameters related to transform. More...
 

Enumerations

enum  NvBufferPayloadType {
  NvBufferPayload_SurfArray,
  NvBufferPayload_MemHandle
}
 Defines Payload type for NvBuffer. More...
 
enum  NvBufferLayout {
  NvBufferLayout_Pitch,
  NvBufferLayout_BlockLinear
}
 Defines Layout formats for NvBuffer video planes. More...
 
enum  NvBufferMemFlags {
  NvBufferMem_Read,
  NvBufferMem_Write,
  NvBufferMem_Read_Write
}
 Defines memory access flags for NvBuffer. More...
 
enum  NvBufferTag {
  NvBufferTag_NONE = 0x0,
  NvBufferTag_CAMERA = 0x200,
  NvBufferTag_JPEG = 0x1500,
  NvBufferTag_VIDEO_ENC = 0x1200,
  NvBufferTag_VIDEO_DEC = 0x1400,
  NvBufferTag_VIDEO_CONVERT = 0xf01
}
 Defines tags to associate, while allocation of NvBuffer. More...
 
enum  NvBufferColorFormat {
  NvBufferColorFormat_YUV420,
  NvBufferColorFormat_YVU420,
  NvBufferColorFormat_NV12,
  NvBufferColorFormat_NV21,
  NvBufferColorFormat_UYVY,
  NvBufferColorFormat_VYUY,
  NvBufferColorFormat_YUYV,
  NvBufferColorFormat_YVYU,
  NvBufferColorFormat_ABGR32,
  NvBufferColorFormat_XRGB32,
  NvBufferColorFormat_ARGB32,
  NvBufferColorFormat_Invalid
}
 Defines color formats for NvBuffer. More...
 
enum  NvBufferTransform_Flip {
  NvBufferTransform_None,
  NvBufferTransform_Rotate90,
  NvBufferTransform_Rotate180,
  NvBufferTransform_Rotate270,
  NvBufferTransform_FlipX,
  NvBufferTransform_FlipY,
  NvBufferTransform_Transpose,
  NvBufferTransform_InvTranspose
}
 Defines video flip methods. More...
 
enum  NvBufferTransform_Filter {
  NvBufferTransform_Filter_Nearest,
  NvBufferTransform_Filter_Bilinear,
  NvBufferTransform_Filter_5_Tap,
  NvBufferTransform_Filter_10_Tap,
  NvBufferTransform_Filter_Smart,
  NvBufferTransform_Filter_Nicest
}
 Defines transform video filter types. More...
 
enum  NvBufferTransform_Flag {
  NVBUFFER_TRANSFORM_CROP_SRC = 1,
  NVBUFFER_TRANSFORM_CROP_DST = 1 << 1,
  NVBUFFER_TRANSFORM_FILTER = 1 << 2,
  NVBUFFER_TRANSFORM_FLIP = 1 << 3
}
 Defines flags to indicate for valid transform. More...
 
enum  NvBufferComposite_Flag {
  NVBUFFER_COMPOSITE = 1,
  NVBUFFER_BLEND = 1 << 1
}
 Defines flags to indicate for valid composition/blending operation. More...
 

Functions

EGLImageKHR NvEGLImageFromFd (EGLDisplay display, int dmabuf_fd)
 This method must be used for getting EGLImage from dmabuf-fd. More...
 
int NvDestroyEGLImage (EGLDisplay display, EGLImageKHR eglImage)
 This method must be used for destroying EGLImage object. More...
 
int NvBufferCreate (int *dmabuf_fd, int width, int height, NvBufferLayout layout, NvBufferColorFormat colorFormat)
 Use this method to allocate HW buffer (Deprecated, instead use NvBufferCreateEx API). More...
 
int NvBufferCreateEx (int *dmabuf_fd, NvBufferCreateParams *input_params)
 Use this method to allocate HW buffer. More...
 
int NvBufferGetParams (int dmabuf_fd, NvBufferParams *params)
 Use this method to get buffer parameters. More...
 
int NvBufferDestroy (int dmabuf_fd)
 This method must be used for destroying hw_buffer. More...
 
int ExtractFdFromNvBuffer (void *nvbuf, int *dmabuf_fd)
 This method must be used to extract dmabuf_fd of the hardware buffer. More...
 
int NvReleaseFd (int dmabuf_fd)
 This method must be used for releasing dmabuf_fd. More...
 
int NvBufferMemSyncForCpu (int dmabuf_fd, unsigned int plane, void **pVirtAddr)
 This method must be used for hw memory cache sync for the CPU. More...
 
int NvBufferMemSyncForDevice (int dmabuf_fd, unsigned int plane, void **pVirtAddr)
 This method must be used for hw memory cache sync for device. More...
 
int NvBufferMemMap (int dmabuf_fd, unsigned int plane, NvBufferMemFlags memflag, void **pVirtAddr)
 This method must be used for getting mem mapped virtual Address of the plane. More...
 
int NvBufferMemUnMap (int dmabuf_fd, unsigned int plane, void **pVirtAddr)
 This method must be used to Unmap the mapped virtual Address of the plane. More...
 
int NvBuffer2Raw (int dmabuf_fd, unsigned int plane, unsigned int out_width, unsigned int out_height, unsigned char *ptr)
 This method is used to copy NvBuffer plane contents to raw buffer plane. More...
 
int Raw2NvBuffer (unsigned char *ptr, unsigned int plane, unsigned int in_width, unsigned int in_height, int dmabuf_fd)
 This method is used to copy raw buffer plane contents to NvBuffer plane. More...
 
int NvBufferTransform (int src_dmabuf_fd, int dst_dmabuf_fd, NvBufferTransformParams *transform_params)
 This method is used to transform one DMA buffer to another DMA buffer. More...
 
int NvBufferComposite (int *src_dmabuf_fds, int dst_dmabuf_fd, NvBufferCompositeParams *composite_params)
 This method is used to composite multiple input DMA buffers to one output DMA buffer. More...