ABC Notation of music
ABC Notation of music is a method of representing sheet music with text. There are programs that can turn a sheet-music tune into ABC Notation, and vice versa. The website (and app) notabc.app provides a nice sandbox for experimenting with ABC Notation -- note: the title of the website is "Nota ABC" but the url only has one 'a' - "notabc.app".
The Celtic Room - "The home of traditional Irish music in Indonesia" provides a good beginning guide for writing music using abc notation. Wikipedia has a comprehensive article here. There is an effort to keep ABC notation standardized and also advancing with new capabilities. A main website for this effort is ABC Notation wiki found at https://abcnotation.com
This is a very limited summary.
The objects of ABC coding are 'tunes'. For example, this tune...
... which can be represented in ABC Notation as follows:
- X:10
- T: Father O'Flynn
- T: Top of the Cork Road
- C: Trad.
- O: Ireland
- R: jig
- M: 6/8
- L: 1/8
- K: Dmaj
- |: A | dAF DFA | ded cBA | dcd efg | fdf ecA |
- | dAF DFA | ded cBA | dcd efg fdd d2 :|
ABC Notation can express simple single tunes or entire tune books. An ABC file consists of three main elements, separated by empty lines (blank lines): an optional file header, the ABC tune itself, and text annotations. The ABC tune itself has a tune header and a tune body. In its simplest form, only the tune header and tune body need to be provided in an ABC Notation file.
Some Tune Header Fields (brackets [ ] are used here only for visual organization. They are not part of the ABC Notation)
- [X:] Tune number -- e.g., for noting a tune library reference. All tunes must start with an X:, and only one X: field is allowed per tune.
- [T:] first Title -- The main title of the music. The major title is printed at the top of the music score. A Title field must immediately follow the X: field, but there can be more than one T: field - as a secondary Title or to name parts of a tune.
- [T:] second Title -- A secondary title line often used for alternative music names. The minor title is printed in small letters under the main title.
- [C:] Composer -- If the music is based on traditional tunes (i.e., no composer known) put "traditional" or "trad". The composer is printed under the titles and to the right.
- [M:] Meter -- The meter of the music such as 6/8 (e.g., a jig), 4/4 (e.g., a reel), and 3/4 (e.g., a waltz). "C|" can be used for common 4/4 time ("|" is the 'pipe' symbol and not a lower case L or upper case i).
- [L:] note Length -- The unit note length to be understood for a single letter in the tune body that follows the tune header, e.g., if "L:1/4" then "aad" will be interpreted as three quarter notes.
- [R:] Rhythm -- A particular rhythm style such as 'hornpipe', 'jig', 'reel', 'waltz', 'polka', and others. Playback programs can use this information to provide a better rhythm during playback. Of course it helps musicians interpret how to play the tune as well.
- [K:] Key -- The key that the music is in, such as 'D', 'Dmaj', and 'Edor' (E dorian). The K: field must appear in every tune, and indicates the end of the tune header. All following lines are considered part of the tune body.
- [O:] Origin -- the geographical origin of the tune. This will be printed in brackets after the "C:" Composer information.
- [D:] Discography -- a CD or LP (or other, such as a URL), where a recording of the tune can be found. This will be printed following the tune.
- [B:] Book -- a book in which the tune can be found.
- [Q:] Tempo -- Indicated in beats per minute (e.g. "Q:1/2=120" means 120 half-notes per minute).
- [Z:] Transcription -- usually used for the name(s) of the person(s) who transcribed the tune into abc code. The text will be prefaced with "Transcription:" when printed.
- [S:] Source -- circumstances under which the tune was collected.
- [I:] Instruction -- a kind of special field than has sub-elements. For example, "I:abc-charset <value>" indicates the character set in which text strings are coded; "I:abc-include <filename.abh> imports lines found in a separate abc header file (.abh).
- [H:] History -- Intended for multi-line notes, stories, or anecdotes about the tune. When using this field, reference the ABC Notation standard regarding the better way to indicate additional lines of history.
The Tune Body
Following the tune header is the tune body.
- Case-sensitive letters represent notes.
- Middle c is uppercase C, followed upward in tone by - DEFGAB.
- For the octave above middle c, there is a switch to smaller lowercase letters (maybe linked to being higher, lighter, and thereby smaller?) - cdefgab
- For the octave above that, an apostrophe is added after the note - c'd'e'f'g'a'b'
- Below middle C, the letters are followed by a comma - B,A,G,F,E,D,C,
- Each additional comma or apostrophe lowers or raises (respectively) the note by an octave
- The pipe symbol "|" is used to separate measures (also called 'bars') in a line of the tune.
Here is an example to illustrate in these points in practice:
- X:1001
- T:Main Title
- T:Secondary title or alternative names
- C:Composer
- O:Yorkshire
- M:4/4
- Q:160
- L:1/8
- R:Reel
- Z: An example to demonstrate some aspects of ABC coding
- K:C
- |A,B,CD EFGA|Bcde fgab|c'd'e'f' g'a'b'c''|
which yields (e.g. via notabc.app/abc-converter/ ):
Adjacent letters will be connected automatically as notes with a bar. A space can be added to stop the notes being joined.
The K: field will set the key, and automatically add sharps or flats as appropriate. With no Key given, the key of C is assumed, which has no sharps and flats. However with K:G, for example, the key is G and there will be one sharp - F#. ABC notation considers every note marked as a sharp or flat at the start of the tune / line that sharp or flat every subsequent time it occurs - unless modified by another notation.
To make a note sharp, place a carat ^ before the note - ^c = C#
To make a note flat place an underline _ before the note - _e = E♭
To make a note natural (i.e., to cancel out a preceding sharp or flat indicator), place an equal sign = before the note - =e returns E♭ to E.
Brackets are used to form chords, and adjacent chords will be joined with a beam - [d2f2][ce][df]
For words (lyrics), a W: followed by the words will have them placed after the tune line without particular alignment. If a lowercase 'w' is used, each syllable will be aligned with a note, a careful use of dashes can achieve a desired alignment.
- X:2
- T:Love Will You Marry Me?
- M:C|
- K:G
- |:"G"[G2D2]DE GAB2|"n"GE "v"E2 GE E2|"G"D2DE GABc|"D"dedB A2 "G"G2:|
- w:Love will you mar-ry me, mar-ry me, mar-ry me? Love, will you mar-ry me and take me out of dan-ger?
And here is what it will look like:
Comments
Post a Comment