Build 542549stable
Module 624694
2,865 characters · in no known chunkDependencies
Source Raw
function(e,t,n){"use strict";n.d(t,{A:()=>m}),n(321073);var i=n(17928),r=n(228366),s=n(652896),a=n(495544),o=n(116956);let l={},u={},c={};function d(e){return"packetsSent"in e}function _(e,t,n,i,r){let s=i.find(e=>"video"===e.type);if(null==n&&(n={packetsSentOrReceived:0,packetsLost:0,packetLossRate:0,frameRate:0,resolution:0,entropy:0,numDatapoints:0,frameRateAggregated:0,resolutionAggregated:0,entropyAggregated:0,minVersion:e}),null==s)return n;let a=d(s)?s.packetsSent??0:s.packetsReceived??0,o=(d(s),s.packetsLost??0),l=d(s)?s.frameRateEncode??0:s.frameRateDecode??0,u=s.resolution?.height??0,c=d(s)?s.videoEntropy??0:0;n.numDatapoints+=1,n.frameRateAggregated+=l,n.resolutionAggregated+=u,n.entropyAggregated+=c;let _=r?.find(e=>"video"===e.type);if(null!=_&&t>=n.minVersion){n.numDatapoints-=1;let e=d(_)?_.packetsSent??0:_.packetsReceived??0,t=(d(_),_.packetsLost??0),i=d(_)?_.frameRateEncode??0:_.frameRateDecode??0,r=d(_)?_.videoEntropy??0:0,s=_.resolution?.height??0;n.frameRateAggregated-=i,n.resolutionAggregated-=s,n.entropyAggregated-=r,n.packetsSentOrReceived=a-e,n.packetsLost=o-t}else n.packetsSentOrReceived=a,n.packetsLost=o;return n.frameRate=n.frameRateAggregated/n.numDatapoints,n.resolution=n.resolutionAggregated/n.numDatapoints,n.entropy=n.entropyAggregated/n.numDatapoints,n.packetLossRate=n.packetsLost/(n.packetsSentOrReceived+n.packetsLost),n}function f(e,t,n,i){null==e[t]&&(e[t]={});let r=a.default.getId();for(let s of(e[t][r]=_(n.version,i?.version??0,e[t][r],n.stats.rtp.outbound,i?.stats.rtp.outbound),Object.keys(n.stats.rtp.inbound)))e[t][s]=_(n.version,i?.version??0,e[t][s],n.stats.rtp.inbound[s],i?.stats.rtp.inbound[s])}function h(e,t){u[e]?.[t]!=null&&delete u[e][t],c[e]?.[t]!=null&&delete c[e][t]}function p(e,t){if(null==e)return null;let n=l[e];return null==n||n.length<=t?null:n[n.length-t-1]}class E extends i.Ay.Store{initialize(){this.waitFor(a.default,o.A)}static displayName="MediaEngineStatsStore";getConnectionStats(e){return p(e,0)}getLastConnectionStats(e){return p(e,1)}getStatsHistory(e){return null==e?[]:l[e]??[]}getAccumulatedPerformanceStats(e,t,n){if(null==e)return null;let i="long"===n?u:c;return i[e]?.[t]??null}}let m=new E(r.h,{MEDIA_ENGINE_CONNECTION_STATS:function(e){let{connectionStats:t}=e,n={};for(let e of t){let t,{mediaEngineConnectionId:i}=e;0!==i.length&&(n[i]=e,i in l||(l[i]=[]),l[i].push(e),l[i].length>30&&(t=l[i].shift()),f(c,i,e,p(i,15)??void 0),f(u,i,e,t))}},MEDIA_ENGINE_CONNECTION_STATS_HISTORY_RESET:function(e){let{mediaEngineConnectionId:t}=e;null!=t&&(delete l[t],delete u[t],delete c[t])},STREAM_UPDATE:function(e){let{streamKey:t,paused:n}=e;if(n)return!1;let i=o.A.getRTCConnection(t)?.getMediaEngineConnectionId();if(null==i)return!1;h(i,(0,s.Iy)(t).ownerId)},RTC_CONNECTION_VIDEO:function(e){let{userId:t,mediaEngineConnectionId:n}=e;if(null==n)return!1;h(n,t)}})}