cSounds.com - тъюториалы – Тъюториал по дизайну инструментов
Тъюториал 12: Таблицы и метки

Это наш наиболее сложный инструмент. Мы внедрили в него возможность хранить высоты в таблице, а затем ссылаться на них по номерам тремя различными способами: 1) напрямую, 2) посредством lfo и 3) в случайном порядке. В качестве средства переключения между этими тремя способами мы использовали команды программного управления Csound'а, а также логические и условные операторы.


 
Навигация

[индекс] [предыдущая] [следующая]


cSounds.com

[+] На главную

Руководство по Csound

[+] if
[+] igoto
[+] kgoto

Прослушать

[+] Toot12.mp3 477k


 
Toot12.orc

                    instr 12          iseed     =         p8          iamp      =         ampdb(p4)          kdirect   =         p5          imeth     =         p6          ilforate  =         p7                            ; частота для lfo и случайных индексов          itab      =         2          itabsize  =         8if (imeth == 1)     igoto     directif (imeth == 2)     kgoto     lfoif (imeth == 3)     kgoto     randomdirect:   kpitch    table     kdirect, itab                 ; индексируем f2 через p5                    kgoto     continlfo:      kindex    phasor    ilforate          kpitch    table     kindex * itabsize, itab                    kgoto     continrandom:   kindex    randh     int(7), ilforate, iseed          kpitch    table     abs(kindex), itabcontin:   kamp      linseg    0, p3 * .1, iamp, p3 * .9, 0  ; амплитудная огибающая          asig      oscil     kamp, cpspch(kpitch), 1       ; аудио осциллятор                    out       asig                    endin

Toot12.sco

f1   0    4096 10 1                                         ; Синусf2   0    8    -2 8.00 8.02 8.04 8.05 8.07 8.09 8.11 9.00   ; параметры до-мажорной гаммы для cpspch; метод 1 – прямое индексирование значений в таблице; инстр    нач длит амп индекс метод частlfo   rndнач  i12     0    .5   86   7         1         0         0  i12     .5   .5   86   6         1         0  i12     1    .5   86   5         1         0  i12     1.5  .5   86   4         1         0  i12     2    .5   86   3         1         0  i12     2.5  .5   86   2         1         0  i12     3    .5   86   1         1         0  i12     3.5  .5   86   0         1         0  i12     4    .5   86   0         1         0  i12     4.5  .5   86   2         1         0  i12     5    .5   86   4         1         0  i12     5.5  2.5  86   7         1         0  f0      10s; метод 2 – индексирование посредством lfo; инстр    нач длит амп индекс метод частlfo   rndнач  i12     0    2    86   0         2         1         0  i12     3    2    86   0         2         2  i12     6    2    86   0         2         4  i12     9    2    86   0         2         8  i12     12   2    86   0         2         16  f0      16s; метод 3 – случайный индекс; инстр    нач длит амп индекс метод частlfo   rndнач  i12     0    2    86   0         3         2         .1  i12     3    2    86   0         3         3         .2  i12     6    2    86   0         3         4         .3  i12     9    2    86   0         3         7         .4  i12     12   2    86   0         3         11        .5  i12     15   2    86   0         3         18        .6  i12     18   2    86   0         3         29        .7  i12     21   2    86   0         3         47        .8  i12     24   2    86   0         3         76        .9  i12     27   2    86   0         3         123       .9  i12     30   5    86   0         3         199       .

Рисунок 12: Таблицы и метки

[+] Какие-либо вопросы, комментарии или предложения? Пожалуйста, дайте нам знать:
support@csounds.com