Spectrogram is a .NET library which makes it easy to create spectrograms from pre-recorded signals or live audio from the sound card. This library supports .NET Framework (4.5) and .NET Core (3.0).
Quickstart: The code below converts /data/mozart.wav (Mozart's Piano Sonata No. 11 in A major) to a spectrograph and saves it to produce the image above.
var spec = new Spectrogram.Spectrogram();
float[] values = Spectrogram.WavFile.Read("mozart.wav");
spec.Add(values);
spec.SaveBitmap("mozart.jpg");A demo program is included which monitors the sound card and continuously creates spectrograms from microphone input. It runs fast enough that the entire bitmap can be recreated on each render. This means brightness and color adjustments can be applied to the whole image, not just new parts.
render horizontally or vertically- optional display of axis labels (scales)
create bitmaps in real time from audio inputadvanced color (LUT) options- advanced intensity options (nonlinear scaling)
- create a user control to display a spectrogram
- create a user control to adjust spectrogram settings
options for bitmap to scroll or to statically repeat
- Argo (website) - closed-source QRSS viewer for Windows
- SpectrumLab (website) - closed-source spectrum analyzer for Windows
- QrssPIG (GitLab) - open-source spectrograph for Raspberry Pi (C++)
- Lopora (website) - open-source spectrograph (Python 3)
- QRSS VD (GitHub) - open source spectrograph (Python 2)
- A spectrogram is an image
- A spectrograph is a machine
- Stop using the word spectrograph in software!

