vexpseg
Précédent | Opcodes et opérateurs de l'orchestre | Suivant

## vexpseg

vexpseg — Générateur d'enveloppe vectorielle.

## Description

Génère des segments exponentiels vectoriels.

## Syntaxe

    vexpseg  ifnout, ielements, ifn1, idur1, ifn2 [, idur2, ifn3 [...]]

## Initialisation

ifnout - numéro de la table hébergeant le signal vectoriel de sortie.

ifn1 - vecteur de départ.

ifn2, ifn3, etc. - vecteur après idurx secondes.

idur1 - durée en secondes du premier segment.

idur2, idur3, etc. - durée en secondes des segments suivants.

ielements - nombre de composantes des vecteurs.

## Exécution

Ces opcodes sont semblables à linseg et à expseg, mais ils opèrent avec des signaux vectoriels au lieu de signaux scalaires.

La sortie est un signal vectoriel de contrôle hébergé par ifnout (qui doit avoir été allouée au préalable), tandis que chaque point charnière de l'enveloppe est un vecteur de valeurs. Tous les points charnière doivent avoir le même nombre de composantes (ielements).

Tous ces opérateurs sont conçus pour être utilisés avec d'autres opcodes qui opèrent sur des signaux vectoriels tels que vcella, adsynt, adsynt2, etc.

## Exemples

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

Exemple 1166. Exemple de l'opcode vexpseg.

    <CsoundSynthesizer>
    <CsOptions>
    -odac -B441 -b441
    </CsOptions>
    <CsInstruments>

    sr=44100
    ksmps=10
    nchnls=2

    gilen init 32

    gitable1 ftgen 0, 0, gilen, 10, 1
    gitable2 ftgen 0, 0, gilen, 10, 1

    gitable3 ftgen 0, 0, gilen, -7, 30, gilen, 35
    gitable4 ftgen 0, 0, gilen, -7, 400, gilen, 450
    gitable5 ftgen 0, 0, gilen, -7, 5000, gilen, 5500

    instr 1
    vcopy gitable2, gitable1, gilen
    turnoff
    endin

    instr 2
    vexpseg gitable2, 16, gitable3, 2, gitable4, 2, gitable5
    endin

    instr 3
    kcount init 0
    if kcount < 16 then
    	kval table kcount, gitable2
    	printk 0,kval
    	kcount = kcount +1
    else
    turnoff
    endif

    endin

    </CsInstruments>
    <CsScore>
    i1 0 1
    s
    i2 0 10
    i3 0 1
    i3 1 1
    i3 1.5 1
    i3 2 1
    i3 2.5 1
    i3 3 1
    i3 3.5 1
    i3 4 1
    i3 4.5 1

    </CsScore>
    </CsoundSynthesizer>

## Crédits

Ecrit par Gabriel Maldonado.

Exemple par Andres Cabrera.

Nouveau dans Csound 5 (Auparavant seulement disponible dans CsoundAV)

Précédent | Niveau supérieur | Suivant
vexp_i | Sommaire | vexpv