Efficient signal processing using runtime compilation http://www.haskell.org/haskellwiki/Synthesizer
|Latest on Hackage:||0.8.1.2|
This package is not currently in any snapshots. If you're interested in using it, we recommend adding it to Stackage Nightly. Doing so will make builds more reliable, and allow stackage.org to host generated Haddocks.
Efficient signal processing
using runtime compilation and vector instructions.
It uses LLVM library, thus it is not bound to a specific CPU.
There are some example executables that you can build
with Cabal flag
synthi-llvm-render: Render a MIDI file into an audio file using some arbitrary instruments.
synthi-llvm-alsa: A realtime software synthesizer that receives MIDI events via ALSA and in response plays tones via ALSA. If you have no ALSA (or Linux at all), then you can disable this example with
synthi-llvm-jack: The same realtime software synthesizer using JACK. If you have no JACK, then you can disable this example with
synthi-llvm-example: Not very useful as an executable. You should better load the according module into GHCi and play around with it. The module Synthesizer.LLVM.LAC2011 should be especially useful for an introduction.
Change log for the
Compiled code is now freed by the garbage collector if it is no longer needed.
reverbSimple: No longer add the original signal. Every partial comb filter maintains it anyway.
added many export lists
For GHC-7.10 we had to separate
ProcessOftype functions from
synthesizer-core:CausalClass. We adapt to this change here.