All Projects → arirusso → Unimidi

arirusso / Unimidi

Licence: other
Realtime MIDI IO for Ruby

Programming Languages

ruby
36898 projects - #4 most used programming language

Projects that are alternatives of or similar to Unimidi

Klystrack
A chiptune tracker
Stars: ✭ 321 (+40.17%)
Mutual labels:  music, synthesizer, osx
Supriya
A Python API for SuperCollider
Stars: ✭ 167 (-27.07%)
Mutual labels:  music, synthesizer, synthesis
Awesome Music Production
A curated list of software, services and resources to create and distribute music.
Stars: ✭ 340 (+48.47%)
Mutual labels:  music, midi, synthesizer
Daisysp
A Powerful, Open Source DSP Library in C++
Stars: ✭ 291 (+27.07%)
Mutual labels:  hardware, music, synthesizer
Sonic Pi
Code. Music. Live.
Stars: ✭ 8,736 (+3714.85%)
Mutual labels:  music, synthesizer, synthesis
Dx7 Supercollider
My accurate Yamaha DX-7 clone. Programmed in Supercollider.
Stars: ✭ 395 (+72.49%)
Mutual labels:  music, synthesizer, synthesis
Romplayer
AudioKit Sample Player (ROM Player) - EXS24, Sound Font, Wave Player
Stars: ✭ 445 (+94.32%)
Mutual labels:  music, midi, synthesizer
Zynaddsubfx
ZynAddSubFX open source synthesizer
Stars: ✭ 554 (+141.92%)
Mutual labels:  music, synthesizer, alsa
Shadowmusic
A temporal music synthesizer
Stars: ✭ 28 (-87.77%)
Mutual labels:  music, synthesizer, synthesis
Webaudiofont
Use full GM set of musical instruments to play MIDI and single sounds or effects. Support for reverberation and equaliser. No plugins, no Flash. Pure HTML5 implementation compatible with desktop and mobile browser. See live examples.
Stars: ✭ 600 (+162.01%)
Mutual labels:  music, midi, synthesizer
Miti
miti is a musical instrument textual interface. Basically, its MIDI, but with human-readable text. 🎵
Stars: ✭ 103 (-55.02%)
Mutual labels:  music, midi, synthesizer
Audiokitsynthone
AudioKit Synth One: Open-Source iOS Synthesizer App
Stars: ✭ 1,258 (+449.34%)
Mutual labels:  music, midi, synthesizer
Granular
HTML5 Granular Synthesiser
Stars: ✭ 113 (-50.66%)
Mutual labels:  music, synthesizer, synthesis
Musaicfm
Screensaver inspired by Apple’s inbuilt iTunes Screensaver. It can display Artwork by Spotify or last.fm Profile Data.
Stars: ✭ 144 (-37.12%)
Mutual labels:  music, osx
Vna
Under development open hardware microwave vector network analyzer
Stars: ✭ 140 (-38.86%)
Mutual labels:  hardware, synthesizer
Fsynth
Web-based and pixels-based collaborative synthesizer
Stars: ✭ 146 (-36.24%)
Mutual labels:  midi, synthesizer
Openbook
Open source lilypond real book for Jazz musicians
Stars: ✭ 159 (-30.57%)
Mutual labels:  music, midi
Youtube Music
🎵 A Mac app wrapper for music.youtube.com
Stars: ✭ 2,097 (+815.72%)
Mutual labels:  music, osx
Html Midi Player
🎹 Play and display MIDI files on the web
Stars: ✭ 158 (-31%)
Mutual labels:  music, midi
Signal
A friendly music sequencer built with web technology
Stars: ✭ 166 (-27.51%)
Mutual labels:  music, midi

UniMIDI

Platform independent realtime MIDI input and output for Ruby.

Also see MicroMIDI which builds a full MIDI messaging DSL on top of this library.

Features

  • Supports Linux, JRuby, OSX, Windows and Cygwin
  • No compilation required
  • Both input and output to and from multiple devices concurrently
  • Generalized handling of different MIDI and SysEx Message types
  • (OSX Only) Use IAC to internally route MIDI to other programs

Requirements

Using Ruby 1.9.2 or JRuby 1.6.1 (or newer) is strongly recommended. JRuby should be run in 1.9 mode where applicable

UniMIDI uses one of the following libraries, depending on which platform you're using it on. The necessary library should install automatically with the unimidi gem.

Platform

Install

If you're using Bundler, add this line to your application's Gemfile:

gem "unimidi"

Otherwise...

gem install unimidi

Usage

Blog Posts

In addition, some examples are included with the library

Tests

UniMIDI includes a set of tests which assume that an output is connected to an input. You will be asked to select which input and output as the test is run.

The tests can be run using

rake test

See below for additional notes on testing with JRuby

Documentation

rdoc

Platform Specific Notes

JRuby
  • 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.
Linux
  • libasound and libasound-dev packages are required

Author

Ari Russo <ari.russo at gmail.com>

License

Apache 2.0, See the file LICENSE

Copyright (c) 2010-2017 Ari Russo

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].