| 这篇教程使用FastSpeech2进行语音合成写得很实用,希望能帮到您。 
 这里介绍下如何通过FastSpeech2项目进行中文的语音合成,由于该仓库把相关demo数据也提交了,因此仓库比较大。此时可以使用sparse-checkout拉取相关的代码,而忽略一些无关紧要的目录。要确保git的版本大于2.25,可以使用
 git version进行查看。接着就开始代码的拉取:
 
git clone --filter=blob:none --depth=1 --no-checkout https://github.com/ming024/FastSpeech2
cd FastSpeech2
git sparse-checkout init --cone
 接着修改.git/info/sparse-checkout中的内容为: 
/*
!/demo/
/preprocessed_data/*/*.json
 最后进行git checkout即可。之后就是对应模型的下载了,可以访问FastSpeech2进行对应模型的下载,密码是9615。或者https://drive.google.com/drive/folders/1DOhZGlTLMbbAAFZmZGDdc77kz1PloS7F
 其中AISHELL-3是中文多人,LJSpeech是英文单人,LibriTTS是英文多人。
 将下载的模型放置在目录
 output/ckpt对应目录下,也不知道为何要搞这么复杂。只能手动创建对应的目录: 
mkdir -p output/ckpt/{AISHELL3,LJSpeech,LibriTTS}
mkdir -p output/result/{AISHELL3,LJSpeech,LibriTTS}
需要注意的是,放置在目录中的文件必须是pth.tar后缀结尾,且需要去掉之前的语料库名称只保留数字即可,比如LJSpeech_900000.zip需要变为900000.pth.tar。一切准备就绪,就可以开始推理了。这里使用GPU进行推理:
 
$ python synthesize.py --text "哈哈,我是个传说的人物" --speaker_id 0 --restore_step 600000 --mode single -p config/AISHE
LL3/preprocess.yaml -m config/AISHELL3/model.yaml -t config/AISHELL3/train.yaml
 最终的效果如下: 
 可以听见机械音还是有点重的。当然也可以参考之前写的另一篇使用原神中人物的语音合成,相对来说效果会更好一些。详情请点击。
 参考文章: 
https://youwu.today/blog/git-sparse-checkout-for-partial-repository-clone/ aishell-3
 MAGICDATA(魔搭开源数据)下载
 |