mp3中的频率

时间:2017-05-23 03:40:35

标签: c++ mp3 fftw

我试图以mp3格式获取有关音乐文件频率特性的信息。

如何用c ++从mp3文件中获取频率? fftw库有哪些数据?

1 个答案:

答案 0 :(得分:1)

这将是一个两步过程,首先你需要在你的C ++程序中将mp3文件读入你喜欢的数据结构中。大多数mp3文件都是立体声格式,这意味着您将拥有两个数组/向量,每个通道一个。 FFTW也分两步工作,首先创建一个描述数据的计划,FFT点的数量,反向/正向FFT方向等。在下一步中,您将使用此计划和输入数据来计算频率变换。然后,您可以从FFTW获取生成的浮点/双复数阵列的幅度响应。链接到FFTW教程http://www.fftw.org/fftw2_doc/fftw_2.html

话虽如此,您不需要手动完成这些步骤,有许多开源音乐信息检索库可以为您执行此操作,如Marsyas。您还可以使用PortAudio等音频库来获取音频数据并通过将数据提供给信号处理库(如openvsipLiquidDSP

来获得所需的结果