I&#39;ve had this coded up before, the problem is that if you want to &quot;pitch shift&quot; each sample individually it really does become pretty heavy on the CPU. Unless your not *dynamically* changing the value of the pitch shift, in which case it can be rendered to a buffer & just played back.<br /><br />I would share the source if it was in better condition, most of it is hacks on hacks for extra random features... but I can zip it & ship it to somebody if they&#39;d care to take a look. A JACK client wrapper would need to be coded up, its only the &quot;sampler / pitch shifter&quot; now. <br /><br />&gt; Best free library from timestretch I know of is the RubberBand one.<br />There is also SoundTouch, its LGPL even more relaxed than the GPL of RubberBand. Its what I used for the project mentioned above.<br /><br />Cheers, -Harry