trshift — Pondération en fréquence d'un flot de suivi de partiels.
L'opcode trshift prend en entrée un flot de signal TRACKS pv (tel que généré, par exemple, par partials) et décale toutes les fréquence d'une fréquence de taux-k. Il peut aussi, facultativement, pondérer le gain du signal par une quantité de taux-k (1 par défaut). Le résultat est un décalage en fréquence des canaux d'entrée.
fsig -- flot pv de sortie au format TRACKS.
fin -- flot pv d'entrée au format TRACKS.
kshift -- décalage de fréquence en Hz.
kgain -- pondération d'amplitude (1 par défaut).
Voici un exemple de l'opcode trshift. Il utilise le fichier trshift.csd.
Exemple 1127. Exemple de l'opcode trshift.
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 trshift.wav -W ;;; for file output any platform </CsOptions> <CsInstruments> sr = 44100 ksmps = 32 nchnls = 2 0dbfs = 1 instr 1 kpsft = p4 ain diskin2 "fox.wav", 1 fs1, fsi2 pvsifd ain, 2048, 512, 1 ; ifd analysis fst partials fs1, fsi2, 0.003, 1, 3, 500 ; partial tracking fscl trshift fst, kpsft ; frequency shift aout tradsyn fscl, 1, 1, 500, 1 ; resynthesis outs aout, aout endin </CsInstruments> <CsScore> f1 0 8192 10 1 ;sine i 1 0 3 150 ;adds 150Hz to all tracks i 1 + 3 500 ;adds 500Hz to all tracks 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 décalage de fréquence.