2016-07-08 45 views
6

Bir webRTC app istatistikler ses/video akışı bant genişliğini ölçmek için çalışıyorum. Bu question kontrol ettim ve bunu çok yararlı bulduk; Bunu kullanmaya çalıştığınızda ancak ben almakWebRTC: getStats kullanımı()

TypeError: Not enough arguments to RTCPeerConnection.getStats. 

Ben bunu değiştirdi ve şimdi mediaStreamTracks vardır çünkü WebRTC'de 2016 şeye ait olduğunu düşünüyorum; Ancak, projeyi mediaStreamTracks olmadan oluşturdum ve bu işlevi işe almak için nasıl değiştireceğimi bilmiyorum.

Eğer herhangi bir fikir var mı? Desteğiniz için teşekkürler!

GÜNCELLEME:

Benim çağrı

peer.pc.onaddstream = function(event) { 
     peer.remoteVideoEl.setAttribute("id", event.stream.id); 
     attachMediaStream(peer.remoteVideoEl, event.stream); 
     remoteVideosContainer.appendChild(peer.remoteVideoEl); 
     getStats(peer.pc); 
}; 

ve getStats() bölüm n.7 bu link aynıdır olduğunu. Ben WebRTC'yi kullanılan beri

+0

Yayınla bazı kod kullanıyor. i hatırlayacak olursak Özellikle 'getStats ait çağrı()' – KRONWALLED

+2

'getStats()', parametre olarak bir 'mediaStreamTrack' ihtiyacı var. –

+0

Güncel soru! P.s: “peer.getStats (boş, işlev (...))' yi çağırırsam? – Diego

cevap

6

bazen olmuştur, sorun o zaman oldu krom ve firefox

Firefox (hala farklı yapmak inanmak) farklı şekilde uygulanmaktadır: sekmeyi istatistik webrtc

about:webrtc

peerConnection.getStats(null).then(function(stats){... // returns a promise 
olduğunu

Krom:

webrtc sekmesi chrome://webrtc-internals/

olduğunu istatistik Bu çapraz tarayıcı sorunlarını atlatmak için
peerConnection.getStats(function(stats){ // pass a callback function 

tek yön adapter.js

+2

Evet Firefox [Spec] (https://w3c.github.io/webrtc-stats) bunu uygulayan olamaz, Chrome yapmasa. [Bu soru] bölümüne bakın (https://github.com/webrtc/adapter/issues/5). - Evet, adapter.js çağrıları çağırmaya yardımcı olur, ancak Chrome'a ​​özgü istatistik anahtarlarını [henüz] (https://github.com/webrtc/adapter/issues/5) yeniden adlandırmayacağına dikkat edin. – jib

+0

çok teşekkürler, işe yarıyor! – Diego