comb — Réverbère un signal d'entrée avec une réponse en fréquence « colorée ».
ilpt -- durée de boucle en secondes, déterminant la « densité d'échos » de la réverbération. Celle-ci caractérise à son tour la « couleur » du filtre en peigne dont la courbe de réponse en fréquence contiendra ilpt * sr/2 pics régulièrement espacés entre 0 et sr/2 (la fréquence de Nyquist). La durée de boucle peut être aussi grande que le permet la mémoire disponible. L'espace requis pour une boucle de n secondes est de n*sr nombres de type float ou double (habituellement 4 ou 8 octets). L'espace pour le retard est alloué et retourné comme dans delay.
iskip (facultatif, 0 par défaut) -- état initial de l'espace de données de la boucle de retard (cf. reson). La valeur par défaut est 0.
insmps (facultatif, 0 par défaut) -- valeur du retard, en nombre d'échantillons.
krvt -- la durée de réverbération (définie comme le temps en secondes pris par un signal pour décroitre à 1/1000 ou 60 dB de son amplitude originale).
Ce filtre répète l'entrée avec une densité d'écho déterminée par la durée de boucle ilpt. Le taux d'atténuation est indépendant et il est déterminé par krvt, la durée de réverbération (définie comme le temps en secondes pris par un signal pour décroitre à 1/1000 ou 60 dB de son amplitude originale). La sortie d'un filtre en peigne n'apparait qu'après ilpt secondes.
Voici un exemple de l'opdoce comb. Il utilise le fichier comb.csd.
Exemple 152. Exemple de l'opdoce comb.
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 comb.wav -W ;;; for file output any platform </CsOptions> <CsInstruments> sr = 44100 ksmps = 32 nchnls = 2 0dbfs = 1 gamix init 0 instr 1 kcps expon p5, p3, p4 asig vco2 0.3, kcps outs asig, asig gamix = gamix + asig endin instr 99 krvt = 3.5 ilpt = 0.1 aleft comb gamix, krvt, ilpt aright comb gamix, krvt, ilpt*.2 outs aleft, aright clear gamix ; clear mixer endin </CsInstruments> <CsScore> i 1 0 3 20 2000 i 1 5 .01 440 440 i 99 0 8 e </CsScore> </CsoundSynthesizer>