fofilter

fofilter — Filtre à formant.

Description

Lorsqu'il reçoit un train d'impulsions, fofilter génère un flux de grains sinusoïdaux se recouvrant. Chaque grain est la réponse impulsionnelle d'une combinaison de deux filtres passe-bande. Les grains sont définis par leur durée d'attaque (qui détermine la largeur de jupe de la région formantique à -60dB) et leur durée de chute (largeur de bande à -6dB). Le recouvrement se produit quand 1/freq < decay, mais, à la différence de FOF, il n'y a pas de limite supérieure au nombre de recouvrements. L'idée originale de cet opcode est venue de la classe formlet dans SuperCollider de J McCartney's, mais peut-être est-elle implémentée différemment (?).

Syntaxe

asig fofilter ain, xcf, xris, xdec[, istor]

Initialisation

istor -- é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.

xcf -- fréquence centrale du filtre.

xris -- durée d'attaque de la réponse impulsionnelle (secs).

xdec -- durée de chute de la réponse impulsionnelle (secs).

Exemples

Voici un exemple de l'opcode fofilter. Il utilise le fichier fofilter.csd.

Exemple 363. Exemple de l'opcode fofilter.

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 fofilter.wav -W ;;; for file output any platform
</CsOptions>
<CsInstruments>

sr = 44100
ksmps = 32  
nchnls = 2
0dbfs  = 1

instr 1

kfe  expseg 10, p3*0.9, 180, p3*0.1, 175
kenv linen .1, 0.05, p3, 0.05
asig buzz  kenv, kfe, sr/(2*kfe), 1
afil fofilter asig, 900, 0.007, 0.04
     outs  afil, afil 

endin
</CsInstruments>
<CsScore>
; sine wave
f 1 0 16384 10 1

i 1 0 10
e
</CsScore>
</CsoundSynthesizer>


Crédits

Auteur : Victor Lazzarini
Janvier 2005

Nouveau greffon dans la version 5

Paramètres de taux audio introduits dans la version 6.02

Octobre 2013.