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

  • Common Lisp

  • Haskell

    • hsc3 is a haskell supercollider client

    • 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

  • Impromptu

  • Python

  • 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

  • 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

    • Overtone is a Clojure based musical generation and manipulation system for live-coding and more.

  • 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

  • Elixir

Editors

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