csound-expression-4.9.1: library to make electronic music

Safe HaskellNone




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).


Functor Seg Source 
Sigs a => Melody (Seg a) Source 
Sigs a => Harmony (Seg a) Source 
Sigs a => Compose (Seg a) Source 
Sigs a => Delay (Seg a) Source 
(Sigs a, Num a) => Rest (Seg a) Source 
Sigs a => Limit (Seg a) Source 
Sigs a => Loop (Seg a) Source 
SigSpace a => SigSpace (Seg a) Source 
type DurOf (Seg a) = Tick Source 

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.

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.