mmj - Midi for java on Mac OS X

humatic - htools

First things first: You probably don't need this library anymore!

Java for Mac OS X 10.6 Update 1 (Dec.3rd 2009) changes things in terms of JVM midi support. With this update the world's most advanced operating system does not need a third party Midi service provider like mmj for javax.sound.midi to access hardware anymore. Here is Apple's release notes, see Radar #3261490 under JavaSound.


Second: You may still want it, though
Apple's java Midi implementation appears a bit half-hearted. It does not consider MIDI data with status bytes >= 0xF0 to be valid (i.e. does not work with sysex, MIDI clock, timecode etc.), ignores timestamps on Midi events, device names will default to only the port's name (without hints on the device this port belongs to) and there may be other things missing alike.


Third: You might even need it
If your OS version is not supported by the update you still need a service provider to access Midi hardware. (Yes, deploying a java application has just become even more fun).



However, humatic will use this occassion to finally close the mmj chapter. It has been a pleasure, supporting a lot of interesting applications. Here is the last mmj version, 32 and 64 bit java compatible and updated once more to enable peaceful coexistence with Apple's implementation. This will remain to be available, but do not expect any more updates. We are now taking the last Mac to the dumpster...
New MIDI over LAN library for Java available now




download mmj (0_93 version)

Creative Commons License

Released under a Creative Commons license and free for use in non-commercial applications under CC terms.
nmj provides multicast and RTP MIDI functionality for Android™ and desktop Java

browse mmj javadocs



humatic - htools Apple, Mac, Mac OS X and CoreMIDI are trademarks of Apple Computer Inc.
Java is a Trademark of Oracle Inc.