2016-01-24 49 views
5

我有一個用例並不完全需要實時通信,但儘可能接近我的用戶,以確保我的用戶在事實之後不必永遠等待上傳文件。我們的網站允許用戶錄製我們隨後存儲在我們服務器上的視頻和音頻。我可以使用某種本地存儲作爲臨近RTC的getUserMedia臨時存放位置嗎?

因爲閃存,我使用Kurento媒體服務器從Flash移動到WebRTC實現。這對於高質量的互聯網連接來說工作得非常好,但對於連接不好的用戶而言則相對缺乏。

我在想我是否可以在提供服務器之前實現一點緩衝區,這樣我就可以彌補理想的連接性下降。我明白這不是WebRTC的意思,因爲這導致了我是否應該考慮另一種解決方案?

任何和所有的建議,歡迎和讚賞!謝謝!

回答

4

面對低帶寬,緩衝區不會改變WebRTC的實時特性。以視頻爲例,WebRTC可能會降低幀速率或分辨率以保持速度,但沒有人提出降低交付時間(降低實時性)。然而,你的是一個有趣的用例。您可以使用MediaRecorder。它可以讓你在本地進行記錄,然後通過websockets或數據通道將數據作爲斑點發送到服務器。

下面是在Chrome(它僅視頻不幸)和Firefox工作的小提琴:

https://jsfiddle.net/tmwLxjLy

它顯示了簡單的錄音,然後播放視頻5秒後。我會把它作爲一個練習來修改它,導致連續5秒的延遲。

+1

謝謝Jib,這是一個非常棒的迴應!我將調查MediaRecorder。謝謝你的小提琴。 – Ron

+0

有沒有什麼原因可以在檢測到有損網絡時控制此幀速率? –