diff --git a/libavformat/gif.c b/libavformat/gif.c index bef98d3ac4..f9a891ff57 100644 --- a/libavformat/gif.c +++ b/libavformat/gif.c @@ -339,8 +339,10 @@ static int gif_write_header(AVFormatContext *s) // rate = video_enc->time_base.den; } - /* XXX: is it allowed ? seems to work so far... */ - video_enc->pix_fmt = PIX_FMT_RGB24; + if (video_enc->pix_fmt != PIX_FMT_RGB24) { + av_log(s, AV_LOG_ERROR, "ERROR: gif only handles the rgb24 pixel format. Use -pix_fmt rgb24.\n"); + return AVERROR_IO; + } gif_image_write_header(pb, width, height, loop_count, NULL); diff --git a/tests/regression.sh b/tests/regression.sh index 9aa1563214..1d8c337450 100755 --- a/tests/regression.sh +++ b/tests/regression.sh @@ -691,7 +691,7 @@ do_ffmpeg_crc $file -f image2pipe -i $file # gif file=${outfile}libav.gif -do_ffmpeg $file -t 1 -y -qscale 10 -f pgmyuv -i $raw_src $file +do_ffmpeg $file -t 1 -y -qscale 10 -f pgmyuv -i $raw_src -pix_fmt rgb24 $file #do_ffmpeg_crc $file -i $file # yuv4mpeg