2016-07-08 35 views
6

Sto cercando di ottenere le statistiche di un'applicazione webRTC per misurare la larghezza di banda audio/video in streaming. Ho controllato questo question e l'ho trovato molto utile; tuttavia, quando cerco di usarlo hoWebRTC: uso di getStats()

TypeError: Not enough arguments to RTCPeerConnection.getStats. 

Penso che sia a causa della nel 2016 qualcosa in WebRTC è cambiato e ora ci sono mediaStreamTracks; tuttavia ho creato il progetto senza mediaStreamTracks e non so come cambiare questa funzione per farlo funzionare.

Avete qualche idea? Grazie per il vostro supporto!

UPDATE:

Il mio invito è

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

e GetStats() è identica a questa link al capitolo n.7.

+0

postale po 'di codice. Soprattutto la tua chiamata di 'getStats()' – KRONWALLED

+2

'getStats()' ha bisogno di un 'mediaStreamTrack' come parametro, se ricordo. –

+0

Domanda aggiornata! P.s: cosa succede se chiamo 'peer.getStats (null, function (...))'? – Diego

risposta

6

stato qualche tempo da quando ho usato WebRTC, problema allora era, Chrome e Firefox implementata in modo diverso (credono ancora fare in modo diverso)

Firefox:

WebRTC scheda statistiche è about:webrtc

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

Chrome:

scheda statistiche webrtc è chrome://webrtc-internals/

peerConnection.getStats(function(stats){ // pass a callback function 

un modo per aggirare questi problemi cross browser sta usando adapter.js

+2

Sì, Firefox lo implementa su [specifica] (https://w3c.github.io/webrtc-stats), Chrome no. Vedi [questa domanda] (https://github.com/webrtc/adapter/issues/5). - Sì, adapter.js aiuta nella convenzione di chiamata, ma nota che non rinominare le chiavi delle statistiche specifiche di Chrome [ancora] (https://github.com/webrtc/adapter/issues/5). – jib

+0

grazie mille, funziona! – Diego