GEN05 — Construit des fonctions à partir de morceaux de courbes exponentielles.
taille -- nombre de points dans la table. Doit être une puissance de 2 ou une puissance-de-2 plus 1 (voir l'instruction f).
a, b, c, etc. -- valeurs d'ordonnée, dans les p-champs de numéros impairs p5, p7, p9, . . . Elle doivent être non nulles et de même signe.
n1, n2, etc. -- longueurs des morceaux (nombre de positions mémorisées), dans les p-champs de numéros pairs. Ne peuvent pas être négatives, mais un zéro est significatif pour spécifier des formes d'onde discontinues (comme dans l'exemple ci-dessous). La somme n1 + n2 + .... sera normalement égale à taille pour les fonctions complètement spécifiées. Si la somme est inférieure, les positions de la fonction non comprises seront mises à zéro ; si la somme est supérieure, seules les premières taille positions seront stockées.
![]() |
Note |
---|---|
|
Voici un exemple simple de la routine GEN05. Il utilise le fichier gen05.csd. Il créera une jolie enveloppe d'amplitude percussive. Voici le graphe :
Graphe de la forme d'onde générée par GEN05.
Exemple 612. Un exemple simple de la routine GEN05.
<CsoundSynthesizer> <CsOptions> ; Select audio/midi flags here according to platform ; Audio out Audio in -odac -iadc ;;;RT audio I/O ; For Non-realtime ouput leave only the line below: ; -o gen05.wav -W ;;; for file output any platform </CsOptions> <CsInstruments> ; Initialize the global variables. sr = 44100 kr = 4410 ksmps = 10 nchnls = 1 ; Instrument #1. instr 1 ; Create an index over the length of our entire note. kcps init 1/p3 kndx phasor kcps ; Read Table #1 with our index. ifn = 1 ixmode = 1 kamp table kndx, ifn, ixmode ; Create a sine wave, use the Table #1 values to control ; the amplitude. This creates a nice percussive sound. a1 oscil kamp*30000, 440, 2 out a1 endin </CsInstruments> <CsScore> ; Table #1: a percussive envelope (using GEN05). f 1 0 64 5 1 2 120 60 1 1 0.001 1 ; Table #2, a sine wave. f 2 0 16384 10 1 ; Play Instrument #1 for 2 seconds. i 1 0 2 e </CsScore> </CsoundSynthesizer>