a little more evil?
b = Buffer.read(s, "sounds/a11wlk01.wav");
(
SynthDef('freq-stretch-evil', { |stretch = 1, center = 440, out|
var sig = PlayBuf.ar(1, b, loop: 1);
// stretched
sig = PitchShift.ar(sig, 0.2, stretch * [0.25, 0.33], timeDispersion: 0.5, pitchDispersion: 0.5).sum;
// re-centered
sig = FreqShift.ar(sig, center * (1-stretch) - [200, 100, 50]).sum;
Out.ar(out, sig ! 2);
}, metadata: (specs: (stretch: [0.25, 4, \exp], center: \freq))).memStore;
SynthDescLib.at('freq-stretch-evil').makeWindow;
)