Xpmid
A tkinter frontend for pmidi or aplaymidi.
Contact
Bob van der Poel <bvdp@uniserve.com>
Home
http://myhome.uniserve.com/~bvdp
Requirements
- Since this is a pmidi frontend you really should have the program :)
Or, aplaymidi which is now part of the ASLA distribution.
- You'll need version 2.2 or better of Python, with tkinter.
- Tkinter depends on tcl/tk. This should be included in your distribution.
- Pmidi is a ALSA sequencer. So, yes you need ALSA.
- Pmidi is for EXTERNAL midi devices. So you better have one of those as well.
Installation
Just copy the script "xpmidi" to somewhere on your path. "/usr/local/bin" is recommended. There is no installation script, you'll have to do it by hand.
Usage
Pmidi is a nice little program to play midi files via an external midi device. I use it all the time to play my midi files though a Casio keyboard.
There are 2 problems with pmidi and/or aplaymidi:
- It is command line driven. Fine for casual use, but retyping the same file name gets tedious.
- Pmidi does not always stop all notes on the keyboard if you use Ctrl-C to stop the playback before the end of the midi file is reached.
Xpmidi solves both problems.
The GUI should be obvious. Shout if problems.
The "stop the notes" problem is fixed by xpmidi though the following:
- Create a temporary midi file "/tmp/xpmidi-alloff.mid". This file contains midi directives to stop the playing of all notes in each midi channel.
- Call pmidi to play the temporary file.
- Delete the temporary file.
You will have to have write access to "/tmp" for this to work. If you don't or can't then you can modify xpmidi to use a different directory.
RC File
Xpmidi stores the name of the last used directory and the list of favorite directories in the RC file "~/.xpmidirc". This is an invisible file in the user's home directory.
Bugs
None that I know of. But please let me know if you find one. And if you fix one, let me know that too :)
Licence
The program xpmidi was written by Bob van der Poel Feb/2003 and is copyright Robert van der Poel, 2003-4.
This program and associated files can be freely distributed according to the terms of the GNU General Public License (see the file ``COPYING'').
