Crate rft

Source
Expand description

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.

Re-exports§

pub use window::Window;

Modules§

spectrum
Spectrum computations.
transform
Various algorithms to compute the fourier transform.
window
Window function application.

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 Aliases§

Precision
The float precision all operations use.