5

如何在 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 ?
4

3 回答 3

16

这些代码用于生成 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
于 2015-03-13T16:37:20.603 回答
2

试试下面的链接

如何将音频文件录制为 .m4a 格式?

或者

http://www.benmccann.com/blog/android-audio-recording-tutorial/

这可能会对您有所帮助。

于 2012-09-27T20:01:56.580 回答
1

试试这个,换

recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);

recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AAC);
于 2013-05-31T07:59:53.923 回答