Systems interfacing¶
There are various ways to use SC with other applications. By sending Open Sound Control OSC
network messages to the SC Server one can control sound processes from other clients.
To send osc messages from the shell (terminal) see sendOSC.
Clients Using SC Server¶
Scheme
rsc3 is an r6rs scheme supercollider client
Common Lisp
cl-collider is a Common Lisp supercollider client
Haskell
Vivid is a haskell supercollider client
TidalCycles is a pattern live coding language built on Haskell, controlling a backend written in SuperCollider
Smalltalk
A squeak OSC-Client by Marcus Gälli, which works with SC: OSC-Client
Perl
Alex McLean’s article “Hacking Perl in Nightclubs”
Impromptu
SCIMP, an SC Server library for Impromptu (Scheme) Impromptu Libraries
Python
FoxDot, “Live Coding with Python & SuperCollider”
SC 0.3.1, python client for SuperCollider
python-supercollider, a SuperCollider client for Python 3
Q
Albert Graef lets his Q functional programming language for multimedia applications talk specially to SC3 through OSC: http://q-lang.sourceforge.net
Pure
Pure is the successor to Q: https://agraef.github.io/pure-lang/ OSC is already implemented, but the SC3 interface needs to be ported from Q to Pure
Java
JCollider duplicates some of SCLang’s client side representation classes to simplify the building of Java based clients (project is beta state): http://www.sciss.de/jcollider
Processing
P5_SC is a Processing client for SC Synth. It replicates the main classes of SC-lang, e.g., Bus, Group, Buffer, Bus, etc
CommonMusic
See documentation: http://commonmusic.sourceforge.net/cm2/doc/dict/supercollider-topic.html
ML
smlsc3 is a Standard ML supercollider client
Scala
Scala provides type safety, and at the same time offers compactness that makes UGen graph creation look very close to their sclang equivalents http://github.com/Sciss/ScalaCollider
Clojure
Lua
Lua2SC is a Lua client with ide, debugging…
Ruby
Sonic Pi is a very popular live coding synth with SuperCollider as a server
JavaScript / TypeScript
supercollider.js is a full featured client for the server and the language
Elixir
ExSCSoundServer Elixir libary to interact with scsynth/supernova
Editors¶
scnvim NeoVim frontend for SuperCollider
scvim VIM plugin for SuperCollider
scel Emacs interface for SuperCollider
Supercollider Atom Super Collider IDE for Atom
Sublime Text Supercollider package for Sublime Text 2
supercollider-tmbundle TextMate
scate a Kate plugin
scfront a Tcl/Tk frontend
GUI¶
SwingOSC is an OpenSoundControl (OSC) server intended for scripting Java. It was written before SC had cross-platform unification of GUI, and is now no longer maintained.
Other Systems¶
faust a functional language for real-time audio processing, which can compile DSP expressions to C++ SuperCollider plugin code (as well as to other formats)
OpenObject a quark for easily controlling synths with external applications (like Max, Pure Data, Processing, or openFrameworks) using OSC
OctaveSC a class to interface with the free powerful math package GNU Octave (GNU clone of MATLAB)
SuperColliderAU: AudioUnits wrapper for scsynth, now part of SuperCollider
javaosc a library for talking the Open Sound Control (OSC) protocol in Java
communication from Cocoa with sc http://www.illposed.com/software/objcosc.html
a java based system for creation of spatialisation data: http://sourceforge.net/projects/meloncillo/
a java based sound editor using scsynth: http://www.sciss.de/eisenkraut
open sound control library for lisp cl-osc
Hardware Connections¶
Chimaera documentation: direct conection via UDP/TCP to SuperCollider server chimaera