sig
class type t =
object
method fill_add : Audio.buffer -> int -> int -> unit
method note_off : int -> float -> unit
method note_on : int -> float -> unit
method play : MIDI.buffer -> int -> Audio.buffer -> int -> int -> unit
method play_add :
MIDI.buffer -> int -> Audio.buffer -> int -> int -> unit
method reset : unit
method set_volume : float -> unit
end
type synth = Synth.t
class create : (float -> float -> Audio.Generator.t) -> t
class create_mono : (float -> float -> Audio.Mono.Generator.t) -> t
class sine : ?adsr:Audio.Mono.Effect.ADSR.t -> int -> t
class square : ?adsr:Audio.Mono.Effect.ADSR.t -> int -> t
class saw : ?adsr:Audio.Mono.Effect.ADSR.t -> int -> t
class monophonic : Audio.Generator.t -> t
module Multitrack :
sig
class type t =
object
method play :
MIDI.Multitrack.buffer ->
int -> Audio.buffer -> int -> int -> unit
method play_add :
MIDI.Multitrack.buffer ->
int -> Audio.buffer -> int -> int -> unit
end
class create : int -> (int -> Synth.synth) -> t
end
end