STKPercFlut — STKPercFlut est une flûte percussive réalisée par synthèse FM.
STKPercFlut est une flûte percussive réalisée par synthèse FM. L'instrument utilise un algorithme semblable à l'algorithme 4 du TX81Z.
asignal STKPercFlut ifrequency, iamplitude, [kc1, kv1[, kc2, kv2[, kc3, kv3[, kc4, kv4[, kc5, kv5]]]]]
ifrequency -- Fréquence de la note jouée, en Hz.
iamplitude -- Amplitude de la note jouée (entre 0 et 1).
kc1, kv1, kc2, kv2, kc3, kv3, kc4, kv4, kc5, kv5, kc6, kv6, kc7, kv7, kc8, kv8 -- Jusqu'à 8 paires de contrôleurs facultatifs au taux-k pour les opcodes STK. Chaque paire de contrôleurs est constituée d'un numéro de contrôleur (kc) suivi d'une valeur de contrôleur (kv). Les 5 numéros de contrôleur et les valeurs qui fonctionnent pour STKPercFlut sont :
kc, kv -- 2, index total du moduleur.
kc, kv -- 4, fondu enchaîné du modulateur.
kc, kv -- 11, vitesse de l'oscillateur basse-fréquence.
kc, kv -- 1, intensité de l'oscillateur basse-fréquence.
kc, kv -- 128, cible de l'ADSR 2 et 4.
![]() |
Note |
---|---|
Le code pour cet opcode vient directement de la classe PercFlut du Synthesis Toolkit en C++ par Perry R. Cook et Gary P. Scavone. On peut en savoir plus sur les classes STK ici : https://ccrma.stanford.edu/software/stk/classes.html |
Voici un exemple de l'opcode STKPercFlut. Il utilise le fichier STKPercFlut.csd.
Exemple 812. Exemple de l'opcode STKPercFlut.
<CsoundSynthesizer> <CsOptions> ; Select audio/midi flags here according to platform -odac ;;;RT audio out ;-iadc ;;;uncomment -iadc if RT audio input is needed too ; For Non-realtime ouput leave only the line below: ; -o STKPercFlut.wav -W ;;; for file output any platform </CsOptions> <CsInstruments> sr = 44100 ksmps = 32 nchnls = 2 0dbfs = 1 instr 1 ifrq = p4 kndx line p5, p3, p6 ;Total Modulator Index kfad line p7, p3, 0 ;Modulator Crossfade asig STKPercFlut cpspch(ifrq), 1, 2, kndx, 4, kfad, 11, 0, 1, 100, 128, 40 outs asig, asig endin </CsInstruments> <CsScore> i 1 0 7 8.05 100 0 100 i 1 3 7 9.03 20 120 0 i 1 3 .5 8.05 20 120 0 i 1 4 .5 9.09 20 120 0 i 1 5 3 9.00 20 120 0 e </CsScore> </CsoundSynthesizer>