p0p4k / vits2_pytorch

unofficial vits2-TTS implementation in pytorch
https://arxiv.org/abs/2307.16430
MIT License
465 stars 81 forks source link

good, how this combine to the bert-vits2? #75

Closed foocker closed 4 months ago

foocker commented 6 months ago

it seems bert-vits2 performance better. and i have transformed the bert-vits2 to TensorRTBert-VITS2-Faster (there still need some change in structure of the vits2), but its vits2 is spliting to six sub module. for simplify, i think it is better to merge the six sub moduble to one, as you did. but how to combine your vits2 to the bert-vits2, may be need some check detail. and another issue is the emotion of the vits2 is not good, especial in chinese, but the author of bert-vits2 are trying it.

JohnHerry commented 5 months ago

Bert-VITS2还是有一些些问题的,它的Bert特征会侵染Phoneme表示,使得最终合成发音结果,其实是由音素和中文Bert一起决定的。这样的话,一般TTS服务中SSML标记来修改一些前端拼音错误的方法,在这里就不能支持。 另外由于合成发音对BERT特征的依赖,很多可能不常出现的汉字【这里不常出现是指不常出现在你的训练集里,并不是生产环境不常用到】,合成结果是发音错误的,或者不稳定的,即使拼音【音素】正确也不行。 由于拼音/音素 不能唯一的决定发音,甚至不起到决定作用,所以一些汉字歧音相关问题就一直存在,你可以多测试一些单个句子多个多音字的一些句子。注意这时如果多音字发音错误,是不能在推理时通过修正其拼音来解决的。 希望这个项目可以有一些改进。

foocker commented 4 months ago

Bert-VITS2还是有一些些问题的,它的Bert特征会侵染Phoneme表示,使得最终合成发音结果,其实是由音素和中文Bert一起决定的。这样的话,一般TTS服务中SSML标记来修改一些前端拼音错误的方法,在这里就不能支持。 另外由于合成发音对BERT特征的依赖,很多可能不常出现的汉字【这里不常出现是指不常出现在你的训练集里,并不是生产环境不常用到】,合成结果是发音错误的,或者不稳定的,即使拼音【音素】正确也不行。 由于拼音/音素 不能唯一的决定发音,甚至不起到决定作用,所以一些汉字歧音相关问题就一直存在,你可以多测试一些单个句子多个多音字的一些句子。注意这时如果多音字发音错误,是不能在推理时通过修正其拼音来解决的。 希望这个项目可以有一些改进。

感谢,我在模型转为trt后,确实存在一些词发音消失的问题,我以为只是转后的损失(肯定有),然后原始模型在数字上,发音不行。看来合成的路线,目前还没有打通的比较好。