resony — Un banc de filtres passe-bande du second ordre, connectés en parallèle.
inum -- nombre de filtres
isepmode (facultatif, 0 par défaut) -- si isepmode = 0, la séparation des fréquences centrales de chaque filtre est générée logarithmiquement (en utilisant l'octave comme unité de mesure). Si isepmode est différent de 0, la séparation des fréquences centrales de chaque filtre est généralement linéaire (en Hz). La valeur par défaut est 0.
iscl (facultatif, 0 par défaut) -- facteur de pondération codé pour les résonateurs. Une valeur de 1 signifie que la crête du facteur de réponse est 1, c-à-d. toutes les fréquences autres que kcf sont atténuées selon la courbe de réponse (normalisée). Une valeur de 2 élève le facteur de réponse de façon à ce que sa valeur efficace globale soit égale à 1. Cette égalisation intentionnelle des puissances d'entrée et de sortie suppose que toutes les fréquences sont présentes ; elle est ainsi plus appropriée au bruit blanc. Une valeur de 0 signifie aucune pondération du signal, laissant cette tâche à un ajustement ultérieur (voir balance). La valeur par défaut est 0.
iskip (facultatif, 0 par défaut) -- état initial de l'espace de données interne. Comme le filtrage comprend une boucle de rétroaction sur la sortie précédente, l'état initial de l'espace de stockage utilisé est significatif. Une valeur nulle provoquera l'effacement de cet espace ; une valeur non nulle autorisera la persistance de l'information précédente. La valeur par défaut est 0.
asig -- signal d'entrée audio
kbf -- fréquence de base, c-à-d fréquence centrale en Hz du filtre le plus bas
kbw -- largeur de bande en Hz
ksep -- séparation de la fréquence centrale des filtres en octaves
resony est un banc de filtres passe-bande du second ordre, avec séparation des fréquences, fréquence de base et largeur de bande variables au taux-k, connectés en parallèle (le signal résultant est un mélange de la sortie de chaque filtre). La fréquence centrale de chaque filtre dépend des variables kbf et ksep. Le nombre maximum de filtres est limité à 100.
Voici un exemple de l'opcode resony. Il utilise le fichier resony.csd.
Exemple 902. Exemple de l'opcode resony.
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 resonx.wav -W ;;; for file output any platform </CsOptions> <CsInstruments> sr = 44100 ksmps = 32 nchnls = 2 0dbfs = 1 instr 1 ; unfiltered noise kenv linseg 0, p3*.5, 1, p3*.5, 0 ;envelope asig rand 0.7 ;white noise outs asig*kenv, asig*kenv endin instr 2 ; filtered noise ksep = p4 ;vary seperation of center frequency of filters in octaves kenv linseg 0, p3*.5, 1, p3*.5, 0 ;envelope asig rand 0.7 kbf line 300, p3, 2000 ;vary base frequency afilt resony asig, kbf, 300, 4, ksep asig balance afilt, asig outs asig*kenv, asig*kenv endin </CsInstruments> <CsScore> i 1 0 2 i 2 3 2 1 i 2 6 2 3 e </CsScore> </CsoundSynthesizer>