I've implemented audio time scaling using a phase vocoder approach because I wanted to answer this question here (and learn something in the process). Since that question has been closed, I may as well ask a new question about audio time scaling.
Here are some examples of what you might get if you use the approach I did (the format is 8kHz, 32bit float, 1 channel). I can post the source code here too if someone's interested.
Examples (these are all examples of time scaling without pitch shifting - magnitude/phase modified or raw fft modified say what I did to achieve time scaling)
2x slowdown -magnitude/phase modified
2x slowdown - raw fft modified
2x speedup - magnitude/phase modified
I still have a couple of questions though
1) Does anybody know of software that does time scaling right using a phase vocoder (by right I mean with as few digital artifacts as possible)?
2) How do we preserve the phase coherence/continuity while time scaling the fft spectrum? Some code or pseudo code would be great.
Regarding question #2, I know there're a lot of papers on this but they're usually so convoluted and I'm having a hard time understanding them.