3

我在我的游戏中使用pyttsx,但我遇到了一个问题 - 方法runAndWait()导致它在短时间内停止以说出排队的文本。这是个问题,因为它打乱了我的计时。是否可以说一段文字但不停止所有其他活动?或者,python/pygame 中是否还有其他文本到语音转换器?

def say(text):
   voices = engine.getProperty('voices')
   engine.setProperty('voice', voices[1].id)
   engine.setProperty('rate', 250)
   engine.say(text)
   engine.runAndWait()
4

1 回答 1

-2

你总是可以使用espeak。Espeak 没有 pyttsx 那样清晰的声音,但它应该可以工作。Espeak 随 pyttsx 一起安装,要对其进行测试,请转到您的终端并输入:

espeak "Hello!"

这应该让计算机说“你好!”。如果您收到有关 espeak 不是找到的命令这一事实的错误,请输入以下命令进行安装:

sudo apt-get install espeak

要使用 python 访问它,这里是使用 os 模块的代码:

import os
text = "Hi!"
os.system("espeak " + text)
于 2019-02-17T06:20:32.683 回答