是否可以在Android中共享音频输入(麦克风)流?

时间:2012-03-18 14:05:35

标签: android audio microphone sharing

我正在编写一个应用程序,作为后台服务记录并分析从麦克风录制的音频。当我的应用程序运行时,我无法使用其他使用麦克风的应用程序(例如电话,语音录制等)。

我的问题是 - 有没有办法在Android中分享麦克风流?也许通过使用NDK?如果没有,是否有可能接收另一个应用需要麦克风的指示(例如BroadcastIntent)?

4 个答案:

答案 0 :(得分:5)

简单答案是“否”,这只是因为音频录制方法是同步的。所以两个或更多的资源不能很好地尝试它。这样做有时可能会强制关闭应用程序。

答案 1 :(得分:1)

我知道这已经过时了,但您可以每隔几分钟杀死/重新激活麦克风连接,以模拟共享的麦克风资源。这是一个未经测试的黑客...

基本上:

  1. 设置计时器,每隔几分钟与麦克风断开连接 希望,如果另一个应用程序试图收集麦克风数据,它可以 同时阻止其他应用程序收集
  2. 尝试重新连接并测试数据
    如果其他应用程序有麦克风并阻止数据,那么你可以 尝试在将来的某个时间重新连接。
  3. 我还没有对此进行测试,但我也需要一个解决方案,所以如果有效,我会发布代码。

答案 2 :(得分:0)

录制音频/视频,而其他应用程序正在运行可能。我在Sony Xperia Z1中完成了这项工作,使用下载的屏幕录像机连续录制视频和通话。但是,我确实认为这是某种故障,因为它在一段时间(大约2个月)后停止记录,并开始显示一个错误,说明麦克风正在被另一个应用程序使用......

答案 3 :(得分:0)