metro

metro — Métronome déclencheur.

Description

Génère un signal métronomique à utiliser dans toutes les circonstances pour lesquelles un déclencheur isochrone est nécessaire.

Syntaxe

ktrig  metro  kfreq [, initphase]

Initialisation

initphase -- valeur de phase initiale (entre 0 et 1)

Exécution

ktrig -- signal déclencheur en sortie

kfreq -- fréquence des impulsions de déclenchement en Hz

metro est un opcode simple qui retourne une séquence d'impulsions isochrones (valeurs 1) chaque 1/kfreq secondes. On peut utiliser les signaux déclencheurs en toute occasion, principalement pour temporiser des structures de composition algorithmique en temps réel.

[Note] Note

metro produit un signal déclencheur (égal à 1) lorsque sa phase vaut exactement 0 ou 1. Si l'on veut ignorer le déclencheur initial, il faut utiliser une très petite valeur de phase initiale comme 0.00000001.

Exemples

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

Exemple 584. Exemple de l'opcode metro.

<CsoundSynthesizer>
<CsOptions>
-odac -B441 -b441
</CsOptions>
<CsInstruments>

sr     =        44100
kr     =        100
ksmps  =        441
nchnls =        2

       instr    1
ktrig metro 0.2
printk2 ktrig
	endin

</CsInstruments>
<CsScore>
i 1 0 20


</CsScore>
</CsoundSynthesizer>


Voici un autre exemple de l'opcode metro. Il utilise le fichier metro-2.csd

Exemple 585. Un autre exemple de l'opcode metro

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

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

instr 1

kpch    random   1,20		;produce values at k-rate
ktrig   metro    10		;trigger 10 times per second
kval	samphold kpch, ktrig 	;change value whenever ktrig = 1 
asig	buzz	 1, 220, kval, 1;harmonics
        outs     asig, asig

endin
</CsInstruments>
<CsScore>
f 1 0 4096 10 1	; sine

i 1 0 10
e
</CsScore>
</CsoundSynthesizer>


Voir aussi

Plus d'information sur cet opcode dans les Floss Manuals : https://flossmanual.csound.com/csound-language/control-structures/

Crédits

Ecrit par Gabriel Maldonado.

Premier exemple écrit par Andrés Cabrera.

Nouveau dans Csound 5. (N'était auparavant disponible que dans CsoundAV).