Crate nodi[−][src]
Expand description
This crate provides types and functions for abstracting MIDI files.
This crate works alongside with the midly and midir crates. However you can implement your own Connection, instead of using midir.
A Basic Workflow
- Use midly to parse a MIDI file.
- Create a Ticker from the
header. - Create a Sheet from the parsed tracks.
- Initialize a MIDI connection using midir.
- Create a Player from the connection and the timer.
- Play the sheet using the player.
Examples
Check out /examples/play_midi.rs for a basic midi player.
For a little more complicated example please check out the source code of plmidi for an implementation.
Crate Features
No feature is enabled by default.
midir: Adds implementations of Connection for midir::MidiOutputConnection.
Structs
An iterator over bars in a MIDI Sheet.
A Timer with a fixed tempo.
Represents a MIDI message. An instance of this type can sometimes be converted from a TrackEventKind with the TryFrom trait. This type can be fed to a synthesizer.
A type that can play Sheets.
Holds every moment in a MIDI track, each moment representing a MIDI tick.
Implements a Metrical Timer.
An error that might arise while converting Timing to a Ticker or FixedTempo.