rustfft 5.0.0-experimental.1

High-performance FFT library written in pure Rust.
Documentation

RustFFT

CI minimum rustc nightly

RustFFT is a high-performance FFT library written in pure Rust. See the documentation for more details.

This is an experimental release of RustFFT that enables AVX acceleration. It currently requires a nightly compiler, mainly for the min_specialization feature. The eventual plan is to release this experimental version as version 5.0 of RustFFT, but that will not happen until it compiles on stable Rust.

No special code is needed to activate AVX: Simply plan a FFT using the FftPlanner on a machine that supports the avx and fma features.

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 buffer = vec![Complex{ re: 0.0f32, im: 0.0f32 }; 1234];
fft.process_inplace(&mut buffer);

Compatibility

This experimental version of rustfft crate requires nightly Rust.

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.