From 96ac8663deb71b5bff7a9f8ef45ccd361f698729 Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Fri, 18 May 2012 23:03:27 +0200 Subject: af_aresample: Consider the swresample delay during calculating timestamps. The difference from this should be pretty small. Signed-off-by: Michael Niedermayer --- libavfilter/af_aresample.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'libavfilter/af_aresample.c') diff --git a/libavfilter/af_aresample.c b/libavfilter/af_aresample.c index 91aee91af2..e33620ac79 100644 --- a/libavfilter/af_aresample.c +++ b/libavfilter/af_aresample.c @@ -184,7 +184,9 @@ static void filter_samples(AVFilterLink *inlink, AVFilterBufferRef *insamplesref if(insamplesref->pts != AV_NOPTS_VALUE) { aresample->next_pts = - outsamplesref->pts = av_rescale_q(insamplesref->pts, inlink->time_base, outlink->time_base); + outsamplesref->pts = av_rescale_q(insamplesref->pts, inlink->time_base, outlink->time_base) + - swr_get_delay(aresample->swr, outlink->time_base.den); + av_assert0(outlink->time_base.num == 1); } else{ outsamplesref->pts = AV_NOPTS_VALUE; //aresample->next_pts; } -- cgit v1.2.3