我想检测一下在android上的麦克风。谷歌帮助不大。有可能吗?
答案 0 :(得分:7)
OK!我在网上找到了这个,所以看起来绝对可能。看起来你可以调用mediaRecorder.getMaxAmplitude()。
来自名为NoiseAlert的应用程序的代码
public void start() {
if (mRecorder == null) {
mRecorder = new MediaRecorder();
mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
mRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
mRecorder.setOutputFile("/dev/null");
mRecorder.prepare();
mRecorder.start();
mEMA = 0.0;
}
}
public double getAmplitude() {
if (mRecorder != null)
return (mRecorder.getMaxAmplitude()/2700.0);
else
return 0;
}
这是source