noise — Un générateur de bruit blanc avec un filtre passe-bas à RII.
xamp -- amplitude de la sortie finale
kbeta -- beta du filtre passe-bas. Doit être compris entre -1 et 1, à l'exclusion des extrémités (intervalle ouvert).
L'équation du filtre est :
où xn est le bruit blanc original et yn est le bruit filtré. Plus β est élevé, plus basse est la fréquence de coupure du filtre. La fréquence de coupure vaut approximativement sr * ((1 - kbeta) / 2).
Voici un exemple de l'opcode noise. Il utilise le fichier noise.csd.
Exemple 612. Exemple de l'opcode noise.
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 noise.wav -W ;;; for file output any platform </CsOptions> <CsInstruments> sr = 44100 ksmps = 32 nchnls = 2 0dbfs = 1 instr 1 kbeta line -0.9999, p3, 0.9999 ;change beta value between -1 to 1 asig noise .3, kbeta asig clip asig, 2, .9 ;clip signal outs asig, asig endin </CsInstruments> <CsScore> i 1 0 10 e </CsScore> </CsoundSynthesizer>
Voici un exemple de l'opcode noise dans lequel on contrôle le paramètre kbeta au moyen d'une interface graphique. Il utilise le fichier noise-2.csd.
Exemple 613. Exemple de l'opcode noise contrôlé par une interface graphique.
<CsoundSynthesizer> <CsOptions> ; Select audio/midi flags here according to platform ; Audio out Audio in No messages -odac ; -iadc -d ;;;RT audio I/O ; For Non-realtime ouput leave only the line below: ; -o noise.wav -W ;;; for file output any platform </CsOptions> <CsInstruments> sr = 44100 kr = 4410 ksmps = 10 nchnls = 2 FLpanel "noise", 200, 50, -1 , -1 gkbeta, gislider1 FLslider "kbeta", -1, 1, 0, 5, -1, 180, 20, 10, 10 FLpanelEnd FLrun instr 1 iamp = 0dbfs / 4 ; Peaks 12 dB below 0dbfs print iamp a1 noise iamp, gkbeta*0.9999 printk2 gkbeta*0.9999 outs a1,a1 endin </CsInstruments> <CsScore> ; Play Instrument #1 for one minute. i 1 0 60 e </CsScore> </CsoundSynthesizer>