STKPercFlut

STKPercFlut — STKPercFlut est une flûte percussive réalisée par synthèse FM.

Description

STKPercFlut est une flûte percussive réalisée par synthèse FM. L'instrument utilise un algorithme semblable à l'algorithme 4 du TX81Z.

Syntaxe

asignal STKPercFlut ifrequency, iamplitude, [kc1, kv1[, kc2, kv2[, kc3, kv3[, kc4, kv4[, kc5, kv5]]]]]

Initialisation

ifrequency -- Fréquence de la note jouée, en Hz.

iamplitude -- Amplitude de la note jouée (entre 0 et 1).

Exécution

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] 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

Exemples

Voici un exemple de l'opcode STKPercFlut. Il utilise le fichier STKPercFlut.csd.

Exemple 751. 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>


Crédits

Auteur : Michael Gogins (d'après Perry Cook)
Irreducible Productions
New York, NY

Nouveau dans la version 5.11 de Csound.