使用node.js作为WebRTC对等端?

15

有哪些模块可以让node.js作为WebRTC中的对等端使用?与P2P相比,我更喜欢以客户端/服务器方式使用WebRTC,因为它可以不可靠地发送数据包。(也就是说,我不希望TCP通过保证数据包到达和按顺序传递数据来造成巨大的延迟)

如果我必须使用削减版的浏览器页面作为服务器,那或许可以...但这肯定不是最佳选择。Node.js会让事情变得更加顺畅,而且可能更加可靠。

谢谢!


1
可能是Node.js WebRTC客户端的重复问题。 - user
7个回答

3

看一下Licode(WebRTC MCU)的Erizo组件。它有一个流控制器和一个用C++编写的webrtc控制器,带有JS接口。这可能会帮助您得到一些想法。


2

1
有一个WebRTC的C++接口。WebRTC基于libjingle项目,但使用JSEP(Javascript会话建立协议)而不是XMPP用于发送STUN / TURN信息进行NAT隧道。当我一段时间前查看时,这两个项目正在合并的过程中,因此编译/链接它非常麻烦。去年可能已经改进了这一点。
目标是将WebRTC的本机API作为节点模块公开,使用节点插件API并将其打包为npm模块,使其像浏览器API一样工作。跨浏览器polyfill将向您展示它应该如何运行。
有很多酷炫的东西可以做到这一点(通话录音,SIP连接器,.torrent扩展到浏览器等)。我真的鼓励您尝试一下!

0

解决方案是使用 libjinglelicode/erizo。它们都需要编译,但 erizo 提供了 NodeJS 接口。Libjingle 由 Google 创建。

不幸的是,你必须编译每个库,而且没有适用于 Debian、Ubuntu 或其他平台的二进制软件包。


0

-4

2
抱歉,但是WebSockets并不使用与WebRTC相同的协议。感谢您的回答! - user1916428
WebSockets使用TCP。对于WebRTC的类似解决方案,它允许与WebSockets相同的功能,但通过UDP会更加优化。 - Willem

-6

我使用了Node.js和Socket.io,并且已经成功了。

网上有很多教程。


Socket.io 是客户端和服务器之间双向通信的一种方式,但据我所知,它没有使用 WebRTC。此外,Socket.io 只支持基于 TCP 的传输,这正是选择 WebRTC 的原因。 - icktoofay
不涉及媒体传输。 - desperado06

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接