Files
craft-libs/crates/midi/Cargo.toml
Dylan M. Taylor c684e6a759 Add craft-midi: Standard MIDI File reader and writer from SoundCraft (#884)
read_smf (formats 0 and 1, format 2 best effort) and write_smf (format 1,
960 PPQ) with the model they read into: Note, CtrlEvent, CtrlKind and
Sequence, in ticks at 960 per quarter note. serde on the model types is
behind the `serde` feature.

Moved from soundcraft crates/midi at 17d3f007: smf.rs, sequence.rs, the
error type, the SMF tests and the Sequence tests. The editing operations
(quantize, transpose, ...) and the display names stay in SoundCraft. Adds
a test for the MAX_TRACKS limit, which had none.
2026-11-11 16:41:11 -05:00

24 lines
630 B
TOML

[package]
name = "craft-midi"
description = "MIDI file formats: Standard MIDI File (SMF 0/1/2) reader and format-1 writer over a neutral note and controller model, bounded on hostile input"
version.workspace = true
edition.workspace = true
license.workspace = true
rust-version.workspace = true
repository.workspace = true
[lints]
workspace = true
[features]
# Serialize / Deserialize on the model types (Note, CtrlEvent, CtrlKind, Sequence).
serde = ["dep:serde"]
[dependencies]
serde = { workspace = true, optional = true }
thiserror.workspace = true
[dev-dependencies]
proptest.workspace = true
serde_json.workspace = true