ipMIDI Sending MIDI over LAN
Monday, March 24 2008 - midi, daw, ipmidi
MIDI was first proposed in 1981 out of the need to standardize a form of communication between electronic instruments. 1983 saw the publishing of the MIDI specification 1.0.
Today MIDI plays an important role in all musical applications and is used every day as the conduit between electronic instruments and music production systems. Up until fairly recently the only way to send and receive MIDI data between instruments and the PC was through an audio interface with MIDI or a dedicated MIDI interface. Most electronic keyboards still require MIDI cables to send and receive MIDI but I suspect we will see this to change in the coming years allowing for the transmission of MIDI data via Ethernet from musical instruments to any other device on a LAN.
The way in which we are sending and receiving MIDI data between computers has recently seen a change. No longer do we have to run multiple MIDI cables between computers.
With computers decreasing in price almost daily it is not uncommon to see multiple computers sharing the demanding load of recording music and sample instrument playback (see Connecting Multiple Digital Audio Workstations for more details). This sharing of computer resources is similar to how the animation studios render complex 3D animations.
One important part in connecting multiple computers for the purpose of sharing in the load produced by the demands of digital audio recording and sample instrument playback is the way in which these computers talk to each other via MIDI. Most computers are already connected to a local area network so it only makes since that we should be able to send the MIDI data over this already existing connection. This is where ipMIDI comes into play.
What Is ipMIDI:
ipMIDI allows any MIDI application on the LAN to communicate with any other MIDI application via IP network. ipMIDI sends MIDI data over Multicast UDP. The fact that it uses Multicast UDP means ipMIDI broadcasts MIDI data to all the connected MIDI applications/computers. There is not a separate client and server application, just one application that you install on all the computers that you want to communicate.
So far I've been very happy with ipMIDI. For $79 you can connect up to three computers. I still think $79 is a little pricey for what is essentially a driver and I've even thought about developing my own solution and re-selling for cheaper. Out of the two leading products, ipMIDI and MidiOverLan, ipMIDI is almost half the cost and you get one extra computer connection so it gets my vote over MidiOverLan. I did try MidiOverLan utilizing the 14 day trial and it's a solid product but in my opinion it is way over priced.
ipMIDI offers a trial for download here, so if you're not sure it will work in your environment you can always give it a test run.

That is cool! Using UDP makes sense, since was reading it wondering if using TCP could cause latency issues.. even though it is a short distance, with something as timing crucial as music, figured it would get in the way.