You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Slowed playback stutters and skips after a minute or two #722
Playback below 1x speed starts to stutter after a while, and then skips. The slower the speed, the sooner it starts. At 0.75x it begins about fifty seconds in.
It affects anyone practising at the slowed speed with the pitch stage available, which is the normal case on desktop and in the browser. The tape-effect fallback, where speed also changes pitch, is not affected.
Why
With the time-stretch stage active, the stem sources play at 1x and the stretch stage buffers what it receives, releasing it at the slowed rate. So the sources are used up at the wall clock rate.
The chunk scheduler decides when to queue the next chunk by comparing how far ahead it has scheduled against the output playhead. The output playhead moves at the slowed rate, so at 0.75x the scheduler overestimates its margin by a quarter of a second every second. Once that error passes the lookahead plus one chunk, the sources run dry. The next chunk is then scheduled late and the part that "already passed" is skipped.
Constraints
1x playback must behave as it does now.
The tape-effect fallback plays the sources at the slowed rate, so the scheduler's clock has to follow the source rate, not assume 1x.
Activity
Slowed playback: no stutter, no doubled kicks, no echo (#727)
Release 0.19.1 (#739)
fix(engine): keep chunk sources fed during slowed playback