fft — Transformée de Fourier rapide dans le domaine complexe.
Applique une transformée de Fourier rapide directe à un tableau unidimensionnel de valeurs complexes produisant une sortie complexe. Cette sortie est un autre tableau contenant les valeurs complexes du signal, et les deux tableaux sont au format réel-imaginaire entrelacé. Le tableau de sortie a la même taille que le tableau d'entrée et la taille de la transformée est équivalente à la moitié de la longueur du tableau. Les transformées non puissance de deux sont restreintes à des tailles paires avec un nombre pas trop élevé de facteurs.
kout[] -- tableau contenant les valeurs complexes de sortie. Créé s'il n'existe pas.
kin[] -- tableau contenant les valeurs complexes d'entrée.
Voici un exemple de l'opcode fft. Il utilise le fichier fft.csd.
Exemple 303. Exemple de l'opcode fft.
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> -d -o dac </CsOptions> <CsInstruments> ksmps = 64 instr 1 ifftsize = 1024 kcnt init 0 kIn[] init ifftsize kOut[] init ifftsize a1 oscili 0dbfs/2, 440 if kcnt >= ifftsize then kCmplx[] r2c kIn kSpec[] fft kCmplx kCmplx fftinv kSpec kOut c2r kCmplx kcnt = 0 endif kIn[] shiftin a1 a2 shiftout kOut kcnt += ksmps out a2 endin </CsInstruments> <CsScore> i1 0 10 </CsScore> </CsoundSynthesizer>