rustfft 4.1.0

Compute FFTs of any size in O(nlogn) time, in pure Rust.
Documentation

RustFFT

CI minimum rustc 1.31

RustFFT is a mixed-radix FFT implementation written in Rust. See the documentation for more details.

If you're looking for the experimental AVX-accelerated release, check out the SIMD branch.

Usage

// Perform a forward FFT of size 1234
use rustfft::{FFTplanner, num_complex::Complex};

let mut planner = FFTplanner::new(false);
let fft = planner.plan_fft(1234);

let mut input:  Vec<Complex<f32>> = vec![Complex{ re: 0.0, im: 0.0 }; 4096];
let mut output: Vec<Complex<f32>> = vec![Complex{ re: 0.0, im: 0.0 }; 4096];

fft.process(&mut input, &mut output);

Compatibility

The rustfft crate requires rustc 1.31 or greater.

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Before submitting a PR, please make sure to run cargo fmt.