gm-patches
A General Midi helper library for PureData which converts the GM name to the relevant index in the GM 1/2 specification.
Follows the General Midi spec as outlined on wikipedia.
Note: this page will no longer be updated
Please refer to the Github project page from now on
objects
The objects included are:
- gm-instrument: convert a GM instrument name to a program change number
- gm-percussion: convert a GM percussion name to a midi note
- gm-control: convert a GM control parameter name to a control change number
All objects can print the relevant GM spec to the console for reference.
setup
These patches require the following objects: [coll] from the cyclone library (included with pd-extended), and [unsymbol] from iemlib.
What is Midi and why do I care? Midi itself is not the sounds but just a specification in how hardware and software can communicate with the common goal being making/performing/playing music. General Midi is a further specification for a standard set of instruments and controls that a GM compatible synth will be able to play. This means if you make a midi file or pd patch to control a midi synth, it should work on any GM synth in the same way.
You must have a access to a General Midi synth for these patches to be of any real use to you. For those of us with hardware synths, most major operating systems supply one … Windows, Mac OS, and Linux all have software GM synths. Here are some short setup notes:
- Windows: should work out of the box using the Windows GM Synth
- Mac OS X: I suggest you install SimpleSynth which allows easy access to the Apple DLS GM synth and enable the IAC Midi driver to connect PureData to SimpleSynth (see the PD FLOSS manual).
- Linux: Install the Timidity GM synth and connect it PureData to through Alsa using either aconnect, aconnectgui, or qjackctl. (also see the PD FLOSS manual).
update history
- 10/03/09 v0.1.0 – released initial version
download
svn
Grab the latest version from the rc-patches:
https://github.com/danomatika/rc-patches