Friday, August 31, 2007

Week5

Creative Computing: Granular Synthesis (2)

Keywords of the Week:
granulation, granular synthesis, source sound, buffer, duration, amplitude, interpolation,
overlap, rate, pitch, envelope, tone, sound file, panning, spatialisation, 'hand coded',
customised.

Task of the Week:
CODE
Sound Examples:
1)Pure Tone granulation
2) Sine graulation inspired from Zannos method
3) Buffer granulation
4) Signal arithmetic and granulation
Any number of permutations can be applied to various oscillators for the desired result.
<< ((osc1 / osc2) + (osc / osc3) * osc4) *env ; << ((osc1 * osc2) - (osc * osc3) / osc4) *env ; << ((osc1 * osc3) / (osc * osc2) * osc4) *env ; Etc.. Here is a list of few Synthesis techniques that can be applied to the signal: Steps: Granular synthesis and the various parameters:

Grain size: Create an envelope - the envelope duration will then be the grain size
Grain amplitude: Change the maximum value of the envelope mentioned above
Grain amplitude dispersion: Add a random factor to the above amplitude
Pitch: Change the rate value of the PlayBuf
Pitch Dispersion: Add a random factor to the Pitch value
Density: Use some sort of signal (e.g. Pulse) to trigger the envelope - if you use Pulse, then a higher frequency will generate a higher density, a lower frequency a lower density.
Time Dispersion: Add a random factor to the frequency of your Pulse trigger signal
No. of Grains: Create/destroy more instances of the synth

Step 1: Creating an envelope
add the variable env

env = EnvGen.kr(Env.new([0,1,1,0], [1,1,1]), trigger, grainamplitude, 0, grainsize);

Work out trigger, grainamplitude and grainsize?

trigger = LFPulse.kr(density+timedispersion)
grainamplitude = Grain Amplitude + Grain Amplitude Dispersion
grainsize = Grain Size + random factor if wanted

Once this is done multiply the output of the synthdef by env.

References:
* Haines.Christian."Workshop-5-sem2 conducted on Grainular Synthesis.Programming with SuperCollider".23 August 2007.Electronic Music Unit.University of Adelaide, South Australia
* Granular Synthesis by Eric Kuehnl : http://music.calarts.edu/~eric/gs.html
viewed on 21.August.07
* "Tutorial 08 - Granular Synthesis". SuperCollider Tutorial, 2006, 2007, .
* "Granular Synthesis. A very simple Granular Synthesis case:", "First steps". McCartney ,
James et al 2007, SuperCollider Inbuilt Help, Source Forge, .

*Collins.Nick and Olofsson.Fredrick.Tutorials on SuperCollider.Chapter 7.2
* McCartney , James et al . 2007,SuperCollider Inbuilt Help.
* Source Forge, http://supercollider.sourceforge.net/

No comments: