Использование многопроцессорной обработки аудиопотоков - PullRequest
0 голосов
/ 09 июня 2019

Я бы хотел непрерывно записывать и аудио. Это легко сделать с помощью модуля python sounddevice. Тем не менее, я также хотел начать отправлять фрагменты в поток, который работает в фоновом режиме, когда аудио получает более 20 кадров. Когда я делаю это, вход звукового устройства переполняется, вы можете помочь мне исправить это или найти другое решение?

def callbackAmbient(indata, frames, time, status):
    if (status):
        print(status)
    VadFrames.append(indata)        

    if (len(VadFrames) > 19):
        Process(target = start_vad, args = (numpy.array(numpy.multiply(VadFrames, 0.5)), numpy.array(VadFrames), RATE, RATE)).start()
        VadFrames.pop(0)

print("System Recording...")

try:
    with sd.InputStream(samplerate=192000, blocksize=6144, channels=1, device=sd.query_devices(kind='input')['name'], callback=callbackAmbient):
        while True: 
            pass
except KeyboardInterrupt:
    print("System stopped...")
    sys.exit()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...