trigphasor

trigphasor — Une rampe linéaire réinitialisable entre deux niveaux.

Description

Opcode du greffon scugens..

Une rampe linéaire réinitialisable entre deux niveaux. Adapté du Phasor de Supercollider. trigphasor est une rampe linéaire entre les valeurs kstart et kend. Lorsque son entrée de seuil passe des valeurs négatives aux valeurs positives, la sortie de trigphasor saute à sa valeur de réinitialisation (ou à kstart si une valeur de réinitialisation n'a pas été fournie). Lorsqu'il atteint la fin de sa rampe, trigphasor recommence au début.

Syntaxe

aindex trigphasor xtrig, xrate, kstart, kend [, kresetPos] 
kindex trigphasor xtrig, xrate, kstart, kend [, kresetPos] 

Exécution

xtrig -- déclencheur, chaque fois qu'il passe des valeurs négatives aux valeurs positives.

xrate -- valeur ajoutée à chaque évalutation. Au taux-k, cette valeur est ajoutée à chaque cycle ; au taux-a, cette valeur est ajoutée par échantillon (ksmps fois par cycle).

kstart, kend -- valeurs de début et de fin du phaseur.

kresetPos -- si elle est spécifiée, cette valeur est utilisée pour sauter après un déclenchement. Sinon, un déclenchement ramènera la position à kstart.

Pour générer un signal de phaseur de kstart à kend avec une période donnée (durée de chaque cycle), le calcul sera :

rate = (end - start) / (period * sr)

Si le phaseur est utilisé au taux-k, utiliser kr au lieu de sr dans la formule ci-dessus.

Exemples

voici un exemple de l'opcode trigphasor. Il utilise le fichier trigphasor.csd.

Exemple 1120. Exemple de l'opcode trigphasor.

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>
-odac
</CsOptions>
<CsInstruments>

sr = 44100
ksmps = 64
nchnls = 2
0dbfs = 1.0

gisnd ftgen 0, 0, 0, -1, "finneganswake1.flac", 0, 0, 0

instr 1
  ; use trigphasor to read a soundfile
  inumsamps = nsamp(gisnd)
  irate = 1  ; play at original speed
  ktrig metro 0.25
  aphase trigphasor ktrig, irate, 0, inumsamps
  asig table3 aphase, gisnd
  asig *= linsegr:a(0, 0.01, 1, 0.01, 0)
  outch 1, asig
endin
	
</CsInstruments>
<CsScore>
i 1 0 20
f0 3600

</CsScore>
</CsoundSynthesizer>


Voir aussi

phasor

Crédits

Par : Eduardo Moguillansky 2017