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

goto, if, igoto, kgoto, tigoto