Data-flow programming for SuperCollider?
Proof-of-concept working for wiring up Synth's.
Note: Only tested on GNU/Linux. Should work fine on other platforms with minor adjustments in install.
git clone https://github.com/jonnor/sndflo.git cd sndflo # Install as SuperCollider extension, ref http://doc.sccode.org/Guides/UsingExtensions.html # On Linux mkdir -p ~/.local/share/SuperCollider/Extensions || true ln -s `pwd` ~/.local/share/SuperCollider/Extensions/sndflo # On Mac OSX mkdir -p "$HOME/Library/Application Support/SuperCollider/Extensions" || true ln -s `pwd` "$HOME/Library/Application Support/SuperCollider/Extensions/sndflo" npm install -g node-gyp npm install
# For Mac OSX only, specify where sclang is export PATH=$PATH:/Applications/SuperCollider/SuperCollider.app/Contents/Resources/ node sndflo.js --verbose --user MY_FLOWHUB_UUID
Will start up SuperCollider, loading the sndflo runtime and FBP protocol bridge. On success should output something like
Listening at WebSocket port 3569 OSC send/receive ports: 57120 57122 Registered with Flowhub, should be accessible in UI
Go to http://app.flowhub.io, refresh the runtime list. You should see our sndflo runtime listed, be able to create projects for 'sndflo' and connect.
Note: on GNU/Linux sclang might fail with a segfault if X11 is not available.
You can use
xvfb-run to work around this.
- Program audio pipelines visually, by Synth's wiring together with Busses
- Program synths visually, by creating SynthDefs by combining UGens
- Do not replace sclang, integrate with it
- Allow to use SynthDefs created in sclang in visual pipelines
- Allow to drive visually created Synth pipelines using sclang Events/Patterns
- Seamless integration with other FBP
- MicroFlo for communicating with microcontrollers (sensing/acting)
- NoFlo for general-purpose use, and generating composition/scores
- Combined audio processing with noflo-webaudio
- Program scores visually, using Streams and Patterns
- Generative & algorithmic composed music
- Reactive and interactive art installations
- Audio effect pipelines, processing sound inputs
- Audio and music analysis, feature extraction