当前位置: 首页 > 知识库问答 >
问题:

WebRTC中与多个对等方共享流的问题?

白灿
2023-03-14

使用最新的铬。据我所知,一切都设置正确。提议/答复。。候选人。。我以为。。。

然而,我注意到一个奇怪的问题。。我在谷歌上搜索。。。发现与我目前注意到的完全相同的问题。。。

https://stackoverflow.com/questions/44157738/webrtc-sharing-one-stream-with-multiple-peers

我还有三个同龄人。我想要的是A看到B和C,B看到A和C,C看到A和B。

只有一个对等方可以看到其他两个对等方,但其他两个对等方只能看到一个。。。顺便说一句,我确认每个对等方都收到了两次关于ADDStream事件的通知,这是正确的。

这就是我所做的。。

>

  • 一旦我得到了流,我就把它存储到我的窗口。本地流。。。

    每当对等连接(因为我支持多个对等,我用字典管理它)进来时,我都会通过peerConnection.addStream(window.localStream)添加这个localStream

    我在peerConnection的视频标签中设置了流。onaddstream。。。

    一旦媒体流处于活动状态并被传输,那么同一流不能同时传输到另一个对等方?

    任何帮助都将不胜感激。

    谢谢

  • 共有2个答案

    严峰
    2023-03-14

    我遇到了同样的问题,最后发现这是因为第三个客户端的sdp和ice候选总是被覆盖,只剩下第三个客户端的单个对等端工作。

    谢财
    2023-03-14

    将同一个流发送到多个对等方应该可以工作。将您的代码与https://webrtc.github.io/samples/src/content/peerconnection/multiple/这说明了如何实现这一点。您的问题听起来可能没有将答案设置在正确的peerconnection上。检查每个连接信号状态和ICE连接状态可以提供进一步的信息。

     类似资料:
    • 问题内容: 请考虑以下代码: 这给出了输出 但是,我希望它能给 ..因为在调用触发方法时h.id已更改为“ B”。 似乎是在启动单独的进程时创建了主机实例的副本,因此原始主机中的更改不会影响该副本。 在我的项目中(当然,要更详细地说明),主机实例字段有时会更改,并且由在单独的进程中运行的代码触发的事件可以访问这些更改很重要。 问题答案: 多处理在不同的 流程中 运行东西。事物在发送时 不被 复制几

    • 我有一个运行在400个TaskManager上的flink应用程序。在1小时的窗口时间内,我会更频繁地获得相同的密钥,比如说,在1500个唯一密钥中,有50个密钥会更频繁地出现。这使得很少有任务管理者单独处理的数量比其他人多。如果390个TaskManager每分钟处理50MB,那么其他10个TaskManager每分钟处理10GB。这使得系统速度非常慢。如果负载很高,我们可以与多个TaskMan

    • javadoc for意味着流管道中的“行为操作”通常必须是无状态的。然而,它所展示的如何不编写管道的示例似乎都涉及并行流。 这在多大程度上适用于顺序流? 我的问题是:我紧张是对的,还是上面的代码值得信任? 假设中的表达式使用了某种共享状态。当使用顺序流时,我们能相信它会正常工作吗?

    • 我知道这是一个非常简单的问题,但由于我是Wildfly的新手,我还没有成功地完成它。 在JBoss 4.2的旧时代,当我想与多个war文件共享一个ejb jar文件时,我只是将ejb jar文件部署到应用服务器上,并在war项目中使用文件“jndi”配置jndi。属性放置在war文件的某个源目录中,如下所示: 现在,在Wildfly 8.1中,这种方法不再有效。我不知道jndi属性文件的内容是否发

    • 我已经找到了一堆关于这个主题的帖子,但是我仍然无法将一个对象从Controller1传递到Controller2。有没有一个完整的教程或一些例子项目这样做? 我已经走了这么远,直到我被卡住了: 国家类 很抱歉这么长的帖子,我试图尽可能完整,否则我永远不会明白...

    • 问题内容: 我想在两个节点实例之间共享由socket.io创建的房间,这些实例已经在使用redis- store,但是无法在不同的节点实例上获取io.sockets.in(ROOM_ID).emit(MESSAGE,DATA); 我正在尝试-实例A- 开阔一些东西,我能够使用 但是我需要从实例B执行类似的广播。 在实例B 上与上面类似,但我无法使用 我的理解是-redisStore会将socket

    • 问题内容: 我正在尝试建立一个共享库。让我们说libabc.so。它使用另一个.so文件,例如lib123.so(/ usr / local / lib中的一个lib)。现在我在我的应用程序中使用共享的liblibabc.so。说我的应用程序。我想知道我应该如何链接这些二进制文件?我不想直接将我的应用程序与lib123.so链接。my- app应该仅与libabc.so链接。我怎样才能做到这一点?

    • AQS定义两种资源共享方式 (1)Exclusive(独占) 只有一个线程能执行,如ReentrantLock。又可分为公平锁和非公平锁: 公平锁:按照线程在队列中的排队顺序,先到者先拿到锁 非公平锁:当线程要获取锁时,无视队列顺序直接去抢锁,谁抢到就是谁的 (2)Share(共享) 多个线程可同时执行,如Semaphore/CountDownLatch。Semaphore、CountDownLa