pvsbandr — Un filtre réjecteur de bande travaillant dans le domaine spectral.
Filtre les trames pvoc, rejetant les bins dont la fréquence se trouve dans une bande, avec interpolation linéaire pour les bandes de transition.
fsig -- flot pv de sortie
fsigin -- flot pv d'entrée
xlowcut, xlowfull, xhighfull, xhighcut -- definissent une forme de trapèze pour la bande rejetée. Les versions au taux-a ne s'appliquent qu'à la version glissante.
ktype -- spécifie la forme de la bande de transition. S'il prend la valeur par défaut de zéro, la forme est celle représentée ci-dessous, avec une transition linéaire d'amplitude. Les autres valeurs donnent une forme exponentielle :
(1 - exp( r*type )) / (1 - exp(type))
Cela comprend une forme linéaire en dB lorsque ktype vaut log(10) soit environ 2.30.
L'opcode réalise un filtre réjecteur de bande avec une enveloppe spectrale formée comme ceci :
klowcut khighcut
________ ______________
\ /
\ /
\ /
\ /
\ /
klowfull\__________________________/ khighfull
Voici un exemple de l'opcode pvsbandr. Il utilise le fichier pvsbandr.csd.
Exemple 809. Exemple de l'opcode pvsbandr.
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 I/O ; For Non-realtime ouput leave only the line below: ; -o pvsbandr.wav -W ;;; for file output any platform </CsOptions> <CsInstruments> sr = 44100 ksmps = 32 nchnls = 2 0dbfs = 1 ;; example written by joachim heintz 2009 instr 1 Sfile = "fox.wav" klowcut = 100 klowfull = p4 khighfull = p5 khighcut = 2000 ain soundin Sfile fftin pvsanal ain, 1024, 256, 1024, 1; fft-analysis of the audio-signal fftbp pvsbandr fftin, klowcut, klowfull, khighfull, khighcut ; band reject abp pvsynth fftbp; resynthesis outs abp, abp endin </CsInstruments> <CsScore> ; lowfull highfull i 1 0 3 200 1900 i 1 + 3 100 1500 e </CsScore> </CsoundSynthesizer>