99## 这是一个用于TTS算法学习的项目,如果您在寻找直接用于生产的TTS,本项目可能不适合您!
1010https://user-images.githubusercontent.com/16432329/220678182-4775dec8-9229-4578-870f-2eebc3a5d660.mp4
1111
12-
13- Based on BERT, NaturalSpeech, VITS
12+ > 天空呈现的透心的蓝,像极了当年。总在这样的时候,透过窗棂,心,在天空里无尽的游弋!柔柔的,浓浓的,痴痴的风,牵引起心底灵动的思潮;情愫悠悠,思情绵绵,风里默坐,红尘中的浅醉,诗词中的优柔,任那自在飞花轻似梦的情怀,裁一束霓衣,织就清浅淡薄的安寂。
13+ >
14+ > 风的影子翻阅过淡蓝色的信笺,柔和的文字浅浅地漫过我安静的眸,一如几朵悠闲的云儿,忽而氤氲成汽,忽而修饰成花,铅华洗尽后的透彻和靓丽,爽爽朗朗,轻轻盈盈
15+ >
16+ > 时光仿佛有穿越到了从前,在你诗情画意的眼波中,在你舒适浪漫的暇思里,我如风中的思绪徜徉广阔天际,仿佛一片沾染了快乐的羽毛,在云环影绕颤动里浸润着风的呼吸,风的诗韵,那清新的耳语,那婉约的甜蜜,那恬淡的温馨,将一腔情澜染得愈发的缠绵。
1417
1518### Features,特性
16- 1, Hidden prosody embedding from BERT,get natural pauses in grammar
19+ 1, Hidden prosody embedding from ** BERT** ,get natural pauses in grammar
1720
18- 2, Infer loss from NaturalSpeech,get less sound error
21+ 2, Infer loss from ** NaturalSpeech** ,get less sound error
1922
20- 3, Framework of VITS,get high audio quality
23+ 3, Framework of ** VITS** ,get high audio quality
2124
2225:heartpulse : ** Tip** : It is recommended to use ** Infer Loss** fine-tune model after base model trained, and freeze ** PosteriorEncoder** during fine-tuning.
2326
@@ -87,7 +90,9 @@ python train.py -c configs/bert_vits.json -m bert_vits
8790 jia2 yu3 cun1 yan2 bie2 zai4 yong1 bao4 wo3
8891```
8992
90- 需要标注为,BERT需要汉字 ` 卡尔普陪外孙玩滑梯。 ` (包括标点),TTS需要声韵母 ` sil k a2 ^ er2 p u3 p ei2 ^ uai4 s uen1 ^ uan2 h ua2 t i1 sp sil `
93+ 标注规整后:
94+ - BERT需要汉字 ` 卡尔普陪外孙玩滑梯。 ` (包括标点)
95+ - TTS需要声韵母 ` sil k a2 ^ er2 p u3 p ei2 ^ uai4 s uen1 ^ uan2 h ua2 t i1 sp sil `
9196``` c
9297000001 卡尔普陪外孙玩滑梯。
9398 ka2 er2 pu3 pei2 wai4 sun1 wan2 hua2 ti1
@@ -127,7 +132,7 @@ python vits_infer_no_bert.py --config ./configs/bert_vits.json --model vits_bert
127132
128133低资源设备通常会分句合成,这样牺牲的自然停顿也没那么明显
129134
130- ### ONNX导出与推理
135+ ### ONNX非流式
131136导出:会有许多警告,直接忽略
132137```
133138python model_onnx.py --config configs/bert_vits.json --model vits_bert_model.pth
@@ -137,16 +142,31 @@ python model_onnx.py --config configs/bert_vits.json --model vits_bert_model.pth
137142python vits_infer_onnx.py --model vits-chinese.onnx
138143```
139144
140- ### ONNX流式模型导出
145+ ### ONNX流式
146+
147+ 具体实现,将VITS拆解为两个模型,取名为Encoder和Decoder。
148+
149+ - Encoder包括TextEncoder与DurationPredictor等;
150+
151+ - Decoder包括ResidualCouplingBlock与Generator等;
152+
153+ 并且将推理逻辑也进行了切分;特别的,先验分布的采样过程放在了Encoder中:
154+ ```
155+ z_p = m_p + torch.randn_like(m_p) * torch.exp(logs_p) * noise_scale
156+ ```
157+
158+ ONNX流式模型导出
141159```
142160python model_onnx_stream.py --config configs/bert_vits.json --model vits_bert_model.pth
143161```
144162
145- ### ONNX流式模型推理
163+ ONNX流式模型推理
146164```
147165python vits_infer_onnx_stream.py --encoder vits-chinese-encoder.onnx --decoder vits-chinese-decoder.onnx
148166```
149167
168+ 在流式推理中,** hop_frame** 是一个重要参数,需要去尝试出合适的值
169+
150170### Model compression based on knowledge distillation,应该叫迁移学习还是知识蒸馏呢?
151171Student model has 53M size and 3× speed of teacher model.
152172
@@ -162,13 +182,6 @@ To infer, get [studet model](https://github.com/PlayVoice/vits_chinese/releases/
162182python vits_infer.py --config ./configs/bert_vits_student.json --model vits_bert_student.pth
163183```
164184
165- ### 演示视频的文本
166- > 天空呈现的透心的蓝,像极了当年。总在这样的时候,透过窗棂,心,在天空里无尽的游弋!柔柔的,浓浓的,痴痴的风,牵引起心底灵动的思潮;情愫悠悠,思情绵绵,风里默坐,红尘中的浅醉,诗词中的优柔,任那自在飞花轻似梦的情怀,裁一束霓衣,织就清浅淡薄的安寂。
167- >
168- > 风的影子翻阅过淡蓝色的信笺,柔和的文字浅浅地漫过我安静的眸,一如几朵悠闲的云儿,忽而氤氲成汽,忽而修饰成花,铅华洗尽后的透彻和靓丽,爽爽朗朗,轻轻盈盈
169- >
170- > 时光仿佛有穿越到了从前,在你诗情画意的眼波中,在你舒适浪漫的暇思里,我如风中的思绪徜徉广阔天际,仿佛一片沾染了快乐的羽毛,在云环影绕颤动里浸润着风的呼吸,风的诗韵,那清新的耳语,那婉约的甜蜜,那恬淡的温馨,将一腔情澜染得愈发的缠绵。
171-
172185### 多发音人与克隆,基于AISHELL3的预训练模型
173186
174187需要到 https://huggingface.co/jackyqs/vits-aishell3-175-chinese/tree/main 下载模型
@@ -188,4 +201,4 @@ https://github.com/jaywalnut310/vits
188201
189202https://github.com/wenet-e2e/wetts
190203
191- https://github.com/csukuangfj ** onnx and clone **
204+ https://github.com/csukuangfj ** onnx and android **
0 commit comments