录制 .m4a 文件 Android
Posted
技术标签:
【中文标题】录制 .m4a 文件 Android【英文标题】:Record .m4a file Android 【发布时间】:2012-09-19 16:38:51 【问题描述】:如何在 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 ?
【问题讨论】:
【参考方案1】:这些代码用于生成 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
【讨论】:
【参考方案2】:试试这个,改变
recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
到
recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AAC);
【讨论】:
【参考方案3】:试试下面的链接
how can i record audio file as .m4a format?
或
http://www.benmccann.com/blog/android-audio-recording-tutorial/
这可能会对你有所帮助。
【讨论】:
我已经设置了 MediaRecorder.OutputFormat.MPEG_4。第二个链接是关于 3GP 格式。为什么如果我尝试从浏览器读取它(从 sdcard 导出后)它不起作用? VLC 也无法播放,而 Android 播放器工作!!!以上是关于录制 .m4a 文件 Android的主要内容,如果未能解决你的问题,请参考以下文章