我遇到了一个代码问题,导致内存错误。我认为是以下这个函数引起的(请参见下文)。
谢谢您的回复,我收到的错误是:
def sendAudio(): p = pyaudio.PyAudio() stream = p.open(format = FORMAT, channels = CHANNELS, rate = RATE, input = True, output = True, frames_per_buffer = chunk)该函数的作用是从麦克风读取数据,然后将该数据发送到网络上。但是,由于每次按键并且有任何数据时都会发送它(这可能是白噪声等),是否有办法使其更少出现故障?我不确定使用按键是否是解决此情况的正确方法。
data = stream.read(chunk) client(chr(CMD_AUDIO), encrypt_my_audio_message(data))
def keypress(event): if event.keysym == 'Escape': root.destroy() if event.keysym == 'Control_L': #print("Sending Data...") sendAudio() #print("Data Sent!")
谢谢您的回复,我收到的错误是:
Exception in thread Thread-1: Traceback (most recent call last): File "C:\Python27\lib\threading.py", line 552, in __bootstrap_inner self.run() File "C:\Python27\lib\threading.py", line 505, in run self.__target(*self.__args, **self.__kwargs) File "chat.py", line 62, in server frames_per_buffer = chunk) File "C:\Python27\lib\site-packages\pyaudio.py", line 714, in open stream = Stream(self, *args, **kwargs) File "C:\Python27\lib\site-packages\pyaudio.py", line 396, in __init__ self._stream = pa.open(**arguments) IOError: [Errno Insufficient memory] -9992
stream.read
调用中减小块大小会有所帮助。 - ars