-
Notifications
You must be signed in to change notification settings - Fork 0
使用方法(中文)
ENUNU X 音素器是适用于 OpenUtau ,基于 ONNX 的 ENUNU 音素器实现。其主要目的是为各种基于机器学习的歌声合成系统及其开发者提供一个多语种音素时长模型,并摆脱对 Python 的依赖。
关于名称:"X"表示onnX、eXtensible(可扩展) 和 eXchange(交换)
ENUNU X 计划实现以下功能:
- 基于ONNX的ENUNU时长模型推理
- 内置的节拍对齐功能(类似 https://github.com/UtaUtaUtau/enunu_timing_corrector )
- 多音节语言支持(例如英语)
- 音素重定向与结合。部分歌声合成系统可能使用与 ENUNU 不同的音素符号。音源开发者将可以定义一个词典,将 ENUNU 输出的音素符号重定向到目标合成器所使用的音素符号,支持将多个音素的组合重定向到单个音素。
音素器的 C# 代码在这个分支开发: https://github.com/oxygen-dioxide/OpenUtau/tree/nnsvs-onnx
在使用过程中遇到了任何bug都可以向我反馈。在反馈时,建议提供发生 bug 时的 OpenUtau 窗口完整截图、工程文件,以及 OpenUtau 日志文件。
目前 ENUNU X 音素器尚未合并到 OpenUtau 官方主线。你可以在 OpenUtau For Diffsinger 中使用 ENUNU X 音素器。
ENUNU X EN 是适用于英文音源的音素器,与 EN VCCV兼容。
要想让你的音源支持 ENUNU X 音素器,需要做以下两件事:
- 转换音源
- 编写 enunux.yaml
这里的 python 代码使用与 ENUNU 相同的依赖项。如果你已经安装了 ENUNU 或适用于 OpenUtau 的 ENUNU 服务器,则不需要另行安装依赖项。
下载 export_onnx.py 和 export_onnx.bat。找到 ENUNU 的安装位置,将这两个文件放进去(和 enunu.py 位于同一文件夹)。
运行 export_onnx.bat ,输入你的音源路径(enuconfig.yaml所在的文件夹),回车。
enunux.yaml 是 ENUNU X 音素器运行所必需的配置文件,其格式与 arpasing.yaml 类似(但增加了redirections部分),和 enuconfig.yaml 放置在同一文件夹下。同一语言的 enunux.yaml 是通用的,因此可以从其他音源获取 enunux.yaml
包含以下内容:
- 音素定义(symbols部分,需要包含音源中所有支持的发音)
- 发音词典(entries部分,与 ENUNU dict 作用相同)
- 重定向(redirections部分。如果目标渲染器的音素定义与 ENUNU 不同,可将ENUNU输出的音素转化为目标渲染器格式。例如,将
sil
转化为SP
, 将br
转化为AP
) 可参考以下示例: - 英文 enunux.yaml
- 日文 enunux.yaml
注意:
- enunux.yaml 和 enuconfig.yaml 都是 ENUNU X 音素器运行所必需的文件。
- enunux.yaml 的文件名不能修改
如需在非 ENUNU 音源上使用本音素器,你需要一个已按上文所述方式转换的ENUNU音源
将 ENUNU 音源整个文件夹复制到目标音源目录下,使之成为一个子文件夹,并重命名为 enunux 。然后你可以删除其中的所有 .pth 和 .joblib 文件以缩小体积。