MIDI Program Changes for Organ Control
By John Wale
|There has recently been discussion in the MMD of MIDI-operated mechanical organs. Thinking through the way MIDI changes sound patches, how would one correlate MIDI program change messages to organ stop settings ?|
It would seem that the MIDI system is more appropriate to synthesisers with a number of preset sounds rather than an organ which can have any number of ranks of pipes selected or not from what could be a large array.
With the MIDI program change message being 7 bits, allowing full on/off control of pipe ranks individually restricts you to just 7 registers, which seems rather limited. An alternative system could be envisgaed where the program change message selects one of 128 'patches' which have been pre- defined as mixtures of different organ registers.
Could anyone please comment on which system, if either, is used in MIDI pipe organ applications ?
[ Editor's Note:
[ I've studied several organ relay systems which used MIDI as
[ the transport medium between the console and the relay system
[ which was near the pipework. None used MIDI program changes to
[ represent register changes. Each used its own proprietary
[ method of encoding stop changes. For organs of any size,
[ representing the playing notes of each manual (or division)
[ as notes on a seperate MIDI channel works well. For small
[ organs, representing the positions of the stop tabs as note
[ on and note off events works well, and is handy for editing.
[ You can treat them as "non-playing notes" on the same MIDI
[ channel or you can segregate them into a seperate channel.
[ For large organs, particularly ones with combination actions
[ (organist defined presets), the number of note on/note off
[ events which may happen at one time can be a problem. For
[ editing purposes, note on/note off is still a good representation.
[ However, for the MIDI wireline, it can be a problem because
[ it takes about a millisecond per event. If you change 50
[ stop tabs at the same time, it would take 50ms to send that
[ over the MIDI wire line. At least one theatre organ relay
[ system vendor I know of uses a proprietary encoding which
[ transmits the tab positions on the MIDI wire line as a bit
[ stream, 7 stop-tabs per MIDI byte. Its a quite efficient
[ encoding method. Unfortunately this vendor uses this same
[ encoding in the MIDI file, which makes the MIDI file
[ impossible to edit with standard MIDI editing tools...
(Message sent Fri 27 Sep 1996, 09:43:44 GMT, from time zone GMT+0100.)