synthesizer-llvm-0.2.0.1: Efficient signal processing using runtime compilation

Synthesizer.LLVM.ALSA.MIDI

Description

Convert MIDI events of a MIDI controller to a control signal.

Documentation

frequencyFromBendModulationPacked :: (C a, IsConst a, IsFloating a, Storable a, MakeValueTuple a (Value a), IsSized a size, Real a, Replicate a (Vector n a), IsPowerOf2 n, Mul n size vsize, Pos vsize) => T p a -> T p (BendModulation (Value a)) (Value (Vector n a))Source

type Instrument y yv = Instrument y (T yv)Source

type Bank y yv = Bank y (T yv)Source

sequenceCore :: (Storable yv, Additive value, MakeValueTuple yv value, Memory value struct) => ChunkSize -> Channel -> Program -> Modulator Note (T yv) -> Filter (T yv)Source

sequence :: (Storable yv, C y, Additive value, MakeValueTuple yv value, Memory value struct) => ChunkSize -> Channel -> Instrument y yv -> Filter (T yv)Source

sequenceModulated :: (Transform ctrl, NormalForm ctrl, Storable yv, C y, Additive value, MakeValueTuple yv value, Memory value struct) => ChunkSize -> ctrl -> Channel -> (ctrl -> Instrument y yv) -> Filter (T yv)Source

sequenceMultiModulated :: (Storable yv, C y, Additive value, MakeValueTuple yv value, Memory value struct) => ChunkSize -> Channel -> instrument -> Modulator (instrument, Note) (Instrument y yv, Note) -> Filter (T yv)Source

sequenceMultiProgram :: (Storable yv, C y, Additive value, MakeValueTuple yv value, Memory value struct) => ChunkSize -> Channel -> Program -> [Instrument y yv] -> Filter (T yv)Source

sequenceModulatedMultiProgram :: (Transform ctrl, NormalForm ctrl, Storable yv, C y, Additive value, MakeValueTuple yv value, Memory value struct) => ChunkSize -> ctrl -> Channel -> Program -> [ctrl -> Instrument y yv] -> Filter (T yv)Source

applyModulation :: (Transform signal, NormalForm signal) => signal -> Modulator (signal -> instr, note) (instr, note)