back to list

TUNING digest 1401

🔗"jloffink" <jloffink@...>

5/1/1998 5:09:04 PM
> From: gbreed@cix.compulink.co.uk (Graham Breed)
> > synth players sometimes intentionally detune a pair of oscillators so
> > they'd slowly phase shift and create a "fat" sound that is richer and
> > less boring than a single oscillator.
>
> This is standard with the dual play mode on my DX21, although
> that's slightly different because the two notes will have
> different timbres. Even with identical timbres, you don't have
> to hear the phase shifting for the sound to be changed. I usually
> set a 1 or 2 cent detuning so that it doesn't interfere with the
> harmony.
>
> You may want to stop the tuning getting _too_ accurate so that
> the phasing becomes audible. To aim the beats between 0.4 and 0.5
> cents you need about 20 millicent precision. Higher precision
> means the beats can be set in tune with the tempo or harmony.
> That complicates the tuning process, of course. Fast, accurate
> pitch bends may be required.
>
Kurzweil K2000/K2500 programs have a "FineHz" tuning parameter that lets
you detune each layer by +-6 Hz in 0.10 Hz increments, in addition to the
normal cents pitch adjustment.
>
> What are the practical problems with implementing this precision
> on a synth? I'm assuming the errors creep in when you convert
> from a cents value to a frequency ratio. This looks like the
> simplest algorithm that works:
>
> if (n<0)
> r = 1+ n*5.8454e-4
> else
> r = 1+ n*5.707e-4
> endif
>
> Where n is the tuning in cents relative to 12-equal, and -50 <= n
> <= 50. I'm assuming the ratios for 12-equal will be in a lookup
> table. Multiply the relevant one by r.
>
> The worst intervals using my algorithm are 0.25 cents out.
> Maybe this is why we're only given 1 cent steps at the moment. A
> larger lookup table with third-tone ratios should give enough
> accuracy for 0.1 cent steps.
>
Synths frequency resolution is ultimately limited by hardware, which is
specified in Hertz rather than cents due to the nature of the phase
accumulator used in all wavetable/DSP synths and samplers. A lookup table
is used by the software that converts cents to Hertz (actually the phase
increment), either one master octave or the whole keyboard. This table
might be stored in the synth manufacturer's custom integrated circuits or
in their software code ROM. Due to the speed requirements and low math
capabilities of the main microprocessors it is unlikely that an algorithm
would be used.

John Loffink
jloffink@pdq.net