Python - 读取音频流

Python - read audio stream

所以我正在尝试设置一个应用程序来记录来自麦克风的音频输入,并检查你是否说了特定的 phase/command。一旦它读取该命令,它就会启动一个函数。我正在使用声音设备包录制音频输入。实际上,对于您使用 rec 命令读取输入的文档,但这是一个开始停止阻塞操作。我无法评估那段录音的价值。有谁知道如何将流用于音频缓冲区?

import sounddevice as sd
import numpy as np

fs = 44100
duration = 5  # seconds
myrecording = sd.rec(duration * fs, samplerate=fs, channels=2, dtype='float64')
# I would like to read myrecording into a stream at this point. 
print("Recording Audio")
sd.wait()
print("Audio recording complete , Play Audio")
sd.play(myrecording, fs)
sd.wait()
print("Play Audio Complete")

您无法使用 "rec" 函数读取流。您必须使用回调函数(正如 Matthias 在其评论中所说)。

查看 http://python-sounddevice.readthedocs.io/en/latest/examples.html,例如实时文本模式频谱图。