NVIDIA DRIVE OS Linux API Reference

5.1.6.1 Release
For Test and Development only

 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages

Detailed Description

Defines and manages objects that decode video.

The NvMediaVideoDecoder object decodes compressed video data, writing the results to a NvMediaVideoSurface.

A specific NvMedia implementation may support decoding multiple types of compressed video data. However, NvMediaVideoDecoder objects are able to decode a specific type of compressed video data. This type must be specified during creation.

Data Structures

struct  NvMediaBitstreamBuffer
 Holds an application data buffer containing compressed video data. More...
 

Macros

#define NVMEDIA_COMMON_VERSION_MAJOR   1
 Major Version number. More...
 
#define NVMEDIA_COMMON_VERSION_MINOR   28
 Minor Version number. More...
 

Typedefs

typedef void NvMediaPictureInfo
 A generic "picture information" pointer type. More...
 
typedef void NvMediaRefSurface
 A generic "reference surface" pointer type. More...
 

Enumerations

enum  NvMediaDecoderInstanceId {
  NVMEDIA_DECODER_INSTANCE_0 = 0,
  NVMEDIA_DECODER_INSTANCE_1,
  NVMEDIA_DECODER_INSTANCE_AUTO
}
 Specifies the decoder instance ID. More...
 
enum  NvMediaEncoderInstanceId {
  NVMEDIA_ENCODER_INSTANCE_0 = 0,
  NVMEDIA_ENCODER_INSTANCE_1,
  NVMEDIA_ENCODER_INSTANCE_AUTO
}
 Specifies the encoder instance ID. More...
 
enum  NvMediaVideoCodec {
  NVMEDIA_VIDEO_CODEC_H264,
  NVMEDIA_VIDEO_CODEC_VC1,
  NVMEDIA_VIDEO_CODEC_VC1_ADVANCED,
  NVMEDIA_VIDEO_CODEC_MPEG1,
  NVMEDIA_VIDEO_CODEC_MPEG2,
  NVMEDIA_VIDEO_CODEC_MPEG4,
  NVMEDIA_VIDEO_CODEC_MJPEG,
  NVMEDIA_VIDEO_CODEC_VP8,
  NVMEDIA_VIDEO_CODEC_HEVC,
  NVMEDIA_VIDEO_CODEC_VP9,
  NVMEDIA_VIDEO_CODEC_H264_MVC,
  NVMEDIA_VIDEO_CODEC_HEVC_MV
}
 Video codec type. More...
 
enum  {
  NVMEDIA_SLH_PRESENT = 0x1,
  NVMEDIA_SPS_PRESENT = 0x2,
  NVMEDIA_PPS_PRESENT = 0x4
}
 NAL types found in a bitstream packet. More...
 

Macro Definition Documentation

#define NVMEDIA_COMMON_VERSION_MAJOR   1

Major Version number.

Definition at line 52 of file nvmedia_common.h.

#define NVMEDIA_COMMON_VERSION_MINOR   28

Minor Version number.

Definition at line 54 of file nvmedia_common.h.

Typedef Documentation

typedef void NvMediaPictureInfo

A generic "picture information" pointer type.

This type serves solely to document the expected usage of a generic (void *) function parameter. In actual usage, the application is expected to physically provide a pointer to an instance of one of the "real" NvMediaPictureInfo* structures, picking the type appropriate for the decoder object in question.

Definition at line 150 of file nvmedia_common.h.

typedef void NvMediaRefSurface

A generic "reference surface" pointer type.

This type serves solely to document the expected usage of a generic (void *) function parameter. In actual usage, the application is expected to physically provide a pointer to an instance of NvMediaVideoSurface or NvMediaImage, depending on the type of decoder API used.

Definition at line 162 of file nvmedia_common.h.

Enumeration Type Documentation

anonymous enum

NAL types found in a bitstream packet.

This is used for TK1 H264 OTF cases.

Enumerator
NVMEDIA_SLH_PRESENT 

slice header data present or not

NVMEDIA_SPS_PRESENT 

sequence header data present or not

NVMEDIA_PPS_PRESENT 

picture header data present or not

Definition at line 130 of file nvmedia_common.h.

Specifies the decoder instance ID.

Enumerator
NVMEDIA_DECODER_INSTANCE_0 

Specifies the decoder instance ID 0.

NVMEDIA_DECODER_INSTANCE_1 

Specifies the decoder instance ID 1.

NVMEDIA_DECODER_INSTANCE_AUTO 

Specifies that the decoder instance ID can be set dynamically during decode.

Definition at line 59 of file nvmedia_common.h.

Specifies the encoder instance ID.

Enumerator
NVMEDIA_ENCODER_INSTANCE_0 

Specifies the encoder instance ID 0.

NVMEDIA_ENCODER_INSTANCE_1 

Specifies the encoder instance ID 1.

NVMEDIA_ENCODER_INSTANCE_AUTO 

Specifies that the encoder instance ID can be set dynamically during encode.

Definition at line 73 of file nvmedia_common.h.

Video codec type.

Enumerator
NVMEDIA_VIDEO_CODEC_H264 

H.264 codec.

NVMEDIA_VIDEO_CODEC_VC1 

VC-1 simple and main profile codec.

NVMEDIA_VIDEO_CODEC_VC1_ADVANCED 

VC-1 advanced profile codec.

NVMEDIA_VIDEO_CODEC_MPEG1 

MPEG1 codec.

NVMEDIA_VIDEO_CODEC_MPEG2 

MPEG2 codec.

NVMEDIA_VIDEO_CODEC_MPEG4 

MPEG4 Part 2 codec.

NVMEDIA_VIDEO_CODEC_MJPEG 

MJPEG codec.

NVMEDIA_VIDEO_CODEC_VP8 

VP8 codec.

NVMEDIA_VIDEO_CODEC_HEVC 

H265 codec.

NVMEDIA_VIDEO_CODEC_VP9 

VP9 codec.

NVMEDIA_VIDEO_CODEC_H264_MVC 

H.264 Multiview Video Coding codec.

NVMEDIA_VIDEO_CODEC_HEVC_MV 

H265 Multiview Video Coding codec.

Definition at line 87 of file nvmedia_common.h.