synthesizer-dimensional-0.7.0.2: Audio signal processing with static physical dimensions

Portabilityrequires multi-parameter type classes
Stabilityprovisional
Maintainersynthesizer@henning-thielemann.de
Safe HaskellNone

Synthesizer.Dimensional.Amplitude.Cut

Contents

Description

 

Synopsis

dissection

unzip :: (Transform sig (yv0, yv1), Transform sig yv0, Transform sig yv1) => T rate amp (sig (yv0, yv1)) -> (T rate amp (sig yv0), T rate amp (sig yv1))Source

unzip3 :: (Transform sig (yv0, yv1, yv2), Transform sig yv0, Transform sig yv1, Transform sig yv2) => T rate amp (sig (yv0, yv1, yv2)) -> (T rate amp (sig yv0), T rate amp (sig yv1), T rate amp (sig yv2))Source

leftFromStereo :: C u => R s u y (T yv) -> R s u y yvSource

rightFromStereo :: C u => R s u y (T yv) -> R s u y yvSource

span :: (Transform sig yv, C v, C y, C y yv) => T v y -> (yv -> Bool) -> T rate (Dimensional v y) (sig yv) -> (T rate (Dimensional v y) (sig yv), T rate (Dimensional v y) (sig yv))Source

dropWhile :: (Transform sig yv, C v, C y, C y yv) => T v y -> (yv -> Bool) -> T rate (Dimensional v y) (sig yv) -> T rate (Dimensional v y) (sig yv)Source

takeWhile :: (Transform sig yv, C v, C y, C y yv) => T v y -> (yv -> Bool) -> T rate (Dimensional v y) (sig yv) -> T rate (Dimensional v y) (sig yv)Source

spanPrimitive :: (Transform sig y, Primitive amp) => (y -> Bool) -> T rate amp (sig y) -> (T rate amp (sig y), T rate amp (sig y))Source

dropWhilePrimitive :: (Transform sig y, Primitive amp) => (y -> Bool) -> T rate amp (sig y) -> T rate amp (sig y)Source

takeWhilePrimitive :: (Transform sig y, Primitive amp) => (y -> Bool) -> T rate amp (sig y) -> T rate amp (sig y)Source

glueing

concat :: (Ord y, C y, C u, C y yv, Transform sig yv) => [Signal s u y sig yv] -> Signal s u y sig yvSource

Similar to foldr1 append but more efficient and accurate, because it reduces the number of amplifications. Does not work for infinite lists, because no maximum amplitude can be computed.

concatVolume :: (C y, C u, C y yv, Transform sig yv) => T u y -> [Signal s u y sig yv] -> Signal s u y sig yvSource

Give the output volume explicitly. Does also work for infinite lists.

concatPrimitive :: (Transform sig, Primitive amp) => [T (Phantom s) amp sig] -> T (Phantom s) amp sigSource

append :: (Ord y, C y, C u, C y yv, Transform sig yv) => Signal s u y sig yv -> Signal s u y sig yv -> Signal s u y sig yvSource

appendVolume :: (C y, C u, C y yv, Transform sig yv) => T u y -> Signal s u y sig yv -> Signal s u y sig yv -> Signal s u y sig yvSource

appendPrimitive :: (Transform sig, Primitive amp) => T (Phantom s) amp sig -> T (Phantom s) amp sig -> T (Phantom s) amp sigSource

zip :: (Ord y, C y, C u, C y yv0, C y yv1, Read sig yv0, Transform sig yv1, Transform sig (yv0, yv1)) => Signal s u y sig yv0 -> Signal s u y sig yv1 -> Signal s u y sig (yv0, yv1)Source

zipVolume :: (C y, C u, C y yv0, C y yv1, Read sig yv0, Transform sig yv1, Transform sig (yv0, yv1)) => T u y -> Signal s u y sig yv0 -> Signal s u y sig yv1 -> Signal s u y sig (yv0, yv1)Source

zip3 :: (Ord y, C y, C u, C y yv0, C y yv1, C y yv2, Read sig yv0, Read sig yv1, Transform sig yv2, Transform sig (yv0, yv1, yv2)) => Signal s u y sig yv0 -> Signal s u y sig yv1 -> Signal s u y sig yv2 -> Signal s u y sig (yv0, yv1, yv2)Source

zip3Volume :: (C y, C u, C y yv0, C y yv1, C y yv2, Read sig yv0, Read sig yv1, Transform sig yv2, Transform sig (yv0, yv1, yv2)) => T u y -> Signal s u y sig yv0 -> Signal s u y sig yv1 -> Signal s u y sig yv2 -> Signal s u y sig (yv0, yv1, yv2)Source

mergeStereo :: (Ord y, C y, C u, C y yv, Transform sig yv, Transform sig (T yv)) => Signal s u y sig yv -> Signal s u y sig yv -> Signal s u y sig (T yv)Source

mergeStereoVolume :: (C y, C u, C y yv, Transform sig yv, Transform sig (T yv)) => T u y -> Signal s u y sig yv -> Signal s u y sig yv -> Signal s u y sig (T yv)Source

mergeStereoPrimitive :: (Primitive amp, Transform sig y, Transform sig (T y)) => T (Phantom s) amp (sig y) -> T (Phantom s) amp (sig y) -> T (Phantom s) amp (sig (T y))Source

miscellaneous

selectBoolSource

Arguments

:: (Ord y, C y, C u, C y yv, Read sig yv, Transform sig Bool, Transform sig yv) 
=> Signal s u y sig yv

False

-> Signal s u y sig yv

True

-> T (Phantom s) Abstract (sig Bool) 
-> Signal s u y sig yv 

reverse :: Transform sig yv => T rate amp (sig yv) -> T rate amp (sig yv)Source