NVIDIA DRIVE OS Linux SDK API Reference

5.1.15.0 Release
For Test and Development only

Detailed Description

Holds H264-specific encode initialization parameters.

Definition at line 722 of file nvmedia_common_encode.h.

Collaboration diagram for NvMediaEncodeInitializeParamsH264:

Data Fields

uint16_t encodeWidth
 Holds the encode width. More...
 
uint16_t reserved1
 
uint16_t encodeHeight
 Holds the encode height. More...
 
uint16_t reserved2
 
NvMediaBool enableLimitedRGB
 Set this to NVMEDIA_TRUE for limited-RGB (16-235) input. More...
 
uint32_t frameRateNum
 Holds the numerator for frame rate used for encoding in frames per second ( Frame rate = frameRateNum / frameRateDen ). More...
 
uint32_t frameRateDen
 Holds the denominator for frame rate used for encoding in frames per second ( Frame rate = frameRateNum / frameRateDen ). More...
 
uint8_t profile
 Holds the encoding profile. More...
 
uint8_t level
 Holds the encoding level. More...
 
uint8_t maxNumRefFrames
 Holds the max reference numbers used for encoding. More...
 
NvMediaBool enableExternalMEHints
 Set to NVMEDIA_TRUE to enable external ME hints. More...
 
NvMediaEncodeExternalMeHintCountsPerBlocktype maxMEHintCountsPerBlock [2]
 If Client wants to pass external motion vectors in NvMediaEncodePicParamsH264 meExternalHints buffer it must specify the maximum number of hint candidates per block per direction for the encode session. More...
 
NvMediaBool enableReconCRC
 Enable support for recon CRC generation. More...
 
NvMediaBool enableMVC
 If client want to do MVC encoding then this flag need to be set. More...
 
NvMediaBool enableROIEncode
 Enable region of interest encoding. More...
 
NvMediaBool enableSliceEncode
 Use slice encode to reduce latency in getting encoded buffers. More...
 
uint8_t useBFramesAsRef
 Enables B frames to be used as refernces frames. More...
 
uint8_t reserved3 [3]
 
NvMediaBool enableTwoPassRC
 Enable 2 pass RC support. More...
 
NvMediaBool enableSourceHalfScaled
 Enable 2 pass RC with quarter resolution first pass. More...
 
uint32_t mvcNumViews: 4
 Number of views used for MVC. More...
 
uint32_t enableExternalPictureRC: 1
 Enable external picture rate control. More...
 
uint32_t enableAllIFrames: 1
 Encode all frames as I frames. More...
 
uint32_t reserved: 26
 Add padding. More...
 

Field Documentation

◆ enableAllIFrames

uint32_t NvMediaEncodeInitializeParamsH264::enableAllIFrames

Encode all frames as I frames.

Definition at line 794 of file nvmedia_common_encode.h.

◆ enableExternalMEHints

NvMediaBool NvMediaEncodeInitializeParamsH264::enableExternalMEHints

Set to NVMEDIA_TRUE to enable external ME hints.

Currently this feature is not supported if B frames are used. Not supported on QNX Safety build

Definition at line 754 of file nvmedia_common_encode.h.

◆ enableExternalPictureRC

uint32_t NvMediaEncodeInitializeParamsH264::enableExternalPictureRC

Enable external picture rate control.

Not supported on QNX Safety build

Definition at line 792 of file nvmedia_common_encode.h.

◆ enableLimitedRGB

NvMediaBool NvMediaEncodeInitializeParamsH264::enableLimitedRGB

Set this to NVMEDIA_TRUE for limited-RGB (16-235) input.

Definition at line 730 of file nvmedia_common_encode.h.

◆ enableMVC

NvMediaBool NvMediaEncodeInitializeParamsH264::enableMVC

If client want to do MVC encoding then this flag need to be set.

Not supported on QNX Safety build

Definition at line 770 of file nvmedia_common_encode.h.

◆ enableReconCRC

NvMediaBool NvMediaEncodeInitializeParamsH264::enableReconCRC

Enable support for recon CRC generation.

NVMEDIA will allocate extra surface for recon CRC calculation. This can be enabled at run time for any frame by enabling recon CRC and passing recon CRC rectangle. Not supported on QNX Safety build

Definition at line 767 of file nvmedia_common_encode.h.

◆ enableROIEncode

NvMediaBool NvMediaEncodeInitializeParamsH264::enableROIEncode

Enable region of interest encoding.

Region of interest encoding parameters are passed with Input extra data parameters. Note: Setting input extra data is an internal feature. As a result, enableROIEncode is only supported internally.

Definition at line 775 of file nvmedia_common_encode.h.

◆ enableSliceEncode

NvMediaBool NvMediaEncodeInitializeParamsH264::enableSliceEncode

Use slice encode to reduce latency in getting encoded buffers.

Not supported on QNX Safety build

Definition at line 778 of file nvmedia_common_encode.h.

◆ enableSourceHalfScaled

NvMediaBool NvMediaEncodeInitializeParamsH264::enableSourceHalfScaled

Enable 2 pass RC with quarter resolution first pass.

Not supported on QNX Safety build

Definition at line 787 of file nvmedia_common_encode.h.

◆ enableTwoPassRC

NvMediaBool NvMediaEncodeInitializeParamsH264::enableTwoPassRC

Enable 2 pass RC support.

First pass RC can be run on full or quarter resolution. Not supported on QNX Safety build

Definition at line 784 of file nvmedia_common_encode.h.

◆ encodeHeight

uint16_t NvMediaEncodeInitializeParamsH264::encodeHeight

Holds the encode height.

Definition at line 727 of file nvmedia_common_encode.h.

◆ encodeWidth

uint16_t NvMediaEncodeInitializeParamsH264::encodeWidth

Holds the encode width.

Definition at line 724 of file nvmedia_common_encode.h.

◆ frameRateDen

uint32_t NvMediaEncodeInitializeParamsH264::frameRateDen

Holds the denominator for frame rate used for encoding in frames per second ( Frame rate = frameRateNum / frameRateDen ).

Definition at line 736 of file nvmedia_common_encode.h.

◆ frameRateNum

uint32_t NvMediaEncodeInitializeParamsH264::frameRateNum

Holds the numerator for frame rate used for encoding in frames per second ( Frame rate = frameRateNum / frameRateDen ).

Definition at line 733 of file nvmedia_common_encode.h.

◆ level

uint8_t NvMediaEncodeInitializeParamsH264::level

Holds the encoding level.

Client is recommended to set this to NVMEDIA_ENCODE_LEVEL_AUTOSELECT in order to enable the Encode interface to select the correct level.

Definition at line 744 of file nvmedia_common_encode.h.

◆ maxMEHintCountsPerBlock

NvMediaEncodeExternalMeHintCountsPerBlocktype NvMediaEncodeInitializeParamsH264::maxMEHintCountsPerBlock[2]

If Client wants to pass external motion vectors in NvMediaEncodePicParamsH264 meExternalHints buffer it must specify the maximum number of hint candidates per block per direction for the encode session.

The NvMediaEncodeInitializeParamsH264 maxMEHintCountsPerBlock[0] is for L0 predictors and NvMediaEncodeInitializeParamsH264 maxMEHintCountsPerBlock[1] is for L1 predictors. This client must also set NvMediaEncodeInitializeParamsH264 enableExternalMEHints to NVMEDIA_TRUE.

Definition at line 761 of file nvmedia_common_encode.h.

◆ maxNumRefFrames

uint8_t NvMediaEncodeInitializeParamsH264::maxNumRefFrames

Holds the max reference numbers used for encoding.

Allowed range is [0, 2]. Values:

  • 0 allows only I frame encode
  • 1 allows I and IP encode
  • 2 allows I, IP and IBP encode

Definition at line 750 of file nvmedia_common_encode.h.

◆ mvcNumViews

uint32_t NvMediaEncodeInitializeParamsH264::mvcNumViews

Number of views used for MVC.

Definition at line 789 of file nvmedia_common_encode.h.

◆ profile

uint8_t NvMediaEncodeInitializeParamsH264::profile

Holds the encoding profile.

Client is recommended to set this to NVMEDIA_ENCODE_PROFILE_AUTOSELECT in order to enable the Encode interface to select the correct profile.

Definition at line 740 of file nvmedia_common_encode.h.

◆ reserved

uint32_t NvMediaEncodeInitializeParamsH264::reserved

Add padding.

Definition at line 796 of file nvmedia_common_encode.h.

◆ reserved1

uint16_t NvMediaEncodeInitializeParamsH264::reserved1

Definition at line 725 of file nvmedia_common_encode.h.

◆ reserved2

uint16_t NvMediaEncodeInitializeParamsH264::reserved2

Definition at line 728 of file nvmedia_common_encode.h.

◆ reserved3

uint8_t NvMediaEncodeInitializeParamsH264::reserved3[3]

Definition at line 781 of file nvmedia_common_encode.h.

◆ useBFramesAsRef

uint8_t NvMediaEncodeInitializeParamsH264::useBFramesAsRef

Enables B frames to be used as refernces frames.

Definition at line 780 of file nvmedia_common_encode.h.


The documentation for this struct was generated from the following file: