timout
Prev | Orchestra Opcodes and Operators | Next

## timout

timout — Conditional branch during p-time depending on elapsed note time.

## Description

Conditional branch during p-time depending on elapsed note time. istrt and idur specify time in seconds. The branch to label will become effective at time istrt, and will remain so for just idur seconds. Note that timout can be reinitialized for multiple activation within a single note (see example under reinit).

## Syntax

    timout istrt, idur, label

where label is in the same instrument block and is not an expression.

## Examples

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

Example 1109. Example of the timout 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
    -odac    ;;;realtime audio out
    ;-iadc    ;;;uncomment -iadc if realtime audio input is needed too
    ; For Non-realtime ouput leave only the line below:
    ; -o timout.wav -W ;;; for file output any platform
    </CsOptions>
    <CsInstruments>

    sr = 44100
    ksmps = 32
    nchnls = 2
    0dbfs  = 1

    instr 1

    indx = 0
    itim = p4				;change time for one step

    clock:
       timout 0, itim, time
       reinit clock

    time:
       itmp table indx, 2, 0, 0, 1
       if itmp == 1 then
       print itmp
       event_i "i",2, 0, .1			;event has duration of .1 second
    endif
    indx = indx+1

    endin

    instr 2	;play it

    kenv transeg 0.01, p3*0.25, 1, 1, p3*0.75, .5, 0.01
    asig oscili kenv*.4, 400, 1
         outs asig, asig

    endin
    </CsInstruments>
    <CsScore>
    f 1 0 1024 10 1	;sine
    f 2 0 16 2 1 0 0 1 0 1 0 1 0 1 0 0 0 0 0 0 ;the rythm table

    i1 0 10 .1
    i1 + 10 .05
    i1 + 10 .01
    e
    </CsScore>
    </CsoundSynthesizer>

## See also

Program Flow Control

Prev | Up | Next
times | Home | tival