是否可以在Android上访问扬声器信号?

音频发送到扬声器以便在Android上播放很容易,但是是否可以获得实际最终数字信号的副本? 假设我有两个运行“MyApp”和“SomeOtherApp”的应用程序。 我的应用程序向扬声器发送音频,但“SomeOtherApp”也是如此。 “SomeOtherApp”不是我的应用程序 – 它是第三方应用程序。 是否有可能获得操作系统播放到扬声器的混合音频信号的副本? 也就是说,音频信号是来自我的app的扬声器信号和来自“SomeOtherApp”的扬声器信号的混合。

总结一下:我正在寻找一种方法来连接低级音频路径(HAL音频流输出 – 混音后!)所以我可以获得“最终”扬声器信号的副本(实时)。 最理想的情况是,我还想加入低级麦克风路径,但现在这不是一个问题。

看起来简短的答案是否定的 。

更长一点是有点 。 并且排序 。 但据我所知,并非如此。 选项1:这可能是尊重隐私的问题。 (不是一个很好的选择)选项2:没有人认为它是必需的,所以没有将它构建到系统中。 选项3:当程序员使用错误的源代码时出现故障的数量是不值得的。

编辑 – 当然,您可以记录输入 。

检查一个谷歌的例子

用法:

应用程序将从Android设备捕获音频并在同一设备上播放; 将立即捕获扬声器上播放

*