Stretch or shrink the sound over time, without changing frequency. TIMESTRETCH creates extra time-windows to expand the overall time-base of the sound, without a change of frequency. The stretching iself can be time-varying. If the stretch factor tstretch is <1, a time-shrinking occurs. MODES 1. Timestretch (2. Calculate outfile length ― no output; not available yet.) PARAMETERS tstretch Stretch factor. If time-varying, the stretch itself varies between successive times. Range: 0.0001-1-10000 (<1
shrinks, >1
stretches) T-V
T-V times must
increase,
even if slightly.Example of T-V file:
0.0 1.0 start with no timestretch to preserve original attack transients 0.199 1.0 still no timestretch; if e.g. 1.2 here, there would be an increasing stretch from 1 to 1.2 over the times 0 to 0.199" 0.2 2.0 timestretch of 2... 3.0 2.0 ...lasts until this time 4.0 1.0 from 3" to 4", the stretch is reduced back to original state, which lasts until the end of the sound. NOTES It's easily demonstrated that extra windows are created: count the number in the original (Menu: Info>Spectral>Windows; CDP: specinfo windowct) and those in a 10 times stretch: there are 10 times as many. Presumably amplitude values are interpolated between successive windows of the original file. The ability to preserve the original attack by using a time-varying tstretch is often important. Be careful to have two successive lines of the same value if you want a static stretch factor over that time (see e.g. lines 3 and 4 in above example). For slowing down or transposing a sound, a combination of SPEED and TIMESTRETCH is useful. Slowing to half-speed: Source
—>Speed
x 2—>Timestretch
x
0.5 —>Speed
x 0.5
For octave transposition upwards:is a good alternative to: Source —>Transpose x 2 —> Speed x 0.5 Source
—>Speed
x 2—>Timestretch
x
2
is a good alternative to: Source —>Transpose x 2 TIMESTRETCH might also be combined with GLIDE: both can provide an output of 'any' desired length, and the timestretched file can provide an evolving spectral envelope for GLIDE's output, using CROSS, VOCODE or PUTFMTS (> example).
|