android-asynctask - android中的拍手声音检测

标签 android-asynctask android-audiorecord

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

Detect Whistle sound in android

Detect the beginning of a sound or voice in Android

但我不知道如何在 Android 应用程序中检测“Jack Hammer sound count”? 所需计数器至少可以计数 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;

    }

最佳答案

引用《Android Sensor Programming 2012》一书。

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

关于android-asynctask - android中的拍手声音检测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18058343/

相关文章:

java - 使用 AsyncTask 读取 Firestore 文档

android - 在 Android 中加载 fragment 需要更多时间

android - AudioRecord 和 MediaRecorder Android 并行

android - AudioRecord:缓冲区溢出?

Android:如何从 AsyncTask 获取 bool 结果?

android - 在 Fragment android 中实现 AsyncTask

android - 我是否需要 AsyncTask 来查询 Android Room 数据库中的一行?

android - 从 AudioRecord 计算耗时

android - AccessibilityService 开启会导致 Android 10 上的麦克风静音