Coqui TTS 项目介绍
Coqui 文本转语音(Text-to-Speech,TTS)是新一代基于深度学习的低资源零样本文本转语音模型,具有合成多种语言语音的能力。该模型能够利用共同学习技术,从各语言的训练资料集转换知识,来有效降低需要的训练资料量。
这个模型库现在已经在GitHub上开源,并有高达 20.5K+
的star量。似乎和以前讲过的Mozilla 的 TTS 有着千丝万缕的联系,但是如今Mozilla TTS 已经停止更新,而 Coqui TTS 更新稳定,是目前少数几个更新比较稳定的开源语音库。
coqui官网:https://coqui.ai/
开源地址:https://github.com/coqui-ai/TTS/
Arm架构离线安装 coqui TTS
要在 ARM 架构的设备上离线安装 Coqui TTS,可以按照以下步骤进行操作:
1.安装必要的依赖项:Python 3
、Pip
和 Git
.
2.克隆CoquiTTS 的Git 仓库.
git clone https://github.com/ coqui-ai/Trs.git
3.安装所需的Python包.
pip install -r requirements .txt
4.下载所需的语音模型和配置文件,并将其放在IIS/tts/mode1s 目录下.可以从 CoquiTTS 的GitHub 页面上下载这些文件.
5.运行测试脚本来验证安装是否成功.
python demo cli .py
注意,由于 ARM 架构的设备通常性能较低,因此可能需要更长时间才能完成编译和训练等操作。此外,如果您希望在 ARM 架构的设备 上进行 TTS 实时推理,则可能需要使用较小的模型或调整一些模型参数以提高性能。
python 命令行安装及使用
1.安装
pip install tts
注意 TTS 是依赖 torch 的,由于 torch 庞大的体积,所以可能是要等很久。但是我这里由于环境问题,只能用特定版本的 torch,否则用不了 GPU。
2.安装完成后测试
tts --list_models
输出模型的信息,说明OK
Name format: type/language/dataset/model 1: tts_models/multilingual/multi-dataset/your_tts 2: tts_models/en/ek1/tacotron2 ....
查看模型信息
tts --model_info_by_name tts_models/tr/common-voice/glow-tts > model type : tts_models > language supported : tr > dataset used : common-voice > model name : glow-tts > description : Turkish GlowTTS model using an unknown speaker from the Common-Voice dataset. > default_vocoder : vocoder_models/tr/common-voice/hifigan
文本生成语音
tts --text "text for TTS" --out_path ./test_speech.wav 100%|████████████████████████████ █████████████████████████████████ █████████████████████████████████ █████████████████████████████████ ████████████████████| 113M/113M [ 05:58<00:00, 315kiB/s] > Model's license - apache 2.0 > Check https://choosealicense.c om/licenses/apache-2.0/ for more info. > Downloading model to /root/.lo cal/share/tts/vocoder_models--en- -ljspeech--hifigan_v2 100%|█| 3.80M/3.80M [00:01<00:00, > Model's license - apache 2.0 ...... Removing weight norm... > Text: text for TTS > Text splitted to sentences. ['text for TTS'] > Processing time: 0.78575992584 22852 > Real-time factor: 0.4602105388 021246 > Saving output to ./test_speech .wav
离线安装TTS
以下是在Linux系统上离线安装CoquiTTS的步骤:
1.下载CoquiTTS的代码.
git clone https://github.com/coqui-ai/TTS
2.安装依赖项.
sudo apt-get install python3-pip libsndfile1 pip3 install -r requirements.txt
3.下载所需的模型,例如英文的Tacotron2模型.
wget https://github.com/coqui-ai/TTS/releases/download/tts_models/tts_models_tacotron2_anon.tar.bz2 tar xvf tts_models_tacotron2_anon.tar.bz2
4.设置环境变量.
export PYTHONPATH=$PYTHONPATH: /path/to/TTS
5.启动TTS服务器.
python3 server.py --model_path /path/to/tacotron2 --config_path /path/to/tacotron2/config.json --port 8000
其中/path/to/tacotron2 为第3步中下载的Tacotron2模型的路径,/path/to/tacotron2/config. json 为Tacotron2模型的配置文件的路径。
6.连接到TTS服务器并进行语音合成.
import requests import ison r = requests.post('http://localhost:8000/api/tts', data=json.dumps( {"text": "hello", "model_name": "ntacotron2"} )) with open ("output .wav", "wb") as f: f.write(r.content)
这将生成一个名为 output .wav 的WAV文件,其中包含语音合成的结果。