oscilikts — A linearly interpolated oscillator with sync status that allows changing the table number at k-rate.
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 file oscilikts.csd.
Example 296. Example of the oscilikts 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 No messages -odac -iadc -d ;;;RT audio I/O ; For Non-realtime ouput leave only the line below: ; -o oscilikts.wav -W ;;; for file output any platform </CsOptions> <CsInstruments> ; 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 </CsInstruments> <CsScore> ; Table #1: Sawtooth wave f 1 0 3 -2 1 0 -1 ; Play Instrument #1 for four seconds. i 1 0 4 e </CsScore> </CsoundSynthesizer>