小编典典

WebRTC vs Websockets:如果 WebRTC 可以做视频、音频和数据,我为什么需要 Websockets?

all

所以我正在寻找一个允许视频、音频和文本的聊天应用程序。我花了一些时间研究 Websockets 和 WebRTC 来决定使用哪个。由于有很多带有
WebRTC 的视频和音频应用程序,这听起来是一个合理的选择,但我还有其他需要考虑的事情吗?随时分享您的想法。

像:

  • 由于是新的 WebRTC 仅在某些浏览器上可用,而 WebSockets 似乎在更多浏览器中可用。

  • 可扩展性 - Websockets 使用服务器进行会话,WebRTC 似乎是 p2p。

  • 多路复用/多聊天室 - 在 Google+ 环聊中使用,我仍在查看演示应用程序如何实现。

  • 服务器 - Websockets 需要 RedisSessionStore 或 RabbitMQ 才能跨多台机器进行扩展。


阅读 135

收藏
2022-05-05

共1个答案

小编典典

WebRTC 专为视频、音频和任意数据的高性能、高质量通信而设计。换句话说,对于与您描述的完全一样的应用程序。

WebRTC
应用程序需要一种服务,通过该服务它们可以交换网络和媒体元数据,这一过程称为信令。但是,一旦发生信令,视频/音频/数据就会直接在客户端之间进行流式传输,从而避免通过中间服务器进行流式传输的性能成本。

另一方面,WebSocket 是为客户端和服务器之间的双向通信而设计的。可以通过 WebSocket
流式传输音频和视频,但技术和 API 并非天生就设计为像 WebRTC那样高效、强大的流式传输。

正如其他回复所说,WebSocket 可用于信令。

我维护了一个WebRTC
资源
列表:强烈建议您首先查看
2013 Google I/O关于 WebRTC的演示文稿。

2022-05-05