The Superconducting Super Collider (SSC) (also nicknamed the Desertron) was a particle accelerator complex under construction in the vicinity of Waxahachie, Texas, that was set to be the world's largest and most energetic, surpassing the current record held by the Large Hadron Collider. The Help system that comes bundled with SuperCollider includes hundreds of documents, covering all the classes plus some useful overviews and tutorial material. You can browse the Help documentation online or download it as a single PDF. At Supercollider, we smash things together to make new, heretofore unknown things. Tiny budgets and big dreams. Smart ideas and weird people. Weird ideas and smart people. SuperCollider can be used on embedded platforms, including Raspberry Pi and Beagle Bone Black. See the project READMEs for more information.
This tutorial provides a very basic introduction to generating sound in SuperCollider. SuperCollider is an open source language and environment for sound synthesis. In this tutorial, you will learn how to install SuperCollider, boot the sound synthesis server, execute lines of code, and stop running code. By the end of this tutorial you'll have your very own 440Hz sine tone!
For more information about SuperCollider, please visit the SuperCollider website.
In order to successfully use SuperCollider, you're going to need to get SuperCollider! SuperCollider is available on most operating systems including Mac (intel and PPC) and Windows, as well for a few distributions of Linux. You can download Supercollider HERE.
Once you have successfully downloaded SuperCollider, go ahead and navigate to wherever it is you have installed it (if you are on a Mac, the Applications Folder, in a Folder named SuperCollider). To open, click the SuperCollider icon.
SuperCollider's workspace consists of three major parts: the code editor, help browser, and post window. The code editor is where you will type new lines of code and execute them. The help browser is a useful resource for finding out more about various parts of syntax and functions that are built into SuperCollider. The post window is where the result of whatever you execute is printed, and is useful for debugging and making sure everything is working as it should.
And there you have it! SuperCollider!
In order to execute sound synthesis code in SuperCollider (and to hear sound), you must boot the server. As explained in the intro, SuperCollider is an object-oriented language which functions as a network client to a realtime sound synthesis server.
The default server can booted in two ways, through an executable line of code or through a key command. For the sake of working across different operating systems, I will demonstrate the code version of starting the server.
This will be your first line of code in SuperCollider!
Once you've typed that code into the code editor section, you will need to execute it. To execute your first line of code, click just after the semicolon. Once the line is selected press COMMAND+RETURN (if using a Mac) or CTRL+ENTER if using Windows or Linux.
If all went according to plan, something akin to the following (your I/O devices may differ) should have printed in the post window:
localhost Number of Devices: 2 0 : 'Built-in Microph' 1 : 'Built-in Output'
'Built-in Microph' Input Device Streams: 1 0 channels 2
'Built-in Output' Output Device Streams: 1 0 channels 2 SC_AudioDriver: sample rate = 44100.000000, driver's block size = 512
SuperCollider 3 server ready. Receiving notification messages from server localhost Shared memory server interface initialized
Once your server is booted, you're ready to code your first oscillator!
Now that the synthesis server is running, you can finally code your first sine oscillator! Your second line of SuperCollider code will be just as exciting as your first!
But what does it mean!?
Let's break it down part by part:
Okay! Now you're almost ready! Let's go on...
Now it's time to make some noise! But before you start your fancy new oscillator oscillating, I am going to tell you how to stop it (this was a lesson hard won for me in my infinite stubbornness). If you are using a Mac, to stop any signal in SuperCollider at any time, click within the SuperCollider window and press COMMAND+. (period). If you are using a PC, press CTRL+. (period).
I tell you this ahead of time because the first time I made sound in SuperCollider I spent 5 minutes listening to insanely high frequency tones while I frantically googled how to stop them.
Okay! Let's execute that code! As you may remember from when you booted the server, you have to select your code to execute it. Since this code is only one line, you can simply click on the same line anywhere after the semicolon, or doubleclick to highlight your code.
Now that you have your code selected, Mac users, press COMMAND+RETURN, Windows users, press CTRL+ENTER.
You should hear a nice 440Hz tone! Hooray! Your first oscillator!
Now you've done it! You've made your first Oscillator! So what next? Well, there's a lot you can do with just the SinOsc UGen in SuperCollider. For instance, you could make multiple oscillators at different frequencies (perhaps harmonically related). You can also shift the phase of two Oscillators at the same or harmonically related frequencies (try setting the phase to 1, see what happens in either case).
You can also save your awesome oscillator so you can play with it again later! Click under File and select Save or Save As. Choose where to save your file. I recommend saving your file as a .scd file.
That's it! Stay tuned for more.
CAUTION: macOS system volume doesn’t effectively limit audio applications’ maximum volume. Extra care has to be put in working on this platform, especially with headphones, because programs can produce unexpectedly loud sounds regardless of system volume settings, potentially causing ear damage. As a safety measure, we highly recommend to install the SafetyNet quark. See Using Quarks for Quarks installation instruction.
Builds with gcc >= 4.9
Official Linux Packages
Community packages and repositories
These are the latest builds of the development branch.
Supports Windows 7, 8, 10
These are the latest builds of the development branch.
*) Builds marked 'sn' include the supernova server.
SuperCollider can be used on embedded platforms, including Raspberry Pi and Beagle Bone Black. See the projectREADMEs for more information.
SuperCollider Releases (including Stable Releases, Betas, and Release Candidates)
Build instructions are included in the source code, and can be found in the README corresponding to your system. These instructions, as well as some platform specific build guides, can also be found on the Building from source page.
The sc3-plugins are extension plugins for the SuperCollider audio synthesis server. These third-party plugins provide additional synthesis, analysis, and other capabilities for the sound server.
Quarks are packages containing classes, extension methods, documentation and UGens. The integrated Quarks package system is used to download and manage these packages on your system.