2017-10-28 13:01 GMT-02:00 cyrille henry ch@chnry.net:
I don't understand. can you share your patch? thanks c
What don't you understand? Anyway, here's a patch. I was exaggerating, actually is not that 512 is still not good enough, it seems it is ok, but it's just an insane amount of oversampling to achieve a nice anti-aliasing filter, and it goes over 80% CPU load on a previous generation, top of the food chain, macbook pro. Here's a patch where you can test different oversampling factors. If you go to 64, for instance, seems still bad for what I hoped for.
Anyway, I usually go to 16x, which seems like a good compromise.
cheers
thanks, well, I don't understand why you send a patch regarding a phasor while we where speaking about distortion...
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.
When you say 512, are you talking about phasor or an tanh distortion?
cheers
Le 28/10/2017 à 18:04, Alexandre Torres Porres a écrit :
2017-10-28 13:01 GMT-02:00 cyrille henry <ch@chnry.net mailto:ch@chnry.net>:
I don't understand. can you share your patch? thanks c
What don't you understand? Anyway, here's a patch. I was exaggerating, actually is not that 512 is still not good enough, it seems it is ok, but it's just an insane amount of oversampling to achieve a nice anti-aliasing filter, and it goes over 80% CPU load on a previous generation, top of the food chain, macbook pro. Here's a patch where you can test different oversampling factors. If you go to 64, for instance, seems still bad for what I hoped for.
Anyway, I usually go to 16x, which seems like a good compromise.
cheers
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
2017-10-28 18:30 GMT-02:00 cyrille henry ch@chnry.net:
thanks, well, I don't understand why you send a patch regarding a phasor while we where speaking about distortion... (...)
When you say 512, are you talking about phasor or an tanh distortion?
well, yeah, it was a digression from the previous topic, that's why I changed the subject. This is not related to tanh~ at all... so I meant 512x oversampling to get rid of aliasing in phasor (actually sawtooth made from phasor) signals.
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
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
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