如何在Android 2.2中使用MediaRecorder录制M4A 音频文件?
我需要设置什么输出格式,编码器和采样率?
我需要从麦克风录制并将其保存在SDCARD中
更新
我尝试了这段代码,但结果并不有效(例如,不在浏览器中播放):
recorder = new MediaRecorder();
recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
recorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB); // error here ?!?
recorder.setAudioSamplingRate(96000); // what value ?
答案 0 :(得分:12)
这些代码用于生成m4a文件:
mRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.HE_AAC);
或
mRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AAC);
与
mRecorder.setAudioChannels(1);
mRecorder.setAudioSamplingRate(44100);
mRecorder.setAudioEncodingBitRate(96000);
mRecorder.setOutputFile(absFilePath);// must have an .m4a extension
答案 1 :(得分:1)
尝试下面的链接
how can i record audio file as .m4a format?
OR
http://www.benmccann.com/blog/android-audio-recording-tutorial/
这可能对你有帮助。
答案 2 :(得分:1)
试试这个,改变
recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
到
recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AAC);