// I. SuperCollider. // The code lines contain instructions for sound synthesize and manipula te. // Open source software (TextEdit). // Programmation language object oriented (SmallTalk language). // II. Servers. // The internal server run in same process that the aplication (.scope). // The local server run in scsynth (.play). s = Server.local s.boot s.quit s = Server.internal s.boot s.quit // III. Unit Generators. // UGen's are objects that produce a signal. A patch is a connection of UGens. // 1. Audio rate: run in 44100 samples/second. // 2. Control rate: run in 44100 samples/second ÷ 60 = 735 samples/ second (modulators). SinOsc // .ar, .kr. // (freq, phase, mul, add). Pulse.ar // (freq, width, mul, add). LFTri // .ar, .kr. // (freq, mul, add). Saw.ar // (freq, mul, add). // // // // //
freq = 20-20000. default = 440. phase = 0-2pi. default = 0. width = (0, 1). default = 0.5. mul = 0-1. default = 1. add = whatever. default = 0.
// IV. Noises. WhiteNoise: // Ramdom signal that contain all freqcuencies. PinkNoise: // Ramdom signal that reduces its energy 3 dB per octave. BrownNoise:
// Ramdom signal that reduces its energy 6 dB per octave. // V. Additive synthesis. // Sum of two oscillators. // Sum of both amplitudes ⤠1. // VI. Filters. // System that discriminates a input signal to get output signal variati ons. HPF // high pass filter. // .ar, .kr. // (in, cutoff freq, mul, add). LPF // low pass filter. // .ar, .kr. // (in, cutoff freq, mul, add). BPF // band pass filter. // .ar, .kr. // (in, cutoff freq, rq, mul, add). // // // //
in = any audio signal. cutoff freq = 20-20000. mul = 0-1. default = 1. add = whatever. default = 0. // lower bound = cutoff freq - b
andwidth / 2. // upper bound = cutoff freq + b andwidth / 2. // bandwidth = upper bound - low er bound. // q = cutoff freq / bandwidth. // rq = bandwidth / cutoff freq. // VII. Mouse Control Classes. MouseX MouseY MouseButton // .kr. // (minval, maxval). // VIII. Envolvents. // How a sound that unfolds in time and amplitude. // Attack: time it takes for sound in reach its maximun amplitud e. // Decay: time it takes for sound in reach its stability.
// Sustain: time it takes for sound in maintain its stability. // Release: time it takes for sound in reach the 0 amplitude. EnvGen.kr // (env, gate, doneAction:2). // env = adsr, asr, cutoff, dads r, initClass, linen, new, newClear, perc, shapeNames, shapeNumber, sine, triangl e. // gate = 1, open; 0, close. // doneAction:2 eliminates the S ynth. .plot // For see the graphics. // IX. Channels. // Stereo audio, 2 channels. // With audio interfaces, more channels (4, 8). Out.ar // (channel, signal). // channel = 0, left; 1, right. // signal = any audio signal. Pan2.ar // (signal, position). // signal = whatever audio signal. // position = extrapolating beetwen: -1, left; a nd 1, right. // X. Language. .midicps // Convert: MIDI to Hertz. .cpsmidi // Convert: Hertz to MIDI. .midiratio // Convert: intervals to fractions (Forte method, pitch class se ts). // XI. Arrays. // Set of items ordered. [x, y, z] // XII. Variables. // virtual spaces of memory that save information.
( var a = b = a =
a, b; 1; 1; b
) ( var a, b; a = 1; b = 1; [a = b, "two vars"] ) ( var a = 1, b = 1; a = b ) // XIII. SynthDef. // Is a definition (template) of sound. SynthDef // (tag, {UGenGraphFunc}). // .send(s). // object style (var). // Synth // (tag, [\argument], target, addAction). // .set, .free. // // // //
tag = "anyname", \anyname. UGenGraphFunc = argument Synthvar. argument = any parameter. Synthvar = any variable synthesis.
// XIV. Node. // Is an object that provides the communication in the tree node, manage d for the synthesis server. // The tree defines the order of execution of the synths. // Node number = nodeID. // 1. groups. // 2. synths. // XIV. Fm. // Is a periodic modulation or frecuency. SinOsc.ar SinOsc // .ar, .kr. // (freq, phase, mul, add). // freq = any low freq. // phase = 0-2pi. default = 0. // mul = any high mul.
// add = any high add.