Legend:
Library
Module
Module type
Parameter
Class
Class type
Library
Module
Module type
Parameter
Class
Class type
include module type of struct include Signal end
module Ctx = Signal.Ctx
module Raw = Signal.Raw
type 'a t = 'a Signal.t
val of_ref : 'a Stdlib.ref -> 'a t
val const : 'a -> 'a t
val var : 'a -> 'a t * 'a Stdlib.ref
val silence : float t
val never : bool t
The function f(x) = exp(k * (x - a)) - b ...where a and b are chosen so that f(0) = 0 and f(1) = 1. The k parameter controls how sharp the curve is. It approaches a linear function as k approaches 0. k = 0 is special cased as a linear function for convenience.
Takes a signal assumed to be in the range -1..1 and shifts and scales it to be in the range 0..1
module Trigger = Signal.Trigger
module Gate = Signal.Gate
val waveform_to_string : waveform -> string
val noise_01 : unit -> float t
Envelope generator with an attack and release parameter. This returns a signal which rises linearly to 1 when gate is true, and drops linearly to 0 when gate is false
val sustained_step_sequencer :
float sequencer_step option list ->
Signal.Trigger.t ->
float sequencer_output
val generic_step_sequencer :
'a sequencer_step list ->
Signal.Trigger.t ->
'a sequencer_output
val random_sequencer :
'a t list ->
float t ->
Signal.Trigger.t ->
'a sequencer_output
val value_sequencer : 'a t list -> Signal.Trigger.t -> 'a t
feedback ~f s
adds its previous output modifier by f
to its input.
echo ~f ~delay_s s
adds its own output to its input, modified by f
, after a delay of delay_s
seconds.