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

Copyright (c) Henning Thielemann 2008 GPL synthesizer@henning-thielemann.de provisional requires multi-parameter type classes None Haskell2010

Synthesizer.State.Filter.Recursive.Comb

Description

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

Synopsis

# Documentation

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.