#dct #transform #discrete #cosine #signal-processing #encoding #mdct

rustdct

在纯Rust中,以O(nlogn)的时间复杂度计算任何大小的离散余弦变换(DCT)

12个版本 (6个重大更新)

0.7.1 2022年11月8日
0.7.0 2021年12月29日
0.6.0 2021年1月5日
0.5.0 2020年10月9日
0.1.3 2017年6月28日

#455 in 算法

Download history 5483/week @ 2024-03-14 5501/week @ 2024-03-21 5157/week @ 2024-03-28 5383/week @ 2024-04-04 6181/week @ 2024-04-11 5804/week @ 2024-04-18 5629/week @ 2024-04-25 4998/week @ 2024-05-02 5585/week @ 2024-05-09 5767/week @ 2024-05-16 5735/week @ 2024-05-23 4738/week @ 2024-05-30 4820/week @ 2024-06-06 5580/week @ 2024-06-13 4769/week @ 2024-06-20 4073/week @ 2024-06-27

每月下载量 20,090
用于 45 个crate(15个直接使用)

MIT/Apache

205KB
4K SLoC

RustDCT

minimum rustc 1.37

RustDCT是一个纯Rust的信号处理库,用于计算最常见的离散余弦变换

  • 离散余弦变换(DCT)类型1,2,3,4
  • 离散正弦变换(DST)类型1,2,3,4
  • 修改后的离散余弦变换(MDCT)

示例

// Compute a DCT Type 2 of size 1234
use rustdct::DctPlanner;

let mut planner = DctPlanner::new();
let mut dct = planner.plan_dct2(1234);

let mut buffer = vec![0f32; 1234];

dct.process_dct2(&mut buffer);

兼容性

rustdctcrate需要rustc 1.37或更高版本。

版本

发布说明可在RELEASES.md中找到。

依赖项

~3MB
~57K SLoC