This is a Ruby implementation of the Apple Core MIDI framework API.
Note that in the interest of allowing people on other platforms to utilize your code, please consider using UniMIDI. UniMIDI is a platform independent wrapper which implements this library with a similar API.
- Simpler API than Core MIDI
- Input and output on multiple devices concurrently
- Agnostically handle different MIDI Message types (including SysEx)
- Timestamped input events
- Internally patch MIDI to other programs using IAC
If you're using Bundler, add this line to your application's Gemfile:
gem "ffi-coremidi"
Otherwise
gem install ffi-coremidi
Ari Russo <ari.russo at gmail.com>
This library began with some coremidi/ffi binding code for MIDI output by Colin Harris contained in his fork of MIDIator and a blog post.
MIDIator is (c)2008 by Ben Bleything and Topher Cyll and released under the MIT license (see LICENSE.midiator and LICENSE.prp)
Also thank you to Jeremy Voorhis for some useful debugging.
Apache 2.0, See the file LICENSE
Copyright (c) 2011-2013 Ari Russo