所以,我试图从蓝牙耳机录制波形文件。
这是我用来录制的内容
recorder = AudioRecord(MediaRecorder.AudioSource.VOICE_COMMUNICATION,
8000,
AudioFormat.CHANNEL_IN_MONO,
AudioFormat.ENCODING_PCM_16BIT,
BUFFER_SIZE)
在开始录制之前,我使用
开始与耳机进行音频通信var am = getSystemService(Context.AUDIO_SERVICE) as AudioManager
am!!.mode = 0
am!!.isBluetoothScoOn = true
am!!.startBluetoothSco()
am!!.mode = AudioManager.MODE_IN_COMMUNICATION
嗯,在Android 6(marshmallow)录制时会产生奇迹,但在Android 7(牛轧糖)录制时,它会继续使用我手机的麦克风录制,而不是蓝牙耳机。查看文档,我没有找到任何关于版本之间蓝牙SCO变化的信息。那么......我错过了什么?
答案 0 :(得分:0)
当我们尝试录制蓝牙语音通话时,我们遇到了类似的问题。问题是应用程序在收到拨出电话的电话广播后立即开始录制,但蓝牙接口仅在呼叫开始后的几毫秒内连接。 我们最终通过在开始记录之前应用简单的睡眠来解决这个问题,这解决了这个问题。