News » 10 April 2008

The Self Sequencing Machine

Follow up to my previous post on sequencer design. After a lot of back and forth I think I've finally pinned down what I want to do with this project. The key to making this system interesting is to make it "self sequencing". I already have patterns that consist of many tracks of sequenced rhythms, notes, velocities, and durations. That's what every commercial sequencer does so it's not too exciting. So I added a hierarchical meta-sequencer that sequences the sequencer. It's only 2-levels deep (so far), but that seems plenty complex for the time being.

Each pattern has a preset that stores all the sequences and other data needed by the pattern to produce MIDI streams. A pattern preset would typically represent a few phrases of music performed by one instrument or instrument section (like percussion). By sequencing a series of pattern presets in parallel, an intricate section of music can be constructed. Did I mention the sequencing modules support Ruby scripting?

The level above that we have the section sequencer that controls the pattern preset sequencer. It can also control the clock preset sequencer to allow for tempo changes between sections (within a section, the clock can also be sequenced and I use to create asymmetrical rhythms)

As far as human control, I'm currently using a Behringer BCF2000 to control the MIDI modulation sections shown in this diagram below. So I can mix the levels and change the articulation (duration) and transposition at various points in the MIDI stream. I'm also using a Monome 40h (the original 8x8 version) to manually change the pattern presets when desired. All in all, it's shaping up to be a really good combo. Can't wait until I finish building and debugging this thing and can start making some serious tunes with it.

[Update October 2008: I still have this project on the back burner, and use it to compose music from time to time. But it is halfway through being upgraded to Max 5 and missing a few key features and has some annoying bugs. I will release this one day but it's still going to be a while. Apologies to anyone who's interest I sparked]