You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google Text-to-Speech中break标签后内容无法朗读问题咨询

问题原因

问题来自以下两种可能,你可以逐一排查:

  1. SSML转义错误:你给出的示例代码里break标签的引号是HTML转义后的",如果你实际传入合成函数的SSML字符串没有把转义符还原为正常的双引号",会导致break标签属性不合法,解析器会直接丢弃标签后的所有内容。你可以先打印实际传入synthesize_text的ssml_text参数值确认引号格式。
  2. 旧语音模型限制:如果确认SSML格式没有问题,那就是你使用的非Neural2/Wavenet系列的旧标准合成语音的已知bug:当<break>标签暂停时长≥2s,且标签后的文本长度过短时,模型会错误截断后续音频。你的第二个长句示例没有触发问题,是因为break前后都有足够长的连续文本,不会触发该截断逻辑。

解决方法

  • 先确认传入的SSML字符串格式正确,所有HTML转义符都已经被还原
  • 优先换用Google TTS的Neural2或Wavenet系列对应语言的语音,新模型已经修复了该截断bug
  • 如果必须使用旧语音,可以用以下两种方案规避:
    • 把长停顿拆分为多个短停顿拼接:
      <speak>chaume<break time="1s"/><break time="1s"/><break time="1s"/> cuivré, relatif au cuivre</speak>
      
    • 用空的<prosody>标签包裹break后的短文本,避免模型判定为无效短片段:
      <speak>chaume<break time="3s"/><prosody rate="100%"> cuivré, relatif au cuivre</prosody></speak>
      

内容的提问来源于stack exchange,提问作者JlnK

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 00:45:01