Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/326.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 从PCM数据中获取频率信息_Python_Python 2.x_Pcm_Frequency Analysis - Fatal编程技术网

Python 从PCM数据中获取频率信息

Python 从PCM数据中获取频率信息,python,python-2.x,pcm,frequency-analysis,Python,Python 2.x,Pcm,Frequency Analysis,假设我使用wave模块从声音文件中获取原始PCM数据。如何计算特定样本所含频率的振幅?稍后,我想为每一帧绘制一个频率图,如下所示: 如何计算每个频率的振幅 如果可能,我更喜欢不需要numpy的解决方案。有关此操作所需计算背景的学习资源链接也会很有帮助。要从原始PCM文件中的每个频率计算振幅,您必须执行以下操作。由于您不想使用numpy,因此可以使用pylab作为替代方法。试试看 更新:pylab.specgram文档。答案是尽快放松你对numpy的恐惧(除非你有非常令人信服的理由),并使用nu

假设我使用
wave
模块从声音文件中获取原始PCM数据。如何计算特定样本所含频率的振幅?稍后,我想为每一帧绘制一个频率图,如下所示:

如何计算每个频率的振幅


如果可能,我更喜欢不需要
numpy
的解决方案。有关此操作所需计算背景的学习资源链接也会很有帮助。

要从原始PCM文件中的每个频率计算振幅,您必须执行以下操作。由于您不想使用
numpy
,因此可以使用
pylab
作为替代方法。试试看


更新:pylab.specgram文档。

答案是尽快放松你对
numpy
的恐惧(除非你有非常令人信服的理由),并使用
numpy.fft.rfft()
。如果你想要资源,请查阅优秀的《理解数字信号处理》一书。对于使用FFT进行频率分析,您无法得到更好的解释。是IMHO的优秀资源。花点时间从头开始,即使它看起来很初级。你可以——但前提是你不关心性能。使用via ctypes怎么样?Pylab取决于Numpy,不是吗?@heltonbiker是的。