pvsfreeze

pvsfreeze — Gèle les fonctions temporelles d'amplitude et de fréquence d'un flot pv selon un déclencheur au taux de contrôle.

Description

cet opcode "gèle" l'évolution d'un flot pvs en figeant les valeurs d'amplitude et/ou de fréquence de chaque bin. Le gel des valeurs est contrôlé indépendamment pour les amplitudes et pour les fréquences par un déclencheur au taux de contrôle qui active le gel s'il est supérieur ou égal à 1 et le désactive s'il est inférieur à 1.

Syntaxe

fsig pvsfreeze fsigin, kfreeza, kfreezf

Exécution

fsig -- flot pv de sortie.

fsigin -- flot pv d'entrée.

kfreeza -- contrôle du gel des amplitudes. Le gel est actif pour les valeurs supérieures ou égales à 1 et inactif pour les valeurs inférieures à 1.

kfcf -- contrôle du gel des fréquences. Le gel est actif pour les valeurs supérieures ou égales à 1 et inactif pour les valeurs inférieures à 1.

[Avertissement] Avertissement

Il est dangereux d'utiliser la même variable-f à la fois comme entrée et comme sortie des opcodes pvs. Ceci peut produire un comportement indéfini de certains de ces opcodes. Utilisez une variable différente à gauche et à droite de l'opcode.

Exemples

Exemple 722. Exemples

asig  in                                       ; input
ktrig oscil     1.5, 0.25, 1                   ; trigger
fim   pvsanal   asig1, 1024, 256, 1024, 0      ; pvoc analysis 
fou   pvsfreeze fim, abs(ktrig), abs(ktrig)    ; regular 'freeze' of spectra
aout  pvsynth   fou                            ; pvoc synthesis


Dans l'exemple ci-dessus, le signal d'entrée sera régulièrement "gelé" un court instant lorsque le déclencheur dépasse 1, environ toutes les deux secondes.

Voici in exemple de l'opcoce pvsfreeze. Il utilise le fichier pvsfreeze.csd.

Exemple 723. Exemple de l'opcoce pvsfreeze.

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>
-odac
</CsOptions>
<CsInstruments>

sr = 44100
ksmps = 16
nchnls = 1
0dbfs = 1

;; example written by joachim heintz 2009

		seed		0

instr 1
ifftsize	=		1024
ioverlap	=		ifftsize / 4
iwinsize	=		ifftsize
iwinshape	=		1; von-Hann window
Sfile1		=		"fox.wav"
ain		soundin	Sfile1
kfreq		randomh	.7, 1.1, 3; probability of freezing freqs: 1/4
kamp		randomh	.7, 1.1, 3; idem for amplitudes
fftin		pvsanal	ain, ifftsize, ioverlap, iwinsize, iwinshape; fft-analysis of file
freeze		pvsfreeze	fftin, kamp, kfreq; freeze amps or freqs independently
aout		pvsynth	freeze; resynthesize
		out		aout
endin

</CsInstruments>
<CsScore>
r 10
i 1 0 2.757
e
</CsScore>
</CsoundSynthesizer>


Voir aussi

pvsanal, pvsynth, pvsadsyn

Crédits

Auteur : Victor Lazzarini
Mai 2006

Nouveau greffon dans la version 5

Mai 2006.