【发布时间】:2020-11-01 20:15:20
【问题描述】:
我需要一些帮助。
在网络上设置从我的 WEBCAM 到服务器并返回给多个用户的 LIVE STREAMING 的最佳方式是什么?
基本上我正在尝试创建一个可以支持许多用户的群组视频聊天应用程序。
我不希望它是点对点 webRTC。
我实际上设法使它与 getUserMedia() 一起工作 -> mediaRecorder -> ondataavailable -> 通过 SOCKET.IO 将 blob 块传递给 node.js -> socket.io 将 blob 块发送回其他连接的用户 -> 附加这些块到一个源缓冲区,该缓冲区连接到一个媒体源,该媒体源设置为
上的源 URL它确实奏效了!但它是如此缓慢、滞后和资源密集型。由于这些块以每秒 20 次的速度通过,因此大大减慢了页面速度。我认为您不应该这么快将那么多 blob 传递给 sourceBuffer。只是为了测试,我尝试每 3 秒保存一次 mediaRecordings(所以它不是资源密集型)并将这些 webm blob 传递给 sourceBuffer 但由于某种原因,只有第一个 webm 加载,而其他 webm 没有添加或开始播放。
这种方式不能用于生产应用程序。
这样做的“正确”方法是什么?
如何将视频流从网络摄像头正确传递到 Node.js 服务器?
以及如何将此实时流从 Node.js 服务器流式传输回网络,以便我们可以进行视频群聊?
我有点迷茫。请帮忙。
我使用 HLS 吗?记录RTC?
我是通过 http 还是通过 socket.io 从 Node.js 流式传输?
已经有一些服务可以让你轻松做到这一点,比如 vonage video api tokbox,但那些似乎非常昂贵?
我想通过我自己控制的 Node.js 服务器运行视频流。
最好的方法是什么?
请帮忙。
谢谢
【问题讨论】:
标签: node.js video-streaming webrtc html5-video http-live-streaming