Closed santiago-rodriguezs closed 4 years ago
Hola santiago, en principio probaría de mirar el contenido de la variable filenamePlay. Al dumpearla, devuelve un solo valor?
Esta pregunta parece estar relacionada. Prueben de agregar "," luego de filenamePlay https://stackoverflow.com/questions/31884175/multiprocessing-typeerror-int-object-is-not-iterable
Tenias razón con lo de la variable. Pude solucionar que levante bien el audio y ahora el error que obtengo es este: OSError: [Errno -9993] Illegal combination of I/O devices
Buenos dias, tengo una consulta con respecto a dicha función. Tengo entendido que para que la grabación y la reproducción ocurran de manera simultanea debería haber dos ramas de procesamiento. Esto lo resolví con el método process de la librería multiprocessing, utilizando pyaudio ya que es una librería de audio que permite este tipo de procesamiento. Sin embargo, hay algo en el código que no esta funcionando y no logro identificarlo. El error obtenido es: TypeError: play() takes 1 positional argument but 13 were given. Supongo que tiene que ver con el método process, ya que la función play por si sola funciona. Adjunto el código, muchas gracias. `import pyaudio import wave from multiprocessing import Process
RECORDING
def record(filenameRecord = "output.wav", seconds = 3, fs = 44100): chunk = 1024 # Record in chunks of 1024 samples
PLAYING
def play(filenamePlay):
Set chunk size of 1024 samples per data frame
filenamePlay = "pinkNoise.wav" filenameRecord = "output.wav" seconds = 5
def playRecord(filenamePlay, filenameRecord, seconds): if name == "main": Process(target = record, args = (filenameRecord, seconds)).start() Process(target = play, args = (filenamePlay)).start()
playRecord(filenamePlay, filenameRecord, seconds)`