我目前正在开发一个智能助手程序(基本上是刚听用户说的话,并基于该做一些事的代码)。直到今天,当我切换到笔记本电脑时,它的工作情况都还不错。该程序不会打印出任何错误,但它也不会打印出我说的话。我正在使用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)
答案 0 :(得分:0)
我发现问题出在笔记本电脑的麦克风上。插入“蓝色雪球”后,语音识别效果很好。我进入pavucontrol
并在 recording 标签下选择Blue Snowball,迫使程序使用Blue Snowball。
答案 1 :(得分:0)
另一个原因可能是您的麦克风电平过高或过低, 在这两种情况下,speech_recognition 都会得到太少的音频或太多的音频。看看你的系统设置。对我有帮助,希望对你有帮助。
答案 2 :(得分:-2)
将语音识别导入为 sr
全局 x
定义语音():
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':
打印('听并打印enter code here
我听到的:\n')
演讲()
打印(x)enter code here