Android在通话中播放声音

Android在通话中播放声音,android,audio,media-player,call,Android,Audio,Media Player,Call,当有人接到电话时,我想从android手机播放音乐。我会演奏音乐,但对方听不到。我如何让另一方听音乐(编码应该是什么,以便音乐播放可以插入麦克风让另一方听)?我得到了关于此功能的混合建议。我使用的是HTC设备,无法在此设备中实现上述功能。此设置因制造商而异。我的代码可能会在其他一些制造商的手机中向侦听器端播放声音 如果你还好奇的话,你不能向另一边玩的原因是Android的硬件通常不会将实际的GSM呼叫流与可用于修改它的软件堆栈的任何部分互连;它所做的是将实际通话数据(麦克风/扬声器)发送到线路后

当有人接到电话时,我想从android手机播放音乐。我会演奏音乐,但对方听不到。我如何让另一方听音乐(编码应该是什么,以便音乐播放可以插入麦克风让另一方听)?

我得到了关于此功能的混合建议。

我使用的是HTC设备,无法在此设备中实现上述功能。此设置因制造商而异。我的代码可能会在其他一些制造商的手机中向侦听器端播放声音

如果你还好奇的话,你不能向另一边玩的原因是Android的硬件通常不会将实际的GSM呼叫流与可用于修改它的软件堆栈的任何部分互连;它所做的是将实际通话数据(麦克风/扬声器)发送到线路后镜像到软件中(允许进行一些控制,如设置麦克风静音、发送DTMFs和挂断通话)

准确的声音路由是在手机芯片中完成的,因此无法对其进行控制;更确切地说,蓝牙音频流在芯片中被解码和镜像(这种技术被称为直接音频接口DAIBT),这有效地提高了延迟和功率效率



一些供应商(目前称为高通公司)正在为某些芯片组(MSM8960,APQ8064)上的GSM呼叫上行链路提供特定于供应商的音频注入方式-请参阅以下答案:

我目前没有代码。也许你可以自己写代码。接收接听电话的意图并开始播放声音文件。在回答这个问题时,我的代码在emulator上正常工作。但它并没有在设备上工作。试试看,这是一个非常简单的代码,听一个意图,然后播放一个声音文件,就是这样。“听一个意图”可以共享一个链接,在哪里阅读它,这样我就可以了解什么是利害攸关的?