moogvcf

moogvcf — Une simulation numérique de la configuration du filtre en échelle à diode de Moog.

Description

Une simulation numérique de la configuration du filtre en échelle à diode de Moog.

Syntaxe

ares moogvcf asig, xfco, xres [,iscale, iskip]

Initialisation

iscale (facultatif, 1 par défaut) -- facteur de pondération interne. A utiliser si asig n'est pas dans l'intervalle +/-1. L'entrée est d'abord divisée par iscale, puis la sortie est multipliée par iscale. La valeur par défaut est 1. (Nouveau dans la version 3.50 de Csound).

iskip (facultatif, 0 par défaut) -- s'il est non nul, l'initialisation du filtre est ignorée. (Nouveau dans les versions 4.23f13 et 5.0 de Csound).

Exécution

asig -- signal d'entrée

xfco -- fréquence de coupure du filtre en Hz. A partir de la version 3.50, peut-être de taux-i, de taux-k ou de taux-a.

xres -- quantité de résonance. Il y a des auto-oscillations lorsque xres est proche de 1. A partir de la version 3.50, peut-être de taux-i, de taux-k ou de taux-a.

moogvcf est une simulation numérique de la configuration du filtre en échelle à diode de Moog. Cette émulation est librement basée sur le papier « Analyzing the Moog VCF with Considerations for Digital Implementation » par Stilson et Smith (CCRMA). Cette version fut codée dans Csound à l'origine par Josep Comajuncosas. Quelques modifications et conversions en C ont été apportées par Hans Mikelson.

[Avertissement] Avertissement

Ce filtre nécessite un signal d'entrée normalisé à un. On peut l'obtenir facilement au moyen de 0dbfs, comme ceci :

ares moogvcf asig, kfco, kres, 0dbfs

On peut aussi utiliser moogvcf2 qui utilise comme mise à l'échelle par défaut 0dbfs.

Exemples

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

Exemple 379. Exemple de l'opcode moogvcf.

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    No messages
-odac           -iadc     -d     ;;;RT audio I/O
; For Non-realtime ouput leave only the line below:
; -o moogvcf.wav -W ;;; for file output any platform
</CsOptions>
<CsInstruments>

; Initialize the global variables.
sr = 44100
kr = 4410
ksmps = 10
nchnls = 1

; Instrument #1.
instr 1
  ; Use a nice sawtooth waveform.
  asig vco 32000, 220, 1

  ; Vary the filter-cutoff frequency from .2 to 2 KHz.
  kfco line 200, p3, 2000

  ; Set the resonance amount to one.
  krez init 1

  ; Scale the amplitude to 32768.
  iscale = 32768

  a1 moogvcf asig, kfco, krez, iscale

  out a1
endin


</CsInstruments>
<CsScore>

; Table #1, a sine wave for the vco opcode.
f 1 0 16384 10 1

; Play Instrument #1 for three seconds.
i 1 0 3
e


</CsScore>
</CsoundSynthesizer>


Voir Aussi

moogvcf2, biquad, rezzy

Crédits

Auteur : Hans Mikelson
Octobre 1998

Exemple écrit par Kevin Conder.

Nouveau dans la version 3.49 de Csound.