这是一个模块化的文本到语音框架,旨在支持快速的研究和产品发展。主要功能包括
欢迎捐款。
在这里查看演示
git clone https://github.com/ranchlai/mandarin-tts.git
cd mandarin-tts
git submodule update --force --recursive --init --remote
pip install -e . f
这里提供了两个例子:Biaobei和Aishell3。
要训练自己的型号,请首先从现有示例中制作副本,然后使用wav2mel.py准备MelspectRogragron功能
cd examples
python wav2mel.py -c ./aishell3/config.yaml -w < aishell3_wav_folder > -m < mel_folder > -d cpu准备培训所需的SCP文件,
cd examples/aishell3
python prepare.py --wav_folder < aishell3_wav_folder > --mel_folder < mel_folder > --dst_folder ./train/这将生成config.yaml所需的SCP文件(在数据集/火车部分中)。您还需要检查配置文件中的所有内容是否正常。通常,您不需要更改代码。
现在您可以开始培训
cd examples/aishell3
python ../../mtts/train.py -c config.yaml -d cuda对于Biaobei数据集,工作流程相同,除了没有扬声器嵌入,但您可以添加韵律嵌入。
将添加更多示例。请留下。
当前提供了两个示例,并总结了相应的检查点/配置,如下所示。
| 数据集 | 检查点 | config |
|---|---|---|
| aishell3 | 关联 | 关联 |
| Biaobei | 关联 | 关联 |
Vocoder的作用是将Melspectrograms转换为波形。它们被添加为子模型,并将接受该项目的培训。因此,您应该在合成之前下载检查站。在培训中,不是必需的,因为您可以从生成的Melspectrogram和损失曲线中监视训练过程。当前我们支持以下声音编码器,
| Vocoder | 检查点 | github |
|---|---|---|
| 浪潮 | 关联 | 关联 |
| hifi-gan | 关联 | 关联 |
| vocgan | 链接链接 | 关联 |
| 梅尔根 | 关联 | 关联 |
运行git submodule update --force --recursive --init --remote 。但是,您必须手动下载检查点并正确设置config.yaml文件中的路径。
input.txt应与您在配置文件中的eng_type_n的设置设置为emb_type1,即,同一类型,相同的订单。
为了促进Hanzi到Pinyin的转录,您可以尝试:
cd examples/aishell3/
python ../../mtts/text/gp2py.py -t "为适应新的网络传播方式和读者阅读习惯"
>> sil wei4 shi4 ying4 xin1 de5 wang3 luo4 chuan2 bo1 fang1 shi4 he2 du2 zhe3 yue4 du2 xi2 guan4 sil|sil 为 适 应 新 的 网 络 传 播 方 式 和 读 者 阅 读 习 惯 sil
不是您可以将文本复制到input.txt,并记住放下由'|'隔开的自定义名称和扬声器ID。
有了上述检查点和文本准备就绪,您最终可以运行综合过程,
python ../../mtts/synthesize.py -d cuda --c config.yaml --checkpoint ./checkpoints/checkpoint_1240000.pth.tar -i input.txt请检查Vocoder设置的Config.yaml文件。
如果幸运的话,可以在输出文件夹中找到音频示例。