Thanks for sharing this, Orm. Is there no bibliography at all about this implementation?
Cheers, Dario
On 29 October 2017 at 05:21, Orm Finnendahl < orm.finnendahl@selma.hfmdk-frankfurt.de> wrote:
Hi,
concerning avoiding aliasing in the first place, here are abstractions for generating bandlimited versions of the most popular analog waveforms I developed for a seminar some time ago:
https://www.selma.hfmdk-frankfurt.de/selmafile/f/9eed9b01b9/
Open "bl-oscil-example.pd" to see how to use it. Note that the rect~ oscillator has an additional pulse-width input.
The patch uses wavetable lookup with 128 wavetables of an ideal bandlimited sawtooth with partials 1 through 127 for each wavetable respectively and the non-bandlimited phasor wavetable for the 128th. In the oscillator the wavetable is determined on each phasor wraparound based on frequency.
At a samplerate of 44100 Hz this gives no aliasing above 173.6 Hz which my ear considered good enough (for 173.6 Hz the aliasing happens at about -42 dB for the first aliased partial relative to the first partial, diminishing by 6 dB per Octave downwards). Increase the number of wavetables for better signal/aliasing ratio.
As this method gives ideal results and is as efficient as it can get it's strange I haven't found it on my web research of this topic, but maybe I've looked at the wrong places. In times when wavetable lookup synthesis has regained popularity in commercial soft-synths I could well imagine companies like NI or Ableton also use this or simlar methods under the hood of the oscils for their standard analogue waveforms.
-- Orm
Am Samstag, den 28. Oktober 2017 um 19:24:00 Uhr (-0200) schrieb Alexandre Torres Porres:
2017-10-28 18:30 GMT-02:00 cyrille henry ch@chnry.net: Its very different : a sawtooth have an infinite number of harmonics, but > not a signal distorted with tanh. And a band limited sawtooth is lot's > better (from sound and performance perspective) than an oversampled / > filtered phasor.
yeah, I know it's got infinite harmonics, and that a band-limited oscillator is better. But this is also because I'm using this to measure the efficiency of the anti-aliasing filter, how good it works and all
cheers
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/
listinfo/pd-list
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/ listinfo/pd-list