synthesizer-0.2.0.1: Audio signal processing coded in HaskellSource codeContentsIndex
Synthesizer.Dimensional.Straight.Signal
Portabilityrequires multi-parameter type classes
Stabilityprovisional
Maintainersynthesizer@henning-thielemann.de
Description
Signals equipped with a phantom type parameter that reflects the sample rate.
Synopsis
newtype T seq yv = Cons {
samples :: seq yv
}
type R s yv = T s S yv
type S = T T
type Binary s = R s Bool
replaceSamples :: T yv1 -> R s yv0 -> R s yv1
processSamples :: C w => (seq0 yv0 -> seq1 yv1) -> w (T seq0) yv0 -> w (T seq1) yv1
processSamplesPrivate :: (seq0 yv0 -> seq1 yv1) -> T seq0 yv0 -> T seq1 yv1
fromSamples :: T yv -> R s yv
toSamples :: C w => w (T seq) yv -> seq yv
Documentation
newtype T seq yv Source
Constructors
Cons
samples :: seq yvthe sampled values
show/hide Instances
C Flat sig (T sig)
Smooth Flat t (T t) (T T)
Simple Flat t (T t) (T T)
Functor seq => Functor (T seq)
C seq => C (T seq)
C sig => C (T sig)
C sig y => C (T sig) y
(C seq, Show y) => Show (T seq y)
type R s yv = T s S yvSource
type S = T TSource
type Binary s = R s BoolSource
In contrast to Synthesizer.Dimensional.Rate.Dirac where only booleans are possible (peak or not peak) we can also have signals of booleans or other enumerations. In this case we consider the signal as piecewise constant.
replaceSamples :: T yv1 -> R s yv0 -> R s yv1Source
processSamples :: C w => (seq0 yv0 -> seq1 yv1) -> w (T seq0) yv0 -> w (T seq1) yv1Source
processSamplesPrivate :: (seq0 yv0 -> seq1 yv1) -> T seq0 yv0 -> T seq1 yv1Source
fromSamples :: T yv -> R s yvSource
toSamples :: C w => w (T seq) yv -> seq yvSource
Produced by Haddock version 2.4.2