Crate spectrum_analyzer[−][src]
A simple and fast no_std library to get the frequency spectrum of a digital signal
(e.g. audio) using FFT. It follows the KISS principle and consists of simple building
blocks/optional features.
In short, this is a convenient wrapper around the great rustfft library.
Modules
| scaling | This module contains convenient public transform functions that you can use
as parameters in |
| windows | Several window functions which you can apply before doing the FFT. For more information: |
Structs
| FrequencySpectrum | Convenient wrapper around the processed FFT result which describes each frequency and
its value/amplitude in the analyzed slice of samples. It only consists of the frequencies
which were desired, e.g. specified via
|
Enums
| FrequencyLimit | Can be used to specify a desired frequency limit. If you know that you only
need frequencies |
Functions
| samples_fft_to_spectrum | Takes an array of samples (length must be a power of 2),
e.g. 2048, applies an FFT (using library |
Type Definitions
| ComplexSpectrumScalingFunction | Describes the type for a function factory that generates a function that can scale/normalize
the data inside |
| Frequency | A frequency. A convenient wrapper type around |
| FrequencyValue | The value of a frequency in a frequency spectrum. Convenient wrapper around |
| SimpleSpectrumScalingFunction | Definition of a simple function that gets applied on each frequency magnitude
in the spectrum. This is easier to write, especially for Rust beginners.
Everything that can be achieved with this, can also be achieved with parameter
|