tbvcf
Précédent | Opcodes et opérateurs de l'orchestre | Suivant

## tbvcf

tbvcf — Modélise quelques caractéristiques du filtre contrôlé en tension du TB303 de Roland.

## Description

Cet opcode est un essai de modélisation de quelques caractéristiques du filtre contrôlé en tension du TB303 de Roland. On utilise la méthode d'Euler pour obtenir une approximation du système, plutôt que les méthodes traditionnelles des filtres. La fréquence de coupure, Q, et la distorsion sont tous interdépendants. Des méthodes empiriques ont été utilisées pour essayer de les séparer, ce qui a pour effet de rendre la fréquence approximative. La résolution future de certains problèmes de cet opcode pourrait rendre inopérants les orchestres existants qui utilisent cette version de tbvcf.

## Syntaxe

    ares tbvcf asig, xfco, xres, kdist, kasym [, iskip]

## Initialisation

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. Doit être normalisé à ±1.

xfco -- fréquence de coupure du filtre. L'intervalle optimal va de 10000 à 1500. Les valeurs inférieures à 1000 peuvent poser problème.

xres -- résonance ou Q. Typiquement compris entre 0 et 2.

kdist -- quantité de distortion. Une valeur typique est 2. Si kdist s'écarte de 2 de manière significative, il peut y avoir des intéractions bizarres entre xfco et xres.

kasym -- asymétrie de la résonance. Typiquement comprise entre 0 et 1.

## Exemples

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

Exemple 954. Exemple de l'opcode tbvcf.

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 tbvcf.wav -W ;;; for file output any platform
    </CsOptions>
    <CsInstruments>

    ;---------------------------------------------------------
    ; TBVCF Test
    ; Coded by Hans Mikelson December, 2000
    ;---------------------------------------------------------
      sr =  44100   ; Sample rate
      ksmps =  10   ; Samples/Kontrol period
      nchnls =  2        ; Normal stereo
      0dbfs = 1

              instr 10

      idur	=	p3			; Duration
      iamp	=	p4			; Amplitude
      ifqc	=	cpspch(p5)		; Pitch to frequency
      ipanl	=	sqrt(p6)		; Pan left
      ipanr	=	sqrt(1-p6)		; Pan right
      iq	=	p7
      idist	=	p8
      iasym =	p9

    kdclck		linseg	0, .002, 1, idur-.004, 1, .002, 0	; Declick envelope
    kfco		expseg	10000, idur, 1000			; Frequency envelope
    ax		vco		1, ifqc, 2, 0.5			; Square wave
    ay		tbvcf		ax, kfco, iq, idist, iasym		; TB-VCF
    ay		buthp	ay/1, 100				; Hi-pass

    		outs		ay*iamp*ipanl*kdclck, ay*iamp*ipanr*kdclck
              endin

    </CsInstruments>
    <CsScore>

    f1 0 65536 10 1

    ; TeeBee Test
    ;   Sta  Dur  Amp    Pitch Pan  Q    Dist1 Asym
    i10 0    0.2  0.5    7.00  .5   0.0  2.0   0.0
    i10 0.3  0.2  0.5    7.00  .5   0.8  2.0   0.0
    i10 0.6  0.2  0.5    7.00  .5   1.6  2.0   0.0
    i10 0.9  0.2  0.5    7.00  .5   2.4  2.0   0.0
    i10 1.2  0.2  0.5    7.00  .5   3.2  2.0   0.0
    ;i10 1.5  0.2  0.5    7.00  .5   4.0  2.0   0.0
    i10 1.8  0.2  0.5    7.00  .5   0.0  2.0   0.25
    i10 2.1  0.2  0.5    7.00  .5   0.8  2.0   0.25
    i10 2.4  0.2  0.5    7.00  .5   1.6  2.0   0.25
    i10 2.7  0.2  0.5    7.00  .5   2.4  2.0   0.25
    i10 3.0  0.2  0.5    7.00  .5   3.2  2.0   0.25
    i10 3.3  0.2  0.5    7.00  .5   4.0  2.0   0.25
    i10 3.6  0.2  0.5    7.00  .5   0.0  2.0   0.5
    i10 3.9  0.2  0.5    7.00  .5   0.8  2.0   0.5
    i10 4.2  0.2  0.5    7.00  .5   1.6  2.0   0.5
    i10 4.5  0.2  0.5    7.00  .5   2.4  2.0   0.5
    i10 4.8  0.2  0.5    7.00  .5   3.2  2.0   0.5
    i10 5.1  0.2  0.5    7.00  .5   4.0  2.0   0.5
    i10 5.4  0.2  0.5    7.00  .5   0.0  2.0   0.75
    i10 5.7  0.2  0.5    7.00  .5   0.8  2.0   0.75
    i10 6.0  0.2  0.5    7.00  .5   1.6  2.0   0.75
    i10 6.3  0.2  0.5    7.00  .5   2.4  2.0   0.75
    i10 6.6  0.2  0.5    7.00  .5   3.2  2.0   0.75
    i10 6.9  0.2  0.5    7.00  .5   4.0  2.0   0.75
    i10 7.2  0.2  0.5    7.00  .5   0.0  2.0   1.0
    i10 7.5  0.2  0.5    7.00  .5   0.8  2.0   1.0
    i10 7.8  0.2  0.5    7.00  .5   1.6  2.0   1.0
    i10 8.1  0.2  0.5    7.00  .5   2.4  2.0   1.0
    i10 8.4  0.2  0.5    7.00  .5   3.2  2.0   1.0
    i10 8.7  0.2  0.5    7.00  .5   4.0  2.0   1.0
    e

    </CsScore>
    </CsoundSynthesizer>

## Crédits

Auteur : Hans Mikelson
Décembre, 2000 -- Janvier, 2001

Nouveau dans Csound 4.10

Précédent | Niveau supérieur | Suivant
taninv2 | Sommaire | tempest