Map MIDI signals to commands
Find a file
zawz e61163da88 refactor: rework internal structure and add minor features
~ rework midi backend structure
+ add documentation
+ implement connect by address
+ add log_devices and log_events options
2023-09-08 15:31:16 +02:00
examples refactor: rework internal structure and add minor features 2023-09-08 15:31:16 +02:00
src refactor: rework internal structure and add minor features 2023-09-08 15:31:16 +02: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 refactor: rework internal structure and add minor features 2023-09-08 15:31:16 +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.

Performance

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

Device connection

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

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