rtmidi/in
src/rtmidi/in.tur
defn
midi-in-open
(midi-in-open [mi : MidiIn i : int name : cstr] :)
open a physical MIDI input port by index.
Parameters
| mi | MIDI input handle (ok-val of the midi-in-new result) | |
| i | port index (0-based, must be < midi-in-port-count) | |
| name | client name to register with the system |
Returns
(Result int int) -- ok carries 0; err carries an integer status code (1 when the underlying RtMidi handle's `ok` flag is false after the open call).
Example
(let [r (midi-in-open mi 0 "Turmeric In")]
(if (ok? r) ... (println "open failed")))
Since: RM0
defn
midi-in-open-virtual
(midi-in-open-virtual [mi : MidiIn name : cstr] :)
open a virtual MIDI input port.
Parameters
| mi | MIDI input handle (ok-val of the midi-in-new result) | |
| name | name for the virtual port |
Returns
(Result int int) -- ok carries 0; err carries an integer status code (1 when the open call left the handle's `ok` flag false).
Example
(let [r (midi-in-open-virtual mi "My Virtual In")]
(if (ok? r) ... (println "virtual open failed")))
Since: RM0
defn
midi-in-close
(midi-in-close [mi : MidiIn] :)
close the currently open MIDI input port.
Parameters
| mi | MIDI input handle (ok-val of the midi-in-new result) |
Returns
void
Example
(midi-in-close mi)
Since: RM0
defn
midi-in-set-callback
(midi-in-set-callback)
register a callback to receive incoming MIDI messages.
Parameters
| mi | MIDI input handle (ok-val of the midi-in-new result) | |
| callback | captureless C-ABI callback of shape | |
| `void (*)(double timeStamp, const unsigned char *msg, | ||
| size_t nbytes, void *user)` -- spelled | ||
| `(c-fn [float ptr<const-u8> usize ptr<void>] void)` |
Returns
void
Example
(midi-in-set-callback mi my-midi-handler)
Since: RM0
defn
midi-in-cancel-callback
(midi-in-cancel-callback [mi : MidiIn] :)
remove the previously registered MIDI input callback.
Parameters
| mi | MIDI input handle (ok-val of the midi-in-new result) |
Returns
void
Example
(midi-in-cancel-callback mi)
Since: RM0
defn
midi-in-ignore-types
(midi-in-ignore-types [mi : MidiIn sysex : bool timing : bool active-sense : bool] :)
configure which MIDI message types to ignore.
Parameters
| mi | MIDI input handle (ok-val of the midi-in-new result) | |
| sysex | if true, suppress SysEx messages | |
| timing | if true, suppress MIDI timing clock messages | |
| active-sense | if true, suppress Active Sensing messages |
Returns
void
Example
(midi-in-ignore-types mi true true true)
Since: RM0