正如我所说,我正在用Python开发一个虚拟助手,但语音识别不听我的指令,也无法打印出我说的话。以下是代码:
import speech_recognition as srdef get_audio(): print("listening...") r = sr.Recognizer() with sr.Microphone() as source: audio = r.listen(source) said = "" try: said = r.recognize_google(audio) print(said) except Exception as e: print("Exception: " + str(e)) return saidget_audio()
我运行并调试了代码,Python只显示“listening…”,我尽可能大声地对着麦克风说话,但还是不工作。任务栏显示Python正在使用麦克风,但仍然无效,我使用的是VSCode。
请大家帮帮我。
回答:
显然,根据你的描述,你的代码一直在监听,我认为这就是问题所在。现在我将提供一个更新后的代码如下:
import speech_recognition as srdef get_audio(): print("listening...") r = sr.Recognizer() with sr.Microphone() as source: r.adjust_for_ambient_noise(source, duration = 1) audio = r.listen(source) said = "" try: said = r.recognize_google(audio) print(said) except Exception as e: print("Exception: " + str(e)) return saidget_audio()
我添加了r.adjust_for_ambient_noise(source, duration = 1)
,它的作用是根据背景噪音调整阈值,然后监听你所说的话。
这应该可以正常工作了!