Use Non-Frames Version Previous Page Next Page
Signal Generators: Basic Oscillators

oscil, oscili, oscil3

  kr      oscil      kamp, kcps, ifn[, iphs]
  kr      oscili     kamp, kcps, ifn[, iphs]
  kr      oscil3     kamp, kcps, ifn[, iphs]
  ar      oscil      xamp, xcps, ifn[, iphs]
  ar      oscili     xamp, xcps, ifn[, iphs]
  ar      oscil3     xamp, xcps, ifn[, iphs]

Description

Table ifn is incrementally sampled modulo the table length and the value obtained is multiplied by amp.

Initialization

ifn - function table number. Requires a wrap-around guard point.

iphs (optional) - initial phase of sampling, expressed as a fraction of a cycle (0 to 1). A negative value will cause phase initialization to be skipped. The default value is 0.

Performance

The oscil units output periodic control (or audio) signals consisting of the value of kamp(xamp)times the value returned from control rate (audio rate) sampling of a stored function table. The internal phase is simultaneously advanced in accordance with the kcps or xcps input value. While the amplitude and frequency inputs to the k-rate oscils are scalar only, the corresponding inputs to the audio-rate oscils may each be either scalar or vector, thus permitting amplitude and frequency modulation at either sub-audio or audio frequencies.

oscili differs from oscil in that the standard procedure of using a truncated phase as a sampling index is here replaced by a process that interpolates between two successive lookups. Interpolating generators will produce a noticeably cleaner output signal, but they may take as much as twice as long to run. Adequate accuracy can also be gained without the time cost of interpolation by using large stored function tables of 2K, 4K or 8K points if the space is available. oscil3 is experimental, and is identical to oscili, except that it uses cubic interpolation. (New in Csound version 3.50.)

Example

  k1      oscil      10, 5, 1 ; 5 Hz vibrato
  a1      oscil      5000, 440 + k1, 1 ; around A440 + -10 Hz

Use Non-Frames Version Previous Page Next Page
Signal Generators: Basic Oscillators