2012-07-25 115 views
5

你好我正處於應用程序的早期階段,我需要將音頻從一個設備流式傳輸到多個設備。我一直在尋找最好的解決方案,直到目前爲止,我發現這兩個項目都存在問題。Android流音頻到其他設備

Spydroid 問題與這一個問題是,它創建其被限定於一個連接的裝置的RTSP流。如果我瀏覽到我的兩臺電腦上的鏈接,我會看到兩個客戶端都連接到應用程序,但第二個連接立即斷開連接,應用程序說我的手機不支持此功能。我深入源代碼並在Session.java文件中發現,如果語句上面有註釋,說明阻止了兩個連接的生成,我將if語句和catch語句在運行後注意到了它。這個項目將是完美的,如果我可以讓它與多個連接一起工作,因爲它工作在3g以上。

PttDroidhttp://code.google.com/p/pttdroid/ 問題這一個問題是,它可以讓我的多個連接,我需要,但我只能得到它通過WiFi工作。它在主頁上說,它可以工作在3g以上,但只有單播我需要多播3g以上和wifi,而且我無法讓單播工作在3G以上。

所以我的問題歸結爲什麼路徑,我應該走下去,並更多地從我的Android設備流式音頻到多臺電腦和其他Android設備。

非常感謝您的幫助!

+0

您是否設法解決此問題? – 2014-08-13 16:58:48

+0

@AlonLevanon不幸的是,我沒有找到太多的解決方案,我嘗試了WIFI Direct,但是當時支持這個的設備太少了。藍牙的問題是,它只支持大約5個左右的設備。我確實得到它最終在約2個手機之間工作,但它非常受歡迎或錯過 – user577732 2014-08-16 19:01:31

回答

1

蜂窩網絡通常不支持多播數據包。蜂窩路由器根本沒有路由它們,所以這是一個死路一條。

因此,您需要對單個目標進行單播,這對於手機的有限蜂窩帶寬可能具有挑戰性。即使可以讓它們耗盡相同的設備,您也很可能會在一兩個數據流中遇到蜂窩帶寬爭用問題。 (例如同一個文件的多個Spydroid流)。

如果我正在構建一個系統來做到這一點,我會考慮設置一個服務器來做反射。所以我會考慮使用類似Spydroid的方法來將RTSP流運行到服務器,然後將其從服務器反射到多個訂戶。這不是一個小項目,但可以讓你使用服務器更高的帶寬流向多個用戶。

有顯然是一個項目在這裏這個反射策略後會: https://code.google.com/p/js4ms/wiki/RTSPMulticastReflector

我沒有測試它在所有知道,如果它的工作原理,但至少應該讓你開始在正確的道路上。

+0

我同意你的看法。我沒有看到任何其他可能(和工作)的解決方案。我用智能手機的熱點做了一些嘗試,但它可以支持不超過3個RTSP不同的客戶端流。 – 2015-09-08 07:04:47