diff --git a/libavfilter/avf_showwaves.c b/libavfilter/avf_showwaves.c index 90d3ec9441..121f785c15 100644 --- a/libavfilter/avf_showwaves.c +++ b/libavfilter/avf_showwaves.c @@ -202,7 +202,10 @@ static void filter_samples(AVFilterLink *inlink, AVFilterBufferRef *insamples) outlink->w, outlink->h); outpicref->video->w = outlink->w; outpicref->video->h = outlink->h; - outpicref->pts = insamples->pts; + outpicref->pts = insamples->pts + + 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);