oscilikts is the same as oscilikt. Except it has a sync input that can be used to re-initialize the oscillator to a k-rate phase value. It is slower than oscilikt and osciliktp.
xamp -- amplitude.
xcps -- frequency in Hz. Zero and negative values are allowed. However, the absolute value must be less than sr (and recommended to be less than sr/2).
kfn -- function table number. Can be varied at control rate (useful to "morph" waveforms, or select from a set of band-limited tables generated by GEN30).
async -- any positive value resets the phase of oscilikts to kphs. Zero or negative values have no effect.
kphs -- sets the phase, initially and when it is re-initialized with async.
Here is an example of the oscilikts opcode. It uses the files oscilikts.orc and oscilikts.sco.
Example 1. Example of the oscilikts opcode.
/* oscilikts.orc */
; Initialize the global variables.
sr = 44100
kr = 4410
ksmps = 10
nchnls = 1
; Instrument #1: oscilikts example.
instr 1
; Frequency envelope.
kfrq expon 400, p3, 1200
; Phase.
kphs line 0.1, p3, 0.9
; Sync 1
atmp1 phasor 100
; Sync 2
atmp2 phasor 150
async diff 1 - (atmp1 + atmp2)
a1 oscilikts 14000, kfrq, 1, async, 0
a2 oscilikts 14000, kfrq, 1, async, -kphs
out a1 - a2
endin
/* oscilikts.orc */
/* oscilikts.sco */
; Table #1: Sawtooth wave
f 1 0 3 -2 1 0 -1
; Play Instrument #1 for four seconds.
i 1 0 4
e
/* oscilikts.sco */