<info>
pichej
Wed May  1 18:04:08 PDT 1996
Improvisation modale - Synthese vocale
Not real-time...
</info>
<tk_interface>

</tk_interface>
<mono>
instr 4
gkpit   rand    .005
        endin


        instr 1, 2, 5
ilast   =       2
iseed   =       p6
ivib    =       .015*iseed
ivoi    =       p8

krik    rand    8, .38413*iseed
kpik    rand    2, .5765*iseed

newvalue:

        idu     			table  		 i(krik)   , 34, 0, 0, 1
        ipi     			table   		i(kpik+ilast), 33, 0, 0, 1
        kpi    			 =    		cpspch(ipi+p11)
        ipo     			=       		cpspch(ipi+p11)
        kvibenv 			expseg  		ipo*.001, 1.5, ipo*ivib, idu-2, ipo*ivib, .5,  ipo*.015
        kbend   			rand  		  .3, .89*iseed
        kford   			rand   	 	1.5, .0345*iseed
        ibend   			=      	 	i(kbend+.33)*i(kbend+.33)+.02
        igli    			=       		(idu/2)+.2
        ishifsp 			=       		(i(kford+1.5)*i(kford+1.5)/idu)+.2
        ilast   			=       		i(kpik+ilast)

                timout  0, idu, go
                reinit newvalue
                rireturn
go:
kpi    port    kpi, ibend, cpspch(ipi+p11)
kam     randh   .45, 1, .46543*iseed
kam    port    kam+.55, .5, p7


kshif   randh   5, ishifsp, -.4478*iseed
kshif   =       int(kshif+5)*9

kind    =       kshif
kif0    =       kpi *(1+i(gkpit))
iind    =       (p5*9)-9

ifif1   table   iind, ivoi, 0
ifif2   table   iind+1, ivoi, 0
ifif3   table   iind+2, ivoi, 0
iria1   table   iind+3, ivoi, 0
iria2   table   iind+4, ivoi, 0
iria3   table   iind+5, ivoi, 0

kdev1   table   kind+6, ivoi, 0
kdev2   table   kind+7, ivoi, 0
kdev3   table   kind+8, ivoi, 0

kdev1   randh   kdev1/2, ishifsp, .0980*iseed
kdev2   randh   kdev2/2, ishifsp, .6983*iseed
kdev3   randh   kdev3/2, ishifsp, .4*iseed

kfif1	table 		kind, ivoi, 0
kfif2 	table   		kind+1, ivoi, 0
kfif3 	table   		kind+2, ivoi, 0
kria1	table  		kind+3, ivoi, 0
kria2	table  		kind+4, ivoi, 0
kria3	table   		kind+5, ivoi, 0

kif1	port		kfif1+kdev1, igli, ifif1
kif2	port 		kfif2+kdev2, igli, ifif2
kif3	port		kfif3+kdev3, igli, ifif3
kia1	port		kria1-10, igli, iria1
kia2	port		kria2, igli, iria2
kia3	port		kria3, igli, iria3

krandvib        randi   .2, 3.5, iseed*.123
;kvibenv        expseg  p4*.001, 1.5, p4*ivib, p3-.35, p4*ivib, 1, p4*.015
kvib    oscil   kvibenv, 5.5*(1+krandvib), 4

kenv    linseg  0.001, .1+p3*.1, 1, p3-(.2+p3*.25), 1, .1+p3*.15, 0.001

kdev    randi   .009, 12, iseed*.765
kdev    =       1+kdev
kpit    linseg  .95, .1, 1, p3-.2, 1, .1, 0.92


kpitch  =       kdev*kif0*kpit+kvib

ar      fof     ampdb(kia1)*kenv*kam,   kpitch,   kif1, 0, 50, .0025, .025, .007, 150, 1, 2, p3
ar1    fof     ampdb(kia2)*kenv*kam*kam,   kpitch,   kif2, 0, 100, .0025, .025, .007, 150, 1, 2, p3
ar2    fof     ampdb(kia3)*kenv*kam*kam*kam,   kpitch,   kif3, 0, 150, .0025, .025, .007, 150, 1, 2, p3
ar3    fof     ampdb(kia3)*kenv*kam*kam*kam*.7, kpitch, kif3+1000,  0, 150, .0025, .025, .007, 150, 1, 2, p3

out     (ar+ar1+ar2)+ar3
        endin

        instr 15
kmod    expseg  p5, .0151, p5*.1, p3*0.9, .005
asid    foscil  ampdb(p5), cpspch(p4), 2.780, 3.967, kmod, 1
agon    expseg  0.001, .0151, 1, .1, .7, p3*0.9, .005
out     (asid)*agon
        endin
</mono>
<stereo>
instr 4
gkpit   rand    .02
gkpit2  rand    .02, .2345
        endin


        instr 1, 2, 5
ilast   =       2
iseed   =       p6
ivib    =       .015*iseed
ivoi    =       p8
krik    rand    8, .38413*iseed
kpik    rand    2, .5765*iseed

newvalue:

        idu     table   i(krik)   , 34, 0, 0, 1
        ipi     table   i(kpik+ilast), 33, 0, 0, 1
        kpi     =       cpspch(ipi+p11)
        ipo     =       cpspch(ipi+p11)
        kvibenv expseg  ipo*.001, 1.5, ipo*ivib, idu-2, ipo*ivib, .5,  ipo*.015
        kbend   rand    .3, .629876*iseed
        kford   rand    1.5, .876*iseed
        ibend   =       i(kbend+.33)*i(kbend+.33)+.02
        igli    =       (idu/2)+.2
        ishifsp =       (i(kford+1.5)*i(kford+1.5)/idu)+.2
        ilast   =       i(kpik+ilast)

                timout  0, idu, go
                reinit newvalue
                rireturn
go:
gkpi    port    kpi, .03, cpspch(ipi+p11)
kam     randh   .25, 1, .46543*iseed
gkam    port    kam+.75, .5, p7


kshif   randh   5, ishifsp, -.4478*iseed
kshif   =       int(kshif+5)*9

kind    =       kshif
kif0    =       gkpi *(1+i(gkpit))
kif02   =       gkpi *(1+i(gkpit2))
iind    =       (p5*9)-9

ifif1   table   iind, ivoi, 0
ifif2   table   iind+1, ivoi, 0
ifif3   table   iind+2, ivoi, 0
iria1   table   iind+3, ivoi, 0
iria2   table   iind+4, ivoi, 0
iria3   table   iind+5, ivoi, 0

kdev1   table   kind+6, ivoi, 0
kdev2   table   kind+7, ivoi, 0
kdev3   table   kind+8, ivoi, 0

kdev1   randh   kdev1/2, ishifsp, .0980*iseed
kdev2   randh   kdev2/2, ishifsp, .6983*iseed
kdev3   randh   kdev3/2, ishifsp, .4*iseed

kfif1   table   kind, ivoi, 0
kfif2   table   kind+1, ivoi, 0
kfif3   table   kind+2, ivoi, 0
kria1   table   kind+3, ivoi, 0
kria2   table   kind+4, ivoi, 0
kria3   table   kind+5, ivoi, 0

kif1    port    kfif1+kdev1, igli, ifif1
kif2    port    kfif2+kdev2, igli, ifif2
kif3    port    kfif3+kdev3, igli, ifif3
kia1    port    kria1-10, igli, iria1
kia2    port    kria2, igli, iria2
kia3    port    kria3, igli, iria3

krandvib        randi   .15, 1.5, iseed*.123
krandvib2       randi   .14, 1.7, iseed*.1423
;kvibenv        expseg  p4*.001, 1.5, p4*ivib, p3-.35, p4*ivib, 1, p4*.015
kvib    oscil   kvibenv, 5.5*(1+krandvib), 1
kvib2   oscil   kvibenv, 5.6*(1+krandvib2), 1     

kenv    linseg  0.001, .1+p3*.1, 1, p3-(.2+p3*.15), 1, .1+p3*.05, 0.001

kdev    randi   .01, 12, iseed*.765
kdev    =       1+kdev
kdev2   randi   .01, 13, iseed*.8765
kdev2   =       1+kdev2

kpit    linseg  .95, .1, 1, p3-.2, 1, .1, 0.95

ar      fof     ampdb(kia1)*kenv*gkam,               kdev*kif0*kpit+kvib,   kif1,   .0,   50,   .003, .01, .007, 50, 1, 2, p3
ar1     fof     ampdb(kia2)*kenv*gkam*gkam,         kdev*kif0*kpit+kvib,   kif2,   .0,   100, .003, .01, .007, 50, 1, 2, p3
ar2     fof     ampdb(kia3)*kenv*gkam*gkam*gkam,   kdev*kif0*kpit+kvib,   kif3,   .0,   150, .003, .01, .007, 50, 1, 2, p3
ar3     fof     ampdb(kia3)*kenv*gkam*gkam*gkam*.7,   kdev*kif0*kpit+kvib,   kif3+1000,   .0,   150, .003, .01, .007, 50, 1, 2, p3

ag      fof     ampdb(kia1)*kenv*gkam,               kdev2*kif02*kpit+kvib2,   kif1,   .0,   50,   .003, .01, .007, 50, 1, 2, p3
ag1     fof     ampdb(kia2)*kenv*gkam*gkam,         kdev2*kif02*kpit+kvib2,   kif2,   .0,   100, .003, .01, .007, 50, 1, 2, p3
ag2     fof     ampdb(kia3)*kenv*gkam*gkam*gkam,   kdev2*kif02*kpit+kvib2,   kif3,   .0,   150, .003, .01, .007, 50, 1, 2, p3
ag3     fof     ampdb(kia3)*kenv*gkam*gkam*gkam*.7,   kdev2*kif02*kpit+kvib2,   kif3+1000,   .0,   150, .003, .01, .007, 50, 1, 2, p3


outs    (ar+ar1+ar2)+ar3, (ag+ag1+ag2)+ag3
        endin

        instr 15
kmod    expseg  p5, .0151, p5*.06, p3*0.9, .005
asid    foscil  ampdb(p5), cpspch(p4), 2.380, 3.667, kmod, 1
asid2   foscil  ampdb(p5), cpspch(p4+.005), 2.383, 3.767, kmod, 1
agon    expseg  0.001, .0151, 1, .1, .7, p3*0.9, .005
outs    (asid)*agon, asid2*agon
        endin
</stereo>
<quad>

</quad>
<score>
#cyb

f1 0 8192 10 1
f2 0 8192 19 .25 1 0 0
f3 0 8192 10 2 0 0 0 0 0 0 0 0 .1 .1   0 0 .1
f4 0 8192 7 0 2048 1 4096 -1 2048 0

;formant homme
f99 0 128  -2  738 1115 2450 80 70 60 73 110 266 677 1717 2404 80 70 55 80 162 183 634 1217 2388 80 70 50 58 144 230 543 789 2384 80 70 30 73 146 323 535 1868 2498 80 70 60 65 150 168 489 1358 1706 80 65 40 80 146 233 386 1977 2564 80 70 50 94 196 155 267 2290 2933 80 65 60 53 233 266 440 1032 2241 80 60 40 76 185 246 304 870 2239 80 65 40 63 250 483

;formant femme
f89 0 128 -2 877.324 1235.11 2749.51 80 70 60 103.0 118.333 296.667 901.136 2024.02 2832.39 80 70 65  123.333 175.333 243.333 756.886 1418.48 2768.64 80 70 50 100.667 176.0 290.0 583.646 906.042 2735.29 80 50 40 113.333 173.333 350.0 607.167 2367.79 3016.24 70 60 60 100.0 156.667 200.0 503.704 1632.04 1969.39 80 60 50 97.3333 266.667 333.333 437.378 2498.78 3082.44 80 60 50 71.6667 160.0 200.0 307.792 2782.17 3316.23 80 55 60 62.0 246.667 318.333 459.023 1141.84 2673.75 80 60 50 78.3333 215.333 296.667 378.113 962.245 2659.72 80 65 40 66.6667 266.667 280.0

;formant enfant
f79 0 128 -2 1089.17 1402.5   3175.0 80 70 60 96.6667 133.333 616.667 1047.89 2288.15  3342.96 80 70 55 164.0 250.0 473.333 858.304 1589.13  3302.61 80 70 50 146.667 130.0 386.667 702.187 1074.37  3230.62 80 70 30  130.0 136.667 450.0 684.312 2613.44  3448.75 80 70 60  95.0 208.333 186.667 569.276 1808.1  2184.83 80 65 40  125.0 266.667 400.0 534.412 2795.88  3528.24 80 64 40  100.0 256.667 413.333 360.2 3177.83  3763.0  80 65 50  105.0 293.333 306.667 553.889 1400.19  3312.22 80 55 40  93.3333 166.667 400.0 423.964 1177.14  3245.0  80 65 40  106.667 350.0 366.667

;Table hauteur
f33 0 32 -2  5.11  6.02  6.03  6.05  6.06 6.09 6.11 7.02 6.11 6.06 7.03 7.02 7.03 7.05 7.06 7.03  6.11 6.09 6.06 6.07 7.05 6.04 6.0  6.03  6.05  6.10  6.05 6.07  6.03  6.02 6.0 5.10 
;Table rythme

f34 0 16 -2  .50 .0375  .0375 .0625 8 .0375 3  4 2 .0625  .25 1 .125 .0375 .0375 .0375

t 0 45

instr 4 ;
p 2 {sq 140 140s} ;
p 3 {sq 140 140s} ;
e

instr 1 2  ; 
p 2  { sq 2 2s} {sq { pik 2 3 4 5 6 7 1 0}  118s} {sq 8 16s} ;
p 3  { sq 0 2s} {sq { pik 2 3 4 5 6 7 0 0 1} 118s}  {sq 8 16s}  ;  
p 4  {sq  100 130s}   { sq 800 16s} ;
p 5  {sq  {ran i 1 10}  120s}  { sq 8 16s} ;
p 6  {sq { ran f 0 1} 136s}  ;
p 7  {sq .260  120s}  {sq .8 16s};
p 8  {sq 89 60s}  {sq 89 60s} 	{sq 79 16s}  ;
p 9  {sq 2 120s} {sq 8 16s}  ;
p 10 {sq 3 120s} {sq 8 16s}  ;
p 11 {sq 2.05 60s}  {sq 2.01 60s} {sq 2.04 16s}  ;
e


instr 5 ;
p 2 {sq 2 2s} {sq   {pik  4  6 2 8 4}  118s}  ;
p 3 {sq 0 2s} {sq   {pik  0 .75 .5 .9   .5 .9}  58s} * { pa 2} { sq 0 5s} {sq   {pik  0 .75 .5 .9   .5 .9}  55s} * { pa 2}   ;
p 4 {sq 100 130s}   ;
p 5 {sq  {ran i 1 10} 120s}   ;
p 6 {sq {ran f 0  1}  120s}  ;
p 7 {sq {ran f .5 1}  120s}  ;
p 8  {sq 99 60s} {sq 99 60s}  ;
p 9  {sq  {pik  2 4 5 7 8 10 11}  120s}  ;
p 10  {sq  {pik  2 4 5 7 8 9 10 11}  120s}  ;
p 11 {sq 1.05 60s}  {sq 1.01 60s}  ;
e

instr 15 ;
p 2 {sq {ran i 3 5} 30s}  {sq 4 4s}  {sq {ran i 3 5} 90s}   ;
p 3 {sq 15  120s}  ;
p 4 {sq { pik  4.01 4.047 4.0745 4.078 4.01 4.105}  120s}  ;
p 5 {sq { ran f 50 65} 120s}  ;
e
;
instr 15 ;
p 2 {sq {ran f .19 .21} 120s} + {co 2}  ;
p 3 {sq  2 120s}  ;
p 4 {sq {ran f 9.0  9.005} 120s}  ;
p 5 {sq {ran f 35 50 } 120s}   ;
e
</score>
