我想知道是否可以使用 NumPy 获取文件中存在的频率,然后更改这些频率并从中创建一个新的 WAV 文件?我想对文件进行一些过滤,但我还没有看到一种将 WAV 文件读入 NumPy、过滤它,然后输出过滤后的版本的方法。如果有人可以提供帮助,那就太好了。
问问题
1161 次
1 回答
4
SciPy提供了对 NumPy 数组进行 FFT的函数,还提供了将它们读取和写入WAV 文件的函数。例如
from scipy.io.wavfile import read, write
from scipy.fftpack import rfft, irfft
import np as numpy
rate, input = read('input.wav')
transformed = rfft(input)
filtered = function_that_does_the_filtering(transformed)
output = irfft(filtered)
write('output.wav', rate, output)
( input
,transformed
并且output
都是 numpy 数组)
于 2012-04-11T08:18:34.757 回答