Holds H264-specific encode initialization parameters.
Definition at line 850 of file nvmedia_common_encode.h.
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 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 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 reference 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... | |
uint32_t NvMediaEncodeInitializeParamsH264::enableAllIFrames |
Encode all frames as I frames.
Value range: 0 to disable, non-zero value to enable
Definition at line 982 of file nvmedia_common_encode.h.
NvMediaBool NvMediaEncodeInitializeParamsH264::enableExternalMEHints |
Set to NVMEDIA_TRUE to enable external ME hints.
Currently this feature is not supported if B frames are used. This setting is not supported in the QNX Safety build.
Definition at line 917 of file nvmedia_common_encode.h.
uint32_t NvMediaEncodeInitializeParamsH264::enableExternalPictureRC |
Enable external picture rate control.
Definition at line 979 of file nvmedia_common_encode.h.
NvMediaBool NvMediaEncodeInitializeParamsH264::enableLimitedRGB |
Set this to NVMEDIA_TRUE for limited-RGB (16-235) input.
Definition at line 867 of file nvmedia_common_encode.h.
NvMediaBool NvMediaEncodeInitializeParamsH264::enableMVC |
If client want to do MVC encoding then this flag need to be set.
Definition at line 939 of file nvmedia_common_encode.h.
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.
Definition at line 936 of file nvmedia_common_encode.h.
NvMediaBool NvMediaEncodeInitializeParamsH264::enableROIEncode |
Enable region of interest encoding.
Region of interest encoding parameters are passed with Input extra data parameters.
Definition at line 948 of file nvmedia_common_encode.h.
NvMediaBool NvMediaEncodeInitializeParamsH264::enableSliceEncode |
Use slice encode to reduce latency in getting encoded buffers.
This setting is not supported in the QNX Safety build.
Definition at line 951 of file nvmedia_common_encode.h.
NvMediaBool NvMediaEncodeInitializeParamsH264::enableSourceHalfScaled |
Enable 2 pass RC with quarter resolution first pass.
Definition at line 973 of file nvmedia_common_encode.h.
NvMediaBool NvMediaEncodeInitializeParamsH264::enableTwoPassRC |
Enable 2 pass RC support.
First pass RC can be run on full or quarter resolution.
Definition at line 965 of file nvmedia_common_encode.h.
uint16_t NvMediaEncodeInitializeParamsH264::encodeHeight |
Holds the encode height.
Value range: 64 to 4096 in increments of 2.
Definition at line 863 of file nvmedia_common_encode.h.
uint16_t NvMediaEncodeInitializeParamsH264::encodeWidth |
Holds the encode width.
Value range: 160 to 4096 in increments of 2.
Definition at line 856 of file nvmedia_common_encode.h.
uint32_t NvMediaEncodeInitializeParamsH264::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 875 of file nvmedia_common_encode.h.
uint32_t NvMediaEncodeInitializeParamsH264::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 871 of file nvmedia_common_encode.h.
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. If a specific level needs to be configured, this field can be set to one of the enumerations from NvMediaEncodeLevel. If the specified level is lower than that which is required by the H264 standard, the encoder auto-corrects it to the minimum required level.
Definition at line 889 of file nvmedia_common_encode.h.
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 925 of file nvmedia_common_encode.h.
uint8_t NvMediaEncodeInitializeParamsH264::maxNumRefFrames |
Holds the maximum number of reference frames used for encoding.
Value range: 0
For I-frame only mode (no reference frames), i.e., NvMediaEncodeInitializeParamsH264::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., NvMediaEncodeInitializeParamsH264::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., NvMediaEncodeInitializeParamsH264::enableAllIFrames is set to 0, NvMediaEncodeRCParams::numBFrames is set to a non-zero value and NvMediaEncodeInitializeParamsH264::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., NvMediaEncodeInitializeParamsH264::enableAllIFrames is set to 0, NvMediaEncodeRCParams::numBFrames is set to a non-zero value and NvMediaEncodeInitializeParamsH264::useBFramesAsRef is set to 0.
Definition at line 912 of file nvmedia_common_encode.h.
uint32_t NvMediaEncodeInitializeParamsH264::mvcNumViews |
Number of views used for MVC.
Definition at line 976 of file nvmedia_common_encode.h.
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. If a specific profile needs to be configured, this field can be set to one of the supported enumerations from NvMediaEncodeProfile.
Definition at line 881 of file nvmedia_common_encode.h.
uint32_t NvMediaEncodeInitializeParamsH264::reserved |
Add padding.
Definition at line 984 of file nvmedia_common_encode.h.
uint16_t NvMediaEncodeInitializeParamsH264::reserved1 |
Definition at line 857 of file nvmedia_common_encode.h.
uint16_t NvMediaEncodeInitializeParamsH264::reserved2 |
Definition at line 864 of file nvmedia_common_encode.h.
uint8_t NvMediaEncodeInitializeParamsH264::reserved3[3] |
Definition at line 961 of file nvmedia_common_encode.h.
uint8_t NvMediaEncodeInitializeParamsH264::useBFramesAsRef |
Enables B frames to be used as reference frames.
Value range: 0 to 1
Definition at line 960 of file nvmedia_common_encode.h.