v3ucn / GPT-SoVits-Read-Aloud

基于Read-aloud项目增加GPT-SoVits接口,Chrome扩展,大声朗读
17 stars 0 forks source link

当读到非空文本,但是gpt_sovits返回空音频,read_aloud会自动结束。 #1

Open jmaple12 opened 5 months ago

jmaple12 commented 5 months ago

比如用cut3作为分割方式读取单独一个“。”的时候,gpt_sovit会返回一个空音频(gpt_sovits没有错误),但是read_aloud会自动结束。希望read_aloud提取文本的时候,每读一段能检测文本是否已经结束,如果结束再停止,而不是返回空音频停止。

我用cut3 读到 捕捉2 时,cmd后来会出现这种情况: 捕获 read_aloud会直接停止: 3。 我使用http://127.0.0.1:9880/tts?text=。&text_lang=zh&ref_audio_path.....直接运行的时候cmd后台得到一样的结果,但是能在网页上成功输出一个空音频,所以应该不是gpt_sovits的错误,应该是read_aloud的问题。

jmaple12 commented 5 months ago

当 实际输入的目标文本(切句后)为【】时,gpt_sovits 似乎是故意设置为输出空音频,而不是为切句后的目标文本添加一个没有声音的标点符号如【“。”】,因为此时容易出现复读promot_text。

jmaple12 commented 5 months ago

更新!我是调用了gpt_sovits 中的fast_inference分支。不使用流式传输发现chrome可以继续读下去,使用流式传输就停止了,我看原因应该是gpt_sovits中的tts.py大约733行左右,item为空时直接跳出循环了