[sdiy] Detuning in Digital
Tom Wiltshire
tom at electricdruid.net
Mon Apr 2 16:06:40 CEST 2012
On 2 Apr 2012, at 13:27, Scott Gravenhorst wrote:
> Portamento is easy for phase accumulator systems. The pitch is described by the phase
> accumulator's increment value (which remains constant for a constant pitch). Simply
> pass the phase increment value stream through a single pole lowpass IIR filter before
> using it to update the phase accumulator. The single pole lowpass IIR filter models a
> single pole RC passive lowpass filter which is what is used to do "glide" or
> portamento on an analog synth.
One caveat I'd like to add;
Portamento on an analog synth is usually done on the 1V/Oct CV, which is exponential. Doing portamento on the frequency (phase) increment is equivalent to doing the portamento on a Linear CV. There probably are linear CV analogs with RC portamento (early Korg?), but it's not exactly the commonest set up. More accurate (if "VA" is what you're after) would be to do the portamento on the pitch word before you convert it to a frequency increment using the table discussed already.
Still, Scott's tried it, and if it sounds good, it's a fairly simple method, although arithmetic accuracy becomes an issue on cheap processors. I remember looking at it and it only became efficient if I reduced the calculation to shifts. This gave good results, but only 8 different portamento settings (one for each position of bitshift). There may well be a better way that I missed, or better options on other architectures.
T.
More information about the Synth-diy
mailing list