What is SuperCollider?
Updated
SuperCollider is a free, open-source platform for audio synthesis and algorithmic composition, used by musicians, artists, and researchers working with sound. It runs on Windows, macOS, and Linux, and is built around three components: scsynth (a real-time audio engine that runs as a server), sclang (an interpreted programming language that acts as a client to that server), and scide (an editor for sclang with an integrated help system). If you want to generate, process, or algorithmically control sound through code rather than a graphical interface, it is built for exactly that.
How it is structured
The client/server split is the defining design decision. Because sclang talks to scsynth over a server interface, multiple clients can connect and control the same audio server at once. sclang is the native language and client, but there are also client implementations in other languages, including Python, JavaScript, Haskell, and Scala.
SuperCollider also ships with supernova, an alternative implementation of scsynth that adds multi-threading support.
| Component | Role |
|---|---|
| scsynth | Real-time audio engine (server) |
| sclang | Interpreted language and client to the server |
| scide | Editor for sclang with integrated help |
| supernova | Alternative scsynth implementation with multi-threading |
Who it is for
The stated audience is musicians, artists, and researchers working with sound. In practice that covers:
- Composers who want to define sound and musical structure in code
- Artists building sound installations or generative audio work
- Researchers and developers who need a programmable audio engine they can drive from a script or another language
If you prefer patching or timeline-based DAWs and do not want to write code, this is a different kind of tool. If you are comfortable with programming concepts, the client/server model and the ability to connect non-sclang clients are the main advantages.
A first look at the code
The documentation includes short examples. This one is a simple FM synthesis voice:
{ SinOsc.ar(SinOsc.kr([1, 3]).exprange(100, 2e3), 0, 0.2) }.play
A longer example, "Drummer" by Thor Magnusson (2006), builds a snare, bass drum, and hi-hat from noise and oscillators, with a comment noting that replacing Impulse with Dust produces a "drunk drummer." More user examples are collected on sccode.org, and the sc-140 album is distributed with code examples.
Versions and downloads
The current version listed is 3.14.1:
- macOS — 3.14.1 universal binary, macOS 11+
- Linux — 3.14.1 source tarball
- Windows — 3.14.1, x64
Other operating systems and versions are available on the Downloads page.
History and licensing
SuperCollider was developed by James McCartney and originally released in 1996. In 2002 it was released as free software under the GNU General Public License. Since then it has been maintained by an active community.
Where to get help
The project points to a communities site for an incomplete list of places to join. A common starting point is the forum at scsynth.org. There is also a Code of Conduct that applies to the community.