STKBlowHole

STKBlowHole — Modèle physique de clarinette STK avec un trou de registre et un trou d'intonation.

Description

Cet opcode est basé sur le modèle de la clarinette, avec en plus l'implémentation d'un trou de registre à deux ports et d'un trou d'inténation à trois ports.

Dans cette implémentation, les distances entre trou de registre/anche et trou d'intonation/pavillon sont fixes. Ainsi, le trou d'intonation et le trou de registre auront tous deux une influence variable sur la fréquence jouée, qui dépend de la longueur de la colonne d'air. De plus, la fréquence la plus haute pouvant être jouée est limités par ces longueurs fixes.

Syntaxe

asignal STKBlowHole 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 STKBlowHole sont :

  • kc, kv -- 2, raideur de l'anche.

  • kc, kv -- 4, gain du bruit.

  • kc, kv -- 11, état du trou d'intonation.

  • kc, kv -- 1, état du registre.

  • kc, kv -- 128, pression du souffle.

[Note] Note

Le code pour cet opcode vient directement de la classe BlowHole 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 STKBlowHole opcode. Il utilise le fichier STKBlowHole.csd.

Exemple 740. Exemple de l'opcode STKBlowHole opcode.

<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 STKBlowHole.wav -W ;;; for file output any platform
</CsOptions>
<CsInstruments>

sr = 44100
ksmps = 32
nchnls = 2
0dbfs = 1

instr 1	

ipch	= p4
kstiff	=	p7
khole	line	p5, p3, p6

asig	STKBlowHole	cpspch(ipch), 1, 2, kstiff, 4, 100, 11, khole, 1, 10, 128, 100
	outs	asig, asig
endin

</CsInstruments>
<CsScore>

i 1 0 4 10.00 20 127 100
i 1 + 3 6.09 120  0  10
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.