Notation

CarnaticABC notation is plain text for Carnatic music. Add a few song details at the top, then write the musical line with swaras, timing, bars, rests, octave marks, and optional gamakas.

Try the live playground

Change the source and the preview updates immediately. Start with this Sarali Varisai example, then change a swara or duration and listen for what moves.

Understand the notation

Swaras

Use uppercase swaras separated by spaces. The basic names are S R G M P D N. The selected raga decides how shorthand swaras such as R, G, D, and N sound.

S R G M | P D N S' ||
S2 R G/2 M | P D N S' ||

In the music line, a number after a swara is a duration. For example, R2 means hold R for two units; it does not mean the second variety of Ri. To change which Ri, Ga, Da, or Ni is used, choose a raga or define one below.

Gamakas

For music that needs explicit motion, a swara can carry a gamaka path. The anchor before braces is the written swara; the path inside braces is the movement performed over that event duration.

G{G-R-G-R-G}
G2{G-R-G-R-G}

A duration on the anchor applies to the whole gamaka, so G2{G-R-G-R-G} takes two units.

Gamaka movement is local to the braced event. Adjacent swaras are separate by default, so S R G{G-R-G-R-G} P does not imply one long glide from S through P.

Ragas

CarnaticABC currently includes a small built-in set: Mohanam, Mayamalavagowla, Kalyani, Shankarabharanam, Todi, and Kharaharapriya.

@raga Shankarabharanam

If you need a custom raga, put the pitch variants in the @raga header and keep the music line as plain swaras with durations. Labels such as R[2] and G[3] describe pitch variants there. In the music line, the same trailing number would be read as duration.

@raga Custom: S R[2] G[3] P D[2] S' || S' D[2] P G[3] R[2] S

Headers

A song starts with simple headers. Put the music after a blank line. The most useful headers are @title, @raga, @sruti, and @tempo.

@title Sarali Varisai 1
@raga Shankarabharanam
@sruti C
@tempo 60

S R G M | P D | N S' ||
S' N D P | M G | R S ||

Header names start with @. @raaga also works for @raga. Extra headers are kept as metadata, but they do not change the preview unless CarnaticABC recognizes them.

Octaves and durations

Octave and duration marks attach directly to the swara. A plain swara is one unit long unless you add a duration.

  • S is the default octave.
  • S' is the upper octave, and S'' is two octaves up.
  • S, is the lower octave.
  • G is one unit, G2 is two units, G/2 is half a unit, and G/4 is a quarter unit.
S R G M
S' N D P
S, R, G, M,
G2 G/2 G/4

Duration marks come after octave marks, so S'2 means upper Sa held for two units.

Other reference info

Bars help the source stay readable. Rests create silence and can use the same duration suffixes as swaras.

  • | marks a boundary.
  • || marks a section end.
  • z or r writes a rest. Rests can also use durations, such as z2 or r/2.
S R G M | P D N S' ||
S z R r/2 G2 ||

Blank lines are ignored. Lines starting with # or // are comments. Spaces separate swaras and rests, but bars can sit next to notes.

# A short practice phrase
S R G M | P D N S' ||

// Another comment
S' N D P | M G R S ||