TOOT 13: Difference between revisions
No edit summary |
No edit summary |
||
| Line 17: | Line 17: | ||
The plan for our instrument is to have the plucked string attack dissolve into an FM sustain which transforms into a vocal release. The orchestra and score are as follows: |
The plan for our instrument is to have the plucked string attack dissolve into an FM sustain which transforms into a vocal release. The orchestra and score are as follows: |
||
== orchestra == |
|||
{{ Box File | Toot13.orc | 2=<pre> |
|||
instr 13 |
|||
iamp = ampdb(p4) / 2 ;amp scaled for two sources |
|||
ipluckamp = p6 ;p6: % of total amplitude, 1=dB amp as in p4 |
|||
ipluckdur = p7*p3 ;p7: % of total duration, 1=entire note duration |
|||
ipluckoff = p3 - ipluckdur |
|||
ifmamp = p8 ;p8: % of total amplitude, 1=dB amp as in p4 |
|||
ifmrise = p9*p3 ;p9: % of total duration, 1=entire note duration |
|||
ifmdec = p10*p3 ;p10: % of total duration |
|||
ifmoff = p3 - (ifmrise + ifmdec) |
|||
index = p11 |
|||
ivibdepth = p12 |
|||
ivibrate = p13 |
|||
ifrmntamp = p14 ;p14: % of total amplitude, 1=dB amp as in p4 |
|||
ifrmntris = p15*p3 ;p15: % of total duration, 1=entire note duration |
|||
ifrmntdec = p3 - ifrmntris |
|||
kpluck linseg ipluckamp, ipluckdur, 0, ipluckoff, 0 |
|||
apluck1 pluck iamp, p5, p5, 0, 1 |
|||
apluck2 pluck iamp, p5*1.003, p5*1.003, 0, 1 |
|||
apluck = kpluck * (apluck1+apluck2) |
|||
kfm linseg 0, ifmrise, ifmamp, ifmdec, 0, ifmoff, 0 |
|||
kndx = kfm * index |
|||
afm1 foscil iamp, p5, 1, 2, kndx, 1 |
|||
afm2 foscil iamp, p5*1.003, 1.003, 2.003, kndx, 1 |
|||
afm = kfm * (afm1+afm2) |
|||
kformant linseg 0, ifrmntris, ifrmntamp, ifrmntdec, 0 |
|||
kvib oscil ivibdepth, ivibrate, 1 |
|||
afrmt1 fof iamp, p5+kvib, 650, 0, 40, .003,.017,.007,4,1,2,p3 |
|||
afrmt2 fof iamp, (p5*1.001)+kvib*.009, 650, 0, 40, .003,.017,.007,10,1,2,p3 |
|||
aformant = kformant * (afrmt1+afrmt2) |
|||
out apluck + afm + aformant |
|||
endin |
|||
</pre> |
|||
}} |
|||
== score == |
|||
{{ Box File | Toot13.sco | 2=<pre> |
|||
f1 0 8192 10 1 ; Sine |
|||
f2 0 2048 19 0.5 1 270 1 ; Sine quadrant rise |
|||
;ins st dur amp frq plkmp plkdr fmmp fmrs fmdc indx vbdp vbrt frmp fris |
|||
i13 0 5 80 200 .8 .3 .7 .2 .35 8 1 5 3 .5 |
|||
i13 5 8 80 100 . .4 .7 .35 .35 7 1 6 3 .7 |
|||
i13 13 13 80 50 . .3 .7 .2 .4 6 1 4 3 .6 |
|||
</pre> |
|||
}} |
|||
Latest revision as of 22:57, 23 March 2008
For our final instrument, we will employ three unique synthesis methods: Physical Modeling, Formant-Wave Synthesis, and Non-linear Distortion. Three of Csound's more powerful unit generators - pluck, fof, and foscil, make this complex task a fairly simple one. The Reference Manual describes these as follows:
ar pluck kamp, kcps, icps, ifn, imeth[, iparm1, iparm2]
pluck simulates the sound of naturally decaying plucked strings by filling a cyclic decay buffer with noise and then smoothing it over time according to one of several methods. The unit is based on the Karplus-Strong algorithm.
ar fof xamp, xfund, xform, koct, kband, kris,kdur, kdec, \\ iolaps, ifna, ifnb, itotdur[, iphs[, ifmode]]
fof simulates the sound of the male voice by producing a set of harmonically related partials (a formant region) whose spectral envelope can be controlled over time. It is a special form of granular synthesis, based on the CHANT program from IRCAM by Xavier Rodet et al.
ar foscil xamp, kcps, kcar, kmod, kndx, ifn[, iphs]
foscil is a composite unit which banks two oscillators in a simple FM configuration, wherein the audio-rate output of one (the "modulator") is used to modulate the frequency input of another (the "carrier.")
The plan for our instrument is to have the plucked string attack dissolve into an FM sustain which transforms into a vocal release. The orchestra and score are as follows:
orchestra
| File: Toot13.orc |
instr 13
iamp = ampdb(p4) / 2 ;amp scaled for two sources
ipluckamp = p6 ;p6: % of total amplitude, 1=dB amp as in p4
ipluckdur = p7*p3 ;p7: % of total duration, 1=entire note duration
ipluckoff = p3 - ipluckdur
ifmamp = p8 ;p8: % of total amplitude, 1=dB amp as in p4
ifmrise = p9*p3 ;p9: % of total duration, 1=entire note duration
ifmdec = p10*p3 ;p10: % of total duration
ifmoff = p3 - (ifmrise + ifmdec)
index = p11
ivibdepth = p12
ivibrate = p13
ifrmntamp = p14 ;p14: % of total amplitude, 1=dB amp as in p4
ifrmntris = p15*p3 ;p15: % of total duration, 1=entire note duration
ifrmntdec = p3 - ifrmntris
kpluck linseg ipluckamp, ipluckdur, 0, ipluckoff, 0
apluck1 pluck iamp, p5, p5, 0, 1
apluck2 pluck iamp, p5*1.003, p5*1.003, 0, 1
apluck = kpluck * (apluck1+apluck2)
kfm linseg 0, ifmrise, ifmamp, ifmdec, 0, ifmoff, 0
kndx = kfm * index
afm1 foscil iamp, p5, 1, 2, kndx, 1
afm2 foscil iamp, p5*1.003, 1.003, 2.003, kndx, 1
afm = kfm * (afm1+afm2)
kformant linseg 0, ifrmntris, ifrmntamp, ifrmntdec, 0
kvib oscil ivibdepth, ivibrate, 1
afrmt1 fof iamp, p5+kvib, 650, 0, 40, .003,.017,.007,4,1,2,p3
afrmt2 fof iamp, (p5*1.001)+kvib*.009, 650, 0, 40, .003,.017,.007,10,1,2,p3
aformant = kformant * (afrmt1+afrmt2)
out apluck + afm + aformant
endin
|
score
| File: Toot13.sco |
f1 0 8192 10 1 ; Sine f2 0 2048 19 0.5 1 270 1 ; Sine quadrant rise ;ins st dur amp frq plkmp plkdr fmmp fmrs fmdc indx vbdp vbrt frmp fris i13 0 5 80 200 .8 .3 .7 .2 .35 8 1 5 3 .5 i13 5 8 80 100 . .4 .7 .35 .35 7 1 6 3 .7 i13 13 13 80 50 . .3 .7 .2 .4 6 1 4 3 .6 |