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

Copyright(c) Henning Thielemann 2008
Portabilityrequires multi-parameter type classes
Safe HaskellNone



Comb filters, useful for emphasis of tones with harmonics and for repeated echos.



karplusStrong :: (C a, C a v) => Parameter a -> T v -> T v Source #

The most simple version of the Karplus-Strong algorithm which is suitable to simulate a plucked string. It is similar to the runProc function.

run :: C a v => Int -> a -> T v -> T v Source #

Infinitely many equi-delayed exponentially decaying echos. The echos are clipped to the input length. We think it is easier (and simpler to do efficiently) to pad the input with zeros or whatever instead of cutting the result according to the input length.

runMulti :: (C a, C a v) => [Int] -> a -> T v -> T v Source #

Echos of different delays.

runProc :: C v => Int -> (T v -> T v) -> T v -> T v Source #

Echos can be piped through an arbitrary signal processor.