lowpass2 — Un filtre passe-bas résonant.
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.
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.
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>