pvsvoc
Prev | Opcodes et opérateurs de l'orchestre | Next

## pvsvoc

pvsvoc — Combine l'enveloppe spectrale d'un fsig avec l'excitation (les fréquences) d'un autre fsig.

## Description

Cet opcode fournit un support pour la synthèse croisée des amplitudes et des fréquences. Il prend les amplitudes d'un fsig en entrée et les combine avec les fréquences d'un autre fsig. C'est une version spectrale du célèbre vocodeur.

## Syntaxe

    fsig pvsvoc famp, fexc, kdepth, kgain [,kcoefs]

## Exécution

fsig -- flot pv de sortie

famp -- flot pv d'entrée duquel sont extraites les amplitudes

fexc -- flot pv d'entrée duquel sont prises les fréquences

kdepth -- importance de l'effet, affectant la quantité de fréquences prélevées sur le second fsig : 0, la sortie est le signal famp, 1 la sortie combine les amplitudes de famp avec les fréquences de fexc.

kgain -- gain de renforcement/atténuation appliqué à la sortie.

kcoefs -- nombre de coefficients du cepstre utilisés dans l'estimation de l'enveloppe spectrale (vaut 80 par défaut).

| Warning
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

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

Example 715. Exemple de l'opcode pvsvoc.

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

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

    gisaw	ftgen	1, 0, 2048, 10, 1, 0.5, 0.3, 0.25, 0.2	;sawtooth-like

    instr 1

    asig in					;get the signal in
    asyn poscil .6, 150, gisaw		;excitation signal of 150 Hz

    famp pvsanal asig, 1024, 256, 1024, 1	;analyse in signal
    fexc pvsanal asyn, 1024, 256, 1024, 1	;analyse excitation signal
    ftps pvsvoc  famp, fexc, 1, 1		;cross it
    atps pvsynth ftps			;synthesise it
         outs atps, atps

    endin
    </CsInstruments>
    <CsScore>

    i 1 0 10
    e
    </CsScore>
    </CsoundSynthesizer>

L'exemple ci-dessus montre une opération typique de synthèse croisée. Le signal d'entrée (disons un signal vocal) est utilisé pour son spectre d'amplitude. Un oscillateur avec une forme d'onde complexe arbitraire produit le signal d'excitation, donnant au son vocal sa hauteur.

## Crédits

Auteur : Victor Lazzarini
Avril 2005

Nouveau greffon dans la version 5

Avril 2005.

Prev | Up | Next
pvstencil | Home | pvsynth