niMIDI
MIDI file parser in Nim, for Nim
Summary
| Latest Version | 0.1.1 |
|---|---|
| License | MIT |
| CI Status | Failing |
| Downloads | 0 |
| Last Indexed | 2026-07-21 05:26 |
Tags
Authors
- Mycsina
Installation
nimble install niMIDI
choosenim install niMIDI
git clone https://github.com/Mycsina/NiMIDI
OS Compatibility
| Platform | Linux | macOS | Windows | FreeBSD | OpenBSD | NetBSD | Android | iOS | WASM | Embedded |
|---|---|---|---|---|---|---|---|---|---|---|
| niMIDI | ✓ | ✓ | ✓ | - | - | - | - | - | - | - |
Dependencies
| Package | Version | Optional |
|---|---|---|
| nim >= | 2.0.0 | No |
Source
| Repository | https://github.com/Mycsina/NiMIDI |
|---|---|
| Homepage | https://github.com/Mycsina/NiMIDI |
| Registry Source | nimble_official |
README
niMIDI is a library for parsing and writing MIDI files. Very much a work in progress, so function names and types are subject to change.
Installation
nimble install niMIDI
Usage
import niMIDI
let midi = parseFile("test.mid")
echo midi.header
(length: 6, format: ConcurrentTrack, tracks: 5, division: Metrical, ticks: 480, negativeSMPTE: 0)
writeMIDI("test.mid", midi)
TODO
- [ ] Add support for sysex messages
- [ ] Fix visibility macros
- [ ] Make it easier to manipulate the parsed MIDI data