sc_lagud — Lag exponentiel (obsolète).
Opcode du greffon scugens.
Lag exponentiel avec une durée de lissage pour des signaux augmentants et s'atténuants. Obsolète (renommé en lagud).
aout sc_lagud ain, klagup, klagdown [, initialvalue]
kout sc_lagud kin, klagup, klagdown [, initialvalue]
initialvalue -- Si elle est fournie, fixe l'état interne. Vaut par défaut la première valeur passée.
ain -- Signal en entrée.
klagup -- Durée de latence à 60 dB en secondes pour le signal montant.
klagdown -- Durée de latence à 60 dB en secondes pour le signal atténué.
C'est semblable à sc_lag sauf que l'on peut donner des durées de latence à 60 dB différentes pour le signal montant et pour le signal atténué. Utile pour lisser des signaux de contrôle pour lesquels le fondu doit être différent de l'atténuation.
Voici un exemple de l'opcode sc_lagud. Il utilise le fichier sc_lagud.csd.
Exemple 1332. Exemple de l'opcode sc_lagud.
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> </CsOptions> <CsInstruments> sr = 44100 ksmps = 128 nchnls = 2 0dbfs = 1.0 instr 1 kx = randh(2, 1) kx2 = sc_lagud(kx, 1.0, 0.1, 1) printks "x %f x2 %f\n", 0.1, kx, kx2 endin instr 2 kmidis[] fillarray 60, 65, 60, 65, 60 ilen = lenarray(kmidis) kidx = int(linseg(0, ilen*2, ilen-0.00000001)) kmidi = mtof(kmidis[kidx]) afreq = sc_lagud(a(kmidi), 1, 0.1) a0 = oscili(0.7, afreq) kfreq = sc_lagud(kmidi, 1, 0.1) a1 = oscili(0.7, kfreq) outch 1, a0 outch 2, a1 endin </CsInstruments> <CsScore> ; i 1 0 10 i 2 0 12 </CsScore> </CsoundSynthesizer>