1

我正在尝试将 SpeechRecognition STT 模块用于我正在编码的 AI,并且我也在使用 Pyttsx,但我收到了这个错误。

 File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pyttsx/__init__.py", line 18, in <module>
 from engine import Engine
 ImportError: No module named 'engine'

很多人都试图回答这个问题,因为所有人都有这个问题,但答案没有解释或不起作用!

这是我的代码

import speech_recognition
import pyttsx

speech_engine = pyttsx.init('sapi5') # see     http://pyttsx.readthedocs.org/en/latest/engine.html#pyttsx.init
speech_engine.setProperty('rate', 150)

def speak(text):
    speech_engine.say(text)
    speech_engine.runAndWait()

recognizer = speech_recognition.Recognizer()

def listen():
    with speech_recognition.Microphone() as source:
        recognizer.adjust_for_ambient_noise(source)
        audio = recognizer.listen(source)

    try:
        return recognizer.recognize_sphinx(audio) 
        # or: return recognizer.recognize_google(audio)
    except speech_recognition.UnknownValueError:
        print("Could not understand audio")
    except speech_recognition.RequestError as e:
        print("Recog Error; {0}".format(e))

    return ""



speak("Say something!")
speak("I heard you say " + listen())

如果有人可以解释并解决我的问题,那将很有帮助,谢谢!

4

1 回答 1

1

按照这个链接。它具有与 python 3 兼容的所有更新。 https://github.com/jpercent/pyttsx

于 2017-04-20T07:54:43.740 回答