From f1a75aa033db9e8beceb0b44d797decfc41fd469 Mon Sep 17 00:00:00 2001 From: Marton Balint Date: Tue, 29 May 2012 00:20:11 +0200 Subject: [PATCH] ffplay: remove VideoPicture pix_fmt and use frame pixel format instead VideoPicture pixel format is set at allocation time, therefore it is not reflecting the proper value. Fixes files with changing pixel format in the avfilter disabled case. Signed-off-by: Marton Balint --- ffplay.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/ffplay.c b/ffplay.c index 2fae0e5996..260391fb7f 100644 --- a/ffplay.c +++ b/ffplay.c @@ -106,7 +106,6 @@ typedef struct VideoPicture { AVRational sample_aspect_ratio; int allocated; int reallocate; - enum PixelFormat pix_fmt; #if CONFIG_AVFILTER AVFilterBufferRef *picref; @@ -1320,7 +1319,6 @@ static void alloc_picture(AllocEventProps *event_props) vp->width = frame->width; vp->height = frame->height; - vp->pix_fmt = frame->format; video_open(event_props->is, 0); @@ -1441,12 +1439,12 @@ static int queue_picture(VideoState *is, AVFrame *src_frame, double pts1, int64_ #if CONFIG_AVFILTER // FIXME use direct rendering av_picture_copy(&pict, (AVPicture *)src_frame, - vp->pix_fmt, vp->width, vp->height); + src_frame->format, vp->width, vp->height); vp->sample_aspect_ratio = vp->picref->video->sample_aspect_ratio; #else sws_flags = av_get_int(sws_opts, "sws_flags", NULL); is->img_convert_ctx = sws_getCachedContext(is->img_convert_ctx, - vp->width, vp->height, vp->pix_fmt, vp->width, vp->height, + vp->width, vp->height, src_frame->format, vp->width, vp->height, PIX_FMT_YUV420P, sws_flags, NULL, NULL, NULL); if (is->img_convert_ctx == NULL) { fprintf(stderr, "Cannot initialize the conversion context\n");