You are here

Using MIDI With Modern Dance

Martin Russ follows up last month's article by Nick Rothwell on using MIDI with modern dance by asking: how exactly does he do that?

If you were intrigued by Nick Rothwell's article about his electronic music project Cassiel in last month's SOS, then you might be wondering exactly how he uses his Mac PowerBook to help perform music in real time. Here's what he told Apple Notes:

What follows is an explanation of how we at Cassiel are able to construct a 30‑minute electronic score which can then be performed on a box of 16 faders (my Peavey PC1600 MIDI mixer) without backing tapes or a sequencer. We need the benefits of backing sequences (rhythm and orchestration) but with control and flexibility, so that (for example) rhythmic components can interact with live gestures in an organic way. Because of the requirement for rhythm, the performance system does actually have a master beat clock, and counts bars at programmed tempos; the musical elements are brought into and out of this master time base under live control. This leaves us free to improvise and adapt to what the dancers might be doing.

'Chunks' Explained

To achieve this, we split a performance into 'chunks'. The name comes from the arrangement pages in Performer, although practically all software sequencers have a similar notion. In a sequencer, a chunk is an encapsulated set of MIDI tracks which start and stop somewhere within a larger sequence. In my system (based, as I explained in last month's feature, around Opcode's Max), there are no tracks of MIDI data, but there are processes which may behave autonomously (generating MIDI data repeatedly according to internal tempo generators), or react to and process incoming MIDI from the live performance, or both. All the Max chunks follow the master clock source, which can either read or generate external MIDI Beat Clock, so when a chunk is active it can count multiples of beats. This is how we build rhythmic effects or traditional note loops; internal counters lock to multiples of the beat and trigger tables of notes or controller values. Alternatively, a chunk might do something very simple, such as hold a single note.

Figure 1 shows the coding for one of simplest chunks in the performance. This has one real‑time control point, a fader which is mapped to MIDI volume (with a maximum value scaled to 80). The chunk counts from 0 to 63 every 12 ticks, with the counters triggering notes drawn up in a graphical table (bottom right) so as to form an 8‑bar loop. There is also a synchroniser to make sure that all the 8‑bar loops will run from the same start point, no matter when they are cued. Most of the chunks have more control points than this, allowing a lot more live control: in this particular chunk, other faders could control note velocity, filter cutoff, or even transpose or permute the actual notes. In this performance, for example, we have faders generating notes on a modal scale, controlling vector mix on our Wavestations, selecting from sets of chords, changing tempos of internal arpeggiators, sending SysEx data to the Wavestations, and so on.

Chunks are also responsible for initialising any MIDI instrument (or channel thereof) that they use. This might be as simple as sending a program change and volume message, or it might involve a complex configuration using SysEx. Figure 2 shows a chunk for a vocoder section of the piece (top right); the window at bottom left is the Wavestation effects journaliser as it recalls the effects configuration via SysEx for that particular section of the piece.

All chasing is done automatically; if the master clock is relocated to coincide with the middle of a chunk, that chunk is initialised and all instruments are automatically set up. Theoretically, chunks have a predetermined starting bar and length, just as in sequencers. For recording projects, I generally lock the system to an external sequencer, so that the chunk activates at the right time in order to process MIDI from the sequencer. For live work, each chunk has infinite length and is initially positioned at infinity. Every chunk is attached to a master fader and when the fader is moved away from zero, the chunk is cued up to activate at the next bar (to give it time to initialise any MIDI devices it uses). When the fader goes to zero, the chunk is deactivated.

Avoiding Interference

Some work is needed to avoid chunks interfering with one another; this will happen if they use the same instrument and MIDI channel, but with a different patch or real‑time control. For simple, short live sets, it's often possible to design a set of chunks which are mutually exclusive in their use of instruments, so that (in theory) all of them could be active at once without interference. However, as a piece gets more complicated, more chunks are added to it, and the possibility of interference can rear its head. Also, for longer or more complex pieces, 16 faders cease to be enough for all the control points of the chunks. If either of these problems arises, the solution is to structure the performance into a series of movements. Each movement has a set of chunks with minimal interference whose control points fit onto 16 faders. In addition, a small number of chunks (typically one or two) are active from one movement to the next, to allow a smooth changeover.

In any movement, any chunk is immediately available (within one bar's worth of time), and if there is no interference between them, any combination of chunks can be activated and manipulated at any time, which allows for a very free and organic style of performance. The transition from one movement to another is slightly more tricky; it's important to ensure that only the 'crossover' chunks are active during the changeover.

In Practice

Figure 3 is a crib‑sheet of a recent half‑hour, four‑movement dance set. Each row of 16 boxes is one movement, with each box representing a fader assigment. The black boxes are the master faders for the chunks, which activate and deactivate depending on whether the fader is at zero or not. The white boxes are additional control points for the chunks, and are only active if their owning chunk is active. In this example, Movement 1 has eight chunks, each with one control point; the chunk on Fader 16 is used for the crossover into Movement 2. By contrast, Movement 4 has only four chunks, but there are another eight control points amongst them, for altering filter cutoff and resonance, selecting chords, and so on.

Hopefully, it's possible to see how an entire piece is performed. We enter the first movement, and have up to 16 chunks available (fewer if they have complex real‑time control), which we can activate in any order; this might be rigidly determined by the choreography, or totally improvised, or somewhere between. At the end of that movement, all the chunks are deactivated except for one or more of the crossover chunks; then a button press on the fader‑box switches the system from the Movement 1 chunks to the Movement 2 ones, and we're off again, repeating this process until the end of the piece.

Apple News In Brief

  • THE CLONE RANGERS
    Barely had Apple Notes mentioned that Macintosh clones might be slow to appear over here, when the adverts started to appear. Congratulations to Computer Warehouse for offering an alternative source of platform to run the Mac OS on — especially ones with NuBus slots in! Rumour has it that future Power Computing clones will have a mix of NuBus and PCI slots, too. Computer Warehouse can be contacted on 0171 724 4104.
  • IT'S IMPROVED, IT'S NEW, IT'S SCSI‑II
    One of the features on some of the latest Power Macs is their use of a faster variant of SCSI internally. Although the external SCSI is still the same as older Macs, the internal Fast SCSI‑II improves the transfer rate of data to and from any internal hard disks. As you might expect, this will make the specifications of hard disk recording systems even more interesting, because now the number of tracks that they can deal with will depend on the SCSI bus being used.
  • TAKE‑AWAY DISKS BOOM
    As predicted, the initial demand for the new generation of low‑cost removable hard disks (Iomega's Zip Drive and Syquest's EZ) has been very high. Trying to work out which of the formats will triumph is much harder. Apple Notes can't help noticing that with the current hard disk prices (850Mb for under £200, for example), using a big hard disk as backup storage is still cheaper than the removables. At the cost of having to power down the Mac and undo the SCSI cable, a hard disk is removable too...
  • AND THE WINNER IS...
    Apple Notes is pleased to announce that Matthew G Overton was the winner in the June's Apple Notes Claris Organizer competition. The answer, of course, was that they are all types of apple! Watch out for more exciting competitions — what would you like to win? Answers to Apple Notes at SOS, please.
  • THE GREMLINS STRIKE AGAIN
    Gremlins on the Internet savaged the text of Apple Notes while it was being transferred to the SOS headquarters last month — for the second time in six months, a pound sign emerged at the other end as a pound sign and a number three, with the result that the price of Opcode's Max appeared as £399.95 instead of the correct £99.95. Sorry!