synthesizer-0.2.0.1: Audio signal processing coded in HaskellSource codeContentsIndex
Synthesizer.Basic.ToneModulation
Synopsis
untangleShapePhase :: C a => Int -> a -> (a, a) -> (a, a)
untangleShapePhaseAnalytic :: C a => Int -> a -> (a, a) -> (a, a)
solveSLE2 :: C a => ((a, a), (a, a)) -> (a, a) -> (a, a)
det2 :: C a => ((a, a), (a, a)) -> a
flattenShapePhaseAnalytic :: C a => Int -> a -> (a, T a) -> (Int, (a, a))
flattenShapePhase :: C a => Int -> a -> (a, T a) -> (Int, (a, a))
shapeLimits :: C t => Margin -> Margin -> Int -> t -> (t, t)
interpolationOffset :: Margin -> Margin -> Int -> Int
interpolationNumber :: Margin -> Margin -> Int -> Int
type Coords t = (Int, (Int, (t, t)))
type Skip t = (Int, (t, T t))
Documentation
untangleShapePhase :: C a => Int -> a -> (a, a) -> (a, a)Source

Convert from the (shape,phase) parameter pair to the index within a wave (step) and the index of a wave (leap) in the sampled prototype tone.

For this routine it would be simpler, if shape would measure in multiples of period (we would only need a Ring instance), but for shapeLimit it is better the way it is.

untangleShapePhaseAnalytic :: C a => Int -> a -> (a, a) -> (a, a)Source
solveSLE2 :: C a => ((a, a), (a, a)) -> (a, a) -> (a, a)Source
det2 :: C a => ((a, a), (a, a)) -> aSource
flattenShapePhaseAnalytic :: C a => Int -> a -> (a, T a) -> (Int, (a, a))Source
flattenShapePhase :: C a => Int -> a -> (a, T a) -> (Int, (a, a))Source
shapeLimits :: C t => Margin -> Margin -> Int -> t -> (t, t)Source
interpolationOffset :: Margin -> Margin -> Int -> IntSource
interpolationNumber :: Margin -> Margin -> Int -> IntSource
type Coords t = (Int, (Int, (t, t)))Source
type Skip t = (Int, (t, T t))Source
Produced by Haddock version 2.4.2