I wrote this SuperCollider script a long time ago. It time-stretches audio files using granulation, jiggling the samples a little to smooth them out. I think it sounds great, and I've used it for a series of albums called Not Knowing, for very patient listeners.
Most time-stretching software (e.g. PaulStretch) uses a frequency transform approach, roughly as follows:
- take an STFT;
- randomize each frame's phase data while preserving its amplitude data;
- interpolate the frames;
- resynthesize.
But I think that granulation sounds better, particular for noisy samples. It takes a long time to generate high-quality output, but that's okay.
Incidently, 9BeetStretch uses a granulation technique as well.
Update (July 2020): I developed a new time-stretch algorithm with the help of Jem Altieri and Sam Pluta! Check out the NessStretch here.