音声処理を扱うプログラムで非常によく用いられるものにFFT(高速フーリエ変換)があります。これは従来非常に時間のかかる計算であったフーリエ変換のアルゴリズムを改良して飛躍的に高速化したものですが、こういうものはすでに優秀なライブラリがいくらでも提供されていますので、その仕組みまで知る必要はありません。プログラマーとしては単にライブラリを呼び出して結果を得られればよいだけのことです。 音声処理でFFTを行う目的としては、時間の関数である波形を周波数の関数であるスペクトルに変換するために主に用いられます。つまりどの周波数の音がどのくらいの割合で含まれているか(スペクトル)を求めるときに使うわけです。ところが実際にFFTのライブラリを使おうとするとどうやって入力を与え、出力を得ればよいのか悩んでしまうことがあります。それは複素数という厄介なものが登場するからですが、特に数学の苦手な方にとってはそ
![FFTの扱い方](https://cdn-ak-scissors.b.st-hatena.com/image/square/49f4e33b97c02c5cc574b703cc52ed9e74517a29/height=288;version=1;width=512/https%3A%2F%2Fwww.logical-arts.jp%2Fwp-content%2Fuploads%2Fcomplex_number.png)