0

この問題は本当に私をつまずかせました。TarsosDSP オーディオ ライブラリから percussionDetector クラスを実装しようとしていますが、何かが正しくありません...

これは私のコードです:

public class PercussionDetectionForTimer extends Timer {
int SAMPLING_RATE=22050;
int BUFFER_SIZE=1024;
int BUFFER_OVERLAP=0;

AudioDispatcher dispatcher = AudioDispatcherFactory.fromDefaultMicrophone(SAMPLING_RATE,BUFFER_SIZE,BUFFER_OVERLAP);

OnsetHandler handler = new OnsetHandler() {
    @Override
    public void handleOnset(double time, double salience) {
        runOnUiThread(new Runnable() {
            @Override
            public void run() {
                //do stuff with result and audioevent
            }
        });
    }
};

double sens = 0.8;
double threshold = 10;

PercussionOnsetDetector percussionDetector = new PercussionOnsetDetector(SAMPLING_RATE,BUFFER_SIZE,handler,sens,threshold);
dispatcher.addAudioDispatcher(percussionDetector);
dispatcher.start();
}

Android Studio から次のエラー メッセージが表示されます:「シンボル 'addAudioDispatcher()' を解決できません」

しかし、変数 'dispatcher' を宣言した同じ行でメソッドを呼び出そうとすると、そのようなエラーはありません...何が間違っているのでしょうか?

Androidスタジオが変数ディスパッチャーを認識しないようで、クラスAudioDispatcherのみを認識しますが、これは奇妙です。

すべての助けに感謝します!

4

1 に答える 1

0

他の誰かがこの問題を抱えている場合、この回答を投稿するのは本当にばかげているので、ほとんどありそうにないので、自分の質問に答えます。

全体のメソッドを宣言するのを忘れていたので、他のすべてのメソッドの外側にすべてのコードを書きました。うまくいかなかったのも不思議ではありません!

于 2016-03-14T20:44:31.083 に答える