ENUNU / NNSVS 支持|轻量开源 AI 歌声合成
ENUNU 是什么
ENUNU = 基于 NNSVS(Neural Network Singing Voice Synthesis)的歌声合成引擎。和 DiffSinger 同属 AI 引擎,但定位不同:
| 对比项 | DiffSinger | ENUNU / NNSVS |
|---|---|---|
| 模型大小 | 100MB - 2GB | 50 - 300MB(更轻量) |
| CPU 渲染速度 | 慢 | 快(不需要 GPU 也能实时) |
| 音质自然度 | 高 | 中上(略低于 DiffSinger) |
| 模型训练 | 相对复杂 | 更简单 |
| OpenUtau 集成方式 | 内置引擎 | 需要后台 ENUNU Server 进程 |
| GPU 加速 | DirectML / CoreML | OpenUtau 不支持,但 NNSVS 自己可以用 CUDA |
ENUNU 适合不想折腾 DiffSinger 的 GPU 依赖、想在 CPU 上也能跑 AI 歌声合成的用户。
ENUNU 在 OpenUtau 里的工作方式
DiffSinger 是 OpenUtau 内置的引擎——直接选就能用。ENUNU 是外部服务器模式:
OpenUtau(客户端)
↓ 发送音素序列 + 参数
ENUNUServer(后台进程)
↓ NNSVS 神经网络推理
ENUNUServer → 返回音频片段
↓
OpenUtau 接收 + 拼接 → 播放/渲染
所以用 ENUNU 前需要单独启动 ENUNUServer。
安装 ENUNU
第一步:装 ENUNUServer
从 GitHub 下载对应版本的 ENUNUServer:
- ENUNUServer for OpenUtau(rokujyushi/ENUNU)——常规版
- SimpleENUNU Server(rokujyushi/SimpleEnunu)——更实验性、更新、适合开发者
重要:ENUNU 声库必须匹配对应版本的 Server——ENUNU 声库只能用 ENUNUServer,SimpleENUNU 声库只能用 SimpleENUNU Server,不能混用。
第二步:下载 ENUNU 声库
从 NNSVS 社区(piapro、UTAU Discord、GitHub)下载 .zip 格式的 ENUNU 声库。安装方式和装 DiffSinger 声库类似:
OpenUtau → Tools → Install Singer... → 选 zip → 编码 UTF-8 → Install。
第三步:启动 ENUNUServer
解压 ENUNUServer 后,手动启动它(双击 exe / 终端运行)。启动后它会监听本地端口,等待 OpenUtau 的请求。
ENUNUServer 启动后不要关——OpenUtau 渲染时需要它在后台运行。
第四步:在 OpenUtau 里选引擎和音素器
- 轨道头 Singer → 选 ENUNU 声库
- 引擎下拉 → ENUNU(或 SimpleENUNU)
- 音素器下拉 → 自动变成 ENUNU 相关音素器
选完后,写歌词、按空格播放——OpenUtau 会把请求发给 ENUNUServer,后者推理后返回音频。
ENUNU 声库的 character.yaml
ENUNU 声库的 character.yaml 需要声明 singer_type: Enunu(或 SimpleEnunu)。安装声库时 OpenUtau 会自动处理,但如果你手动编辑 yaml:
name: ENUNU声库名
singer_type: Enunu # 或 SimpleEnunu
phonemizer: ENUNU
...
ENUNU vs DiffSinger 决策
| 你的情况 | 选 ENUNU | 选 DiffSinger |
|---|---|---|
| 只有 CPU、想跑 AI 合成 | ✅ 首选 | ❌ CPU 太慢 |
| 有独显、追求最好音质 | ❌ | ✅ 首选 |
| 想快速训练自己的 AI 声库 | ✅ NNSVS 训练更简单 | 训练复杂 |
| 不想折腾 GPU 配置 | ✅ | 次选 |
| 声库生态 | 相对小 | 快速增长 |
| OpenUtau 集成复杂度 | 需要单独启 Server | 内置直接选 |
常见问题
问题:ENUNUServer 启动了但 OpenUtau 连接不上
- ENUNUServer 有没有显示 "Server is listening on port XXXX"?没启动成功就不会监听
- OpenUtau → Preferences → ENUNU Settings 里端口号有没有和 ENUNUServer 一致?默认端口通常是固定的
- Windows 防火墙有没有拦 ENUNUServer?添加允许规则
问题:渲染时 ENUNUServer 崩溃
- ENUNU 声库和 Server 版本不匹配——确认是 ENUNU 声库配 ENUNUServer,SimpleENUNU 声库配 SimpleENUNU Server
- Server 版本太旧,升级到最新版
- 声库训练配置有问题(某个 .yaml 格式错误)——重新下载声库
问题:ENUNU 声库唱出来和预期不一样
ENUNU 声库的音质质量完全取决于训练时用的原始录音——如果声库作者训练数据不好,OpenUtau 这边无能为力。换一个声库试试能验证是不是训练的问题。
问题:可以同时用 ENUNU 和 DiffSinger 吗
可以——分两条轨道,每条轨道选不同引擎。ENUNU 那条轨道选 ENUNU 引擎 + ENUNU 声库;DiffSinger 那条轨道选 DiffSinger 引擎 + DiffSinger 声库。ENUNUServer 和 DiffSinger vocoder 可以同时运行。