Safe Haskell | Safe-Inferred |
---|
This has the protocol to talk to a running play_cache and tell it to play
samples in realtime. This is for the audio preview aka "MIDI thru" feature
for im. Since each im patch may respond in its own way to a Note, this
relies on the patch itself exporting a ThruFunction
to find the
appropriate sample.
This used to use OSC, but it turned out OSC wasn't really getting me
anything, and its restrictions were troublesome, so now it's a custom
format as emitted by serialize
.
Synopsis
- type ThruFunction = [Note] -> Either Error Message
- data Note = Note {
- _pitch :: !Pitch.NoteNumber
- _velocity :: !Double
- _attributes :: !Attrs.Attributes
- _startOffset :: !Int
- data Message
- data Play = Play {}
- send :: Message -> IO ()
Documentation
type ThruFunction = [Note] -> Either Error Message Source #
This is a specialized version of ThruFunction
. Being more
specialized means I don't have to directly depend on Cmd.Cmd from here.
Note | |
|