我有此通话录音内置在应用程序中,问题是如果人A打电话给人B,人A的声音响亮清晰,但人B的声音如此之低,但它在android 7和8点,但由于android 9和10的通话记录限制,android 9和10中的B人声音很低
我在android 9和10中测试了一些呼叫记录器应用程序,它有相同的问题,但是我遇到了这个应用程序Call Recorder - Cube ACR,它也有问题,但是当我将记录设置更改为语音呼叫(软件)时在图片中,更改此录制后非常清晰
有什么可以指导我解决这个问题的吗?我累了很多事,看不到结局,Ps:此设置已更改 在应用中
这是用于aykuttasil/CallRecorder的项目
这就是我尝试记录通话的内容
callRecord = new CallRecord.Builder(this)
.setRecordFileName("Record_" + new SimpleDateFormat("ddMMyyyyHHmmss", Locale.US).format(new Date()))
.setRecordDirName("CallRecord")
.setRecordDirPath(Environment.getExternalStorageDirectory().getPath())
.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB)
.setOutputFormat(MediaRecorder.OutputFormat.AMR_NB)
.setAudioSource(MediaRecorder.AudioSource.VOICE_COMMUNICATION)
.setShowSeed(true)
.buildService();
callRecord.startCallRecordService();
请帮助我
答案 0 :(得分:1)
我正在使用 AccessibilityService + MediaRecorder。它对我有用。
无障碍服务 - link
这是我的代码
recorder = MediaRecorder()
recorder?.apply {
setAudioSource(MediaRecorder.AudioSource.VOICE_RECOGNITION)
setOutputFormat(MediaRecorder.OutputFormat.DEFAULT)
setAudioEncoder(MediaRecorder.AudioEncoder.AAC)
if (Build.VERSION.SDK_INT >= 10) {
setAudioSamplingRate(44100)
setAudioEncodingBitRate(96000)
}else{
setAudioSamplingRate(8000)
setAudioEncodingBitRate(12200)
}
setOutputFile(audioFile!!.absolutePath)
setOnErrorListener { _, _, _ -> }
}
recorder?.prepare()