UniMIDI
Summary
Platform independent realtime MIDI input and output for Ruby.
Features
-
Supports Linux, JRuby, OSX, Windows and Cygwin
-
Both input and output to and from multiple devices concurrently
-
Agnostically handle different MIDI and SysEx Message types
Requirements
Ruby 1.9.2 or JRuby 1.6.1 are strongly recommended
One of the following libraries is required based on what platform is being used. It should install automatically when you install the unimidi gem
Platform
-
JRuby: midi-jruby
-
Linux: alsa-rawmidi
-
OSX: ffi-coremidi
-
Windows/Cygwin: midi-winmm
Install
gem install unimidi
No compilation required
Examples
Tests
-
please see test/config.rb before running tests
Documentation
If you are using JRuby
A couple of notes
-
You must be in 1.9 mode. This is normally accomplished by passing –1.9 to JRuby at the command line. For testing in 1.9 mode, use
jruby --1.9 -S rake test
-
javax.sound has some documented issues with SysEx messages in some versions OSX Snow Leopard which do affect this library.
Author
Ari Russo <ari.russo at gmail.com>
License
Apache 2.0, See the file LICENSE
Copyright © 2010-2011 Ari Russo