.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.
iieiwrmeieweeiimeemmwreiweremweireeemeimwieewwrwweereireeiimeewmiwwwemwiewimeeeremeiewmemweewieewerwemwiimiewmeiwireiiwrrewmwewree |
27.8.08
0 comments copywrite 4:16 pm
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.
3 comments copywrite 11:16 pm
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.
0 comments copywrite 10:18 pm
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/
0 comments copywrite 12:41 pm
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.
2 comments copywrite 10:13 pm
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.
0 comments copywrite 10:17 pm
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.
1 comments copywrite 10:02 pm