resony

resony — Un banc de filtres passe-bande du second ordre, connectés en parallèle.

Description

Un banc de filtres passe-bande du second ordre, connectés en parallèle.

Syntaxe

ares resony asig, kbf, kbw, inum, ksep [, isepmode] [, iscl] [, iskip]

Initialisation

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.

Exécution

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.

Exemples

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>


Crédits

Auteur : Gabriel Maldonado
Italie
1999

Nouveau dans la version 3.56 de Csound.