【发布时间】:2019-02-02 10:33:57
【问题描述】:
我目前正在开发一个智能助手程序(基本上它只是听用户说什么,并在此基础上对代码做一些事情)。直到今天,当我切换到笔记本电脑时,它都可以正常工作。该程序不会打印出任何错误,但也不会打印出我所说的内容。我正在使用 Python Speech Recognition 库版本 3.8.1。有人知道这个图书馆的替代品吗?如果是,请尝试解释我将如何“即时”使用它(无需先录制文件然后将其发送到服务器,更像是实时语音)。
编辑:我忘了在帖子中说,我使用的是 Python 3。
编辑:这是代码:
#!/usr/bin/env python3
import speech_recognition as sr
global x
def speech():
try:
with sr.Microphone() as source:
global x
r = sr.Recognizer()
audio = r.listen(source)
x = r.recognize_google(audio)
except sr.UnknownValueError:
print("No clue what you said, listening again... \n")
speech()
if __name__ == '__main__':
print('Listening and printing what I heard: \n')
speech()
print(x)
【问题讨论】:
-
你说你改用笔记本电脑了?与其他运行速度很快的机器相比,它有可能成为遗物吗?你确定你的音频输入在这台笔记本电脑上工作并且 Python 可以访问声源吗?
-
嗯,这台机器没什么好吹嘘的,但我认为这不是问题,因为它的工作只是录制和发送音频。我已经大胆地检查了我的麦克风,但我不确定如何检查 Python 是否可以访问。
-
根据您的操作系统,
pavucontrol可以在 recording 选项卡下显示 Python 在录制时使用的设备。这假设您正在运行 PulseAudio 作为声源的主要驱动程序。此外,如果机器比 2000 年新,它应该不是问题。较旧的 CPU 可能很难跟上处理、记录和处理数据的速度。但事实并非如此。 -
顺便说一句,您使用哪个 API 来进行处理?
-
我使用google的speech API进行语音检测,我将代码贴在问题中。
标签: python python-3.x speech-recognition