我目前正在搜索有关如何在Android上操作音频的选项。目标是在通话期间实时处理来自麦克风的音频。最好的解决方案是在本机调用上执行此操作。但重建一个电话应用程序(没有VOIP)也没关系。有没有办法用Android API实现这一点(也没有记录)? 如果不是,为了让事情运转,需要采取哪些步骤?
在iOS上,有一些应用程序操纵语音但创建了VOIP连接。我听说在Android上你可以“克隆”电话应用程序并最终用你自己的音频流提供它?是否有应用程序在通话期间添加噪音?涉及哪种API?
答案 0 :(得分:4)
最好的解决方案是在本机电话上执行此操作。
这是不可能的。除了扬声器电话模式外,您无法访问通话中的音频流。
但是重建一个电话应用程序(没有VOIP)也没关系。
谷歌(2010年)的最后一个官方消息,整个操作系统无法访问通话中的音频流,因为它都是在较低级别处理的。即使较新版本的Android确实可以访问通话中的音频流,但只有在创建自定义固件时才能“重建电话应用程序”。
答案 1 :(得分:0)
作为一个缺点,我可以设想使用MediaRecorder API记录下行链路流,并使用AudioTracks write()方法将其写回硬件。通过这个我可以操纵传入的声音。但我仍然认为这在电话中不起作用。我没有办法选择不同的硬件目的地。