csound-expression-4.4.1: library to make electronic music

Safe HaskellNone
LanguageHaskell98

Csound.SigSpace

Synopsis

Documentation

class SigSpace a where Source

A class for easy way to process the outputs of the instruments.

Methods

mapSig :: (Sig -> Sig) -> a -> a Source

class SigSpace a => BindSig a where Source

A class for easy way to process the outputs of the instruments.

Methods

bindSig :: (Sig -> SE Sig) -> a -> SE a Source

mul :: SigSpace a => Sig -> a -> a Source

Scaling the sound.

class SigSpace b => At a b c where Source

Associated Types

type AtOut a b c :: * Source

Methods

at :: (a -> b) -> c -> AtOut a b c Source

bat :: At Sig a b => (Sig -> a) -> b -> AtOut Sig a b Source

cfd :: (Num a, SigSpace a) => Sig -> a -> a -> a Source

Crossfade.

cfd coeff sig1 sig2

If coeff equals 0 then we get the first signal and if it equals 1 we get the second signal.

cfd4 :: (Num a, SigSpace a) => Sig -> Sig -> a -> a -> a -> a -> a Source

Bilinear interpolation for four signals. The signals are placed in the corners of the unit square. The first two signals are the xy coordinates in the square.

cfd4 x y a b c d
  • (0, 0) is for a
  • (1, 0) is for b
  • (1, 1) is for c
  • (0, 1) is for d

cfds :: (Num a, SigSpace a) => [Sig] -> [a] -> a Source

Generic crossfade for n coefficients and n+1 signals.

cfds coeffs sigs

cfdSpec :: Sig -> Spec -> Spec -> Spec Source

Spectral crossfade.

cfdSpec4 :: Sig -> Sig -> Spec -> Spec -> Spec -> Spec -> Spec Source

Spectral bilinear crossfade (see cfd4).

cfdsSpec :: [Sig] -> [Spec] -> Spec Source

Generic spectral crossfade.

wsum :: (Num a, SigSpace a) => [(Sig, a)] -> a Source

Weighted sum.