当前位置: 动力学知识库 > 问答 > 编程问答 >

audio - Android: How to detect when a user stops talking into the microphone

问题描述:

I have an Android application that begins recording from the microphone when the application starts. In my current version, the user must press a STOP button to stop recording.

How do I detect that the user has stopped talking and use that to trigger the recorder to stop?

Similar to what is implemented in the Speech Recognition functionality in Android. The user stops talking and then the speech is translated. I have seen other apps that do it, like Talking Tom type apps.

As a side note I would also love to show some type of visual indicating that the microphone is receiving sound. Something to show the sound level coming in.

Any help appreciated.

网友答案:

An approach is to use threads on recording and the speech power analyzing process on the recorded bytes, there's a sample code for your reference: http://musicg.googlecode.com/files/musicg_android_demo.zip

网友答案:

What are you using to record audio? This may provide some clues:

android.media.MediaRecorder:

  • the constant MEDIA_RECORDER_INFO_MAX_DURATION_REACHED can be used with an onInfoListener.

android.speech.SpeechRecognizer:

  • attach a RecognitionListener and call onEndofSpeech().
分享给朋友:
您可能感兴趣的文章:
随机阅读: