我的架构是[MediaRecorder]:
一台笔记本电脑[广播]将两个视频和两个音频流传输到所有[JavaScript]客户端。另外,我有一个WebSockets连接用于聊天。
服务器[用Node.JS编写]必须:
相关:{{3}}
2017年底,哪种技术对这种通用架构最有意义?
答案 0 :(得分:1)
WebRTC和WebSockets都是一个很好的技术选择。当您构建WebRTC服务时,有两个不同的部分;对等连接和信令服务器。信令服务器处理对等体之间的所有元数据传输(因此它们可以在对等连接进行之前进行通信)。通常,您将拥有用于接收事件的WebSocket连接和用于发送事件的REST API。
听起来你所要求的是媒体服务器。媒体服务器使WebRTC连接到对等到媒体服务器到对等连接,而不是对等连接。由于所有媒体都通过媒体服务器,因此您可以记录所有流量(音频/视频/数据),并且无需在客户端使用MediaRecorder。
对于音频/视频流的单向通信,您不需要在服务器端提供任何特殊支持,这可以通过WebRTC在客户端完成。
关于媒体服务器,我一直在关注https://github.com/versatica/mediasoup/,因为它们似乎被大量使用并维护了很长时间。
答案 1 :(得分:0)
Websockets是一个10年前的概念,WebRTC是相当新的(几年),但在所有现代浏览器中都可用:Chrome,Firefox,Edge。总的来说,我认为WebRTC旨在取代Websockets。现在它已经在浏览器中使用了一年或更长时间,它是一个相当成熟和稳定的解决方案。