ml2mxml is an OCaml library to generate musicxml (http://www.musicxml.com/) files.
That library was developed for two reasons:
- the lack of what 'git' offers, in music score editors,
- the hard time experienced when using the cut/copy/paste features of Guitar Pro 6 (http://www.guitar-pro.com/en/index.php).
With that library, music can be written as:
- write an OCaml program (see examples/hello_ode_of_joy.ml),
- compile/execute it (% omake ex),
- open the generated musicxml file, with for example a midi player that understands the format (see http://www.musicxml.com/software/).
Up to now, the generated files were tested with Guitar Pro 6 only. If you're experiencing problems with another musicxml reader, don't hesitate at creating issues (https://github.com/yetanotherion/ml2mxml/issues).
The library can be installed with opam (http://opam.ocaml.org/):
% opam install ml2mxml
To build from source, the following dependencies are needed
% opam install ocamlfind cow omake ounit
Then, the following omake targets are available:
- build the library:
% omake
- execute the tests:
% omake test
- generate the xml of the example:
% omake ex
- install (uninstall):
% omake install (uninstall)