The Alternative Csound Reference Manual
Previous |  | Next

# osciliktp

osciliktp -- A linearly interpolated oscillator that allows allows phase modulation.

## Description

osciliktp allows phase modulation (which is actually implemented as k-rate frequency modulation, by differentiating phase input). The disadvantage is that there is no amplitude control, and frequency can be varied only at the control-rate. This opcode can be faster or slower than oscilikt, depending on the control-rate.

## Syntax

ar osciliktp kcps, kfn, kphs [, istor]

## Initialization

istor (optional, defaults to 0) -- Skips initialization.

## Performance

ar -- audio-rate ouptut signal.

kcps -- 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).

kphs -- phase (k-rate), the expected range is 0 to 1. The absolute value of the difference of the current and previous value of kphs must be less than ksmps.

## Examples

Here is an example of the osciliktp opcode. It uses the files osciliktp.orc and osciliktp.sco.

Example 1. Example of the osciliktp opcode.

    /* osciliktp.orc */
    ; Initialize the global variables.
    sr = 44100
    kr = 4410
    ksmps = 10
    nchnls = 1

    ; Instrument #1: osciliktp example
    instr 1
      kphs line 0, p3, 4

      a1x osciliktp 220.5, 1, 0
      a1y osciliktp 220.5, 1, -kphs
      a1 =  a1x - a1y

      out a1 * 14000
    endin
    /* osciliktp.orc */

    /* osciliktp.sco */
    ; Table #1: Sawtooth wave
    f 1 0 3 -2 1 0 -1

    ; Play Instrument #1 for four seconds.
    i 1 0 4
    e
    /* osciliktp.sco */

## See Also

oscilikt and oscilikts.

## Credits

Author: Istvan Varga

New in version 4.22

Previous | Home | Next
oscilikt | Up | oscilikts