Safe Haskell | Safe-Inferred |
---|
Simulate the state of a MIDI synthesizer.
Midi.Synth is different in that it wants to convert MIDI messages to higher level notes, but similar in that it's also simulating a synthesizer. This module focuses on the instantaneous state of the synth.
Synopsis
- newtype State = State (Map Addr Channel)
- empty :: State
- data Channel = Channel {}
- get_channel :: Addr -> State -> Channel
- empty_channel :: Channel
- data Control
- type Addr = (Midi.WriteDevice, Midi.Channel)
- type Message = (Midi.WriteDevice, Midi.Message)
- convert :: Midi.WriteMessage -> Message
- play :: [Message] -> State -> State
- process :: State -> Message -> State
- diff :: State -> State -> [Message]
Documentation
Channel | |
|
type Addr = (Midi.WriteDevice, Midi.Channel) Source #
type Message = (Midi.WriteDevice, Midi.Message) Source #
convert :: Midi.WriteMessage -> Message Source #