我可以使用某种本地存储作为getUserMedia用于near-RTC的临时存放位置吗?

时间:2016-01-24 05:19:07

标签: local-storage webrtc getusermedia kurento

我有一个并不完全需要实时通信的用例,但我尽可能接近它以确保我的用户不必在事后继续上传文件。我们的网站允许用户录制我们随后存储在我们服务器上的视频和音频。

我从flash,因为flash,转移到使用Kurento媒体服务器的WebRTC实现。这对于高质量的互联网连接非常有效,但对于连接性差的用户来说相对缺乏。

我在考虑是否可以在送入服务器之前实现一些缓冲区,以便我可以弥补理想的连接性下降。我知道这不是WebRTC的意思,这导致了我是否应该研究另一种解决方案的问题?

欢迎并赞赏任何和所有建议!谢谢!

1 个答案:

答案 0 :(得分:4)

缓冲区不会在低带宽的情况下改变WebRTC的实时特性。例如,使用视频,WebRTC可能会降低帧速率或分辨率以保持同步,但没有人提出降低传送时间(降低实时性)。然而,你的用例是一个有趣的用例。

您可以使用MediaRecorder。它允许您在本地进行记录,然后使用websockets或数据通道将数据作为blob发送到服务器。

这是一个适用于Chrome的小提琴(不幸的是只播放视频)和Firefox:

https://jsfiddle.net/tmwLxjLy

它显示简单的录制,然后在5秒后播放视频。我将把它作为练习来修改它以导致连续的5秒延迟。