2

NumPyを使用してファイルに存在する周波数を取得し、それらの周波数を変更して、それらから新しいWAVファイルを作成することは可能かどうか疑問に思いました。ファイルに対してフィルタリングを実行したいのですが、WAVファイルをNumPyに読み込んでフィルタリングし、フィルタリングされたバージョンを出力する方法がまだわかりません。誰かが助けることができれば、それは素晴らしいことです。

4

1 に答える 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)

inputtransformedおよびoutputはすべてnumpy配列です)

于 2012-04-11T08:18:34.757 に答える