1 个不稳定版本
0.1.0 | 2020年9月20日 |
---|
#493 在 音频
42 每月下载量
38KB
763 代码行
Tdpsola:tdpsola算法的实现
TD-PSOLA(时域音高同步重叠和添加)是一种算法,允许独立地修改声音的音高和速度。
算法
该算法背后的思想本身相当简单,但难以解释。我发现这篇文档最清晰。
TD-PSOLA的优点
- 保留音素,即如果你提高人声的音高,它不会听起来像这个人是从氦气球中呼吸的
- 适用于适度音高/速度变化的性能算法
TD-PSOLA的缺点
- 对噪声不稳健,仅适用于带声音
- 需要源声音的基频先验知识
实现
这是一个用Rust编程语言实现的实现。此实现的优点
0
模板延迟- 分析部分和综合部分分离,允许你重用分析部分
- 速度和音高可以在任何时候独立操作
- 许多测试
- 在内存安全的编程语言中实现,没有“不安全”功能
此实现的缺点
- 算法为了确保
0
模板延迟而变得复杂。
示例
一个简单的示例可以在文档或 src/lib.rs
文件中找到。更详细的示例可以在源代码的 examples
文件夹中找到。
计划中的功能
- 适用于实时分析和综合
- 块处理以获得额外速度(目前只能按样本使用)
贡献
我们欢迎贡献,无论是以问题的形式还是以拉取请求的形式。在打开拉取请求之前,请先打开一个问题,以便您知道随后的拉取请求是否可能被批准。
如果您没有Codeberg账户,还可以通过电子邮件(电子邮件地址在Cargo.toml文件中)进行贡献。只需创建Codeberg账户可能就是最简单的方法。
除非明确说明,否则您同意您的贡献按照以下方式许可。
许可
这是一款免费软件:您可以在自由软件基金会发布的GNU Affero通用公共许可证的条款下重新分发它和/或修改它,许可证版本为3或更高版本(根据您选择)。
本软件的发布是希望它能有用,但没有任何保证;甚至没有关于其商誉或特定用途适用性的暗示保证。有关更多详细信息,请参阅GNU Affero通用公共许可证。
完整的许可证文本可以在随源代码一起分发的文件LICENSE-AGPL-3.0.md中找到。如果找不到,请参阅https://www.gnu.org/licenses/。