当前栏目
语音合成工具Coqui TTS安装及体验
先介绍两种免费的语音合成工具
balabolka
官网
http://balabolka.site/balabolka.htm
是一种基于微软Speech API (SAPI)的免费语音合成工具,只是简单的发音合成,效果比较生硬
Coqui TTS
官网
https://coqui.ai/
是基于深度学习的语音合成软件,效果较好
Windows下安装Coqui TTS
安装环境
要求python运行环境:https://www.python.org/downloads/windows/
本文基于版本:python-3.8.10-amd64.exe,并且自行更新并设置好pip安装源
pip安装Coqui TTS
pip install tts
会安装机器学习库torch,以及大量相关组件包,大约1G多
Successfully installed Babel-2.12.1 Jinja2-3.1.2 MarkupSafe-2.1.2 TTS-0.11.1 Wer
kzeug-2.2.3 anyascii-0.3.1 audioread-3.0.0 backports.zoneinfo-0.2.1 certifi-2022
.12.7 cffi-1.15.1 charset-normalizer-3.1.0 click-8.1.3 colorama-0.4.6 coqpit-0.0
.17 cython-0.29.28 dateparser-1.1.7 decorator-5.1.1 docopt-0.6.2 flask-2.2.3 fss
pec-2023.3.0 g2pkk-0.1.2 gruut-2.2.3 gruut-ipa-0.13.0 gruut_lang_de-2.0.0 gruut_
lang_en-2.0.0 idna-3.4 importlib-metadata-6.0.0 importlib_resources-5.12.0 infle
ct-5.6.0 itsdangerous-2.1.2 jamo-0.4.1 jieba-0.42.1 joblib-1.2.0 jsonlines-1.2.0
librosa-0.8.0 llvmlite-0.38.1 mecab-python3-1.0.5 networkx-2.8.8 nltk-3.8.1 num
2words-0.5.12 numba-0.55.1 numpy-1.21.6 pandas-1.5.3 platformdirs-3.1.1 pooch-1.
7.0 protobuf-3.19.6 psutil-5.9.4 pycparser-2.21 pynndescent-0.5.8 pypinyin-0.48.
0 pysbd-0.3.4 python-crfsuite-0.9.9 pytz-2022.7.1 pytz-deprecation-shim-0.1.0.po
st0 pyyaml-6.0 regex-2022.10.31 requests-2.28.2 resampy-0.4.2 scikit-learn-1.2.2
scipy-1.10.1 soundfile-0.12.1 tensorboardX-2.6 threadpoolctl-3.1.0 torch-1.13.1
torchaudio-0.13.1 tqdm-4.65.0 trainer-0.0.20 typing-extensions-4.5.0 tzdata-202
2.7 tzlocal-4.2 umap-learn-0.5.1 unidic-lite-1.0.8 urllib3-1.26.15 zipp-3.15.0
安装完之后就能直接在命令行使用tts工具(要求系统环境变量path中包含Python User安装目录:Python38Scripts)
查看本地所有模型
tts --list_models
执行测试命令
tts --text "Hello world." --out_path aaa.wav
这时会下载模型列表中第一项:https://coqui.gateway.scarf.sh/v0.10.1_models/tts_models–multilingual–multi-dataset–your_tts.zip,然而这个链接我这边从来没有成功下载过
只能手动从github下载
https://github.com/coqui-ai/TTS/releases/tag/v0.10.1_models
下载其中的tts_models–zh-CN–baker–tacotron2-DDC-GST.zip,这是YourTTS的多人训练模型,里边只有英语、法语、西班牙语
下载之后解压缩到
%USERPROFILE%AppDataLocaltts
再次使用命令:–list_models,就能看到第一条模型已经下载,理论上到这里就能正确输出语音了,但是我这边又遇到两个问题
缺少avdevice-58.dll
这是因为缺少ffmpeg运行环境,访问官网:https://ffmpeg.org/download.html,查看可知libavdevice 58要求的版本是4.4.3
从官网引导找到:https://github.com/BtbN/FFmpeg-Builds/releases/tag/autobuild-2023-03-13-12-46
下载其中的:ffmpeg-n4.4.3-3-gb48951bd29-win64-lgpl-shared-4.4.zip
解压缩其中以下几个dll拷贝到Python User安装目录:Python38Scripts,即可
还有一种更简单的方案,如果系统中已经安装微信、QQ,直接复制其安装目录下的avdevice-58.dll到Python38Scripts同样也可以
_MeCab: 找不到指定的模块。
这个就奇了怪了,试过很多方法包括从
https://github.com/ikegami-yukino/mecab/releases/tag/v0.996.2
安装:mecab-64-0.996.2.exe,拷贝libmecab.lib、libmecab.dll,更新vsruntime都无法解决
后来看到一个issue:https://github.com/coqui-ai/TTS/issues/711
得到启发,虽然我用的版本不同,但方法类似,通过查找到python tts目录下使用MeCab的地方
添加注释#,关闭MeCab引用,就能顺利运行tts了
下载中文语音模型
由于tts默认下载连接总是不成功,所以还是手动下载:https://github.com/coqui-ai/TTS/releases/tag/v0.6.1_models
下载其中:tts_models–zh-CN–baker–tacotron2-DDC-GST.zip
同样解压缩到
%USERPROFILE%AppDataLocaltts
合成中文语音
进过一番折腾,终于能够顺利合成中文语音,命令中需要指定中文模型
tts --text "知是行之始,行是知之成。" --out_path aaa.wav --model_name tts_models/zh-CN/baker/tacotron2-DDC-GST
在python中使用中文语音合成
from TTS.api import TTS
tts=TTS("tts_models/zh-CN/baker/tacotron2-DDC-GST")
tts.tts_to_file(text="知是行之始,行是知之成。", file_path="aaa.wav")
参考
https://github.com/coqui-ai/TTS
https://tts.readthedocs.io/en/latest/index.html
https://github.com/Edresson/YourTTS
https://github.com/SamuraiT/mecab-python3/issues/46
https://blog.csdn.net/Haulyn5/article/details/126770543
https://blog.csdn.net/ZYXpaidaxing/article/details/81913708
https://blog.csdn.net/weixin_43816759/article/details/119277486
相关文章
- 前端和后端哪个工资高?学哪个简单?
- 推荐 7 个 Vue2、Vue3 源码解密分析的开源项目
- 这9个程序员工具网站,太牛了吧
- 酝酿两年,Fedora 终于公布了最新 Logo
- 太强了!Apache 开源超级项目Pulsar
- 成为一个前端工程师应该从哪里起步?
- 你还只会找度娘?推荐7个爆好用导航网站
- WebRTC 成为 W3C 和 IETF 正式标准
- 为什么要学习HTML?HTML会过时吗?
- 有程序员专门的刷题网站吗?
- 6个年轻人必备的资源网站,送给正在变得更优秀的你
- 11 个超火的前端必备在线工具,终于有时间上班摸鱼了
- 保存这6个办公网站,让你提高办公效率,彻底告别加班
- 为什么招聘高级前端开发这么难?
- 这6个黑科技网站,看到一次收藏一次
- 计算机专业女生该选择后端、前端,还是测试岗位
- JavaScript 奇怪又实用的姿势又增加了六个
- [译] APT分析报告:05.Turla新型水坑攻击后门(NetFlash和PyFlash)
- Gatsby中怎么在组件中使用css?
- 云开发CloudBase即将亮相GMTC全球大前端技术峰会