ContentsIndex
Haskore.Interface.MIDI.File
Synopsis
data T = C Type Division [Track]
data Division
= Ticks Int
| SMPTE Int Int
type Track = [Event]
data Type
= Mixed
| Parallel
| Serial
type Event = (ElapsedTime, Event')
data Event'
= MidiEvent Channel MidiEvent
| MetaEvent MetaEvent
| SysExStart String
| SysExCont String
type ElapsedTime = Int
type Pitch = Int
type ControlNum = Int
type PBRange = Int
type Program = Int
type Pressure = Int
type Channel = Int
type ControlVal = Int
type Velocity = Int
data MidiEvent
= NoteOff Pitch Velocity
| NoteOn Pitch Velocity
| PolyAfter Pitch Pressure
| ProgChange Program
| Control ControlNum ControlVal
| PitchBend PBRange
| MonoAfter Pressure
type Tempo = Int
type SMPTEHours = Int
type SMPTEMins = Int
type SMPTESecs = Int
type SMPTEFrames = Int
type SMPTEBits = Int
data MetaEvent
= SequenceNum Int
| TextEvent String
| Copyright String
| TrackName String
| InstrName String
| Lyric String
| Marker String
| CuePoint String
| MIDIPrefix Channel
| EndOfTrack
| SetTempo Tempo
| SMPTEOffset SMPTEHours SMPTEMins SMPTESecs SMPTEFrames SMPTEBits
| TimeSig Int Int Int Int
| KeySig Key Mode
| SequencerSpecific [Int]
| Unknown String
data Key
= KeyCf
| KeyGf
| KeyDf
| KeyAf
| KeyEf
| KeyBf
| KeyF
| KeyC
| KeyG
| KeyD
| KeyA
| KeyE
| KeyB
| KeyFs
| KeyCs
data Mode
= Major
| Minor
defltST :: Int
defltDurT :: Int
zeroKey :: Pitch
empty :: T
showLines :: T -> String
changeVelocity :: Double -> T -> T
getTracks :: T -> [Track]
resampleTime :: Double -> T -> T
sortEvents :: T -> T
progChangeBeforeSetTempo :: T -> T
Produced by Haddock version 0.6