NVIDIA DRIVE OS Linux SDK API Reference

5.2.3 Release
For Test and Development only

Detailed Description

Holds H265-specific encode initialization parameters.

Definition at line 1274 of file nvmedia_common_encode.h.

Collaboration diagram for NvMediaEncodeInitializeParamsH265:

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...
 
NvMediaBool enableSliceLevelEncode
 Set this to NVMEDIA_TRUE for slice level encode. 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 levelTier
 Holds the level tier information. More...
 
uint8_t maxNumRefFrames
 Holds the maximum number of reference frames 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 NvMediaEncodePicParamsH265 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...
 
uint32_t useBFramesAsRef
 Enables B frames to be used as reference frames. More...
 
NvMediaBool enableTwoPassRC
 Enable 2 pass RC support. More...
 
NvMediaBool enableSourceHalfScaled
 Enable 2 pass RC with quarter resolution first pass. More...
 
uint32_t mvNumViews: 4
 Number of views used for MV-Hevc. 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 NvMediaEncodeInitializeParamsH265::enableAllIFrames

Encode all frames as I frames.


Value range: 0 to disable, non-zero value to enable

Definition at line 1405 of file nvmedia_common_encode.h.

◆ enableExternalMEHints

NvMediaBool NvMediaEncodeInitializeParamsH265::enableExternalMEHints

Set to NVMEDIA_TRUE to enable external ME hints.

Currently this feature is not supported if B frames are used.

Deprecated:
This feature will be deprecated in a future release.

Definition at line 1346 of file nvmedia_common_encode.h.

◆ enableExternalPictureRC

uint32_t NvMediaEncodeInitializeParamsH265::enableExternalPictureRC

Enable external picture rate control.

Note
This feature is not supported.

Definition at line 1402 of file nvmedia_common_encode.h.

◆ enableLimitedRGB

NvMediaBool NvMediaEncodeInitializeParamsH265::enableLimitedRGB

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

Note
This feature is not supported.

Definition at line 1291 of file nvmedia_common_encode.h.

◆ enableMVC

NvMediaBool NvMediaEncodeInitializeParamsH265::enableMVC

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

Note
This feature is not supported.

Definition at line 1368 of file nvmedia_common_encode.h.

◆ enableReconCRC

NvMediaBool NvMediaEncodeInitializeParamsH265::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.

Note
This feature is not supported.

Definition at line 1365 of file nvmedia_common_encode.h.

◆ enableROIEncode

NvMediaBool NvMediaEncodeInitializeParamsH265::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 1373 of file nvmedia_common_encode.h.

◆ enableSliceEncode

NvMediaBool NvMediaEncodeInitializeParamsH265::enableSliceEncode

use slice encode to reduce latency in getting encoded buffers.

Definition at line 1375 of file nvmedia_common_encode.h.

◆ enableSliceLevelEncode

NvMediaBool NvMediaEncodeInitializeParamsH265::enableSliceLevelEncode

Set this to NVMEDIA_TRUE for slice level encode.

Definition at line 1293 of file nvmedia_common_encode.h.

◆ enableSourceHalfScaled

NvMediaBool NvMediaEncodeInitializeParamsH265::enableSourceHalfScaled

Enable 2 pass RC with quarter resolution first pass.

Note
This feature is not supported.

Definition at line 1396 of file nvmedia_common_encode.h.

◆ enableTwoPassRC

NvMediaBool NvMediaEncodeInitializeParamsH265::enableTwoPassRC

Enable 2 pass RC support.

First pass RC can be run on full or quarter resolution.

Note
enableTwoPassRC is an internal feature.

Definition at line 1388 of file nvmedia_common_encode.h.

◆ encodeHeight

uint16_t NvMediaEncodeInitializeParamsH265::encodeHeight

Holds the encode height.


Value range: 64 to 4096 in increments of 2.

Definition at line 1287 of file nvmedia_common_encode.h.

◆ encodeWidth

uint16_t NvMediaEncodeInitializeParamsH265::encodeWidth

Holds the encode width.


Value range: 160 to 4096 in increments of 2.

Definition at line 1280 of file nvmedia_common_encode.h.

◆ frameRateDen

uint32_t NvMediaEncodeInitializeParamsH265::frameRateDen

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


Value range: Frame rate can lie between 1 and 60 (float value).

Definition at line 1301 of file nvmedia_common_encode.h.

◆ frameRateNum

uint32_t NvMediaEncodeInitializeParamsH265::frameRateNum

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


Value range: Frame rate can lie between 1 and 60 (float value).

Definition at line 1297 of file nvmedia_common_encode.h.

◆ level

uint8_t NvMediaEncodeInitializeParamsH265::level

Holds the encoding level.

Client is recommended to set this to NVMEDIA_ENCODE_LEVEL_H265_AUTOSELECT in order to enable the Encode interface to select the correct level. If a specific level needs to be configured, this field can be set to one of the enumerations from NvMediaEncodeLevelH265. If the specified level is lower than that which is required by the H265 standard, the encoder auto-corrects it to the minimum required level.

Definition at line 1315 of file nvmedia_common_encode.h.

◆ levelTier

uint8_t NvMediaEncodeInitializeParamsH265::levelTier

Holds the level tier information.

This is set to 0 for main tier and 1 for high tier. This is valid only when level is not selected as NVMEDIA_ENCODE_LEVEL_H265_AUTOSELECT.

Definition at line 1319 of file nvmedia_common_encode.h.

◆ maxMEHintCountsPerBlock

NvMediaEncodeExternalMeHintCountsPerBlocktype NvMediaEncodeInitializeParamsH265::maxMEHintCountsPerBlock[2]

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

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

Deprecated:
This feature will be deprecated in a future release.

Definition at line 1354 of file nvmedia_common_encode.h.

◆ maxNumRefFrames

uint8_t NvMediaEncodeInitializeParamsH265::maxNumRefFrames

Holds the maximum number of reference frames used for encoding.


Value range: 0
For I-frame only mode (no reference frames), i.e., NvMediaEncodeInitializeParamsH265::enableAllIFrames is set to 1 and NvMediaEncodeRCParams::numBFrames is set to 0.
Value range: 1 to 8
For encoding with I and P frame types (p-frames as reference), i.e., NvMediaEncodeInitializeParamsH265::enableAllIFrames is set to 0 and NvMediaEncodeRCParams::numBFrames is set to 0.
Value range: 2 to 8
For encoding with I, P and B frame types (p and b-frames as reference), i.e., NvMediaEncodeInitializeParamsH265::enableAllIFrames is set to 0, NvMediaEncodeRCParams::numBFrames is set to a non-zero value and NvMediaEncodeInitializeParamsH265::useBFramesAsRef is set to 1.
Value range: 2 to 8
For encoding with I, P and B frame types (only p-frames as reference), i.e., NvMediaEncodeInitializeParamsH265::enableAllIFrames is set to 0, NvMediaEncodeRCParams::numBFrames is set to a non-zero value and NvMediaEncodeInitializeParamsH265::useBFramesAsRef is set to 0.

Definition at line 1342 of file nvmedia_common_encode.h.

◆ mvNumViews

uint32_t NvMediaEncodeInitializeParamsH265::mvNumViews

Number of views used for MV-Hevc.

Note
This feature is not supported.

Definition at line 1399 of file nvmedia_common_encode.h.

◆ profile

uint8_t NvMediaEncodeInitializeParamsH265::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. If a specific profile needs to be configured, this field can be set to one of the supported enumerations from NvMediaEncodeProfile.

Definition at line 1307 of file nvmedia_common_encode.h.

◆ reserved

uint32_t NvMediaEncodeInitializeParamsH265::reserved

Add padding.

Definition at line 1407 of file nvmedia_common_encode.h.

◆ reserved1

uint16_t NvMediaEncodeInitializeParamsH265::reserved1

Definition at line 1281 of file nvmedia_common_encode.h.

◆ reserved2

uint16_t NvMediaEncodeInitializeParamsH265::reserved2

Definition at line 1288 of file nvmedia_common_encode.h.

◆ useBFramesAsRef

uint32_t NvMediaEncodeInitializeParamsH265::useBFramesAsRef

Enables B frames to be used as reference frames.


Value range: 0 to 1

Definition at line 1384 of file nvmedia_common_encode.h.


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