本博客最初发表于 OpenVoiceOS 博客
phoonnx 现已成为 OpenVoiceOS 的主要文本转语音框架——一套构建于 VITS 和 ONNX 之上的完整训练和推理栈,旨在为我们支持的每一种语言提供一致、可离线运行的语音。
听听实际效果:语音演示在你的浏览器中实时运行 phoonnx 语音——onnxruntime-web,无需服务器。
新语言:推出巴斯克语!
在我们此前关于从零开始制作合成语音的工作以及阿拉伯语 TTS 合作的基础上,我们语言支持的最新成员是**巴斯克语(eu-ES)**的语音。
这包括男声(Miro)和女声(Dii),进一步推进我们支持哪怕是缺乏开放、高质量 TTS 选项的低资源语言的使命。
此前,只有一个机械感的女声可用,它通过与 ILENIA 合作制作的 AhoTTS 插件提供。
听听成果:全新巴斯克语开源语音的示例。
Miro(男声): 收听 Miro
Dii(女声): 收听 Dii
跨语言的一致语音身份
OpenVoiceOS 需要一个一致的品牌语音:一个标准的男性和女性人格,无论助手被配置为哪种语言,听起来都一样。一位在里斯本设置 OpenVoiceOS、之后又切换到德语的用户,应当听到同一个熟悉的说话人。
TigreGotico 构建并维护 phoonnx 引擎,贡献开放的训练数据集,并训练履行这一承诺的默认多语言 OVOS 语音——Miro(男声)和 Dii(女声)。
音素化器的灵活性
phoonnx 不仅仅是一个推理工具;它是一套构建于强健的 VITS 架构之上的完整训练和推理框架。 这种双重能力让我们能够快速地对高质量语音进行原型设计、训练和部署。
这种灵活性的一个关键在于能够支持多样化的音素化器(phonemizer)。 音素化器(或称 G2P——字素到音素模型)将书面文本转换为 TTS 模型所朗读的音单元(音素)序列。 不同的语言可能需要不同的、专门的音素化器才能准确地发音。
- eSpeak 兼容性:一个核心特性是,只要 phoonnx 模型是使用广泛可用的 eSpeak 音素化器训练的,它们就与流行的 Piper TTS 引擎的运行时完全兼容。这确保了在现有的 OVOS 生态以及诸如 Home Assistant 等第三方项目中的轻松部署。
- 自定义音素化器支持:该框架不限于 eSpeak。例如,由 Proxecto Nós 使用 Cotovia 音素化器开发的高质量加利西亚语模型完全兼容,可与 phoonnx 流水线一起使用。
这种灵活性让我们能够集成并受益于其他开源项目的工作。事实上,在推理方面,phoonnx 能够成功使用最初由其他项目训练的模型,包括 Coqui、Mimic3 和 Piper。
展望:基于 ByT5 的 G2P 模型
展望未来,我们持续致力于提升 G2P 的准确性,尤其是针对低资源语言。我们目前正在开发和测试基于强大的 ByT5 架构的新一代 G2P 模型。这些基于 transformer 的模型有望在更广泛的语言范围内提供更准确、更强健的音素化。
你可以在这里关注它们的开发进展:G2P 模型合集。
在不久的将来,我们会为 phoonnx 创建一个专用的 OVOS TTS 插件,并将其设为 OpenVoiceOS 的默认插件,取代先前的插件:ovos-tts-plugin-piper 和 ovos-tts-plugin-nos。
在此期间,你可以通过现有的 ovos-tts-plugin-piper 插件试用这些新语音。
你只需在 mycroft.conf 下传入模型 URL 即可
"tts": {
"module": "ovos-tts-plugin-piper",
"ovos-tts-plugin-piper": {
"model": "https://huggingface.co/OpenVoiceOS/phoonnx_eu-ES_miro_espeak/resolve/main/miro_eu-ES.onnx",
"model_config": "https://huggingface.co/OpenVoiceOS/phoonnx_eu-ES_miro_espeak/resolve/main/miro_eu-ES.piper.json"
}
}
进度报告:可用语言
OpenVoiceOS 和 TigreGotico 团队的共同努力,造就了一个快速扩张的开源 TTS 模型库。
当前支持的语言:
- 阿拉伯语
- 巴斯克语
- 荷兰语
- 英语(美国/英国)
- 法语
- 德语
- 意大利语
- 葡萄牙语(巴西/葡萄牙)
- 西班牙语
参与进来并找到这些模型
我们邀请社区探索并利用这些新资源。
| 资源 | 描述 | 链接 |
|---|---|---|
| Phoonnx Models | 全新的、由 phoonnx 训练的 ONNX 格式 TTS 模型。 | phoonnx-tts-models |
| Piper/Phoonnx Voices | 与 Piper 兼容的 OpenVoiceOS 语音完整合集。 | pipertts-voices |
| Open Datasets | 用于训练这些语音的数据集,进一步推进开放数据研究。 | tts-datasets |
在 Hugging Face 上探索完整的模型和数据集目录:TigreGotico · OpenVoiceOS。若要贡献数据,请在 phoonnx 上提交 issue 或发起讨论。