readclock — Lit la valeur d'une horloge interne.
inum -- le numéro d'une horloge. Il y a 32 horloges numérotées de 0 à 31. Toutes les autres valeurs correspondent à l'horloge numéro 32.
ir -- valeur, lors de la phase d'initialisation, de l'horloge spécifiée par inum.
Entre deux opcodes clockon et clockoff, le temps CPU utilisé est accumulé dans l'horloge. La précision dépend de la machine et elle est de l'ordre de la milliseconde sur les systèmes UNIX et Windows. L'opcode readclock lit la valeur courante d'une horloge pendant une phase d'initialisation.
Voici un exemple de l'opcode readclock. Il utilise le fichier readclock.csd.
Exemple 881. Exemple de l'opcode readclock.
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 ; Audio out Audio in -odac -iadc ;;;RT audio I/O ; For Non-realtime ouput leave only the line below: ; -o readclock.wav -W ;;; for file output any platform </CsOptions> <CsInstruments> ; Initialize the global variables. sr = 44100 kr = 44100 ksmps = 1 nchnls = 1 ; Instrument #1. instr 1 ; Start clock #1. clockon 1 ; Do something that keeps Csound busy. a1 oscili 10000, 440, 1 out a1 ; Stop clock #1. clockoff 1 ; Print the time accumulated in clock #1. i1 readclock 1 print i1 endin </CsInstruments> <CsScore> ; Initialize the function tables. ; Table 1: an ordinary sine wave. f 1 0 32768 10 1 ; Play Instrument #1 for one second starting at 0:00. i 1 0 1 ; Play Instrument #1 for one second starting at 0:01. i 1 1 1 ; Play Instrument #1 for one second starting at 0:02. i 1 2 1 e </CsScore> </CsoundSynthesizer>
Sa sortie contiendra des lignes comme celles-ci :
instr 1: i1 = 0.000 instr 1: i1 = 90.000 instr 1: i1 = 180.000