从客户端到服务器的视频流:哪个替代使用,websocket 或 webrtc

use*_*817 5 stream video-streaming websocket webrtc

我希望做几个小项目,尝试从客户端到服务器以及从客户端到服务器的多个点的视频和音频流,我有几个问题:

1)我知道使用webrtc从点到点避免服务器中间的硬流传输不是困难的,但是可以使用webrtc将客户端流式传输到服务器(通过websocket这样做存在一些好处,或者webrtc的好处是避免中间通信)...流视频和音频怎么样?

使用 websocket 流式传输视频或音频非常简单,但我找不到有关使用 webrtc 流式传输客户端 - 服务器的任何经验。

2)关于将视频流式传输到多个点怎么样,我知道最近有一些 webrtc 实验,因为最初这是不可能的,现在:当它用于 1 到多个点时,webrtc 性能会降低?...将是一个更好的主意流式传输到服务器(也许使用 webrtc)然后使用 websockets 流式传输到几个点??。

非常感谢,请不要粗鲁,我的问题不是主观的或比较两种技术,更多的是了解哪些是限制以及我可以在哪里使用每种技术......谢谢!

Mar*_*S95 0

WebRTC 是为浏览器设计的。你说得对:

或者webrtc的好处是避免中间通信

它是专门为浏览器设计的。您可以连接到您的服务器,但它必须有一个 UI(带有 GUI 的 ubuntu 服务器),并安装一个浏览器(但我猜这不是您想要的)。除此之外,除了 websocket 之外,没有其他方法可以流式传输到您的服务器。

根据另一个答案,可以从支持 RTC 的服务器进行流式传输

关于多个流,这很难。我回答了有关使用 webrtc 作为多个点对点的问题。也许这就是您可以做的,但需要一个良好的代码来管理谁应连接到谁,并链接您的用户。在这种情况下,服务器是最好的(如果你想要浏览器兼容性,websockets 比 webRTC 得到更多支持,甚至 IE 现在也支持它们(?!?!)。

你可能想要一个结论:

  • 减少服务器负载,点对点:webRTC
  • 多人连接,例如:带有中间服务器的 WebSocket。

请注意,webRTC 需要一些数据交换才能启动。您可以使用 Node.js 中的 websocket 服务器轻松完成此操作。

希望这对您的开发过程有进一步的帮助,我希望听到您的意见,您将使用什么样的解决方案!