sig
class type t =
object method process : Audio.buffer -> int -> int -> unit end
class chain : Audio.Effect.t -> Audio.Effect.t -> t
class of_mono : int -> (unit -> Audio.Mono.Effect.t) -> t
class type delay_t =
object
method process : buffer -> int -> int -> unit
method set_delay : float -> unit
method set_feedback : float -> unit
end
val delay :
int ->
int ->
float -> ?once:bool -> ?ping_pong:bool -> float -> Audio.Effect.delay_t
class compress :
?attack:float ->
?release:float ->
?threshold:float ->
?ratio:float ->
?knee:float ->
?rms_window:float ->
?gain:float ->
int ->
int ->
object
method process : buffer -> int -> int -> unit
method reset : unit
method set_attack : float -> unit
method set_gain : float -> unit
method set_knee : float -> unit
method set_ratio : float -> unit
method set_release : float -> unit
method set_threshold : float -> unit
end
class biquad_filter :
int ->
int ->
[ `All_pass
| `Band_pass
| `High_pass
| `High_shelf
| `Low_pass
| `Low_shelf
| `Notch
| `Peaking ] -> ?gain:float -> float -> float -> t
val auto_gain_control :
int ->
int ->
?rms_target:float ->
?rms_window:float ->
?kup:float ->
?kdown:float ->
?rms_threshold:float ->
?volume_init:float ->
?volume_min:float -> ?volume_max:float -> unit -> Audio.Effect.t
end