1

我目前正在编写一个显示用户声音的应用程序。我目前让它在他们按下录音时录制声音MediaRecorder,然后让他们通过按下播放再次收听该录音,这使用MediaPlayer.

我现在想知道如何输出他们记录的噪音有多大。由于使用 ,MediaRecorder我试图通过 检索响度.getMaxAplitude()。使用它然后我尝试在文本视图中显示它,以便用户可以看到他们的结果。

因此,在这样做时,我在开始录制功能中的当前代码是

 recorder = new MediaRecorder();
 recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
 recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
 recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
 recorder.setOutputFile(OUTPUT_FILE);
 recorder.prepare();
 recorder.start();

 int test = recorder.getMaxAmplitude();
 txtView.setText(test);

正如您已经猜到的那样,这不起作用,录制音频确实有效,但无法向用户获取或显示幅度

有任何想法吗?

4

1 回答 1

3

或许您可以在此处查看 stackoverflow 帖子。

在code.google.com中也有类似的项目

于 2013-01-29T13:21:00.500 回答