mirror of https://git.ffmpeg.org/ffmpeg.git
lavc/vaapi_encode_h264: disable B frames in baseline profile
Disable B frames when using baseline/constrained baseline profile, following H.264 spec Annex A.2.1. Signed-off-by: Jun Zhao <jun.zhao@intel.com> Signed-off-by: Yi A Wang <yi.a.wang@intel.com> Signed-off-by: Mark Thompson <sw@jkqxz.net>
This commit is contained in:
parent
0ddc24d232
commit
b53b3a4f6a
|
@ -1190,9 +1190,19 @@ static av_cold int vaapi_encode_h264_init(AVCodecContext *avctx)
|
||||||
switch (avctx->profile) {
|
switch (avctx->profile) {
|
||||||
case FF_PROFILE_H264_CONSTRAINED_BASELINE:
|
case FF_PROFILE_H264_CONSTRAINED_BASELINE:
|
||||||
ctx->va_profile = VAProfileH264ConstrainedBaseline;
|
ctx->va_profile = VAProfileH264ConstrainedBaseline;
|
||||||
|
if (avctx->max_b_frames != 0) {
|
||||||
|
avctx->max_b_frames = 0;
|
||||||
|
av_log(avctx, AV_LOG_WARNING, "H.264 constrained baseline profile "
|
||||||
|
"doesn't support encoding with B frames, disabling them.\n");
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case FF_PROFILE_H264_BASELINE:
|
case FF_PROFILE_H264_BASELINE:
|
||||||
ctx->va_profile = VAProfileH264Baseline;
|
ctx->va_profile = VAProfileH264Baseline;
|
||||||
|
if (avctx->max_b_frames != 0) {
|
||||||
|
avctx->max_b_frames = 0;
|
||||||
|
av_log(avctx, AV_LOG_WARNING, "H.264 baseline profile "
|
||||||
|
"doesn't support encoding with B frames, disabling them.\n");
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case FF_PROFILE_H264_MAIN:
|
case FF_PROFILE_H264_MAIN:
|
||||||
ctx->va_profile = VAProfileH264Main;
|
ctx->va_profile = VAProfileH264Main;
|
||||||
|
|
Loading…
Reference in New Issue