Android:如何检测用户何时停止与麦克风通话

Dou*_*oug 7 audio android microphone speech

我有一个Android应用程序,在应用程序启动时开始从麦克风录制.在我当前的版本中,用户必须按STOP按钮才能停止录制.

如何检测用户已停止说话并使用该按钮触发录音机停止?

与Android中的语音识别功能中实现的类似.用户停止说话然后翻译语音.我见过其他应用程序,比如Talking Tom类型的应用程序.

作为旁注,我还希望显示某种类型的视觉,表明麦​​克风正在接收声音.显示声级的东西.

任何帮助赞赏.

小智 5

一种方法是在录制时使用线程,对记录的字节使用语音功率分析过程,有一个示例代码供您参考:http://musicg.googlecode.com/files/musicg_android_demo.zip


Ian*_*Ian 0

你用什么来录制音频?这或许可以提供一些线索:

android.media.MediaRecorder:

  • 常量 MEDIA_RECORDER_INFO_MAX_DURATION_REACHED 可以与 onInfoListener 一起使用。

android.speech.SpeechRecognizer:

  • 附加一个 RecognitionListener 并调用 onEndofSpeech()。