2noise / ChatTTS

A generative speech model for daily dialogue.
https://2noise.com
GNU Affero General Public License v3.0
32.1k stars 3.49k forks source link

ChatTTS除了有音频的输出,如何拿到生成字符和对应时间段的 word boundary信息? #661

Open zddllc opened 3 months ago

zddllc commented 3 months ago

你好,从例子里我可以很直接的拿到给定文本合成后的音频文件,但是我们的项目还需要进一步的信息:就是对于每个合成的元素在音频文件里发音的时间段。我们也会用这个信息来验证合成的内容是否和输入的内容一致。

这个信息在合成的时候肯定是存在的,不知道ChatTTS有没有wrap过并对外提供输出接口。谢谢。

fumiama commented 3 months ago

这个信息在合成的时候肯定是存在的

理论上存在,实际上基本无法使用。

对于此问题,您可以考虑比对refined_text或将生成的音频TTS后比对其文本。

zddllc commented 3 months ago

这个信息在合成的时候肯定是存在的

理论上存在,实际上基本无法使用。

对于此问题,您可以考虑比对refined_text或将生成的音频TTS后比对其文本。

这个不太明白了,我在用Azure TTS的时候,这个信息是可以被返回回来的。 即便现在的合成的单位是词表里的那些Token,也应该可以拿到Token level的信息? 至少NLP任务在decode的时候,每个Token的信息总是有的。 当然了,我不是搞speech的,有些细节不太明白。 但是没有这boundary的信息,对我们后续处理确实不太友好。