1
在Android自定义ROM中修改通话中的语音播放
我想修改Android OS(AOSP的官方图片),以将预处理添加到正常的电话播放声音中。 我已经实现了针对应用程序音频播放的过滤(通过修改HAL和audioflinger)。 我可以只定位特定的设备(Nexus 5X)。另外,我只需要过滤播放-我不在乎录制(上行链路)。 更新#1: 明确地说-我可以修改Qualcomm专用的驱动程序,或者可以在Nexus 5X上运行的任何部分,可以帮助我修改通话中的播放。 更新#2: 我正在尝试创建一个Java层应用程序,以将电话播放实时路由到音乐流。 我已经成功地安装它作为系统的应用程序,获得权限初始化AudioRecord用AudioSource.VOICE_DOWNLINK。但是,记录给出了空白样本。它不会录制语音电话。 这是我的工作线程中的代码: // Start recording int recBufferSize = AudioRecord.getMinBufferSize(44100, AudioFormat.CHANNEL_IN_STEREO, AudioFormat.ENCODING_PCM_16BIT); mRecord = new AudioRecord(MediaRecorder.AudioSource.VOICE_DOWNLINK, 44100, AudioFormat.CHANNEL_IN_STEREO, AudioFormat.ENCODING_PCM_16BIT, recBufferSize); // Start playback int playBufferSize = AudioTrack.getMinBufferSize(44100, AudioFormat.CHANNEL_OUT_STEREO, AudioFormat.ENCODING_PCM_16BIT); mTrack = new AudioTrack(AudioManager.STREAM_MUSIC, 44100, AudioFormat.CHANNEL_OUT_STEREO, AudioFormat.ENCODING_PCM_16BIT, playBufferSize, AudioTrack.MODE_STREAM); mRecord.startRecording();; mTrack.play(); int …