delay — Retarde un signal d'entrée d'une certaine durée.
Un signal peut être lu ou écrit dans une ligne à retard, ou il peut être retardé automatiquement d'une certaine durée.
idlt -- délai demandé en secondes. Il peut être aussi grand que la mémoire disponible le permet. L'espace requis pour n secondes de délai est de 4n * sr octets. Il est alloué lorsque l'instrument est initialisé pour la première fois, et retourne dans le pool à la fin d'une section de partition.
iskip (facultatif, 0 par défaut) -- disposition initiale de l'espace des données de la boucle de retard (voir reson). La valeur par défaut est 0.
asig -- signal audio
delay est un composé de delayr et de delayw, écrivant et lisant à la fois dans son propre espace de stockage. Il peut ainsi accomplir un décalage temporel du signal, bien que la rétroaction variable ne soit pas possible. Il n'y a pas de durée de délai minimale.
Voici un exemple de l'opcode delay. Il utilise le fichier delay.csd.
Exemple 215. Exemple de l'opcode delay.
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 ;;;RT audio out ;-iadc ;;;uncomment -iadc if RT audio input is needed too ; For Non-realtime ouput leave only the line below: ; -o delay.wav -W ;;; for file output any platform </CsOptions> <CsInstruments> sr = 44100 ksmps = 32 nchnls = 2 0dbfs = 1 instr 1 adel init 0 ilev = p4 ;level of direct sound idelay = p5 *.001 ;Delay in ms ifd = p6 ;feedback ain diskin2 "fox.wav", 1, 1 adel delay ain + (adel*ifd), idelay;ifd = amount of feedback asig moogvcf adel, 1500, .6, 1 ;color feedback outs asig*ilev, ain endin </CsInstruments> <CsScore> ;Delay is in ms i 1 0 15 2 200 .95 ;with feedback i 1 4 5 2 20 .95 i 1 + 3 2 5 .95 i 1 + 3 3 5 0 ;no feedback e </CsScore> </CsoundSynthesizer>