tradsyn

tradsyn — Synthèse additive d'un flot de suivi de partiels.

Description

L'opcode tradsyn prend en entrée un flot de signal TRACKS pv (tel que généré, par exemple, par partials), comme décrit dans Lazzarini et al, "Time-stretching using the Instantaneous Frequency Distribution and Partial Tracking", Proc.of ICMC05, Barcelone. Il resynthétise le signal en utilisant une interpolation linéaire de l'amplitude et de la fréquence pour piloter un banc d'oscillateurs interpolants avec pondération de l'amplitude et de la hauteur.

Syntaxe

asig tradsyn fin, kscal, kpitch, kmaxtracks, ifn

Exécution

asig -- signal de sortie au taux audio.

fin -- flot pv d'entrée au format TRACKS.

kscal -- pondération d'amplitude.

kpitch -- pondération de hauteur.

kmaxtracks -- nombre maximum de canaux dans la resynthèse. En limitant ce dernier, on obtient un effet de filtrage non-linéaire en ignorant les canaux les plus récents et de fréquences hautes (les canaux sont ordonnés respectivement par date de début et par fréquence ascendante).

ifn -- table de fonction contenant une période de sinusoïde (sinus ou cosinus).

Exemples

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

Exemple 972. Exemple de l'opcode tradsyn.

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

sr = 44100
ksmps = 32
nchnls = 2
0dbfs  = 1

instr 1

ipch = p4
ain  diskin2 "beats.wav", 1
fs1,fsi2 pvsifd ain,2048,512,1		; ifd analysis
fst  partials fs1,fsi2,.003,1,3,500	; partial tracking
aout tradsyn fst, 1, ipch, 500, 1	; resynthesis
     outs aout, aout

endin
</CsInstruments>
<CsScore>
f1 0 8192 10 1

i 1 0 2 1.5	;up a 5th
i 1 + 2  .5	;octave down
e
</CsScore>
</CsoundSynthesizer>


L'exemple ci-dessus montre le suivi de partiels d'un signal d'analyse par distribution de fréquence instantanée et la resynthèse additive linéaire avec transposition de la hauteur.

Crédits

Auteur : Victor Lazzarini
Juin 2005

Nouveau greffon dans la version 5

Novembre 2004.