Class oscil

Wavetable backed oscillators.

local moscil = require 'melisma.oscil'
local mexpression = require 'melisma.expression'

local wt = moscil.wavetable.sin()

-- Make an LFO for controlling the frequency.
local lfo_oscil = moscil.init(wt,1,1)

-- Map [-1, 1] to [440, 880]
local lfo = (440 + (1 + mexpression.input(lfo_oscil,0) / 2) * 440):build()

local oscil = moscil.init(wt,0,0.5)
oscil:mapf(lfo)

Functions

oscil.init(wt, freq, amp) Initialize an oscillator.

Methods

oscil:mapa(sig) Map a signal to the amplitude.
oscil:mapf(sig) Map a signal to the frequency.
oscil:sample() Get the current oscillator value.
oscil:seta(amp) Set oscillator amplitude.
oscil:setf(freq) Set oscillator frequency.

Class wavetable

wavetable.saw() Saw wave.
wavetable.sin() Sine wave.
wavetable.square() Square wave.


Functions

Methods
oscil.init(wt, freq, amp)
Initialize an oscillator.

Parameters:

Returns:

    oscil

Methods

oscil:mapa(sig)
Map a signal to the amplitude.

Parameters:

  • sig channel
oscil:mapf(sig)
Map a signal to the frequency.

Parameters:

  • sig channel
oscil:sample()
Get the current oscillator value.

Returns:

    number
oscil:seta(amp)
Set oscillator amplitude.

Parameters:

  • amp number
oscil:setf(freq)
Set oscillator frequency.

Parameters:

  • freq number

Class wavetable

wavetable.saw()
Saw wave.

Returns:

    wavetable
wavetable.sin()
Sine wave.

Returns:

    wavetable
wavetable.square()
Square wave.

Returns:

    wavetable
generated by LDoc 1.5.0 Last updated 1980-01-01 00:00:00