繁体   English   中英

如何从WAV文件中获取时域频率?

[英]How can i get frequency in time domain from a wav file?

换句话说,我正在尝试播放.wav文件,为此,我需要知道频率和持续时间; 我正在使用的API有一种方法需要将带有两个字段(频率和时间)的向量作为参数!

我尝试使用快速傅立叶变换,但是它给了我频率和幅度!


/ \\ | | -| ------>频率

但是我需要这样的东西:freq / \\ | | -| ------>时间

我想知道是否可以从wav文件中获取这些信息!

数字音频信号是成对的一系列信号(幅度,时间)。 或者您可以说这是时间的函数。 如果您获取音频信号序列并对该序列执行傅立叶变换(DFT / FFT),您将获得一个新的序列,其中包含成对的(幅度,频率)。 或者您可以说频率的函数。

该序列描述了频域中信号的属性。 它根本不包含任何时间信息。

我想,您想要的是一个函数,它描述音频信号的频率分量随时间的变化。 这无法通过简单的FFT来完成。

您可以做的是:

  • 取音频数据流的N个样本,样本(0,...,N-1)
  • 执行FFT
  • 取另外N个音频数据流样本(m,...,m + N-1),其中m << N
  • 执行FFT
  • 另取N个音频数据流样本(2m,...,2m + N-1)
  • 执行FFT
  • 等等

如果采样时间为ts,则在T = m * ts之后将获得新的频率分析。

也许,这就是您想要的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM