>Is the presence of a "preset #" in an instrument definition sufficient
>for all instances of the instrument to get valid data from the MIDI
>standard names, or are only instances launched with NoteOn commands
>supposed to receieve it?
My interpretation of the standard is the latter.
For example, 5.8.6.8.9 MIDIctrl says "The current values of the MIDI
controllers on the channel to which the instrument instance associated
with the scope is assigned." The only way an instance gets assigned
to a channel is through the use of a MIDIon that gets mapped to a preset.
I think it has to be this way, because in your example
instr foo () preset 31 {
}
preset 31 could be active on more than one channel. That is, on
channel 2 I send a program change 31, and then on channel 4 I send
a program change 31. The instances of foo() that were triggered
from channel 2 only get the control events on channel 2, and the
dual.
Generally, I think of the MIDI control stream and the SASL control
stream as parallel-but-separate ways of doing control and note
instantiation, that don't mix too well.
Best,
-- Eric
+-----------------+
| Eric Scheirer |A-7b5 D7b9|G-7 C7|Cb C-7b5 F7#9|Bb |B-7 E7|
|eds@media.mit.edu| < http://sound.media.mit.edu/~eds >
| 617 253 1750 |A A/G# F#-7 F#-/E|Eb-7b5 D7b5|Db|C7b5 B7b5|Bb|
+-----------------+
This archive was generated by hypermail 2b29 : Wed May 10 2000 - 12:15:46 EDT