GEN10 — Génère des formes d'ondes complexes obtenues par une somme pondérée de sinus.
Ce sous-programme génère des formes d'ondes complexes obtenues par une somme pondérée de sinus. La spécification de chaque partiel nécessite 1 p-champ avec GEN10.
taille -- nombre de points dans la table. Doit être une puissance de 2 ou une puissance-de-2 plus 1 (voir l'instruction f).
amp1, amp2, amp3, etc. -- amplitudes relatives des partiels harmoniques fixes de numéro 1, 2, 3, etc., commençant en p5. Les partiels non désirés recevront une amplitude nulle.
Note | |
---|---|
|
Voici un exemple de la routine GEN10. Il utilise le fichier gen10.csd.
Exemple 1283. Un exemple de la routine GEN10.
<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 gen10.wav -W ;;; for file output any platform </CsOptions> <CsInstruments> sr = 44100 ksmps = 32 nchnls = 2 0dbfs = 1 instr 1 kamp = .6 kcps = 440 ifn = p4 asig oscil kamp, kcps, ifn outs asig,asig endin </CsInstruments> <CsScore> f1 0 16384 10 1 ; Sine f2 0 16384 10 1 0.5 0.3 0.25 0.2 0.167 0.14 0.125 .111 ; Sawtooth f3 0 16384 10 1 0 0.3 0 0.2 0 0.14 0 .111 ; Square f4 0 16384 10 1 1 1 1 0.7 0.5 0.3 0.1 ; Pulse i 1 0 2 1 i 1 3 2 2 i 1 6 2 3 i 1 9 2 4 e </CsScore> </CsoundSynthesizer>
Voici les diagrammes des formes d'onde des routines GEN10 utilisées
dans l'exemple :
Exemple 1284. Un exemple de la routine GEN10.
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 gen10.wav -W ;;; for file output any platform </CsOptions> <CsInstruments> sr = 44100 ksmps = 32 nchnls = 2 0dbfs = 1 instr 1 kamp = .6 kcps = 440 ifn = p4 asig oscil kamp, kcps, ifn outs asig,asig endin </CsInstruments> <CsScore> f1 0 16384 10 1 ; Sine f2 0 16384 10 1 0.5 0.3 0.25 0.2 0.167 0.14 0.125 .111 ; Sawtooth f3 0 16384 10 1 0 0.3 0 0.2 0 0.14 0 .111 ; Square f4 0 16384 10 1 1 1 1 0.7 0.5 0.3 0.1 ; Pulse i 1 0 2 1 i 1 3 2 2 i 1 6 2 3 i 1 9 2 4 e </CsScore> </CsoundSynthesizer>