将波形文件导入Jupyter Notebook时遇到问题。我想从桌面上获取音频文件并对其执行fft。有谁知道该怎么做?
答案 0 :(得分:1)
您可以按照http://people.csail.mit.edu/hubert/pyaudio/docs/上的示例进行操作。
我还想对WAV文件进行FFT分析,并使用这种方法(仅显示基本位): 注意:这是16位立体声WAV文件,“解压”不适用于24位
import pyaudio
import wave
import numpy as np
import struct
wf = wave.open(sound_file_name, 'r')
n_frames = wf.getnframes()
all_frames = wf.readframes(n_frames)
wf.close()
value_list = []
for x in range(0, len(all_frames), 2):
value_list += struct.unpack('<h', all_frames[x:x+2])
two_channel_values = np.transpose(np.reshape(np.asanyarray(value_list), (int(len(value_list)/2), 2)))
现在您有了一个由两个向量组成的数组,每个向量都包含一个立体声通道的振幅值。