FFmpeg
|
#include <nvEncodeAPI.h>
Data Fields | |
uint32_t | enableTemporalSVC:1 |
[in]: Set to 1 to enable SVC temporal More... | |
uint32_t | enableStereoMVC:1 |
[in]: Set to 1 to enable stereo MVC More... | |
uint32_t | hierarchicalPFrames:1 |
[in]: Set to 1 to enable hierarchical PFrames More... | |
uint32_t | hierarchicalBFrames:1 |
[in]: Set to 1 to enable hierarchical BFrames More... | |
uint32_t | outputBufferingPeriodSEI:1 |
[in]: Set to 1 to write SEI buffering period syntax in the bitstream More... | |
uint32_t | outputPictureTimingSEI:1 |
[in]: Set to 1 to write SEI picture timing syntax in the bitstream More... | |
uint32_t | outputAUD:1 |
[in]: Set to 1 to write access unit delimiter syntax in bitstream More... | |
uint32_t | disableSPSPPS:1 |
[in]: Set to 1 to disable writing of Sequence and Picture parameter info in bitstream More... | |
uint32_t | outputFramePackingSEI:1 |
[in]: Set to 1 to enable writing of frame packing arrangement SEI messages to bitstream More... | |
uint32_t | outputRecoveryPointSEI:1 |
[in]: Set to 1 to enable writing of recovery point SEI message More... | |
uint32_t | enableIntraRefresh:1 |
[in]: Set to 1 to enable gradual decoder refresh or intra refresh. More... | |
uint32_t | enableConstrainedEncoding:1 |
[in]: Set this to 1 to enable constrainedFrame encoding where each slice in the constarined picture is independent of other slices Check support for constrained encoding using NV_ENC_CAPS_SUPPORT_CONSTRAINED_ENCODING caps. More... | |
uint32_t | repeatSPSPPS:1 |
[in]: Set to 1 to enable writing of Sequence and Picture parameter for every IDR frame More... | |
uint32_t | enableVFR:1 |
[in]: Set to 1 to enable variable frame rate. More... | |
uint32_t | enableLTR:1 |
[in]: Currently this feature is not available and must be set to 0. More... | |
uint32_t | qpPrimeYZeroTransformBypassFlag:1 |
[in]: To enable lossless encode set this to 1, set QP to 0 and RC_mode to NV_ENC_PARAMS_RC_CONSTQP and profile to HIGH_444_PREDICTIVE_PROFILE. More... | |
uint32_t | useConstrainedIntraPred:1 |
[in]: Set 1 to enable constrained intra prediction. More... | |
uint32_t | reservedBitFields:15 |
[in]: Reserved bitfields and must be set to 0 More... | |
uint32_t | level |
[in]: Specifies the encoding level. More... | |
uint32_t | idrPeriod |
[in]: Specifies the IDR interval. More... | |
uint32_t | separateColourPlaneFlag |
[in]: Set to 1 to enable 4:4:4 separate colour planes More... | |
uint32_t | disableDeblockingFilterIDC |
[in]: Specifies the deblocking filter mode. More... | |
uint32_t | numTemporalLayers |
[in]: Specifies max temporal layers to be used for hierarchical coding. More... | |
uint32_t | spsId |
[in]: Specifies the SPS id of the sequence header. More... | |
uint32_t | ppsId |
[in]: Specifies the PPS id of the picture header. More... | |
NV_ENC_H264_ADAPTIVE_TRANSFORM_MODE | adaptiveTransformMode |
[in]: Specifies the AdaptiveTransform Mode. More... | |
NV_ENC_H264_FMO_MODE | fmoMode |
[in]: Specified the FMO Mode. More... | |
NV_ENC_H264_BDIRECT_MODE | bdirectMode |
[in]: Specifies the BDirect mode. More... | |
NV_ENC_H264_ENTROPY_CODING_MODE | entropyCodingMode |
[in]: Specifies the entropy coding mode. More... | |
NV_ENC_STEREO_PACKING_MODE | stereoMode |
[in]: Specifies the stereo frame packing mode which is to be signalled in frame packing arrangement SEI More... | |
uint32_t | intraRefreshPeriod |
[in]: Specifies the interval between successive intra refresh if enableIntrarefresh is set. More... | |
uint32_t | intraRefreshCnt |
[in]: Specifies the length of intra refresh in number of frames for periodic intra refresh. More... | |
uint32_t | maxNumRefFrames |
[in]: Specifies the DPB size used for encoding. More... | |
uint32_t | sliceMode |
[in]: This parameter in conjunction with sliceModeData specifies the way in which the picture is divided into slices sliceMode = 0 MB based slices, sliceMode = 1 Byte based slices, sliceMode = 2 MB row based slices, sliceMode = 3, numSlices in Picture When forceIntraRefreshWithFrameCnt is set it will have priority over sliceMode setting When sliceMode == 0 and sliceModeData == 0 whole picture will be coded with one slice More... | |
uint32_t | sliceModeData |
[in]: Specifies the parameter needed for sliceMode. More... | |
NV_ENC_CONFIG_H264_VUI_PARAMETERS | h264VUIParameters |
[in]: Specifies the H264 video usability info pamameters More... | |
uint32_t | ltrNumFrames |
[in]: Specifies the number of LTR frames used. More... | |
uint32_t | ltrTrustMode |
[in]: Specifies the LTR operating mode. More... | |
uint32_t | chromaFormatIDC |
[in]: Specifies the chroma format. More... | |
uint32_t | maxTemporalLayers |
[in]: Specifies the max temporal layer used for hierarchical coding. More... | |
uint32_t | reserved1 [270] |
[in]: Reserved and must be set to 0 More... | |
void * | reserved2 [64] |
[in]: Reserved and must be set to NULL More... | |
Definition at line 1152 of file nvEncodeAPI.h.
uint32_t NV_ENC_CONFIG_H264::enableTemporalSVC |
[in]: Set to 1 to enable SVC temporal
Definition at line 1154 of file nvEncodeAPI.h.
uint32_t NV_ENC_CONFIG_H264::enableStereoMVC |
[in]: Set to 1 to enable stereo MVC
Definition at line 1155 of file nvEncodeAPI.h.
uint32_t NV_ENC_CONFIG_H264::hierarchicalPFrames |
[in]: Set to 1 to enable hierarchical PFrames
Definition at line 1156 of file nvEncodeAPI.h.
uint32_t NV_ENC_CONFIG_H264::hierarchicalBFrames |
[in]: Set to 1 to enable hierarchical BFrames
Definition at line 1157 of file nvEncodeAPI.h.
uint32_t NV_ENC_CONFIG_H264::outputBufferingPeriodSEI |
[in]: Set to 1 to write SEI buffering period syntax in the bitstream
Definition at line 1158 of file nvEncodeAPI.h.
Referenced by nvenc_setup_h264_config().
uint32_t NV_ENC_CONFIG_H264::outputPictureTimingSEI |
[in]: Set to 1 to write SEI picture timing syntax in the bitstream
Definition at line 1159 of file nvEncodeAPI.h.
Referenced by nvenc_setup_h264_config().
uint32_t NV_ENC_CONFIG_H264::outputAUD |
[in]: Set to 1 to write access unit delimiter syntax in bitstream
Definition at line 1160 of file nvEncodeAPI.h.
Referenced by nvenc_setup_h264_config().
uint32_t NV_ENC_CONFIG_H264::disableSPSPPS |
[in]: Set to 1 to disable writing of Sequence and Picture parameter info in bitstream
Definition at line 1161 of file nvEncodeAPI.h.
Referenced by nvenc_setup_h264_config().
uint32_t NV_ENC_CONFIG_H264::outputFramePackingSEI |
[in]: Set to 1 to enable writing of frame packing arrangement SEI messages to bitstream
Definition at line 1162 of file nvEncodeAPI.h.
uint32_t NV_ENC_CONFIG_H264::outputRecoveryPointSEI |
[in]: Set to 1 to enable writing of recovery point SEI message
Definition at line 1163 of file nvEncodeAPI.h.
uint32_t NV_ENC_CONFIG_H264::enableIntraRefresh |
[in]: Set to 1 to enable gradual decoder refresh or intra refresh.
If the GOP structure uses B frames this will be ignored
Definition at line 1164 of file nvEncodeAPI.h.
uint32_t NV_ENC_CONFIG_H264::enableConstrainedEncoding |
[in]: Set this to 1 to enable constrainedFrame encoding where each slice in the constarined picture is independent of other slices Check support for constrained encoding using NV_ENC_CAPS_SUPPORT_CONSTRAINED_ENCODING caps.
Definition at line 1165 of file nvEncodeAPI.h.
uint32_t NV_ENC_CONFIG_H264::repeatSPSPPS |
[in]: Set to 1 to enable writing of Sequence and Picture parameter for every IDR frame
Definition at line 1167 of file nvEncodeAPI.h.
Referenced by nvenc_setup_h264_config().
uint32_t NV_ENC_CONFIG_H264::enableVFR |
[in]: Set to 1 to enable variable frame rate.
Definition at line 1168 of file nvEncodeAPI.h.
uint32_t NV_ENC_CONFIG_H264::enableLTR |
[in]: Currently this feature is not available and must be set to 0.
Set to 1 to enable LTR support and auto-mark the first
Definition at line 1169 of file nvEncodeAPI.h.
uint32_t NV_ENC_CONFIG_H264::qpPrimeYZeroTransformBypassFlag |
[in]: To enable lossless encode set this to 1, set QP to 0 and RC_mode to NV_ENC_PARAMS_RC_CONSTQP and profile to HIGH_444_PREDICTIVE_PROFILE.
Check support for lossless encoding using NV_ENC_CAPS_SUPPORT_LOSSLESS_ENCODE caps.
Definition at line 1170 of file nvEncodeAPI.h.
Referenced by nvenc_setup_h264_config().
uint32_t NV_ENC_CONFIG_H264::useConstrainedIntraPred |
[in]: Set 1 to enable constrained intra prediction.
Definition at line 1172 of file nvEncodeAPI.h.
uint32_t NV_ENC_CONFIG_H264::reservedBitFields |
[in]: Reserved bitfields and must be set to 0
Definition at line 1173 of file nvEncodeAPI.h.
uint32_t NV_ENC_CONFIG_H264::level |
[in]: Specifies the encoding level.
Client is recommended to set this to NV_ENC_LEVEL_AUTOSELECT in order to enable the NvEncodeAPI interface to select the correct level.
Definition at line 1174 of file nvEncodeAPI.h.
Referenced by nvenc_setup_h264_config().
uint32_t NV_ENC_CONFIG_H264::idrPeriod |
[in]: Specifies the IDR interval.
If not set, this is made equal to gopLength in NV_ENC_CONFIG.Low latency application client can set IDR interval to NVENC_INFINITE_GOPLENGTH so that IDR frames are not inserted automatically.
Definition at line 1175 of file nvEncodeAPI.h.
Referenced by nvenc_setup_h264_config().
uint32_t NV_ENC_CONFIG_H264::separateColourPlaneFlag |
[in]: Set to 1 to enable 4:4:4 separate colour planes
Definition at line 1176 of file nvEncodeAPI.h.
uint32_t NV_ENC_CONFIG_H264::disableDeblockingFilterIDC |
[in]: Specifies the deblocking filter mode.
Permissible value range: [0,2]
Definition at line 1177 of file nvEncodeAPI.h.
uint32_t NV_ENC_CONFIG_H264::numTemporalLayers |
[in]: Specifies max temporal layers to be used for hierarchical coding.
Valid value range is [1,NV_ENC_CAPS_NUM_MAX_TEMPORAL_LAYERS]
Definition at line 1178 of file nvEncodeAPI.h.
uint32_t NV_ENC_CONFIG_H264::spsId |
[in]: Specifies the SPS id of the sequence header.
Currently reserved and must be set to 0.
Definition at line 1179 of file nvEncodeAPI.h.
uint32_t NV_ENC_CONFIG_H264::ppsId |
[in]: Specifies the PPS id of the picture header.
Currently reserved and must be set to 0.
Definition at line 1180 of file nvEncodeAPI.h.
NV_ENC_H264_ADAPTIVE_TRANSFORM_MODE NV_ENC_CONFIG_H264::adaptiveTransformMode |
[in]: Specifies the AdaptiveTransform Mode.
Check support for AdaptiveTransform mode using NV_ENC_CAPS_SUPPORT_ADAPTIVE_TRANSFORM caps.
Definition at line 1181 of file nvEncodeAPI.h.
Referenced by nvenc_setup_h264_config().
NV_ENC_H264_FMO_MODE NV_ENC_CONFIG_H264::fmoMode |
[in]: Specified the FMO Mode.
Check support for FMO using NV_ENC_CAPS_SUPPORT_FMO caps.
Definition at line 1182 of file nvEncodeAPI.h.
Referenced by nvenc_setup_h264_config().
NV_ENC_H264_BDIRECT_MODE NV_ENC_CONFIG_H264::bdirectMode |
[in]: Specifies the BDirect mode.
Check support for BDirect mode using NV_ENC_CAPS_SUPPORT_BDIRECT_MODE caps.
Definition at line 1183 of file nvEncodeAPI.h.
NV_ENC_H264_ENTROPY_CODING_MODE NV_ENC_CONFIG_H264::entropyCodingMode |
[in]: Specifies the entropy coding mode.
Check support for CABAC mode using NV_ENC_CAPS_SUPPORT_CABAC caps.
Definition at line 1184 of file nvEncodeAPI.h.
NV_ENC_STEREO_PACKING_MODE NV_ENC_CONFIG_H264::stereoMode |
[in]: Specifies the stereo frame packing mode which is to be signalled in frame packing arrangement SEI
Definition at line 1185 of file nvEncodeAPI.h.
uint32_t NV_ENC_CONFIG_H264::intraRefreshPeriod |
[in]: Specifies the interval between successive intra refresh if enableIntrarefresh is set.
Requires enableIntraRefresh to be set. Will be disabled if NV_ENC_CONFIG::gopLength is not set to NVENC_INFINITE_GOPLENGTH.
Definition at line 1186 of file nvEncodeAPI.h.
uint32_t NV_ENC_CONFIG_H264::intraRefreshCnt |
[in]: Specifies the length of intra refresh in number of frames for periodic intra refresh.
This value should be smaller than intraRefreshPeriod
Definition at line 1188 of file nvEncodeAPI.h.
uint32_t NV_ENC_CONFIG_H264::maxNumRefFrames |
[in]: Specifies the DPB size used for encoding.
Setting it to 0 will let driver use the default dpb size. The low latency application which wants to invalidate reference frame as an error resilience tool is recommended to use a large DPB size so that the encoder can keep old reference frames which can be used if recent frames are invalidated.
Definition at line 1189 of file nvEncodeAPI.h.
Referenced by nvenc_setup_h264_config().
uint32_t NV_ENC_CONFIG_H264::sliceMode |
[in]: This parameter in conjunction with sliceModeData specifies the way in which the picture is divided into slices sliceMode = 0 MB based slices, sliceMode = 1 Byte based slices, sliceMode = 2 MB row based slices, sliceMode = 3, numSlices in Picture When forceIntraRefreshWithFrameCnt is set it will have priority over sliceMode setting When sliceMode == 0 and sliceModeData == 0 whole picture will be coded with one slice
Definition at line 1193 of file nvEncodeAPI.h.
Referenced by nvenc_codec_specific_pic_params(), and nvenc_setup_h264_config().
uint32_t NV_ENC_CONFIG_H264::sliceModeData |
[in]: Specifies the parameter needed for sliceMode.
For: sliceMode = 0, sliceModeData specifies # of MBs in each slice (except last slice) sliceMode = 1, sliceModeData specifies maximum # of bytes in each slice (except last slice) sliceMode = 2, sliceModeData specifies # of MB rows in each slice (except last slice) sliceMode = 3, sliceModeData specifies number of slices in the picture. Driver will divide picture into slices optimally
Definition at line 1197 of file nvEncodeAPI.h.
Referenced by nvenc_codec_specific_pic_params(), nvenc_setup_h264_config(), and process_output_surface().
NV_ENC_CONFIG_H264_VUI_PARAMETERS NV_ENC_CONFIG_H264::h264VUIParameters |
[in]: Specifies the H264 video usability info pamameters
Definition at line 1202 of file nvEncodeAPI.h.
Referenced by nvenc_setup_h264_config().
uint32_t NV_ENC_CONFIG_H264::ltrNumFrames |
[in]: Specifies the number of LTR frames used.
If ltrTrustMode=1, encoder will mark first numLTRFrames base layer reference frames within each IDR interval as LTR. If ltrMarkFrame=1, ltrNumFrames specifies maximum number of ltr frames in DPB. If ltrNumFrames value is more that DPB size(maxNumRefFrames) encoder will take decision on its own.
Definition at line 1203 of file nvEncodeAPI.h.
uint32_t NV_ENC_CONFIG_H264::ltrTrustMode |
[in]: Specifies the LTR operating mode.
Set to 0 to disallow encoding using LTR frames until later specified. Set to 1 to allow encoding using LTR frames unless later invalidated.
Definition at line 1207 of file nvEncodeAPI.h.
uint32_t NV_ENC_CONFIG_H264::chromaFormatIDC |
[in]: Specifies the chroma format.
Should be set to 1 for yuv420 input, 3 for yuv444 input. Check support for YUV444 encoding using NV_ENC_CAPS_SUPPORT_YUV444_ENCODE caps.
Definition at line 1210 of file nvEncodeAPI.h.
Referenced by nvenc_setup_h264_config().
uint32_t NV_ENC_CONFIG_H264::maxTemporalLayers |
[in]: Specifies the max temporal layer used for hierarchical coding.
Definition at line 1212 of file nvEncodeAPI.h.
uint32_t NV_ENC_CONFIG_H264::reserved1[270] |
[in]: Reserved and must be set to 0
Definition at line 1213 of file nvEncodeAPI.h.
void* NV_ENC_CONFIG_H264::reserved2[64] |
[in]: Reserved and must be set to NULL
Definition at line 1214 of file nvEncodeAPI.h.