Somewhat OT: Most Popular MIDI Over Network Technique?

1,096 views
Skip to first unread message

John Huntington

unread,
Jul 8, 2017, 3:39:49 PM7/8/17
to QLab
I'm updating my book this summer, and I'm wondering: How are people sending MIDI over networks these days?

Personally, I really do most everything over IP and hardly use MIDI any more (for example: http://controlgeek.net/blog/2017/6/27/controlling-brightsign-hd223-players-from-medialon-manager-for-the-gravesend-inn), so I'm a bit out of the loop. (pun intended). But MIDI is certainly the right choice for some situations, so I want to make sure I'm up to date.

Currently in my book, I mention three ways of sending MIDI over a network:
  • Real Time Protocol (RTP) MIDI Payload
  • Apple Network MIDI
  • ipMIDI
What's most popular these days?  Also, how are you getting it into your system?  

Thanks!

John

Maik Waschfeld

unread,
Jul 8, 2017, 5:08:47 PM7/8/17
to ql...@googlegroups.com
Hi John,

  • Real Time Protocol (RTP) MIDI Payload
  • Apple Network MIDI
These are both the same protocol, iirc.

According to <http://www.tobias-erichsen.de/software/rtpmidi.html>, rtpMIDI is the Windows driver for Apples Network MIDI.

For „quick-and-dirty“ hacks and Mac-only, I use ipMIDI.
But for more elaborate applications, like adding a WIN-machine, I prefer rtpMIDI.

Or, as an alternative with a direct CAT-cable between two boxes and real MIDI-plugs:

There were some more MIDI-over-Network-solutions:
- CopperLAN, that didn’t work for me
- Yamaha Network-MIDI, didn’t checked this.


With kindest regards…
…Maik Waschfeld

(sent from my MBAir11)

John Huntington

unread,
Jul 8, 2017, 5:12:34 PM7/8/17
to ql...@googlegroups.com

Thanks!

My understanding is that they are related but not the same.  Here's what I wrote in the current edition in 2012:

"...Starting with its OS X operating system, Apple implemented a Network MIDI feature to transport MIDI over networks based, in part, on RTP. The approach uses two arbitrarily established UDP ports, which are assigned when the connection is set up. One is the “control” port; the other (the control port +1) is used to transmit the MIDI and RTP data. Using Apple’s service discovery system Bonjour, the Apple Network MIDI system can work over networks without being aware of the IP addresses, and this accommodates IP address assignment by DHCP, link-local procedures, or fixed IP addresses.  ... Apple’s developers apparently considered that the session control protocols suggested in the RTP MIDI specification were too complex for typical LAN applications, and instead created their own simplified session protocol using a few custom commands to establish connections between an “initiator” and a “responder.” ... When the session is established and with the stations synchronized, standard RTP MDI payload messages can be exchanged. Each message contains a timestamp, and if a station receives a message with a timestamp in the future, it should wait until that time to perform the requested answer.  Apple’s simple, LAN-oriented approach to transmitting MIDI has been implemented in a number of products, and the Apple Network MIDI protocol is also available on Windows platforms, thanks to a German developer, Tobias Erichsen, who created software that allows Windows machines to send MIDI message to or from other Windows, Mac OS X, iOS, and embedded computers."


John

--
Contact support anytime: sup...@figure53.com
Follow Figure 53 on Twitter: http://twitter.com/Figure53
---
You received this message because you are subscribed to a topic in the Google Groups "QLab" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/qlab/LBBfj4hyJwc/unsubscribe.
To unsubscribe from this group and all its topics, send an email to qlab+uns...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/qlab/647F7089-B692-4569-AA76-8C87AE987865%40Maik-Waschfeld.de.
For more options, visit https://groups.google.com/d/optout.

-- 
++
www.controlgeek.net
www.johnhuntington.photography

Chris Ashworth

unread,
Jul 8, 2017, 5:25:01 PM7/8/17
to John Huntington, ql...@googlegroups.com
The only (very minor) detail I can contribute is our experience sending MTC over a network with, as I recall, Apple Network MIDI.  This was a number of years back now, but at the time the implementation was doing some buffering and thus sending bundles of MTC messages all at once, which ruined the MTC.  This may have changed since then, but at the time it meant network MIDI wasn’t suitable for MTC with that particular implementation. Something to watch out for, perhaps.

-C

John Huntington

unread,
Jul 8, 2017, 6:33:49 PM7/8/17
to ql...@googlegroups.com

Interesting, thanks!

John

JB

unread,
Jul 10, 2017, 3:52:25 AM7/10/17
to QLab
Hi John,

I decided to use ipMIDI for my MIDI over ethernet needs. Mostly because I don't need to set up a connection (create a session) between all the devices when I switch them on, as I would have to do with Apple Network MIDI/RTP MIDI. ipMIDI simply sends raw MIDI data as Multicast UDP messages, one UDP port per virtual MIDI port. All other devices in the network can then receive the messages on their own virtual MIDI ports. So basically everything is set up and working when the devices start up without having go to the Audio-Midi-Setup utility in macOS and establish a connection to each device first, as with Apple/RTP. I haven't yet found a way to automate that procedure. Also, with ipMIDI, when a device is physically disconnected from the network, the device starts receiving and sending MIDI again as soon as it is reconnected. So no need to do any reconnecting on the software side.

Another plus for ipMIDI is that it is very easy to use it with Arduinos etc. I can just send/receive UDP packages on the specified ports and treat them as MIDI data. I used ipMIDI to display MTC on an OLED display this way and did not have any problems. It doesn't seem that MIDI messages are buffered or otherwise messed up when transmitted via ipMIDI.

At the moment I can not see any obvious benefits in using Apple Network MIDI/RTP. Maybe somebody else can see a reason when and why it could be the better protocol to use?

The only time I would use Apple Network MIDI/RTP at this time is when iOS devices are involved, as this is the protocol that's implemented in iOS out of the box.

Jens

Maik Waschfeld

unread,
Jul 10, 2017, 6:43:05 AM7/10/17
to ql...@googlegroups.com
HI John,

My understanding is that they are related but not the same. 

Yes, that's correct!
Somehow I forgot, that Apple did „it’s own thing" on that, too.

Is there a „native“, non-Apple rtpMIDI-driver/-application for macOS?

John Huntington

unread,
Jul 11, 2017, 9:51:07 PM7/11/17
to QLab
Thanks for the info!

John

Raymond Soly

unread,
Jul 15, 2017, 7:43:03 PM7/15/17
to QLab
HI John, FWIW we're totally committed to the A&H "TCP midi driver" app that can be used with ilives, GLD and Dlives, I've personally not used a physical midi interface in the last 7 years to communicate to and fro my consoles…..it,s mac OS X only if i remember ……just wish other manufacturers would implement on their own consoles...


Ray

Alexander Taylor (Mailing List)

unread,
Jul 15, 2017, 11:31:33 PM7/15/17
to ql...@googlegroups.com
I’ve found the A&H TCP MIDI app to be somewhat problematic - not as in drops the connection, but if the console (iDR for the iLive in my case) is restarted or loses the connection to the computer for some other reason, it won’t reconnect automatically or notify the user there’s any problem.  Have you found a way to automatically reconnect?

For that reason, I may end up moving to a BomeBox connected to the iDR directly with MIDI.  Once they ship the OSC support for it, I could just have QLab send it OSC and not have to worry about MIDI at all.

Alexander

-- 
Contact support anytime: sup...@figure53.com
Follow Figure 53 on Twitter: http://twitter.com/Figure53
--- 
You received this message because you are subscribed to the Google Groups "QLab" group.
To unsubscribe from this group and stop receiving emails from it, send an email to qlab+uns...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/qlab/5314b30e-231c-4bcc-a051-0fa92903003c%40googlegroups.com.

John Huntington

unread,
Jul 16, 2017, 5:56:43 PM7/16/17
to QLab
Interesting, thanks!

John

André Fiedler

unread,
Sep 25, 2023, 3:10:33 AM9/25/23
to QLab
Hi,

I came across this discussion when looking for the best MIDI over Ethernet protocol to use.
Is there any difference regarding timings / package transmitting time / handling of IP packages between ipMIDI, rtpMIDI/AppleMIDI ?

I assume ipMIDI is faster - because it's "just" a UDP broadcast and nothing more? So the devices have not much "work" to transmit/receive the packages and the switches also have nothing really to "look up" when directing the traffic. But it's just my assumption.

greetings,
André

John Huntington

unread,
Sep 26, 2023, 11:06:01 AM9/26/23
to QLab
I don't have an answer and don't really even know how to measure anything that fast (I doubt I would trust timestamps in wireshark at that kind of precision), but I'd say if you're doing anything with that kind of critical timing, MIDI is not likely the best solution.  Of course MIDI was designed before Ethernet took over our world and ran on hardware at the incredibly (by today's standards) slow rate of 31250 bits per second.  It was never really built with network transmission in mind, the way something like AVB/TSN/Milan was.  

And it's funny, that post is so old that I have now taken that book out of print (and replaced it with two others) and left the details of MIDI to the internet. :-)

John
Reply all
Reply to author
Forward
0 new messages