Nick Collins' Website
Advanced Computer Music workshop materials
Shortcuts:
SuperCollider Revision and General Resources
Mappings and Audiovisuals
Audio Digital Signal Processing Essentials
Sample-level Sound Synthesis and Processing
Writing Plug-ins
Interactive Music Systems
Interfacing
Machine Listening
Music Information Retrieval
Music Modeling/Symbolic Music Analysis/Computational Musicology
SuperCollider 3 resource links
Helpful hints for this module on communicating between the language and server
Advice on using Aggregate Devices for Mac OS X 10.4 (especially MacIntel machines). No longer required for the more recent versions of SC post 3.3
Mappings between number ranges
Example of a complex number fractal map with pattern code
Example of a cellular automata in SuperCollider
Neural Net class and help file
1 dimensional SOM (Self Organising Map) class and help file
Example of live data: FaceOSC computer vision based face tracking, which can send OSC messages to other applications; example code for SuperCollider to receive these messages
simple Pen example in SuperCollider combining generative sound and visuals
OSC messaging between PD and SuperCollider
PD patch
SC patch
OSC messaging between SuperCollider and PD-GEM
PD-GEM patch
SC patch
OSC messaging between Processing and SuperCollider
You'll need the oscP5 library for Processing
Processing patch
SC patch
Quartz Composer comes with the Developer tools on OS X only:
Demo within SC
SLUGens- LTI
Mixing and enveloping examples; also see my SC tutorials and the SC help for more on envelopes
In SC itself you might want to explore these classes (and help files): Convolution, Convolution2, FOS, SOS, FFT. There is also a FilterTools Quark
Windowing functions for Fourier Transform
Online filter design
Java digital filter design applet
Another filter design widget example
Robert Bristow-Johnson's Cookbook formulae for audio EQ biquad filter coefficients. See also the musicdsp list archives for code examples
nonstandardSCdemoes.rtf
SLUGens in the sc3-plugins(various nonstandard UGens)
Gendy is in the general SC distribution
Starting templates for sample-level sound synthesis:
SuperCollider using Signal and SoundFile classes
Processing using Ess extension sound library
java using javasound
javascript using the Web Audio API (Chrome browser only at present)
ChucK examples of writing sound file and live generation sample by sample
Further signal generation examples
viznut-style C code one-liners in SuperCollider (see bibliography too)
Even more errant sound synthesis research: Various alternative generation algorithms for sound synthesis
sample by sample GENDYN in javascript Further javascript example using the Web Audio API (Chrome browser only at present)
List of some javascript libraries for sound. Or search for audiolib.js, audiolet.js, dsp.js
Building SC
Building SC plug-ins
ACMCdemo, my demo SuperCollider plug-in
SuperCollider UGen templates for Xcode by Daniel Jones
Further JavaSound examples
weakly~ Port to a Max/MSP external of the WeaklyNonlinear2 chaotic oscillator originally from the SuperCollider SLUGens pack (build of external for OS X/Max 5, and source code)
Faust functional language for DSP, online compiler with support for multiple plug-in types!
Vamp plug-ins format for Sonic Visualiser
iPhone audio coding
JUCE as wrapper framework (plugins extension project + VST host test)
iPlug universal VST/AU cross platform generation
MDA MDA VST and AU plug-ins open source
Sound Tools sndpeek realtime spectral waterfall plot, and LPC and phase vocoder live visualisers. Source code available even if executables may not work
MIDIFile class
Place to obtain some Type 1 MIDI files
MIDIFileAnalyse help file
MIDIFileAnalyse class file
OnlineMIDI help file
OnlineMIDI class file
Also see Wouter Snoei's SimpleMIDIFile class in his wslib (in the Quarks extensions)
Arduino boards and sensors will be distributed and explained in class. You will need the Arduino and/or SCPyduino quarks as instructed.
If you want to use Arduino with SuperCollider and set this up yourself, first download the Arduino software that lets you write programs to the microcontroller computer. Remember to beware of baud rates: make sure the baud rate you select in SuperCollider matches that in the Arduino program. Then there are three main choices:
1) SimpleMessageSystem (ignore Messenger) in Arduino software and Arduino quark in SuperCollider
2) The OldStandardFirmata code example (NOT StandardFirmata) in the Arduino software and the SCPyduino quark in SuperCollider
3) Use the SerialPort class in SuperCollider, and write your own communication to a program on the board that you also write yourself in C in the Arduino software. See Fredrik Olofsson's hints here.
SuperCollider and Wiring example (older, we now use the Arduinos not Wiring boards)
A list of machine listening plug-ins for SuperCollider to get you started
Machine listening demoes for SuperCollider to explore
Some further SC based examples:
Dan Stowell's research work (see also the MCLD UGens in sc3-plugins, as well as built-in UGens like Onsets and SpecPcile mentioned in the list above)
James Harkins' investigation of spectral comparison of event onsets
Charles Hutchins' exploration of time domain f0 tracking for tuba and voice
Computational Auditory Scene Analysis resources (mainly MATLAB): CASA book
Dan Ellis' Music Signal Processing practical tasks (including chord recognition and beat tracking practicals: Pd and MATLAB are the platforms used)
BeatRoot
MEPG-7
Michael Casey's MPEG-7 site
Concatenative synthesis:
You can investigate the Concat UGen in my Machine Listening plugins via sc-plugins; but also, try out:
Corpus-based Processing for SuperCollider (Tom Stoll) Beta software but perhaps worth investigation
Soundspotter by Michael Casey, Pd and Max/MSP externals, plus C++ source code
SCMIR SuperCollider Music Information Retrieval library
A list of machine learning resources for SuperCollider
MIR test data
Marsyas MIR framework in C++
Bregman MIR framework in python
Meapsoft
Tapestra
MIR web services:
Vienna University of Technology mir group
The Echo Nest web services for audio analysis and music data (MIT start-up company using Tristan Jehan's machine listening work)
Sonic Annotator Web Application run analyses on uploaded audio files
last.fm API
SoundCloud API
Music Ngram Viewer:hunt for melody or chord sequences
Many other interesting online music data companies have APIs for web services, including songkick, MusicBrainz and more...
kern scores symbolic music data source site
Lilypond Scoring language and typesetting application
superfomus: SuperCollider to lilypond scores (also see work by Josh Parmenter in quarks)
music21 Python language toolkit for symbolic music analysis