PMIDI(1) | General Commands Manual | PMIDI(1) |
pmidi - A midi file player for ALSA.
pmidi [ -pclient:port ] [ -l ] [ -ddelay ] file...
The pmidi command reads in the specified midi files and plays them through the ALSA sequencer. You can specify on the command line which sequencer port that you wish to use. Use the -l option to get a list of possible sequencer ports for your machine.
You can specify client:port numbers in the ALSA_OUTPUT_PORTS environment variable. You can also supply a comma (or space if quoted correctly) separated list of client:port numbers. This will allow you to play midi files that use more than 16 channels.
Before you start you need to have ALSA installed and configured correctly. This man page cannot cover all general ALSA topics, but here are a few things to check when things do not seem to be working.
Because you may have more than one sound card and each sound card may have several MIDI connections, you have to tell pmidi which one to use.
First find out what the possibilities are for your system:
If you run:
Port | Client name | Port name |
64:0 | Rawmidi 0 - EMU10K1 MPU-401 (U | EMU10K1 MPU - 401 (UART) |
65:0 | Emu10k1 WaveTable | Emu10k1 Port 0 |
65:1 | Emu10k1 WaveTable | Emu10k1 Port 1 |
65:2 | Emu10k1 WaveTable | Emu10k1 Port 2 |
65:3 | Emu10k1 WaveTable | Emu10k1 Port 3 |
128:0 | FLUID Synth (28152) | Synth input port (28152) |
129:0 | Client-129 | TiMidity port 0 |
129:1 | Client-129 | TiMidity port 1 |
Any of the port numbers in the first column can be used with pmidi. In the example above the first one is the external Midi port, the next four are the internal wave table synthesiser. Then there are two software synthesisers running, FluidSynth (http://www.fluidsynth.org) and Timididy.
If you don't see anything listed then check that the correct ALSA modules are loaded as in the section "Checking ALSA".
Steve Ratcliffe <sr@parabola.me.uk>
Dec 20 2003 |