WebRTC: использование getStats()

Я пытаюсь получить статистику приложения webRTC для измерения пропускной способности потокового аудио / видео. Я проверил этот вопрос и нашел его очень полезным; однако, когда я пытаюсь использовать его, я получаю

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() идентична этой ссылке в главе 7.

1 ответ

Решение

Когда-то с тех пор, как я использовал WebRTC, проблема была в том, что Chrome и Firefox реализовали его по-разному (полагаю, они по-прежнему делают это по-разному)

Fire Fox:

вкладка статистики webrtc about:webrtc

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

Хром:

вкладка статистики webrtc chrome://webrtc-internals/

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

Один из способов обойти эти кросс-браузерные проблемы - использовать adapter.js

Другие вопросы по тегам