gpt4 book ai didi

python - 如何使用文本转语音(pyTTS 或 SAPI5)延长单词之间的停顿

转载 作者:太空狗 更新时间:2023-10-30 03:07:34 24 4
gpt4 key购买 nike

在使用 SAPI5 进行文本转语音时是否可以扩大口语之间的差距?

问题是esp。有些语音,单词几乎是连在一起的,这使得演讲更难理解。

我正在使用 python 和 pyTTS 模块(在 Windows 上,因为它使用的是 SAPI)

我试图 Hook 到 OnWord 事件并添加一个 time.sleep() 或 tts.Pause(),但显然即使捕获了所有事件,它们也只在语音文本结束时被处理,无论是我正在使用同步或异步标志。

在这个 NON WORKING 示例中,sleep() 方法仅在说完句子后执行:

tts = pyTTS.Create()
def f(x):
tts.Pause()
sleep(0.5)
tts.Resume()

tts.OnWord = f
tts.Speak(text)

编辑:-- 接受的解决方案

我的实际答案是

  • 在自己的“说”命令中说出每个单词(@Lennart Regebro 建议),或者
  • 用逗号替换每个空格,(如@Dawson 所述),例如

    text = text.replace("", ",")

设置一个合理的暂停。我没有比上面提到的更多地研究暂停方法,因为我对公认的解决方案很满意。

最佳答案

你说的是语音速率,对吗? http://msdn.microsoft.com/en-us/library/ms990078.aspx

我相信,Pause() 的工作原理很像普通语音模式中的逗号...除非您确定长度(自然或非自然)。

关于python - 如何使用文本转语音(pyTTS 或 SAPI5)延长单词之间的停顿,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4172541/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com