Supercollider Class

From Noisebridge
Revision as of 20:09, 4 February 2018 by SteeleNivenson (talk | contribs)
Jump to navigation Jump to search

Supercollider class at Noisebridge.

Learn how to write code that makes music. Supercollider is a software platform with a language, development environment and a DSP engine that generates sound from your computer. It models many modular synthesizer designs in code which run in real-time on any Mac, PC or Linux computer.

Build patches, run synths, control their sound in real-time with other synths, MIDI, your mouse, and any OSC device. Live code changes to your patches as they run. Learn how to build complex synthesizers that would cost thousands of dollars to build with hardware.

Supercollider was created in 1996 by James McCarthy. The language is an esoteric mix of Smalltalk and C. Code is interpreted in an IDE as you write.

Supercollider class is a 12 week class written by Nick Collins. Each week we will learn a different aspect of the platform. Each week has exercises where you compose unique sounds and realtime controllers.

Based on Nick Collins's course work.

The first SuperCollider class will begin on 2/7/2018 at 7PM in the Turing classroom. Attendees will be expected to have their own computer (Mac or PC or Linux), a sound card with outputs and inputs, speakers. Optionally, headphones would be helpful.

Week 1

1. Introduction and Overview

1.1 Obtaining SC3.html

1.2 Getting Started.html

1.3 Getting Around in SC3.html

Week 1 exercise: Explore SuperCollider!

Week 2

2. Sound Synthesis 1: Additive, Subtractive, Modulation

2.1 Subtractive and Additive Synthesis.html

2.2 Mul and add.html

2.3 Controlling Synths.html

2.4 Modulation Synthesis.html

2.5 More Synthesis Examples.html

Week 2 exercise: explore the materials thoroughly, looking up anything you don't understand; create additive, subtractive and modulation synthesis patches of your own

Week 3

3. Sequencing

3.1 Envelopes.html

3.2 SynthDefs.html

3.3 Sequencing.html

3.4 Server-side Sequencing and Triggers.html

3.5 Nested Scheduling.html

Week 3 exercise: Practice creating some SynthDefs (which should have a doneAction:2 in them), and make simple sequences where you schedule Synths over time in an entertaining way

Week 4

4. Interaction 1

4.1 Interaction 1.html

4.2 Graphical User Interfaces.html

4.3 Further GUI Example.html

Week 4 exercise: Mock up a simple prototype GUI that controls some simple sound synthesis. If you're stuck for ideas, make a subtractive synthesizer with GUI controls for the filter. Or convert any of your existing sound synthesis patches for GUI control

Week 5

5. Sound Synthesis 2: Sample-based, Granular

5.1 Buffers and Sound Files.html

5.2 Granular Synthesis.html

5.3 GUI+Loop Example.html

5.4 Granular Bonus Examples.html

Week 5 exercise: Explore processing sound files in SuperCollider; create a simple granular synthesizer with some GUI controls.

Week 6

6. Effects

6.1 Buses.html

6.2 Control Buses.html

6.3 Nodes.html

6.4 Effects 1.html

6.5 Effects 2.html

Week 6 exercise: Build an example patch with a global effects unit (such as a reverb or distortion). You should construct the effects unit using a separate Synth; this effect should be applied to any other Synths (which might use any of the SynthDefs you've built so far on the course). Execution order is critical here and you will need to understand 6.3 to achieve this.

Week 7

7. Interaction 2

7.1 Interaction 2.html

Week 7 exercise: Try out MIDI control of sound using MIDI keyboards, or audio input feature control. You might trigger new short-lived Synths based on input, or modulate parameters of an existing sustained Synth

Week 8

Week 9

Week 10

Week 11

Week 12

Extended Resources

Learning links of various quality and availability.