lavfi/showwaves: do not set on outlink->out_buf the sent video frame
authorStefano Sabatini <stefasab@gmail.com>
Mon, 23 Jul 2012 12:57:15 +0000 (14:57 +0200)
committerStefano Sabatini <stefasab@gmail.com>
Mon, 23 Jul 2012 13:10:19 +0000 (15:10 +0200)
The video frame reference is passed along the filterchain, and is not
possessed anymore by the filter. If out_buf is not set to NULL, it will
be freed by ff_end_frame() causing a crash.

libavfilter/avf_showwaves.c

index 3939fe5..96ed2c7 100644 (file)
@@ -206,7 +206,6 @@ static int filter_samples(AVFilterLink *inlink, AVFilterBufferRef *insamples)
                              av_rescale_q((p - (int16_t *)insamples->data[0]) / nb_channels,
                                           (AVRational){ 1, inlink->sample_rate },
                                           outlink->time_base);
-            outlink->out_buf = outpicref;
             linesize = outpicref->linesize[0];
             memset(outpicref->data[0], 0, showwaves->h*linesize);
         }