synthesizer-midi-0.6.0.1: Render audio signals from MIDI files or realtime messages

Safe HaskellNone

Synthesizer.MIDI.EventList

Contents

Synopsis

Documentation

event filters

type Filter event = State (T StrictTime [event])Source

getSlice :: (event -> Maybe a) -> Filter event (T StrictTime [a])Source

We turn the strict time values into lazy ones according to the breaks by our beat. However for the laziness breaks we ignore the events that are filtered out. That is we loose laziness granularity but hopefully gain efficiency by larger blocks.

data NoteBoundary a Source

Instances

Eq a => Eq (NoteBoundary a) 
Show a => Show (NoteBoundary a) 

data Note Source

Instances

case_ :: Maybe a -> (a -> b) -> Maybe bSource

matchNoteEventsCore :: (noteBnd -> Maybe (noteBnd -> Bool, LazyTime -> Note)) -> T StrictTime [noteBnd] -> T StrictTime [Note]Source

durationRemove :: C time => (body -> Bool) -> T time [body] -> (T time, T time [body])Source

Search for specific event, return its time stamp and remove it.

durationRemoveTB :: C time => (body -> Bool) -> T time [body] -> (T time, T time [body])Source