Configuration File Parameters
Parameters that specify the length of an array, such as
ExplicitFrameInvervalPatternLength
or
ExplicitFrameInvervalPattern
, do not need to be set or may be set
to 0. In either case, the application uses the default array size of 1000.
General Configuration Parameters
The following table describes the general configuration parameters:
Parameter | Description |
---|---|
InputFile | Identifies the file sent to the encoder. |
InputFileFormat |
Input file format. The values can be:
|
OutputFile | Specifies the output file. |
StartFrame | Specifies the start frame for encoding. Encoding for
StartFrame−1 is skipped. |
FramesToBeEncoded | Number of frames to encode. |
EPCodec |
Specifies the video codec type. The values can be:
|
EPRateControlSectionIndex | Index of the RC_params section to use for
encoder initialization. |
ExplicitFrameIntervalPattern |
Specifies the frame interval pattern. The values in the string
represent the For example, if the given pattern is 123, then:
|
ExplicitFrameIntervalPatternLength | Specifies the length of the interval pattern. |
Encode Configuration Parameters
The following table describes the encode configuration parameters:
Parameter | Description |
---|---|
EPEncodeWidth | Specifies the width of the encode. |
EPEncodeHeight | Specifies the height of the encode. |
EPFrameRateNum EPFrameRateDen |
Specifies the numerator and denominator for the frame rate to use for encoding, in frames per second. The frame rate is: EPFrameRateNum / EPFrameRateDen |
EPGopLength | Specifies the number of pictures in a GOP. If 0, keyframes are not inserted automatically. |
EPGopPattern |
Specifies the GOP pattern. If the GOP length is 0, the Frame Interval Pattern must be set to IPP. The values can be:
|
EPMaxNumRefFrames |
Specifies the maximum number of reference frames. The value can be:
|
Quantization Configuration Parameters
The following table describes the quantization configuration parameters:
Parameter | Description |
---|---|
QPBSlice | Specifies the Quantization parameter for B slices [0-51]. |
QPISlice | Specifies the Quantization parameter for I Slices [0-51]. |
QPPSlice | Specifies the Quantization parameter P Slices [0-51]. |
Rate Control Configuration Parameters
The following table describes the rate control configuration parameters:
Parameter | Description |
---|---|
RCMode |
Specifies the rate control mode. The values can be:
|
RCAverageBitrate | Specifies the average bit rate in bits/second; used for encoding. |
RCMaxBitrate | Specifies the maximum bit rate for the encoded output. This is used in Variable Bit Rate (VBR) mode and is ignored for Constant Bit Rate (CBR) mode. |
RCVbvBufferSize | Specifies the VBV (HRD) buffer size in bits. Set to 0 to use the default VBV buffer size. |
RCVbvInitialDelay | Specifies the VBV(HRD) initial delay in bits. Set to 0 to use the default VBV initial delay. |
RCEnableMinQP | Set to 1 if minimum QP is used for the rate control. |
RCEnableMaxQP | Set to 1 if maximum QP is used for the rate control. |
RCConstQPInde[JS7] x | Specifies the initial QP_Params section index
used for encoding. In Constant QP mode these values are used for all
frames. |
RCMinQPIndex | Specifies the QP_Params section index used as the
minimum QP values for rate control. |
RCMaxQPIndex | Specifies the QP_Params section index used as
the maximum QP values for rate control. |
Per-Frame Encode Configuration Parameters
The following table describes the per-frame encode configuration parameters:
Parameter | Description |
---|---|
EPEencodePicFlags |
Specifies the bitwise OR’ed encode picture flags. The flags are:
|
EPInputDuration | Specifies the duration of the input picture. |
EPPictureType |
Specifies the input picture type. The client must set this parameter explicitly if it has not set the Enable PTD (picture type decision) to 1. The picture types are:
|
EPH264PicParamsIndex | Codec specific parameters: EncodePicH264_Param
section index to be used. |
EPRCParamsIndex | Rate control parameters: RC_Params section index
to be used. |
H.264 Encode Configuration Parameters
The following table describes the H.264 encode configuration parameters:
Parameter | Description |
---|---|
H264Profile |
Supported profiles are:
|
H264Level | Specifies the encoding level. The recommendation isfor the client to set the level to 0 to enable the NvMedia Encode interface to select the correct level. |
H264Features |
Specifies the bitwise OR'ed configuration feature flags. The flags are:
|
H264IdrPeriod | Specifies the IDR interval. If not set, it defaults to the GOP length. A low latency application client must set the IDR interval to 0 so that IDR frames are not inserted automatically. |
H264RepeatSPSPPSMode |
Specifies the frequency of writing Sequence and Picture parameters. The values can be:
|
H264NumSliceCountMinus1 | One less than the number of slices desired per frame. |
H264DisableDeblockingFilterIDC | Deblocking filter mode. The value can be 0, 1, or 2. |
H264IntraRefreshPeriod |
The interval between successive intra refreshes if intra refresh is enabled and one-time intra refresh configuration is desired. If H264IntraRefreshPeriod is specified, the first IDR is encoded, and no more key frames are encoded. The client must set |
H264IntraRefreshCnt | The number of frames over which intra refresh occurs. |
H264MaxSliceSizeInBytes | The maximum slice size, in bytes, for dynamic slice mode. The client must enable dynamic slice mode to use this parameter. |
H264AdaptiveTransformMode |
Specifies the Adaptive Transform Mode. Available modes are:
|
H264BdirectMode |
Specifies the B Direct mode. Available modes are:
|
H264EntropyCodingMode |
Specifies the entropy coding mode. Available modes are:
|
H264MotionPredictionExclusionFlags |
Specifies the bitwise OR’ed exclusion flags for motion prediction. Available flags are:
|
H.264 VUI Configuration Parameters
The following table describes the H.264 VUI configuration parameters:
Parameter | Description |
---|---|
VUIAspectRatioInfoPresentFlag | A value of 1 indicates that the aspect ratio information is present. |
VUIAspectRatioIDC | Specifies the sample aspect ratio of the luma samples. |
VUIAspectSARWidth | Specifies the horizontal size of the sample aspect ratio. |
VUIAspectSARHeight | Specifies the vertical size of the sample aspect ratio. |
VUIOverscanInfoPresentFlag | A value of 1 indicates that overscan info is present. |
VUIOverscanInfo | Specifies overscan information, as defined in Annex E of the ITU-T Specification. |
VUIVideoSignalTypePresentFlag | If set to 1, specifies that Video Format, Video Full Range Flag, and Color Description Present Flag are present. |
VUIVideoFormat | Specifies the source video format as defined in Annex E of the ITU-T Specification. |
VUIVideoFullRangeFlag | Specifies the output range of the luma and chroma samples, as defined in Annex E of the ITU-T Specification. |
VUIColourDescriptionPresentFlag | A value of NVMEDIA_TRUE indicates that the color
primaries, transfer characteristics, and color matrix are
present. |
VUIColourPrimaries | Specifies the color primaries for converting to RGB, as defined in Annex E of the ITU-T Specification. |
VUITransferCharacteristics | Specifies the opto-electronic transfer characteristics to use, as defined in Annex E of the ITU-T Specification. |
VUIMatrixCoefficients | Specifies the matrix coefficients used to derive the luma and chroma from the RGB primaries, as defined in Annex E of the ITU-T Specification. |
H.264 Payload Configuration Parameters
The following describes the H.264 payload configuration parameters:
Parameter | Description |
---|---|
H264PayloadSize | SEI payload 1 size in bytes. SEI payload must be byte aligned, as described in Annex D of the H.264 Specification. |
H264PayloadType | SEI payload 1 types and syntax is available in Annex D of the H.264 Specification. |
H264Payload | Payload 1 data. |
H.264 Per-Frame Encode Configuration Parameters
The following table describes the H.264 per-frame encode configuration parameters. These are in addition to the per-frame encode configuration parameters. These parameters must be sent on a per-frame basis.
Parameter | Description |
---|---|
H264PayloadArraySize | Size of Payload Array. |
H264PayloadArrayIndexes | Array of the Payload section indexes to be used. |
H.265 Configuration Parameters
The following table describes the H.265 configuration parameters:
Parameter | Description |
---|---|
H265Profile |
Supported profiles are: 1: Main profile (supported) |
H265Level | Specifies the encoding level. It is recommended that the client set the level to 0 to enable the NvMedia Encode interface to select the correct level. |
H265Features |
Specifies bitwise OR'ed configuration feature flags. The flags are:
|
H265IdrPeriod | Specifies the IDR interval. If not set, defaults to the GOP Length. A low latency application client can set the IDR interval to 0 so that IDR frames are not inserted automatically. |
H265RepeatSPSPPSMode |
Specifies the frequency of writing Sequence and Picture parameters. Available values are:
|
H265NumSliceCountMinus1 | One less than the number of slices desired per frame. |
H265DisableDeblockingFilterIDC | Deblocking filter mode. Possible values are 0 and 1. |
H265IntraRefreshPeriod |
The interval between successive intra refreshes, assuming:
If The client must set |
H265IntraRefreshCnt | Specifies the number of frames over which intra refresh occurs. |
H265MaxSliceSizeInBytes | Specifies the maximum slice size, in bytes, for dynamic slice mode. The client must enable dynamic slice mode to use this parameter. |
H.265 VUI Configuration Parameters
This table describes the H.265 VUI configuration parameters:
Parameter | Description |
H265VUIAspectRatioInfoPresentFlag | A value of 1 indicates that aspect ratio information is present. |
H265VUIAspectRatioIDC | Specifies the value of the sample aspect ratio of the luma samples. |
H265VUIAspectSARWidth | Horizontal size of the sample aspect ratio. |
H265VUIOverscanInfoPresentFlag | A value of 1 indicates that overscan information is present. |
H265VUIOverscanInfo | Specifies overscan information, as defined in Annex E of the ITU-T Specification. |
H265VUIVideoSignalTypePresentFlag | A value of 1 indicates that Video Format, Video Full Range Flag, and Color Description Present Flag are present. |
H265VUIVideoFormat | Specifies the source video format, as defined in Annex E of the ITU-T Specification. |
H265VUIVideoFullRangeFlag | Specifies the output range of the luma and chroma samples, as defined in Annex E of the ITU-T Specification. |
H265VUIColourDescriptionPresentFlag | A value of NVMEDIA_TRUE indicates that the color primaries, transfer characteristics, and color matrix are present. |
H265VUIColourPrimaries | Specifies color primaries for converting to RGB, as defined in Annex E of the ITU-T Specification. |
H265VUITransferCharacteristics | Specifies the opto-electronic transfer characteristics to use, as defined in Annex E of the ITU-T Specification. |
H265VUIMatrixCoefficients | Specifies the matrix coefficients to use to derive the luma and chroma from the RGB primaries, as defined in Annex E of the ITU-T Specification. |
H.265 Payload Configuration Parameters
The following table describes the H.265 payload configuration parameters:
Parameter | Description |
---|---|
H265PayloadSize | SEI payload 1 size in bytes. SEI payload must be byte aligned, as described in Annex D of the ITU‑T Specification. |
H265PayloadType | SEI payload 1 types and syntax are available in Annex D of the ITU‑T Specification. |
H265Payload | Payload 1 data. |
H.265 Per-Frame Encode Configuration Parameters
The following table describes the H.265 per-frame encode configuration parameters. These parameters must be sent on a per frame basis.
Parameter | Description |
---|---|
EPH265PicParamsIndex | Codec specific parameters: EncodePicH265_Params
section index to be used. |
H265PayloadArrayIndexes | Array of Payload section indexes to be used. |
H265PayloadArraySize | Size of Payload Array. |
VP9 Configuration Parameters
This table describes the VP9 configuration parameters:
Parameter | Description |
---|---|
VP9Features |
Specifies bitwise OR'ed configuration feature flags. The flags are:
|
VP9IdrPeriod |
Specifies the IDR interval. If not set,the interval will equal the GOP length. The low-latency application client can set the IDR interval to 0 so that IDR frames are not inserted automatically. Default value = 17 |
EPlog2NumTileInRow | Specifies the log of number of tiles in a row. |
EPlog2NumTileInCol | Specifies the log of number of tiles in a column. |
EPNumEpCores |
Specifies the number of Entropy Cores to be used. Supported values – 1 and 4. Default value – 1. 4 EP Cores are only supported for multiple tile configuration. |
VP9/AV1 Per-Frame Encode Configuration Parameters
The following describes the VP9/AV1 per-frame encode configuration parameters. These parameters must be sent on a per frame basis.
Parameter | Description |
---|---|
EPVP9PicParamsIndex | Codec specific parameters: EncodePicVP9_Params
section index to be used. |
AV1 Configuration Parameters
The following table describes the AV1 configuration parameters:
Parameter | Description |
---|---|
EPEnableTileEncode | Enable encoding with multiple tile configuration. |
EPlog2NumTileInRow | Specifies the log of number of tiles in a row. |
EPlog2NumTileInCol | Specifies the log of number of tiles in a column. |
AV1EnableInternalHighBitDepth | Enables internal high bit depth. When enabled, input YUV is 8 bit, but the encoded bitstream is 10 bit. |
AV1EnableSsimRdo | Enables SSIM-based rate distortion optimization |
AV1FrameRestorationType | Specifies the frame restoration type. |
AV1EnableUniCompound | Enables the uni-compound for P frames. |
AV1IdrPeriod |
Specifies the IDR interval. If not set, the interval is equal to the GOP length. Low latency application client can set the IDR interval to 0 so that IDR frames are not inserted automatically. Default value = 17 |
AV1EncodeQuality |
Specifies the encode quality setting. Supported values: 1 – HP 2 - UHP |
AV1Features |
Specifies bitwise OR'ed configuration feature flags. The flags are:
|