怎么知道webrtc的数据是走的中继还是走的p2p

前端:android真机+模拟器
服务端:阿里云上建的coturn服务器
使用wireshark抓包,wireshark中音频数据包的sourceaddr和dstaddr是真机和模拟器的地址,没有出现服务器的地址。突然意识到,是否走中继的情况原地址和目标地址都是通信双方?
我想知道怎么判断音频数据是否走了中继?

第1个回答  2022-09-27
想知道webrtc的数据是走的中继还是走的p2p可以咨询ZEGO即构科技,ZEGO即构科技致力于用顶尖云通讯技术创造服务价值,非常值得选择。【点击免费试用,0成本启动】

webrtc优势很大:
1.windows, ios, android全部支持。
2.内置的NetEQ, AudioProcess模块能够更好的保证语音质量, 这是google高价收购的GIPS的解决方案, 很有权威性
3.一整套的解决方案, 从采集,编解码,RTP打包, 流量控制, 音频处理, 多通道混音, 都给于了很好的支持, 并且是开源的代码。现在webrtc还在持续的开发中, 相信依靠google的推动。

想要了解更多关于webrtc的相关信息,推荐咨询ZEGO即构科技。ZEGO即构科技自主研发的高音质语音视频引擎,能够提供实时清晰的多人语音通话独立自研的语音前处理模块(AEC, NS, AGC)能够提供优于同类竞品的处理效果,支持全带语音处理。良好的抖动缓冲、前向纠错和丢帧补偿技术使引擎适应复杂的网络环境,提供低延时清晰流畅的语音视频通话,在较差网络环境中自适应的找到延时与流畅的最佳契合点。官网Storm代理
2023-07-25广告StormProxies是一家国内优质海外HTTP代理商,拥有一个庞大的IP资源池,覆盖200多个地区,IP数量大且匿名度高。其优点还包括超高并发、稳定高效、技术服务等特点,同时提供HTTP、HTTPS以及SOCKS5协议支持。此外,Sto...点击进入详情页本回答由Storm代理提供每天学点Java
2016-11-21·TA获得超过5938个赞知道大有可为答主回答量:采纳率:0%帮助的人:1268万我也去答题访问个人页吐槽, 你的分类错了, 导致不能贴代码。
github:

priologic/easyrtc
webRTC/webRTC.io

自己开发推荐使用priologic/easyrtc

只是玩玩 对于webRTC.io使用简单

npm install webrtc.io

Client
<video id="local" autoplay="autoplay"></video>
<video id="remote" autoplay="autoplay"></video>

<script src="/webrtc.io.js"></script>
<script>

// note: make sure hostname available to all connecting clients
// (ie. probably not `localhost`)
rtc.connect('ws://yourserveraddress:8001');

rtc.createStream({"video": true, "audio":false}, function(stream){
// get local stream for manipulation
rtc.attachStream(stream, 'local');
});

rtc.on('add remote stream', function(stream){
// show the remote video
rtc.attachStream(stream, 'remote');
});

// more rtc callbacks are available
</script>

Server

var webRTC = require('webrtc.io').listen(8001);
//then a bunch of callbacks are available本回答被网友采纳
第2个回答  2019-02-26

你测试的场景是1对1.

简单的说,一个 Peer 发起一个Call. 由于NAT 的缘故,他会先请求 TURN Server 服务器查询自己的公网IP地址。如果有公网IP地址,对方也有公网IP地址,就可以愉快的走P2P了。这个场景信令走了Could上面的TURN Server。建立了链接。而Media Data 没有走Cloud. 这就是你说的走P2P.

如果其中的任何一个Peer没有公网地址,就建立不了链接。会把请求发送给STUN Server. STURN Server 是部署到Cloud上的.他永远有公网IP地址,它是可触答的。而STURN Server是要负责转发media data的。这就是你说的走中继。

那怎么判断呢: chrome 支持日志诊断的,要看日志里面有没有对应的公网IP地址。

你可以看看:

网页链接

还有一片关于WebRTC框架的介绍:

网页链接

相似回答