Configuration Parameter Constraints#
The mfxFrameInfo
structure is used by both the mfxVideoParam
structure during oneVPL class initialization and the mfxFrameSurface1
structure during the actual oneVPL class operation. The parameter constraints
described in the following tables apply.
DECODE, ENCODE, and VPP Constraints#
The DECODE, ENCODE, and VPP Constraints table lists parameter constraints common to DECODE, ENCODE, and VPP.
Parameters |
Use During Initialization |
Use During Operation |
---|---|---|
FourCC |
Any valid value. |
The value must be the same as the initialization value. The only exception is VPP in composition mode, where in some cases it is allowed to mix RGB and NV12 surfaces. See |
ChromaFormat |
Any valid value. |
The value must be the same as the initialization value. |
DECODE Constraints#
The DECODE Constraints table lists DECODE parameter constraints.
Parameters |
Use During Initialization |
Use During Operation |
---|---|---|
Width, Height |
Aligned frame size. |
The values must be the equal to or larger than the initialization values. |
CropX, CropY
CropW, CropH
|
Ignored. |
DECODE output. The cropping values are per-frame based. |
AspectRatioW,
AspectRatioH
|
Any valid values or unspecified (zero); if unspecified, values from the input bitstream will be used. See note below the table. |
DECODE output. |
FrameRateExtN,
FrameRateExtD
|
If unspecified, values from the input bitstream will be used. See note below the table. |
DECODE output. |
PicStruct |
Ignored. |
DECODE output. |
Note
If the application explicitly sets FrameRateExtN/FrameRateExtD or AspectRatioW/AspectRatioH during initialization, then the decoder will use these values during decoding regardless of the values from bitstream and does not update them on new SPS. If the application sets them to 0, then the decoder uses values from the stream and updates them on each SPS.
ENCODE Constraints#
The ENCODE Constraints table lists ENCODE parameter constraints.
Parameters |
Use During Initialization |
Use During Operation |
---|---|---|
Width, Height |
Encoded frame size. |
The values must be the equal to or larger than the initialization values. |
CropX, CropY
CropW, CropH
|
H.264: Cropped frame size
MPEG-2: CropW and CropH
Specify the real width and height (may be unaligned) of the coded frames. CropX and CropY must be zero.
|
Ignored. |
AspectRatioW,
AspectRatioH
|
Any valid values. |
Ignored. |
FrameRateExtN,
FrameRateExtD
|
Any valid values. |
Ignored. |
PicStruct |
The base value must be the same as the initialization value unless |
VPP Constraints#
The VPP Constraints table lists VPP parameter constraints.
Parameters |
During Initialization |
During Operation |
---|---|---|
Width, Height |
Any valid values |
The values must be the equal to or larger than the initialization values. |
CropX, CropY,
CropW, CropH
|
Ignored |
These parameters specify the region of interest from input to output. |
AspectRatioW,
AspectRatioH
|
Ignored |
Aspect ratio values will be passed through from input to output. |
FrameRateExtN,
FrameRateExtD
|
Any valid values |
Frame rate values will be updated with the initialization value at output. |
PicStruct |
The base value must be the same as the initialization value unless
|
Specifying Configuration Parameters#
The following Configuration Parameters tables summarize how to specify the configuration parameters during initialization, encoding, decoding, and video processing.
Structure
(param)
|
ENCODE
Init
|
ENCODE
Encoding
|
DECODE
Init
|
DECODE
Decoding
|
VPP
Init
|
VPP
Processing
|
---|---|---|---|---|---|---|
Protected |
R |
R |
R |
|||
IOPattern |
M |
M |
M |
|||
ExtParam |
O |
O |
O |
|||
NumExtParam |
O |
O |
O |
Structure
(param)
|
ENCODE
Init
|
ENCODE
Encoding
|
DECODE
Init
|
DECODE
Decoding
|
VPP
Init
|
VPP
Processing
|
---|---|---|---|---|---|---|
CodecId |
M |
M |
||||
CodecProfile |
O |
O/M* |
||||
CodecLevel |
O |
O |
||||
NumThread |
O |
O |
||||
TargetUsage |
O |
|||||
GopPicSize |
O |
|||||
GopRefDist |
O |
|||||
GopOptFlag |
O |
|||||
IdrInterval |
O |
|||||
RateControlMethod |
O |
|||||
InitialDelayInKB |
O |
|||||
BufferSizeInKB |
O |
|||||
TargetKbps |
M |
|||||
MaxKbps |
O |
|||||
NumSlice |
O |
|||||
NumRefFrame |
O |
|||||
EncodedOrder |
M |
Structure
(param)
|
ENCODE
Init
|
ENCODE
Encoding
|
DECODE
Init
|
DECODE
Decoding
|
VPP
Init
|
VPP
Processing
|
---|---|---|---|---|---|---|
FourCC |
M |
M |
M |
M |
M |
M |
Width |
M |
M |
M |
M |
M |
M |
Height |
M |
M |
M |
M |
M |
M |
CropX |
M |
Ign |
Ign |
U |
Ign |
M |
CropY |
M |
Ign |
Ign |
U |
Ign |
M |
CropW |
M |
Ign |
Ign |
U |
Ign |
M |
CropH |
M |
Ign |
Ign |
U |
Ign |
M |
FrameRateExtN |
M |
Ign |
O |
U |
M |
U |
FrameRateExtD |
M |
Ign |
O |
U |
M |
U |
AspectRatioW |
O |
Ign |
O |
U |
Ign |
PT |
AspectRatioH |
O |
Ign |
O |
U |
Ign |
PT |
PicStruct |
O |
M |
Ign |
U |
M |
M/U |
ChromaFormat |
M |
M |
M |
M |
Ign |
Ign |
Abbreviation |
Meaning |
---|---|
Ign |
Ignored |
PT |
Pass Through |
Does Not Apply |
|
M |
Mandated |
R |
Reserved |
O |
Optional |
U |
Updated at output |
Note
CodecProfile is mandated for HEVC REXT and SCC profiles and optional for other cases. If the application does not explicitly set CodecProfile during initialization, the HEVC decoder will use a profile up to Main10.