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是的。