Browse Source

af_aresample: fix rounding of negative timestamps

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
tags/n1.1
Michael Niedermayer 13 years ago
parent
commit
4b5a12a2cb
1 changed files with 1 additions and 2 deletions
  1. +1
    -2
      libavfilter/af_aresample.c

+ 1
- 2
libavfilter/af_aresample.c View File

@@ -191,11 +191,10 @@ static int filter_samples(AVFilterLink *inlink, AVFilterBufferRef *insamplesref)
int64_t inpts = av_rescale(insamplesref->pts, inlink->time_base.num * (int64_t)outlink->sample_rate * inlink->sample_rate, inlink->time_base.den); int64_t inpts = av_rescale(insamplesref->pts, inlink->time_base.num * (int64_t)outlink->sample_rate * inlink->sample_rate, inlink->time_base.den);
int64_t outpts= swr_next_pts(aresample->swr, inpts); int64_t outpts= swr_next_pts(aresample->swr, inpts);
aresample->next_pts = aresample->next_pts =
outsamplesref->pts = (outpts + inlink->sample_rate/2) / inlink->sample_rate;
outsamplesref->pts = ROUNDED_DIV(outpts, inlink->sample_rate);
} else { } else {
outsamplesref->pts = AV_NOPTS_VALUE; outsamplesref->pts = AV_NOPTS_VALUE;
} }

n_out = swr_convert(aresample->swr, outsamplesref->extended_data, n_out, n_out = swr_convert(aresample->swr, outsamplesref->extended_data, n_out,
(void *)insamplesref->extended_data, n_in); (void *)insamplesref->extended_data, n_in);
if (n_out <= 0) { if (n_out <= 0) {


Loading…
Cancel
Save