Hi, this was found when an ffserver is configured to output libvpx encoded video but the feeding ffmpeg has no libvpx support compiled in.
-Thilo
>From 30adcf74e5eff6e48bd6fee7ad5d9bd68e5429ca Mon Sep 17 00:00:00 2001 From: Thilo Borgmann <thilo.borgm...@mail.de> Date: Thu, 25 Sep 2014 16:10:58 +0200 Subject: [PATCH] lavu/ffmpeg_opt: Check return value of avcodec_find_encoder(). Prevents a segfault if a stream featuring a known but unavailable codec (like external lib codec) should be opened. Bug found by: Jonas Geistert <j.geist...@yahoo.de> --- ffmpeg_opt.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ffmpeg_opt.c b/ffmpeg_opt.c index 05ab652..4fb6fa3 100644 --- a/ffmpeg_opt.c +++ b/ffmpeg_opt.c @@ -1623,6 +1623,10 @@ static int read_ffserver_streams(OptionsContext *o, AVFormatContext *s, const ch AVCodecContext *avctx; codec = avcodec_find_encoder(ic->streams[i]->codec->codec_id); + if (!codec) { + av_log(s, AV_LOG_ERROR, "no encoder found for codec id %i\n", ic->streams[i]->codec->codec_id); + return AVERROR(EINVAL); + } ost = new_output_stream(o, s, codec->type, -1); st = ost->st; avctx = st->codec; -- 1.8.5.2 (Apple Git-48)
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel