Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何从麦克风了解音频频率_Python_Audio_Frequency - Fatal编程技术网

Python 如何从麦克风了解音频频率

Python 如何从麦克风了解音频频率,python,audio,frequency,Python,Audio,Frequency,我正在尝试用python创建一个应用程序,它可以显示来自麦克风输入的音频当前主导频率的确切值。就像这张从吉他调谐器应用程序拍摄的图片所示 我只是用红色标记了我需要知道如何编程的部分。 我需要在PC中运行它,以便了解如何访问麦克风端口以及如何知道频率。找到一种从麦克风端口录制音频的方法,然后运行傅里叶变换查看频谱。找到能量最大的频率,并将其绘制在仪表上。我不会提供代码,因为您没有在终端显示任何内容。 但这里有一些高级步骤和提示 1) 使用“pyaudio”以块[块]的形式读取麦克风的输入 2)

我正在尝试用python创建一个应用程序,它可以显示来自麦克风输入的音频当前主导频率的确切值。就像这张从吉他调谐器应用程序拍摄的图片所示

我只是用红色标记了我需要知道如何编程的部分。
我需要在PC中运行它,以便了解如何访问麦克风端口以及如何知道频率。

找到一种从麦克风端口录制音频的方法,然后运行傅里叶变换查看频谱。找到能量最大的频率,并将其绘制在仪表上。

我不会提供代码,因为您没有在终端显示任何内容。 但这里有一些高级步骤和提示

1) 使用“pyaudio”以块[块]的形式读取麦克风的输入

2) 对于每个区块,应用
fft
并获取所有区块的频率,然后添加到数组/列表中。
这里有一些有用的讨论和建议 因此,如果根据(1)有以下参数

您将有44个存储箱,每个存储箱在
FFT
变换后提供一个频率

3) 您可以选择从每秒(2)次获得的最大频率
max(频率列表)
,乘以您希望记录的秒数

4) 写下


5) 您现在有了每秒的频率,直到您可以实时播放录制的持续时间。

所以,您基本上什么都没有?你至少试过做点什么吗?所以这不是一个建议。到目前为止你试过什么?请展示你的代码。@JamesZ yah我试着记录,然后进行傅立叶变换。现在我需要的是实时制作,你知道这不应该引发这样的问题。谢谢你,尼米什,我已经完成了你的建议。我正在寻找一个实时显示频率的代码。如果你尝试这个应用,你可以理解。提前谢谢你
RATE = 44100
chunk = 1024
RECORD_SECONDS = 1