A command line MIDI player.
First add my bucket to scoop:\
scoop bucket add insomnia https://github.com/inssomnimus/scoop-bucket
Update scoop:\
scoop update
Install the app:\
scoop install plmidi
Grab a binary for your platform from the releases page.
You can choose a different audio backend using one of the following feature flags:
--features=jack
: Use the Jack backend.--features=winrt
: Use the WinRT backend. Note that currently WinRT does not recognize OmniMidi or Virtual Midi Synth so I wouldn't recommend it.--features=fluid
: Enable fluidlite as a built-in MIDI synthesizer (requires libfluidlite and pkg-config to be present on your system).--features=fluid-bundled
: Enable fluidlite as a built-in MIDI synthesizer; use the bundled library.You might want to build from source if, for example you wish to use the jack backend.
You need an up to date rust toolchain installed.
On *NIX systems, you also need alsa development libraries:
```sh
apt install libasound2-dev
dnf install alsa-lib-devel ```
To use the jack backend, you also need jack development libraries:
```sh
apt install libjack-jackd2-dev
dnf install jack-audio-connection-kit-devel ```
You can install from crates.io:
cargo install plmidi
Or, you can clone it:
```shell
git clone https://github.com/insomnimus/plmidi cd plmidi git checkout main cargo install --path .
jack
backend:cargo install --path . --locked --features=jack
cargo install --path . --features fluid ```
plmidi foo.mid
plmidi --device 2 foo.mid
plmidi --fluidsynth ~/soundfonts/some-soundfont.sf2 foo.mid