Safe Haskell | None |
---|
Midi.
- data Msg
- type Channel = Int
- midi :: Sigs a => (Msg -> SE a) -> a
- midin :: Sigs a => Channel -> (Msg -> SE a) -> a
- pgmidi :: Sigs a => Maybe Int -> Channel -> (Msg -> SE a) -> a
- ampCps :: Msg -> (D, D)
- midi_ :: (Msg -> SE ()) -> SE ()
- midin_ :: Channel -> (Msg -> SE ()) -> SE ()
- pgmidi_ :: Maybe Int -> Channel -> (Msg -> SE ()) -> SE ()
- monoMsg :: D -> D -> SE (Sig, Sig)
- holdMsg :: D -> SE (Sig, Sig)
- monoMsgn :: Channel -> D -> D -> SE (Sig, Sig)
- holdMsgn :: Channel -> D -> SE (Sig, Sig)
- pgmonoMsg :: Maybe Int -> Channel -> D -> D -> SE (Sig, Sig)
- pgholdMsg :: Maybe Int -> Channel -> D -> SE (Sig, Sig)
- cpsmidi :: Msg -> D
- ampmidi :: Msg -> D -> D
- initc7 :: D -> D -> D -> SE ()
- ctrl7 :: D -> D -> D -> D -> Sig
- midiCtrl7 :: D -> D -> D -> D -> D -> SE Sig
- midiCtrl :: D -> D -> D -> SE Sig
- umidiCtrl :: D -> D -> D -> SE Sig
- class MidiInstr a where
- type MidiInstrOut a :: *
- onMsg :: a -> Msg -> SE (MidiInstrOut a)
Documentation
data Msg
Mono-midi synth
monoMsg :: D -> D -> SE (Sig, Sig)Source
Produces midi amplitude and frequency as a signal. The signal fades out when nothing is pressed. It can be used in mono-synths. Arguments are portamento time and release time. A portamento time is time it takes for transition from one note to another.
monoMsg portamentoTime releaseTime
holdMsg :: D -> SE (Sig, Sig)Source
Produces midi amplitude and frequency as a signal and holds the last value till the next one is present. It can be used in mono-synths. Arguments are portamento time and release time. A portamento time is time it takes for transition from one note to another.
holdMsg portamentoTime
monoMsgn :: Channel -> D -> D -> SE (Sig, Sig)Source
Produces midi amplitude and frequency as a signal. The signal fades out when nothing is pressed. We can specify a channel. It can be used in mono-synths. Arguments are portamento time and release time. A portamento time is time it takes for transition from one note to another.
monoMsgn chnNumber portamentoTime releaseTime
holdMsgn :: Channel -> D -> SE (Sig, Sig)Source
Produces midi amplitude and frequency as a signal and holds the last value till the next one is present. We can specify a channel. It can be used in mono-synths. Arguments are portamento time and release time. A portamento time is time it takes for transition from one note to another.
holdMsgn chnNumber portamentoTime
pgmonoMsg :: Maybe Int -> Channel -> D -> D -> SE (Sig, Sig)Source
Produces midi amplitude and frequency as a signal. The signal fades out when nothing is pressed. We can specify a programm number and channel. It can be used in mono-synths. Arguments are portamento time and release time. A portamento time is time it takes for transition from one note to another.
pgmonoMsg chnNumber portamentoTime releaseTime
pgholdMsg :: Maybe Int -> Channel -> D -> SE (Sig, Sig)Source
Produces midi amplitude and frequency as a signal and holds the last value till the next one is present. We can specify a programm number and channel. It can be used in mono-synths. Arguments are portamento time and release time. A portamento time is time it takes for transition from one note to another.
pgholdMsg portamentoTime
Reading midi note parameters
midiCtrl7 :: D -> D -> D -> D -> D -> SE SigSource
Initializes midi control and get the value in the specified range.
midiCtrl :: D -> D -> D -> SE SigSource
Initializes midi control and get the value in the range (-1) to 1.
umidiCtrl :: D -> D -> D -> SE SigSource
Unipolar midiCtrl. Initializes midi control and get the value in the range 0 to 1.
Overload
type MidiInstrOut a :: *Source
onMsg :: a -> Msg -> SE (MidiInstrOut a)Source