GEN25
Précédent | Instructions de partition et routines GEN | Suivant

## GEN25

GEN25 — Construit des fonctions à partir de morceaux de courbes exponentielles avec des points charnière (breakpoints).

## Description

Ces sous-programmes sont utilisés pour construire des fonctions à partir de morceaux de courbes exponentielles avec des points charnière (breakpoints).

## Syntaxe

    f # date taille 25 x1 y1 x2 y2 x3  ...

## Initialisation

taille -- nombre de points dans la table. Doit être une puissance de 2 ou une puissance-de-2 plus 1 (voir l'instruction f).

x1, x2, x3, etc. -- positions dans la table auxquelles la valeur y suivante devra être atteinte. Doivent être en ordre croissant. Si la dernière valeur est inférieure à la taille, les positions restantes seront mises à zéro. Ne doivent pas être négatives mais peuvent être nulles.

y1, y2, y3, etc. -- Valeurs charnière atteintes à la position spécifiée par la valeur x précédente. Elles doivent être non nulles et toutes du même signe.

| Note
Si p4 est positif, les fonctions sont post-normalisées (reproportionnées à une valeur absolue maximale de 1 après génération). Un p4 négatif empêchera cette opération.

## Exemples

Voici un exemple de la routine GEN25. Il utilise le fichier gen25.csd.

Exemple 1147. Exemple de la routine GEN25.

Voir les sections Audio en Temps Réel et Options de 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 gen25.wav -W ;;; for file output any platform
    </CsOptions>
    <CsInstruments>

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

    gisin ftgen 1, 0, 32768, 10, 1
    gienv ftgen 2, 0, 1025, 25, 0, 0.01, 200, 1, 400, 1, 513, 0.01	; y value must be >= 0

    instr 1

    kcps init 3/p3			;play 3x over duration of note
    kndx phasor kcps
    ixmode = 1			;normalize to 0-1
    kval table kndx, gienv, ixmode
    kval =kval*100			;scale up to 0-100
    asig poscil 1, 220+kval, gisin	;use table for amplitude
         outs asig, asig

    endin
    </CsInstruments>
    <CsScore>

    i 1 0 4

    e
    </CsScore>
    </CsoundSynthesizer>

Voici le diagramme de la forme d'onde de la routine GEN25 utilisée dans l'exemple :

f 2 0 1025 25 0 0.01 200 1 400 1 513 0.01 - une fonction qui commence à 0.01, monte jusqu'à 1 à la position 200 de la table, trace un segment de droite jusqu'à la position 400, et revient à 0.01 à la fin de la table

## Voir aussi

Instruction f, GEN27

## Crédits

Auteur : John ffitch
University of Bath/Codemist Ltd.
Bath, UK

Nouveau dans la version 3.49 de Csound

Précédent | Niveau supérieur | Suivant
GEN24 | Sommaire | GEN27