Some weeks ago I discovered the call for works for the CTM.13 MusikMakers Hacklab and proposed my idea for an interactive graph-based step sequencer. The proposal was accepted and I spent the week on the CTM Festival building the prototype as a Java External for Max/MSP. The Hacklab was a very inspirational gathering of music, art and visual developers collaborating within their projects and sharing ideas and concepts. For example, Imogen Heap was working with her team on their exciting musical gloves project. I set up an electronic drum kit and my stage LED Light modules as an interface testing environment. In many conversations with other artists in the lab I developed a basic concept for the interaction between the drum kit and my sequencer prototype.
Basically, the graphical sequencer consists of a finite state machine that can be played by a musician. It is a software that accepts any signal (e.g. MIDI) as input and sends predefined signals to the outputs. In the graphical representation, the nodes represent musical events or any other signal that the host can handle, e.g. MIDI notes, chords, OSC messages or visualization commands. The edges connecting the nodes define the rules for the transition from one node to another over time. Multiple outgoing edges are interpreted as alternate choices, giving the possibility to express a musical composition in form of a Markov Chain.
I added two more things to that concept to create the possibility of interaction with this graphical composition: An emitter is a start node that listens to a specific event, e.g. a drum pad. When activated, it emits a token into the graph that will transition the nodes when it recieves the "step" signal, e.g. from the bass drum trigger. You can now play this graphical composition with a simple drum interface:
So far, that's it for the prototype. There is some insightful media coverage of the event on Heise.de and createdigitalmusic.com. I can't wait to try out hacking some more complex compositions in the sequencer and include it into my live setup. But of course, there's lots of work to do until then, and we developed additional ideas for adding conditions to the graph, to express larger musical parts in a simple graphical way. There will be a download of the basic Max external and/or a standalone Java application later, but this may take some time.