Thursday, June 26, 2008

Creative Computing – Major Project, Semester One, 2008




Program Note:

Forced Unity – an automated improvisation piece that morphs between two source motifs.

David J Dowling
5 ‘ 42

This piece is the result of a computer program that plays through sequences of a pre programmed starting pattern (musical phrase) consisting of note values, rhythm values and dynamic values, and slowly mutates the pattern until it becomes a designated target pattern (also pre programmed). The aim was to have the morphing process sound similar to an improvising jazz duo of drums and electric piano. Upon reaching the target pattern, the piano will play through it four times unaccompanied after which the process reverses and begins to morph back to the starting pattern.

Musical consistency has been achieved by including banks of pitch information (relevant to the current pattern being played and morphed) and rhythmically stable note duration combinations, either of which can be called upon at any time as an alternative to the relevant current patterns. The choices of these are weighted and controlled, avoiding too many clunky stops or crazy fast breaks when the piece is really grooving.

The fact that the program controls both main instruments simultaneously allows for some complex and interesting ‘break’ or ‘fill’ sequences that would be very difficult (if not impossible) for an improvising human duo to anticipate. The consistent drum loop that is present throughout provides a solid foundation for the piano to play over, ensuring that no matter how obscure its timing becomes, it will usually be heard to make sense in the context of the tempo.

A bank of musical and obscure samples is also drawn upon at the start of most sequences to break up the timbre of the instruments a little. There is also a combination saw wave and pink noise synthesiser playing sweeping tones from the key to provide a subtle bed of ambience. These are fed through varying delay and reverb lines to avoid repetition.


Click here to link to online folder containing SC Code files, MP3 audio of the performance and all documentation.


References
:

Haines, Christian. "Creative Computing - Major Project." Project undertaken and supervised at the Electronic Music Unit, University of Adelaide, May 1st to the 25th of June, 2008.

5 Comments:

At 8:45 PM, Blogger John said...

I think this is one of your best pieces. I like the overall 'playfulness' if that's the word, and just the quirky nature of it. Reminds me of early Aphex stuff - and were they odd timings that you included as fills (ie. 3.30)? Also, the samples you've chosen contrast really well with the repetitive sounds (in particular 1.40 - 2.00).

 
At 12:19 PM, Blogger David J Dowling said...

The odd timings are the result of the program 'squishing' its rhythm arrays to match pitch pattern arrays that contain less notes than the original. I found a useful method in the Array class to do this named '.wrapExtend' which will extend or truncate an existing array to any size you specify as a parameter to the method. I also created a small algorithm to have the program treat the drum loop differently depending on the size of the current note pattern. If the original note pattern was twenty notes long and the current one was only six, then the loop would not repeat so many times, and its repeats would be closer together resulting in 'fill like' drum breaks. As the program was weighted toward choosing the original note/rhythm patterns more often, these 'fills' sound musical and consistent for the most part, and give the impression of an improvising duo of superhuman tightness...

 
At 9:52 AM, Blogger Poppi said...

This comment has been removed by the author.

 
At 11:20 AM, Blogger David J Dowling said...

I have never written a piece of instrumental music that I would consider a joke (although some of my youthful efforts may come across that way now). The bank of samples that play with varied processing at the start of each bar were chosen quickly as a bit of an afterthought so their place in the mix often seem quirky or humorous, but if you read my documentation (not to mention the code itself) it will be obvious that this was not an exercise I undertook lightly. Yes the inclusion of seemingly unrelated sonic material could seem to contradict the seriousness with which I approached the programming and compositional process, but if there's one thing I'm sick of in the world of highbrow electronic art music its the way many people take the end result of their craft too seriously, often leaving the listener cold and alienated. As I'm sure you're aware, music is and always should be enjoyable, so if the stale result of my morphing algorithm doing its thing on a piano gets a little old after a while, I'll be buggered if I'm going to hold on to some stupid purist perception that a potential audience should embrace it for the spectacle of programming cleverness that it is and leave any expectation at the door. No matter how indulgent my musical escapades may become, in most situations I will try my best to evaluate their 'entertainment' potential from an objective and honest view point. I'm not talking about making music for the masses but if I want someone else to listen to it I think I owe it to them to have at least considered this angle...

On remark number two, I think I am equally interested in coding and coding for musical purposes - it keeps me thinking...hmm...

I hope this answers your questions. :)

 
At 2:20 PM, Blogger Poppi said...

This comment has been removed by the author.

 

Post a Comment

<< Home