expon

expon — Trace une courbe exponentielle entre les points spécifiés.

Description

Trace une courbe exponentielle entre les points spécifiés.

Syntaxe

ares expon ia, idur, ib
kres expon ia, idur, ib

Initialisation

ia -- valeur initiale. Zéro est interdit pour les exponentielles.

ib -- valeur après idur secondes. Pour les exponentielles, doit être non nulle et du même signe que ia.

idur -- durée en secondes du segment. Avec une valeur nulle ou négative l'initialisation sera ignorée.

Exécution

Ces unités génèrent des signaux de contrôle ou audio dont les valeurs passent par deux points spécifiés. La valeur de idur peut égaler ou non la durée d'exécution de l'instrument : avec une exécution plus courte, la courbe sera tronquée alors qu'avec une exécution plus longue, le segment continuera dans la même direction.

Exemples

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

Exemple 223. Exemple de l'opcode expon.

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

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

instr 1 

kpitch = p6
;choose between expon or line
if (kpitch == 0) then 	
  kpitch expon p4, p3, p5 
elseif (kpitch == 1) then
  kpitch line p4, p3, p5 
endif

asig   vco2 .6, kpitch 
       outs asig, asig

endin 
</CsInstruments>
<CsScore>
 

i 1 0 2 300 600    0	;if p6=0 then expon is used
i 1 3 2 300 600    1	;if p6=1 then line is used
i 1 6 2 600 1200   0
i 1 9 2 600 1200   1
i 1 12 2 1200 2400 0
i 1 15 2 1200 2400 1
i 1 18 2 2400 30   0
i 1 21 2 2400 30   1
e
</CsScore>
</CsoundSynthesizer>


Voir aussi

expseg, expsegr, line, linseg, linsegr