Ver código fonte

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).
master
Boris Grozev 10 anos atrás
pai
commit
47bb9439db
1 arquivos alterados com 21 adições e 37 exclusões
  1. 21
    37
      modules/statistics/RTPStatsCollector.js

+ 21
- 37
modules/statistics/RTPStatsCollector.js Ver arquivo

@@ -514,34 +514,33 @@ StatsCollector.prototype.processStatsReport = function () {
514 514
 
515 515
         var isDownloadStream = true;
516 516
         var key = 'packetsReceived';
517
-        if (!getStatValue(now, key))
518
-        {
517
+        var packetsNow = getStatValue(now, key);
518
+        if (typeof packetsNow === 'undefined' || packetsNow === null) {
519 519
             isDownloadStream = false;
520 520
             key = 'packetsSent';
521
-            if (!getStatValue(now, key))
522
-            {
523
-                console.warn("No packetsReceived nor packetSent stat found");
521
+            packetsNow = getStatValue(now, key);
522
+            if (typeof packetsNow === 'undefined' || packetsNow === null) {
523
+                console.warn("No packetsReceived nor packetsSent stat found");
524 524
                 continue;
525 525
             }
526 526
         }
527
-        var packetsNow = getStatValue(now, key);
528
-        if(!packetsNow || packetsNow < 0)
527
+        if (!packetsNow || packetsNow < 0)
529 528
             packetsNow = 0;
530 529
 
531 530
         var packetsBefore = getStatValue(before, key);
532
-        if(!packetsBefore || packetsBefore < 0)
531
+        if (!packetsBefore || packetsBefore < 0)
533 532
             packetsBefore = 0;
534 533
         var packetRate = packetsNow - packetsBefore;
535
-        if(!packetRate || packetRate < 0)
534
+        if (!packetRate || packetRate < 0)
536 535
             packetRate = 0;
537 536
         var currentLoss = getStatValue(now, 'packetsLost');
538
-        if(!currentLoss || currentLoss < 0)
537
+        if (!currentLoss || currentLoss < 0)
539 538
             currentLoss = 0;
540 539
         var previousLoss = getStatValue(before, 'packetsLost');
541
-        if(!previousLoss || previousLoss < 0)
540
+        if (!previousLoss || previousLoss < 0)
542 541
             previousLoss = 0;
543 542
         var lossRate = currentLoss - previousLoss;
544
-        if(!lossRate || lossRate < 0)
543
+        if (!lossRate || lossRate < 0)
545 544
             lossRate = 0;
546 545
         var packetsTotal = (packetRate + lossRate);
547 546
 
@@ -552,34 +551,26 @@ StatsCollector.prototype.processStatsReport = function () {
552 551
 
553 552
 
554 553
         var bytesReceived = 0, bytesSent = 0;
555
-        if(getStatValue(now, "bytesReceived"))
556
-        {
554
+        if(getStatValue(now, "bytesReceived")) {
557 555
             bytesReceived = getStatValue(now, "bytesReceived") -
558 556
                 getStatValue(before, "bytesReceived");
559 557
         }
560 558
 
561
-        if(getStatValue(now, "bytesSent"))
562
-        {
559
+        if(getStatValue(now, "bytesSent")) {
563 560
             bytesSent = getStatValue(now, "bytesSent") -
564 561
                 getStatValue(before, "bytesSent");
565 562
         }
566 563
 
567 564
         var time = Math.round((now.timestamp - before.timestamp) / 1000);
568
-        if(bytesReceived <= 0 || time <= 0)
569
-        {
565
+        if(bytesReceived <= 0 || time <= 0) {
570 566
             bytesReceived = 0;
571
-        }
572
-        else
573
-        {
567
+        } else {
574 568
             bytesReceived = Math.round(((bytesReceived * 8) / time) / 1000);
575 569
         }
576 570
 
577
-        if(bytesSent <= 0 || time <= 0)
578
-        {
571
+        if(bytesSent <= 0 || time <= 0) {
579 572
             bytesSent = 0;
580
-        }
581
-        else
582
-        {
573
+        } else {
583 574
             bytesSent = Math.round(((bytesSent * 8) / time) / 1000);
584 575
         }
585 576
 
@@ -602,16 +593,11 @@ StatsCollector.prototype.processStatsReport = function () {
602 593
         }
603 594
         catch(e){/*not supported*/}
604 595
 
605
-        if(resolution.height && resolution.width)
606
-        {
596
+        if(resolution.height && resolution.width) {
607 597
             jidStats.setSsrcResolution(ssrc, resolution);
608
-        }
609
-        else
610
-        {
598
+        } else {
611 599
             jidStats.setSsrcResolution(ssrc, null);
612 600
         }
613
-
614
-
615 601
     }
616 602
 
617 603
     var self = this;
@@ -622,11 +608,9 @@ StatsCollector.prototype.processStatsReport = function () {
622 608
     var bitrateUpload = 0;
623 609
     var resolutions = {};
624 610
     Object.keys(this.jid2stats).forEach(
625
-        function (jid)
626
-        {
611
+        function (jid) {
627 612
             Object.keys(self.jid2stats[jid].ssrc2Loss).forEach(
628
-                function (ssrc)
629
-                {
613
+                function (ssrc) {
630 614
                     var type = "upload";
631 615
                     if(self.jid2stats[jid].ssrc2Loss[ssrc].isDownloadStream)
632 616
                         type = "download";

Carregando…
Cancelar
Salvar