How to write Swara melodies ?

Demo

Input



Output


Lets learn to write melody

First click on the "Player" button which is available just below textarea, you can see Tabla bols in the table format

Observe textarea, you can see see [melody start] and [melody end] tags in it, it is called as Vishwamohini script

This Vishwamohini script is converted into table & you can play it, we will learn more about Vishwamohini script later

Above Table you will see a button "Edit in Excel", click on this button, you will see a excel like table

Every cell in table represents one beat and you can add your bols in cell, Vishwamohini script will get automatically created as you update excel table.

But it is important to understand Vishwamohini script as it is very important part, also you will understand how to write bols in english in the script, please read below sections carefully

Lets understand each element one by one

1. [melody start] & [melody end] : Vishwamohini Script starts with "[melody start]" & ends with "[melody end]". Whatever you write in between these two tags will be considered as part of melody & converted into table.

2. Notations : You can write notations in three octaves 
    a. Lower octave : S0 r0 R0 g0 G0 m0 M0 P0, d0, D0, n0, N0
    b. Middle octave : S1 r1 R1 g1 G1 m1 M1 P1 d1 D1 n1 N1
    c. Upper octave : S2 r2 R2 g2 G2 m2 M2 P2 d2 D2 n2 N2

They will be converted into Hindi font

They will be converted into Hindi font

Notes map

lyricsLowerOctaveS0r0R0g0G0m0M0P0d0D0n0N0
lyrics-C#0D0D#0E0F0F#0G0G#0A0A#0B0C0
notationsसा़रे़॒रे़ग़॒ग़म़म़॑प़ध़॒ध़ऩी॒ऩी
lyricsMiddleOctaveS1r1R1g1G1m1M1P1d1D1n1N1
lyrics-C#1D1D#1E1F1F#1G1G#1A1A#1B1C1
notationsसारे॒रेग॒म॑ध॒नी॒नी
lyricsUpperOctaveS2r2R2g2G2m2M2P2d2D2n2N2
lyrics-C#2D2D#2E2F2F#2G2G#2A2A#2B2C2
notationsसांरें॒रेंगं॒गंमंमं॑पंधं॒धंनीं॒नीं

3. [S1R1G1M1|P1D1N1S2|S2N1D1P1|M1G1R1S1] : Each row, which will be considered as a cycle of taal (Avartan) will start with "[" bracket & it ends with "]" bracket. Each beat is separated by bar "|", content between two bars is shown into one cell of table & will be played in timing of one beat.

Script : [S1R1G1m1|P1D1N1S2|S2N1D1P1|m1G1R1S1]

Table View :
notationsसारेनीसांसांनीरेसा

4. [lyrics] : When you want to write text or lyrics of song just put "[lyrics]" tag at the end of avartan, it will display text as it is in the table.

Below is the row with "[lyrics]" tag

[S1R1G1m1|P1D1N1S2|S2N1D1P1|m1G1R1S1][lyrics]

It will display text as it is in the table, rows with lyrics tags will not be considered when you play notations/melody.

lyricsS1R1G1m1P1D1N1S2S2N1D1P1m1G1R1S1

5. [notations] : When you put "[notations]" tag at the end of row, it converts notations into hindi font (sargam) & puts in table. These notations are considered when you play the melody.

Below is the row with "[notations]" tag

[S1R1G1m1|P1D1N1S2|S2N1D1P1|m1G1R1S1][notations]

It will convert notations tnto hindi font & this row will be considered when you play notations/melody.

notationsसारेनीसांसांनीरेसा

6. Gap : To add gap in the notations just add "-" dash. Spaces between notations has no meaning so you can add them just to have good formatting.

lyricsS1-R1-G1-m1-P1-D1-N1-S2-
notationsसारेनीसां

 Thats it! . . . you are ready to create your first melody. Have some fun with our Demo. You can edit script in this demo & check results.

Advance options

Set multiple instruments, theka or lehera

You can set specific instrument for specific row, currently below instruments are supported

1. flute

2. sitar

3. violin

4. tablatarang

Default intrument is Piano

How to set instrument ?

When you set "[notations]" tag at the end of row, row will be played with the instrument you have set in the right side panel

[S1R1G1m1|P1D1N1S2|S2N1D1P1|m1G1R1S1][notations]


To change the instrument for row, you can just replace "[notations]" tag with the instrument of your choice, below are the examples, all names must be in lower case.

[melody start]

[S1R1G1m1|P1D1N1S2|S2N1D1P1|m1G1R1S1][flute]

[S1R1G1m1|P1D1N1S2|S2N1D1P1|m1G1R1S1][sitar]

[S1R1G1m1|P1D1N1S2|S2N1D1P1|m1G1R1S1][violin]

[S1R1G1m1|P1D1N1S2|S2N1D1P1|m1G1R1S1][tablatarang]

[S1R1G1m1|P1D1N1S2|S2N1D1P1|m1G1R1S1][notations]

[melody end]

We have plan to add more instruments in future releases.

Add theka or lehera

Similar to instruments, you can add 'theka' or 'lehera' tag in the script.

theka : It will play along with instruments, it will not play with tabla & symphony. This option is useful when you want to try customized taal which is not available in the list of taals

Example : [D1|D2|D2|D1|D1|D2|D2|D1|D1|T2|T2|T1|T1|D2|D2|D1][theka]

lehera : It will play along with tabla, it will not play with notations, instruments & symphony

Example : [S2|g2|S2|N1|d1|N1|S2|d1|m1|g1|S1|g1|m1|d1|N1|S2][lehera]

Options to add Laykari

Whatever number of notations you put between bars, it will play them with perfect timing in one beat.

First level Laykari

Below is the example of five notes in each beat, which is called as Khand Jati. So five notes will be played in one beat.

[melody start]
[S1R1G1m1P1|S1R1G1m1P1|S1R1G1m1P1|S1R1G1m1P1][lyrics]
[S1R1G1m1P1|S1R1G1m1P1|S1R1G1m1P1|S1R1G1m1P1][notations]
[melody end]

Second level Laykari

Some advance musicians may want full control over complex Laykari, we have taken care of them
Just put your notations in curly brackets, it will play them in subbeat of beat with perfect timing.
in below example each beat is divided into three parts, & two notations will be played in third part of each subbeat.

[melody start]
[S1R1(G1m1)|P1D1(N1S2)|S2N1(D1P1)|m1G1(R1S1)][lyrics]
[S1R1(G1m1)|P1D1(N1S2)|S2N1(D1P1)|m1G1(R1S1)][notations]
[melody end]

Options for Laykari is available till two levels only. 

Kan Swara, Chord

Kan Swara

To add Kan Swara, write them in curly braces {}

Example : [S1R1{G1}m1|P1{D1N1}S2|S2N1({D1P1})|m1G1R1S1][notations]

lyricsS1R1{G1}m1P1{D1N1}S2S2N1({D1P1})m1G1R1S1
notationsसारेनीसांसांनी () रेसा

Chord, experimental feature

To add Chord, write them in curly braces with colons {:S1P1:}, it can be also used with for Tabla bols

Example : [S1R1{:G1P1:}m1|P1{:D1N1:}S2|S2N1({:D1P1:})|m1G1R1S1][notations]

Example : [{:G1N1:}|{:G1D2:}|D1({:G1D2:})|D1][tabla]

Local playback settings

Vishwamohini script gives fexibility to add multiple melody pieces in single post. Also it is possible to set important playback settings for each melody piece. User can set Tempo, repetions, Swara scale, Tabla-Baya scale and language. Here is the syntax for putting settings in the script

Example :
[melody start]
<settings start>
[150][tempo]
[1][repetitions]
[S1][notations-scale]
[S1][tabla-scale]
[S1][baya-scale]
[devnagari][language]
<settings end>

[S1R1G1m1|P1D1N1S2|S2N1D1P1|m1G1R1S1][lyrics]
[S1R1G1m1|P1D1N1S2|S2N1D1P1|m1G1R1S1][notations]
[melody end]


Note Dynamics, experimental feature

It is possible to control stroke intensity of each note

Syntax: <Note:StrokeIntensity>.

Stroke intensity can be between 1 to 125

Example :

[S1<R1:70>|G1m1|P1<D1:70>|<N1:60><S2:90>][notations]