2013-01-21 95 views
1

我的問題是這樣的......Web RTC without Web RTC

我有兩個網站,一個充當「管理員」網站,另一個充當一般「用戶」網站。我需要將「管理員」網站的現場音頻廣播到「用戶」網站的所有客戶端。我需要通過< 1秒的延遲來做到這一點。

一些限制包括:

  • 沒有「用戶」的機器上安裝(的想法是,整個事情坐落在Web上)
  • 如果需要有一個第三方插件,然後Silverlight是首選*

任何幫助,在這裏非常感謝

*我曾嘗試具有Flash客戶端的IceCast,IIS平滑流式處理,Internet廣播,所有這些都給我們提供了大於5秒的延遲。

+0

有更多的因素涉及延遲,如網絡,連接質量,可用帶寬等。協議,服務器和客戶端的選擇只是另一個因素 –

+1

我很欣賞ruda,但已經在機器上測試了上述方法通過本地網絡連接。這使我相信我需要完全重新思考我正在使用的技術。 – JBeagle

+0

這是很好的知道和相關!你應該把它添加到原來的問題! =) –

回答

1

你是否試過像Red5這樣的服務器的Flash?你通常會得到亞秒級的延遲(儘管並不比這少),因爲它是爲實時通信而設計的。 Flex和ActionScript有一個學習曲線,但如果您完全熟悉XAML,則可以從Red5附帶的示例應用程序中快速找到它。

如果沒有太多的客戶端,那麼可以使用兩種實時對等解決方案之一,即基於RTMFP的Flash或基於JSEP/ICE/RTP的WebRTC。如果你能確保所有的客戶都使用Chrome,那麼WebRTC可能是你最好的選擇。如果您可以使用Chrome確保它們不是而不是,那麼Flash就是一個不錯的選擇。 Chrome上的當前Flash Pepper客戶端在處理音頻時是buggy up the wazoo,並且沒有任何修復跡象。 (它不支持回聲消除功能,並且音頻音量可怕地上升和下降。)因此,如果您使用的是Flash,請避開在Chrome上錄製和播放音頻。如果你有超過6個客戶,我不會推薦這兩種方法 - 我認爲音頻流的數量會很快壓倒你的「管理」瀏覽器。最好把它推薦給Red5服務器。

由於更多的原因,Silverlight是一個不好的選擇,因爲我可以計數。我這樣說是一個花了幾年的時間試圖在Silverlight上實現實時通信解決方案的人。不要這樣做。