46

我正在寻找实现, 以将数据从nodeJS 客户端传输到另一个 webRTC 对等点。

所以在我的例子中,nodejs 应用程序不是服务器而是客户端。
这样的节点模块存在吗?

4

9 回答 9

15

我遇到了同样的问题,偶然发现了这两个宝石:

https://github.com/helloIAmPau/node-rtc 遗憾的是它缺少任何文档。

但是 https://github.com/js-platform/node-webrtc 对我来说似乎更可靠。

于 2014-02-03T23:07:55.600 回答
3

simple-peer和怎么样rtc-everywhere

https://github.com/feross/simple-peer

https://github.com/contra/rtc-everywhere

于 2016-03-11T10:58:39.960 回答
2

你应该看看licode。他们在 node.js 之上运行的开源 webrtc 多点视频会议桥。他们的服务器充当 webrtc 客户端,然后将音频/视频桥接到其他 webrtc 客户端。您也许可以重用他们使用 libnice(用于 ICE 协议)和 libsrtp(用于 SRTP 堆栈)的一些 c++ 代码,然后将其包装在您自己的 node.js 模块中以创建成功的 webrtc 客户端。

显然,您不需要他们的大部分代码,但我认为他们的服务器提供了一个很好的 SDP 工作示例,您需要将其发送回浏览器以建立成功的 webrtc 连接。

于 2013-09-19T03:06:43.820 回答
1

节点https://github.com/vmolsa/webrtc-native还有一个 WebRTC 包装器 。

支持数据通道和媒体流。

支持linux、mac和windows。

WebRTC 代码库经常同步。

更新:只有轻量级数据通道实现,支持 linux/mac/windows http://www.meshcommander.com/webrtc

于 2015-11-25T15:04:25.083 回答
0

可以使用 serverless -webrtc 包建立从 node.js 到浏览器的 WebRTC 数据连接,该包使用wrtc 包作为 WebRTC 实现。

不幸的是,当我尝试将 wrtc 模块与 PeerJS 或 EasyRTC 等信号库一起使用时,连接没有建立(错误消息是“ICE 失败”)。如果有人在使用 wrtc 之上的任何高级库方面取得了任何成功,我将不胜感激。

于 2014-12-23T21:35:44.973 回答
0

更新:下面的解决方案实际上并不向服务器提供视频。我不确定最好的(节点)解决方案是什么。在 C++ 中,试试 libJingle。

听起来 webrtc.io 将允许您创建一个对等节点应用程序。在此处查看 github 项目:https ://github.com/webRTC/webRTC.io 。

目前该项目似乎没有超活跃的开发,但它有 100 个分支,并且节点模块现在每月下载 500 次,所以看起来人们很关心。

项目示例代码——客户端

<video id="local" autoplay="autoplay"></video>
<video id="remote" autoplay="autoplay"></video>

<script src="/webrtc.io.js"></script>
<script>

  // note: make sure hostname available to all connecting clients
  // (ie. probably not `localhost`)
  rtc.connect('ws://yourserveraddress:8001');

  rtc.createStream({"video": true, "audio":false}, function(stream){
    // get local stream for manipulation
    rtc.attachStream(stream, 'local');
  });

  rtc.on('add remote stream', function(stream){
    // show the remote video
    rtc.attachStream(stream, 'remote');
  });

  // more rtc callbacks are available
</script>

服务器端

var webRTC = require('webrtc.io').listen(8001);
于 2013-10-02T22:07:16.493 回答
0

解决方案提供从本地到 Web 的视频流。即不需要浏览器捕捉视频,它会将视频广播到客户端浏览器。有一个websocket 示例可以正常工作。

您的挑战实际上是构建和链接 webrtc.node,这一切都在上面的链接中进行了解释。

于 2017-08-17T08:51:47.413 回答
0

也看看这个,

Node.js 的 WebRTC 数据通道 https://github.com/nodertc

于 2021-03-18T04:42:23.307 回答
0

您可能想要使用此实现:https ://github.com/andyet/SimpleWebRTC

我已经将它用于我的项目,并且非常容易集成。

于 2017-12-12T07:02:37.833 回答