]> git.sesse.net Git - ffmpeg/commit
lavc/qsvenc: enable QVBR mode
authorZhong Li <zhong.li@intel.com>
Wed, 23 Jan 2019 11:16:17 +0000 (19:16 +0800)
committerZhong Li <zhong.li@intel.com>
Fri, 25 Jan 2019 08:53:27 +0000 (16:53 +0800)
commit74cf2dc3ac405c5e55b7ecd4d17b40e26d59eb84
tree44dd369aad5ac5034a18fef803ae2b4acfd10da4
parent3224d6691cdc59ef0d31cdb35efac27494ff515b
lavc/qsvenc: enable QVBR mode

QVBR mode is to use the variable bitrate control algorithm
with constant quality.
mfxExtCodingOption3 should be supported to enable QVBR mode.

It is neccesary to specify a max_rate for QVBR, else it may be ICQ mode.
Example usage: ffmpeg -hwaccel qsv -c:v h264_qsv -i input.mp4 -c:v
h264_qsv -global_quality 25 -maxrate 2M test_qvbr.mp4 -v verbose

Clip QVBR quality range to be [0, 51] as Mark's commments.
It is similar to qp range of CQP but possibly should be updated when VP8/VP9
encoding can be supported.

Reviewed-by: Mark Thompson <sw@jkqxz.net>
Signed-off-by: Zhong Li <zhong.li@intel.com>
libavcodec/qsvenc.c
libavcodec/qsvenc.h