Access the Apple Core MIDI framework API with Ruby.
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 and has a similar API.
- Simplified API
- Input and output on multiple devices concurrently
- Generalized handling of different MIDI Message types (including SysEx)
- Timestamped input events
- Patch MIDI via software 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)
Thank you to Jeremy Voorhis for some useful debugging.
Thank you to Javier Sánchez Yeste for a nice thread locking improvement.
Apache 2.0, See the file LICENSE
Copyright (c) 2011-2022 Ari Russo