在我的应用程序中,有一个录制语音呼叫的功能,它工作得很好。但在(三星s7、s8 )上测试时,效果并不好。该应用程序只能记录呼叫者的语音,而不能记录来自另一端的语音。以下是我的代码检查,请提出解决方案
MediaRecd = new MediaRecorder();
MediaRecd.setAudioSource(MediaRecorder.AudioSource.VOICE_CALL
);
MediaRecd.setAudioChannels(ConstantVariables.audioChannels);//monoRecording
MediaRecd.setAudioEncodingBitRate(64);
MediaRecd.setAudioSamplingRate(44100);
MediaRecd.setOutputFormat(output_formats[pos]);//.mp3
MediaRecd.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);//I already try with all possible CAMCORDER , MIC , Default etc etc but none was working
MediaRecd.setOutputFile(Currentfilename);
try {
MediaRecd.prepare();
MediaRecd.start();
} catch (Exception e) {
MediaRecd.reset();
MediaRecd.release();
MediaRecd = null;
}请帮帮忙
发布于 2017-09-04 15:14:42
AudioSource.VOICE_CALL在一些安卓设备上不起作用,所以用下面的代码代替VOICE_CALL
先试试MediaRecorder.AudioSource.CAMCORDER
MediaRecd = new MediaRecorder();
MediaRecd.setAudioSource(MediaRecorder.AudioSource.CAMCORDER
);如果上述方法不起作用,则使用MediaRecorder.AudioSource.MIC
MediaRecd = new MediaRecorder();
MediaRecd.setAudioSource(MediaRecorder.AudioSource.MIC
);https://stackoverflow.com/questions/45880954
复制相似问题