Skip to content

tlineto

Generate glissandos starting from a control signal with a trigger.

Syntax

kres = tlineto(ksig, ktime, ktrig)
kres tlineto ksig, ktime, ktrig

Performance

kres -- Output signal.

ksig -- Input signal.

ktime -- Ramp duration in seconds. Positive durations are rounded up to a whole number of control cycles. Zero or negative durations jump to the new target immediately.

ktrig -- Trigger signal. Any nonzero value starts a new ramp.

tlineto starts at the first value of ksig. On each control cycle where ktrig is nonzero, it starts a new linear ramp from the current output to the current ksig, using ktime as the duration. A trigger can interrupt an active ramp. After a ramp ends, the output holds its target until the next trigger.

Use one-cycle trigger pulses with zeroes between them, for example from trigger. Holding ktrig nonzero restarts the ramp every cycle and prevents a positive-duration ramp from advancing.

Examples

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

Example of the tlineto opcode.
<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 tlineto.wav -W ;;; for file output any platform
</CsOptions>
<CsInstruments>

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

giSine ftgen 0, 0, 2^10, 10, 1

instr 1


kmtr lfo 1, .5, 1                       ;produce trigger signal                 
ktr  trigger kmtr, .5, 0                ;with triangle wave

ktime = p4                              
kfreq randh 1000, 3, .2, 0, 500         ;generate random values
kfreq tlineto kfreq, ktime, ktr         ;different glissando times
aout  poscil .4, kfreq, giSine
      outs aout, aout

endin
</CsInstruments>
<CsScore>

i 1 0 10 .2     ;short glissando
i 1 11 10 .8    ;longer glissande
e
</CsScore>
</CsoundSynthesizer>

See also

Standard Filters: Control signal filters

Credits

Author: Gabriel Maldonado

New in Version 4.13