synthesizer-core-0.2.1: Audio signal processing coded in Haskell: Low level partSource codeContentsIndex
Synthesizer.Plain.Filter.Recursive.Butterworth
Portabilityrequires multi-parameter type classes
Stabilityprovisional
Maintainersynthesizer@henning-thielemann.de
Contents
use second order filter parameters for control
directly use frequency as control parameter
Description
Butterworth lowpass and highpass
Synopsis
sineListSlow :: C a => a -> [a]
sineListFast :: C a => a -> [a]
sineList :: C a => a -> [a]
makeSines :: C a => Int -> [a]
partialRatio :: C a => Int -> a -> a
partialParameter :: C a => a -> a -> a -> Parameter a
partialParameterInstable :: C a => a -> a -> a -> Parameter a
type Parameter a = Parameter a
parameter :: (C a, Storable a) => Passband -> Int -> Pole a -> Parameter a
modifier :: (C a, C a v, Storable a, Storable v) => Int -> Simple (Status v) (Parameter a) v v
causal :: (C a, C a v, Storable a, Storable v) => Int -> T (Parameter a, v) v
checkedHalf :: String -> Int -> Int
runPole :: (C a, C a v) => Passband -> Int -> T a -> T a -> T v -> T v
causalPole :: (C a, C a v) => Passband -> Int -> T (Pole a, v) v
highpassCausalPole :: (C a, C a v) => Int -> T (Pole a, v) v
lowpassCausalPole :: (C a, C a v) => Int -> T (Pole a, v) v
highpassPole :: (C a, C a v) => Int -> T a -> T a -> T v -> T v
lowpassPole :: (C a, C a v) => Int -> T a -> T a -> T v -> T v
Documentation
sineListSlow :: C a => a -> [a]Source
sineListFast :: C a => a -> [a]Source
sineList :: C a => a -> [a]Source
makeSines :: C a => Int -> [a]Source
partialRatio :: C a => Int -> a -> aSource
partialParameter :: C a => a -> a -> a -> Parameter aSource
partialParameterInstable :: C a => a -> a -> a -> Parameter aSource
use second order filter parameters for control
type Parameter a = Parameter aSource
parameter :: (C a, Storable a) => Passband -> Int -> Pole a -> Parameter aSource
modifier :: (C a, C a v, Storable a, Storable v) => Int -> Simple (Status v) (Parameter a) v vSource
causal :: (C a, C a v, Storable a, Storable v) => Int -> T (Parameter a, v) vSource
checkedHalf :: String -> Int -> IntSource
directly use frequency as control parameter
runPole :: (C a, C a v) => Passband -> Int -> T a -> T a -> T v -> T vSource

When called as runPole kind order ratio freqs, the filter amplifies frequency 0 with factor 1 and frequency freq with factor ratio.

It uses the frequency and ratio information directly and thus cannot benefit from efficient parameter interpolation (asynchronous run of a ControlledProcess.

causalPole :: (C a, C a v) => Passband -> Int -> T (Pole a, v) vSource
highpassCausalPole :: (C a, C a v) => Int -> T (Pole a, v) vSource
lowpassCausalPole :: (C a, C a v) => Int -> T (Pole a, v) vSource
highpassPole :: (C a, C a v) => Int -> T a -> T a -> T v -> T vSource
lowpassPole :: (C a, C a v) => Int -> T a -> T a -> T v -> T vSource
Produced by Haddock version 2.4.2