我正在使用 webRTC 创建多用户视频聊天。但是我遇到了 RTCPeerConnection 的问题
在某些情况下,我与 7 个用户聊天,每个人都可以看到其他人的视频,但有时我会收到用户的黑屏。
奇怪的是它是完全随机的,有时一切正常。有时用户会出现黑屏。如果该用户重新登录,则其他屏幕会变黑或一切正常。
我已经检查了对等连接如何工作的流程,这是它对我的工作方式:
启动对等连接的用户:
- kenneth:对等连接创建 main.js:275
- kenneth:添加了远程流的侦听器 main.js:280
- kenneth:侦听器远程流已删除添加 main.js:285
- kenneth:本地流添加到 peerconnection main.js:264
- kenneth:报价创建 main.js:293
- kenneth: 报价发送 main.js:315
- 肯尼斯:收到的答案 main.js:205
- kenneth:添加了侦听器以发送本地 ICE 候选人 main.js:210
- kenneth:从答案 main.js:215 设置的远程描述
- kenneth:添加了远程流 main.js:366
- kenneth:远程 ICE 收到 main.js:218
- kenneth:远程 ICE 添加到 Peerconnection main.js:225
- kenneth:远程 ICE 收到 main.js:218
- kenneth:远程 ICE 添加到 Peerconnection main.js:225
- kenneth:ICE 候选人发送 main.js:340
- kenneth:ICE 候选人发送 main.js:340
- kenneth:ICE 候选人发送 main.js:340
- kenneth:ICE 候选人发送 main.js:340
- kenneth:远程 ICE 收到 main.js:218
- kenneth:远程 ICE 添加到 Peerconnection main.js:225
- kenneth:远程 ICE 收到 main.js:218
- kenneth:远程 ICE 添加到 Peerconnection main.js:225
- kenneth:ICE 候选人发送 main.js:340
- kenneth:ICE 候选人发送 main.js:340
- 肯尼斯:候选人结束 main.js:342
收到报价然后创建答案的用户:
- kennethtest1:收到的报价 main.js:183
- kennethtest1:对等连接创建 main.js:275
- kennethtest1:添加了远程流的侦听器 main.js:280
- kennethtest1:侦听器远程流已删除添加 main.js:285
- kennethtest1:添加了侦听器以发送本地 ICE 候选 main.js:189
- kennethtest1:从offer main.js:194 设置的远程描述
- kennethtest1:本地流添加到 peerconnection main.js:198
- kennethtest1:答案已创建 main.js:301
- kennethtest1:添加了远程流 main.js:366
- kennethtest1:已发送答案 main.js:324
- kennethtest1:ICE 候选发送 main.js:340
- kennethtest1:ICE 候选发送 main.js:340
- kennethtest1:ICE 候选发送 main.js:340
- kennethtest1:ICE 候选发送 main.js:340
- kennethtest1:远程 ICE 收到 main.js:218
- kennethtest1:远程 ICE 添加到 Peerconnection main.js:225
- kennethtest1:远程 ICE 收到 main.js:218
- kennethtest1:远程 ICE 添加到 Peerconnection main.js:225
- kennethtest1:远程 ICE 收到 main.js:218
- kennethtest1:远程 ICE 添加到 Peerconnection main.js:225
- kennethtest1:远程 ICE 收到 main.js:218
- kennethtest1:远程 ICE 添加到 Peerconnection main.js:225
- kennethtest1:候选人结束 main.js:342
- kennethtest1:远程 ICE 收到 main.js:218
- kennethtest1:远程 ICE 添加到 Peerconnection main.js:225
- kennethtest1:远程 ICE 收到 main.js:218
- kennethtest1:远程 ICE 添加到 Peerconnection main.js:225
我还检查了 chrome://webrtc-internals/ 在那里我可以看到对于那个特定的黑屏对等连接,流在那里,但它没有通过它发送任何数据。
任何人都知道为什么有时流不在这里打开?