<CsoundSynthesizer>
<CsOptions>
-odac
</CsOptions>
<CsInstruments>
sr = 44100
ksmps = 32
nchnls = 1
0dbfs = 1
; A simple sine wave table
giwave ftgen 1, 0, 4096, 10, 1
; Instrument 1: Ārohana (Ascending glide)
instr 1
kamp = 0.5
kfreq expseg 300, 2, 800 ; Glide from 300Hz to 800Hz
asig oscili kamp, kfreq, giwave
out asig
endin
; Instrument 2: Avarohana (Descending glide)
instr 2
kamp = 0.5
kfreq expseg 800, 2, 300 ; Glide from 800Hz to 300Hz
asig oscili kamp, kfreq, giwave
out asig
endin
; Instrument 3: Dhirgha (Slow vibrato)
instr 3
kamp = 0.5
kcps = 440
kvib oscili 20, 2, giwave ; Slow vibrato (2Hz, ±20Hz)
asig oscili kamp, kcps + kvib, giwave
out asig
endin
; Instrument 4: Sphurita (Quick jump)
instr 4
kamp linseg 0, 0.05, 0.5, 0.1, 0
kfreq linseg 500, 0.05, 700 ; Quick jump 500→700Hz
asig oscili kamp, kfreq, giwave
out asig
endin
; Instrument 5: Kampita (Regular vibrato)
instr 5
kamp = 0.5
kcps = 440
kvib oscili 10, 6, giwave ; 6Hz vibrato (±10Hz)
asig oscili kamp, kcps + kvib, giwave
out asig
endin
; Instrument 6: Āhata (Struck from below)
instr 6
kamp linseg 0, 0.1, 0.5, 0.5, 0
kfreq expseg 300, 0.1, 500 ; Quick rise 300→500Hz
asig oscili kamp, kfreq, giwave
out asig
endin
; Instrument 7: Pratyāhata (Struck from above)
instr 7
kamp linseg 0, 0.1, 0.5, 0.5, 0
kfreq expseg 700, 0.1, 400 ; Quick fall 700→400Hz
asig oscili kamp, kfreq, giwave
out asig
endin
; Instrument 8: Tripuṭa (3-note oscillation)
instr 8
kamp = 0.5
kfreq linseg 440, 0.1, 660, 0.1, 440, 0.1, 660, 0.1, 440
asig oscili kamp, kfreq, giwave
out asig
endin
; Instrument 9: Āndolita (Slow swing)
instr 9
kamp = 0.5
kswing oscili 100, 1, giwave ; ±100Hz swing at 1Hz
asig oscili kamp, 440 + kswing, giwave
out asig
endin
; Instrument 10: Mūrchana (Glissando)
instr 10
kamp = 0.5
kfreq expseg 300, 1, 500, 1, 700, 1, 900 ; Multi-note glide
asig oscili kamp, kfreq, giwave
out asig
endin
; Instrument 11: Plāvita (Gentle glide)
instr 11
kamp = 0.5
kfreq linseg 400, 3, 600 ; Slow glide 400→600Hz
asig oscili kamp, kfreq, giwave
out asig
endin
; Instrument 12: Misrita (Mixed gamaka)
instr 12
kamp = 0.5
kvib oscili 15, 5, giwave ; Vibrato
kbend linseg 0, 1, 100, 1, 0 ; Pitch bend
asig oscili kamp, 440 + kvib + kbend, giwave
out asig
endin
; Instrument 13: Ullāsita (Fast oscillation)
instr 13
kamp = 0.5
kjoy oscili 50, 8, giwave ; Fast, wide vibrato
asig oscili kamp, 440 + kjoy, giwave
out asig
endin
; Instrument 14: Namita (Subtle vibrato)
instr 14
kamp = 0.5
ksoft oscili 2, 3, giwave ; Very subtle vibrato (±2Hz)
asig oscili kamp, 440 + ksoft, giwave
out asig
endin
; Instrument 15: Mudrita (Hidden variation)
instr 15
kamp = 0.5
khidden randh 1, 0.5 ; Random microtonal variation
asig oscili kamp, 440 + khidden, giwave
out asig
endin
</CsInstruments>
<CsScore>
; Play each gamaka one after another
i 1 0 2 ; Ārohana
i 2 3 2 ; Avarohana
i 3 6 3 ; Dhirgha
i 4 10 0.2 ; Sphurita
i 5 11 2 ; Kampita
i 6 14 1 ; Āhata
i 7 16 1 ; Pratyāhata
i 8 18 0.5 ; Tripuṭa
i 9 19 3 ; Āndolita
i 10 23 3 ; Mūrchana
i 11 27 3 ; Plāvita
i 12 31 2 ; Misrita
i 13 34 2 ; Ullāsita
i 14 37 3 ; Namita
i 15 41 3 ; Mudrita
</CsScore>
</CsoundSynthesizer>