Write software defined radio applications in Haskell.
Features:
Signal processing blocks can be chained together using the Pipes library
Zero copy design
Signal processing functions are implemented in both Haskell and C (with SIMD acceleration)
Can FIR filter, decimate and resample
Helper functions for FIR filter design using window functions and plotting of the frequency response
FFTs using FFTW
Line and waterfall plots using OpenGL
FM demodulation
PulseAudio sound sink
rtl-sdr and BladeRF based radio sources/sinks supported and other sources are easily added
See https://github.com/adamwalker/sdr for more features and screenshots.
A collection of simple apps that use this library can be found here. These include an FM radio receiver, an OpenGL waterfall plotter and an AM radio receiver.