第三方声明
Signalsmith Stretch 1.3.2
音乐模式采用官方 Signalsmith Stretch WebAssembly 工厂函数,并配有本地适配器,用于限制试听范围、分阶段时间拉伸、最终峰值保护和参考原音的立体声处理。版权 2022 Geraint Luff / Signalsmith Audio Ltd. MIT。 随附许可证 · 上游源码 · 本版本使用的工厂函数 · 应用适配器 · 立体声处理器 · 源码阅读器 · 内存规划器.
频谱投影器使用扩展的本地 FFT,其数值运算与保留的 SoundTouchJS 实现相同。 FFT 适配器 · 可读源码 · 已编译字节。使用附带的构建脚本重新构建,并将 quality-fft.wat 和 quality-fft-binary.mjs 分别作为输入和输出参数。
SoundTouchJS 2.1.1
音乐兼容模式使用以下库的本地改编副本: @soundtouchjs/stretch-phase-vocoder ,结合我们的精确步进定时适配器与带限重采样器。练习模式使用我们以源时间为锚点的时域拉伸方法,并共用带限重采样器。核心与 Lanczos 组件仍是锁定版本的 SoundTouchJS 包依赖。改编副本保留原频谱处理,支持可选的本地 WebAssembly FFT,并以原 JavaScript FFT 作为备用。定时适配器会复用重复的单声道正向 FFT 结果,并对齐交替步进。 阅读应用适配器与重采样器源码 · 渲染帧规划源码。版权归 Steve “Cutter” Blades、Olli Parviainen 及贡献者所有。MPL-2.0。 随附许可证 · 原始版本源码与已发布模块 · 准确的上游版本与构建说明.
修改后的 FFT 组件与重新构建源代码: 改编的相位声码器 · FFT 适配器与备用实现 · 可读的 FFT 源码 · 已编译字节 · 构建脚本 · 重新构建说明.
lamejs 1.2.7
MP3 编码器由以下项目提供: @breezystack/lamejs。版权归各贡献者所有。LGPL-3.0。使用的库未经修改。 阅读随附许可证 · 源码与构建说明 · 本版本使用的库模块.
应用在独立 worker 中加载编码器。可通过项目依赖和 worker 导入,使用修改后的兼容编码器重新构建;不限制修改该库或调试这些更改。