3
A
回答
4
你的意思是实施一个拍板?
没有必要使用花哨的数学或语音识别API。只需使用MediaRecorder及其getMaxAmplitute()方法即可。
以下是您需要的一些代码。该算法记录一段时间,然后测量幅度差异。如果它很大,那么用户可能发出一声巨响。
public void recordClap()
{
recorder.start();
int startAmplitude = recorder.getMaxAmplitude();
Log.d(D_LOG, "starting amplitude: " + startAmplitude);
boolean ampDiff;
do
{
Log.d(D_LOG, "waiting while taking in input");
waitSome();
int finishAmplitude = 0;
try
{
finishAmplitude = recorder.getMaxAmplitude();
}
catch (RuntimeException re)
{
Log.e(D_LOG, "unable to get the max amplitude " + re);
}
ampDiff = checkAmplitude(startAmplitude, finishAmplitude);
Log.d(D_LOG, "finishing amp: " + finishAmplitude + " difference: " + ampDiff);
}
while (!ampDiff && recorder.isRecording());
}
private boolean checkAmplitude(int startAmplitude, int finishAmplitude)
{
int ampDiff = finishAmplitude - startAmplitude;
Log.d(D_LOG, "amplitude difference " + ampDiff);
return (ampDiff >= 10000);
}
2
如果我试图检测尖叫或响亮的声音,我只想寻找一个高根均方通过麦克风传来的声音。我想你可以尝试训练一个语音识别系统来识别一个尖叫声,但它看起来像是矫枉过正。
相关问题
- 1. 语音识别(或声音)
- 2. Android语音识别?
- 3. android语音识别
- 4. Android - 语音识别
- 5. Android:语音识别
- 6. 语音/语音识别 - PhoneGap
- 7. 单声道语音识别
- 8. Android中的声音识别
- 9. 针对linux的语音识别库
- 10. 语音识别和录音
- 11. Android语音识别空指针异常
- 12. 带有录制声音剪辑的android上的语音识别?
- 13. 识别iOS上的特定声音
- 14. 声音识别API,SDK(Android)
- 15. 录制声音识别android
- 16. 离线语音识别android采取不必要的声音
- 17. 声音管理Android中的语音识别/ TTS
- 18. 的Android RecognizerIntent语音识别
- 19. Android的语音识别
- 20. Android中的语音识别
- 21. Android中的语音识别
- 22. 语音识别
- 23. 语音识别
- 24. 非语音噪音或声音识别软件?
- 25. 语音识别和声音比较与音乐g
- 26. 西班牙语语音(语音)识别
- 27. Android帮助语音识别!
- 28. 语音识别Android应用
- 29. 关于Android语音识别
- 30. 语音识别命令Android
似乎是合理的。你能否为此添加示例代码? – Kaps 2011-03-24 06:42:20
好吧,没有。我没有真正为Android编码的一件事。我刚刚完成了各种声音节目。此外,这不是一个'给我代码'网站。给它一个镜头,并发布你的代码寻求帮助,如果它不工作。查找root-mean-squared。你基本上只需要一段时间,对数值进行平方,找到这些数值的平均值,然后取平均值的平方根。这个用法实际上可以跳过平方根。然后你只需要看看你在尖叫时与谈话/安静时得到的值,并设置一个正确的阈值。 – 2011-03-24 06:46:40
我认为你的回答没有帮助。我还不能投票,所以这是另一种' – brainmurphy1 2012-07-15 21:02:12