ffplay: Check for pix_fmt changes Fixes Ticket238 by not crashing but also not playing the file.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Marton Balint <cus@passwd.hu>
This commit is contained in:
Michael Niedermayer 2011-11-20 19:56:49 +01:00 committed by Marton Balint
parent 2f0f9a87d0
commit 2c28e26913

View File

@ -1562,7 +1562,10 @@ static int input_get_buffer(AVCodecContext *codec, AVFrame *pic)
edge = codec->flags & CODEC_FLAG_EMU_EDGE ? 0 : avcodec_get_edge_width(); edge = codec->flags & CODEC_FLAG_EMU_EDGE ? 0 : avcodec_get_edge_width();
w += edge << 1; w += edge << 1;
h += edge << 1; h += edge << 1;
if (codec->pix_fmt != ctx->outputs[0]->format) {
av_log(codec, AV_LOG_ERROR, "Pixel format mismatches %d %d\n", codec->pix_fmt, ctx->outputs[0]->format);
return -1;
}
if(!(ref = avfilter_get_video_buffer(ctx->outputs[0], perms, w, h))) if(!(ref = avfilter_get_video_buffer(ctx->outputs[0], perms, w, h)))
return -1; return -1;