On Wed, 2018-02-07 at 10:31 +0800, Jun Zhao wrote: > > On 2018/2/6 16:17, Haihao Xiang wrote: > > It is possible B frame is not supported for VAEntrypointEncSliceLP and > > the underlying driver has advertised it, so it is better to disable B > > frame instead of returning error for this case > > > > Signed-off-by: Haihao Xiang <haihao.xi...@intel.com> > > --- > > libavcodec/vaapi_encode.c | 7 +++---- > > 1 file changed, 3 insertions(+), 4 deletions(-) > > > > diff --git a/libavcodec/vaapi_encode.c b/libavcodec/vaapi_encode.c > > index 550ea47991d..e371f5761ee 100644 > > --- a/libavcodec/vaapi_encode.c > > +++ b/libavcodec/vaapi_encode.c > > @@ -1094,10 +1094,9 @@ static av_cold int > > vaapi_encode_config_attributes(AVCodecContext *avctx) > > goto fail; > > } > > if (avctx->max_b_frames > 0 && ref_l1 < 1) { > > - av_log(avctx, AV_LOG_ERROR, "B frames are not " > > - "supported (%#x).\n", attr[i].value); > > - err = AVERROR(EINVAL); > > - goto fail; > > + av_log(avctx, AV_LOG_WARNING, "B frames are not " > > + "supported (%#x) by the underlying driver.\n", > > attr[i].value); > > + avctx->max_b_frames = 0; > > I think check b frames when enable low_power in vaapi_encode_xxx_init() > more better.
VAConfigAttribEncMaxRefFrames is applicable for other CODECs and non-low power mode. so I think it is better to handle this case in vaapi_encoder.c Thanks Haihao > > } > > } > > break; > > _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel