在Android 4.0 ICS中调用音频流修改

san*_*man 27 audio android native phone-call

我一直致力于一个可以从调用流修改中获益的项目.这已被反复说/假设无法实现,因为大多数人认为通话音频的硬件环路完全与设备的主MCU断开连接.

流音频到Android电话的问题Android已收到答案,说明无法访问音频.我同意Android API绝对不可能,但是完全断开硬件ACTUALLY是完全断开的还不完全清楚.

stackoverflow用户'artsylar'表示他们能够修改Android操作系统的"框架层",将录制的音频注入呼叫流,这将是一个巨大的进步(请参阅播放音频片段到正在进行的通话,artsylar的评论选定的答案).假设artsylar的成功是有效的,那么肯定有一种方法可以通过修改框架来控制调用流音频(我假设Android源中的电话基础框架).

基本上,我完全同意从应用程序层修改或控制调用流是不可能的.但是,我有兴趣在框架或无线接口层中自定义Android OS; artsylar似乎取得了成功,但在开放文献中没有解释如何.鉴于Android技术的当前状态,是否有人可以通过修改核心Android操作系统来明确上述内容以确定是否可以控制通话音频,以及实现此目标的良好途径?

我相信对这个问题的最后澄清对开源社区具有重要价值.

谢谢!

Mic*_*ael 11

在某些平台(例如,高通公司的MSM8960和APQ8064)上,将音频注入语音呼叫上行链路在技术上是可行的.支持存在于硬件级别和设备驱动程序级别.但是为了使普通应用程序可以使用该功能,您必须创建一个自定义Android ROM,您已在Java层和Android本机层中添加了所有必需的用户空间部分.

所以简短的回答是:不,作为应用程序开发人员没有标准的方法(如果您使用SDK或NDK则无关紧要).
如果您正在为OEM工作或通过其他方式能够构建和刷新您自己的Android ROM,您可以通过询问您的平台供应商获得所需的信息.


Raj*_*epe 5

这样做非常困难,因为它涉及在Android OS中处理Linux Kernal.

不仅没有API支持,而且也不允许出现安全问题.

作为软件工程领域的专业人员,特别是程序员,我们从不假设任何人在发明方面取得成功,相关项目在项目测试之前是有效的.

在呼叫期间流式传输音频可能会引起智能手机用户和电话服务提供商之间的隐私和安全问题

  • @André,它几乎没有记录,但没有 - 蓝牙传输也通过片上传输工作.你可以谷歌中国MT6575,MT6589和相应的无线电芯片MT6627,MT6627的一些数据表和块方案/图表 - 我怀疑芯片之间的MRGPCM通道是音频传输路径.还有一种称为DAIBT的东西,中国人在某些方案中使用它来指定声音处理部件.更多的是,有些手机甚至不镜像发送到基带的麦克风音频. (3认同)