DiffSinger

用扩散模型快速生成高自然度歌声,输入MIDI即可合成演唱。

DiffSinger 是一个基于浅层扩散机制的开源歌声合成(SVS)与语音合成(TTS)项目,源自 AAAI 2022 论文,官方代码实现。它解决的核心问题是传统歌声合成中音质与自然度不足、以及扩散模型推理速度慢的痛点。DiffSinger 采用浅层扩散机制,将扩散过程应用于声学特征的高频细节部分,在保持高质量合成的同时显著加速推理。项目支持通过 MIDI 输入驱动歌声合成,提供完整的训练与推理流程,并附带歌声数据库构建工具。其核心能力包括:高自然度的歌声生成、可控的音高与节奏、以及高效的扩散采样加速。作为学术导向的项目,它提供了清晰的模型架构和实验配置,便于研究者复现与二次开发,同时也被社区用于构建自定义歌声合成应用。

开源 free 音频音乐
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 4862
维护状态 维护中
是否开源 是
定价模式 free

项目数据

分类音频音乐
开发团队MoonInTheRiver
所属国家
官网地址
定价模式free
价格说明开源项目,MIT许可证,完全免费,可自行部署使用。
访问状态
是否开源是
开源协议MIT
主要语言Python
技术栈/模型aaai2022,diffusion-model,diffusion-speedup,midi,singing-synthesis,singing-voice,singing-voice-database,singing-voice-synthesis,speech-synthesis,text-to-speech,tts
GitHub 星标★ 4862
30天Star增速
HF 下载量
上线时间2021-12-17 00:00:00
最近更新2026-09-22 00:00:00
维护状态维护中
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-09
浏览次数4

使用教程

难度:高级 约 30 分钟 部署方式:本地安装 5 步

⚠ 该项目 README 未提供完整安装说明,以下步骤为通用流程,请以官方文档为准。

环境要求

  • Python 环境(项目为 Python 实现)
  • PyTorch(README 明确为官方 PyTorch 实现)
  • 能访问 GitHub 与 arXiv/文档的网络环境
  • 具备歌声合成数据集与训练/推理所需的算力

安装与启动步骤

  1. 1克隆项目仓库

    从 GitHub 拉取 DiffSinger 源码到本地,后续所有文档都在仓库的 docs 目录下。

    git clone https://github.com/MoonInTheRiver/DiffSinger.git
    cd DiffSinger
  2. 2阅读 SVS 说明文档

    README 未给出安装命令,需以 docs/README-SVS.md 为准,按其章节完成环境与数据准备。

    cat docs/README-SVS.md
  3. 3查看简易推理方案

    README 提供了 A、B 两种从原始输入直接推理的方案文档,按需选择一种照着做。

    cat docs/README-SVS-opencpop-cascade.md
    cat docs/README-SVS-opencpop-e2e.md
  4. 4了解扩散加速插件

    如需更快的推理速度,可参考 PNDM 插件文档,为 DiffSinger 提供扩散采样加速。

    cat docs/README-SVS-opencpop-pndm.md
  5. 5在线体验(免部署)

    只想试听效果、不想本地配置时,可直接使用官方提供的 HuggingFace 在线 Demo。

如何确认成功

仓库克隆成功且 docs 目录下能看到 README-SVS.md,并按其步骤跑通推理即表示环境就绪。

常见问题

Q:不想本地部署,能直接体验吗?

A:可以。README 提供了 HuggingFace 在线 SVS 体验空间(Silentlin/DiffSinger),另有 TTS 版 Demo,打开网页即可试听。

Q:扩散模型推理太慢怎么办?

A:README 提到新增了 PNDM(ICLR 2022)插件,可自由加速 DiffSinger,具体用法见 docs/README-SVS-opencpop-pndm.md。

Q:这个仓库除了歌声合成还支持什么?

A:同时包含 DiffSpeech,即文本转语音(TTS)的实现,README 中给出了对应的 HuggingFace TTS 体验入口。

Q:有更完善的代码框架吗?

A:README 提到改进版框架 NATSpeech 已发布,其中包含 DiffSpeech 与 PortaSpeech 的实现,可优先关注。

Q:支持 MIDI 输入吗?

A:支持,README 的更新记录中列出 MIDI-A 版本与 MIDI-B 版本的歌声合成支持。

注意事项

  • 本次 README 节选只有更新日志和文档链接,没有任何 pip install、依赖版本、端口或路径信息,因此安装步骤需以仓库 docs 目录下的文档为准。
  • 不要凭猜测执行 pip/conda 安装命令,请先阅读 docs/README-SVS.md 等对应文档再操作。
  • 项目为学术导向的开源实现,复现需要自行准备数据集与训练配置,耗时和算力成本较高。
  • 仓库自 2022 年后更新记录有限,若追求更新的框架可参考其提到的 NATSpeech。

核心亮点

  • 浅层扩散机制显著提升推理速度,相比全扩散模型更实用
  • 官方代码完整,支持训练、推理与歌声数据库构建,学术复现门槛低
  • 支持 MIDI 控制音高节奏,适合音乐创作场景

不足之处

  • 依赖大量歌声数据训练,数据准备成本较高
  • 文档/社区待观察

适用场景

  • 歌声合成研究:复现论文、对比基线模型
  • 音乐创作:用MIDI快速生成人声Demo
  • 语音合成扩展:将方法迁移至TTS任务

替代项目

DiffSVC、VISinger2、RVC-Project

项目介绍

DiffSinger 是音频音乐领域的开源项目,由 MoonInTheRiver 开发,2021 年首次发布。

在全站 13,090 个收录项目中,它的 GitHub 星标数(4,862)位列前 9%,在音频音乐分类的 738 个项目里位列前 6%。

近 41 天,它的 GitHub 星标从 4,841 增加到 4,862,净增 21。

项目仍在小幅维护中,最近一次代码更新于 2026-09-22。MIT许可证,完全免费,可自行部署使用。

它主要面向的使用场景是:歌声合成研究:复现论文、对比基线模型。同类可对比的替代方案包括 DiffSVC、VISinger2、RVC-Project。

上一篇:Kokoro-FastAPI

下一篇:RealtimeTTS

同类项目推荐

tango 开源

输入一句话,自动生成匹配的音频内容

A family of diffusion models for text-to-audio generation.

★ 1239 2026-08-09
AuK 开源

一个模型搞定语音生成、编辑与分离

AuK: An Open-Source Foundational Model for Speech Generation and Editing

★ 1236 2026-09-13
swift-tts 开源

Swift 项目三行代码接入系统 TTS,兼容 TCA 和 Combine

A straightforward package containing version for Swift modern concurrency, Point-Fre···

★ 52 2026-08-09
ai-dj 开源

现场演出中实时用 AI 生成音乐,保持人类掌控

AI music generation for live performance - Standalone (Ableton Link) + VST3/AU. 8 tr···

★ 246 2026-08-09