libsmf (library for handling MIDI files)

LibSMF is a BSD-licensed C library for handling standard MIDI ("*.mid")
files. It transparently handles conversions between time and pulses,
tempo map handling etc. Full API documentation and examples are included.