[编辑] PyAudio不工作,程序根本不做任何语音识别。在
我在一个虚拟机上运行Ubuntu,我做了一个简短的脚本。它使用SpeechRecognition 3.5.0来检测用户所说的话。我已经安装了pyaudio,但是当我运行脚本时,我得到了一个很长的错误。我在笔记本电脑上使用内置麦克风。在
import wolframalpha
import os
from gtts import gTTS
import speech_recognition as sr
r = sr.Recognizer()
with sr.Microphone() as source:
audio = r.listen(source)
print("You said " + r.recognize(audio))
app_id = ("H34HDS-SDFJKOEER2")
client = wolframalpha.Client(app_id)
while app_id == "H34HDS-SDFJKOEER2":
input = raw_input("Question: ")
res = client.query(input)
answer = next(res.results).text
tts = gTTS(text=answer, lang='en')
tts.save("hello.mp3")
os.system("mpg321 hello.mp3")
我得到的错误是:
^{pr2}$
我已经在他们的网页上给出了答案。基本上你没有杰克音频服务器运行。作为一个不得不和Linux音频混在一起的人,我可以告诉你这可能是一种痛苦。在
来自https://pypi.python.org/pypi/SpeechRecognition/
在Ubuntu/Debian上,我会遇到诸如“jack server is not running or cannot start”或“cannot lock down[…]字节内存区域(cannot allocate memory)”。
Linux的音频堆栈非常变化无常。有一些问题会导致这些问题。在
首先,确保安装了插孔-要安装它,请运行sudo apt get install multimedia JACK
然后您需要正确配置JACK守护进程,以避免“Cannot allocate memory”错误。运行sudo dpkg reconfigure-p high jackd2并选择“Yes”执行此操作。在
现在,您需要确保当前用户在音频组中。您可以通过运行sudo adduser$(whoami)audio将当前用户添加到此组。在
不幸的是,这些更改需要重新启动才能生效。在
重新启动后,运行pulseaudio kill,然后运行jack\u control start,以修复“jack服务器未运行或无法启动”错误
相关问题 更多 >
编程相关推荐