A full example

  Man page



  GPG Key



ABCMusiEx (ABC Music Sight Reading Exercises Generator) is a simple open software useful to create music score sight reading exercises. Download and install this software. Create your exercises. Print your musical scores. Start practicing with your instrument: Read and play while the audio parts are being played!

Main sourceforge.net page: http://sourceforge.net/projects/abcmusiex/
Downloads: http://sourceforge.net/project/showfiles.php?group_id=146703


Based upon ABC Music Notation Standards, the executable generates an ABC file, which is converted to printable PS or PDF files. WAV and MP3 are also created to allow student play the exercises on a audio player (CD, PC) while he plays the printed exercises on his own instrument.

Output is highly configurable: allows triplets, rests, dotted notes, note ranges, notes dispersion (on some instruments very distant notes are difficult to follow), score keys, clefs, different times and metrics (4/4, 6/8, you say), random flats/sharps, ligados(ties)... Programmed in GNU C. Runs on Windows and Linux.

Shoud be portable to other platforms: Unix, OsX, Windows, Solaris, BSD...

Running abcmusiex

Start the graphical interface, as follows:

Then, you can start working!

Usage with the command line

Using the command line gives access to far more options, and the graphical interface uses just some of them. The generation process scopes 8 stages, as follows:

> abcmusiex --stage 6 
	 .ABC file (stage 0)
	 .MID file (stage 1)
	 .PS  file (stage 2)
	 Show .PS file with evince (stage 3)
	 Plays .MID file with timidity(stage 4, default)
	 .WAV file (stage 5, neither show nor play)
	 .MP3 file (stage 6)
	 .PDF file (stage 7)

On this example screenshot you can see all generated files with a very simple command.

Next, some examples. You can combine all options you want on a single line

Viewing help:
> abcmusiex
The simplest option, generates 5 bars of a simple reading exercise:
> abcmusiex -n 5
The generated graphic output:

Generation of an 8ths exercise (1 is 1/2s, 2 is 4ts(default), 3 is 8ts, 4 is 16ths) with an 85 tempo:
> abcmusiex -l 3 -t 85
An exercise in Db key over F clef:
> abcmusiex -k Db -c F
Adding title, author, final comments:
> abcmusiex -T "C Key Exercise 1" -C "ABCMusiEx generator" -W "This is easy..."
More options, this torture never stops...
> abcmusiex --triplets --dots --rests --sharps --flats --legato
A compound command and its PDF graphic output (only 1st system):
> abcmusiex -k Db -c F -T "Db Key Exercise 1" -l 4 --dots --legato -n 50 -t 95

(output follows...)


A) RPM FILE (works fine on Fedora, Suse)

This is the easyest method. You just download the RPM package and:

# rpm -ivh abcmusiex-0.9-4.i386.rpm
Or, in Fedora,
# yum localinstall abcmusiex-0.9-4.i386.rpm

If you downloaded a tar file, untar it with
# tar xvfz abcmusiex-0.9.tz
# cd abcmusiex-0.9
# ./configure
# make
# make install
test it with
# abcmusiex --version
Maybe you need some other packages, and you must download them, in case your distro doesn't include'em.

See http://abcplus.sourceforge.net for any missing package.

You need this executables on your path:
  • abc2midi (http://abc.sourceforge.net/abcMIDI/)
  • abc2abc (http://abc.sourceforge.net/abcMIDI/)

  • mplayer (on most distros is installed by default)
  • timidity++ (on most distros is installed by default)
  • lame (needed only if you want to generate a MP3 file; use --stage 6)
  • ps2pdf (needed only if you want to generate a PDF file; use --stage 7)


    Just copy executables (abc2midi, abc2abc) to a bin directory on you path, say /usr/bin/local/ and make them executable with chmod.
    > cp abc* /usr/bin/local
    > chmod 755 /usr/bin/local/abc*

    I tried this experimental compilation on Windows, and seems to work.

    You need:

  • Ghostscript (http://sourceforge.net/projects/ghostscript/)

    1) Just unpack this directory (I assume you already did it) on an accesible dir, say C:\abcmusiex
    2) Install Ghostscript
    3) Run a shell (a DOS shell): Start/AllPrograms/Accessories/CommandLine or something like that.
    4) Try a simple generation:
    The program will generate a lot of lines, and then stop. A lot of exercise files are to be generated:
    C:\abcmusiex>dir exercise.*
     El volumen de la unidad C no tiene etiqueta.
     El numero de serie del volumen es: 9C73-A94C
     Directorio de C:\abcmusiex
    27/08/2005  16:18             1.181 exercise.abc
    27/08/2005  16:18             3.142 exercise.mid
    27/08/2005  16:18         1.945.296 exercise.mp3
    27/08/2005  16:18            11.640 exercise.pdf
    27/08/2005  16:18            22.491 exercise.ps
    27/08/2005  16:18        20.735.772 exercise.wav
                   6 archivos     22.719.522 bytes
                   0 dirs   3.703.726.080 bytes libres
    Thats it. Everything is working. If something is not working, see the program output, is really simple.

    I compiled the program on windows correcting the timidity command line and using Dev-C++. No problemo.

    Release notes

    Notes on fourth release 0.9

    - Fixes: A couple of bugs
    - Uses evince instead of acroread, timidity as player, not needed wav or mp3 files for exercises starting
    - Faster generation and action
    - Fedora 8 ready, avoid many dependences, rpm process generation improved
    - Stages generation improved
    - Pulseaudio not fixed in timidity, but abcmusiex now working fine with default device.

    Notes on third release 0.8-2:

    - Third release signed 0.8-2
    - Sharps and flats generation;
    - Ties (legatos) generation.

    Notes on second release 0.8:

    - Second release signed 0.8

    Just some very useful fixes:
    - Controlling generation stages;
    - Updated documentation and manpage;
    - Better generation tools;
    - Metronom optional;
    - Randomizer bug fixed;
    - Dispersion fixed;
    - Interface standardization.

    Notes on first release 0.7-1:

    - This release is created on C so then it can be appended with some open code from other abc suite software.
    - Must have bugs. Just tested with some examples.
    - Code does not validate any parameter entry.
    - The program make some shell calls to other abc software, xpdf viewer and audio converters.
    - The program just generates an abc file which then is converted to many formats. It is really simple.

    Thanks to ABC standard writers and ABCPlus codemakers. Thanks to SourceForge, as always. If you have any doubt or wanna help me improve this work, just drop me a line.

    Rodolfo Alcazar Portillo, rodolfoap@gmail.com

    ABCMusiEx 2005, 2006, 2007
    ABCMusiex... Sight music reading easy!