csound-expression-4.4.1: library to make electronic music

Safe HaskellNone
LanguageHaskell98

Csound.Air.Seg

Synopsis

Documentation

data Seg a Source

A segment of the signal. The signal segment is a limited span of signal in time. The time can be measured in seconds or in events! The time span which is measured in events is the first occurence of the event in the event stream.

There are handy functions for scheduling the signal segments. we can delay the segment or loop over it or limit it with tme interval or play a sequence of segments. The main feature of the segments is the ability to schedule the signals with event streams (like button clicks or midi-events).

Instances

toSeg :: a -> Seg a Source

Converts signals to segments. The segment is not limited in length.

runSeg :: Sigs a => Seg a -> a Source

Converts segments to signals.

slim :: Tick -> Seg a -> Seg a Source

Limits the length of the segment with event stream.

sflow :: [Seg a] -> Seg a Source

Plays the sequence of segments one ofter another.

spar :: [Seg a] -> Seg a Source

Plays a list of segments at the same time. the total length equals to the biggest length of all segments.

sloop :: Seg a -> Seg a Source

Loops over a segment. The segment should be limited for loop to take effect.

sdel :: (Sigs a, Num a) => Tick -> Seg a -> Seg a Source

Delays a segment until something happens on the event stream.

srest :: Num a => Tick -> Seg a Source

A pause. Plays nothing until something happens on the event stream.

constLim :: D -> Seg a -> Seg a Source

Limits the length of the segment with constant length in seconds.

constDel :: Num a => D -> Seg a -> Seg a Source

Delays a segment by a given time interval in seconds.

constRest :: Num a => D -> Seg a Source

A pause. Plays nothing for the given time interval in seconds.

limSnd :: Sigs a => Tick -> a -> a Source

Limits a signal with an event stream and retriggers it after stop.