trsplit

trsplit — Séparation en fréquence d'un flot de suivi de partiels.

Description

L'opcode trsplit prend en entrée un flot de signal TRACKS pv (tel que généré, par exemple, par partials) et le sépare en deux signaux selon un "point de séparation" en fréquence variant au taux-k. La première sortie contiendra tous les canaux de 0 Hz à la fréquence de séparation et la seconde sortie contiendra les canaux de la fréquence de séparation à la fréquence de Nyquist. Il peut aussi, facultativement, pondérer le gain des signaux de sortie par une quantité de taux-k (1 par défaut). Le résultat est constitué de deux signaux ne contenant chacun qu'une partie du spectre original.

Syntaxe

fsiglow, fsighi trsplit fin, ksplit [, kgainlow, kgainhigh]

Exécution

fsiglow -- flot pv de sortie au format TRACKS contenant les canaux sous le point de séparation.

fsighi -- flot pv de sortie au format TRACKS contenant les canaux au-dessus de et incluant le point de séparation.

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

ksplit -- point de séparation des fréquences en Hz.

kgainlow, kgainhig -- pondération d'amplitude de chaque sortie (1 par défaut).

Exemples

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

Exemple 927. Exemple de l'opcode trsplit.

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

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

instr 1

ain	 diskin2 "beats.wav", 1
fs1,fsi2 pvsifd  ain, 2048, 512, 1		; ifd analysis
fst	 partials fs1, fsi2, .003, 1, 3, 500	; partial tracking
fslo,fshi trsplit fst, 1500			; split partial tracks at 1500 Hz
aout	 tradsyn fshi, 1, 1, 500, 1	; resynthesis of tracks above 1500Hz
         outs aout, aout

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

i 1 0 2
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 de la partie supérieure du spectre (à partir de 1500 Hz).

Crédits

Auteur : Victor Lazzarini
Février 2006

Nouveau dans Csound 5.01