[ Home Page ] [ Eiffel Archive ] [ Eiffel Classes and Clusters ]

Arc de Triomphe clipart (2486 bytes)

MIDI-Eiffel Library

Written by Mike Durian.

midi-eiffel-1_1.tgz (32,629 bytes) source code

ftp://ftp.boogie.com/pub/midi latest version location (Mikes place)


Midi-eiffel is a Eiffel library (SmallEiffel) designed to facilitate writing MIDI applications. It is loosely based on an earlier toolkit I wrote called tclmidi. I have also included same sample applications:

minfo - a tool for printing MIDI files in human readable format
mcollapse - a tool for converting multi-track files to single-track
mexpand - a tool for converting single-track files to multi-track
Version 1.1 of this package adds no new features or bug fixes (none have been reported from the 1.0 release, which isn't to say they aren't there). It is just an update to match the latest SmallEiffel compiler (version -0.77b2 at the time of this writing).

You will find the midi-eiffel library code in the lib directory. The sample applications are in the src directory. Be sure to compile with the -case_insensitive option to quiet lots of warnings. You'll probably want to use -boost too. All the default assertion checks make the applications run *very* slowly. If you want, you can use the Makefiles I've included to build the applications. Be sure to change EPATH to the correct value for your SmallEiffel installation. You might want to modify the EFLAGS value too.

This library is covered under a modified BSD license, clauses 3 and 4 requiring advertising acknowledgements have been removed. You should be able to use this code in any way you wish - even commercially.

Please let me know of any bugs, problems or feature requests. Positive feedback is always nice too.

You can get the latest version of this package at



The problem with SmallEiffel release -0.78 and -0.77b1 that kept midi-eiffel from compiling have been fixed in -0.77b2. Please use version -0.77b2 or newer.

The SmallEiffel web site is:

September 6, 1999

[ Home Page ] [ Eiffel Archive ] [ Eiffel Classes and Clusters ]