GEN53

GEN53 — Crée une table de réponse impulsionnelle à phase linéaire ou minimale à partir d'une table source contenant une réponse en fréquence ou une réponse impulsionnelle.

Description

GEN53 crée une table de réponse impulsionnelle avec soit une phase linéaire soit une phase minimale. La source peut soit être une réponse fréquentielle soit une réponse impulsionnelle, stockée dans une table existante. Une autre table de fonction peut être utilisée facultativement comme fenêtre sur le signal en entrée et/ou en sortie.

Syntaxe

f # time size 53 fsrc [mode fwin]

fsrc - table de fonction source. Si c'est une réponse impulsionnelle, sa taille doit correspondre à celle de la table de fonction créée. Si c'est une réponse fréquentielle, la taille de la fonction créée doit être deux fois plus grande que celle de la source. Les tailles doivent être des puissances de deux.

mode - facultatif, le mode opératoire, somme de (a) l'entrée, réponse en fréquence (0) ou réponse impulsionnelle (1), (b) la sortie, phase linéaire (0) ou phase minimale (2), (c) fenêtrage, aucun (0), entrée (4), et/ou sortie (8). Le mode par défaut (0) est réponse en fréquence en entrée, sortie à phase linéaire, pas de fenêtrage.

fwin - table de fonction de la fenêtre, dont la taille doit être une puissance de deux mais pas forcément égale à la taille de la table de fonction créée.

Exemple

Voici un exemple complet du générateur GEN53. Il utilise le fichier gen53.csd.

Exemple 1314. Exemple du générateur GEN53.

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>
-o dac
</CsOptions>
<CsInstruments>


instr 1

a1 diskin "fox.wav"
a2 ftconv a1, p5, 256
   out a2*p4
   
endin

</CsInstruments>
<CsScore>
; impulse response
f1 0 131072 1 "ir.wav" 0 0 1
; minimum-phase version
f2 0 131072 53 1 3

; Hann window
f3 0 1024  20  1 1
; low-pass frequency response
f4 0 1024 7 0 100 0 24 1 900 1
; low-pass linear-phase IR
f5 0 2048 53 4 4 3 

;        scale  IR
i1  0  3 0.25   2
i1  +  3 1      5 
</CsScore>
</CsoundSynthesizer>


Crédits

Auteur : Istvan Varga