5

您好,我处于应用程序的早期阶段,其中一部分我需要将音频从一个设备流式传输到多个设备。到目前为止,我一直在谷歌上寻找最好的解决方案,我发现这两个项目都有问题。

Spydroid http://code.google.com/p/spydroid-ipcamera/ 问题这个问题是它创建了一个仅限于一个连接设备的 rtsp 流。如果我浏览到我的两台计算机上的链接,我会看到两个客户端都在应用程序中连接,但是第二个连接的客户端会立即断开连接,并且应用程序说我的手机不支持此功能。我深入研究了源代码,发现在 Session.java 文件中有 if 语句,上面有注释,说阻止建立两个连接我注释掉了 if 语句,并且 catch 子句在运行它后抓住了我。如果我可以让它与多个连接一起工作,因为它在 3g 上工作,那么这个项目将是完美的。

PttDroid http://code.google.com/p/pttdroid/ 问题这个问题是它允许我需要多个连接,但我只能通过 wifi 让它工作。它在那里的主页上说它可以在 3g 上工作,但只有单播我需要多播超过 3g 和 wifi,我无法让单播在 3g 上工作。

所以我的问题归结为我应该走哪条路,并更多地研究将音频从我的 android 设备流式传输到多台计算机和其他 android 设备。

非常感谢您的帮助!

4

1 回答 1

1

蜂窝网络通常不支持多播数据包。蜂窝路由器根本不路由它们,所以这是一条死胡同。

因此,您需要向多个目的地进行单播,这可能对手机有限的蜂窝带宽造成挑战。即使您可以让它们在同一个设备上运行,您也很可能会因一两个流而在蜂窝带宽上发生争用。(例如,同一文件的多个 Spydroid 流。)

如果我正在构建一个系统来执行此操作,我会考虑设置一个服务器来进行反射。因此,我希望使用 Spydroid 之类的东西将 RTSP 流运行到服务器,然后将其从服务器反射给许多订阅者。这不是一个小项目,但允许您使用更高带宽的服务器向多个用户流式传输。

显然有一个项目在此反射器策略之后进行: https ://code.google.com/p/js4ms/wiki/RTSPMulticastReflector

我根本没有测试过它是否有效,但这至少应该让你开始走上正确的道路。

于 2014-08-16T22:43:48.897 回答