sherpa-onnx
sherpa-onnx copied to clipboard
请问当前TTS模型如何实现流式输出功能?
Thanks for your great job!
我现在的安卓设备通过离线接口调用LLM的API,问答输出内容是流式stream的。
为了用户体验希望将回答结果以流式方式TTS播放出来,请问https://github.com/k2-fsa/sherpa-onnx/tree/master/android/SherpaOnnxTtsEngine 支持流式播放TTS结果吗?
效果类似于端到端语音大模型,我输入语音,大模型同步播放回答内容的音频。
目前 sherpa-onnx 的 Android TTS 引擎(SherpaOnnxTtsEngine)和相关 API 仅支持离线、整句(非流式)文本转语音合成和播放,即需要完整文本后一次性生成音频,并不支持边接收文本边增量生成和播放音频的流式 TTS 功能。官方文档和示例代码均为非流式用法,例如 Java 示例为 NonStreamingTtsKittenEn,C/Python API 也是整段文本一次性合成音频 参考。
如果需要实现类似流式 TTS 的体验,可以考虑将 LLM 的输出按句子或短语分段,收到一段就立即调用 TTS 合成并播放,模拟“流式”效果。这样虽然不是模型原生支持的流式,但可以提升响应速度和用户体验。
相关 Android TTS 引擎的文档和源码可参考 这里 和 源码地址。
如需原生流式 TTS 支持,建议关注项目后续更新。
To reply, just mention @dosu.
How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other
我们有现成的apk,也有现成的b站视频,你是否愿意花点时间去看下呢?