Pass MIDI input out as OSC messages
A minimal implementation of a simple application taking input from a MIDI device, converting those to the OSC protocol and sending it out over UDP.
Idea based on MidiOSC.
midioscar will convert MIDI input into an OSC message with the address: /midi/[Device name]/[Channel]
.
The arguments will be:
- A stringified name for the action
- The first argument as an 32-bit int
- The second argument as an 32-bit int
It can take in multiple MIDI devices and push out to multiple OSC receivers.
This little tool was used in the opera play "Einstein On The Beach" by Phil Glass and Robert Wilson at the Oper Dortmund. This work is sponsored by rrbone and released as open-source.
Required dependencies:
portmidi
- and probably some audio lib. If you are using ALSA, you should be good to go
cargo build --release
midioscar list
Taking input from MIDI device with ID 3.
Pushing UDP messages to 127.0.0.1:6001
midioscar serve -i 3 -h 127.0.0.1:6001
The options for inputs (-i / --input
) and target hosts (-h / --host
) can be repeated multiple times.
This work is sponsored by rrbone and released as open-source work.
MIT License. See LICENSE.