I've done some pretty extreme stretching/compressing of time with
ecasound's -ei effect (labeled as a pitch shifter). The default builtin
implementation (linear interpolation, I think?) will do arbitrary
percentages up or down. I don't have a great critical ear for sound
quality (things tend to just sound different in different ways rather
than better or worse) but it seems fine to me and works. If you compile
ecasound with SRC support the shift is limited to 12x in either
direction. But, as Steve pointed out to me on #lad last week(?) you can
do multiple iterations to get greater shifts/stretches. Using SRC the
resulting sound is somehow smoother sounding than with the internal
ecasound version.
-Eric Rz.
derek holzer wrote:
Doing some quick experiments with Soundtouch, I hear
that it probably
isn't going to work for "extreme" timestretching. Even doubling the
length of a 4 minute soundfile results in *very* noticeable artifacts...
a kind of stuttering effect as the samples get pulled apart. You won't
be making a 24 hour Beethoven stretch with this one...
Seems like an FFT-based approach, or a very good synchronous
granulation, might be better. Pure Data has a nice phase vocoder demo
patch in its documentation. You'll have to fiddle with it to get stereo,
of course. But hey, it's only a help patch! ;-)
Other option is the Synchgrain external for PD, as I might have
mentioned earlier. I haven't tested the limits of it yet, but I know
that it sounded smooth at pretty slow playbacks.
d.