inm1 = input[i];
}
- } else {
-
- /* not sure that this is ever utilized - it implies that one of the input/output buffers is missing */
+ i = floor(distance);
+ phase[channel] = distance - floor(distance);
+ } else {
+ /* used to calculate play-distance with acceleration (silent roll)
+ * (use same algorithm as real playback for identical rounding/floor'ing)
+ */
for (framecnt_t outsample = 0; outsample < nframes; ++outsample) {
distance += _speed + acceleration;
}
+ i = floor(distance);
}
- i = floor(distance);
- phase[channel] = distance - floor(distance);
-
return i;
}