mincer

mincer — Traitement vocodeur à verrouillage de phase.

Description

mincer implémente le traitement vocodeur à verrouillage de phase en utilisant des tables de fonction contenant des sources sonores échantillonnées avec GEN01. mincer accepte les tables à allocation différée.

Cet opcode permet des mises à l'échelle du temps et de la fréquence indépendantes. Le temps est contrôlé par un indice temporel (en secondes) de la position dans la table de fonction et peut évoluer en avant ou en arrière à n'importe quelle vitesse ainsi que s'arrêter à une position donnée ("gelé"). La qualité de l'effet est généralement améliorée avec le verrouillage de phase activé.

mincer met aussi à l'échelle la hauteur, indépendamment de la fréquence, en utilisant un facteur de transposition (de taux-k).

Syntaxe

asig mincer atimpt, kamp, kpitch, ktab, klock[,ifftsize,idecim]
      

Initialisation

ifftsize -- taille de la TFR size (puissance de deux), 2048 par défaut.

idecim -- décimation, 4 par défaut (ce qui signifie que la taille du saut est égale à la taille de la TFR divisée par 4)

Exécution

atimpt -- position temporelle de l'échantillon audio courant en secondes. La lecture de table cycle à la fin de la table de fonction.

kamp -- mise à l'échelle de l'amplitude.

kpitch -- mise à l'échelle de la hauteur de grain (1=hauteur normale, < 1 plus grave, > 1 plus aigu ; négatif, inversée)

klock -- 0 ou 1, pour désactiver ou activer le verrouillage de phase.

ktab -- table de fonction du signal source. Les tables à allocation différée sont acceptées (voir GEN01), mais l'opcode attend une source mono. On peut changer de table au taux-k.

Exemples

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

Exemple 535. Exemple de l'opcode mincer.

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

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

instr 1

idur  = p3
ilock = p4
ipitch = 1
itimescale = 0.5
iamp  = 0.8

atime line   0,idur,idur*itimescale
asig  mincer atime, iamp, ipitch, 1, ilock
      outs asig, asig

endin
</CsInstruments>
<CsScore>
f 1 0 0 1 "fox.wav" 0 0 0

i 1 0 5 0	;not locked
i 1 6 5 1	;locked

e

</CsScore>
</CsoundSynthesizer>


Crédits

Auteur : Victor Lazzarini
Février 2010

Nouveau greffon dans la version 5.13

Février 2005.