User:Halftheisland/ABC

From Just Solve the File Format Problem
Jump to: navigation, search
File Format
Name Halftheisland/ABC
Ontology
Extension(s) .abc
MIME Type(s) text/vnd.abc
Released 1993-12-08


Contents

Description

ABC Notation is a text-based (ASCII) musical notation format commonly used for folk and traditional music. It is an alphabetical shorthand, using the letters A to G to represent notes and other numbers and symbols to represent note length, sharps, flats, ornaments, etc.

While alphabetical notation systems have been used informally for a number of years, the current standard is based on work done by Chris Walshaw in the early 1990s and later revised and extended by a number of other users. The current standard is v2.1 (December 2011), with a draft v2.1.1 standard published in February 2013.

Information

ABC files consist of two basic parts - the header and the notes. The header contains metadata and other information such as the key, meter and standard note length of the tune.

Header

The header of an ABC file consists of a number of fields defining metadata and other information. A complete header using every field might look like this:

X:1
T:Sample Song
C:A. Composer
O:America; Nebraska; Power Cable.
A:Area
M:6/8
L:1/4
Q:"Allegro" 1/4=120
P:ABAB
Z:Tran Scriber, <t.s@notarealemail.com>
N:Notes
G:Group
H:This song was traditionally played
+:at the Power Cable, Nebraska Boot Festival
K:D minor

Let's break this down field by field.

  • X is the reference number. As ABC files can contain a number of tunes, this is used to identify the first, second, third, etc. tunes in the file. Thus, the first tune would be X:1, the second X:2, and so on.
  • T is the song title. As you would expect, this is used to store the title of the song.
  • C is the composer. Again, as expected, this contains the name of the composer (or, e.g. "Trad." for traditional songs where the original composer's name is lost)
  • O is the geographic origin of a tune. The data is entered in a hierarchical manner with a semi-colon to separate elements[1]
  • A is the area field. This is now deprecated and it is recommended that specific information about a tune's area of origin be entered in the O field
  • M is the meter. Information about the meter can be entered in one of three ways. The first is standard - M:6/8 or M:3/4, for example. There are also special symbols M:C and M:C| to represent common time and cut time respectively. Finally, complex meters can be specified in the format M:(2+3+2)/8 - note that the parentheses are optional.
  • L is the unit note length i.e. what length of note a single letter represents in an ABC file. This uses standard values for note length - L:1/4 is a quarter note or crotchet, L:1/8 is an eighth note or quaver, etc. Note values L:1/64 and lower are optional - they may not be supported by all ABC software. If no note field is specified, the note length is calculated based on the meter.
  • Q' is the tempo, in terms of beats per minute. In the simplest form, this would be something like Q:1/2=120 (120 half-note beats per minute), but the definition can contain up to four beats e.g. Q:1/4 3/8

Standards

The most current version of the ABC standard can be found at http://abcnotation.com/wiki/abc:standard

Specific versions of the standard can be found at the following:

A route map of proposed developments and list of draft proposals are also available.

Software

Links

Notes

  1. ABC Standard v2.0 recommends the use of comma-separation - some legacy files may still obey this convention
Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox