Как обрабатывать данные с двух микрофонов? - PullRequest
0 голосов
/ 01 мая 2018

Я пытаюсь сделать простую систему формирования луча с двумя USB-микрофонами, и мне удалось соединить оба с компьютером. Вот мой код.

import numpy as np
from scipy.io import wavfile
import time
import pyaudio
import matplotlib.pyplot as plt
import wave

p = pyaudio.PyAudio()
FORMAT = pyaudio.paInt16

def callback1(in_data, frame_count, time_info, flag):
   input_wave1 = np.fromstring(in_data, 'Float32')
   return (input_wave1,pyaudio.paContinue)

def callback2(in_data, frame_count, time_info, flag):
   input_wave2 = np.fromstring(in_data, 'Float32')
   return (input_wave2,pyaudio.paContinue)

CHANNELS = 1
RATE = 22050
buffer_size = 200

stream1 = p.open(format=FORMAT,
               channels=CHANNELS,
               frames_per_buffer = buffer_size,
               rate=RATE,
               output=True,
               input=True,
               input_device_index = 1,
               stream_callback = callback1)

stream2 = p.open(format = FORMAT,
               channels = CHANNELS,
               frames_per_buffer = buffer_size,
               rate = RATE,
               output=True,
               input = True,
               input_device_index = 2,
               stream_callback = callback2)

Теперь моя проблема в том, что я не могу рассчитать звук формирования луча, используя две данные (input_wave1, input_wave2). Возможно ли, что всего лишь с несколькими правками, или есть другой способ? Моя цель - запустить этот код из Raspberry Pi. Я сожалею о своем плохом английском.

...