Friday, May 18, 2007

Technology and Background

I have composed most of my music exclusively for acoustic instruments, and this project is my first significant exploration of electronic music. In some of my acoustic music, though, I have sought to incorporate explicitly mathematical or computational ideas and procedures. In particular, I have occasionally generated (what a sterile word in this context!) pitch and rhythmic content through the use of what I call "automata" (Google "cellular automata" for some conceptual background if you want): simple, rule-bound structures that evolve through time and interact with other such structures in interesting and complex patterns. Acoustic music (that is, music performed by humans on acoustic instruments) presents obvious difficulties with regard to the sonic realization of such automata. Human dexterity, after all, has its limits. Computers present a solution to these difficulties.

I decided to create my software in Java. Java is an object-oriented language (again, Google for background if desired) and thus amenable to the implementation of my ideas concerning the interactions of a plurality of simple, rule-bound structures. My software deals mostly in sine-wave synthesis. That is, its sonic output corresponds to a waveform that is the sum of sine waves, often many thousands of them. The software also constructs a graphical representation of these sine waves that I think of as a score. I originally intended the "score" as simply a diagnostic tool to determine at a glance whether or not my algorithms were working as intended, but it has evolved into something that invites deeper consideration of the accompanying music.

My software consists of four types of code:

1) Automata that algorithmically generate tones.

2) Filters that algorithmically modify these tones.

3) Sound and graphical output code.

4) Sinew.

I input the initial conditions of the automata and filters as a config file. The artistry of this type of composition lies in the construction of the automata and filters and in the choice of initial conditions, of which there may be many.

More music coming soon!

No comments: