Here is a quick user guide to start using the PureTones App. You can also learn more about Indian Classical music through in-depth articles and interactive audio demonstrations at our Learn page.
You can reach the PureTones App at any time, by clicking on the App link in the top navigation bar. It has four main sections:
Each of these sections is explained below.
As you may well know, in Indian Classical Music, all musical notes are defined in relation with the fundamental note Sa. The Common Parameters
control the Key
and Offset
of Sa. This enables you to select a Sa according to your preference and comfort. You can also select it using the dialog below. You will notice that your settings persist across pages.
Common Parameters
On the App page, click on the Drone
tab below the Common Parameters
section to get to the Drone section. Once in the Drone section, use the following steps to start a drone track and tune it according to your requirement and preference.
Start
under Drone Controls
. This starts a generic Pa-Tanpura in the key you selected using the Common Parameters
above. You can click on Start
below to hear the generic drone track. This is the same track you would hear and tune in the Drone section.Generic Drone without tuning controls
Octave
selector.Period
to control the playing tempo and Level
to control the volume level.Fine Tune
and Ultrafine Tune
sliders to finetune the pitch of each string. You can also input a number directly into the input boxes, for precise data entry.Variance
and Timbre
controls to fine tune the harmonic content produced by each string, and Gain
to adjust the relative gain levels of different strings.Loop
toggle switch.Variance
and Timbre
controls. Variance
controls the speed of unraveling of the harmonics, while Timbre
controls the emphasis of specific harmonics which may be necessary to support specific notes in a Raga.Save
which can be uploaded later using Restore
.Reset
.On the App page, click on the Scale
tab below the Common Parameters
section to get to the Scale section. Once in the Scale section, use the following steps to start a 12 note musical scale and tune it according to your requirement and preference.
Start
under Scale Controls
. This starts a musical scale in the key you selected using the Common Parameters
above, as per the Venkatamakhin-Ramamatya Tuning. You can click on Start
below to hear the generic scale. This is the same scale you would hear and tune in the Scale section.Computer Keyboard
toggle switch.a
- Sa, w
- re, s
- Re, e
- ga, d
- Ga, f
- ma, t
- Ma, g
- Pa, y
- dha, h
- Dha, u
- ni, j
- Ni and k
- SA.Octave
selector. Or use the z
key to shift to a lower octave and the x
key to shift to a higher octave.Sustain
to control the sustain and Level
to control the volume level.Note
tabs labelled as Sa
, re
, Re
,... to access each of the 12 notes.Fine Tune
and Ultrafine Tune
sliders to finetune the pitch of each note. You can also input a number directly into the input boxes, for precise data entry.Save
which can be uploaded later using Restore
.Reset
.On the App page, click on the Sequencer
tab below the Common Parameters
section to get to the Sequencer section. Once in the Sequencer section, use the following steps to start composing musical works based on the Drone and Scale settings you have tuned so far.
Octave
and Tone
controls.String 1
, String 2
, Bow
and Reed
.Composition Editor
. For details about the syntax and grammar for specifying musical compositions, see the Grammar documentation below. We have also provided some examples below which you can play and read the notation alongside to understand how the notation corresponds to musical notes.ga
in a composition, the Sequencer would play the sharpened note ga.Save
which can be uploaded later using Restore
.Reset
.PureTones Sequencer uses a simple grammar to write compositions using notation from Indian Classical music as specified below:
<motif> = <note> + ' ' + <motif>
<note> = <identifier> + ' ' + <timing>
<identifier> = <name> + <octave> + <shake> + <stroke>
<name> = Sa | re | Re | ga | Ga | ma | Ma | Pa | dha | Dha | ni | Ni
<octave> = null | " | '
<shake> = null | '(G)' | '(G)(<start>,<end>,<rate>,<times>)'
<stroke> = null | ^
<timing> = null | <jati> + <repeats>
<jati> = null | . | ; | ,
<repeats> = null | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8
<start> = <name> + <octave> | number
<end> = <name> + <octave> | number
<rate> = number
<times> = number
motif
refers to a musical composition. It is a sequence of note
's separated by whitespaces.note
is a pair of an identifier
and a timing
separated by whitespace.identifier
is a triplet of name
, octave
and shake
without any separators.name
could be any one of 12 notes from an octave denoted as follows Sa re Re ga Ga ma Ma Pa dha Dha ni Ni
where notes beginning with a lowercase are Komal (flat) notes and those beginning with an uppercase are Tivra (sharp) notes. Of course, Sa
and Pa
are always capitalized.octave
specification is optional. There are three Saptaks (octaves): Mandra (low), Madhya (middle) and Tara (high). A "
symbol denotes Tara Saptak, a '
symbol denotes Mandra Saptak and no octave specification means Madhya Saptak.shake
denotes whether or not the note is shaken or rendered with a Gamaka. A shake
specification is optional. It is denoted by (G)
to mean a note with Gamaka or not specified to mean an unmodulated note. It can also be specified with additional parameters like (G)(start,end,rate,times)
where start
is the starting pitch, end
is the ending pitch in cents, rate
is the rate of the shake, and times
is the number of times for which the shake is to be repeated (including fractional numbers).start
and end
can be specified either as notes identified by a name
and an optional octave
specification, or in terms of cents with respect to the pitch of the current note. For example, ga(G)(36,12,2.5,3.34)
specifies a shake
which oscillates between 36 cents above ga and 12 cents above ga. Another example is Re(G)(Re,ga,1.5,1)
which specifies a shake
which oscillates between Re and ga.rate
and times
are specified as a number
.stroke
refers to whether the next note is played with a separate stroke or not. A ^
symbol denotes that the next note would be played using the sustain from the stroke of the current note. No stroke specification means that the next note would be played using a separate new stroke.timing
is a pair of jati
and repeats
without any separators. It is an optional specification. If a timing
specification is not provided, it means the note
specified in the previous token is a whole note (or has a duration of 1 period).jati
denotes a subdivision of a period. It is an optional specification. A .
symbol denotes a note, a ;
symbol denotes a note and a ,
symbol a note. If jati
is omitted, it denotes a whole note.repeats
specification determines the factor by which a note duration derived from its jati
is extended. It is an optional specification. It can take any numerical value from 1
to 8
. If a repeats
specification is omitted, it means a default value of 1
.timing
specification of .3
denotes a note of duration notes, since the jati
is note and the repeats
is 3. As another example, a timing
specification of 2
denotes a note of duration 2 whole notes, and a timing
specification of ;
denotes a note of duration of a note.Here is an example composition using the grammar specified above. Click on Start
below. The composition will start playing and the text of the composition will be displayed. You can try to follow the music and correlate it with the text.
ni' Sa Ga ma dha(G) ni dha(G) Pa(G) 2
ma Pa(G) Pa .3 ma .3 Ga 2 Ga ma Ga 2 Re Sa 4
ma' dha' ni'(G) 2 Sa Ga ma dha ni(G) 2 ni Sa" 4
ni Sa" Ga" ma" Ga" Re" Sa" 4
ni Sa" dha(G) Pa .3 ma Pa(G) 2 Pa ma Ga 2
Ga ma Ga 2 Re 2 Sa 4
dha' ni' Sa 8
Here is another example showing the use of the full specification for a gamaka using the syntax of (G)(start,end,rate,times)
. Again, click on Start
and try to relate the music to the text.
Sa(G)(ni',Re,-0.7,1.2) 2
Sa ga(G)(36,12,2.5,3.34) 2 Re Sa 2
ni' Re(G)(72,Re,7,4.35) 2 ni'(G) Sa 2
ga(G)(30,-30,6,3.3) Re 2 Re ga(G) 2 Re Sa 2
Sa ni' . Dha'(G) Pa' ma' Pa' ni'(G)(30,-30,7,3.3) 2 Dha' ni'(G) ga(G) 2 Re(G) ; Sa 2
Sa Re(G)(Re,ga,1.5,1) ga(G) ma Pa ma ga ; Re(G)(Re,45,7,3.5) 2 Sa 2
You can also scroll up, play the drone and come back and play these example compositions along with the drone. This may provide you with another perspective on how the drone and composition tracks interact musically.