ffmpeg | branch: master | Michael Niedermayer <[email protected]> | Mon Jan 19 
05:36:27 2015 +0100| [56a33b232cbb71045fa6609fda3145ea08047b7d] | committer: 
Michael Niedermayer

avfilter/vf_idet: flush internal buffers on parameter changes

This is needed to auto insert the filter by default

Signed-off-by: Michael Niedermayer <[email protected]>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=56a33b232cbb71045fa6609fda3145ea08047b7d
---

 libavfilter/vf_idet.c |   12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/libavfilter/vf_idet.c b/libavfilter/vf_idet.c
index 72729be..c6ee8db 100644
--- a/libavfilter/vf_idet.c
+++ b/libavfilter/vf_idet.c
@@ -249,6 +249,18 @@ static int filter_frame(AVFilterLink *link, AVFrame 
*picref)
         return ff_filter_frame(ctx->outputs[0], picref);
     }
 
+    if(   picref->width  != link->w
+       || picref->height != link->h
+       || picref->format != link->format) {
+        link->dst->inputs[0]->format = picref->format;
+        link->dst->inputs[0]->w      = picref->width;
+        link->dst->inputs[0]->h      = picref->height;
+
+        av_frame_free(&idet->prev);
+        av_frame_free(&idet->cur );
+        av_frame_free(&idet->next);
+    }
+
     if (idet->prev)
         av_frame_free(&idet->prev);
     idet->prev = idet->cur;

_______________________________________________
ffmpeg-cvslog mailing list
[email protected]
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog

Reply via email to