Crates.io | nodi |
lib.rs | nodi |
version | 1.0.0 |
source | src |
created_at | 2021-09-06 20:44:00.051137 |
updated_at | 2024-01-07 12:10:44.145053 |
description | A library for playback and abstraction of MIDI files. |
homepage | |
repository | https://github.com/insomnimus/nodi |
max_upload_size | |
id | 447695 |
size | 55,902 |
Nodi provides types and functions for playback and abstraction of MIDI files.
This crate works alongside the midly and midir crates. However you can implement your own MIDI player, instead of relying on midir.
Check out /examples/play_midi.rs
for a basic midi player.
I started developping this crate because I needed the features it now offers. Here are some real-world examples of nodi in action:
Features enabled by default:
hybrid-sleep
: A more accurate sleep, mixing regular sleep with spin locking efficiently. With this feature enabled the default implementations of timers in this crate will use this. Highly recommended for Windows users but it may also increase timing on other platforms.Optional features:
midir
: Adds implementations of Connection
for midir::MidiOutputConnection
.midir-jack
: Same with midir
but uses the Jack backend.midir-winrt
: Same with midir
but uses the WinRT backend.