flanger — Un flanger contrôlé par l'utilisateur.
imaxd(facultatif) -- délai maximum en secondes (nécessaire pour l'allocation initiale de mémoire)
asig -- signal d"entrée
adel -- délai en secondes
kfeedback -- taux de rétroaction (en utilisation normale, ne doit pas dépasser 1, même si des valeurs supérieures sont permises)
Cette unité est utile pour générer des chorus et des flangers. Le retard doit être varié au taux-a, par exemple en connectant adel à la sortie d'un oscillateur. La rétroaction peut varier au taux-k. Cet opcode est implémenté de façon à ce que kr puisse être différent de sr (sinon le délai ne pourrait pas être inférieur à ksmps) ce qui facilite l'exécution en temps réel. Cette unité ressemble beaucoup à wguide1, la seule différence étant que flanger n'a pas de filtre passe-bas ou le fait qu'on ne peut varier le retard qu'au taux-a.
Voici un exemple de l'opcode flanger. Il utilise le fichier flanger.csd.
Exemple 308. Exemple de l'opcode flanger.
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 flanger.wav -W ;;; for file output any platform </CsOptions> <CsInstruments> sr = 44100 ksmps = 32 nchnls = 2 0dbfs = 1 instr 1 kfeedback = p4 asnd vco2 .2, 50 adel linseg 0, p3*.5, 0.02, p3*.5, 0 ;max delay time =20ms aflg flanger asnd, adel, kfeedback asig clip aflg, 1, 1 outs asig+asnd, asig+asnd ;mix flanger with original endin </CsInstruments> <CsScore> i 1 0 10 .2 i 1 11 10 .8 ;lot of feedback e </CsScore> </CsoundSynthesizer>