vivid-0.3.0.1: Sound synthesis with SuperCollider

Safe HaskellNone
LanguageHaskell98

Vivid.UGens.Multichannel

Contents

Synopsis

Multichannel > Ambisonics

Multichannel > Panners

pan2 :: Args '["in", "pos"] '["level"] a => a -> SDBody a [Signal] Source #

pos is -1 to 1

level is "a control-rate level input"

splay :: ToSig s a => [s] -> SDBody' a [Signal] Source #

"Spreads [a list] of channels across the stereo field."

Multichannel > Select

select :: ToSig s as => s -> [SDBody' as Signal] -> SDBody' as Signal Source #

"Spreads [a list] of channels across the stereo field. Optional arguments are spread and center, and equal power levelCompensation. The formula for the stereo position is:

((0 .. (n - 1)) * (2 / (n - 1) - 1) * spread + center

Multichannel

mix :: ToSig s a => [s] -> SDBody' a Signal Source #

Mixes down a list of audio rate inputs to one.

This is more efficient than e.g. foldl1 (~+)

If the list is empty this is the same as dc 0

addChannels :: (ToSig s0 a, ToSig s1 a) => [s0] -> [s1] -> SDBody' a [Signal] Source #

Like zipWithM but if the lists are of different lengths, doesn't shorten the longer one