Mp3 ファイルのフーリエ変換を取得したい.このために、最初にそのファイルを使用して読み取りAudioInputStream
、次に必要なオーディオ形式に変換します。
AudioFormat decodedFormat = newAudioFormat(AudioFormat.Encoding.PCM_SIGNED,
baseFormat.getSampleRate(), 16, baseFormat.getChannels(),
baseFormat.getChannels() * 2, baseFormat.getSampleRate(), false);
それは私に配列の非常に巨大なバイトを与えています。次に、このバイト配列を小さなサイズのチャンク (4096 バイト) に分割し、それをフーリエ変換関数に渡し、配列全体に対して続行します。このプロセスはシステムを遅くします。単一の mp3 曲を処理するのに 15 分かかります。では、どうすればこの問題を解決できますか? 私はフーリエ変換のためにこのコードを使用しています- http://introcs.cs.princeton.edu/java/97data/FFT.java.html