abc2mma

abc2mma is a Perl script that attempts to read ABC music notation containing chords and produces MMA output.

I wrote this program to generate jazz backing tracks easily from ABC notation. I'm a classical guitarist currently trying to learn jazz. The variant of ABC I use is abcm2ps.


Features

Free for personal and non-commercial use.


Download

Current version - abc2mma 0.51 beta (zip file)


Usage

    abc2mma.pl <abcfile.abc | abcfile.txt> [options]
    output filename is in the form: <abcfile><N><suffix>.mma
 
  - default=<abcfile><N>_mma.mma
    - the _mma suffix is added to avoid name collision with
      abc2midi ouput
    - N is the song reference number (X:) in the ABC file
Options:
-o or -output=<mmafile>
    - output to <mmafile>.mma (overrides -songref and -suffix)
-songref=<yes|no>
    - sets whether to use the song reference number in outfile filename
      also affects the MIDI filename in the MIDIinc line
      (default=yes)
-suffix=<suffix>
    - appends suffix to filename (default=_mma)
-writefile=<yes|no>
    - generates file (overrides -outfile) (default=yes)
-includemidi=<yes|no>
    - inserts MIDIinc command to include <abcfile>.mid (default=yes)
-groove=<mma_groove>
    - sets Groove (default=Folk)
-swingmode=<yes|no>
    - sets SwingMode (default=yes)
-tempo=<t>
    - sets tempo (default=80);

Frequently Asked Questions

  1. How do I insert MMA commands?

    Use "%%X-MMA <mma command>" to directly insert MMA commands at the appropriate sections in the file (note: must be on a separate line). Please refer to the included demo.abc for examples.
  2. The included melody (from abc2midi) and the chords accompaniment are not aligned! The music has a pick-up measure.

    Insert the "BeatAdjust" MMA command with the appropriate number of beats to offset after the pick-up measure. Please refer to the included demo.abc for examples.
  3. I get a run-time error with ABC files containing the "%%MIDI program" command.

    Please download the latest version of MMA.

Notes / Disclaimers


Change Log


To Do


Contact

Send your comments, bugs, requests to: gek<remove this>siong AT <remove this - no spam!>yahoo DOT com  


abc2mma and the contents of this page are copyright (c) Gek S. Low, 2006