首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >iceCandidate在AppRtcDemo中到底是在哪里生成的?

iceCandidate在AppRtcDemo中到底是在哪里生成的?
EN

Stack Overflow用户
提问于 2014-11-11 10:40:47
回答 1查看 824关注 0票数 2

我正在进行webrtc调用,并成功地运行了WEBRTC站点上可用的AppRTCDemo。我已经看过了代码,并坚持了几点:

1:当我输入网址时,它击中了服务器,我得到了类似于的响应:

代码语言:javascript
复制
response return from server{"meta_viewport":"","pc_constraints":"{\"optional\": [{\"googImprovedWifiBwe\": true}]}","opusfec":"true","include_vr_js":"","vsbr":"","audio_receive_codec":"opus\/48000","arbr":"","vrbr":"","vsibr":"","token":"AHRlWroqCeuFFBWs4dLJRahxtwho2ldeH_94M_ZipRkK7aIH3nAiSFfScjb_Opz2LwC9xVeWeQrJkRWQAeTsK5sxdJEPoC3jP8uQXkE23QnSANqoBwsHOM4","initiator":1,"ssr":"","room_key":"95505311","pc_config":"{\"iceServers\": [{\"urls\": \"stun:stun.l.google.com:19302\"}]}","stereo":"false","audio_send_codec":"","turn_url":"https:\/\/computeengineondemand.appspot.com\/turn?username=77294535&key=4080218913","me":"77294535","room_link":"https:\/\/apprtc.appspot.com\/?r=95505311&t=json","error_messages":[],"offer_constraints":"{\"optional\": [], \"mandatory\": {}}","asbr":"","media_constraints":"{\"audio\": true, \"video\": true}"}

在这里,我只想知道他们到底在哪里创建iceServer?在他们的服务器上,或者他们的channel.html文件中是否有任何代码。

有没有任何方法可以在没有服务器的应用程序上生成iceServer?还是IceServer是我们从服务器发送的眩晕/转URL?

关于Channel.html,我也很少有疑问:

channel.html文件到底是如何帮助这个演示运行的?我也经历过这个过程,它调用onOpen()并调用GAECLIENT类方法。

谢谢,

EN

回答 1

Stack Overflow用户

发布于 2014-11-11 15:17:59

无论要使用哪个ice服务器,在构造它时,都会传递给RTCPeerConnection构造函数(对象称为学徒示例的pc )。您可以通过查看pcConfig对象来具体地看到服务器。

一旦创建了连接(在本例中调用启动之前不会完成),就会设置localDescription( RTCSessionDescription对象)。一旦设置好了,WebRTC api将开始在创建对等连接时首次引入的冰服务器上自动收集IceCandidates。一旦创建了新的候选对象,就会触发onicecandidate事件(如果在创建pc对象之后查看该回调函数,则可以看到用于传输候选对象的函数)。

因此,一般步骤如下:

  1. 在创建iceServers对象时设置要收集候选对象的RTCPPeerConnection
  2. 将localDescription设置为您创建的本地RTCSessionDescription对象(通常是通过在对等连接的createOffercreateAnswer函数中设置的成功回调创建的)。
  3. 在构建对等连接时,它将开始根据您设置的服务器自动收集候选服务器,并与每个候选服务器一起触发onicecandidate事件。

现在,专门针对apprtc演示页面,它使用了一个开放的stun服务器stun:stun.l.google.com:19302和一系列封闭的转服务器(托管在Google的云上),这些服务器具有在页面加载时收集的动态凭证。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26862932

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档