[sharing] Integrated Wavetable Synthesis (Geiger)


    Dec 26 2018 | 7:51 pm
    I recently managed to adapt to gen the antialiasing scheme for wavetables proposed by Geiger. I thought I would share it. Basically the process consists in 3 steps : - Wavetable generation - Non-realtime integration of wavetable - Resampling and realtime differentiation of wavetable lookup
    The method has been further improved (Mutable Plaits uses 1 integration stage and a linear interpolation for its wavetable engine) to add integration stages + interpolation in order to reduce aliasing even more. Contrary to BLIT, this method reduce the aliasing but does not make it disappear altogether. However, you'll judge the results compared to no integration and adding a small factor of oversampling will make it an efficient combo I think.
    Here's the patch!

    • Dec 27 2018 | 8:31 pm
      Thanks! :)
    • Dec 29 2018 | 3:39 pm
      I'd like to hear the sound, but there's a "empty" gen here ... ...
    • Dec 30 2018 | 11:37 pm
      Oh yeah I'm using the event version of the gen~ object but it's just creating a bipolar sawtooth. I've replaced it with a max expr object in the patch below.