我正在使用Speech_recognition模块。我能够通过使用我的麦克风或wav文件(以sr.record或sr.listen之类的传统方式)获得正确的结果。但是现在我想通过使用字符串获取结果是由stream.read(chunk)方法返回的。我知道r.recognize_google()需要sr.AudioData对象。
Node
我原本希望“你好,你好”,但出现以下错误:
import pyaudio
import speech_recognition as sr
import ctypes
r=sr.Recognizer()
p=pyaudio.PyAudio()
stream=p.open(format=pyaudio.paInt16,channels=2,rate=44100,frames_per_buffer=1024,input=True)
data=[]
while True:
data.append(stream.read(1024))
if ctypes.windll.user32.GetAsyncKeyState(27)==-32767: #break the loop when press esc
break
audio=sr.AudioData(frame_data=b''.join(data),sample_rate=44100,sample_width=2)
r.recognize_google(audio)