avdevice/v4l2: Remove av_assert0 when format not supported

Before this commit an av_assert0 would fail if a v4l2 device did not
support a target format.
For example,
./ffmpeg -f v4l2 -codec:v h264 -i /dev/video0 -f mpegts -
would signal an abort if /dev/video0 did not support h264.

The new behaviour is to return an AVERROR(EINVAL) error code. An
av_assert0 has been added to verify this return.

Fixes #6629

Signed-off-by: Andriy Gelman <andriy.gelman@gmail.com>
Reviewed-by: Nicolas George <george@nsup.org>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
Andriy Gelman 2019-11-04 22:32:59 -05:00 committed by Michael Niedermayer
parent a0c7406075
commit 7b2ce27e56

View File

@ -811,7 +811,8 @@ static int device_try_init(AVFormatContext *ctx,
}
*codec_id = ff_fmt_v4l2codec(*desired_format);
av_assert0(*codec_id != AV_CODEC_ID_NONE);
if (*codec_id == AV_CODEC_ID_NONE)
av_assert0(ret == AVERROR(EINVAL));
return ret;
}