Commit 788d7a8c authored by Michael Niedermayer's avatar Michael Niedermayer

av_resample_compensate() doxy

Originally committed as revision 3671 to svn://svn.ffmpeg.org/ffmpeg/trunk
parent 61c52ead
...@@ -159,6 +159,18 @@ void av_resample_close(AVResampleContext *c){ ...@@ -159,6 +159,18 @@ void av_resample_close(AVResampleContext *c){
av_freep(&c); av_freep(&c);
} }
/**
* Compensates samplerate/timestamp drift. The compensation is done by changing
* the resampler parameters, so no audible clicks or similar distortions ocur
* @param compensation_distance distance in output samples over which the compensation should be performed
* @param sample_delta number of output samples which should be output less
*
* example: av_resample_compensate(c, 10, 500)
* here instead of 510 samples only 500 samples would be output
*
* note, due to rounding the actual compensation might be slightly different,
* especially if the compensation_distance is large and the in_rate used during init is small
*/
void av_resample_compensate(AVResampleContext *c, int sample_delta, int compensation_distance){ void av_resample_compensate(AVResampleContext *c, int sample_delta, int compensation_distance){
// sample_delta += (c->ideal_dst_incr - c->dst_incr)*(int64_t)c->compensation_distance / c->ideal_dst_incr; // sample_delta += (c->ideal_dst_incr - c->dst_incr)*(int64_t)c->compensation_distance / c->ideal_dst_incr;
c->compensation_distance= compensation_distance; c->compensation_distance= compensation_distance;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment