webrtc 开发之前必须了解的东西
1、onicecandidate 必须写在 setLocalDescription 之前,因为一调用setLocalDescription,立马会产生icecandidate。
2、webrtc 是 peer to peer ,不是peers to peers。A与B 相连,A需要new RTCPeerConnection,B也需要。A再与C相连,A还需要new RTCPeerConnection
3、stun 服务器,是提供打洞的东西,turn服务器是提供数据中转的东西。打洞(Nat类型及穿透)请看我的另一篇博客,webrtc只支持 https和 localhost,所以局内网主机能开视频,另一端(另一台电脑)只能看。
4、火狐报错:xxx failed(需要turn但根本没有turn服务器),还有一种,turn Server appears to be broken:这个是turn服务器限制连接数量,就是说人较多,你挤不上去了。
免费的turn 是http://numb.viagenie.ca,去申请账号密码。
免费的stun : stun:stun.freeswitch.org 、stun.ekiga.net
自己布turn: github 搜 coturn
个人网页:webrtc.web-play.cn,可测试多对多视频。