WebRTC:使用 getStats()
WebRTC: use of getStats()
我正在尝试获取 webRTC 应用程序的统计信息以测量 audio/video 流媒体带宽。
我检查了这个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() 与第 n.7 章中的 link 相同。
自从我使用 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
我正在尝试获取 webRTC 应用程序的统计信息以测量 audio/video 流媒体带宽。 我检查了这个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() 与第 n.7 章中的 link 相同。
自从我使用 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