use-midi 0.0.1

MIDI metadata primitives for RustUse.
Documentation
  • Coverage
  • 1.04%
    1 out of 96 items documented1 out of 36 items with examples
  • Size
  • Source code size: 25.26 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 1.58 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 2s Average build duration of successful builds.
  • all releases: 2s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • Homepage
  • RustUse/use-music
    1 0 0
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • CloudBranch

use-midi

MIDI metadata primitives for RustUse.

Experimental

use-midi is experimental while use-music remains below version 0.3.0.

Example

use use_midi::{MidiChannel, MidiMessageKind, MidiNoteNumber};

let channel = MidiChannel::new(1)?;
let note = MidiNoteNumber::new(60)?;

assert_eq!(channel.value(), 1);
assert_eq!(note.value(), 60);
assert_eq!(MidiMessageKind::NoteOn.as_str(), "note-on");
# Ok::<(), use_midi::MidiError>(())

Scope

  • MIDI versions, channels, note numbers, velocities, controller numbers, program numbers, message kinds, event kinds, device labels, port names, profiles, properties, and UMP labels.
  • MIDI 2.0 metadata labels such as UMP, profiles, per-note expression, and property exchange.

Relationship to use-acoustics

use-midi models protocol metadata only. use-acoustics owns physical sound calculations and use-wave owns wave primitives.

Non-goals

  • Opening MIDI ports, sending or receiving MIDI messages, depending on MIDI device libraries, playback, sequencing, or synthesis.

License

Licensed under either Apache-2.0 or MIT.