【发布时间】:2010-09-15 10:21:17
【问题描述】:
这是这个问题here的延续。
这是我用来获取样本的代码:
spf = wave.open(speech,'r')
sound_info = spf.readframes(-1)
sound_info = fromstring(sound_info, 'Int16')
sound_info的长度为194560,是44100采样率的4.4倍。声音文件的长度是2.2秒,所以sound_info不是应该是两倍的长度吗?
此外,我似乎只能找到足够的信息来说明为什么要使用 FFT 来生成频谱。
我想分割声音并分析几分之一秒的频谱,而不是整个声音文件。
非常感谢您的帮助。 :)
这是基本的 sound_info 图
plot(sound_info)
这是 FFT 图
freq = [abs(x.real) for x in fft(sound_info)]
plot(freq)
【问题讨论】:
-
‘sound_info 的长度不是应该的两倍吗?’:立体声?
-
感谢 bobince,但我该如何解释 sound_info?因为数据是顺序的
标签: python numpy audio fft computer-science