MyJazzBand 2 Lite - OCaml

31 May 2007

Here is the new release of MyJazzBand 2 Lite (MJB2Lite), rewritten in OCaml!

I’m happy to announce the release of MJB2Lite-OCaml, the OCaml version of MyJazzBand 2 Lite. Compared to the one in Python I released a few weeks ago, this new version is even better designed and written :-): it is, afterall, a revision of a revision! And it runs at least ten times faster. Since profiling and optimization were performed on the Python version during its implementation to make it quite efficient, the difference between the two versions is currently quite minimal to a user. But all future development of “the MJB2 series of software tools” will continue from this OCaml version. And as my harmonic analysis algorithms increase in complexity, its benefits will no doubt become more apparent.

MJB2Lite-OCaml takes chord charts of jazz tunes as input in a simple text format or the Band-in-a-Box file format and generates MIDI files of accompaniments consisting of a walking bassline and comping piano and drums for them. MJB2Lite-OCaml performs harmonic analysis on the chords and models chords and scales in detail. Its design and implementation make it easy to experiment with the use of different automatic composition algorithms in it. Due to these factors, its output sounds better and is more realistic than any competing systems currently available: commercial products and research implementations included. I welcome head-to-head comparisons :-).

So here are the downloads:

If you have questions and comments about MJB2Lite-OCaml, please use the MJB2Lite forum on my bulletin board or send them to me.

Enjoy the program!

Category: Jazz, Programming