|
|
|
@ -182,10 +182,13 @@ static void filter_samples(AVFilterLink *inlink, AVFilterBufferRef *buf) |
|
|
|
|
if (labs(delta) > s->min_delta) { |
|
|
|
|
av_log(ctx, AV_LOG_VERBOSE, "Discontinuity - %"PRId64" samples.\n", delta); |
|
|
|
|
out_size += delta; |
|
|
|
|
} else if (s->resample) { |
|
|
|
|
int comp = av_clip(delta, -s->max_comp, s->max_comp); |
|
|
|
|
av_log(ctx, AV_LOG_VERBOSE, "Compensating %d samples per second.\n", comp); |
|
|
|
|
avresample_set_compensation(s->avr, delta, inlink->sample_rate); |
|
|
|
|
} else { |
|
|
|
|
if (s->resample) { |
|
|
|
|
int comp = av_clip(delta, -s->max_comp, s->max_comp); |
|
|
|
|
av_log(ctx, AV_LOG_VERBOSE, "Compensating %d samples per second.\n", comp); |
|
|
|
|
avresample_set_compensation(s->avr, delta, inlink->sample_rate); |
|
|
|
|
} |
|
|
|
|
delta = 0; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (out_size > 0) { |
|
|
|
|