Files
orx/orx-midi
2020-11-12 17:28:56 +01:00
..

orx-midi

Basic MIDI support for keyboards and controllers. Send and receive note and control change events.

Orx-midi is a wrapper around javax.midi.

Usage


// -- list all midi devices
MidiDeviceDescription.list().forEach {
    println("${it.name}, ${it.vendor} r:${it.receive} t:${it.transmit}")
}

// -- open a midi controller and listen for control changes
val dev = MidiTransceiver.fromDeviceVendor("BCR2000 [hw:2,0,0]", "ALSA (http://www.alsa-project.org)")
dev.controlChanged.listen {
    println("${it.channel} ${it.control} ${it.value}")
}

// or program changes
dev.programChange.listen {
    println("${it.channel} ${it.program}")
}

Further reading

The OPENRNDR guide has a section on orx-midi that provides step-by-step documentation for using orx-midi in combination with OPENRNDR.