From c39b6e1425f041622a4e58d1c7c215c75a04a845 Mon Sep 17 00:00:00 2001 From: Linjie Fu Date: Tue, 25 Feb 2020 10:02:33 +0800 Subject: lavc/qsvenc: add return check for ff_qsv_map_pixfmt Return an error directly if pixfmt is not supported for encoding, otherwise it may be hidden until query/check in MSDK. Signed-off-by: Linjie Fu Signed-off-by: Haihao Xiang --- libavcodec/qsvenc.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'libavcodec') diff --git a/libavcodec/qsvenc.c b/libavcodec/qsvenc.c index 602436da63..4e7a15f060 100644 --- a/libavcodec/qsvenc.c +++ b/libavcodec/qsvenc.c @@ -578,7 +578,9 @@ static int init_video_param_jpeg(AVCodecContext *avctx, QSVEncContext *q) if (!desc) return AVERROR_BUG; - ff_qsv_map_pixfmt(sw_format, &q->param.mfx.FrameInfo.FourCC); + ret = ff_qsv_map_pixfmt(sw_format, &q->param.mfx.FrameInfo.FourCC); + if (ret < 0) + return AVERROR_BUG; q->param.mfx.FrameInfo.CropX = 0; q->param.mfx.FrameInfo.CropY = 0; @@ -681,7 +683,9 @@ static int init_video_param(AVCodecContext *avctx, QSVEncContext *q) if (!desc) return AVERROR_BUG; - ff_qsv_map_pixfmt(sw_format, &q->param.mfx.FrameInfo.FourCC); + ret = ff_qsv_map_pixfmt(sw_format, &q->param.mfx.FrameInfo.FourCC); + if (ret < 0) + return AVERROR_BUG; q->param.mfx.FrameInfo.CropX = 0; q->param.mfx.FrameInfo.CropY = 0; -- cgit v1.2.3