npm install midi-file-parser
The midi file parsing parts of jasmid
Special thanks to the authors.
Its just a function that takes a binary string.
var midiFileParser = require('midi-file-parser');
var file = require('fs').readFileSync('rachnananov.mid', 'binary')
var midi = midiFileParser(file);
It returns an object with header and track info.
You can use it with browserify and brfs:
var midiFileParser = require('midi-file-parser');
var fs = require('fs')
var file = fs.readFileSync('rachnananov.mid', 'base46')
file = window.atob(file)
var midi = midiFileParser(file);