| Crates.io | pxdct |
| lib.rs | pxdct |
| version | 0.2.3 |
| created_at | 2025-11-07 19:18:39.007849+00 |
| updated_at | 2026-01-23 16:51:38.946288+00 |
| description | Discrete cosine transform |
| homepage | https://github.com/awxkee/pxdct |
| repository | https://github.com/awxkee/pxdct |
| max_upload_size | |
| id | 1922034 |
| size | 5,021,367 |
Pxdct is the main entry point for creating optimized DCT (Discrete Cosine Transform) and DST (Discrete Sine
Transform) executors.
It provides a unified API for constructing fast, in-place transform executors using either single (f32) or *
double (f64)* precision.
All executors implement the [PxdctExecutor] trait and can be used to perform forward or inverse transforms directly on
a mutable data slice.
f32 and f64use pxdct::Pxdct;
use pxdct::PxdctExecutor;
fn main() -> Result<(), Box<dyn std::error::Error>> {
let mut data = vec![1.0f32, 2.0, 3.0, 4.0];
// Create a DCT-II executor for f32
let dct2 = Pxdct::make_dct2_f32(data.len())?;
dct2.execute(&mut data)?;
println!("Transformed data: {:?}", data);
Ok(())
}
This project is licensed under either of
at your option.