gpt4 book ai didi

python - 使用Python对音频文件进行FFT-采样率

转载 作者:行者123 更新时间:2023-12-03 00:51:21 25 4
gpt4 key购买 nike

我一直在尝试寻找一些在WAV文件中最主要的频率。我发现我可以使用python wave库以及scipy.io.wavfile来读取音频文件。

如果采样率为16000,那是否意味着我的时间步为1/16000?这意味着我的代码应如下所示查找频率:

wavData = wavfile.read(someName); # 2D array of sampling rate and values
fourier = fftpack.fft(wavData[0][1]); # FFT on the values
n = wavData[0][1].size;
timestep = 1/wavData[0]; # 1/16000
freq = np.fft.fftfreq(n, d=timestep); # getting array of sample frequencies

我正在使用 fftfreq fft 的示例跟踪scipy.org的文档。

最佳答案

If the sampling rate is 16000, does that mean my timestep is 1/16000?



对,那是正确的;每秒16,000个样本意味着每个样本占1 / 16,000秒。但是,请注意,在Python 2.x中,您将需要显式使用 float来获取正确的 timestep:
timestep = 1.0 / wavData[0]

使用2.x的默认整数除法:
1 / 16000 == 0

鉴于
1.0 / 16000 == 6.25e-05

关于python - 使用Python对音频文件进行FFT-采样率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20830791/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com