----- Version 1.4.0 (experimental) ----- 06.12.99 added audio playback. Chords, grace notes, multiple voices, and repeats work. Note decorations are ignored. Usage: Flag -a instructs to write audio file Abc.au together with the usual postscript output. It is not possible to get the audio file alone. Flag -a implies -o. The tempo can be set with flag -Q and defaults to 100 quarter beats per minute. Thus: abc2ps -o infile - makes Postscript only abc2ps -o infile -a - makes both Abc.au and Postscript abc2ps -a infile - also writes both files abc2ps -a infile -Q 160 - does the same with tempo Q=160 To compile: you can use the supplied audio functions in sox.h (taken from playabc) or (on a Sun) use the system library. Edit Makefile to set CC, CFLAGS, and LDFLAGS appropriately then type make. The waveforms are generated on the fly, which is a bit slower than writing Postscript only. Try adding -O to CFLAGS if things work to speed up the program. 08.07.99 Improvements by Christoph Dalitz: o Source spread over several source files. Makefile added. o cap_str (util.c): system call toupper used, so that umlauts are translated as well (depends on locale) o isdigit (util.c): removed (are already in ctype.h) o isblank (util.c): replaced with isblankstr (confusion with isblank in ctype.h) o def_staff (syms.c): linewidth increased (0.6 instead of 0.5) o new clef "treble8" (modern tenor clef) ----- Version 1.3.2 ----- 10.08.98 Added new codes for accents (cf. sample.abc): k: Accent which looks like > K: Accent which looks like an upside-down V. 05.08.98 Added bar numbering and bar labels. Bar numbers: to switch on bar numbering, use flag -k where: -k 1 numbers every bar -k 5 numbers every fifth bar, etc. -k 0 numbers the first bar in every staff. or, use the equivalent pseudocomment %%barnumbers . (Note: -k was used because it sounds a bit like "count".) The program counts through the bars automatically, trying to do the right thing at first and second endings. Namely: it remembers the bar number at the start of the first ending, then resets to that value at the start of the second ending. So, if there is a tune with 2x8 measures with first and second endings after the first 8 bars, we still end up with 16 bars in total. Within one tune, bar numbers are counted through over parts boundaries. However, if a T: title appears inside a tune, the bar number is reset to 1. You can use an empty T: line to reset the bar number without actually writing a title. Bar labels: this is intended for large letters A, B, C... to mark specific points in the music. They are coded by using a syntax similar to guitarchords, but placed before a bar line instead of a note or rest, e.g.: | abcd "A"| ABCD | places the letter A over the second bar line. Just in case somebody wants a label on the first bar (which is often not preceded by a bar line), a new symbol [|] was introduced for an "invisible" bar line. Fonts for bar numbers and bar labels: These can be set in the usual way with the two pseudocomments %%barnumberfont and %%barlabelfont. In printed music, the bar numbers are often made more visible by putting a box around them. This is now also possible. In fact, a box can be put around most bits of text by adding the word "box" to the font specification, e.g.: %%barnumberfont Times-Italic 11 box This can be done for the title, guitarchords, vocals, etc. To switch on the box without changing the font style and/or size, the character * can be used, as in: %%titlefont * * box A reminder: to see all the style specifications use 'abc2ps -H' (for the standard format) or 'abc2ps -PH' (pretty2 format). This gives a list suitable for placing in a .fmt file. To modify settings for a single tune only, place the pseudocomments after the 'T:' lines and before the 'K:' line in the tune header. Examples: look at celloprelude.abc for examples of bar numbers and bar labels. Try 'abc2ps -maxv 8 -k0 bran5' or 'abc2ps -k0 bach' to see bar numbers at the start of the line, as is often used for scores. 20.07.98 Fixed bug overwriting when lvoiceid too short. ----- Version 1.3.1 ----- 12.07.98 A number of enhancements to format multi-stave music nicely. For examples, see files trio.abc bran5.abc voices.abc bach.abc. In detail: indentation of the first staff, labels for voices, braces and brackets to group voices, and some additional parameters in the V: line to control the output. As before, the syntax of the V: line is V: