pvsbandp

pvsbandp — Un filtre passe-bande travaillant dans le domaine spectral.

Description

Filtre les trames pvoc, laissant passer les bins dont la fréquence se trouve dans une bande, avec interpolation linéaire pour les bandes de transition.

Syntaxe

fsig pvsbandp fsigin, xlowcut, xlowfull, \
      xhighfull, xhighcut[, ktype]

Exécution

fsig -- flot pv de sortie

fsigin -- flot pv d'entrée

xlowcut, xlowfull, xhighfull, xhighcut -- définissent une forme de trapèze pour la bande passante. 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 passe-bande avec une enveloppe spectrale formée comme ceci :


     klowfull __________________________ khighfull
             /                          \
            /                            \
           /                              \
          /                                \
         /                                  \
________/                                    \______________
        klowcut                       khighcut

Exemples

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

Exemple 808. Exemple de l'opcode pvsbandp.

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 pvsbandp.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  pvsbandp	fftin, klowcut, klowfull, khighfull, khighcut ; band pass
 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>


Voir aussi

pvsanal, pvsynth, pvsadsyn, pvsbandr

Crédits

Auteur : John ffitch
Décembre 2007