readclock
Prev | Orchestra Opcodes and Operators | Next

## readclock

readclock — Reads the value of an internal clock.

## Description

Reads the value of an internal clock.

## Syntax

    ir readclock inum

## Initialization

inum -- the number of a clock. There are 32 clocks numbered 0 through 31. All other values are mapped to clock number 32.

ir -- value at i-time, of the clock specified by inum

## Performance

Between a clockon and a clockoff opcode, the CPU time used is accumulated in the clock. The precision is machine dependent but is the millisecond range on UNIX and Windows systems. The readclock opcde reads the current value of a clock at initialization time.

## Examples

Here is an example of the readclock opcode. It uses the file readclock.csd.

Example 674. Example of the readclock opcode.

See the sections Real-time Audio and Command Line Flags for more information on using command line flags.

    <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>

Its output should include lines like this:

    instr 1:  i1 = 0.000
    instr 1:  i1 = 90.000
    instr 1:  i1 = 180.000

## See Also

clockoff, clockon

## Credits

Author: John ffitch
University of Bath/Codemist Ltd.
Bath, UK
July, 1999

Example written by Kevin Conder.

New in Csound version 3.56

Prev | Up | Next
rbjeq | Home | readk