我正在尝试使用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/