所以,
我试图在我的RaspBerryPi模型B板上运行PyAudio示例录制程序,
这是我得到的错误,
Traceback (most recent call last): file "/home/pi/pyaudio/test/testing.py",line 23,in <module> data = stream.read(chunk) file "/usr/local/lib/python2.7/dist-packages/pyaudio.py",line 605,in read return pa.read_stream(self._stream,num_frames)IOError: [Errno input overflowed] -9981
有一些解决方案可以解决许多用户的问题,在我看来,这是不正确的.
这是我试过的,
首先,这是代码,
"""PyAudio example: Record a few seconds of audio and save to a WAVE file."""import pyaudioimport waveCHUNK = 1024FORMAT = pyaudio.paInt16CHANNELS = 1RATE = 44100RECORD_SECONDS = 5WAVE_OUTPUT_filename = "output.wav"p = pyaudio.PyAudio()stream = p.open(format=FORMAT,channels=CHANNELS,rate=RATE,input=True,frames_per_buffer=CHUNK)print("* recording")frames = []for i in range(0,int(RATE / CHUNK * RECORD_SECONDS)): data = stream.read(CHUNK) frames.append(data)print("* done recording")stream.stop_stream()stream.close()p.terminate()wf = wave.open(WAVE_OUTPUT_filename,'wb')wf.setnchannels(CHANNELS)wf.setsampwIDth(p.get_sample_size(FORMAT))wf.setframerate(RATE)wf.writeframes(b''.join(frames))wf.close()
如果支持或不支持当前配置,我也尝试过,
import pyaudiop = pyaudio.PyAudio()if p.is_format_supported(48000.0,input_device=1,input_channels=1,input_format=pyaudio.paInt16): print 'True!'
44,000和44,100都是支持,但我仍然一次又一次地得到同样的错误.
这是我的USB音频卡设备信息,
p.get_device_info_by_index(1){'defaultSampleRate': 44100.0,'defaultLowOutputLatency': 0.011609977324263039,'defaultLowinputLatency': 0.011609977324263039,'maxinputChannels': 1L,'structVersion': 2L,'hostAPI': 0L,'index': 1,'defaultHighOutputLatency': 0.046439909297052155,'maxOutputChannels': 2L,'name': u'Generic USB Audio Device: USB Audio (hw:1,0)','defaultHighinputLatency': 0.046439909297052155}
有没有人知道为什么我仍然会收到错误?
解决方法 您是否尝试将exception_on_overflow设置为False?从Pyaudio文档:read(num_frames,exception_on_overflow=True)
从流中读取样本.使用非阻塞模式时请勿呼叫.
参数:num_frames – 要读取的帧数.exception_on_overflow – 指定是否应在输入缓冲区溢出时抛出(或无提示忽略)IOError异常.默认为True.引发IOError:如果stream不是输入流或者读取 *** 作不成功.返回类型:串
总结以上是内存溢出为你收集整理的python – PyAudio输入溢出-9981 – 没有解决方案正常工作全部内容,希望文章能够帮你解决python – PyAudio输入溢出-9981 – 没有解决方案正常工作所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)