Python 语音识别:recognize_google 麦克风出现 UnknownValueError
Python speech recognition: recognize_google with UnknownValueError for Microphone
我的问题是关于使用 Python 的语音识别。我的代码应该听我对着麦克风说的话(有 5 秒的时间说出我的信息),然后打印出它理解的任何内容。
import speech_recognition as sr
r = sr.Recognizer()
mic = sr.Microphone()
with mic as audio:
print("Speak Please")
r.adjust_for_ambient_noise(audio)
audio = r.record(audio, duration=5)
print("Converting Speech to Text...")
print("You said: " + r.recognize_google(audio))
但我总是收到错误信息:
File "/opt/anaconda3/lib/python3.8/site-packages/speech_recognition/__init__.py", line 780, in recognize_google
if not isinstance(actual_result, dict) or len(actual_result.get("alternative", [])) == 0: raise UnknownValueError()
speech_recognition.UnknownValueError
我尝试使用我在网上找到的音频文件,r.recognize_google 效果很好。但是一旦我使用我的麦克风,我总是会出错。
我也尝试在“记录”和“收听”之间切换,但没有成功。
有没有人遇到过类似的问题,知道哪里出了问题?
编辑:
使用像这样的 except 块:
try:
print("You said: {}".format(r.recognize_google(audio,language='en-USA')))
except:
print("Couldn't hear you")
也没用,每次都是抛出异常
感谢任何帮助。
非常感谢!
所以我设法解决了这个问题。显然这是 Visual Studio 代码的问题。我不得不 运行 来自终端的代码,现在它工作正常。我不确定为什么会这样,但我很高兴它现在可以正常工作了。
我的问题是关于使用 Python 的语音识别。我的代码应该听我对着麦克风说的话(有 5 秒的时间说出我的信息),然后打印出它理解的任何内容。
import speech_recognition as sr
r = sr.Recognizer()
mic = sr.Microphone()
with mic as audio:
print("Speak Please")
r.adjust_for_ambient_noise(audio)
audio = r.record(audio, duration=5)
print("Converting Speech to Text...")
print("You said: " + r.recognize_google(audio))
但我总是收到错误信息:
File "/opt/anaconda3/lib/python3.8/site-packages/speech_recognition/__init__.py", line 780, in recognize_google
if not isinstance(actual_result, dict) or len(actual_result.get("alternative", [])) == 0: raise UnknownValueError()
speech_recognition.UnknownValueError
我尝试使用我在网上找到的音频文件,r.recognize_google 效果很好。但是一旦我使用我的麦克风,我总是会出错。 我也尝试在“记录”和“收听”之间切换,但没有成功。 有没有人遇到过类似的问题,知道哪里出了问题?
编辑: 使用像这样的 except 块:
try:
print("You said: {}".format(r.recognize_google(audio,language='en-USA')))
except:
print("Couldn't hear you")
也没用,每次都是抛出异常
感谢任何帮助。
非常感谢!
所以我设法解决了这个问题。显然这是 Visual Studio 代码的问题。我不得不 运行 来自终端的代码,现在它工作正常。我不确定为什么会这样,但我很高兴它现在可以正常工作了。