Processing.org/Minim Ошибка БПФ

Я пытаюсь использовать библиотеку Minim FFT, но при запуске примерного скетча я сталкиваюсь со следующей проблемой:

The constructor FFT(int, float) is undefined.

Я предполагаю, что эта Java думает, что я пытаюсь использовать какой-то другой конструктор, но я не могу понять, как это решить.

Вот соответствующая часть кода:

import ddf.minim.analysis.*;
import ddf.minim.*;

FFT fft;
float[] buffer;
int bsize = 512;

void setup()
{
  size(512, 300, P3D);
  // create an FFT with a time-domain size the same as the size of buffer
  // it is required that these two values be the same
  // and also that the value is a power of two
  fft = new FFT(bsize, 44100);
  buffer = new float[bsize];
}

person james_dean    schedule 24.02.2013    source источник
comment
Как называется твой эскиз?   -  person Adam Schmidt    schedule 25.02.2013
comment
Это SetFreq. Я думал, что проблема может быть в этом, но нет :(   -  person james_dean    schedule 25.02.2013
comment
Странно, пробовали ли вы использовать какие-либо другие минимальные классы? Если да, то работали?   -  person Adam Schmidt    schedule 25.02.2013
comment
этот приведенный выше код компилируется для меня с использованием 1.5.1 без ошибок... У вас 2.0x?   -  person v.k.    schedule 25.02.2013
comment
Какую версию Processing вы используете? Я попробовал ваш фрагмент в Processing 2.0b7, и он без проблем компилируется.   -  person George Profenza    schedule 25.02.2013
comment
Это использует 2.06b на OSX 10.8. Некоторые другие примеры работают нормально, поэтому я предполагаю, что minim установлен правильно.   -  person james_dean    schedule 25.02.2013


Ответы (2)


Попробуйте явно импортировать класс FFT:

import ddf.minim.analysis.FFT;

Я не уверен, зачем это нужно, но у меня была такая же проблема, и это сработало для меня.

person christopher_b    schedule 13.03.2013

У меня была эта проблема с обработкой 2. Проблема в моем случае заключалась в том, что скетч обработки назывался «БПФ». Это создало проблему с именованием. Вашим первым решением может быть создание нового эскиза, переименованного во что-то другое. В качестве альтернативы вы можете попробовать включить путь к пакету при создании экземпляра объекта FFT. Например: "ddf.minim.analysis.FFT"

person jestermax    schedule 09.10.2013