ofxPDSP - audio DSP and generative music addon


hello people! i’ve added a pdsp::DataOscillator class to ofxPDSP to set waveform safely in realtime from the update() thread (and smoothly morph them). Here is the included example you can play with (both with pc keyboard or midi if you decomment a #define) :


Hey, just wondering if ofxPDSP works with the oF master branch? Been trying to set it up with some other addons that require master, and can’t get any output. Would I have to change much in order to incorporate it?


at the moment i’m always working on the stable branch, i will consider making a branch synced with master from the end of the summer (but not right now, sorry)


really been loving this addon!

just a few questions,

when and where to use addModuleInput and addModuleOutput, I see some examples use them and some don’t

Another question, when patching a delay or a reverb, is it best to make them their own class? I made a synth class and whenever I add a delay or reverb to the final signal chain i get crazy feedback no matter what parameters of the reverb or delay I change.

thought I could do something like osc_amp >> filter >> amp >> reverb;
so reverb is at the end of the signal chain apart of the synth class.


reverb should be mixed at low level with the original signal, it’s better to make a separate class for it as you can send multiple signal to the same reverb and spare cpu cycles (and also you will have a better effect as many different audio sources will sound as in the same space).

If you really want to use it in the synth class ( for very specific purposes ) you should at least mix it with the dry signal:

osc_amp >> filter >> amp >> out;
                     amp * dB(-24.0f) >> reverb >> out;

you can also check out the repository of my classes, there are classes with already grouped ofParameters so you can easily put it in the gui, and there is also an example with a midi controlled synth put into the reverb ( there is also a reverb class with all the parameters already good for UIs ).

( just make your own copy/fork of the patches as i change them anytime I need it, breaking the compatibility with old projects, i always copy the one i use to the project when everything is done)

addModuleInput and addModuleOutput are used just when you are making your own modules extending pdsp::Patchable, sometimes in the examples i just made a class and some methods to return inputs / output to patch but maybe i should uniform everything as pdsp::Patchable


I’d like to keep a ofxPDSP changelog here, so here we go:

  • from now on, ofxSIMDFloats is not required anymore as it’s included it in the math sources for ofxPDSP, if something doesnt’ work anymore simply delete ofxSIMDFloats from the addons.make and delete any #include "ofxSIMDFloats.h" from your projects.