多方peer.js应用程序

2024-01-17

我对 PeerJs 和 WebRTC 是全新的。我有一个 1:1 NodeJS/PeerJS 应用程序在我的远程服务器上运行,效果很好。然而现在我想探索将其扩展到 1:N 模型,其中主机 ID 可以有多个对等点连接到它们,并且每个对等点都可以接收其他每个连接的对等点的音频/视频。我现在可以接受大约 4-5 个参与方的通话,因此网状架构就可以了。将来我将开发基于媒体服务器的架构,以便在同一会话中吸引更多参与者。

目前在我的代码中,如果通话中有超过 2 方,最后加入的一方将踢出前一方。

请问PeerJS库是否可以支持多方视频聊天(4-5个用户就可以了)?如果没有,您能否指导我如何将 1:1 应用程序增强为 1:N 模型?我在网上找不到任何明确的方向。

提前谢谢了 ... :-)


显示您的一些代码将有助于解决您的问题。通过使用干净的WebRTC,你可以实现电话会议,所以我认为你也可以在peerJs中做到这一点。

在通话开始时,您需要调用 getUserMediaonce并获取您的本地流。

var myStream;
navigator.getUserMedia({video: true, audio: true}, function(stream) {
    myStream = stream;
}, function(err) {
    console.log('Failed to get local stream' ,err);
});

所以当你向他们提出要约时,你可以写

var call = peer.call('another-peers-id', myStream);
call.on('stream', function(remoteStream) {
    // Show stream in some <video> element.
});

当对等方收到呼叫时,它会应答

peer.on('call', function(call) {
    call.answer(myStream); // Answer the call with an A/V stream.
    call.on('stream', function(remoteStream) {
      // Show stream in some <video> element.
    });
});

我希望这可以帮助您解决您的问题。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

多方peer.js应用程序 的相关文章

随机推荐

  • 重命名 AWS S3 存储桶中的文件夹的成本

    我想重命名 S3 存储桶中的一个文件夹 我知道重命名将运行一个 PUT 请求 每 1000 个请求花费 1 美分 但是 PUT 请求被定义为 COPY 并且还涉及 GET 我的问题是 当我们重命名 S3 存储桶中的文件夹时 是否涉及将所有子
  • 为什么 Scala 需要重复构造函数? (java.lang.NoSuchMethodException)

    我在 Hadoop 作业中收到此错误 java lang NoSuchMethodException
  • Android Base Activity:基于全局变量,无法从某些Activity中获取

    我现在正在上 Android 课程 所以我对 Android 应用程序开发有点陌生 我对基本活动的第一个假设是它是全局变量 并且它的值可用于所有活动 我发现它可用于我的主要活动 但不适用于此后的任何活动 在基本活动中 我存储对象的 Arra
  • jQuery UI 的星级评定小部件

    我被介绍给星级小部件 http orkans tmp 22web net star rating 用于 jQuery UI 我原来用的是this one http www fyneworks com jquery star rating 两
  • 在 Lucene 中处理相对较小索引文档的大型搜索查询

    我正在开发一个项目 其中我们索引相对较小的文档 句子 并且我们希望使用大型文档作为查询来搜索这些索引 这是一个相对简单的例子 我正在索引文档 docId 1 text back to black 我想使用以下输入进行查询 Released
  • 为什么我不能直接访问对象文字的属性?

    为什么使用下面的语法 a 1 b 2 constructor 是无效的 而 1 2 constructor 已验证 a 1 b 2 constructor不是无效的语法 但它是不明确的 因为 表示一个块 还是一个对象 所以你必须用括号来消除
  • 如何进行嵌套查询?

    有一个表 users 并且有一个字段 informed by id 显示邀请该用户的人的用户 ID 需要创建一个 MySQL 查询 返回包含用户所有字段的行以及显示每个用户邀请了多少人的 informs count 字段 像这样的事情 SE
  • 如何在 Android 中切换方向锁定?

    我想在我的首选项活动中创建复选框 允许用户切换方向更改 在类似的问题中 人们只写关于完整方向锁定 通过重写 onConfigurationChanged 方法或在 AndroidManifest xml 中添加 configChanges
  • Team Build Extensions 2010 中的使用 ANT 构建 Java

    我有一个基本的 C 项目 但我想启动 ANT 构建 编译一些非常基本的 java 代码 并触发 junit 测试 如果 junit 测试失败 我如何从 Team Build 2010 基本上是 TFS 2010 中得知 如果是这样 我的 T
  • 如何在 C++ 标头中声明数组?

    这与其他一些问题有关 例如 this https stackoverflow com questions 34987 how to declare an array of strings in c 以及我的其他一些问题 In 这个问题 ht
  • 验证请求源是来自Internet还是Intranet

    我有在互联网上运行的应用程序 其中也包含一些管理模块 我不想让用户在互联网上访问我的管理模块 我希望来自内联网的请求可以访问管理模块 有没有办法在不开发服务管理组件的新应用程序的情况下控制这个问题 如果您使用 servlet 您可以添加过滤
  • 如何使用 Pyrtd/pythoncom 解决“pywintypes.com_error”?

    我正在尝试使用pyrtd https code google com p pyrtd Python模块用于获取可以通过RTD在Excel中获取的信息 但是 当我尝试运行示例 python 脚本 http code google com p
  • Ionic 无限滚动不适用于所有 Android 设备

    我目前正在开发一个离子应用程序并成功实现了无限滚动功能 它在桌面浏览器和较新的 Android 设备上运行良好 但是 我在运行 Android 4 1 或更低版本的手机上遇到问题 问题 我打开页面 它加载并显示前 20 个项目 效果很好 我
  • Firefox 中的 Slidedown 和 SlideUp 循环错误

    http www queness com post 1047 easy to style jquery drop down menu tutorial comment 7912 http www queness com post 1047
  • hibernate - HQL 连接许多子句

    我一直在阅读 Hibernate 文档 但没有找到任何可以解释如何执行以下操作的内容 我尝试将以下 SQL 代码转换为 HQL SELECT msg cmd FROM Schema Messages AS msg LEFT OUTER JO
  • 使用多个 JSON 对象设置单元格的文本

    我有一个简单的网络服务 可以将一些数据传递到表视图中 并且工作正常 这是我目前拥有的代码 cell detailTextLabel setText item objectForKey Ball 1 正如我所说 这完美地工作并显示球号 例如
  • 我可以将 vjslib.dll 放入应用程序的 /bin 目录中吗?

    我正在进行生产部署 不幸的是 我正在部署到一个严格控制的环境 今晚我不太可能获得运行完整 Visual J 可再发行 EXE 的许可 我们的应用程序当前抛出错误 表示找不到程序集 vjslib dll 我可以将其放入应用程序的垃圾箱中 然后
  • QML TableView从特定单元格获取数据(选定行+特定列)

    我有QMLTableView with QSqlQueryModel 我需要选择任何行并从表的每一列中获取数据以分隔TextField 这是 abonentstable h pragma once include
  • 如何从 URL 中删除网页扩展名? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我想从 URL 中删除网页扩展名 有人给了我 htaccess 的代码 但当我打开重写模块时 它在本地主机上工作 但是当我在 Godaddy 上使用它
  • 多方peer.js应用程序

    我对 PeerJs 和 WebRTC 是全新的 我有一个 1 1 NodeJS PeerJS 应用程序在我的远程服务器上运行 效果很好 然而现在我想探索将其扩展到 1 N 模型 其中主机 ID 可以有多个对等点连接到它们 并且每个对等点都可