instr 7ifunc1 = p11 ; начальная волновая формаifunc2 = p12 ; другая волновая формаifad1 = p3 * p13 ; вычисляем начальный переход (% от длительности)ifad2 = p3 - ifad1 ; вычисляем оставшуюся длительностьirel = .01 ; устанавливаем время филировки вибратоidel1 = p3 * p10 ; вычисляем начальную задержку (% от длительности)isus = p3 - (idel1 + irel) ; вычисляем оставшуюся длительностьiamp = ampdb(p4)iscale = iamp * .166 ; p4=амлитудаinote = cpspch(p5) ; p5=частотаk3 linseg 0, idel1, p9, isus, p9, irel, 0 ; p6=время атакиk2 oscil k3, p8, 1 ; p7=время филировкиk1 linen iscale, p6, p3, p7 ; p8=скорость вибратоa6 oscil k1, inote*.998+k2, ifunc2 ; p9=глубина вибратоa5 oscil k1, inote*1.002+k2, ifunc2 ; p10=задержка вибрато (0-1)a4 oscil k1, inote+k2, ifunc2 ; p11=начальная волнаa3 oscil k1, inote*.997+k2, ifunc1 ; p12=другая волнаa2 oscil k1, inote*1.003+k2, ifunc1 ; p13=время переходаa1 oscil k1, inote+k2, ifunc1kfade linseg 1, ifad1, 0, ifad2, 1afunc1 = kfade * (a1+a2+a3)afunc2 = (1 - kfade) * (a4+a5+a6) out afunc1 + afunc2 endin |