Map MIDI signals to commands
Find a file
2024-12-30 16:10:30 +01:00
.vscode feat(dev): add vscode launch config 2023-09-08 15:36:14 +02:00
examples chore: apply format 2024-12-30 16:10:30 +01:00
src chore: apply format 2024-12-30 16:10:30 +01:00
.gitignore init 2023-08-07 21:50:22 +02:00
Cargo.toml fix: program stuck in infinite loop on config error 2023-08-28 16:12:37 +02:00
FORMAT.md refactor: rework internal structure and add minor features 2023-09-08 15:31:16 +02:00
README.md doc: updat readme 2023-09-08 15:32:23 +02:00

rmidimap

Map MIDI signals to command with a simple yaml file.

See format and examples.

Usage

Simply execute rmidimap <FILE> to start with the desired map file.

Features

MIDI backends

Only Linux+ALSA currently.

Device connection

Connect to devices by name, regex or address, and run commands on connect or disconnect.

MIDI Event mapping

Define commands to execute on certain MIDI events

Performance

rmidimap runs with very low processing overhead. Processing overhead was measured at 100-200µs, while execution spawning was measured to 1-4ms.

Command queue and interval

With the parameters queue_length and interval, you can limit event throughput to reduce system load associated with the command being run.

Building from source

You need rustc and cargo to build the project.

Steps:

  • Clone this repository
  • cargo build -r
  • sudo mv target/release/rmidimap /usr/local/bin/rmidimap