使用pyaudio

问题描述

我正在尝试构建一个python程序,该程序使用pyaudio库实时绘制麦克风输入波形。我只够到达试图绘制波形的单个瞬间的地方,而且遇到了问题。到目前为止,这是我的代码

import numpy as np
import pyaudio
import matplotlib.pyplot as plt

CHUNK = 4096
FORMAT = pyaudio.paInt16
CHANNELS = 1
RATE = 44100

p = pyaudio.PyAudio()

stream = p.open(
    format=FORMAT,channels=CHANNELS,rate=RATE,output=True,input=True,frames_per_buffer=CHUNK)

stream.start_stream()
data = stream.read(CHUNK)
data_int = np.frombuffer(data,np.int16)
print(data_int)

fig,ax = plt.subplots()
ax.plot(data_int,'-')
plt.show()

运行此命令时,我确实绘制了一个图形,但所有值都是1、0或-1,而不是声波。 Here is an image of the plot I am getting。每次我运行程序时,该图完全相同。

我正在为此使用笔记本电脑的内置麦克风,并确认它可以在其他应用程序中使用。有什么想法可能导致音频输入无法正确读取?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)