I am not sure what a "pure sawtooth phasor" is. Do you mean a "naive sawtooth"
a.k.a. a ramp function?
The technique that I have suggested is, say, 4096 samples for all active
wavetables so that alignment and crossfading are simpler. In a software
synthetic that runs on a modern computer, the waste of memory does not seem to
be salient. 4096 × 4 × 64 = 1 meg. Thats 64 wavetables for some instrument.
Of course the wavetables for higher pitches will have fewer harmonics.
--r b-j [email protected]
"Imagination is more important than knowledge."
-------- Original message --------
From: Phil Burk <[email protected]>
Date: 8/4/2018 1:39 PM (GMT-08:00)
To: A discussion list for music-related DSP <[email protected]>
Subject: Re: [music-dsp] Antialiased OSC
On Sat, Aug 4, 2018 at 10:53 AM, Nigel Redmon <[email protected]> wrote:
With a full-bandwidth saw, though, the brightness is constant. That takes more
like 500 harmonics at 40 Hz, 1000 at 20 Hz. So, as Robert says, 2048 or 4096
are good choices (for both noise and harmonics). As I change frequencies above
86 Hz, I interpolate between wavetables with 1024 samples. For lower
frequencies I interpolate between a bright wavetable and a pure sawtooth phasor
that is not band limited. That way I can use the same oscillator as an LFO.
https://github.com/philburk/jsyn/blob/master/src/com/jsyn/engine/MultiTable.java#L167
Phil Burk
_______________________________________________
dupswapdrop: music-dsp mailing list
[email protected]
https://lists.columbia.edu/mailman/listinfo/music-dsp