Hello there
I have been digging deep into the rabbit hole of anti-aliasing lately and have succeeded to finish an oscillator object for my Teensy synth, which I want to share with you.
Since there are not many poly-BLEP implementations for Teensy, this object could be helpful for the ones of you which are building software synths.
The object consists of three individual oscillators. All of them have bandlimited variable slope triangle(can also be a sawtooth) and bandlimited pulse wave, which can be frequency modulated, as well as pulse-width modulated. Oscillator 2 and 3 also have a slave-mode, which provides a sawtooth synced up to the frequency of oscillator 1 (the hard sync is also bandlimited).
The object uses about 4 per cent of CPU on the Teensy 4, maybe I will optimise it a bit in the future, but probably not.
You can access the code here at my gitlab: https://gitlab.com/flojawi/teensy-polyblep-oscillator
Most of the functions are self-explanatory parameter setters, the readme and header file contain additional information.
The Arduino sketch in the github repo is an already-build "demo" which sounds a bit over the top but you can tweak it to your like liking ^^
Greetings,
flo
I have been digging deep into the rabbit hole of anti-aliasing lately and have succeeded to finish an oscillator object for my Teensy synth, which I want to share with you.
Since there are not many poly-BLEP implementations for Teensy, this object could be helpful for the ones of you which are building software synths.
The object consists of three individual oscillators. All of them have bandlimited variable slope triangle(can also be a sawtooth) and bandlimited pulse wave, which can be frequency modulated, as well as pulse-width modulated. Oscillator 2 and 3 also have a slave-mode, which provides a sawtooth synced up to the frequency of oscillator 1 (the hard sync is also bandlimited).
The object uses about 4 per cent of CPU on the Teensy 4, maybe I will optimise it a bit in the future, but probably not.
You can access the code here at my gitlab: https://gitlab.com/flojawi/teensy-polyblep-oscillator
Most of the functions are self-explanatory parameter setters, the readme and header file contain additional information.
The Arduino sketch in the github repo is an already-build "demo" which sounds a bit over the top but you can tweak it to your like liking ^^
Greetings,
flo