Performance
controls
MIDI
folks are primarily interested in controlling all sound parameters in a
flexible and acurate way. A Japanese company is already offering direct
control of MIDI by brainwaves! Perhaps the reverse -- controlling the brain
from MIDI -- would make more sense, but this is what music is about after all.
Access
to fine control may be compared with skills at playing an instrument. In BP2
the term
performance
control
is used to name an access to such parameters.
The
following is a demo of BP2's ability to control MIDI parameters. Detailed
comments and sound examples may be found in (Bel 1996a) available from
<http://www.france.diplomatie.fr/hote/delhi-csh/jim96/jim96.htm>.
Enter
a sequence of notes using the MIDI keyboard, then select it with the mouse and
type cmd-p, or select "Play selection" in the "Action" menu. You will hear the
sequence just entered. Durations and velocity information are ignored. They
can be specified afterwards. Notes are played with the current metronome
setting (mm = 60 by default). Type cmd-m to change the speed.
Readers
who never heard, and don't want to hear, about pitch benders and other MIDI
tortur
e
instruments might jump to §1.11.
Let
us now edit the sequence. Suppose that you entered "C5 D5 F5 G5 C6 A#5 A5 G5".
Type cmd-j once again to return to text editing mode (the blinking cursor).
Then try the following performance contro
ls:
(These
examples belong to file "-da.SomeNote
s"
that may be opened from the "Data" window.)
Silences
and prolongations:
C5
- D5 F5 G5_ C6 A#5 A5 G5
Polyphony
(see §1.12):
{C5
D5 F5 G5 C6, A#5 A5 G5}
Imbedded
script instruction:
_script(Beep)
C5 D5 F5 G5 C6 _script(Wait for space) A#5 A5 G5
Performance
control (velocity):
_vel(60)
C5 D5 F5 G5 _vel(127) C6 A#5 A5 G5
Performance
control (crescendo):
_volumecont
_volume(20) C5 D5 F5 G5 _volume(127) C6 A#5 A5 G5 _volume(80)
Performance
control (pitchbend):
_pitchcont
_pitchrange(200) _pitchbend(0) C5___ _pitchbend(150)___ _pitchbend(-180)
Program
change:
_script(MIDI
program 1) C5 D5 F5 G5 _script(MIDI program 5) C6 A#5 A5 G5
The
last example deserves a comment: "_script(MIDI program x
)"
selects MIDI program
x
on the MIDI device, with the effect of changing the timbre (the "patch"). This
generally requires a set-up time on the synthesiser, roughly 0.5 second on my
D-50 and much more with QuickTime Music. It is therefore not advisable to
insert this instruction in a fast movement. It is generally better to use a
multitimbral patch able to assign a different instrument to each MIDI channel.
QuickTime Musi
c
does it fine; see "MIDI orchestr
a"
in the "Devices" menu and follow on-line help.)
Performance
control "_script(MIDI program...)" may be recorded by BP2 in the same way notes
are entered: type cmd-j and change the patch manually on the MIDI device. This
will paste the instruction to the current edit window.
Instead
of typing performance contro
ls
you may pick them from a predefined list: select "Pick performance contro
l"
in the "Edit" menu.
If
you want to know everything about
performance
controls
in BP2, you may activate the "Data" window and load "-da.checkControl
s".
(Type cmd-o or select "Open" in the "File" menu.) There is a line
"-gl.GeneralMID
I"
on top of the window, meaning that BP2 is going to use a
glossary
comprehensible to synthesisers based on General MIDI.
To
hear all examples, type cmd-a or select "Select all" in the "Edit" menu, then
type cmd-p or select "Play selection" in the "Action" menu. BP2 skips remarks
and plays all items in the window.