Crate rft [−] [src]
Rust Fourier Transform.
The length of the input must not be a power of two, it picks the proper algorithm automatically.
Cooley-Tukey is used for power of two sizes, it has an O(N log N) time complexity and O(N) space complexity.
Bluestein is used for non-power of two sizes, it has an O(5N log N) time complexity and O(5N) space complexity.
If it isn't already obvious, try to use power of two sizes.
Modules
spectrum |
Spectrum computations. |
transform |
Various algorithms to compute the fourier transform. |
window |
Window function application. |
Structs
Window |
Represents a cached window function on a range and window size. |
Traits
Complex |
Trait representing complex numbers. |
ComplexMut |
Trait representing mutable complex numbers. |
Sample |
Trait for sample data, usually from a music file, used for input. |
SampleMut |
Trait for mutable sample data, used for output. |
Functions
forward |
Applies a forward fourier transform to the given input and returns a vector of complex numbers. |
forward_in |
Applies a forward fourier transform to the given input and puts it into the given output. |
inverse |
Applies an inverse fourier transform to the given input and returns a vector of complex numbers. |
inverse_in |
Applies an inverse fourier transform to the given input and puts it into the given output. |
Type Definitions
Precision |
The float precision all operations use. |