Distributed
improvisation
Interactive
controls make it possible for several BP2's and other MIDI devices to
collaborate on the same MIDI 'network'. Communication is generally done on a
reserved MIDI channel, here for instance channel 15.
You
must set the MIDI keyboard to channel 15
to be able to interact with project "-gr.koto
3".
Consider
for example:
IN
Synchronize start ON-OFF F#4 channel 15 [toggle]
IN
Start play C5 channel 15
The
first instruction (a toggle command) assigns key F#4 to instruct BP2 to accept
or ignore 'Start play' instructions. When BP2 starts improvising, its response
to 'Start play' depends on the setting of radio button "Synchronize start" on
the "Settings" dialog. (It might also have been changed by script instructions
"Synchronize start ON" or "Synchronize start OFF".) It will be changed again
by key F#4 channel 15.
The
second instruction is the 'Start play' definition itself: BP2 should wait for a
NoteOn of key C5 channel 15. If this instruction is missing, then instead of
waiting for a NoteOn BP2 will wait for a 'Start' or 'Continue' MIDI message.
Note
that this amounts to the same as inserting a performance control "_script(Wait
for C5 channel 15)" or "_script(Wait for Start)" in the beginning of each item.
However, once defined in the "Interaction" window, the 'Start play' instruction
may be deactivated and reactivated by key F#4.
'Start
play' is useful for synchronising the beginning of a musical item accurately.
The 'start' message may be sent from a MIDI keyboard or from any other MIDI
device, including another BP2. For instance it could be (it
is!)
the 'sync' sound-object terminating every production in grammar "-gr.koto
3".
With two computers connected to MIDI, you may run project "-gr.koto3" on both
and see how they collaborate... Don't forget to set up "Interactive (use
input)" on both machines. Then modify the grammars to give an 'individuality'
to each one. It works? You've entered the world of
distributed
improvisation!
Can you figure out a set-up with more computers, including humans messing
around?
Sending
a NoteOn on key C5 channel 15 otherwise prompts BP2 to play an item
immediately. If BP2 is still busy computing the item, several flags will be
set so that production is terminated as quickly as possible (by-passing all
constraints). This is an equivalent of "it's up to you now" signals used by
jazz musicians in a band.