RateControlMethod

Description

 

 

The RateControlMethod enumerator itemizes bitrate control methods.

 

Name/Description

 

 

MFX_RATECONTROL_CBR

Use the constant bitrate control algorithm

 

 

MFX_RATECONTROL_VBR

Use the variable bitrate control algorithm

 

 

MFX_RATECONTROL_CQP

Use the constant quantization parameter algorithm.

 

 

MFX_RATECONTROL_AVBR

Use the average variable bitrate control algorithm

 

 

MFX_RATECONTROL_LA

Use the VBR algorithm with look ahead. It is a special bitrate control mode in the SDK AVC encoder that has been designed to improve encoding quality. It works by performing extensive analysis of several dozen frames before the actual encoding and as a side effect significantly increases encoding delay and memory consumption.

The only available rate control parameter in this mode is mfxInfoMFX::TargetKbps. Two other parameters, MaxKbps and InitialDelayInKB, are ignored. To control LA depth the application can use mfxExtCodingOption2::LookAheadDepth parameter.

This method is not HRD compliant.

 

 

MFX_RATECONTROL_ICQ

Use the Intelligent Constant Quality algorithm. This algorithm improves subjective video quality of encoded stream. Depending on content, it may or may not decrease objective video quality. Only one control parameter is used - quality factor, specified by mfxInfoMFX::ICQQuality.

 

 

MFX_RATECONTROL_VCM      

Use the Video Conferencing Mode algorithm. This algorithm is similar to the VBR and uses the same set of parameters mfxInfoMFX::InitialDelayInKB, TargetKbps and MaxKbps. It is tuned for IPPP GOP pattern and streams with strong temporal correlation between frames. It produces better objective and subjective video quality in these conditions than other bitrate control algorithms. It does not support interlaced content, B frames and produced stream is not HRD compliant.

 

 

MFX_RATECONTROL_LA_ICQ

Use intelligent constant quality algorithm with look ahead. Quality factor is specified by mfxInfoMFX::ICQQuality. To control LA depth the application can use mfxExtCodingOption2::LookAheadDepth parameter.

This method is not HRD compliant.

 

 

MFX_RATECONTROL_LA_EXT

Use extended look ahead rate control algorithm. It is intended for one to N transcode scenario and requires presence of mfxExtLAFrameStatistics structure at encoder input at runtime.

 

 

MFX_RATECONTROL_LA_HRD

Use HRD compliant look ahead rate control algorithm.

 

 

 

MFX_RATECONTROL_QVBR

Use the variable bitrate control algorithm with constant quality. This algorithm trying to achieve the target subjective quality with the minimum number of bits, while the bitrate constraint and HRD compliancy are satisfied. It uses the same set of parameters as VBR and quality factor specified by mfxExtCodingOption3::QVBRQuality.

 

Change History

 

This enumerator is available since SDK API 1.0.

The SDK API 1.1 added the constant quantization parameter algorithm.

The SDK API 1.3 added the average variable bitrate control algorithm.

The SDK API 1.7 added the look ahead algorithm.

The SDK API 1.8 added the intelligent constant quality and video conferencing mode algorithms.

The SDK API 1.10 added the extended look ahead rate control algorithm.

The SDK API 1.11 added the HRD compliant look ahead and variable bitrate with constant quality rate control algorithms.

 

 

 

 

 

For more complete information about compiler optimizations, see our Optimization Notice.