public class Recorder { private static final int MAX_LENGTH=1000*60*3;//3分钟 private MediaRecorder recorderl; public Recorder() { initial(); } private void initial() { recorderl=new MediaRecorder(); String path= Environment.getExternalStorageDirectory().getAbsolutePath()+"/test.amr"; recorderl.setAudioSource(MediaRecorder.AudioSource.MIC); recorderl.setOutputFormat(MediaRecorder.OutputFormat.RAW_AMR); recorderl.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB); recorderl.setMaxDuration(MAX_LENGTH); recorderl.setOutputFile(path); } public void startRecorder() { initial(); try { recorderl.prepare(); } catch (IOException e) { e.printStackTrace(); } recorderl.start(); } public void stopRecorder() { if(recorderl!=null) { recorderl.stop(); recorderl.release(); } recorderl=null; } public void startRecorderVoice() { handler.postDelayed(run,200); } public void stopRecorderVoice() { handler.removeCallbacks(run); } private Handler handler=new Handler(); private Runnable run=new Runnable() { @Override public void run() { Log.i("view","test"+recorderl.getMaxAmplitude()); handler.postDelayed(run,200); } }; }
使用MediaRecorder进行录音
最新推荐文章于 2025-03-11 15:23:54 发布