Don't treat 0 as false (avoid a warning when the receivedPackets or
sentPackets stat is 0, and possibly fixes misinterpreting a remove stream as a local).
This commit is contained in:
parent
ff199a4d78
commit
47bb9439db
|
@ -514,34 +514,33 @@ StatsCollector.prototype.processStatsReport = function () {
|
|||
|
||||
var isDownloadStream = true;
|
||||
var key = 'packetsReceived';
|
||||
if (!getStatValue(now, key))
|
||||
{
|
||||
var packetsNow = getStatValue(now, key);
|
||||
if (typeof packetsNow === 'undefined' || packetsNow === null) {
|
||||
isDownloadStream = false;
|
||||
key = 'packetsSent';
|
||||
if (!getStatValue(now, key))
|
||||
{
|
||||
console.warn("No packetsReceived nor packetSent stat found");
|
||||
packetsNow = getStatValue(now, key);
|
||||
if (typeof packetsNow === 'undefined' || packetsNow === null) {
|
||||
console.warn("No packetsReceived nor packetsSent stat found");
|
||||
continue;
|
||||
}
|
||||
}
|
||||
var packetsNow = getStatValue(now, key);
|
||||
if(!packetsNow || packetsNow < 0)
|
||||
if (!packetsNow || packetsNow < 0)
|
||||
packetsNow = 0;
|
||||
|
||||
var packetsBefore = getStatValue(before, key);
|
||||
if(!packetsBefore || packetsBefore < 0)
|
||||
if (!packetsBefore || packetsBefore < 0)
|
||||
packetsBefore = 0;
|
||||
var packetRate = packetsNow - packetsBefore;
|
||||
if(!packetRate || packetRate < 0)
|
||||
if (!packetRate || packetRate < 0)
|
||||
packetRate = 0;
|
||||
var currentLoss = getStatValue(now, 'packetsLost');
|
||||
if(!currentLoss || currentLoss < 0)
|
||||
if (!currentLoss || currentLoss < 0)
|
||||
currentLoss = 0;
|
||||
var previousLoss = getStatValue(before, 'packetsLost');
|
||||
if(!previousLoss || previousLoss < 0)
|
||||
if (!previousLoss || previousLoss < 0)
|
||||
previousLoss = 0;
|
||||
var lossRate = currentLoss - previousLoss;
|
||||
if(!lossRate || lossRate < 0)
|
||||
if (!lossRate || lossRate < 0)
|
||||
lossRate = 0;
|
||||
var packetsTotal = (packetRate + lossRate);
|
||||
|
||||
|
@ -552,34 +551,26 @@ StatsCollector.prototype.processStatsReport = function () {
|
|||
|
||||
|
||||
var bytesReceived = 0, bytesSent = 0;
|
||||
if(getStatValue(now, "bytesReceived"))
|
||||
{
|
||||
if(getStatValue(now, "bytesReceived")) {
|
||||
bytesReceived = getStatValue(now, "bytesReceived") -
|
||||
getStatValue(before, "bytesReceived");
|
||||
}
|
||||
|
||||
if(getStatValue(now, "bytesSent"))
|
||||
{
|
||||
if(getStatValue(now, "bytesSent")) {
|
||||
bytesSent = getStatValue(now, "bytesSent") -
|
||||
getStatValue(before, "bytesSent");
|
||||
}
|
||||
|
||||
var time = Math.round((now.timestamp - before.timestamp) / 1000);
|
||||
if(bytesReceived <= 0 || time <= 0)
|
||||
{
|
||||
if(bytesReceived <= 0 || time <= 0) {
|
||||
bytesReceived = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
} else {
|
||||
bytesReceived = Math.round(((bytesReceived * 8) / time) / 1000);
|
||||
}
|
||||
|
||||
if(bytesSent <= 0 || time <= 0)
|
||||
{
|
||||
if(bytesSent <= 0 || time <= 0) {
|
||||
bytesSent = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
} else {
|
||||
bytesSent = Math.round(((bytesSent * 8) / time) / 1000);
|
||||
}
|
||||
|
||||
|
@ -602,16 +593,11 @@ StatsCollector.prototype.processStatsReport = function () {
|
|||
}
|
||||
catch(e){/*not supported*/}
|
||||
|
||||
if(resolution.height && resolution.width)
|
||||
{
|
||||
if(resolution.height && resolution.width) {
|
||||
jidStats.setSsrcResolution(ssrc, resolution);
|
||||
}
|
||||
else
|
||||
{
|
||||
} else {
|
||||
jidStats.setSsrcResolution(ssrc, null);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
var self = this;
|
||||
|
@ -622,11 +608,9 @@ StatsCollector.prototype.processStatsReport = function () {
|
|||
var bitrateUpload = 0;
|
||||
var resolutions = {};
|
||||
Object.keys(this.jid2stats).forEach(
|
||||
function (jid)
|
||||
{
|
||||
function (jid) {
|
||||
Object.keys(self.jid2stats[jid].ssrc2Loss).forEach(
|
||||
function (ssrc)
|
||||
{
|
||||
function (ssrc) {
|
||||
var type = "upload";
|
||||
if(self.jid2stats[jid].ssrc2Loss[ssrc].isDownloadStream)
|
||||
type = "download";
|
||||
|
|
Loading…
Reference in New Issue