Disculpas por la pregunta de novato, pero estoy tratando de ejecutar el siguiente código (un ejemplo de la documentación de PyAudio) en mi Mac (OS 10.7.2):Obteniendo IOError: [Entrada de Errno desbordada] -9981 al configurar la entrada y salida de PyAudio Stream a True
import pyaudio
import sys
chunk = 1024
FORMAT = pyaudio.paInt16
CHANNELS = 1
RATE = 44100
RECORD_SECONDS = 5
p = pyaudio.PyAudio()
stream = p.open(format = FORMAT,
channels = CHANNELS,
rate = RATE,
input = True,
output = True,
frames_per_buffer = chunk)
print "* recording"
for i in range(0, 44100/chunk * RECORD_SECONDS):
data = stream.read(chunk)
stream.write(data, chunk)
print "* done"
stream.stop_stream()
stream.close()
p.terminate()
el error que estoy dando es:
Traceback (most recent call last):
File "PyAudioExample.py", line 24, in <module>
data = stream.read(chunk)
File "/Library/Python/2.7/site-packages/pyaudio.py", line 564, in read
return pa.read_stream(self._stream, num_frames)
IOError: [Errno Input overflowed] -9981
hice una búsqueda de este error en Google y encontré que, o bien haciendo que el trozo más grande o más pequeña podría ayudar . Intenté esto y no hizo ninguna diferencia. También he intentado añadir en el código siguiente para capturar una excepción sobrecarga:
try:
data = stream.read(chunk)
except IOError as ex:
if ex[1] != pyaudio.paInputOverflowed:
raise
data = '\x00' * chunk
Eso evita el error, pero en lugar de la salida de audio de la entrada de mi, he oído un montón de ruido de clic.
Para solucionar los problemas, comenté la salida = línea verdadera y el programa funcionó bien, pero no produjo nada. Comenté la entrada = True y leí en un archivo Wave en su lugar y la transmisión fue capaz de reproducir el audio. Traté de crear 2 secuencias, una para entrada y otra para salida, y eso tampoco funcionó.
¿Hay algo más que pueda hacer para evitar este error?
Gracias de antemano.
Ver http://stackoverflow.com/questions/33837097/pyaudio-recorder-script-ioerror-errno-input-overflowed-9981/34021599#34021599 – am70