我目前正在编写一个显示用户声音的应用程序。我目前让它在他们按下录音时录制声音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);
正如您已经猜到的那样,这不起作用,录制音频确实有效,但无法向用户获取或显示幅度
有任何想法吗?