midi-0.1.5: Handling of MIDI messages and filesSource codeContentsIndex
Sound.MIDI.File.Event
Description
MIDI messages in MIDI files. They are not a superset of the messages, that are used for real-time communication between MIDI devices. For these refer to Sound.MIDI.Message. Namely System Common and System Real Time messages are missing. If you need both real-time and file messages (say for ALSA sequencer), you need a custom datatype.
Synopsis
data T
= MIDIEvent T
| MetaEvent T
| SystemExclusive T
get :: C parser => Fallible (T parser) T
put :: C writer => T -> T writer
type TrackEvent = (ElapsedTime, T)
getTrackEvent :: C parser => Fallible (T parser) TrackEvent
type ElapsedTime = Integer
fromElapsedTime :: ElapsedTime -> Integer
toElapsedTime :: Integer -> ElapsedTime
mapBody :: (T -> T) -> TrackEvent -> TrackEvent
maybeMIDIEvent :: T -> Maybe T
maybeMetaEvent :: T -> Maybe T
maybeVoice :: T -> Maybe (Channel, T)
mapVoice :: (T -> T) -> T -> T
Documentation
data T Source
Constructors
MIDIEvent T
MetaEvent T
SystemExclusive T
show/hide Instances
get :: C parser => Fallible (T parser) TSource
put :: C writer => T -> T writerSource
The following functions encode various MIDIFile.T elements into the raw data of a standard MIDI file.
type TrackEvent = (ElapsedTime, T)Source
getTrackEvent :: C parser => Fallible (T parser) TrackEventSource
Each event is preceded by the delta time: the time in ticks between the last event and the current event. Parse a time and an event, ignoring System Exclusive messages.
type ElapsedTime = IntegerSource
fromElapsedTime :: ElapsedTime -> IntegerSource
toElapsedTime :: Integer -> ElapsedTimeSource
mapBody :: (T -> T) -> TrackEvent -> TrackEventSource
maybeMIDIEvent :: T -> Maybe TSource
maybeMetaEvent :: T -> Maybe TSource
maybeVoice :: T -> Maybe (Channel, T)Source
mapVoice :: (T -> T) -> T -> TSource
Produced by Haddock version 2.6.1