我正在尝试获取 webRTC 应用程序的统计信息以测量音频/视频流带宽。 我检查了这个 question我发现它非常有用;但是,当我尝试使用它时,我得到了
TypeError: Not enough arguments to RTCPeerConnection.getStats.
我认为这是因为 2016 年 webRTC 发生了一些变化,现在有了 mediaStreamTracks;但是我在没有使用 mediaStreamTracks 的情况下构建了项目,我不知道如何更改此功能以使其正常工作。
你有什么想法吗? 感谢您的支持!
更新:
我的电话是
peer.pc.onaddstream = function(event) {
peer.remoteVideoEl.setAttribute("id", event.stream.id);
attachMediaStream(peer.remoteVideoEl, event.stream);
remoteVideosContainer.appendChild(peer.remoteVideoEl);
getStats(peer.pc);
};
和 getStats() 与此相同 link在第 7 章。
最佳答案
自从我使用 WebRTC 以来,问题是,chrome 和 firefox 以不同的方式实现它(相信他们仍然以不同的方式实现)
火狐:
webrtc 统计标签是 about:webrtc
peerConnection.getStats(null).then(function(stats){... // returns a promise
Chrome :
webrtc 统计标签是 chrome://webrtc-internals/
peerConnection.getStats(function(stats){ // pass a callback function
规避这些跨浏览器问题的一种方法是使用 adapter.js
关于javascript - WebRTC:使用 getStats(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38263101/