LoginSignup
11
12

More than 5 years have passed since last update.

ofxFftでFFTWを使うための準備

Last updated at Posted at 2016-05-31

ofxFftとは、FFTW と KISS FFT の両方を使えるAddonですが、FFTWを使うためには、準備がいるみたいです。

使用するもの

  • of_v0.9.2_osx_release
  • Xcode7
  • ofxFft

手順

  1. こちらからofxFftをダウンロードし、いつもどおりaddonsフォルダの中に保存します。

  2. readmeのここにもあるように、このprecompiled librariesをクリックします。
    スクリーンショット 2016-05-31 14.23.34.png

  3. zipがダウンロードされるので、下のように開きます。
    スクリーンショット 2016-05-31 14.12.56.png

  4. このfftw3f.aを addons/ofxFft/libs/fftw/include の中に入れます。
    スクリーンショット 2016-06-01 0.25.26.png

  5. includeを右クリックし、Add Files to ~ を選択します。
    addfiles.png

  6. 先ほどincludeの中に入れたfftw3f.aを選択し、Addします。
    add.png

  7. 入りました。
    スクリーンショット 2016-06-01 0.48.30.png

  8. プロジェクトのBuild Settingsを開き、Other C++ Flagsに-DOFX_FFT_USE_FFTW
    を追加します。検索すると、見つけやすいです。
    flags追加.png

  1. 32bitにします。
    bit.png

  2. ofApp.cppのsetup()で、FFTWを使うように書きかえます。

ofApp.cpp
fft = ofxFft::create(bufferSize, OF_FFT_WINDOW_BARTLETT);
// To use with FFTW, try:
// fft = ofxFft::create(bufferSize, OF_FFT_WINDOW_BARTLETT, OF_FFT_FFTW);

を以下のように書きかえて、、、

ofApp.cpp
// fft = ofxFft::create(bufferSize, OF_FFT_WINDOW_HAMMING);
// To use FFTW, try:
fft = ofxFft::create(bufferSize, OF_FFT_WINDOW_HAMMING, OF_FFT_FFTW);
  1. おわり スクリーンショット 2016-06-01 0.22.49.png

ちなみに

何も準備せずに、コードをFFTWに書き換えただけでもビルドは通りますが、使えていないみたいなので注意。
warning.png

おまけ

exampleは最初こんな感じで実行できません。なのでprojectGeneratorでアップデートします。
スクリーンショット 2016-05-31 14.38.50.png
1. projectGeneratorで、importをクリック。その後、アップデートしたいプロジェクトを選択し、開くを押します。
image1.png
2. Project nameが先ほど選んだものになっていること、Addonsが選択されていることを確認し、Updateを押します。
image3.png
3. 先ほど、srcとaddons.makeしかなかったところに、example-basic.xcodeprojなどが作成されているので、それを実行します。
4. 完成!
スクリーンショット 2016-05-31 14.45.09.png

11
12
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
12