FFmpeg  3.3.9
Data Fields
NV_ENC_PIC_PARAMS_HEVC Struct Reference

#include <compat/nvenc/nvEncodeAPI.h>

Data Fields

uint32_t displayPOCSyntax
 [in]: Specifies the display POC syntax This is required to be set if client is handling the picture type decision. More...
 
uint32_t refPicFlag
 [in]: Set to 1 for a reference picture. More...
 
uint32_t temporalId
 [in]: Specifies the temporal id of the picture More...
 
uint32_t forceIntraRefreshWithFrameCnt
 [in]: Forces an intra refresh with duration equal to intraRefreshFrameCnt. More...
 
uint32_t constrainedFrame:1
 [in]: Set to 1 if client wants to encode this frame with each slice completely independent of other slices in the frame. More...
 
uint32_t sliceModeDataUpdate:1
 [in]: Set to 1 if client wants to change the sliceModeData field to specify new sliceSize Parameter When forceIntraRefreshWithFrameCnt is set it will have priority over sliceMode setting More...
 
uint32_t ltrMarkFrame:1
 [in]: Set to 1 if client wants to mark this frame as LTR More...
 
uint32_t ltrUseFrames:1
 [in]: Set to 1 if client allows encoding this frame using the LTR frames specified in ltrFrameBitmap More...
 
uint32_t reservedBitFields:28
 [in]: Reserved bit fields and must be set to 0 More...
 
uint8_tsliceTypeData
 [in]: Array which specifies the slice type used to force intra slice for a particular slice. More...
 
uint32_t sliceTypeArrayCnt
 [in]: Client should set this to the number of elements allocated in sliceTypeData array. More...
 
uint32_t sliceMode
 [in]: This parameter in conjunction with sliceModeData specifies the way in which the picture is divided into slices sliceMode = 0 CTU based slices, sliceMode = 1 Byte based slices, sliceMode = 2 CTU 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...
 
uint32_t ltrMarkFrameIdx
 [in]: Specifies the long term reference frame index to use for marking this frame as LTR. More...
 
uint32_t ltrUseFrameBitmap
 [in]: Specifies the associated bitmap of LTR frame indices when encoding this frame. More...
 
uint32_t ltrUsageMode
 [in]: Specifies additional usage constraints for encoding using LTR frames from this point further. More...
 
uint32_t seiPayloadArrayCnt
 [in]: Specifies the number of elements allocated in seiPayloadArray array. More...
 
uint32_t reserved
 [in]: Reserved and must be set to 0. More...
 
NV_ENC_SEI_PAYLOADseiPayloadArray
 [in]: Array of SEI payloads which will be inserted for this frame. More...
 
uint32_t reserved2 [244]
 [in]: Reserved and must be set to 0. More...
 
voidreserved3 [61]
 [in]: Reserved and must be set to NULL. More...
 

Detailed Description

Definition at line 1441 of file nvEncodeAPI.h.

Field Documentation

◆ displayPOCSyntax

uint32_t NV_ENC_PIC_PARAMS_HEVC::displayPOCSyntax

[in]: Specifies the display POC syntax This is required to be set if client is handling the picture type decision.

Definition at line 1443 of file nvEncodeAPI.h.

◆ refPicFlag

uint32_t NV_ENC_PIC_PARAMS_HEVC::refPicFlag

[in]: Set to 1 for a reference picture.

This is ignored if NV_ENC_INITIALIZE_PARAMS::enablePTD is set to 1.

Definition at line 1444 of file nvEncodeAPI.h.

◆ temporalId

uint32_t NV_ENC_PIC_PARAMS_HEVC::temporalId

[in]: Specifies the temporal id of the picture

Definition at line 1445 of file nvEncodeAPI.h.

◆ forceIntraRefreshWithFrameCnt

uint32_t NV_ENC_PIC_PARAMS_HEVC::forceIntraRefreshWithFrameCnt

[in]: Forces an intra refresh with duration equal to intraRefreshFrameCnt.

When outputRecoveryPointSEI is set this is value is used for recovery_frame_cnt in recovery point SEI message forceIntraRefreshWithFrameCnt cannot be used if B frames are used in the GOP structure specified

Definition at line 1446 of file nvEncodeAPI.h.

◆ constrainedFrame

uint32_t NV_ENC_PIC_PARAMS_HEVC::constrainedFrame

[in]: Set to 1 if client wants to encode this frame with each slice completely independent of other slices in the frame.

NV_ENC_INITIALIZE_PARAMS::enableConstrainedEncoding should be set to 1

Definition at line 1449 of file nvEncodeAPI.h.

◆ sliceModeDataUpdate

uint32_t NV_ENC_PIC_PARAMS_HEVC::sliceModeDataUpdate

[in]: Set to 1 if client wants to change the sliceModeData field to specify new sliceSize Parameter When forceIntraRefreshWithFrameCnt is set it will have priority over sliceMode setting

Definition at line 1451 of file nvEncodeAPI.h.

◆ ltrMarkFrame

uint32_t NV_ENC_PIC_PARAMS_HEVC::ltrMarkFrame

[in]: Set to 1 if client wants to mark this frame as LTR

Definition at line 1453 of file nvEncodeAPI.h.

◆ ltrUseFrames

uint32_t NV_ENC_PIC_PARAMS_HEVC::ltrUseFrames

[in]: Set to 1 if client allows encoding this frame using the LTR frames specified in ltrFrameBitmap

Definition at line 1454 of file nvEncodeAPI.h.

◆ reservedBitFields

uint32_t NV_ENC_PIC_PARAMS_HEVC::reservedBitFields

[in]: Reserved bit fields and must be set to 0

Definition at line 1455 of file nvEncodeAPI.h.

◆ sliceTypeData

uint8_t* NV_ENC_PIC_PARAMS_HEVC::sliceTypeData

[in]: Array which specifies the slice type used to force intra slice for a particular slice.

Currently supported only for NV_ENC_CONFIG_H264::sliceMode == 3. Client should allocate array of size sliceModeData where sliceModeData is specified in field of _NV_ENC_CONFIG_H264 Array element with index n corresponds to nth slice. To force a particular slice to intra client should set corresponding array element to NV_ENC_SLICE_TYPE_I all other array elements should be set to NV_ENC_SLICE_TYPE_DEFAULT

Definition at line 1456 of file nvEncodeAPI.h.

◆ sliceTypeArrayCnt

uint32_t NV_ENC_PIC_PARAMS_HEVC::sliceTypeArrayCnt

[in]: Client should set this to the number of elements allocated in sliceTypeData array.

If sliceTypeData is NULL then this should be set to 0

Definition at line 1460 of file nvEncodeAPI.h.

◆ sliceMode

uint32_t NV_ENC_PIC_PARAMS_HEVC::sliceMode

[in]: This parameter in conjunction with sliceModeData specifies the way in which the picture is divided into slices sliceMode = 0 CTU based slices, sliceMode = 1 Byte based slices, sliceMode = 2 CTU 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 1461 of file nvEncodeAPI.h.

Referenced by nvenc_codec_specific_pic_params().

◆ sliceModeData

uint32_t NV_ENC_PIC_PARAMS_HEVC::sliceModeData

[in]: Specifies the parameter needed for sliceMode.

For: sliceMode = 0, sliceModeData specifies # of CTUs in each slice (except last slice) sliceMode = 1, sliceModeData specifies maximum # of bytes in each slice (except last slice) sliceMode = 2, sliceModeData specifies # of CTU 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 1465 of file nvEncodeAPI.h.

Referenced by nvenc_codec_specific_pic_params().

◆ ltrMarkFrameIdx

uint32_t NV_ENC_PIC_PARAMS_HEVC::ltrMarkFrameIdx

[in]: Specifies the long term reference frame index to use for marking this frame as LTR.

Definition at line 1470 of file nvEncodeAPI.h.

◆ ltrUseFrameBitmap

uint32_t NV_ENC_PIC_PARAMS_HEVC::ltrUseFrameBitmap

[in]: Specifies the associated bitmap of LTR frame indices when encoding this frame.

Definition at line 1471 of file nvEncodeAPI.h.

◆ ltrUsageMode

uint32_t NV_ENC_PIC_PARAMS_HEVC::ltrUsageMode

[in]: Specifies additional usage constraints for encoding using LTR frames from this point further.

0: no constraints, 1: no short term refs older than current, no previous LTR frames.

Definition at line 1472 of file nvEncodeAPI.h.

◆ seiPayloadArrayCnt

uint32_t NV_ENC_PIC_PARAMS_HEVC::seiPayloadArrayCnt

[in]: Specifies the number of elements allocated in seiPayloadArray array.

Definition at line 1473 of file nvEncodeAPI.h.

◆ reserved

uint32_t NV_ENC_PIC_PARAMS_HEVC::reserved

[in]: Reserved and must be set to 0.

Definition at line 1474 of file nvEncodeAPI.h.

◆ seiPayloadArray

NV_ENC_SEI_PAYLOAD* NV_ENC_PIC_PARAMS_HEVC::seiPayloadArray

[in]: Array of SEI payloads which will be inserted for this frame.

Definition at line 1475 of file nvEncodeAPI.h.

◆ reserved2

uint32_t NV_ENC_PIC_PARAMS_HEVC::reserved2[244]

[in]: Reserved and must be set to 0.

Definition at line 1476 of file nvEncodeAPI.h.

◆ reserved3

void* NV_ENC_PIC_PARAMS_HEVC::reserved3[61]

[in]: Reserved and must be set to NULL.

Definition at line 1477 of file nvEncodeAPI.h.


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