我正在尝试使用 pyvona,但在 speak() 函数中,这种情况一直在发生。这是代码:
def speak(self, text_to_speak):
"""Speak a given text
"""
if not pygame_available:
raise PyvonaException(
"Pygame not installed. Please install to use speech.")
with tempfile.SpooledTemporaryFile() as f:
with self.use_ogg_codec():
self.fetch_voice_fp(text_to_speak, f)
f.seek(0)
if not pygame.mixer.get_init():
pygame.mixer.init()
channel = pygame.mixer.Channel(5)
sound = pygame.mixer.Sound(f)
channel.play(sound)
while channel.get_busy():
pass
错误是
Traceback (most recent call last):
File "/Users/noahchalifour/Desktop/pyvona-0.25/pyvona.py", line 250, in <module>
v.speak('Hello World')
File "/Users/noahchalifour/Desktop/pyvona-0.25/pyvona.py", line 138, in speak
sound = pygame.mixer.Sound(f)
TypeError: Unrecognized argument (type SpooledTemporaryFile)
最佳答案
试试这个
sound = pygame.mixer.Sound(file=f)
或
sound = pygame.mixer.Sound(file=f._file)
如果文件是声音文件,它应该可以工作。
关于python - 我的 pyvona speak() 函数不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35024598/