[sdiy] Experiment with bandlimited ramps
Seb Francis
seb at burnit.co.uk
Wed Jan 7 02:34:48 CET 2009
Tom Wiltshire wrote:
> Seb,
>
> On 6 Jan 2009, at 23:20, Seb Francis wrote:
>
>> By the way, what's the use of generating these bandlimited ramps
>> anyway? Can you actually use them to make an oscillator?
>
> Yes, you can. My DWGS oscillator code for the 33FJ128GP802 dsPIC does
> exactly this. It generates a series of wavetables with decreasing
> harmonic content at half-octave intervals over 8 octaves. Antti
> mentioned this technique as (4) Mipmapped wavetables. You should
> definitely consider it among your other approaches.
>
So let me get this right...
You have a simple saw oscillator, stepping at your desired output sample
rate (62.5kHz?). The value of the saw is used to lookup the actual
sample value from the closest wavetable, in your case not using any
interpolation between samples, but more ideally using linear
interpolation between adjacent samples, or better still an FIR over a
larger range of points. Yes?
Each table is a single cycle at a fixed sample rate, and so you have to
do a multiply by the table length for each lookup. Am I getting it so far?
What sample rate do you use for your wavetables? The same as the output
sample rate?
I guess the quality would be improved by using higher than output sample
rate for the wavetables, or using linear interpolation or better a short
FIR to read the point from the table.
I suppose you are getting away with not interpolating the sample point
by virtue of the fact that you are only using 64 harmonics.
Seb
More information about the Synth-diy
mailing list