summaryrefslogtreecommitdiff
path: root/Midi.hs
diff options
context:
space:
mode:
Diffstat (limited to 'Midi.hs')
-rw-r--r--Midi.hs10
1 files changed, 10 insertions, 0 deletions
diff --git a/Midi.hs b/Midi.hs
index cc14eb6..eac587c 100644
--- a/Midi.hs
+++ b/Midi.hs
@@ -91,6 +91,16 @@ convertEvents = mapMaybe (maybesnd . fmap conv)
91 cpv f c p v = f (fi $ Event.unChannel c) (fi $ Event.unPitch p) (fi $ Event.unVelocity v) 91 cpv f c p v = f (fi $ Event.unChannel c) (fi $ Event.unPitch p) (fi $ Event.unVelocity v)
92 fi = fromIntegral 92 fi = fromIntegral
93 93
94setChannel :: Codec.Midi.Channel -> Codec.Midi.Message -> Codec.Midi.Message
95setChannel c (NoteOff _ k v) = (NoteOff c k v)
96setChannel c (NoteOn _ k v) = (NoteOn c k v)
97setChannel c (ProgramChange _ p) = (ProgramChange c p)
98setChannel c (ControlChange _ n v) = (ControlChange c n v)
99setChannel c (KeyPressure _ k p) = (KeyPressure c k p)
100setChannel c (ChannelPressure _ p) = (ChannelPressure c p)
101setChannel c (PitchWheel _ p) = (PitchWheel c p)
102setChannel _ x = x
103
94unConvertEvents :: [(TimeSpec, Codec.Midi.Message)] -> [(TimeSpec, Event.Data)] 104unConvertEvents :: [(TimeSpec, Codec.Midi.Message)] -> [(TimeSpec, Event.Data)]
95unConvertEvents = mapMaybe (maybesnd . fmap conv) 105unConvertEvents = mapMaybe (maybesnd . fmap conv)
96 where 106 where