[FFmpeg-devel] [PATCH] ffplay: Check for pix_fmt changes Fixes Ticket238 by not crashing but also not playing the file.

Marton Balint cus at passwd.hu
Mon Nov 21 20:23:34 CET 2011


On Sun, 20 Nov 2011, Michael Niedermayer wrote:

> Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
> ---
> ffplay.c |    5 ++++-
> 1 files changed, 4 insertions(+), 1 deletions(-)
>
> diff --git a/ffplay.c b/ffplay.c
> index 46cf6a1..673f31d 100644
> --- a/ffplay.c
> +++ b/ffplay.c
> @@ -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();
>     w += 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)))
>         return -1;
>

Pushed to my stable branch, feel free to merge.

Regards,
Marton


More information about the ffmpeg-devel mailing list