javascript-WebRTC视频会议(多对多)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript-WebRTC视频会议(多对多),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2181字,纯文字阅读大概需要4分钟。
内容图文
![javascript-WebRTC视频会议(多对多)](/upload/InfoBanner/zyjiaocheng/690/0c42b25002354a05857d25fd81cec4ee.jpg)
我将要使用webRTC socket.io node.js构建视频会议系统,所以我已经阅读了这本书,作为西蒙·彼得罗·罗曼诺(Simon Pietro Romano)的“与webRTC进行实时通信”的起点,我已经读完了,我将运行该系统超过100 Mbps的本地网络,因此我将使用网状网络拓扑,因为带宽在这里不成问题,我不想着重于此,我只是一个与许多用户合作的简单问题,尤其是在使用这些功能时:
var pc // PeerConnection Object
pc.onaddstream = ...//for receiving stream from remote party
pc.setRemoteDescription()...//for setting .sdp file from remote party
我知道我必须在每个对等方之间建立对等连接,但是让我们假设我有3个用户:A,B和C.
A将成为房间发起人,然后B加入房间,这里A向B发送要约并从B收到答案,即setRemoteDescription(answerB)和B setRemoteDescription(offA),但是当C加入房间时,A和B将是其发起者,因此他们两个都将向C发送要约,而C将向他们发送答案,这是我的困惑:
当C首次从A收到要约时,这是C setRemoteDescription(offerA),但是当从B收到要约时,这是C setRemoteDescription(offerB),我在这里设置一个新值并丢失了A的前一个要约,这个过程仅仅是是临时的吗?C不再需要A报价了吗?,我知道此sdp文件仅包含网络浏览器媒体信息.我对onaddstream也有相同的疑问,此过程是否会自动从一个对等方然后从另一个对等方捕获流?,A首先捕获B的流,而最后一个加入房间时从C捕获第二个流? ?.
另一方面,addIceCandidate只是将远程候选者添加到每个对等方,因此本地对等方拥有远程对等方路由,它永远不会丢失远程对等方路由,我想,对吗?
我找到了有关webRTC视频会议的源代码,并且我发现onaddstream和setRemoteDescription就像临时功能一样,一旦对等体之间的连接被设置,它们就不再是必需的了,我不知道,也许我错了.
提前致谢.
解决方法:
When C first receives offer from A, this is C
setRemoteDescription(offerA), but when receiving offer from B, this is
C setRemoteDescription(offerB), I am setting a new value here and
losing the previous offer from A, is this procedure just temporary?,
isn’t C going to need the A offer anymore?
您需要在客户端与每个其他参与者建立对等连接(pc),您将执行以下操作:
socket.on('offer', function(from, data) {
users[from].pc.setRemoteDescription(new RTCSessionDescription(data));
// create answer..
});
请注意,节点服务器正在发送报价以及正在发送报价的用户的ID.同样,用户将包含每个房间参与者的条目及其对PC的引用.您将把每个参与者的远程描述添加到他们自己的pc中.
互联网上有很多例子,我的网站是http://github.com/jconde/euphony :)
内容总结
以上是互联网集市为您收集整理的javascript-WebRTC视频会议(多对多)全部内容,希望文章能够帮你解决javascript-WebRTC视频会议(多对多)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。