0
我想以純音頻格式錄製語音。 目前我使用這個代碼如何在Android中錄製語音和音頻MimeType
public static void startRecording(String fileName) {
mRecorder = new MediaRecorder();
mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
mRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
String mFileName = Environment.getExternalStorageDirectory()
.getAbsolutePath();
mFileName += "/abc.mp3";
mRecorder.setOutputFile(mFileName);
mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
try {
mRecorder.prepare();
mRecorder.start();
} catch (IOException e) {
Log.e(TAG, "prepare() failed");
}
}
這是顯示文件爲MP3,但內部文件內容的MIME類型是「視頻/ MP4」。我需要的是任何音頻MIME類型。
EDIT1 作爲建議的Headuck,我改變了我的代碼
mRecorder.setOutputFormat(MediaRecorder.OutputFormat.AAC_ADTS);
mFileName += "/abc.aac";
mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AAC);
音頻得到了完美地與 「音頻/ X-HX-AAC-ADTS」 MIME類型記錄。謝謝Headuck。
但我的問題是:
我使用雲終端這個文件上傳到谷歌驅動器。然後,當我打開文件時,它說「哎呀..!播放此文件時出現問題」。我需要將文件播放爲「MP3」文件播放。
Google雲端硬盤是否支持「ACC」格式?如果不是,請建議替代品。
請幫忙。
你有諮詢關於'setOutputFormat()'的文檔和http://developer.android.com/reference/android/media/MediaRecorder.OutputFormat.html? – headuck
感謝您的回覆。我已經看到了。但我不明白如何錄製純音頻。請幫助 –
AAC_ADTS是一種音頻格式,如果您不想要MPEG4容器,請參閱http://stackoverflow.com/questions/21552297/how-to-record-raw-aac-audio-files-in-android -using-mediarecorder-aac-adts-doesn – headuck