SEQUENCER
1.3 MIDI Emulation
With a proper standardization of these synthesizer events it will make
little difference to an application programmer to make use of the basic
capabilities on any synthesizer. Playing a singe note is an similar
operation for all synthesizers: regardless if is an external MIDI synth, an
on-board Gravis Ultrasound, an on-board SoundBlaster AWE, FM synth or even a
soft-synth.
If for some reason one needs to access a special feature of a synthesizer
that is not covered by the 'standard', that user can make use of a device
specific message. This message is of course not portable to other synths.
The pure General MIDI standard is very restricted in possibilities to change
or manipulate a sound. To overcome this problem two 'extended GM' standards
are invented:
- GS, by Roland
- XG, by Yamaha
The XG standard is more open and feature rich than the GS standard. The GS
standard makes heavily use of 'system exclusive data', while the XG standard
uses controllers for most common parameters, and 'system exclusive data' or
'non-registered parameter number controllers' for the less often used
parameters. The ALSA MIDI emulation will model on-board synthesizers after
the XG standard.
more...