Progress update on my Python live synthesiser! The web interface now sports a console, the DSL has been redesigned a little, new nodes have been added, the UI has been improved, and more! :D
To try it out, check out github.com/ThatOtherAndrew/Synchrotron :>
Here's some sample code you can use to try out a basic pulse-width modulation square wave synth example:
new 0.2 pwm_mod_freq;
new 0.24 scale_val;
new SineNode pwm_mod;
new 0.75 offset_val;
new MultiplyNode scale;
new 440 freq;
new AddNode offset;
new SquareNode square;
new PlaybackNode out;
link square.out -> out.left;
link square.out -> out.right;
link pwm_mod_freq.out -> pwm_mod.frequency;
link pwm_mod.out -> scale.a;
link scale_val.out -> scale.b;
link scale.out -> offset.a;
link offset_val.out -> offset.b;
link freq.out -> square.frequency;
link offset.out -> square.pwm;