lowpass2

lowpass2 — Un filtre passe-bas résonant.

Description

Implémentation d'un filtre passe-bas résonant du second ordre.

Syntaxe

ares lowpass2 asig, kcf, kq [, iskip]

Initialisation

iskip -- disposition initiale de la mémoire interne. Une valeur de zéro efface la mémoire ; une valeur différente de zéro permet de maintenir l'information précédente. La valeur par défaut est 0.

Exécution

asig -- signal d'entrée à filtrer

kcf -- fréquence de coupure ou de résonance du filtre, mesurée en Hz

kq -- Q du filtre, défini, pour les filtres passe-bande, comme le rapport (largeur de bande)/(fréquence de coupure). kq doit être compris entre 1 et 500.

lowpass2 est un filtre RII passe-bas du second ordre, avec contrôle au taux-k de la fréquence de coupure (kcf) et de Q (kq). Lorsque kq augmente un pic de résonance se forme autour de la fréquence de coupure, transformant la réponse du filtre passe-bas en une réponse semblable à celle d'un filtre passe-bande, mais avec plus d'énergie dans les basses fréquences. Cela correspond à un accroissement de la magnitude et de la "raideur" du pic de résonance. On peut avoir besoin d'une fonction comme balance pour les grandes valeurs de kq. En pratique, cela permet la simulation des filtres contrôlés en tension des synthétiseurs analogiques, ou bien la création d'une hauteur d'amplitude constante lorsque l'on filtre un bruit blanc.

Exemples

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

Exemple 540. Exemple de l'opcoce lowpass2.

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
; Audio out   Audio in
-odac             ;;;RT audio out
; For Non-realtime ouput leave only the line below:
;-o lpf18.wav -W ;;; for file output any platform
</CsOptions>
<CsInstruments>

; by Sean Costello

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

instr 1

idur    = p3
ifreq   = p4
iamp    = p5 
iharms  = (sr*.4) / ifreq
asig    gbuzz .3, ifreq, iharms, 1, .9, 1           ; Sawtooth-like waveform
kfreq   linseg 1, idur * 0.5, 5000, idur * 0.5, 1   ; Envelope to control filter cutoff
afilt   lowpass2 asig,kfreq, 30
kenv    linseg 0, .1, iamp, idur -.2, iamp, .1, 0   ; Simple amplitude envelope
outs    afilt * kenv, afilt * kenv

endin

</CsInstruments>
<CsScore>
f1 0 8192 9 1 1 .25
;       frq     amp
i1 0 5  100     .15
i1 5 5  200     .12
e
</CsScore>
</CsoundSynthesizer>


Crédits

Auteur : Sean Costello
Seattle, Washington
Août 1999

Nouveau dans la version 4.0 de Csound.