seed — Fixe la valeur globale de la graine.
Fixe la valeur globale de la graine pour tous les générateurs de bruit de classe x, ainsi que pour d'autres opcodes qui utilisent un appel de random, tels que grain.
Avec l'utilisation de seed on obtiendra des résultats prévisibles d'un orchestre utilisant des générateurs de nombres aléatoires, lors de plusieurs exécutions.
Lors de la spécification d'une valeur de graine, ival doit être un entier compris entre 0 et 232. Si ival = 0, la valeur de ival sera dérivée de l'horloge du système.
Voici un exemple de l'opcode seed. Il utilise le fichier seed.csd.
Exemple 943. Exemple de l'opcode seed.
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 RT audio input is needed too ; For Non-realtime ouput leave only the line below: ; -o seed.wav -W ;;; for file output any platform </CsOptions> <CsInstruments> sr = 44100 ksmps = 32 nchnls = 2 0dbfs = 1 instr 1 ;same values every time seed 10 krnd randomh 100, 200, 5 printk .5, krnd ; look aout oscili 0.8, 440+krnd, 1 ; & listen outs aout, aout endin instr 2 ;different values every time - value is derived from system clock seed 0 ; seed from system clock krnd randomh 100, 200, 5 printk .5, krnd ; look aout oscili 0.8, 440+krnd, 1 ; & listen outs aout, aout endin </CsInstruments> <CsScore> f 1 0 16384 10 1 ;sine wave. i 1 0 1 i 2 2 1 e </CsScore> </CsoundSynthesizer>
Sa sortie contiendra des lignes comme celles-ci :
i 1 time 0.00067: 100.00000 i 1 time 0.50000: 175.78677 i 1 time 1.00000: 170.89579 WARNING: Seeding from current time 834128659 i 2 time 2.00067: 100.00000 i 2 time 2.50000: 197.58517 i 2 time 3.00000: 188.69525