2017-02-10 26 views
3

Я хочу, чтобы вычислить данные одиночные каналы (для расчета аудио взаимной корреляции между каналом 1 и каналом 4) этот кодом:PyAudio - многократное управление каналом расслаивание

import time 
import numpy as np 
import pyaudio 
import scipy 
from scipy import signal, fftpack 

pyaud = pyaudio.PyAudio() 


#open the stream 

stream = pyaud.open(
    format = pyaudio.paInt16, 
    channels = 4, 
    rate = 16000, 
    input_device_index = 4, 
    output = False, 
    input = True, 
    frames_per_buffer=2048,) 


while True: 

    rawsamps = stream.read(2048)   
    samps = np.fromstring(rawsamps, dtype=np.int16) 
    frames_per_buffer_length = len(samps)/4 #(channels) 
    assert frames_per_buffer_length == int(frames_per_buffer_length)  
    samps = np.reshape(samps, (frames_per_buffer_length, 4)) #4 channels 

Если предположить, что сырье данные чередуются.
Это функция мне нужно использовать:

signal.correlate(n1, n2, mode='full') 

как я могу создать массив данных для каждого канала для того, чтобы использовать функцию коррелируют? правильные ли последние строки кода?

Спасибо

+0

Вы, кажется, задаете тот же вопрос [более] (http://stackoverflow.com/q/41922139/) и [более] (http://stackoverflow.com/q/42027487/). Я предлагаю вам начать меньше и сначала изучить несколько основоположений о NumPy (в Интернете есть много хороших обучающих программ). Возможно, вам стоит взглянуть на [это] (http://nbviewer.jupyter.org/github/mgeier/python-audio/blob/master/simple-signals.ipynb) и [это] (http: // nbviewer .jupyter.org/GitHub/mgeier/питон аудио/BLOB/Master/аудио-файлы/аудио-файлы-с-wave.ipynb). – Matthias

+0

Как только вы это сделаете, вы можете посмотреть на [пример] (https://github.com/spatialaudio/python-sounddevice/blob/master/examples/plot_input.py), который я вам показывал раньше. – Matthias

ответ

0

Я нашел ответ, используя print loudness(samps[:,0]), loudness(samps[:,3]). Он печатает в оболочке «громкость микрофона 1, громкость микрофона 4»

+0

Вы можете принять свой собственный андерсер! см: HTTP: //stackoverflow.com/help/self-answer –

 Смежные вопросы

  • Нет связанных вопросов^_^