synthesizer-core-0.8.1.1: Audio signal processing coded in Haskell: Low level part

Safe HaskellNone
LanguageHaskell2010

Synthesizer.Causal.ToneModulation

Synopsis

Documentation

interpolateCell :: Read sig y => T a y -> T b y -> (a, b) -> Cell sig y -> y Source #

cells are organised in a transposed style, when compared with Plain.ToneModulation

seekCell :: (C t, Transform sig y) => Int -> t -> ((t, T t), sig y) -> ((t, t), Cell sig y) Source #

oscillatorCells :: (C t, Transform sig y) => Margin -> Margin -> Int -> t -> sig y -> (t, T t) -> T (t, t) ((t, t), Cell sig y) Source #

oscillatorSuffixes :: (C t, Transform sig y) => Margin -> Margin -> Int -> t -> sig y -> (t, T t) -> T (t, t) ((t, T t), sig y) Source #

In contrast to the counterpart of this function for plain lists, it does not use sophisticated list transposition tricks, but seeks through the prototype signal using drop. Since drop is used in an inner loop, it must be fast. This is true for StorableVectors.

integrateFractional :: C t => t -> (t, T t) -> (Skip t, T (t, t) (Skip t)) Source #

integrateFractionalClip :: C t => t -> (t, T t) -> T (t, t) (Skip t) Source #

Delays output by one element and shorten it by one element at the end.

limitRelativeShapes :: (C t, Ord t) => Margin -> Margin -> Int -> t -> (t, T t t) Source #

limitMinRelativeValues :: (C t, Ord t) => t -> t -> (t, T t t) Source #