MediaRecorder没有在某些手机中录制

时间:2017-06-09 07:19:52

标签: android performance android-ndk mediarecorder

在联想K6 Power(K33A42)mediarecorder等少数特定手机中没有录制,我尝试更改所有AudioSource,On VOICE_CALL它没有录制。在MIC上它记录但输出文件是静默的。

 private void startRecording() {
            mRecorder = new MediaRecorder();
            mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
            mRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
            mRecorder.setOutputFile(mFileName);
            mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);

1 个答案:

答案 0 :(得分:0)

以下是我使用的内容:

mMediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
mMediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
mMediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AAC);
mMediaRecorder.setAudioChannels(1); //you can set it to 2 if you want stereo
mMediaRecorder.setOutputFile(getFilePath(starttime));

到目前为止,我对此设置没有任何问题。或者,您可以尝试合并AudioRecordMediaCodecThis示例可能会给你一些线索。我没有尝试过这个特殊的例子,但我在公司的项目中做过类似的事情。