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

Safe HaskellNone
LanguageHaskell2010

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 Note Source #

Instances

Eq Note Source # 

Methods

(==) :: Note -> Note -> Bool #

(/=) :: Note -> Note -> Bool #

Show Note Source # 

Methods

showsPrec :: Int -> Note -> ShowS #

show :: Note -> String #

showList :: [Note] -> ShowS #

case_ :: Maybe a -> (a -> b) -> Maybe b Source #

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 #