| Crates.io | plmidi |
| lib.rs | plmidi |
| version | 0.14.2 |
| created_at | 2021-10-07 20:08:47.229427+00 |
| updated_at | 2022-06-16 19:46:25.920842+00 |
| description | Play MIDI files from the command line. |
| homepage | |
| repository | https://github.com/insomnimus/plmidi |
| max_upload_size | |
| id | 462002 |
| size | 71,959 |
A command line MIDI player with an embedded synthesizer.
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.
--features=system: Enable playback through MIDI out devices registered on the system.--features=system-jack: Same with system but uses the Jack backend.--features=winrt: Same with system except it uses 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. This feature is enabled by default.You need an up to date rust toolchain installed.
On *NIX systems, you also need alsa development libraries:
# Debian and derivatives
apt install libasound2-dev
# RHEL and derivatives
dnf install alsa-lib-devel
To use the jack backend, you also need jack development libraries:
# Debian and derivatives
apt install libjack-jackd2-dev
# RHEL and derivatives
dnf install jack-audio-connection-kit-devel
You can install from crates.io:
cargo install plmidi --features system
Or, you can clone it:
# to install after a git clone
git clone https://github.com/insomnimus/plmidi
cd plmidi
git checkout main
cargo install --path .
# To enable the system apis via the `jack` backend:
cargo install --path . --features system-jack
# To disable built-in fluidsynth support:
cargo install --path . --features system --no-default-features
plmidi foo.midsystem feature is enabled) plmidi --device 2 foo.midfluid feature is enabled) plmidi --fluidsynth ~/soundfonts/some-soundfont.sf2 foo.mid