3

我在 StackOverflow 和网络上搜索了许多关于口哨检测等的问题,并且许多人确实尽可能多地解释了他们如何去检测他们的东西。

在android中检测口哨声

在 Android 中检测声音或语音的开头

但我不知道如何在 Android 应用程序中检测“ Jack Hammer 声音计数”?所需的计数器可以计数至少 33 次打击/秒(或 2000 次打击/分钟)。

任何人都可以提出一些解决方案吗?

这是我的 doInBackground 方法

    @Override
    protected Integer doInBackground(AudioCilpListener... listeners) {

        if (listeners.length == 0) {

            return 0;

        }
        AudioCilpListener listener = listeners[0];        
        AudioClipRecorder recorder = new AudioClipRecorder(listener, this);
//        boolean heard = false;
        int count = 0;        
        for (int i = 0; i < 10; i++) {

            try {

                count = recorder.startRecordingForTime(30,
                                AudioClipRecorder.RECORDER_SAMPLERATE_CD,
                                AudioFormat.ENCODING_PCM_16BIT);
                break;

            } catch (IllegalStateException ie) {

                // failed to setup, sleep and try again
                // if still can't set it up, just fail
                ie.printStackTrace();

            }

        }
        //collect the audio
        return count;

    }
4

1 回答 1

4

请参阅名为“Android Sensor Programming 2012”的书。

在第 3 部分第 14 章“使用麦克风”中,您将获得所有相关详细信息

于 2013-09-24T06:31:43.190 回答