@webex/internal-media-core 2.14.3 → 2.14.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.js +85 -28
- package/dist/esm/index.js +85 -28
- package/dist/types/StatsAnalyzer/StatsAnalyzer.d.ts.map +1 -1
- package/dist/types/StatsAnalyzer/constants.d.ts +20 -0
- package/dist/types/StatsAnalyzer/constants.d.ts.map +1 -1
- package/dist/types/StatsAnalyzer/utils.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/cjs/index.js
CHANGED
|
@@ -17634,7 +17634,12 @@ var emptyAudioReceive = {
|
|
|
17634
17634
|
srtpUnprotectErrors: 0,
|
|
17635
17635
|
stunBitrate: 0,
|
|
17636
17636
|
stunPackets: 0,
|
|
17637
|
-
transportType: 'UDP'
|
|
17637
|
+
transportType: 'UDP',
|
|
17638
|
+
mediaPacketSize: {
|
|
17639
|
+
meanRtpPacketSize: 0,
|
|
17640
|
+
maxRtpPacketSize: 0,
|
|
17641
|
+
minRtpPacketSize: 0
|
|
17642
|
+
}
|
|
17638
17643
|
},
|
|
17639
17644
|
streams: []
|
|
17640
17645
|
};
|
|
@@ -17687,7 +17692,12 @@ var emptyAudioTransmit = {
|
|
|
17687
17692
|
rtxPackets: 0,
|
|
17688
17693
|
stunBitrate: 0,
|
|
17689
17694
|
stunPackets: 0,
|
|
17690
|
-
transportType: 'UDP'
|
|
17695
|
+
transportType: 'UDP',
|
|
17696
|
+
mediaPacketSize: {
|
|
17697
|
+
meanRtpPacketSize: 0,
|
|
17698
|
+
maxRtpPacketSize: 0,
|
|
17699
|
+
minRtpPacketSize: 0
|
|
17700
|
+
}
|
|
17691
17701
|
},
|
|
17692
17702
|
streams: []
|
|
17693
17703
|
};
|
|
@@ -17732,7 +17742,12 @@ var emptyVideoReceive = {
|
|
|
17732
17742
|
srtpUnprotectErrors: 0,
|
|
17733
17743
|
stunBitrate: 0,
|
|
17734
17744
|
stunPackets: 0,
|
|
17735
|
-
transportType: 'UDP'
|
|
17745
|
+
transportType: 'UDP',
|
|
17746
|
+
mediaPacketSize: {
|
|
17747
|
+
meanRtpPacketSize: 0,
|
|
17748
|
+
maxRtpPacketSize: 0,
|
|
17749
|
+
minRtpPacketSize: 0
|
|
17750
|
+
}
|
|
17736
17751
|
},
|
|
17737
17752
|
streams: []
|
|
17738
17753
|
};
|
|
@@ -17797,7 +17812,12 @@ var emptyVideoTransmit = {
|
|
|
17797
17812
|
rtxPackets: 0,
|
|
17798
17813
|
stunBitrate: 0,
|
|
17799
17814
|
stunPackets: 0,
|
|
17800
|
-
transportType: 'UDP'
|
|
17815
|
+
transportType: 'UDP',
|
|
17816
|
+
mediaPacketSize: {
|
|
17817
|
+
meanRtpPacketSize: 0,
|
|
17818
|
+
maxRtpPacketSize: 0,
|
|
17819
|
+
minRtpPacketSize: 0
|
|
17820
|
+
}
|
|
17801
17821
|
},
|
|
17802
17822
|
streams: []
|
|
17803
17823
|
};
|
|
@@ -17892,6 +17912,14 @@ var calculateAudioReceiverConcealedFrames = (statsResults, mediaType, lastConcea
|
|
|
17892
17912
|
var silentConcealedSamplesDelta = silentConcealedSamples - lastSilentConcealedSamples;
|
|
17893
17913
|
return samplesToMilliseconds(concealedSamplesDelta - silentConcealedSamplesDelta, clockRate);
|
|
17894
17914
|
};
|
|
17915
|
+
var getMediaPacketSizeInfo = meanRtpPacketSize => {
|
|
17916
|
+
meanRtpPacketSize = meanRtpPacketSize.filter(size => size > 0);
|
|
17917
|
+
return {
|
|
17918
|
+
meanRtpPacketSize: Math.round(mean(meanRtpPacketSize)),
|
|
17919
|
+
maxRtpPacketSize: Math.round(Math.max(...meanRtpPacketSize)) || 0,
|
|
17920
|
+
minRtpPacketSize: Math.round(Math.min(...meanRtpPacketSize)) || 0
|
|
17921
|
+
};
|
|
17922
|
+
};
|
|
17895
17923
|
var getAudioReceiverMqa = _ref => {
|
|
17896
17924
|
var {
|
|
17897
17925
|
audioReceiver,
|
|
@@ -17931,9 +17959,13 @@ var getAudioReceiverMqa = _ref => {
|
|
|
17931
17959
|
audioReceiver.common.fecPackets = totalFecPacketsReceived - lastFecPacketsReceived;
|
|
17932
17960
|
audioReceiver.common.rtpRecovered = fecRecovered;
|
|
17933
17961
|
audioReceiver.common.rtpBitrate = (totalBytesReceived - lastBytesReceived) * 8 / 60 || 0;
|
|
17962
|
+
if (mediaTypeKey) {
|
|
17963
|
+
var _statsResults$mediaTy2;
|
|
17964
|
+
audioReceiver.common.mediaPacketSize = getMediaPacketSizeInfo(((_statsResults$mediaTy2 = statsResults[mediaTypeKey]) === null || _statsResults$mediaTy2 === void 0 ? void 0 : _statsResults$mediaTy2[sendrecvType].meanRtpPacketSize) || []);
|
|
17965
|
+
}
|
|
17934
17966
|
};
|
|
17935
17967
|
var getAudioReceiverStreamMqa = _ref2 => {
|
|
17936
|
-
var _lastMqaDataSent$medi, _lastMqaDataSent$medi2, _lastMqaDataSent$medi3, _lastMqaDataSent$medi4, _lastMqaDataSent$medi5, _lastMqaDataSent$medi6, _lastMqaDataSent$medi7, _lastMqaDataSent$medi8, _lastMqaDataSent$medi9, _statsResults$
|
|
17968
|
+
var _lastMqaDataSent$medi, _lastMqaDataSent$medi2, _lastMqaDataSent$medi3, _lastMqaDataSent$medi4, _lastMqaDataSent$medi5, _lastMqaDataSent$medi6, _lastMqaDataSent$medi7, _lastMqaDataSent$medi8, _lastMqaDataSent$medi9, _statsResults$mediaTy3, _statsResults$mediaTy4;
|
|
17937
17969
|
var {
|
|
17938
17970
|
audioReceiverStream,
|
|
17939
17971
|
statsResults,
|
|
@@ -17966,8 +17998,8 @@ var getAudioReceiverStreamMqa = _ref2 => {
|
|
|
17966
17998
|
audioReceiverStream.common.framesReceived = statsResults[mediaType][sendrecvType].totalSamplesReceived - lastSamplesReceived || 0;
|
|
17967
17999
|
audioReceiverStream.common.concealedFrames = calculateAudioReceiverConcealedFrames(statsResults, mediaType, lastConcealedSamples, lastSilentConcealedSamples);
|
|
17968
18000
|
audioReceiverStream.common.receivedBitrate = (statsResults[mediaType][sendrecvType].totalBytesReceived - lastBytesReceived) * 8 / 60 || 0;
|
|
17969
|
-
audioReceiverStream.common.requestedBitrate = (_statsResults$
|
|
17970
|
-
audioReceiverStream.common.requestedFrameRate = (_statsResults$
|
|
18001
|
+
audioReceiverStream.common.requestedBitrate = (_statsResults$mediaTy3 = statsResults[mediaType][sendrecvType].requestedBitrate) !== null && _statsResults$mediaTy3 !== void 0 ? _statsResults$mediaTy3 : -1;
|
|
18002
|
+
audioReceiverStream.common.requestedFrameRate = (_statsResults$mediaTy4 = statsResults[mediaType][sendrecvType].requestedFrameRate) !== null && _statsResults$mediaTy4 !== void 0 ? _statsResults$mediaTy4 : -1;
|
|
17971
18003
|
};
|
|
17972
18004
|
var getAudioSenderMqa = _ref3 => {
|
|
17973
18005
|
var {
|
|
@@ -17988,8 +18020,8 @@ var getAudioSenderMqa = _ref3 => {
|
|
|
17988
18020
|
var meanRoundTripTime = Object.keys(statsResults).filter(mt => mt.includes(baseMediaType)).reduce((acc, mt) => acc.concat(statsResults[mt][sendrecvType].meanRoundTripTime), []);
|
|
17989
18021
|
var mediaTypeKey = Object.keys(statsResults).find(mediaType => mediaType.includes(baseMediaType));
|
|
17990
18022
|
if (mediaTypeKey) {
|
|
17991
|
-
var _statsResults$
|
|
17992
|
-
audioSender.common.common.direction = ((_statsResults$
|
|
18023
|
+
var _statsResults$mediaTy5;
|
|
18024
|
+
audioSender.common.common.direction = ((_statsResults$mediaTy5 = statsResults[mediaTypeKey]) === null || _statsResults$mediaTy5 === void 0 ? void 0 : _statsResults$mediaTy5.direction) || 'inactive';
|
|
17993
18025
|
} else {
|
|
17994
18026
|
audioSender.common.common.direction = 'inactive';
|
|
17995
18027
|
}
|
|
@@ -18007,9 +18039,13 @@ var getAudioSenderMqa = _ref3 => {
|
|
|
18007
18039
|
audioSender.common.roundTripTime = audioSender.common.maxRoundTripTime;
|
|
18008
18040
|
var totalBytesSentInaMin = getTotalValueFromBaseType(statsResults, sendrecvType, baseMediaType, 'totalBytesSent') - getTotalValueFromBaseType(lastMqaDataSent, sendrecvType, baseMediaType, 'totalBytesSent');
|
|
18009
18041
|
audioSender.common.rtpBitrate = totalBytesSentInaMin ? totalBytesSentInaMin * 8 / 60 : 0;
|
|
18042
|
+
if (mediaTypeKey) {
|
|
18043
|
+
var _statsResults$mediaTy6;
|
|
18044
|
+
audioSender.common.mediaPacketSize = getMediaPacketSizeInfo(((_statsResults$mediaTy6 = statsResults[mediaTypeKey]) === null || _statsResults$mediaTy6 === void 0 ? void 0 : _statsResults$mediaTy6[sendrecvType].meanRtpPacketSize) || []);
|
|
18045
|
+
}
|
|
18010
18046
|
};
|
|
18011
18047
|
var getAudioSenderStreamMqa = _ref4 => {
|
|
18012
|
-
var _lastMqaDataSent$medi10, _lastMqaDataSent$medi11, _lastMqaDataSent$medi12, _lastMqaDataSent$medi13, _statsResults$
|
|
18048
|
+
var _lastMqaDataSent$medi10, _lastMqaDataSent$medi11, _lastMqaDataSent$medi12, _lastMqaDataSent$medi13, _statsResults$mediaTy7, _statsResults$mediaTy8;
|
|
18013
18049
|
var {
|
|
18014
18050
|
audioSenderStream,
|
|
18015
18051
|
statsResults,
|
|
@@ -18032,8 +18068,8 @@ var getAudioSenderStreamMqa = _ref4 => {
|
|
|
18032
18068
|
audioSenderStream.common.transmittedBitrate = totalBytesSentInaMin ? totalBytesSentInaMin * 8 / 60 : 0;
|
|
18033
18069
|
audioSenderStream.transmittedKeyFrames = statsResults[mediaType][sendrecvType].totalKeyFramesEncoded - lastFramesEncoded || 0;
|
|
18034
18070
|
audioSenderStream.requestedKeyFrames = statsResults[mediaType][sendrecvType].totalFirCount - lastFirCount || 0;
|
|
18035
|
-
audioSenderStream.common.requestedBitrate = (_statsResults$
|
|
18036
|
-
var lastUsedEffect = (_statsResults$
|
|
18071
|
+
audioSenderStream.common.requestedBitrate = (_statsResults$mediaTy7 = statsResults[mediaType][sendrecvType].requestedBitrate) !== null && _statsResults$mediaTy7 !== void 0 ? _statsResults$mediaTy7 : -1;
|
|
18072
|
+
var lastUsedEffect = (_statsResults$mediaTy8 = statsResults[mediaType][sendrecvType]) === null || _statsResults$mediaTy8 === void 0 ? void 0 : _statsResults$mediaTy8.effect;
|
|
18037
18073
|
var mode = NOISE_REDUCTION_MODE.NONE;
|
|
18038
18074
|
if ((lastUsedEffect === null || lastUsedEffect === void 0 ? void 0 : lastUsedEffect.noiseReductionMode) in NOISE_REDUCTION_MODE) {
|
|
18039
18075
|
mode = NOISE_REDUCTION_MODE[lastUsedEffect.noiseReductionMode];
|
|
@@ -18063,8 +18099,8 @@ var getVideoReceiverMqa = _ref5 => {
|
|
|
18063
18099
|
var totalRtxBytesReceived = getTotalValue('totalRtxBytesReceived');
|
|
18064
18100
|
var mediaTypeKey = Object.keys(statsResults).find(mediaType => mediaType.includes(baseMediaType));
|
|
18065
18101
|
if (mediaTypeKey) {
|
|
18066
|
-
var _statsResults$
|
|
18067
|
-
videoReceiver.common.common.direction = ((_statsResults$
|
|
18102
|
+
var _statsResults$mediaTy9;
|
|
18103
|
+
videoReceiver.common.common.direction = ((_statsResults$mediaTy9 = statsResults[mediaTypeKey]) === null || _statsResults$mediaTy9 === void 0 ? void 0 : _statsResults$mediaTy9.direction) || 'inactive';
|
|
18068
18104
|
} else {
|
|
18069
18105
|
videoReceiver.common.common.direction = 'inactive';
|
|
18070
18106
|
}
|
|
@@ -18080,9 +18116,13 @@ var getVideoReceiverMqa = _ref5 => {
|
|
|
18080
18116
|
videoReceiver.common.rtpBitrate = totalBytesReceivedInaMin ? totalBytesReceivedInaMin * 8 / 60 : 0;
|
|
18081
18117
|
videoReceiver.common.rtxPackets = totalRtxPacketsReceived - lastRtxPacketsReceived;
|
|
18082
18118
|
videoReceiver.common.rtxBitrate = totalRtxBytesReceivedInaMin ? totalRtxBytesReceivedInaMin * 8 / 60 : 0;
|
|
18119
|
+
if (mediaTypeKey) {
|
|
18120
|
+
var _statsResults$mediaTy10;
|
|
18121
|
+
videoReceiver.common.mediaPacketSize = getMediaPacketSizeInfo(((_statsResults$mediaTy10 = statsResults[mediaTypeKey]) === null || _statsResults$mediaTy10 === void 0 ? void 0 : _statsResults$mediaTy10[sendrecvType].meanRtpPacketSize) || []);
|
|
18122
|
+
}
|
|
18083
18123
|
};
|
|
18084
18124
|
var getVideoReceiverStreamMqa = _ref6 => {
|
|
18085
|
-
var _lastMqaDataSent$medi14, _lastMqaDataSent$medi15, _lastMqaDataSent$medi16, _lastMqaDataSent$medi17, _lastMqaDataSent$medi18, _lastMqaDataSent$medi19, _lastMqaDataSent$medi20, _lastMqaDataSent$medi21, _statsResults$
|
|
18125
|
+
var _lastMqaDataSent$medi14, _lastMqaDataSent$medi15, _lastMqaDataSent$medi16, _lastMqaDataSent$medi17, _lastMqaDataSent$medi18, _lastMqaDataSent$medi19, _lastMqaDataSent$medi20, _lastMqaDataSent$medi21, _statsResults$mediaTy11, _statsResults$mediaTy12, _statsResults$mediaTy13, _statsResults$mediaTy14, _statsResults$mediaTy15;
|
|
18086
18126
|
var {
|
|
18087
18127
|
videoReceiverStream,
|
|
18088
18128
|
statsResults,
|
|
@@ -18121,10 +18161,10 @@ var getVideoReceiverStreamMqa = _ref6 => {
|
|
|
18121
18161
|
videoReceiverStream.receivedFrameSize = videoReceiverStream.receivedHeight * videoReceiverStream.receivedWidth / 256;
|
|
18122
18162
|
videoReceiverStream.receivedKeyFrames = statsResults[mediaType][sendrecvType].keyFramesDecoded - lastKeyFramesDecoded || 0;
|
|
18123
18163
|
videoReceiverStream.requestedKeyFrames = statsResults[mediaType][sendrecvType].totalPliCount - lastPliCount || 0;
|
|
18124
|
-
videoReceiverStream.isActiveSpeaker = statsResults[mediaType][sendrecvType].isActiveSpeaker || ((_statsResults$
|
|
18125
|
-
videoReceiverStream.common.requestedBitrate = (_statsResults$
|
|
18126
|
-
videoReceiverStream.requestedFrameSize = (_statsResults$
|
|
18127
|
-
videoReceiverStream.common.requestedFrameRate = (_statsResults$
|
|
18164
|
+
videoReceiverStream.isActiveSpeaker = statsResults[mediaType][sendrecvType].isActiveSpeaker || ((_statsResults$mediaTy11 = statsResults[mediaType][sendrecvType].lastActiveSpeakerTimestamp) !== null && _statsResults$mediaTy11 !== void 0 ? _statsResults$mediaTy11 : 0) > 0 && performance.now() + performance.timeOrigin - ((_statsResults$mediaTy12 = statsResults[mediaType][sendrecvType].lastActiveSpeakerTimestamp) !== null && _statsResults$mediaTy12 !== void 0 ? _statsResults$mediaTy12 : 0) < MQA_INTERVAL;
|
|
18165
|
+
videoReceiverStream.common.requestedBitrate = (_statsResults$mediaTy13 = statsResults[mediaType][sendrecvType].requestedBitrate) !== null && _statsResults$mediaTy13 !== void 0 ? _statsResults$mediaTy13 : -1;
|
|
18166
|
+
videoReceiverStream.requestedFrameSize = (_statsResults$mediaTy14 = statsResults[mediaType][sendrecvType].requestedFrameSize) !== null && _statsResults$mediaTy14 !== void 0 ? _statsResults$mediaTy14 : -1;
|
|
18167
|
+
videoReceiverStream.common.requestedFrameRate = (_statsResults$mediaTy15 = statsResults[mediaType][sendrecvType].requestedFrameRate) !== null && _statsResults$mediaTy15 !== void 0 ? _statsResults$mediaTy15 : -1;
|
|
18128
18168
|
};
|
|
18129
18169
|
var getVideoSenderMqa = _ref7 => {
|
|
18130
18170
|
var {
|
|
@@ -18149,8 +18189,8 @@ var getVideoSenderMqa = _ref7 => {
|
|
|
18149
18189
|
var totalRtxBytesSent = getTotalValue('totalRtxBytesSent');
|
|
18150
18190
|
var mediaTypeKey = Object.keys(statsResults).find(mediaType => mediaType.includes(baseMediaType));
|
|
18151
18191
|
if (mediaTypeKey) {
|
|
18152
|
-
var _statsResults$
|
|
18153
|
-
videoSender.common.common.direction = ((_statsResults$
|
|
18192
|
+
var _statsResults$mediaTy16;
|
|
18193
|
+
videoSender.common.common.direction = ((_statsResults$mediaTy16 = statsResults[mediaTypeKey]) === null || _statsResults$mediaTy16 === void 0 ? void 0 : _statsResults$mediaTy16.direction) || 'inactive';
|
|
18154
18194
|
} else {
|
|
18155
18195
|
videoSender.common.common.direction = 'inactive';
|
|
18156
18196
|
}
|
|
@@ -18173,9 +18213,13 @@ var getVideoSenderMqa = _ref7 => {
|
|
|
18173
18213
|
videoSender.common.rtpBitrate = totalBytesSentInaMin ? totalBytesSentInaMin * 8 / 60 : 0;
|
|
18174
18214
|
videoSender.common.rtxPackets = totalRtxPacketsSent - lastRtxPacketsSent;
|
|
18175
18215
|
videoSender.common.rtxBitrate = totalRtxBytesSentInaMin ? totalRtxBytesSentInaMin * 8 / 60 : 0;
|
|
18216
|
+
if (mediaTypeKey) {
|
|
18217
|
+
var _statsResults$mediaTy17;
|
|
18218
|
+
videoSender.common.mediaPacketSize = getMediaPacketSizeInfo(((_statsResults$mediaTy17 = statsResults[mediaTypeKey]) === null || _statsResults$mediaTy17 === void 0 ? void 0 : _statsResults$mediaTy17[sendrecvType].meanRtpPacketSize) || []);
|
|
18219
|
+
}
|
|
18176
18220
|
};
|
|
18177
18221
|
var getVideoSenderStreamMqa = _ref8 => {
|
|
18178
|
-
var _lastMqaDataSent$medi22, _lastMqaDataSent$medi23, _lastMqaDataSent$medi24, _lastMqaDataSent$medi25, _lastMqaDataSent$medi26, _statsResults$
|
|
18222
|
+
var _lastMqaDataSent$medi22, _lastMqaDataSent$medi23, _lastMqaDataSent$medi24, _lastMqaDataSent$medi25, _lastMqaDataSent$medi26, _statsResults$mediaTy18, _statsResults$mediaTy19, _statsResults$mediaTy20;
|
|
18179
18223
|
var {
|
|
18180
18224
|
videoSenderStream,
|
|
18181
18225
|
statsResults,
|
|
@@ -18204,9 +18248,9 @@ var getVideoSenderStreamMqa = _ref8 => {
|
|
|
18204
18248
|
videoSenderStream.transmittedHeight = statsResults[mediaType][sendrecvType].height || 0;
|
|
18205
18249
|
videoSenderStream.transmittedWidth = statsResults[mediaType][sendrecvType].width || 0;
|
|
18206
18250
|
videoSenderStream.transmittedFrameSize = videoSenderStream.transmittedHeight * videoSenderStream.transmittedWidth / 256;
|
|
18207
|
-
videoSenderStream.common.requestedBitrate = (_statsResults$
|
|
18208
|
-
videoSenderStream.requestedFrameSize = (_statsResults$
|
|
18209
|
-
var lastUsedEffect = (_statsResults$
|
|
18251
|
+
videoSenderStream.common.requestedBitrate = (_statsResults$mediaTy18 = statsResults[mediaType][sendrecvType].requestedBitrate) !== null && _statsResults$mediaTy18 !== void 0 ? _statsResults$mediaTy18 : -1;
|
|
18252
|
+
videoSenderStream.requestedFrameSize = (_statsResults$mediaTy19 = statsResults[mediaType][sendrecvType].requestedFrameSize) !== null && _statsResults$mediaTy19 !== void 0 ? _statsResults$mediaTy19 : -1;
|
|
18253
|
+
var lastUsedEffect = (_statsResults$mediaTy20 = statsResults[mediaType][sendrecvType]) === null || _statsResults$mediaTy20 === void 0 ? void 0 : _statsResults$mediaTy20.effect;
|
|
18210
18254
|
var mode = VIRTUAL_BACKGROUND_MODE.NONE;
|
|
18211
18255
|
if ((lastUsedEffect === null || lastUsedEffect === void 0 ? void 0 : lastUsedEffect.virtualBackgroundMode) in VIRTUAL_BACKGROUND_MODE) {
|
|
18212
18256
|
mode = VIRTUAL_BACKGROUND_MODE[lastUsedEffect.virtualBackgroundMode];
|
|
@@ -18214,7 +18258,7 @@ var getVideoSenderStreamMqa = _ref8 => {
|
|
|
18214
18258
|
videoSenderStream.backgroundAugmentationType = mode;
|
|
18215
18259
|
};
|
|
18216
18260
|
var isStreamRequested = _ref9 => {
|
|
18217
|
-
var _statsResults$
|
|
18261
|
+
var _statsResults$mediaTy21, _statsResults$mediaTy22;
|
|
18218
18262
|
var {
|
|
18219
18263
|
isMultistream,
|
|
18220
18264
|
statsResults,
|
|
@@ -18225,8 +18269,8 @@ var isStreamRequested = _ref9 => {
|
|
|
18225
18269
|
return true;
|
|
18226
18270
|
}
|
|
18227
18271
|
var now = performance.timeOrigin + performance.now();
|
|
18228
|
-
var lastUpdateTimestamp = (_statsResults$
|
|
18229
|
-
var isRequested = (_statsResults$
|
|
18272
|
+
var lastUpdateTimestamp = (_statsResults$mediaTy21 = statsResults[mediaType][direction]) === null || _statsResults$mediaTy21 === void 0 ? void 0 : _statsResults$mediaTy21.lastRequestedUpdateTimestamp;
|
|
18273
|
+
var isRequested = (_statsResults$mediaTy22 = statsResults[mediaType][direction]) === null || _statsResults$mediaTy22 === void 0 ? void 0 : _statsResults$mediaTy22.isRequested;
|
|
18230
18274
|
return isRequested || lastUpdateTimestamp && now - lastUpdateTimestamp < MQA_INTERVAL;
|
|
18231
18275
|
};
|
|
18232
18276
|
|
|
@@ -18377,11 +18421,13 @@ class StatsAnalyzer extends EventEmitter$5 {
|
|
|
18377
18421
|
Object.keys(this.statsResults).forEach(mediaType => {
|
|
18378
18422
|
if (mediaType.includes('recv')) {
|
|
18379
18423
|
this.statsResults[mediaType].recv.meanRtpJitter = [];
|
|
18424
|
+
this.statsResults[mediaType].recv.meanRtpPacketSize = [];
|
|
18380
18425
|
}
|
|
18381
18426
|
if (mediaType.includes('send')) {
|
|
18382
18427
|
this.statsResults[mediaType].send.meanRemoteJitter = [];
|
|
18383
18428
|
this.statsResults[mediaType].send.meanRoundTripTime = [];
|
|
18384
18429
|
this.statsResults[mediaType].send.effect = undefined;
|
|
18430
|
+
this.statsResults[mediaType].send.meanRtpPacketSize = [];
|
|
18385
18431
|
}
|
|
18386
18432
|
});
|
|
18387
18433
|
}
|
|
@@ -18391,6 +18437,7 @@ class StatsAnalyzer extends EventEmitter$5 {
|
|
|
18391
18437
|
actual: _objectSpread(_objectSpread({}, (_this$meetingMediaSta = this.meetingMediaStatus) === null || _this$meetingMediaSta === void 0 ? void 0 : _this$meetingMediaSta.actual), status === null || status === void 0 ? void 0 : status.actual),
|
|
18392
18438
|
expected: _objectSpread(_objectSpread({}, (_this$meetingMediaSta2 = this.meetingMediaStatus) === null || _this$meetingMediaSta2 === void 0 ? void 0 : _this$meetingMediaSta2.expected), status === null || status === void 0 ? void 0 : status.expected)
|
|
18393
18439
|
};
|
|
18440
|
+
getLogger().info("StatsAnalyzer:index#updateMediaStatus --> Meeting Media Status: ", JSON.stringify(this.meetingMediaStatus));
|
|
18394
18441
|
}
|
|
18395
18442
|
sendMqaData() {
|
|
18396
18443
|
var newMqa = structuredClone(emptyMqaInterval);
|
|
@@ -18848,6 +18895,8 @@ class StatsAnalyzer extends EventEmitter$5 {
|
|
|
18848
18895
|
var currentShareFramesDecoded = getCurrentStatsTotals('video-share-recv', 'framesDecoded');
|
|
18849
18896
|
var previousShareFramesDecoded = getPreviousStatsTotals('video-share-recv', 'framesDecoded');
|
|
18850
18897
|
this.emitStartStopEvents('share', previousShareFramesDecoded, currentShareFramesDecoded, false);
|
|
18898
|
+
} else {
|
|
18899
|
+
getLogger().info('StatsAnalyzer:index#compareLastStatsResult --> No last stats results to compare, or meetingMediaStatus is not set');
|
|
18851
18900
|
}
|
|
18852
18901
|
}
|
|
18853
18902
|
getStatsAndParse() {
|
|
@@ -18896,6 +18945,7 @@ class StatsAnalyzer extends EventEmitter$5 {
|
|
|
18896
18945
|
processOutboundRTPResult(result, mediaType) {
|
|
18897
18946
|
var sendrecvType = MediaDirection.SEND;
|
|
18898
18947
|
if (result.bytesSent) {
|
|
18948
|
+
var _this$statsResults$me, _this$statsResults$me2;
|
|
18899
18949
|
var kilobytes = 0;
|
|
18900
18950
|
if (result.frameWidth && result.frameHeight) {
|
|
18901
18951
|
this.statsResults[mediaType][sendrecvType].width = result.frameWidth;
|
|
@@ -18929,11 +18979,15 @@ class StatsAnalyzer extends EventEmitter$5 {
|
|
|
18929
18979
|
if (result.effect) {
|
|
18930
18980
|
this.statsResults[mediaType][sendrecvType].effect = result.effect;
|
|
18931
18981
|
}
|
|
18982
|
+
var meanRtpPacketSize = Math.round(result.bytesSent / result.packetsSent);
|
|
18983
|
+
(_this$statsResults$me2 = (_this$statsResults$me = this.statsResults[mediaType][sendrecvType]).meanRtpPacketSize) !== null && _this$statsResults$me2 !== void 0 ? _this$statsResults$me2 : _this$statsResults$me.meanRtpPacketSize = [];
|
|
18984
|
+
this.statsResults[mediaType][sendrecvType].meanRtpPacketSize.push(meanRtpPacketSize);
|
|
18932
18985
|
}
|
|
18933
18986
|
}
|
|
18934
18987
|
processInboundRTPResult(result, mediaType) {
|
|
18935
18988
|
var sendrecvType = MediaDirection.RECEIVE;
|
|
18936
18989
|
if (result.bytesReceived) {
|
|
18990
|
+
var _this$statsResults$me3, _this$statsResults$me4;
|
|
18937
18991
|
var kilobytes = 0;
|
|
18938
18992
|
var sourceState = result.sourceState;
|
|
18939
18993
|
var midAndCsi = "mid: \"".concat(result.mid || '', "\"").concat(result.csi ? " and csi: ".concat(result.csi) : '');
|
|
@@ -19015,6 +19069,9 @@ class StatsAnalyzer extends EventEmitter$5 {
|
|
|
19015
19069
|
this.statsResults[mediaType][sendrecvType].silentConcealedSamples = result.silentConcealedSamples || 0;
|
|
19016
19070
|
this.statsResults[mediaType][sendrecvType].isRequested = result.isRequested;
|
|
19017
19071
|
this.statsResults[mediaType][sendrecvType].lastRequestedUpdateTimestamp = result.lastRequestedUpdateTimestamp;
|
|
19072
|
+
var meanRtpPacketSize = Math.round(result.bytesReceived / result.packetsReceived);
|
|
19073
|
+
(_this$statsResults$me4 = (_this$statsResults$me3 = this.statsResults[mediaType][sendrecvType]).meanRtpPacketSize) !== null && _this$statsResults$me4 !== void 0 ? _this$statsResults$me4 : _this$statsResults$me3.meanRtpPacketSize = [];
|
|
19074
|
+
this.statsResults[mediaType][sendrecvType].meanRtpPacketSize.push(meanRtpPacketSize);
|
|
19018
19075
|
}
|
|
19019
19076
|
}
|
|
19020
19077
|
compareSentAndReceived(result, type) {
|
package/dist/esm/index.js
CHANGED
|
@@ -17630,7 +17630,12 @@ var emptyAudioReceive = {
|
|
|
17630
17630
|
srtpUnprotectErrors: 0,
|
|
17631
17631
|
stunBitrate: 0,
|
|
17632
17632
|
stunPackets: 0,
|
|
17633
|
-
transportType: 'UDP'
|
|
17633
|
+
transportType: 'UDP',
|
|
17634
|
+
mediaPacketSize: {
|
|
17635
|
+
meanRtpPacketSize: 0,
|
|
17636
|
+
maxRtpPacketSize: 0,
|
|
17637
|
+
minRtpPacketSize: 0
|
|
17638
|
+
}
|
|
17634
17639
|
},
|
|
17635
17640
|
streams: []
|
|
17636
17641
|
};
|
|
@@ -17683,7 +17688,12 @@ var emptyAudioTransmit = {
|
|
|
17683
17688
|
rtxPackets: 0,
|
|
17684
17689
|
stunBitrate: 0,
|
|
17685
17690
|
stunPackets: 0,
|
|
17686
|
-
transportType: 'UDP'
|
|
17691
|
+
transportType: 'UDP',
|
|
17692
|
+
mediaPacketSize: {
|
|
17693
|
+
meanRtpPacketSize: 0,
|
|
17694
|
+
maxRtpPacketSize: 0,
|
|
17695
|
+
minRtpPacketSize: 0
|
|
17696
|
+
}
|
|
17687
17697
|
},
|
|
17688
17698
|
streams: []
|
|
17689
17699
|
};
|
|
@@ -17728,7 +17738,12 @@ var emptyVideoReceive = {
|
|
|
17728
17738
|
srtpUnprotectErrors: 0,
|
|
17729
17739
|
stunBitrate: 0,
|
|
17730
17740
|
stunPackets: 0,
|
|
17731
|
-
transportType: 'UDP'
|
|
17741
|
+
transportType: 'UDP',
|
|
17742
|
+
mediaPacketSize: {
|
|
17743
|
+
meanRtpPacketSize: 0,
|
|
17744
|
+
maxRtpPacketSize: 0,
|
|
17745
|
+
minRtpPacketSize: 0
|
|
17746
|
+
}
|
|
17732
17747
|
},
|
|
17733
17748
|
streams: []
|
|
17734
17749
|
};
|
|
@@ -17793,7 +17808,12 @@ var emptyVideoTransmit = {
|
|
|
17793
17808
|
rtxPackets: 0,
|
|
17794
17809
|
stunBitrate: 0,
|
|
17795
17810
|
stunPackets: 0,
|
|
17796
|
-
transportType: 'UDP'
|
|
17811
|
+
transportType: 'UDP',
|
|
17812
|
+
mediaPacketSize: {
|
|
17813
|
+
meanRtpPacketSize: 0,
|
|
17814
|
+
maxRtpPacketSize: 0,
|
|
17815
|
+
minRtpPacketSize: 0
|
|
17816
|
+
}
|
|
17797
17817
|
},
|
|
17798
17818
|
streams: []
|
|
17799
17819
|
};
|
|
@@ -17888,6 +17908,14 @@ var calculateAudioReceiverConcealedFrames = (statsResults, mediaType, lastConcea
|
|
|
17888
17908
|
var silentConcealedSamplesDelta = silentConcealedSamples - lastSilentConcealedSamples;
|
|
17889
17909
|
return samplesToMilliseconds(concealedSamplesDelta - silentConcealedSamplesDelta, clockRate);
|
|
17890
17910
|
};
|
|
17911
|
+
var getMediaPacketSizeInfo = meanRtpPacketSize => {
|
|
17912
|
+
meanRtpPacketSize = meanRtpPacketSize.filter(size => size > 0);
|
|
17913
|
+
return {
|
|
17914
|
+
meanRtpPacketSize: Math.round(mean(meanRtpPacketSize)),
|
|
17915
|
+
maxRtpPacketSize: Math.round(Math.max(...meanRtpPacketSize)) || 0,
|
|
17916
|
+
minRtpPacketSize: Math.round(Math.min(...meanRtpPacketSize)) || 0
|
|
17917
|
+
};
|
|
17918
|
+
};
|
|
17891
17919
|
var getAudioReceiverMqa = _ref => {
|
|
17892
17920
|
var {
|
|
17893
17921
|
audioReceiver,
|
|
@@ -17927,9 +17955,13 @@ var getAudioReceiverMqa = _ref => {
|
|
|
17927
17955
|
audioReceiver.common.fecPackets = totalFecPacketsReceived - lastFecPacketsReceived;
|
|
17928
17956
|
audioReceiver.common.rtpRecovered = fecRecovered;
|
|
17929
17957
|
audioReceiver.common.rtpBitrate = (totalBytesReceived - lastBytesReceived) * 8 / 60 || 0;
|
|
17958
|
+
if (mediaTypeKey) {
|
|
17959
|
+
var _statsResults$mediaTy2;
|
|
17960
|
+
audioReceiver.common.mediaPacketSize = getMediaPacketSizeInfo(((_statsResults$mediaTy2 = statsResults[mediaTypeKey]) === null || _statsResults$mediaTy2 === void 0 ? void 0 : _statsResults$mediaTy2[sendrecvType].meanRtpPacketSize) || []);
|
|
17961
|
+
}
|
|
17930
17962
|
};
|
|
17931
17963
|
var getAudioReceiverStreamMqa = _ref2 => {
|
|
17932
|
-
var _lastMqaDataSent$medi, _lastMqaDataSent$medi2, _lastMqaDataSent$medi3, _lastMqaDataSent$medi4, _lastMqaDataSent$medi5, _lastMqaDataSent$medi6, _lastMqaDataSent$medi7, _lastMqaDataSent$medi8, _lastMqaDataSent$medi9, _statsResults$
|
|
17964
|
+
var _lastMqaDataSent$medi, _lastMqaDataSent$medi2, _lastMqaDataSent$medi3, _lastMqaDataSent$medi4, _lastMqaDataSent$medi5, _lastMqaDataSent$medi6, _lastMqaDataSent$medi7, _lastMqaDataSent$medi8, _lastMqaDataSent$medi9, _statsResults$mediaTy3, _statsResults$mediaTy4;
|
|
17933
17965
|
var {
|
|
17934
17966
|
audioReceiverStream,
|
|
17935
17967
|
statsResults,
|
|
@@ -17962,8 +17994,8 @@ var getAudioReceiverStreamMqa = _ref2 => {
|
|
|
17962
17994
|
audioReceiverStream.common.framesReceived = statsResults[mediaType][sendrecvType].totalSamplesReceived - lastSamplesReceived || 0;
|
|
17963
17995
|
audioReceiverStream.common.concealedFrames = calculateAudioReceiverConcealedFrames(statsResults, mediaType, lastConcealedSamples, lastSilentConcealedSamples);
|
|
17964
17996
|
audioReceiverStream.common.receivedBitrate = (statsResults[mediaType][sendrecvType].totalBytesReceived - lastBytesReceived) * 8 / 60 || 0;
|
|
17965
|
-
audioReceiverStream.common.requestedBitrate = (_statsResults$
|
|
17966
|
-
audioReceiverStream.common.requestedFrameRate = (_statsResults$
|
|
17997
|
+
audioReceiverStream.common.requestedBitrate = (_statsResults$mediaTy3 = statsResults[mediaType][sendrecvType].requestedBitrate) !== null && _statsResults$mediaTy3 !== void 0 ? _statsResults$mediaTy3 : -1;
|
|
17998
|
+
audioReceiverStream.common.requestedFrameRate = (_statsResults$mediaTy4 = statsResults[mediaType][sendrecvType].requestedFrameRate) !== null && _statsResults$mediaTy4 !== void 0 ? _statsResults$mediaTy4 : -1;
|
|
17967
17999
|
};
|
|
17968
18000
|
var getAudioSenderMqa = _ref3 => {
|
|
17969
18001
|
var {
|
|
@@ -17984,8 +18016,8 @@ var getAudioSenderMqa = _ref3 => {
|
|
|
17984
18016
|
var meanRoundTripTime = Object.keys(statsResults).filter(mt => mt.includes(baseMediaType)).reduce((acc, mt) => acc.concat(statsResults[mt][sendrecvType].meanRoundTripTime), []);
|
|
17985
18017
|
var mediaTypeKey = Object.keys(statsResults).find(mediaType => mediaType.includes(baseMediaType));
|
|
17986
18018
|
if (mediaTypeKey) {
|
|
17987
|
-
var _statsResults$
|
|
17988
|
-
audioSender.common.common.direction = ((_statsResults$
|
|
18019
|
+
var _statsResults$mediaTy5;
|
|
18020
|
+
audioSender.common.common.direction = ((_statsResults$mediaTy5 = statsResults[mediaTypeKey]) === null || _statsResults$mediaTy5 === void 0 ? void 0 : _statsResults$mediaTy5.direction) || 'inactive';
|
|
17989
18021
|
} else {
|
|
17990
18022
|
audioSender.common.common.direction = 'inactive';
|
|
17991
18023
|
}
|
|
@@ -18003,9 +18035,13 @@ var getAudioSenderMqa = _ref3 => {
|
|
|
18003
18035
|
audioSender.common.roundTripTime = audioSender.common.maxRoundTripTime;
|
|
18004
18036
|
var totalBytesSentInaMin = getTotalValueFromBaseType(statsResults, sendrecvType, baseMediaType, 'totalBytesSent') - getTotalValueFromBaseType(lastMqaDataSent, sendrecvType, baseMediaType, 'totalBytesSent');
|
|
18005
18037
|
audioSender.common.rtpBitrate = totalBytesSentInaMin ? totalBytesSentInaMin * 8 / 60 : 0;
|
|
18038
|
+
if (mediaTypeKey) {
|
|
18039
|
+
var _statsResults$mediaTy6;
|
|
18040
|
+
audioSender.common.mediaPacketSize = getMediaPacketSizeInfo(((_statsResults$mediaTy6 = statsResults[mediaTypeKey]) === null || _statsResults$mediaTy6 === void 0 ? void 0 : _statsResults$mediaTy6[sendrecvType].meanRtpPacketSize) || []);
|
|
18041
|
+
}
|
|
18006
18042
|
};
|
|
18007
18043
|
var getAudioSenderStreamMqa = _ref4 => {
|
|
18008
|
-
var _lastMqaDataSent$medi10, _lastMqaDataSent$medi11, _lastMqaDataSent$medi12, _lastMqaDataSent$medi13, _statsResults$
|
|
18044
|
+
var _lastMqaDataSent$medi10, _lastMqaDataSent$medi11, _lastMqaDataSent$medi12, _lastMqaDataSent$medi13, _statsResults$mediaTy7, _statsResults$mediaTy8;
|
|
18009
18045
|
var {
|
|
18010
18046
|
audioSenderStream,
|
|
18011
18047
|
statsResults,
|
|
@@ -18028,8 +18064,8 @@ var getAudioSenderStreamMqa = _ref4 => {
|
|
|
18028
18064
|
audioSenderStream.common.transmittedBitrate = totalBytesSentInaMin ? totalBytesSentInaMin * 8 / 60 : 0;
|
|
18029
18065
|
audioSenderStream.transmittedKeyFrames = statsResults[mediaType][sendrecvType].totalKeyFramesEncoded - lastFramesEncoded || 0;
|
|
18030
18066
|
audioSenderStream.requestedKeyFrames = statsResults[mediaType][sendrecvType].totalFirCount - lastFirCount || 0;
|
|
18031
|
-
audioSenderStream.common.requestedBitrate = (_statsResults$
|
|
18032
|
-
var lastUsedEffect = (_statsResults$
|
|
18067
|
+
audioSenderStream.common.requestedBitrate = (_statsResults$mediaTy7 = statsResults[mediaType][sendrecvType].requestedBitrate) !== null && _statsResults$mediaTy7 !== void 0 ? _statsResults$mediaTy7 : -1;
|
|
18068
|
+
var lastUsedEffect = (_statsResults$mediaTy8 = statsResults[mediaType][sendrecvType]) === null || _statsResults$mediaTy8 === void 0 ? void 0 : _statsResults$mediaTy8.effect;
|
|
18033
18069
|
var mode = NOISE_REDUCTION_MODE.NONE;
|
|
18034
18070
|
if ((lastUsedEffect === null || lastUsedEffect === void 0 ? void 0 : lastUsedEffect.noiseReductionMode) in NOISE_REDUCTION_MODE) {
|
|
18035
18071
|
mode = NOISE_REDUCTION_MODE[lastUsedEffect.noiseReductionMode];
|
|
@@ -18059,8 +18095,8 @@ var getVideoReceiverMqa = _ref5 => {
|
|
|
18059
18095
|
var totalRtxBytesReceived = getTotalValue('totalRtxBytesReceived');
|
|
18060
18096
|
var mediaTypeKey = Object.keys(statsResults).find(mediaType => mediaType.includes(baseMediaType));
|
|
18061
18097
|
if (mediaTypeKey) {
|
|
18062
|
-
var _statsResults$
|
|
18063
|
-
videoReceiver.common.common.direction = ((_statsResults$
|
|
18098
|
+
var _statsResults$mediaTy9;
|
|
18099
|
+
videoReceiver.common.common.direction = ((_statsResults$mediaTy9 = statsResults[mediaTypeKey]) === null || _statsResults$mediaTy9 === void 0 ? void 0 : _statsResults$mediaTy9.direction) || 'inactive';
|
|
18064
18100
|
} else {
|
|
18065
18101
|
videoReceiver.common.common.direction = 'inactive';
|
|
18066
18102
|
}
|
|
@@ -18076,9 +18112,13 @@ var getVideoReceiverMqa = _ref5 => {
|
|
|
18076
18112
|
videoReceiver.common.rtpBitrate = totalBytesReceivedInaMin ? totalBytesReceivedInaMin * 8 / 60 : 0;
|
|
18077
18113
|
videoReceiver.common.rtxPackets = totalRtxPacketsReceived - lastRtxPacketsReceived;
|
|
18078
18114
|
videoReceiver.common.rtxBitrate = totalRtxBytesReceivedInaMin ? totalRtxBytesReceivedInaMin * 8 / 60 : 0;
|
|
18115
|
+
if (mediaTypeKey) {
|
|
18116
|
+
var _statsResults$mediaTy10;
|
|
18117
|
+
videoReceiver.common.mediaPacketSize = getMediaPacketSizeInfo(((_statsResults$mediaTy10 = statsResults[mediaTypeKey]) === null || _statsResults$mediaTy10 === void 0 ? void 0 : _statsResults$mediaTy10[sendrecvType].meanRtpPacketSize) || []);
|
|
18118
|
+
}
|
|
18079
18119
|
};
|
|
18080
18120
|
var getVideoReceiverStreamMqa = _ref6 => {
|
|
18081
|
-
var _lastMqaDataSent$medi14, _lastMqaDataSent$medi15, _lastMqaDataSent$medi16, _lastMqaDataSent$medi17, _lastMqaDataSent$medi18, _lastMqaDataSent$medi19, _lastMqaDataSent$medi20, _lastMqaDataSent$medi21, _statsResults$
|
|
18121
|
+
var _lastMqaDataSent$medi14, _lastMqaDataSent$medi15, _lastMqaDataSent$medi16, _lastMqaDataSent$medi17, _lastMqaDataSent$medi18, _lastMqaDataSent$medi19, _lastMqaDataSent$medi20, _lastMqaDataSent$medi21, _statsResults$mediaTy11, _statsResults$mediaTy12, _statsResults$mediaTy13, _statsResults$mediaTy14, _statsResults$mediaTy15;
|
|
18082
18122
|
var {
|
|
18083
18123
|
videoReceiverStream,
|
|
18084
18124
|
statsResults,
|
|
@@ -18117,10 +18157,10 @@ var getVideoReceiverStreamMqa = _ref6 => {
|
|
|
18117
18157
|
videoReceiverStream.receivedFrameSize = videoReceiverStream.receivedHeight * videoReceiverStream.receivedWidth / 256;
|
|
18118
18158
|
videoReceiverStream.receivedKeyFrames = statsResults[mediaType][sendrecvType].keyFramesDecoded - lastKeyFramesDecoded || 0;
|
|
18119
18159
|
videoReceiverStream.requestedKeyFrames = statsResults[mediaType][sendrecvType].totalPliCount - lastPliCount || 0;
|
|
18120
|
-
videoReceiverStream.isActiveSpeaker = statsResults[mediaType][sendrecvType].isActiveSpeaker || ((_statsResults$
|
|
18121
|
-
videoReceiverStream.common.requestedBitrate = (_statsResults$
|
|
18122
|
-
videoReceiverStream.requestedFrameSize = (_statsResults$
|
|
18123
|
-
videoReceiverStream.common.requestedFrameRate = (_statsResults$
|
|
18160
|
+
videoReceiverStream.isActiveSpeaker = statsResults[mediaType][sendrecvType].isActiveSpeaker || ((_statsResults$mediaTy11 = statsResults[mediaType][sendrecvType].lastActiveSpeakerTimestamp) !== null && _statsResults$mediaTy11 !== void 0 ? _statsResults$mediaTy11 : 0) > 0 && performance.now() + performance.timeOrigin - ((_statsResults$mediaTy12 = statsResults[mediaType][sendrecvType].lastActiveSpeakerTimestamp) !== null && _statsResults$mediaTy12 !== void 0 ? _statsResults$mediaTy12 : 0) < MQA_INTERVAL;
|
|
18161
|
+
videoReceiverStream.common.requestedBitrate = (_statsResults$mediaTy13 = statsResults[mediaType][sendrecvType].requestedBitrate) !== null && _statsResults$mediaTy13 !== void 0 ? _statsResults$mediaTy13 : -1;
|
|
18162
|
+
videoReceiverStream.requestedFrameSize = (_statsResults$mediaTy14 = statsResults[mediaType][sendrecvType].requestedFrameSize) !== null && _statsResults$mediaTy14 !== void 0 ? _statsResults$mediaTy14 : -1;
|
|
18163
|
+
videoReceiverStream.common.requestedFrameRate = (_statsResults$mediaTy15 = statsResults[mediaType][sendrecvType].requestedFrameRate) !== null && _statsResults$mediaTy15 !== void 0 ? _statsResults$mediaTy15 : -1;
|
|
18124
18164
|
};
|
|
18125
18165
|
var getVideoSenderMqa = _ref7 => {
|
|
18126
18166
|
var {
|
|
@@ -18145,8 +18185,8 @@ var getVideoSenderMqa = _ref7 => {
|
|
|
18145
18185
|
var totalRtxBytesSent = getTotalValue('totalRtxBytesSent');
|
|
18146
18186
|
var mediaTypeKey = Object.keys(statsResults).find(mediaType => mediaType.includes(baseMediaType));
|
|
18147
18187
|
if (mediaTypeKey) {
|
|
18148
|
-
var _statsResults$
|
|
18149
|
-
videoSender.common.common.direction = ((_statsResults$
|
|
18188
|
+
var _statsResults$mediaTy16;
|
|
18189
|
+
videoSender.common.common.direction = ((_statsResults$mediaTy16 = statsResults[mediaTypeKey]) === null || _statsResults$mediaTy16 === void 0 ? void 0 : _statsResults$mediaTy16.direction) || 'inactive';
|
|
18150
18190
|
} else {
|
|
18151
18191
|
videoSender.common.common.direction = 'inactive';
|
|
18152
18192
|
}
|
|
@@ -18169,9 +18209,13 @@ var getVideoSenderMqa = _ref7 => {
|
|
|
18169
18209
|
videoSender.common.rtpBitrate = totalBytesSentInaMin ? totalBytesSentInaMin * 8 / 60 : 0;
|
|
18170
18210
|
videoSender.common.rtxPackets = totalRtxPacketsSent - lastRtxPacketsSent;
|
|
18171
18211
|
videoSender.common.rtxBitrate = totalRtxBytesSentInaMin ? totalRtxBytesSentInaMin * 8 / 60 : 0;
|
|
18212
|
+
if (mediaTypeKey) {
|
|
18213
|
+
var _statsResults$mediaTy17;
|
|
18214
|
+
videoSender.common.mediaPacketSize = getMediaPacketSizeInfo(((_statsResults$mediaTy17 = statsResults[mediaTypeKey]) === null || _statsResults$mediaTy17 === void 0 ? void 0 : _statsResults$mediaTy17[sendrecvType].meanRtpPacketSize) || []);
|
|
18215
|
+
}
|
|
18172
18216
|
};
|
|
18173
18217
|
var getVideoSenderStreamMqa = _ref8 => {
|
|
18174
|
-
var _lastMqaDataSent$medi22, _lastMqaDataSent$medi23, _lastMqaDataSent$medi24, _lastMqaDataSent$medi25, _lastMqaDataSent$medi26, _statsResults$
|
|
18218
|
+
var _lastMqaDataSent$medi22, _lastMqaDataSent$medi23, _lastMqaDataSent$medi24, _lastMqaDataSent$medi25, _lastMqaDataSent$medi26, _statsResults$mediaTy18, _statsResults$mediaTy19, _statsResults$mediaTy20;
|
|
18175
18219
|
var {
|
|
18176
18220
|
videoSenderStream,
|
|
18177
18221
|
statsResults,
|
|
@@ -18200,9 +18244,9 @@ var getVideoSenderStreamMqa = _ref8 => {
|
|
|
18200
18244
|
videoSenderStream.transmittedHeight = statsResults[mediaType][sendrecvType].height || 0;
|
|
18201
18245
|
videoSenderStream.transmittedWidth = statsResults[mediaType][sendrecvType].width || 0;
|
|
18202
18246
|
videoSenderStream.transmittedFrameSize = videoSenderStream.transmittedHeight * videoSenderStream.transmittedWidth / 256;
|
|
18203
|
-
videoSenderStream.common.requestedBitrate = (_statsResults$
|
|
18204
|
-
videoSenderStream.requestedFrameSize = (_statsResults$
|
|
18205
|
-
var lastUsedEffect = (_statsResults$
|
|
18247
|
+
videoSenderStream.common.requestedBitrate = (_statsResults$mediaTy18 = statsResults[mediaType][sendrecvType].requestedBitrate) !== null && _statsResults$mediaTy18 !== void 0 ? _statsResults$mediaTy18 : -1;
|
|
18248
|
+
videoSenderStream.requestedFrameSize = (_statsResults$mediaTy19 = statsResults[mediaType][sendrecvType].requestedFrameSize) !== null && _statsResults$mediaTy19 !== void 0 ? _statsResults$mediaTy19 : -1;
|
|
18249
|
+
var lastUsedEffect = (_statsResults$mediaTy20 = statsResults[mediaType][sendrecvType]) === null || _statsResults$mediaTy20 === void 0 ? void 0 : _statsResults$mediaTy20.effect;
|
|
18206
18250
|
var mode = VIRTUAL_BACKGROUND_MODE.NONE;
|
|
18207
18251
|
if ((lastUsedEffect === null || lastUsedEffect === void 0 ? void 0 : lastUsedEffect.virtualBackgroundMode) in VIRTUAL_BACKGROUND_MODE) {
|
|
18208
18252
|
mode = VIRTUAL_BACKGROUND_MODE[lastUsedEffect.virtualBackgroundMode];
|
|
@@ -18210,7 +18254,7 @@ var getVideoSenderStreamMqa = _ref8 => {
|
|
|
18210
18254
|
videoSenderStream.backgroundAugmentationType = mode;
|
|
18211
18255
|
};
|
|
18212
18256
|
var isStreamRequested = _ref9 => {
|
|
18213
|
-
var _statsResults$
|
|
18257
|
+
var _statsResults$mediaTy21, _statsResults$mediaTy22;
|
|
18214
18258
|
var {
|
|
18215
18259
|
isMultistream,
|
|
18216
18260
|
statsResults,
|
|
@@ -18221,8 +18265,8 @@ var isStreamRequested = _ref9 => {
|
|
|
18221
18265
|
return true;
|
|
18222
18266
|
}
|
|
18223
18267
|
var now = performance.timeOrigin + performance.now();
|
|
18224
|
-
var lastUpdateTimestamp = (_statsResults$
|
|
18225
|
-
var isRequested = (_statsResults$
|
|
18268
|
+
var lastUpdateTimestamp = (_statsResults$mediaTy21 = statsResults[mediaType][direction]) === null || _statsResults$mediaTy21 === void 0 ? void 0 : _statsResults$mediaTy21.lastRequestedUpdateTimestamp;
|
|
18269
|
+
var isRequested = (_statsResults$mediaTy22 = statsResults[mediaType][direction]) === null || _statsResults$mediaTy22 === void 0 ? void 0 : _statsResults$mediaTy22.isRequested;
|
|
18226
18270
|
return isRequested || lastUpdateTimestamp && now - lastUpdateTimestamp < MQA_INTERVAL;
|
|
18227
18271
|
};
|
|
18228
18272
|
|
|
@@ -18373,11 +18417,13 @@ class StatsAnalyzer extends EventEmitter$5 {
|
|
|
18373
18417
|
Object.keys(this.statsResults).forEach(mediaType => {
|
|
18374
18418
|
if (mediaType.includes('recv')) {
|
|
18375
18419
|
this.statsResults[mediaType].recv.meanRtpJitter = [];
|
|
18420
|
+
this.statsResults[mediaType].recv.meanRtpPacketSize = [];
|
|
18376
18421
|
}
|
|
18377
18422
|
if (mediaType.includes('send')) {
|
|
18378
18423
|
this.statsResults[mediaType].send.meanRemoteJitter = [];
|
|
18379
18424
|
this.statsResults[mediaType].send.meanRoundTripTime = [];
|
|
18380
18425
|
this.statsResults[mediaType].send.effect = undefined;
|
|
18426
|
+
this.statsResults[mediaType].send.meanRtpPacketSize = [];
|
|
18381
18427
|
}
|
|
18382
18428
|
});
|
|
18383
18429
|
}
|
|
@@ -18387,6 +18433,7 @@ class StatsAnalyzer extends EventEmitter$5 {
|
|
|
18387
18433
|
actual: _objectSpread(_objectSpread({}, (_this$meetingMediaSta = this.meetingMediaStatus) === null || _this$meetingMediaSta === void 0 ? void 0 : _this$meetingMediaSta.actual), status === null || status === void 0 ? void 0 : status.actual),
|
|
18388
18434
|
expected: _objectSpread(_objectSpread({}, (_this$meetingMediaSta2 = this.meetingMediaStatus) === null || _this$meetingMediaSta2 === void 0 ? void 0 : _this$meetingMediaSta2.expected), status === null || status === void 0 ? void 0 : status.expected)
|
|
18389
18435
|
};
|
|
18436
|
+
getLogger().info("StatsAnalyzer:index#updateMediaStatus --> Meeting Media Status: ", JSON.stringify(this.meetingMediaStatus));
|
|
18390
18437
|
}
|
|
18391
18438
|
sendMqaData() {
|
|
18392
18439
|
var newMqa = structuredClone(emptyMqaInterval);
|
|
@@ -18844,6 +18891,8 @@ class StatsAnalyzer extends EventEmitter$5 {
|
|
|
18844
18891
|
var currentShareFramesDecoded = getCurrentStatsTotals('video-share-recv', 'framesDecoded');
|
|
18845
18892
|
var previousShareFramesDecoded = getPreviousStatsTotals('video-share-recv', 'framesDecoded');
|
|
18846
18893
|
this.emitStartStopEvents('share', previousShareFramesDecoded, currentShareFramesDecoded, false);
|
|
18894
|
+
} else {
|
|
18895
|
+
getLogger().info('StatsAnalyzer:index#compareLastStatsResult --> No last stats results to compare, or meetingMediaStatus is not set');
|
|
18847
18896
|
}
|
|
18848
18897
|
}
|
|
18849
18898
|
getStatsAndParse() {
|
|
@@ -18892,6 +18941,7 @@ class StatsAnalyzer extends EventEmitter$5 {
|
|
|
18892
18941
|
processOutboundRTPResult(result, mediaType) {
|
|
18893
18942
|
var sendrecvType = MediaDirection.SEND;
|
|
18894
18943
|
if (result.bytesSent) {
|
|
18944
|
+
var _this$statsResults$me, _this$statsResults$me2;
|
|
18895
18945
|
var kilobytes = 0;
|
|
18896
18946
|
if (result.frameWidth && result.frameHeight) {
|
|
18897
18947
|
this.statsResults[mediaType][sendrecvType].width = result.frameWidth;
|
|
@@ -18925,11 +18975,15 @@ class StatsAnalyzer extends EventEmitter$5 {
|
|
|
18925
18975
|
if (result.effect) {
|
|
18926
18976
|
this.statsResults[mediaType][sendrecvType].effect = result.effect;
|
|
18927
18977
|
}
|
|
18978
|
+
var meanRtpPacketSize = Math.round(result.bytesSent / result.packetsSent);
|
|
18979
|
+
(_this$statsResults$me2 = (_this$statsResults$me = this.statsResults[mediaType][sendrecvType]).meanRtpPacketSize) !== null && _this$statsResults$me2 !== void 0 ? _this$statsResults$me2 : _this$statsResults$me.meanRtpPacketSize = [];
|
|
18980
|
+
this.statsResults[mediaType][sendrecvType].meanRtpPacketSize.push(meanRtpPacketSize);
|
|
18928
18981
|
}
|
|
18929
18982
|
}
|
|
18930
18983
|
processInboundRTPResult(result, mediaType) {
|
|
18931
18984
|
var sendrecvType = MediaDirection.RECEIVE;
|
|
18932
18985
|
if (result.bytesReceived) {
|
|
18986
|
+
var _this$statsResults$me3, _this$statsResults$me4;
|
|
18933
18987
|
var kilobytes = 0;
|
|
18934
18988
|
var sourceState = result.sourceState;
|
|
18935
18989
|
var midAndCsi = "mid: \"".concat(result.mid || '', "\"").concat(result.csi ? " and csi: ".concat(result.csi) : '');
|
|
@@ -19011,6 +19065,9 @@ class StatsAnalyzer extends EventEmitter$5 {
|
|
|
19011
19065
|
this.statsResults[mediaType][sendrecvType].silentConcealedSamples = result.silentConcealedSamples || 0;
|
|
19012
19066
|
this.statsResults[mediaType][sendrecvType].isRequested = result.isRequested;
|
|
19013
19067
|
this.statsResults[mediaType][sendrecvType].lastRequestedUpdateTimestamp = result.lastRequestedUpdateTimestamp;
|
|
19068
|
+
var meanRtpPacketSize = Math.round(result.bytesReceived / result.packetsReceived);
|
|
19069
|
+
(_this$statsResults$me4 = (_this$statsResults$me3 = this.statsResults[mediaType][sendrecvType]).meanRtpPacketSize) !== null && _this$statsResults$me4 !== void 0 ? _this$statsResults$me4 : _this$statsResults$me3.meanRtpPacketSize = [];
|
|
19070
|
+
this.statsResults[mediaType][sendrecvType].meanRtpPacketSize.push(meanRtpPacketSize);
|
|
19014
19071
|
}
|
|
19015
19072
|
}
|
|
19016
19073
|
compareSentAndReceived(result, type) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StatsAnalyzer.d.ts","sourceRoot":"","sources":["../../../src/StatsAnalyzer/StatsAnalyzer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AA8B/C,OAAO,EAIL,yBAAyB,EACzB,OAAO,EAEP,mBAAmB,EACnB,YAAY,EAEb,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,8BAA8B,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzF,OAAO,EACL,0BAA0B,EAC1B,mBAAmB,EAGpB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAKhE,qBAAa,aAAc,SAAQ,YAAY,CAAC,mBAAmB,CAAC;IAClE,MAAM,EAAE,mBAAmB,CAAC;IAE5B,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;IAElC,0BAA0B,EAAE,0BAA0B,CAAC;IAEvD,eAAe,EAAE,OAAO,CAAC;IAEzB,gBAAgB,EAAE,YAAY,GAAG,IAAI,CAAC;IAEtC,kBAAkB,CAAC,EAAE,yBAAyB,CAAC;IAE/C,WAAW,CAAC,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;IAE5C,YAAY,EAAE,MAAM,CAAC;IAErB,qBAAqB,EAAE,qBAAqB,CAAC;IAE7C,eAAe,EAAE,8BAA8B,GAAG,mBAAmB,GAAG,IAAI,CAAC;IAE7E,aAAa,CAAC,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;IAE9C,YAAY,EAAE,YAAY,CAAC;IAE3B,YAAY,EAAE,OAAO,CAAC;IAGtB,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAE7C,cAAc,EAAE,MAAM,CAAC;IAEvB,+BAA+B,CAAC,EAAE,MAAM,CAAC;IAEzC,aAAa,EAAE,OAAO,CAAC;gBAUX,EACV,MAAM,EACN,qBAAqB,EACrB,YAA4B,EAC5B,aAAqB,GACtB,EAAE;QACD,MAAM,EAAE,mBAAmB,CAAC;QAC5B,qBAAqB,EAAE,qBAAqB,CAAC;QAC7C,YAAY,CAAC,EAAE,YAAY,CAAC;QAC5B,aAAa,CAAC,EAAE,OAAO,CAAC;KACzB;IAoBD,OAAO,CAAC,iBAAiB;
|
|
1
|
+
{"version":3,"file":"StatsAnalyzer.d.ts","sourceRoot":"","sources":["../../../src/StatsAnalyzer/StatsAnalyzer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AA8B/C,OAAO,EAIL,yBAAyB,EACzB,OAAO,EAEP,mBAAmB,EACnB,YAAY,EAEb,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,8BAA8B,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzF,OAAO,EACL,0BAA0B,EAC1B,mBAAmB,EAGpB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAKhE,qBAAa,aAAc,SAAQ,YAAY,CAAC,mBAAmB,CAAC;IAClE,MAAM,EAAE,mBAAmB,CAAC;IAE5B,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;IAElC,0BAA0B,EAAE,0BAA0B,CAAC;IAEvD,eAAe,EAAE,OAAO,CAAC;IAEzB,gBAAgB,EAAE,YAAY,GAAG,IAAI,CAAC;IAEtC,kBAAkB,CAAC,EAAE,yBAAyB,CAAC;IAE/C,WAAW,CAAC,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;IAE5C,YAAY,EAAE,MAAM,CAAC;IAErB,qBAAqB,EAAE,qBAAqB,CAAC;IAE7C,eAAe,EAAE,8BAA8B,GAAG,mBAAmB,GAAG,IAAI,CAAC;IAE7E,aAAa,CAAC,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;IAE9C,YAAY,EAAE,YAAY,CAAC;IAE3B,YAAY,EAAE,OAAO,CAAC;IAGtB,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAE7C,cAAc,EAAE,MAAM,CAAC;IAEvB,+BAA+B,CAAC,EAAE,MAAM,CAAC;IAEzC,aAAa,EAAE,OAAO,CAAC;gBAUX,EACV,MAAM,EACN,qBAAqB,EACrB,YAA4B,EAC5B,aAAqB,GACtB,EAAE;QACD,MAAM,EAAE,mBAAmB,CAAC;QAC5B,qBAAqB,EAAE,qBAAqB,CAAC;QAC7C,YAAY,CAAC,EAAE,YAAY,CAAC;QAC5B,aAAa,CAAC,EAAE,OAAO,CAAC;KACzB;IAoBD,OAAO,CAAC,iBAAiB;IAqBlB,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,yBAAyB,CAAC;IAqBnE,OAAO,CAAC,WAAW;IA2UZ,iBAAiB,IAAI,MAAM;IAU3B,aAAa,CAAC,eAAe,EAAE,8BAA8B,GAAG,mBAAmB;IAuBnF,YAAY;IAgCnB,OAAO,CAAC,mBAAmB;IAoD3B,OAAO,CAAC,6BAA6B;IA4DrC,OAAO,CAAC,gBAAgB;IAiBxB,OAAO,CAAC,UAAU;IAoBlB,OAAO,CAAC,mBAAmB,CAkDzB;IAKF,OAAO,CAAC,sBAAsB;IAoN9B,OAAO,CAAC,gBAAgB;IAyExB,OAAO,CAAC,wBAAwB;IAgEhC,OAAO,CAAC,uBAAuB;IAyK/B,OAAO,CAAC,6CAA6C,CA+BnD;IAUF,OAAO,CAAC,cAAc,CAuDpB;IAQF,OAAO,CAAC,sBAAsB;CAkD/B"}
|
|
@@ -62,6 +62,11 @@ export declare const emptyAudioReceive: {
|
|
|
62
62
|
stunBitrate: number;
|
|
63
63
|
stunPackets: number;
|
|
64
64
|
transportType: string;
|
|
65
|
+
mediaPacketSize: {
|
|
66
|
+
meanRtpPacketSize: number;
|
|
67
|
+
maxRtpPacketSize: number;
|
|
68
|
+
minRtpPacketSize: number;
|
|
69
|
+
};
|
|
65
70
|
};
|
|
66
71
|
streams: never[];
|
|
67
72
|
};
|
|
@@ -115,6 +120,11 @@ export declare const emptyAudioTransmit: {
|
|
|
115
120
|
stunBitrate: number;
|
|
116
121
|
stunPackets: number;
|
|
117
122
|
transportType: string;
|
|
123
|
+
mediaPacketSize: {
|
|
124
|
+
meanRtpPacketSize: number;
|
|
125
|
+
maxRtpPacketSize: number;
|
|
126
|
+
minRtpPacketSize: number;
|
|
127
|
+
};
|
|
118
128
|
};
|
|
119
129
|
streams: never[];
|
|
120
130
|
};
|
|
@@ -160,6 +170,11 @@ export declare const emptyVideoReceive: {
|
|
|
160
170
|
stunBitrate: number;
|
|
161
171
|
stunPackets: number;
|
|
162
172
|
transportType: string;
|
|
173
|
+
mediaPacketSize: {
|
|
174
|
+
meanRtpPacketSize: number;
|
|
175
|
+
maxRtpPacketSize: number;
|
|
176
|
+
minRtpPacketSize: number;
|
|
177
|
+
};
|
|
163
178
|
};
|
|
164
179
|
streams: never[];
|
|
165
180
|
};
|
|
@@ -225,6 +240,11 @@ export declare const emptyVideoTransmit: {
|
|
|
225
240
|
stunBitrate: number;
|
|
226
241
|
stunPackets: number;
|
|
227
242
|
transportType: string;
|
|
243
|
+
mediaPacketSize: {
|
|
244
|
+
meanRtpPacketSize: number;
|
|
245
|
+
maxRtpPacketSize: number;
|
|
246
|
+
minRtpPacketSize: number;
|
|
247
|
+
};
|
|
228
248
|
};
|
|
229
249
|
streams: never[];
|
|
230
250
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/StatsAnalyzer/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,YAAY,EAAE,MAAM,SAAS,CAAC;AAGpD,eAAO,MAAM,aAAa,EAAE,YAgC3B,CAAC;AAEF,eAAO,MAAM,wBAAwB;;CAgBpC,CAAC;AAEF,eAAO,MAAM,YAAY,QAAQ,CAAC;AAGlC,eAAO,MAAM,SAAS,YAAY,CAAC;AAEnC,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;CA0B5B,CAAC;AAEF,eAAO,MAAM,iBAAiB
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/StatsAnalyzer/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,YAAY,EAAE,MAAM,SAAS,CAAC;AAGpD,eAAO,MAAM,aAAa,EAAE,YAgC3B,CAAC;AAEF,eAAO,MAAM,wBAAwB;;CAgBpC,CAAC;AAEF,eAAO,MAAM,YAAY,QAAQ,CAAC;AAGlC,eAAO,MAAM,SAAS,YAAY,CAAC;AAEnC,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;CA0B5B,CAAC;AAEF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqC7B,CAAC;AAEF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;CAmBnC,CAAC;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqC9B,CAAC;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;CAWpC,CAAC;AAEF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqC7B,CAAC;AAEF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BnC,CAAC;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqC9B,CAAC;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmCpC,CAAC;AAEF,eAAO,MAAM,WAAW;;;;;;;CAOvB,CAAC;AAEF,eAAO,MAAM,aAAa;;;;;CAKzB,CAAC;AAIF,eAAO,MAAM,2BAA2B,MAAM,CAAC;AAE/C,eAAO,MAAM,oBAAoB;;;CAGhC,CAAC;AAEF,eAAO,MAAM,uBAAuB;;;;;CAKnC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/StatsAnalyzer/utils.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/StatsAnalyzer/utils.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAsGhE,eAAO,MAAM,mBAAmB;mBAQf,OAAO,MAAM,EAAE,GAAG,CAAC;kBACpB,YAAY;qBACT,OAAO;mBACT,MAAM;mBACN,OAAO;UA6DvB,CAAC;AAEF,eAAO,MAAM,yBAAyB;yBAOf,OAAO,MAAM,EAAE,GAAG,CAAC;kBAC1B,YAAY;qBACT,OAAO;eACb,MAAM;UA2DlB,CAAC;AAEF,eAAO,MAAM,iBAAiB;iBAQf,OAAO,MAAM,EAAE,GAAG,CAAC;kBAClB,YAAY;qBACT,OAAO;mBACT,MAAM;mBACN,OAAO;UAkEvB,CAAC;AAEF,eAAO,MAAM,uBAAuB;uBAOf,OAAO,MAAM,EAAE,GAAG,CAAC;kBACxB,YAAY;qBACT,OAAO;eACb,MAAM;UAwClB,CAAC;AAEF,eAAO,MAAM,mBAAmB;mBAQf,OAAO,MAAM,EAAE,GAAG,CAAC;kBACpB,YAAY;qBACT,OAAO;mBACT,MAAM;mBACN,OAAO;UAgEvB,CAAC;AAEF,eAAO,MAAM,yBAAyB;yBAOf,OAAO,MAAM,EAAE,GAAG,CAAC;kBAC1B,YAAY;qBACT,OAAO;eACb,MAAM;UA8ElB,CAAC;AAEF,eAAO,MAAM,iBAAiB;iBAQf,OAAO,MAAM,EAAE,GAAG,CAAC;kBAClB,YAAY;qBACT,OAAO;mBACT,MAAM;mBACN,OAAO;UAyEvB,CAAC;AAEF,eAAO,MAAM,uBAAuB;uBAOf,OAAO,MAAM,EAAE,GAAG,CAAC;kBACxB,YAAY;qBACT,OAAO;eACb,MAAM;UAwDlB,CAAC;AAWF,eAAO,MAAM,iBAAiB;mBAMb,OAAO;kBACR,YAAY;eACf,MAAM;eACN,cAAc;MACvB,OAUH,CAAC"}
|