plm - virtual MIDI patch-bay About plm ========= plm acts as `virtual MIDI patch-bay'. It reads MIDI data stream from a MIDI device, and separates streams with MIDI port / channel, and redirects them to appropriate MIDI device. This archive also contain `tee2`. `tee2` acts same as `tee`, but it was more fast, low-latency. Install ======= Just type: ./configure ; make ; make install If you don't want to use your serial port as MIDI device, specify --disable-serial to configure script. `plm` and `tee2` will be installed. Usage ===== usage: plm [options] Options: -i, --input Input device -o, --output , Output device -m, --mapping ,,(,port) Device mapping -r, --redirect , Redirecting device -R, --enable-running-status Enable running status. -V, --version Show version information. -h, --help Show this help message. -i, --input input MIDI device. plm reads MIDI streams from this device. -o, --output output device ID and device name. if is "timidity", plm connects to TiMidity++ server. -m, --mapping mapping of input MIDI channels / ports to output MIDI device. -r, --redirect reads MIDI stream from specified ID, and redirects it to . -R, --enable-running-status enables running status on output stream ex) /dev/midi00 : external MIDI sequencer /dev/midi01 : internal MIDI device (awedrv, etc) /dev/midi02 : loopback MIDI device 1 /dev/midi03 : loopback MIDI device 2 /dev/ttyS1 : external MIDI module % plm -i /dev/midi00 -o0,/dev/midi01 -o1,/dev/ttyS1 \ -m0,0,0 -m0,1,0 -m0,2,0 -m0,3,0 -m0,4,0 -m0,5,0 -m0,6,0 -m0,7,0 \ -m0,8,1 -m0,9,1 -m0,10,1 -m0,11,1 -m0,12,1 -m0,13,1 -m0,14,1 -m0,15,1 plm reads MIDI streams from /dev/midi00a and streams separated by MIDI channels. Channel 0 - 7 is redirected to /dev/midi01 (internal MIDI device), channel 8 - 16 is redirected to /dev/ttyS1 (external MIDI module). usage: tee2 [file1] (file2) ... `tee2` reads from standard input and write it to specified files and standard output. It will be useful for output same MIDI streams to multiple devices. ex) % cat /dev/midi02 | tee2 /dev/ttyS1 /dev/midi01 > /dev/midi?? You can use `plm` and `tee2` together. Connect to TiMidity++ ===================== plm can perform with TiMidity++. You can specify -o0,timidity to play TiMidity++. Before connecting to TiMidity++, you should run timidity with option '-ir 7777'. Currently plm connects timidity-server on localhost, port 7777. Copying ======= This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. Availability ============ The latest version of plm will be available at: http://member.nifty.ne.jp/Breeze/softwares/unix/index.html Author ====== plm is made by NAGANO Daisuke