Konvertiert mehrkanaliges PyAudio in ein NumPy-Array
Alle Beispiele, die ich finden kann, sind mono, mitCHANNELS = 1
. Wie liest man Stereo- oder Mehrkanaleingaben mit der Callback-Methode in PyAudio und wandelt sie in ein 2D-NumPy-Array oder mehrere 1D-Arrays um?
Bei Mono-Eingaben funktioniert Folgendes:
def callback(in_data, frame_count, time_info, status):
global result
global result_waiting
if in_data:
result = np.fromstring(in_data, dtype=np.float32)
result_waiting = True
else:
print('no input')
return None, pyaudio.paContinue
stream = p.open(format=pyaudio.paFloat32,
channels=1,
rate=fs,
output=False,
input=True,
frames_per_buffer=fs,
stream_callback=callback)
Funktioniert aber nicht für Stereoeingänge, dieresult
Das Array ist doppelt so lang, also nehme ich an, dass die Kanäle verschachtelt sind oder so, aber ich kann keine Dokumentation dafür finden.