Module Home - - Assessment - - Reading - - Workshop - - Tutor Website - Study Direct site

Computer Music (G6002): Workshop Materials


Also available as a downloadable zip of RTF, HTML and text files:
sccourse.zip

Shortcuts:
1. Introduction and Overview
2. Sound Synthesis 1: Additive, Subtractive, Modulation
3. Sequencing
4. Interaction 1
5. Sound Synthesis 2: Sample-based, Granular
6. Effects
7. Interaction 2
8. Timing and Psychology of Rhythm
9. Algorithmic Composition
10. Open Sound Control, Server Messaging, Network Music
11. Sound Synthesis 3 - Physical Modelling
12. Sound Analysis
Extra exercises and SC technicalities: from arrays to classes

1. Introduction and Overview

1.1 Getting Started.scd

1.2 Getting Around in SC3.scd

1.3 Obtaining SC3.scd

Week 1 exercise: Explore SuperCollider!



2. Sound Synthesis 1: Additive, Subtractive, Modulation

2.1 Subtractive and Additive Synthesis.scd

2.2 Mul and add.scd

2.3 Controlling Synths.scd

2.4 Modulation Synthesis.scd

2.5 More Synthesis Examples.scd

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



3. Sequencing

3.1 Envelopes.scd

3.2 SynthDefs.scd

3.3 Sequencing.scd

3.4 Server-side Sequencing and Triggers.scd

3.5 Nested Scheduling.scd



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




4. Interaction 1

4.1 Interaction 1.scd

4.2 Graphical User Interfaces.scd

4.3 Further GUI Example.scd

GUI WarmUp and Revision Exercise.scd

Week 4 exercise: If you haven't already, look at task 1 for the course. Mock up a simple prototype GUI that can be a starting point, and connects to control 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



5. Sound Synthesis 2: Sample-based, Granular

5.1 Buffers and Sound Files.scd

5.2 Granular Synthesis.scd

5.3 GUI+Loop Example.scd

5.4 Granular Bonus Examples.scd

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




6. Effects

6.1 Buses.scd

6.2 Control Buses.scd

6.3 Nodes.scd

6.4 Effects 1.scd

6.5 Effects 2.scd

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.




7. Interaction 2

7.1 Interaction 2.scd

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




8. Timing and Psychology of Rhythm

8.1 Precise Timing in SC.scd

8.2 Some Time and Rhythm Demoes.scd

Week 8 exercise: explore, and vary, the examples of psychology of rhythm. Can you also implement any of the more advanced compositional rhythmic structures (such as multiple simultanous tempi, or metric modulation) discussed in the lecture?




9. Algorithmic Composition

9.0 tuning systems.scd

9.2 Patterns.scd

9.2a PatternPractice.scd

9.1 Algorithmic Strategies.scd

9.2 Patterns.scd

9.3 Probability Distributions (optional).scd

Week 9 exercise: If you haven't already, look at task 2 for the course. Plan an algorithmic composition, deciding upon style, and algorithmic structuring. What aspects of the work could change with each run of the program?


10. Network Music

10.1 Open Sound Control.scd

10.2 Messaging Style.scd

10.3 Network Music Lab.scd

10.4 Mouse To Lang.scd

Week 10 exercise: You should review and consolidate all the work we've covered so far. We'll also try out networking in the lab class.




11. Sound Synthesis 3: Physical Modelling

11.1 Physical Modelling.scd

11.2 Analogue Modelling.scd

Week 11 exercise: Explore physical modelling synthesis, creating patches of your own especially using the source (excitation signal) + filter (body resonator) model




12. Sound Analysis

12.1 FFT.scd

12.2 Singing Voice Synthesis.scd

Week 12 exercise: Try out the FFT based UGens to do spectral processing




Extra exercises and SC technicalities: from arrays to classes

SC Programming Exercises.scd

Patterns Exercises.scd


01 Programming.scd

02 Arrays.scd

03 Plotting.scd

04 Global Variables and Environments.scd

05 Clocks and Scheduling.scd

06 Routines and Tasks.scd

07 Dealing with Large Projects.scd

08 Writing Classes.scd
You will need these two class files:
NastySynth.sc
SuperMario.sc


09 Programming (advanced).scd

10 Extending SuperCollider.scd

Classes exercise: Convert one of your existing programs into a class and client code; how does this neaten and clarify your work? Consider how to use classes to tidy up your portofolio- is there any reusable code you can factor into classes? After you've done this, explore third party libraries galore!

Some links to extensions:
SourceForge sc3-plugins project (including many third party library projects)
The Swiki open resource site has links to many SC extensions