iieiwrmeieweeiimeemmwreiweremweireeemeimwieewwrwweereireeiimeewmiwwwemwiewimeeeremeiewmemweewieewerwemwiimiewmeiwireiiwrrewmwewree
ewreirrmewwiemirrirwiermiemerweeirwiimweeeeiirerwrwiiwewemeirimemmeeimiiwwrmimiwweiwwmrmiriweeeiremriiemeweireerweeirmwewememriiew
eieewmwmwmrereeiwireeeewermeeereriirriwmemermmmimewmeerwemieieremrrewmemmmmmeirmrmriemmrmweimwrrimeemermiimwwiweeemereieemeeeeweww
eiwereiirmieerwerieeieeereeieweeiieweiwrirmrewieemewiiemeiewmemmewrmreewemmeieiwimwiieieiireeemrmeewmmmmrermewiriiwireereemeirerem
mwrmeeemeeieeieereimmrweweeweeireweeweeieiiieememmwerrrrewewremreeemeeewimwwrewrmrrreeiwmrwewrrwmireemiwwieimieiweeewmmrmemmerieee
emiweiemewrmirerereeerwrmereemeweeiirewmrwwweeewwememrewmwewrmewmwrewemeeiirewwreeeeiweeeiirrimmeimrmrieieeerewrmwewemeerwewwmrwie
iriieweemwwmrwweeeeriirwerirmwiieiieeeerrerwmrmeeerireeweeeemmwmiiweeiewreweiewwiewwwwermrwemwiewwmrrwiiriereereimwieerrermeemerwr
rmimmrreeieerwmirwreiweewermririwmeemiewrieewrmemmmrrweeeieimmwriieeewiemewmemeereeewmwwmweemimewrrewrrermrmeeririiiweiiwwwimeerme
rmemmrweriiwiemeewiierimweierwremrreeweemeireerrrmwewiwwiiiwrwweewreeeirweemwewermeemiieeeiiereriwrererrwrmewiwiwwmeirewrieiiwrrrm
wmeweemireemieeeriererrmemeweewerewerrerwewirremereieririeiimrwireemeweeewirirrwirrmeeeewewriwmrweerremewmwmerrererreeemeriwerewee
erimeimremreierwrwemeeeeemeewwmrwerremeirrrmwewimrrieirewwiewwreeerierwewwmweeiwemrmewemiiewweewrweerremwerewieeweiwweiwwmwwmiieri
eeerrriwmmeweeewrerwrreeeeewemeiiermmeewirmiiremmieeeweiwiirwmeieemwemewmmmiemwiwwieemewerrememewmewieeiimmemrrwereierwieewerirwrr
mmeemerwermerieemiemewrireeeeiwieewrimeiwmiwrerwwrmreeerewreirrwwmieiewemrremmerrwweemiweweiwmmwmmweiirrieerimewmwwremwriweewimeme
rmwiiimeiirwriewmrweeewirwimiremeewrmemmmrrmeieeewwriweeriwrwreimirwewmmmieerewwewwwememimeieeeeewmrreeemmemeeewimeeremeeerriweemi
reewmeeewmiiweimermeeemeeewiwmewemeeweerrwememiweemrwmmiremirirmrerrweemermmewiwweeirmrwmewrmwweewiremimreewiwmeeiiriiwiiirrewmeiw
iereermmeimrwirreirrewerwrirrwemiemrieermwmimeiwwrrreemmermwiewwmiweewemeeewmiweeeriwwrewrweweremrreireiemieimweiieimeieiiemmiemmm
weemwewerrmereirwewiremimiimweeemmwieweieeerimeeweiewrmiwiiwmiemmrwemewemieirewmwieimimeemeeiiemrwrrememmemieiieiiwremmeeeemrewree
emerreiweierrrrirrrwemrmmweeremeeieewrmieeriireiwrrmeemieriereeirimweerwmiiieeimmmrwwewereerrmerreeeiwweirirmiwmeirmrwwmreewieeiie
emeeeimieweiwiiiwemeiiweirmmremwmwmieimmeewwwmerwermimeieieiiwimiewrremrmwewwmeemwermemrrereiemrwrmmimiimeimiieimireweeeirrewewwww
reiereieweerimriieeeeriereimrerweiwiiwirirmwweeiiwremrmriereewiieiererimmweeimrrmmmmmewmrmeeweemwerieiiewimrerrwwwmwmermrwerewrrir
wmmerwwiewriweierirrermemeireeerieememriiewrmmiemmwiweeieeewmrwmiiiiieimrmermirweeweiweeiiiemwwrmirrwemeewmeiemiimerieieiewmermrie
meiireemeemmiieiereemeeeiiiewrrmweewwremmeemirmewweerwwmmmeeeiiieerrmrwereweiiemewirremiemewewimmwrewiiewiriwiririwewrriwemeiewrii
eirrrmrwrrwrieiwriimiememeiiewweeiemrwewewirriiwmwwmimereerieewwrrmmrrmemereieeewimrreeiiwweeiwwweiiemrwimreieiimiwweremeeweemriwr
erriremerwwmremewriweemweerrweemeiwmimerieweiemmrrrwrmeirmrmewmwweeimrwmewwwrmemerimreerrewmrrewrieeemmwemwrwmeermwwemreeeewweweei
ireeeeeiirmeiireemmremrerirwererieewiwerimmeieerermmmiimeeieeiwmiimrermrewemmremimiwireeeremrereiemmemewrrereerewwrewimemreewmirir
rmeeimmmieeewiiimmeeewrwerewreeimeeweeiwwemimrwmwriwreiimeiieeeeewewewimrmiwrieemeeirweemieeimmmrmreereewmmmeirmiemwrrwriwmeieimwr
rwrimwrwemimimwweewiimremiweereeeeririeemeereeerweirweremrreeiwwmmieeewrwriemeimewreeierieermreieeirmmwwwweiwwieemmimrermreeeeeeri
iewmmeereweiiierieriirmwmemreiremiereemwimmwwmeemreiirreereemmreeimeiwwwrewriirewweewmmrwereemerieemiewiiirrremmerwrewmeririrweeiw
eiwiremwrireieemiieemerewrrwiieemerrmmemeiwwerewiemweewiemmeiemrwwirermrrewmeirmiieeeeeeewemeeeeiiimreeiiiwwewirrreeewriwreiimeiee
miermerwmeewrmeirwmemiweewwwmemwieeeeemeiieeeiiwrmwieewmiewwwewewmreerewrerweeewwmmermmwremwriemeeereerremmwierwiweeemwwmweirrriwe
eememewimrriererwrerwemweiemeierireeememewewieiirmwrwwerimwimiemiemimmmieweewwiierereemiiiwmwwrrwwemrwiiewereeimewrwrreieiwimwmrmr
wmmmeirrrirerwiimweewrieweiieimwiwiweiwiirwemeeererewrreiemwwiwrermmiwieirirrmeeiimriwewrrmrreeereeeeewmrwimrwrrmiewemwrwimreemwwi
eeeerrerwrierriermeeerwermmeeiwimmiereerwewimwewieremwewreimeeiwireriireemiemiwerweriewireeeemmererwmrmmreeererweemmerwrmirrmeeeee
meewreiirwrmmmwwemiimreeeiieweeeewiieeeermremewmermweerrermwwmemeerireiimwwiwewermeermmrreermimiiermeewereeeewmrwwrwmmerwwrimeeeii
rmiieeewwirimemmwermimeremrmeimmwiiewmmerrrieiiemwemwmmmewrmmeemreeewemewmewieeemieirwmmermeemreemieweeeiieweirremeieeeeemieiiieew
eemwrermeeeeeeeeemrrmieeeemwiewiieerrreiewmmeiwiwiirirmewewrwwrimeiermiwmrriweiiwweweewmwmmewwmrieieewwremiiiimririiiwmimewwmeieer
irrememieemrrmemrweerimmeimeeiwirimeeweweeewreeiermewiweweieieirrwwwrmereeiwermeeeirmieeeweiiewwwiereremeemmrmmwmmwwiiwiweieereimr
wwmremiiwrreeirrieewerweimweremeweemmmieriwemeemiwerirmeeeimerewmrrereeweiewermrimiwmwremireimriimiweewmmweeremewirrmiwwemmewmweee
ieremmmwrrmreereiweermewreiriewirerimrirerreemmwmeieriieeeemiirireemeiiewrmeermwmremmrwwmwmwewreirierrmewmwmewmmwwwemimrmmrmeewrmr
ewrrmriewreemmmmewwiewmewiiimrreeimeeieeewmeeweweiiwimiewrwriwwreremewwewmweeiemmrieiwermimmewireeweiwrirerewemeeieeewmeweeeiemmir
rremewemwwimiiweeiemerwiweiwreeeieerewreremweewieweermmrieermrimmermmeieirerririeeweireemeirwiiemwmiwrwwewrewrmeeeeemmmwremeeereem

2.9.08

THESE GUYS ARE FROM ENGLAND AND WHO GIVES A SHIT

.forum - week five.



Negativland - crude and slightly amusing, I must admit... I can't imagine the hysteria which lyrics like "Christianity is stupid / Communism is Good" must have caused (in the eighties) without grinning like an idiot. In fact Negativland used the track to create hoax - that they had been banned playing in the United States - and the news media ate it all up. Anyway, I found this interesting interview with Mark Hosler of Negativland, it provides an interesting insight into their work:



.sources.

Whittington, Stephen 28.08.08 "Negativland," Forum of EMU, Adelaide University.


Em oceans

.forum - week four.

A recent and growing interest in ‘mash-up art’ and ‘culture jamming’ has lead me to taking a slightly different approach for the Nine Indian Emotions composition exercise. Composing music using fragments of other artist's work is something that is faced with unfortunate controversy. After being rigorously schooled in the laws of copyright at university, I was again reminded of the problems mashup artists faced when I legally downloaded Girl Talk’s album Feed the Animals from illegal-art.net. He’s employed the same release model as Radiohead - pay what you want. After I selected to pay $0 a curious survey question came on screen:



Well I do value music made from sampling – so I’ve decided to sample the following tracks for my composition exercise. I have not used any lyrical sampling.

hasya (happiness, joy, humour)

MDSLKTR - Em oceans, Happy Birthday

adbhuta (wonder, reverence)

Phillip Glass – Vessels, Koyaanisqatsi

veera (courage, heroism)

Meshuggah – In Death Is Death, Catch 33

karuna (compassion, pathos, love)

The Ting Tings - Great DJ, We Started Nothing

krodha, rudra (anger, fury)

MDSLKTR: Em oceans, Happy Birthday

bhibatsa (disgust, loathing)

Meshuggah – In Death Is Death, Catch 33

bhayanaka, bhaya (fear, terror)

MDSLKTR - Em oceans, Happy Birthday

shoka (sorrow)

NIN – The Downward Spiral, The Downward Spiral

shanta (serenity, peace)

MDSLKTR: Em oceans, Happy Birthday

.sources.

Whittington, Stephen 21.08.08 “The 9 Classical Indian Emotions,” Forum of EMU, Adelaide University.


27.8.08

.cc - week four.

This week I took a look at the BBCut Library created for SuperCollider by Nick Collins, and there is plenty of cool stuff to find here. Unfortunately I am still spending a lot of time trying to get UI elements like sliders and button connected to audio synthesis - but now am getting somewhere. In the 'cutters.zip' link below I have included the SC code and a drum beat sample taken from Led Zepplin's "When The Leavy Breaks" (I took from Beastie Boy's "Rhymin' and Stealin'" though).




cutters.zip (872 kB)
| wk4example.mp3 (764 kB)


.sources.

Haines, Christian 21.08.08, “Splice and Dice.” Lecture of EMU, Adelaide University.


21.8.08

First-Years: better than China at the Olympics

.forum - week three.



I have decided in the spirit of democratic unfairness to review only some of the presentations made in Music Technology Forum.

Jacob Simionato's piece which I later found out was called "I Say Concrete Without a French Accent?" was very impressive. I wonder why there is a question-mark in the title?

Alex Bishop's recording of the band Behind These Walls was smartly put together.

Joshua Thompson's part in making the animation "Toothbrush Moustache" was quite fantastic, the sound design/music was exceptionally chosen. Surely it could not be that difficult being a Moustache though.

The quality of material offered all presentations was very high, I feel that there is a solid group among the first-year students.

.sources.

Whittington, Stephen 14.08.08 “1st Year Presentations.” Forum of EMU, Adelaide University.


Grain Synth

.cc - week three.

I struggled with this... it's coming.

.sources.

Haines, Christian 14.08.08, “Granular Synthesis (1),” Lecture of EMU, Adelaide University.


15.8.08

Simple SuperCollider GUI

.cc - week two.

Unfortunately I missed the class where GUI's were linked to Synths - here's my attempt nonetheless:



wk2.mp3 (282 kB)
| wk2UI(2).rtf

(
SynthDef("fmStyle", {

// Arguments
arg cFreq = 440, // Carrier Frequency
cAmp = 0.1, // Carrier Amplitude
mFreq = 440, // Modulator Frequency
mAmp = 0.1; // Modulator Amplitude

// Variables
var car, // Oscillator
mod, // Modulator
env; // Envelope

// Unit generators
mod = SinOsc.ar(
freq: mFreq,
mul: mAmp
);
car = SinOsc.ar(
freq: cFreq + mod,
mul: cAmp
);

// Output
Out.ar(
bus: [0,1],
channelsArray: car
);
}).load(s);
)

(
~g = Synth("fmStyle");
)

(
// Variables
var window, sliderData, flowLayout, line, titleBox, colourMain = Color(0.0,0.714,0.96);

// Build Slider Data
sliderData = [
// Label Min Max InitMin Param
["Carrier Freq", [10.0, 5000.0], 200.0, \cFreq],
["Carrier Amp", [0.0, 1.0], 0.1, \cAmp],
["Mod Freq", [0.1, 200.0], 0.1, \mFreq],
["Mod Amp", [0.1, 100.0], 0.1, \mAmp]
];

// Window Setup
window = GUI.window.new(
name: "Simple Controller", //Name
bounds: Rect(20, 400, 420, 200)
).front;

flowLayout = FlowLayout(window.view.bounds);
flowLayout.gap_(Point(0, 0)); //Dave's gap code

window.view.background = colourMain; //BG Colours

window.view.decorator = flowLayout;

//Enter the interface title:
titleBox = SCStaticText(
parent: window,
bounds: Rect(20, 100, 410, 65)
);
titleBox.stringColor_(Color.white);
titleBox.background_(colourMain);
titleBox.string_("1234567890qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM".scramble);
titleBox.font_(Font("Arial Black", 35));

//Make a line:
line = SCStaticText(
parent: window,
bounds: Rect(2,2,440,2)
);
line.background_(colourMain);

// Build Control consisting of Label, Min NumBox, Range Slider, Max NumBox,
sliderData.do({

// Arguments
arg val, idx;

// Variables
var guiEZ, specGUI;

// Build Slider
guiEZ = EZSlider(
window, // window
400 @ 24, // dimensions
val[0], // label
ControlSpec(val[1][0], val[1][1], \lin), // control spec
{|ez| ~g.set(val[3], ez.value);}, // action
val[2] // initial Value
);
});
)


Thanks Dave.

.sources.

Dowling, Dave 11.08.08, " Creative Computing IIIB – Week 2 – Semester 2, 2008: “Graphical User Interfaces (2),” http://notesdontmatter.blogspot.com/


6.8.08

Listening to music while doing something else... like err breathing?

.forum - week one.

It's true that people listen to music while they play video games and ride the bus and cook dinner for their children. But should we really be that concerned?

I remember one day in high-school my science teacher encouraged students to never listen to music while doing homework. He described the way that we (humans) can only focus our brains toward a certain amount at any time, and any amount focussed toward music in the background was a waste. A wasted portion of our attention span, or "chunk" of our brain - that could be focussed on something else, like chlorophyll I guess. This is an interesting point of contention because I do not believe that the answer that as "black & white," that is to say, while this may be true for some it may not for others. Unfortunately we are not robots and do not really understand the full capabilities and attributes of our brains, but depending on the said brain different responses to music could be evoked. It is from this philosophical standpoint that I tend to lean kindly toward visuals with music.

.sources.

Whittington, Stephen 31.07.08, "Technology Theory & Culture." Forum of EMU, University of Adelaide.


4.8.08

A Symphony of Horror

.aa - week one.

Nosferatu: A Symphony of Horror is one of many German expressionist films made during the period after WWI. In this time many science fiction and horror films were created, many of which live on today in re-makes, re-scores and so forth. I am going to be making a new score for a selected scene scene of the film. Metropolis was similarly re-scored by the New Pollutants in 2005.



In my effort to re-score a part of this film I am intending to really bring out the horror and mystery of Orlok. I hope to add some emotion to the old film.



.sources.

Harrald, Luke 29.07.08, "Film Sound Design," Lecture of EMU, University of Adelaide, South Australia.


I am the operator of my SuperCollider GUI

.cc - week one.

This is my first experiment with creating a GUI in SuperCollider. It's a "Gain Envelope" program, an idea I borrowed from Peak. Note that at this stage it's a bit like Anna Kornikova, it looks good but doesn't actually do anything.

SuperCollider has plenty of options for the creation of UI's. I had a look at a video on youtube that uses the WiimoteLib class to use a Wii controller with SC.



(

var a, env, c, combo, comboInfo, loadButton, saveButton, previewButton, soundFile;

//window
a = GUI.window.new( "Gain Envelope...", Rect(158, 185, 360, 315));
a.view.decorator = FlowLayout(a.view.bounds);

comboInfo = ["Fade In", "Fade Out", "Retro Synth", "Random"];
combo = SCPopUpMenu(a, Rect(10,10,100,20));
combo.items = comboInfo;
combo.background_(Color.white);
combo.action = {/*ACTION*/};

//envelope
env = SCEnvelopeView(a, Rect(0, 0, 350, 100))
.thumbSize_(5)
.drawLines_(true)
.fillColor_(Color.black)
.selectionColor_(Color.red)
.drawRects_(true)
.value_([(0.0, 0.25 .. 1.0), (0.0, 0.25 .. 1.0)])
.setEditable(0,false);
a.front;

//buttons
loadButton = SCButton(a, Rect(10,10,114,20))
.states_([
["Load", Color.black, Color.white],
["Loading file", Color.black, Color.grey]
])
.action_({/*ACTION*/});

saveButton = SCButton(a, Rect(10,10,114,20))
.states_([
["Save", Color.black, Color.white],
["Saving file", Color.black, Color.grey]
])
.action_({/*ACTION*/});

previewButton = SCButton(a, Rect(10,10,114,20))
.states_([
["Preview", Color.black, Color.white],
["Previewing", Color.black, Color.grey]
])
.action_({/*ACTION*/});

//sliders
b = [0, 100].asSpec;
c = SCNumberBox(a, Rect(10, 20, 40, 20));
j = SCSlider(a, Rect(10, 80, 305, 20))
.focusColor_(Color.red(alpha:0.2))
.action_({
c.value_(b.map(j.value).round(0.01))
});

//sound file
soundFile = SCSoundFileView.new(a, Rect(20,20, 350, 120));

f = SoundFile.new;
f.openRead("sounds/a11wlk01.wav");
f.inspect;

soundFile.soundfile = f;
soundFile.read(0, f.numFrames);
soundFile.elasticMode = true;

soundFile.timeCursorOn = true;
soundFile.timeCursorColor = Color.black;
soundFile.gridColor = Color.white;
// soundFile.waveformColor = Color.grey;
soundFile.timeCursorColor = Color.grey;
soundFile.setSelectionColor(0, Color.grey);
soundFile.timeCursorPosition = 2050;
soundFile.drawsWaveForm = true;
soundFile.gridOn = true;
soundFile.gridResolution = 0.2;

)


ui.rtf


.sources.

Haines, Christian 31.07.08, "Graphical User Interface (1)," Lecture of EMU, Adelaide University.


26.6.08

Galaxy2

Jake Morris
5 ‘ 11

Galaxy2 is multichannel work based on the sound of new environment. It explores the fibonacci series, which helps to establish the feeling of environment. Adding a flavour of ‘the natural world’ into this piece is little unusual considering it is a highly electronic piece – conceived completely digitally. As such, Galaxy2 is mesh of natural and digital worlds. Like many electronica works Galaxy2 is quite mathematic and angular, however some biased random generators add a level of mysteriousness to the work. Galaxy2 should interact with its listener – who is encouraged to realise it visually, sparking the imagination into a new place. The listener is also encouraged to move his or her head around during playback of the piece, as this creates vastly different sounds. Galaxy2 was largely inspired by the Space Odyssey series by Sir Arthur C. Clarke, and musically by Atmosphères (György Ligeti) which serves as the opening of the 2001 film by Stanley Kubrick and the recently passed away Clarke.


(score fullsize: 1.8mB)

Galaxy2.mp3 (stereo bounce 7.1 mB)

SuperCollider Code:

// GALAXY2.6180039987 (6 CHANNEL or 5.1)
// jake morris

// SYNTHDEF
(

SynthDef("Europa", {

// Arguments
arg out, //output bus
sustain, //note sustain time
freq, //frequency
amp = 0.99; //amplitude

// Variables
var partials = 9, //number of partials
waveshape, //osc
envStruct, //envelope shape
envGen, //envelope instance
final, //final osc with env and low-pass filter
a, b;

//ENV
envStruct = Env(
levels: [0.0,0.75, 0.75, 0.0],
times: [3.0, sustain, 3.0],
curve: 'sine'
); //.plot;

envGen = EnvGen.kr(
envelope: envStruct,
gate: 1.0,
doneAction: 2.0
);

//Osc
waveshape = Mix.fill(10, {SinOsc.ar(freq + freq * [Rand(1.0, 5.0), Rand(1.0, 5.0)], 0, amp / partials) }) * envGen;


final = RLPF.ar(waveshape, 22050, 0.1);

#a, b = final;

// OUTPUT
Out.ar(0, PanAz.ar(1, [a, b])); // channel 1 out
Out.ar(1, PanAz.ar(1, [a, b])); // channel 2 out
Out.ar(2, PanAz.ar(1, [a, b])); // channel 3 out
Out.ar(3, PanAz.ar(1, [a, b])); // channel 4 out
Out.ar(4, PanAz.ar(1, [a, b])); // channel 5 out
Out.ar(5, PanAz.ar(1, [a, b])); // channel 6 out

}).store;

)

//recording settings
s.recChannels_(6);
s.recHeaderFormat_("WAVE");
s.options.sampleRate_(44100);
s.recSampleFormat_("int24");

//TRIGGERs
(
//VARs
var baseDur = 3.0, //initial note duration
ratio = 0.6180339887, //inverse golden ratio
ratio2 = 1.6180339887, //golden ratio
f1 = 987, //starting frequency (fib.16)
f2 = f1 * ratio,
f3 = f2 * ratio,
f4 = f3 * ratio,
f5 = f4 * ratio,
f6 = f5 * ratio,
f7 = f6 * ratio,
f8 = f7 * ratio, //CLIMAX
f9 = f8 * ratio2,
f10 = f9 * ratio2,
f11 = f10 * ratio2,
f12 = f11 * ratio2,
f13 = f12 * ratio2,

partials = 9,
a1 = 0.1; //duration

// NOTEs
SystemClock.sched(0.0, { //0'00

Pbind(
\freq, Pseq([f1, f1 * 2, f1 * 3, f1 * 5, f1 * 8, f1 * 13, f1 * 21, f1 * 34, f1 * 55],1),
\dur, Pseq([a1 * 55, a1 * 34, a1 * 21, a1 * 13, a1 * 8, a1 * 5, a1 * 3, a1 * 2, a1],1),
\sustain, Pseq([baseDur],9),
\instrument, "Europa"
).play;

});

SystemClock.sched(9.0, { //0'09

Pbind(
\freq, Pseq([f2, f2 * 2, f2 * 3, f2 * 5, f2 * 8, f2 * 13, f2 * 21, f2 * 34, f2 * 55], 1),
\dur, Pseq([a1 * 55, a1 * 34, a1 * 21, a1 * 13, a1 * 8, a1 * 5, a1 * 3, a1 * 2, a1],1),
\sustain, Pseq([baseDur],9),
\instrument, "Europa"
).play;

});

SystemClock.sched(18.0, { //0'18

Pbind(
\freq, Pseq([f3, f3 * 2, f3 * 3, f3 * 5, f3 * 8, f3 * 13, f3 * 21, f3 * 34, f3 * 55],1),
\dur, Pseq([a1 * 55, a1 * 34, a1 * 21, a1 * 13, a1 * 8, a1 * 5, a1 * 3, a1 * 2, a1],1),
\sustain, Pseq([baseDur * 2],9),
\instrument, "Europa"
).play;

});

SystemClock.sched(30.0, { //0'30

Pbind(
\freq, Pseq([f4, f4 * 2, f4 * 3, f4 * 5, f4 * 8, f4 * 13, f4 * 21, f4 * 34, f4 * 55],1),
\dur, Pseq([a1 * 55, a1 * 34, a1 * 21, a1 * 13, a1 * 8, a1 * 5, a1 * 3, a1 * 2, a1],1),
\sustain, Pseq([baseDur * 3],9),
\instrument, "Europa"
).play;

});

SystemClock.sched(45.0, { //0'45

Pbind(
\freq, Pseq([f5, f5 * 2, f5 * 3, f5 * 5, f5 * 8, f5 * 13, f5 * 21, f5 * 34, f5 * 55],1),
\dur, Pseq([a1 * 55, a1 * 34, a1 * 21, a1 * 13, a1 * 8, a1 * 5, a1 * 3, a1 * 2, a1],1),
\sustain, Pseq([baseDur * 5],9),
\instrument, "Europa"
).play;

});

SystemClock.sched(66.0, { //1'06

Pbind(
\freq, Pseq([f6, f6 * 2, f6 * 3, f6 * 5, f6 * 8, f6 * 13, f6 * 21, f6 * 34, f6 * 55],1),
\dur, Pseq([a1 * 55, a1 * 34, a1 * 21, a1 * 13, a1 * 8, a1 * 5, a1 * 3, a1 * 2, a1],1),
\sustain, Pseq([baseDur * 8],9),
\instrument, "Europa"
).play;

});

SystemClock.sched(96.0, { //1'36

Pbind(
\freq, Pseq([f7, f7 * 2, f7 * 3, f7 * 5, f7 * 8, f7 * 13, f7 * 21, f7 * 34, f7 * 55],1),
\dur, Pseq([a1 * 55, a1 * 34, a1 * 21, a1 * 13, a1 * 8, a1 * 5, a1 * 3, a1 * 2, a1],1),
\sustain, Pseq([baseDur * 13],9),
\instrument, "Europa"
).play;

});

SystemClock.sched(141.0, { //2'21

Pbind(
\freq, Pseq([f8, f8 * 2, f8 * 3, f8 * 5, f8 * 8, f8 * 13, f8 * 21, f8 * 34, f8 * 55],1),
\dur, Pseq([a1 * 55, a1 * 34, a1 * 21, a1 * 13, a1 * 8, a1 * 5, a1 * 3, a1 * 2, a1],1),
\sustain, Pseq([baseDur * 21],9),
\instrument, "Europa"
).play;

});

SystemClock.sched(210.0, { //3'30

Pbind(
\freq, Pseq([f9, f9 * 2, f9 * 3, f9 * 5, f9 * 8, f9 * 13, f9 * 21, f9 * 34, f9 * 55],1),
\dur, Pseq([a1 * 55, a1 * 34, a1 * 21, a1 * 13, a1 * 8, a1 * 5, a1 * 3, a1 * 2, a1],1),
\sustain, Pseq([baseDur * 8],9),
\instrument, "Europa"
).play;

});

SystemClock.sched(240.0, { //4'00

Pbind(
\freq, Pseq([f10, f10 * 2, f10 * 3, f10 * 5, f10 * 8, f10 * 13, f10 * 21, f10 * 34, f10 * 55],1),
\dur, Pseq([a1 * 55, a1 * 34, a1 * 21, a1 * 13, a1 * 8, a1 * 5, a1 * 3, a1 * 2, a1],1),
\sustain, Pseq([baseDur * 5],9),
\instrument, "Europa"
).play;

});

SystemClock.sched(261.0, { //4'21

Pbind(
\freq, Pseq([f11, f11 * 2, f11 * 3, f11 * 5, f11 * 8, f11 * 13, f11 * 21, f11 * 34, f11 * 55],1),
\dur, Pseq([a1 * 55, a1 * 34, a1 * 21, a1 * 13, a1 * 8, a1 * 5, a1 * 3, a1 * 2, a1],1),
\sustain, Pseq([baseDur * 3],9),
\instrument, "Europa"
).play;

});

SystemClock.sched(276.0, { //4'36

Pbind(
\freq, Pseq([f12, f12 * 2, f12 * 3, f12 * 5, f12 * 8, f12 * 13, f12 * 21, f12 * 34, f12 * 55],1),
\dur, Pseq([a1 * 55, a1 * 34, a1 * 21, a1 * 13, a1 * 8, a1 * 5, a1 * 3, a1 * 2, a1],1),
\sustain, Pseq([baseDur * 2],9),
\instrument, "Europa"
).play;

});

SystemClock.sched(288.0, { //4'48

Pbind(
\freq, Pseq([f13, f13 * 2, f13 * 3, f13 * 5, f13 * 8, f13 * 13, f13 * 21, f13 * 34, f13 * 55], 1),
\dur, Pseq([a1 * 55, a1 * 34, a1 * 21, a1 * 13, a1 * 8, a1 * 5, a1 * 3, a1 * 2, a1],1),
\sustain, Pseq([baseDur],9),
\instrument, "Europa"
).play;

});

)


6.6.08

.forum - week twelve.

This week we watch a few DJing tutorials, including an interesting one called "How to Rock a Party," host by Z-Trip. He, like many in this area, has a pretty unusual way of speaking. I understand he is ranked something like the ninth best DJ in the world, and although he seemed a fair outgoing and outspoken bloke, he does not seem like he is conceited.

We watch the "Window Licker" video clip made by Chris Cunningham. To be honest, so far I have not really gotten into his work. Having said that, he has worked with a slew of fantastic eletronica artists from the brilliant Warp label.



.sources.

Whittington, Stephen 05.06.08, "Scratch & Video Clips," Forum of EMU, Adelaide University.


relax and enjoy...

.cc - week ten.

This week in SuperCollider I have added another line to the melodic stream and added some modal transposition.


stream3.rtf (4 kB)


(

s = Server.local;

SynthDef( "PlesantAdventure", {

arg freq, dur=1.0;

var osc;

osc = SinOsc.ar( [freq,freq+0.05.rand] ) * EnvGen.ar(

Env.perc(0.05, 0.75, 0.75, -4), doneAction: 2, levelScale: 0.3, timeScale: dur

);

Out.ar(0,osc);

}).send(s);

)

(

var line1,
line2;

line1 = Pbind(
\instrument, "PlesantAdventure",
\dur, 0.15,
\degree, Pseq([ Pshuf(#[0, 3, 7], 3), Pseq([0, 6, 7]) ], 1)
);

line2 = Paddp(
\mtranspose,
Pseq( [0, 3, 6, 2, 5, 1, 4]),
Ppar([
line1,
Padd(\mtranspose, 7, line1),
Padd(\mtranspose, -2, line1)
])
);


Pseq([
line1,
line2,
Pstretch(1.5, line2)
], inf).play
)




.sources.

Haines, Christian 22.06.08, "Streams (3)," Lecture of EMU, Adelaide University.


30.5.08

"the power is yours!"

.forum - week eleven.

8 ways to make the Electronic Music Unit more environmentally friendly:

1.
Move to Outer-space.
The amount of CO2s used by cars in Earth’s orbit is little to none.



2.
Rely solely on solar power.
Orbiting Earth allows one to constantly stay on the ‘day-side’ of the planet, hence giving students 24/7 access (See: terms and conditions) to solar power.

3.
Recruit more ‘green’ people.
People like hippies and vegans are very environmentally alert, have strong morals grounded on saving the planet.

4.
Install “Braincaps” on all EMU students. Communication will be made solely through braincaps.
Telephathic Braincap communication is even more energy efficient than sending an E-mail, because they require a computer. Oh yeah, computers are bad!

5.
Recycle.
Recycling plays a crucial part in the survival of both the EMU and the planet Earth. The diet will consist solely of Soylent Green.

6.
“A Soma a day keeps the Jim-Jams away!”
Because life in Outer-space may become a bit like living in a mental asylum, eating nothing but toothpaste, Soma will be provided by the lectures.

7.
Habitat.
Atmosphere Laboratories will allow students to reconnect with their original habitat on Earth. Common multimedia habitats would include the forest, the beach and many other environs.

8.
Collaboration.
Students will be encouraged to bring traditional Classical and Jazz music students into the EMU, with a view to establishing long lasting collaborations. EMU students will truly be the ‘avant-garde’ musicians, bringing music toward a more sustainable world.

.sources.

Whittington, Steven and Harris, David 29.05.08, “The Philosophy of Technology,” Forum of EMU, Adelaide University.


scratch

.forum - week ten.

“Scratch” is a great documentary, which outlines the short history of Turntablism. It interviewed a number of key artists in the field, including Grand Wizard Theodore, Grand Mixer QBert, DJ Shadow, DJ Krush, Mix Master Mike and many others.



Scratching is such an impressive looking skill and certainly an area where technology and improvisation meet in an effective way. The use of ‘sampling’ by these artists, particularly in the highly instrumental music of DJ Shadow, is a significant part of their artform. Some musicians have a difficult time accepting this – the art of ‘digging’ as they describe it, can appear to be stifling on their creativity. Coming from a classically trained background, I must admit that ‘digging’ was idea I that I was slow to grow upon. However, since my naïve childhood days I have done a complete back flip on the idea – to the point where I have even sampled at times in my own music. In the grand scheme of music in this day and age, sampling is a really practical way of making music. Recycling the enormous amount of material that exists out-there is not only a viable way of making art, but a necessity of the twenty-first century world.

.sources.

Whittington, Stephen 22.05.08, "Turntablism," Lecture of EMU, University of Adelaide.


20.5.08

A few words from veterans of the EMU

.forum - week nine.

This week in Music Technology Forum two emerging artists who came through the same degree at the Electronic Music Unit as the one I am doing presented some of their work and approaches to creativity.

Seb Tomczak presented a few projects that he has coordinated. The first of these was an album he wrote this year called Automaton. This album was created using a single 11.6 millisecond sound. Seb has an artistic obsession with small things, as suggested by track three – ‘the emphasis is on small things’. This fixation is ingrained too in his ongoing Milkcrate project, which involves sound artists working within specific restraints – rules – by which they must write music. One of these restraints is that the instruments of the session must fit into a Milkcrate (and hence be small). I have never been involved in a “Milkcrate” session, but have certainly had the opportunity to if I wanted.


Darren Curtis has, for as long as I can remember, been interested in using sound to heal as well as using it to represent patterns in nature and supernature, by which I believe he means Outer-Space. Also, he is interested in “Ancient Sound,” something to do with Pyramids and patterns and maybe religion (?). How all of these things tie together I am still figuring out. I am fairly sceptical of his ideas, however I am sure that there is a large group of people who would not be. Further, to comment harshly on his work would really be inappropriate before I learn more about what he does – needless to say I am not yet sold on his music – where it is going, what it is hoping to achieve for him, and so forth.


.sources.

Tomczak, Sebastian and Curtis, Darren 15.05.08, "Postgraduate Presentations," Forum of EMU, Adelaide University.


19.5.08

Streamworks

.cc - week nine.

This week I have continued using streams in SuperCollider. I've pinched a small motive/idea from Phillip Glass, his minor chord with a flattened 6th found in the peice "Dance 8." This version is fairly different though.


streams(2).rtf


(

s = Server.local;

SynthDef( "Glass", {

arg freq, dur=1.0;

var osc;

osc = SinOsc.ar( [freq,freq+0.05.rand] ) * EnvGen.ar(

Env.perc, doneAction: 2, levelScale: 0.3, timeScale: dur

);

Out.ar(0,osc);

}).send(s);

)

(

var wait,
a,
b,
c = 60; //MouseY.kr(minval: 30, maxval: 80); //THE BASENOTE

a = Pshuf.new(
list: [
Pseq.new([c, c + 3, c + 7], {rrand(1,2)}),
Prand.new([c, c + 3, c + 7], {rrand(1,2)}),
Pshuf.new([c, c + 3, c + 7], {rrand(1,2)}),
Pseq.new([c, c + 3, c + 8], {rrand(1,2)}),
Prand.new([c, c + 3, c + 8], {rrand(1,2)}),
Pshuf.new([c, c + 3, c + 8], {rrand(1,2)})
],
repeats: inf //{rrand(5,10)}
);

b = a.midicps.asStream; //TO STREAM

wait = rrand(0.1,0.9); //0.2; //WAIT DUR

Task({ //TO SYNTH
inf.do({
Synth("Glass", [ \freq, (b.next), ]);
wait.wait;
});
}).play

)






.sources.

Haines, Christian 15.05.08, "Streams (2)," Lecture of EMU, Adelaide University.


13.5.08

Peter Dowdall on Sound Engineering

.forum - week eight.



Engineer and Producer, Peter Dowdall, who has worked on the like of Britney Spears (above) came to the Electronic Music Unit last Thursday.

Dowdall spoke about his life and time spent in the Sound Engineering / Production industry. A lot of his ideas on the topic were not new to me but it is always useful to go over things - like the importance of Autotune – and also to hear that the production techniques are fairly universal (he has worked primarily in the United States).

One thing that really stood out was the fanatical and fastidious organisation which Dowdall puts into his work in the studio. It really was amazing just hearing how Dowdall goes about planning his recording sessions to the finest detail, and his numerous contingency plans should problems arise. This pre-session preparation was almost like he was planning a trip to the moon – this was the main ethic of this field of work that Dowdall impressed upon me.


.sources.

Dowdall, Peter 08.05.08, "Sound Engineering and Production," Forum of EMU, Adelaide University.


Ice Streams

.cc - week eight.

Streams of numbers are commonly used in computer music - this week I have used them make continuos stream of random frequencies and also partials in SuperCollider.


streams.rtf


(

var poly;

poly = Array.newClear(128); //array to hold the synth instances

SynthDef("SoundWallKeys", {

arg freq = 440,
rate = 0.4,
gate = 0.0;

// Variables - declaring
var partials = 20, //number of partials
freqadd = 0,
waveshape,
envStruct,
envGen,
out,
final;

waveshape = {

Mix.fill(
partials, { //each partial's function
SinOsc.ar(
freq: freq + 200.0.rand,
phase: 0,
mul: 1.0 / partials
)
});
};

// Envelope Structure
envStruct = Env(
levels: [0.0,0.99, 0.75, 0.0],
times: [0.1,10.0, 0.1],
curve: 'sine'
); //.plot;

// Envelope Instance
envGen = EnvGen.kr(
envelope: envStruct,
gate: 1.0,
doneAction: 2.0
);

// Output
Out.ar( 0, waveshape * envGen); //add envelope to waveform
Out.ar( 1, waveshape * envGen); //add envelope to waveform


}).send(s);

)

(

var dur, a, b;
dur = 3.7;

a = Routine({ //stream for freq

loop({

750.0.rand.yield;

});

});

b = Routine({ //stream for partials

loop({

25.15.rand.yield;

});

});

Routine({

loop({

Synth( "SoundWallKeys", [ \freq, a.next, \partials, b.next ] );

dur.wait; //make routine wait

});

}).play;

)



.sources.

Haines, Christian 08.05.08, "Streams (1)," Lecture of EMU, Adelaide University.


7.5.08

Tristram Cary (May 1925 - April 2008)

.forum - week seven.



Sadly Tristram Cary died a few weeks ago, so out of respect we spent Music Technology forum mourning the loss. Unfortunately I had very little to do with Tristram, his time at the Elder Conservatorium of Music was before mine. He achieved many great things in his life, some of the things he is best known for are his work in Electronic Music Studios (EMS) who invented the VCS-3 synthesizer. While he was known for his work as an engineer, he was also a valuable composer, who wrote music for both electronic and acoustic instruments. He created the sound for many of the early Dr. Who series. His contribution to the Elder Conservatorium of Music at the Adelaide University is substantial – many of his old ‘toys’, like his Theremin, can still be found around the Electronic Music Unit.

.sources.

Whittington, Stephen 01.05.08, "Tristram Cary," Forum of EMU, Adelaide University.


6.5.08

synthesizer creation in SuperCollider (2)

.cc - week seven.

Today I created a Synthesizer using an Audio File (stored in a Buffer). This is a sample from Nine Inch Nail's new DRM-FREE CD The Slip, taken from the track "Corona Radiata."

//Load File Path/Directory of Audio Fide
(
// File Path
~filePath = (PathName.new(Document.current.path)).pathOnly;
)

(
// Play Sample
SynthDef("CoronaRadiata",{

// Arguments
arg bufnum = 0, pitch, amp;

// Variables
var out = 0, envStruct, envGen, sig, postSig, panLine, panMod, panSig, postPan;

// Envelope Structure
envStruct = Env(
levels: [0.0, 0.7, 0.6, 0.0],
times: [0.5, 6.0, 1.0],
curve: 'sine'
).plot;

// Envelope Instance
envGen = EnvGen.kr(
envelope: envStruct,
gate: 1.0,
doneAction: 2.0
);

// Playback
sig = PlayBuf.ar(
numChannels: 1,
bufnum: bufnum,
rate: BufRateScale.kr(bufnum) * pitch
);
postSig = (sig * amp) * envGen;

// Panner
panLine = Line.kr(
start: 0,
end: 1.0,
dur: 1.0,
doneAction: 0
);
panMod = SinOsc.kr(
freq: 2
);
panSig = Pan2.ar(
in: postSig,
pos: panMod * panLine,
level: 0.3
);
postPan = panSig;

// Output
Out.ar(
bus: out,
channelsArray: sig.dup
);

}).send(s);
)
(
// Load Sound File
b = Buffer.read(s, ~filePath++"CoronaRadiata.aif")
)

(
// Play the Buffer (Check that Sound File is found)
. c = Synth("CoronaRadiata", [\bufnum, b.bufnum, \pitch, 1.0, \amp, 0.75]);
)

//MIDI control
(
// Activate - Note On
MIDIIn.noteOn = {

// Arguments
arg src, chan, num, vel;

// Carrier Frequency
Synth("CoronaRadiata", [\bufnum, b.bufnum, \pitch, (num/127.0), \amp, (vel/127.0)]);
};
MIDIIn.noteOff = {};
)




The .zip file below contains the "CoronaRadiata.aif" file needed to run the synthesizer. It also contains more legible formatting for the code.

synth_def(2).zip (1.6 mB)



synth_def(2).zip also contains a 'IndustrialAmbience' synth, which I made using code borrowed from John Delany.

.sources.

Haines, Christian 01.05.08, "Synthesiser Definitions (2)," Lecture of EMU, Adelaide University.