这个项目能做什么

audio-engine-core 是一个与应用程序无关的音频处理层,旨在用于高质量音乐播放器和实时音频应用。它实现了一个由 Decode → Resample → Loudness → DSP → Analyze → Stream 组成的处理链,刻意将音频处理与 UI、设备输出和媒体库管理分离。 关键技术特性包括: - 实时安全性:使用基于世代的无锁原子参数快照,以避免在音频回调中进行堆分配、阻塞锁和 I/O 操作。 - 音频质量与测量:包含针对 EBU R128 响度、真峰值检测以及重采样性能(THD+N 和混叠衰减)的客观验证。 - DSP 能力:提供 10 段 IIR biquad EQ、线性/最小相位 FIR EQ、FFT 卷积、Bauer crossfeed、过采样饱和以及真峰值限制。 - 重采样:同时支持原生 SoX VHQ(通过 libsoxr)后端和纯 Rust(通过 rubato)后端。 - 响度管理:将离线 EBU R128 分析与实时原子增益应用分离。 - 离线渲染:支持具有可配置效果尾随策略的延迟补偿渲染。 该库基于 Symphonia 进行解码,并提供 `PlaybackPipeline` API 以便轻松集成到音频回调中。