]> git.sesse.net Git - ffmpeg/blobdiff - libavfilter/vf_mpdecimate.c
Merge commit '5ea59b1f424f0efc7805d837e6fdb80561fb0f3a'
[ffmpeg] / libavfilter / vf_mpdecimate.c
index 25efacfeebdbedf5117ae06239aca5eee9a10066..c0c498bd65e2310d6ad0bc145020a832aa4ae0ee 100644 (file)
@@ -131,10 +131,13 @@ static int decimate_frame(AVFilterContext *ctx,
                         cur->data[plane], cur->linesize[plane],
                         ref->data[plane], ref->linesize[plane],
                         FF_CEIL_RSHIFT(ref->width,  hsub),
-                        FF_CEIL_RSHIFT(ref->height, vsub)))
+                        FF_CEIL_RSHIFT(ref->height, vsub))) {
+            emms_c();
             return 0;
+        }
     }
 
+    emms_c();
     return 1;
 }
 
@@ -221,19 +224,6 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *cur)
     return 0;
 }
 
-static int request_frame(AVFilterLink *outlink)
-{
-    DecimateContext *decimate = outlink->src->priv;
-    AVFilterLink *inlink = outlink->src->inputs[0];
-    int ret;
-
-    do {
-        ret = ff_request_frame(inlink);
-    } while (decimate->drop_count > 0 && ret >= 0);
-
-    return ret;
-}
-
 static const AVFilterPad mpdecimate_inputs[] = {
     {
         .name         = "default",
@@ -248,7 +238,6 @@ static const AVFilterPad mpdecimate_outputs[] = {
     {
         .name          = "default",
         .type          = AVMEDIA_TYPE_VIDEO,
-        .request_frame = request_frame,
     },
     { NULL }
 };