wgclar

wgclar — Simule un son de clarinette.

Description

La sortie audio simule un son de clarinette, réalisé au moyen d'un modèle physique développé par Perry Cook, mais recodé pour Csound.

Syntaxe

ares wgclar kamp, kfreq, kstiff, \
    iatt, idetk, kngain, kvibf, kvamp [, ifn] [, iminfreq]

Initialisation

iatt -- temps en secondes nécessaire pour atteindre la pression de souffle nominale. 0.1 semble correspondre à un jeu raisonnable. Une durée plus longue donne un son initial de vent défini.

idetk -- temps en secondes pour arrêter le souffle. 0.1 correspond à une extinction douce.

ifn -- table facultative contenant la forme du vibrato, par défaut une table de sinus.

iminfreq (facultatif) -- fréquence la plus grave à laquelle l'instrument sera joué. Si elle est omise, elle prend la valeur initiale de kfreq. Si iminfreq est négative, l'initialisation est ignorée.

Exécution

Une note est jouée sur un instrument de type clarinette, avec les arguments ci-dessous.

kamp -- Amplitude de la note.

kfreq -- Fréquence de la note jouée.

kstiff -- Paramètre de raideur de l'anche. Les valeurs doivent être négatives, aux environs de -0.3. L'intervalle utile est compris approximativement entre -0.44 et -0.18.

kngain -- Amplitude de la composante de bruit, approximativement comprise entre 0 et 0.5.

kvibf -- Fréquence du vibrato en Hz. L'intervalle recommandé va de 0 à 12.

kvamp -- Amplitude du vibrato

Exemples

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

Exemple 1215. Exemple de l'opcode wgclar.

Voir les sections Audio en Temps Réel et Options de la Ligne de Commande pour plus d'information sur l'utilisation des options de la ligne de commande.

<CsoundSynthesizer>
<CsOptions>
; Select audio/midi flags here according to platform
-odac      ;;;realtime audio out
;-iadc    ;;;uncomment -iadc if realtime audio input is needed too
; For Non-realtime ouput leave only the line below:
; -o wgclar.wav -W ;;; for file output any platform
</CsOptions>
<CsInstruments>

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

instr 1

kfreq = 330
kstiff = -0.3
iatt = 0.1
idetk = 0.1
kngain init p4		;vary breath
kvibf = 5.735
kvamp = 0.1

asig wgclar .9, kfreq, kstiff, iatt, idetk, kngain, kvibf, kvamp, 1
     outs asig, asig
      
endin
</CsInstruments>
<CsScore>
f 1 0 16384 10 1	;sine wave

i 1 0 2 0.2
i 1 + 2 0.5		;more breath
e

</CsScore>
</CsoundSynthesizer>


Crédits

Auteur : John ffitch (d'après Perry Cook)
Université de Bath, Codemist Ltd.
Bath, UK

Nouveau dans la version 3.47 de Csound

ifn est devenu facultatif dans la version 6.06