我正在尝试使用Python中的语音识别和Pyaudio将语音转换为文本。转换预录制的音频文件时一切正常,但当我使用麦克风(外部)录音时,它不监听,反而显示以下信息:
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rearALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfeALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.sideALSA lib pcm_route.c:867:(find_matching_chmap) Found no matching channel mapALSA lib pcm_route.c:867:(find_matching_chmap) Found no matching channel mapALSA lib pcm_route.c:867:(find_matching_chmap) Found no matching channel mapALSA lib pcm_route.c:867:(find_matching_chmap) Found no matching channel map
这是我的代码:
import speech_recognition as srr = sr.Recognizer()mic = sr.Microphone()with mic as source: print('say somthing') audio = r.listen(source) print(r.recognize_google(audio))
回答:
尝试使用以下代码块。在我的系统中,即使是实时输入也能完美运行。
import speech_recognition as srdef myCommand(): r = sr.Recognizer() with sr.Microphone() as source: audio = r.listen(source, phrase_time_limit = 5) try: command = r.recognize_google(audio).lower() print("you said: " + command) except sr.UnknownValueError: print("Sorry, Cant understand, Please say again") command = myCommand() return command