# RustDCT
[](https://crates.io/crates/rustdct)
[](https://crates.io/crates/rustdct)
[](https://docs.rs/rustdct/)

RustDCT is a pure-Rust signal processing library that computes the most common Discrete Cosine Transforms:
* Discrete Cosine Transform (DCT) Types 1, 2, 3, 4
* Discrete Sine Transform (DST) Types 1, 2, 3, 4
* Modified Discrete Cosine Transform (MDCT)
## Example
```rust
// Compute a DCT Type 2 of size 1234
use rustdct::DCTplanner;
let mut input: Vec<f32> = vec![0f32; 1234];
let mut output: Vec<f32> = vec![0f32; 1234];
let mut planner = DCTplanner::new();
let mut dct = planner.plan_dct2(1234);
dct.process(&mut input, &mut output);
```
## Compatibility
The `rustdct` crate requires rustc 1.26 or greater.
## Releases
Release notes are available in [RELEASES.md](RELEASES.md).