This is the midi file player Plug-In for xmms, using the code from
Timidity and based on the .wav file plugin.  It was originally written by
Chris Reed <cr212@iname.com>.

As with timidity and xmms, this plug-in is distributed under the terms of
the GPL. (see COPYING)

This version is written for x11amp-0.9-beta1.1 ; it will not work with
0.9-alpha versions, and is not gauranteed to work with later versions. 
Please mail me about any incompatibilities.

It can be obtained from
http://ban.joh.cam.ac.uk/~cr212/xmms-midi/xmms-midi.0.03.tar.gz

To compile, edit the Makefile for 
As well as merely playing midi files through x11amp, the plug-in also
provides a (currently somewhat crude) interface to the midi mixer.  It is
accessed as the configuration dialog for the plug-in;  go to
Options->Preferences, select the plugin and click on "Configuration".

It displays for each of 16 channels:

* Midi Voice name (cut to 4 characters for brevity)

* Input box (for providing your own name for each channel, nothing else)

* Solo button (if one is pressed, only Solo'ed channels can be heard; more
  than one may be depressed at a time)

* A Gtk Adjuster Widget to set the volume of the voice.

* Immediately to the right of this, a bunch of small horizontal lines, each
  one corresponding to a not being played on that channel.

* Immediately below this, a vertical line showing the volume of the voice,
  pre-fader (approximate)

Note that midi Channel 9 is the drum channel; each note that can be played
actually corresponds to a different drum sound, and the voice's name will be
wrong.  You'll also need to re-open the configuration dialog to get the
voice names to update after going from one midi file to another.

Unfortunately, the updating of this display is usually a bit behind what
you'll actually hear; this is (I think) because of the amount of buffering
performed by xmms.  A short buffer keeps this latency low, but does cause
the spectrum analyzer to not function correctly...  (I'm open to suggestions
on how to fix this)

