lavfi/avf_showwaves: remove looping on request_frame().
authorNicolas George <george@nsup.org>
Fri, 2 Oct 2015 14:04:47 +0000 (16:04 +0200)
committerNicolas George <george@nsup.org>
Wed, 7 Oct 2015 17:00:22 +0000 (19:00 +0200)
libavfilter/avf_showwaves.c

index ec5291a..b75c666 100644 (file)
@@ -53,7 +53,6 @@ typedef struct {
     int buf_idx;
     int16_t *buf_idy;    /* y coordinate of previous sample for each channel */
     AVFrame *outpicref;
-    int req_fullfilled;
     int n;
     int sample_count_mod;
     int mode;                   ///< ShowWavesMode
@@ -179,8 +178,7 @@ inline static int push_frame(AVFilterLink *outlink)
     int nb_channels = inlink->channels;
     int ret, i;
 
-    if ((ret = ff_filter_frame(outlink, showwaves->outpicref)) >= 0)
-        showwaves->req_fullfilled = 1;
+    ret = ff_filter_frame(outlink, showwaves->outpicref);
     showwaves->outpicref = NULL;
     showwaves->buf_idx = 0;
     for (i = 0; i < nb_channels; i++)
@@ -248,11 +246,7 @@ static int request_frame(AVFilterLink *outlink)
     AVFilterLink *inlink = outlink->src->inputs[0];
     int ret;
 
-    showwaves->req_fullfilled = 0;
-    do {
-        ret = ff_request_frame(inlink);
-    } while (!showwaves->req_fullfilled && ret >= 0);
-
+    ret = ff_request_frame(inlink);
     if (ret == AVERROR_EOF && showwaves->outpicref) {
         if (showwaves->single_pic)
             push_single_pic(outlink);