2013-04-03 27 views
3

基本上我有一個媒體服務器,我有多個客戶端在會議中發送一個流並接收多個流(媒體服務器不會混合這些流使它成爲1:1)。我擁有這樣的WebRTC/Chrome附加並可以在1:1場景下交換流,但不清楚是否/如何使用WebRTC進行1:N。重申一下,這不是點對點的X-N,而是發送一個,接收很多。有什麼想法嗎?謝謝。WebRTC能夠向對等體廣播一個本地視頻流,但接收/顯示來自多個遠程對等體的多個視頻流?

+1

你是這個意思嗎? https://googledrive.com/host/0B6GWd_dUUTT8RzVSRVU2MlIxcm8/RTCMultiConnection-v1.1/multi-session-establishment.html –

+0

我需要一個單向雙向音頻流,一個視頻廣播流和多個視頻接收流。目前還不清楚你所做的事情是否允許,但看起來很接近/有趣,我會仔細研究一下,謝謝。 – mark

回答

3

該規範允許在單個RTCPeerConnection接收(發送)多個流。但是,Chrome(我相信)和Firefox目前的實現還沒有啓用。您可以接收多個RTCPeerConnections,因此可能的解決方法是讓您有多個到服務器的RTCPeerConnections,其中一個正在發送,其他則僅接收(createOffer()到(not)的約束)接收音頻和視頻而無需添加MediaStream)。

這將工作類似於規範,除非你負責管理N RTCPeerConnections。

+0

感謝您的回答,我目前正在爲服務器提供多個RTCPeerConnections(也期待ice-lite支持以減少啓動時間)。我正在開發這種方法,它是用於雙向音頻(在HTML音頻元素上,不指定視頻)的一個RTCPC,用於視頻發送的一個RTCPC(不指定音頻)以及用於視頻接收的多個RTCPC(指定沒有音頻)。我很難在MediaConstraints上找到文檔...聽起來像是在暗示某些只發送或僅接收類型的限制...您能指出我正確的方向嗎? – mark

+1

花了這一天的代碼編碼,它似乎正在工作...兩個同時連接兩個對等連接的只接收流,同時雙向音頻。此時不需要任何其他媒體限制。最後一項將做只發送流。 – mark

+0

忘了跟進這個...但是一個只發送流也很好。 – mark

0

您似乎需要webRTC的對等2對等實現。我不知道,但你應該檢查這些:

https://hacks.mozilla.org/2013/03/webrtc-data-channels-for-great-multiplayer/

https://github.com/js-platform/p2p

+0

我目前正在使用RTCPeerConnection(它收集ICE候選人,與服務器進行協商,獲得遠程流等),但我使用通過SDP提供的IP /端口來提供本地流以及接收遠程流。也許你建議我不需要添加本地流,它可以是「遠程唯一」連接? – mark

+0

看起來這似乎是如何在博客中完成的,但服務器只是充當經紀人。然而,我沒有這樣做,實際上想知道更多,如果你實施的東西 – dusual

+0

僅供參考我在這條路上取得了一些成功... 2視頻對等連接都做只接收,以及1雙向音頻對等連接。僅剩下的項目是1個只發送視頻對等連接。 – mark