From 2f34021d57b1343bb01b377a4797bef7cbc7be3c Mon Sep 17 00:00:00 2001 From: Janne Grunau Date: Thu, 6 Sep 2012 21:51:31 +0200 Subject: [PATCH] avconv: flush filtered frames before reconfiguring filters This prevents lost frames after a resolution change. --- avconv.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/avconv.c b/avconv.c index ea736066ec..df09b21c78 100644 --- a/avconv.c +++ b/avconv.c @@ -1245,6 +1245,10 @@ static int decode_video(InputStream *ist, AVPacket *pkt, int *got_output) ist->resample_width, ist->resample_height, av_get_pix_fmt_name(ist->resample_pix_fmt), decoded_frame->width, decoded_frame->height, av_get_pix_fmt_name(decoded_frame->format)); + ret = poll_filters(); + if (ret < 0 && (ret != AVERROR_EOF && ret != AVERROR(EAGAIN))) + av_log(NULL, AV_LOG_ERROR, "Error while filtering.\n"); + ist->resample_width = decoded_frame->width; ist->resample_height = decoded_frame->height; ist->resample_pix_fmt = decoded_frame->format;