@castlabs/prestoplay 6.7.0 → 6.9.0
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/CHANGELOG.md +50 -0
- package/cjs/cl.adobe.js +3 -3
- package/cjs/cl.airplay.js +3 -3
- package/cjs/cl.broadpeak.js +6 -6
- package/cjs/cl.cast.js +110 -110
- package/cjs/cl.conviva.js +33 -33
- package/cjs/cl.core.js +419 -420
- package/cjs/cl.crypto.js +9 -9
- package/cjs/cl.dash.js +71 -71
- package/cjs/cl.externs.js +26 -26
- package/cjs/cl.freewheel.js +24 -24
- package/cjs/cl.hls.js +72 -67
- package/cjs/cl.hlssmpte.js +6 -6
- package/cjs/cl.htmlcue.js +31 -31
- package/cjs/cl.ima.js +23 -23
- package/cjs/cl.mse.js +272 -261
- package/cjs/cl.muxdata.js +15 -11
- package/cjs/cl.onboard.js +3 -3
- package/cjs/cl.persistent.js +13 -13
- package/cjs/cl.playlist.js +6 -6
- package/cjs/cl.smooth.js +71 -71
- package/cjs/cl.thumbnails.js +24 -24
- package/cjs/cl.tizen.js +71 -71
- package/cjs/cl.ttml.js +27 -27
- package/cjs/cl.verimatrix.js +5 -5
- package/cjs/cl.vimond.js +13 -13
- package/cjs/cl.vr.js +19 -19
- package/cjs/cl.vtt.js +14 -14
- package/cjs/cl.youbora.js +18 -18
- package/cl.adobe.js +3 -3
- package/cl.airplay.js +3 -3
- package/cl.broadpeak.js +5 -5
- package/cl.cast.js +87 -87
- package/cl.conviva.js +27 -27
- package/cl.core.js +358 -363
- package/cl.crypto.js +8 -8
- package/cl.dash.js +67 -67
- package/cl.externs.js +26 -26
- package/cl.freewheel.js +19 -19
- package/cl.hls.js +61 -57
- package/cl.hlssmpte.js +5 -5
- package/cl.htmlcue.js +25 -25
- package/cl.ima.js +17 -17
- package/cl.mse.js +238 -228
- package/cl.muxdata.js +12 -9
- package/cl.onboard.js +4 -4
- package/cl.persistent.js +9 -9
- package/cl.playlist.js +5 -5
- package/cl.smooth.js +58 -58
- package/cl.thumbnails.js +17 -17
- package/cl.tizen.js +57 -57
- package/cl.ttml.js +22 -22
- package/cl.verimatrix.js +4 -4
- package/cl.vimond.js +8 -8
- package/cl.vr.js +15 -15
- package/cl.vtt.js +12 -12
- package/cl.youbora.js +15 -15
- package/package.json +1 -1
- package/typings.d.ts +74 -20
package/cl.mse.js
CHANGED
|
@@ -1,232 +1,242 @@
|
|
|
1
|
-
import {clpp} from "./cl.core.js";let g={};const _ = clpp._;var f=function(window){'use strict';var Ht,It,Jt,Kt,
|
|
2
|
-
|
|
3
|
-
_.
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
_.
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
_.
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
_.
|
|
25
|
-
c
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
a.f=Math.max(a.
|
|
31
|
-
uv=function(a
|
|
32
|
-
xv=function(a){const
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
Nv=function(a,b){a.
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
1
|
+
import {clpp} from "./cl.core.js";let g={};const _ = clpp._;var f=function(window){'use strict';var Dt,Et,Ft,Gt,Ht,It,Jt,Kt,Nt,Ot,Rt,St,Tt,Ut,Vt,Wt,Yt,$t,au,bu,cu,du,gu,hu,iu,ju,ku,nu,ou,pu,qu,su,vu,wu,zu,Cu,Eu,Fu,Gu,Hu,Iu,Ku,Pu,Uu,Vu,Xu,Yu,Zu,$u,av,bv,cv,dv,fv,kv,ov,qv,rv,sv,uv,Av,Bv,Cv,Gv,Hv,Iv,Jv,Lv,Nv,Ov,Pv,Qv,Rv,Sv,Tv,Vv,Wv,Xv,Yv,Zv,$v,bw,cw,aw,Uv,iw,dw,ew,fw,gw,hw,jw,kw,nw,lw,mw,ow,pw,qw,rw,tw,uw,vw,ww,xw,yw,zw,Aw,Cw,Bw,Dw,Lw,Kw,Mw,Nw,Ow,Qw,Rw,Uw,Sw,Tw,Vw,Ww,Xw,Yw,Zw,$w,ax,bx,ex,fx,gx,hx,cx,dx,kx,nx,mx,ox,lx,px,rx,qx,tx,ux,vx,wx,xx,yx,Dx,Ex,Gx,Hx,Ax,Bx,Cx,Ix,Jx,Qx,Lx,Rx,Sx,
|
|
2
|
+
Ox,Tx,Ux,Kx,Mx,Nx,Vx,zx,Zx,by,cy,dy,$x,ay,Xx,Yx,ey,fy,gy,hy,iy,jy,ky,ly,my,ny,oy,py,Ew,Fw,Gw,Hw,Iw,Jw,By,Dy,Ey,Jy,Hy,Gy,Iy,Sy,Ty,Xy,az,oz,Ly,Vy,Wy,Py,$y,cz,dz,fz,zy,hz,iz,lz,mz,nz,Qy,Zy,ry,yy,sz,Ry,wy,xy,Jz,sy,ty,uy,vy,qz,Iz,pz,Kz,uz,Bz,tz,Lz,Mz,Nz,Oz,Pz,Qz,Rz,lu,Tz,Ru,Qu,Uy,zv,Fz,Ez,Mv,My;Dt=" buffer";Et=" is being or has been set up";Ft="\x3c/DATA\x3e\x3c/WRMHEADER\x3e";Gt="CHECKSUM";Ht="Choosing new streams after key status change";It="IterateSegmentReference";Jt="Jumping forward";Kt="MediaSource threw QuotaExceededError:";
|
|
3
|
+
_.Lt="No stream with id";_.Mt="Player is in ERROR state and can not switch to ";Nt="PrestoPlay TextTrack";Ot="Removing audio from variant - audio not compatible with platform";_.Pt="Updating manifest...";_.Qt="VOD";Rt="bufferBehind\x3d";St="bufferedBehind\x3d";Tt="calling onCanSwitch()...";Ut="cannot find segment";Vt="clpp.mse.Player";Wt="currentPeriod.startTime\x3d";_.Xt="getSegmentNextReference";Yt="key-restriction";_.Zt="onChooseStreams_";$t="presentationTime:";au="presentationTime\x3d";bu="reference.endTime\x3d";
|
|
4
|
+
cu="reference.position\x3d";du="reference.startTime\x3d";_.eu="subtitle";_.fu="subtitles";gu="switch: Stream ";hu=function(a,b,c){if(null==a&&null==b)return!0;if(null==a||null==b)return!1;a=c?a.map(c):a;b=c?b.map(c):b;return _.$f(a,b)&&_.$f(b,a)};iu=function(a){return`@@scheme:${a.scheme||""}`+`@@value:${a.value}`+`@@id:${a.id||""}@@type:${a.type||""}`+`@@protocol:${a.protocol||""}`};
|
|
5
|
+
ju=function(a,b){return a.type===b.type&&a.channelsCount===b.channelsCount&&a.frameRate===b.frameRate&&a.kind===b.kind&&a.label===b.label&&a.language===b.language&&a.mimeType===b.mimeType&&hu(a.roles,b.roles)&&hu(a.accessibility,b.accessibility,iu)};ku=function(a){for(var b=a.a;_.uj(a)&&0!==a.f.getUint8(a.a);)a.a+=1;b=a.f.buffer.slice(b,a.a);a.a+=1;return _.Eg(b)};
|
|
6
|
+
_.mu=function(a){const b=new Uint8Array(lu),c=4+b.byteLength+a.h.byteLength+4+a.f.byteLength,d=new _.Nj(c,!1);_.M(d,c);_.tj(d,b);_.tj(d,a.h);_.M(d,a.f.byteLength);_.tj(d,a.f);return _.I(d.buffer)};nu=function(a,b){a:{if(b)for(const c of a.g.keys()){const d=a.g.get(c);for(let e=0;e<d.bb.length;e++)if(d.bb[e]===b){a=d;break a}}a=null}return a?a.Ca:null};ou=function(a,b){return _.ai("Edge/")?!0:a.J.has(b)};pu=function(a,b){a=a.j.get(b);return!(!a||a!==_.Kd&&a!==_.dd)};
|
|
7
|
+
qu=function(a,b){const c=b.audio,d=b.video;if(c&&c.encrypted&&!ou(a,_.Uh(c.mimeType,c.codecs))||d&&d.encrypted&&!ou(a,_.Uh(d.mimeType,d.codecs)))return!1;const e=a.keySystem();return 0==b.drmInfos.length||b.drmInfos.some(f=>f.keySystem==e)};_.ru=function(a,b){return a.concat(b)};su=function(){};_.tu=function(a,b){if(0==b.length)return a;const c=b.map(d=>new _.cg(d));return a.map(d=>new _.cg(d)).map(d=>c.map(d.resolve.bind(d))).reduce(_.ru,[]).map(d=>d.toString())};
|
|
8
|
+
_.uu=function(a,b,c){return{keySystem:a,licenseServerUri:"",distinctiveIdentifierRequired:!1,persistentStateRequired:!1,audioRobustness:"",videoRobustness:"",serverCertificate:null,initData:b||[],keyIds:[],periodId:c?c:null}};vu=function(a,b){a=_.rg(a);b=_.rg(b);a=a.split("-");b=b.split("-");return a[0]==b[0]&&1==a.length&&2==b.length};wu=function(a){return a.language?_.rg(a.language):a.audio&&a.audio.language?_.rg(a.audio.language):a.video&&a.video.language?_.rg(a.video.language):_.xe};
|
|
9
|
+
_.xu=function(a,b){a=_.rg(a);const c=new Set;for(var d of b)c.add(_.rg(d));for(const e of c)if(e==a)return e;for(const e of c)if(vu(e,a))return e;for(const e of c)if(d=e,b=a,d=_.rg(d),b=_.rg(b),d=d.split("-"),b=b.split("-"),b=2==d.length&&2==b.length&&d[0]==b[0])return e;for(const e of c)if(vu(a,e))return e;return null};_.yu=function*(a){let b=-1,c=void 0,d=void 0;for(const e of a)0<=b&&(yield{Dd:b,item:d,cg:c,next:e}),b++,c=d,d=e;-1!==b&&(yield{Dd:b,cg:c,item:d,next:void 0})};
|
|
10
|
+
zu=function(a,b){for(const c in b)if(b[c]===a)return c;return""};
|
|
11
|
+
_.Au=function(a,b){if(!a.length)return b;if(!b.length)return a;const c=[];for(let e=0;e<a.length;e++)for(var d=0;d<b.length;d++)if(a[e].keySystem===b[d].keySystem&&a[e].periodId===b[d].periodId){const f=a[e];d=b[d];let g=[];g=g.concat(f.initData||[]);g=g.concat(d.initData||[]);const h=[...f.keyIds||[]];d.keyIds&&d.keyIds.length&&d.keyIds.forEach(k=>{h.includes(k)||h.push(k)});c.push({keySystem:f.keySystem,licenseServerUri:f.licenseServerUri||d.licenseServerUri,distinctiveIdentifierRequired:f.distinctiveIdentifierRequired||
|
|
12
|
+
d.distinctiveIdentifierRequired,persistentStateRequired:f.persistentStateRequired||d.persistentStateRequired,videoRobustness:f.videoRobustness||d.videoRobustness,audioRobustness:f.audioRobustness||d.audioRobustness,serverCertificate:f.serverCertificate||d.serverCertificate,initData:g,keyIds:h,periodId:f.periodId});break}return c};_.Bu=function(a,b){return a.length&&b.length?0<_.Au(a,b).length:!0};Cu=function(a,b){let c=0;for(const d of a)c+=b(d)?1:0;return c};
|
|
13
|
+
_.Du=function(a){if(_.Mo.has(a))return _.Mo.get(a);if(window.ManagedMediaSource){var b=ManagedMediaSource.isTypeSupported(a);_.Mo.set(a,b);return b}return window.MediaSource?(b=MediaSource.isTypeSupported(a),_.Mo.set(a,b),b):!1};Eu=function(a,b){b=b.replace(/mp2t/i,_.xd);a==_.p&&(b=b.replace(_.w,_.p));if(a=/avc1\.(66|77|100)\.(\d+)/.exec(b)){let d="avc1.";var c=a[1];d="66"==c?d+"4200":"77"==c?d+"4d00":d+"6400";c=Number(a[2]);d+=(c>>4).toString(16);d+=(c&15).toString(16);b=b.replace(a[0],d)}return b};
|
|
14
|
+
Fu=function(a,b){return!window.muxjs||"mp2t"!=a.toLowerCase().split(";")[0].split("/")[1]&&"aac"!=a.toLowerCase().split(";")[0].split("/")[1]?!1:b?_.Du(Eu(b,a))||_.Du(a.replace(/aac/i,_.xd)):_.Du(Eu(_.p,a))||_.Du(a.replace(/aac/i,_.xd))||_.Du(Eu(_.w,a))};
|
|
15
|
+
Gu=function(a,b){const c=new Map;c.set(a,b);try{const d=b.match(/"(.*?)"/)[0].replace(/"/g,"").split(","),e=new Map;if(1<d.length)for(const f of d)f.startsWith("avc")?e.set(_.w,`video/mp4;codecs="${f}"`):f.startsWith("mp4a")&&e.set(_.p,`audio/mp4;codecs="${f}"`);return 0<e.size?e:c}catch(d){return c}};Hu=function(a,b){a.h=!0;a.f=new _.Mk;a.m=[];a.j=[];a.g=[];b=_.I(b);a.a.push(b);a.a.flush();a.h&&a.f.reject(new _.H(_.G,3,3018));return a.f};
|
|
16
|
+
Iu=function(a){const b=[a.mimeType];_.No.forEach((c,d)=>{(d=a[d])&&b.push(c+'\x3d"'+d+'"')});return b.join(";")};_.Ju=function(a){a=a.split(".");const b=a[0];a.pop();return[b,a.join(".")]};Ku=function(a,b="total"){b=new _.Ro(void 0,b);for(const c of a)b.a.push(c);b.length=a.length;return b};_.Lu=function(a,b){return Array.prototype.filter.call(a.childNodes,c=>c instanceof Element&&c.tagName==b)};_.Mu=function(a,b){a=_.Lu(a,b);return 1!=a.length?null:a[0]};
|
|
17
|
+
_.Nu=function(a){return Array.prototype.every.call(a.childNodes,b=>b.nodeType==Node.TEXT_NODE||b.nodeType==Node.CDATA_SECTION_NODE)?a.textContent.trim():null};_.Ou=function(a,b){const c=new DOMParser;let d=null,e=null;try{e=c.parseFromString(a,_.te)}catch(f){}e&&e.documentElement.tagName==b&&(d=e.documentElement);return d&&0<d.getElementsByTagName("parsererror").length?null:d};
|
|
18
|
+
Pu=function(a){const b=[];b.push(a[3]);b.push(a[2]);b.push(a[1]);b.push(a[0]);b.push(a[5]);b.push(a[4]);b.push(a[7]);b.push(a[6]);a=_.I(a);a.set(b,0);return a};
|
|
19
|
+
_.Su=function(a,b,c,d){var e=_.Vg(b);if(8!==e.byteLength)e="";else{var f=Pu(e);e=_.Sg(f);b:switch(f=f.byteLength,_.Gf("Trying to create PlayReady header in version",a),a){case "4.0.0.0":e=[`<WRMHEADER xmlns="${"http://schemas.microsoft.com/DRM/2007/03/PlayReadyHeader"}" version="${a}">`,"\x3cDATA\x3e\x3cPROTECTINFO\x3e",`<KEYLEN>${f}</KEYLEN>`,"\x3cALGID\x3eAESCTR\x3c/ALGID\x3e\x3c/PROTECTINFO\x3e",`<KID>${e}</KID>`,c?`<CHECKSUM>${c}</CHECKSUM>`:"",d?`<LA_URL>${d}</LA_URL>`:"",Ft].join("");break b;
|
|
20
|
+
case "4.1.0.0":e=[`<WRMHEADER xmlns="${"http://schemas.microsoft.com/DRM/2007/03/PlayReadyHeader"}" version="${a}">`,'\x3cDATA\x3e\x3cPROTECTINFO\x3e\x3cKID ALGID\x3d"AESCTR" ',c?`CHECKSUM="${c}" `:"",`VALUE="${e}"`,"\x3e\x3c/KID\x3e\x3c/PROTECTINFO\x3e",d?`<LA_URL>${d}</LA_URL>`:"",Ft].join("");break b;case "4.2.0.0":case "4.3.0.0":e=[`<WRMHEADER xmlns="${"http://schemas.microsoft.com/DRM/2007/03/PlayReadyHeader"}" version="${a}">`,'\x3cDATA\x3e\x3cPROTECTINFO\x3e\x3cKIDS\x3e\x3cKID ALGID\x3d"AESCTR" ',
|
|
21
|
+
c?`CHECKSUM="${c}" `:"",`VALUE="${e}"`,"\x3e\x3c/KID\x3e\x3c/KIDS\x3e\x3c/PROTECTINFO\x3e",d?`<LA_URL>${d}</LA_URL>`:"",Ft].join("");break b;default:_.D("Cannot create PlayReady header in version",a),e=""}}if(!e)return null;_.Gf("New payload",e);e=_.I(_.Jg(e,!0));return new Qu(Ru,b,d||null,e,a,c)};_.Tu=function(a,b){return b===a.version?a:_.Su(b,a.a,a.j||void 0,a.g||void 0)};
|
|
22
|
+
Uu=function(a){a=_.Mu(a,"PROTECTINFO");if(!a)return null;var b=_.Mu(a,"KID");if(!b)return null;a=b.getAttribute("VALUE");if(!a)return null;const c=b.getAttribute(Gt);b=b.getAttribute("ALGID");return{value:a,sd:c,kf:b}};
|
|
23
|
+
Vu=function(a){a=_.Mu(a,"PROTECTINFO");if(!a)return null;a=_.Mu(a,"KIDS");if(!a)return null;var b=_.Lu(a,"KID");if(!b.length)return null;a=[];for(const c of b)if(b=c.getAttribute("VALUE")){const d=c.getAttribute(Gt),e=c.getAttribute("ALGID");a.push({value:b,sd:d,kf:e})}return a.length?a:null};
|
|
24
|
+
_.Wu=function(a){a:{a=new _.qk(new DataView(a.buffer),!0);_.N(a);for(_.xj(a);_.uj(a);)if(1===_.xj(a)){var b=_.xj(a);a=_.Bj(a,b);break a}a=null}b=_.Gg(a,!0);var c=_.Ou(b,"WRMHEADER");b=c.getAttribute("version");var d=_.Mu(c,"DATA");c=(c=_.Mu(d,"LA_URL"))?_.Nu(c):"";var e;if(e=_.Mu(d,"KID"))if(e=_.Nu(e)){var f=_.Mu(d,Gt);e={value:e,sd:f?f.textContent.trim():null}}else e=null;else e=null;d=e?[e]:(e=Uu(d))?[e]:(d=Vu(d))?d:null;const {value:g="",sd:h}=d&&d[0]||{};d=_.Ug(g);d=Pu(d);d=_.Yg(d);return new Qu(Ru,
|
|
25
|
+
d,c,a,b,h)};Xu=function(a,b){return a.start-b.start};Yu=function(a){return a.S.map(b=>({start:b.start,end:b.end,width:b.width,height:b.height,bandwidth:b.bandwidth,rendition:b.rendition}))};Zu=function(a){a.a&&a.a.trigger(new _.F(_.cc))};
|
|
26
|
+
$u=function(a){if(a.a){var b=!1,c={};for(let d=0;d<a.S.length;d++){const e=a.S[d],f=e.width+"x"+e.height,g=c[f];if(g&&g!==e.bandwidth){b=!0;break}c[f]=e.bandwidth}b&&!a.g?(a.log.debug("Tracking timeupdates"),a.a.on(_.ue,a.f,a),a.g=!0):!b&&a.g&&(a.log.debug("Stop tracking timeupdates"),a.a.off(_.ue,a.f),a.g=!1)}};av=function(a,b,c){a.S=a.S.filter(d=>{if(d.end<=b||d.start>=c)return!1;d.start=Math.max(d.start,b);d.end=Math.min(d.end,c);return!0});a.a&&a.a.trigger(new _.F(_.Ke))};
|
|
27
|
+
bv=function(a,b){let c=null;for(const d of a)b>=d.startTime&&(c=d);return c};cv=function(a){const b=new Set;a.variants.forEach(c=>{c.audio&&b.add(c.audio);c.video&&(b.add(c.video),c.video.trickModeVideo&&b.add(c.video.trickModeVideo))});a.textStreams.forEach(c=>b.add(c));a.thumbStreams.forEach(c=>b.add(c));return b};dv=function(a,b){for(let c=0;c<a.length;c++)if(cv(a[c]).has(b))return c;return-1};fv=function(a,b){Array.from(cv(a)).forEach(c=>{c.segmentIndex&&_.ev(c.segmentIndex,b)})};
|
|
28
|
+
_.gv=function(a,b,c){const d=Math.pow(a.g,b);c=c*(1-d)+d*a.a;isNaN(c)||(a.a=c,a.f+=b)};_.hv=function(a){return a.a/(1-Math.pow(a.g,a.f))};_.iv=function(a,b,c,d,e,f,g,h){a=_.jh(a);a.timeout=d.timeout;a.maxAttempts=d.maxAttempts;a.baseDelay=d.baseDelay;a.fuzzFactor=d.fuzzFactor;a.backoffFactor=d.backoffFactor;if(0!==b||null!=c)a.headers.Range=c?"bytes\x3d"+b+"-"+c:"bytes\x3d"+b+"-";e&&(a.startTime=e);f&&(a.endTime=f);g&&(a.contentType=g);h&&(a.timescale=h);return a};_.jv=function(a,b){a.m=b;a.o=b};
|
|
29
|
+
kv=function(a){return a.m?a.f:a.o?a.g:null};_.lv=function(a,b){a.h=null==a.h?b:Math.min(a.h,b)};_.mv=function(a,b,c){if(0!=b.length){var d=b[b.length-1].endTime+c;_.lv(a,b[0].startTime+c);a.a=b.reduce((e,f)=>Math.max(e,f.endTime-f.startTime),a.a);a.g=Math.max(a.g||0,d);null!=a.w&&a.H&&(a.w=(Date.now()+a.B)/1E3-(a.g||0)-a.a);a.C.debug("notifySegments: maxSegmentDuration\x3d"+a.a)}};_.nv=function(a,b){a.a=Math.max(a.a,b);a.C.debug("notifyNewSegmentDuration: maxSegmentDuration\x3d"+a.a)};
|
|
30
|
+
ov=function(a){if(a.m)a=a.f;else if(a.o)a=a.g||0;else{var b=(Date.now()+a.B)/1E3;b=a.G?Math.max(0,b-(a.a-a.A)-a.w):Math.max(0,b-a.a-a.w);a=Math.min(b,a.f)}return a};_.pv=function(a){return Infinity==a.j?0:Math.max(0,ov(a)-a.j)};qv=function(a){return Math.max(0,ov(a)-(a.m||a.o?0:a.F))};rv=function(a,b){const c=Math.max(a.h,0);return Infinity==a.j?Math.ceil(1E3*c)/1E3:Math.max(c,Math.min(ov(a)-a.j+b,qv(a)))};sv=function(a,b){a.f=b};
|
|
31
|
+
uv=function(a){let b=a.g.get(a.a);if(!b)return null;0<b.a.length&&b.Ha().length&&a.f>=b.a.length&&(a.a+=1,a.f=0,b=a.g.get(a.a));return b&&0<b.a.length?b.a[a.f]||null:b};_.ev=function(a,b){for(;a.a.length;)if(0>=a.a[0].endTime)a.a.shift();else break;0==a.a.length||a.a[a.a.length-1].startTime>=b||(a.a[a.a.length-1].endTime=b)};_.vv=function(a){return a.a.length?a.a[a.a.length-1].endTime:0};
|
|
32
|
+
_.xv=function(a,b){let c=[];const d=[];for(var e=0,f=0;e<a.a.length&&f<b.length;){var g=a.a[e];const h=b[f];g.startTime<h.startTime?(c.push(g),e++):(g.startTime>h.startTime?0===e?d.push(h):a.h.info("Refusing to rewrite original references on update!"):(.1<Math.abs(g.endTime-h.endTime)?c.push(new _.wv(g.position,h.startTime,h.endTime,h.Ha,h.ua,h.ha,h.sa,h.keyInfo,h.lc,h.timescale,h.horizontalTiles,h.verticalTiles,h.durationPerTile)):c.push(g),e++),f++)}for(;e<a.a.length;)c.push(a.a[e++]);if(c.length)for(e=
|
|
33
|
+
c[c.length-1].position+1;f<b.length;)g=b[f++],g=new _.wv(e++,g.startTime,g.endTime,g.Ha,g.ua,g.ha,g.sa,g.keyInfo,g.lc,g.timescale,g.horizontalTiles,g.verticalTiles,g.durationPerTile),c.push(g);else c=b;b=c;if(d.length&&c.length){b=[];f=c[0].position;e=d.length;for(const h of d)b.push(new _.wv(f-e--,h.startTime,h.endTime,h.Ha,h.ua,h.ha,h.sa,h.keyInfo,h.lc,h.timescale,h.horizontalTiles,h.verticalTiles,h.durationPerTile));for(const h of c)b.push(h)}a.a=b};
|
|
34
|
+
_.yv=function(a,b){for(let c=0;c<a.a.length;++c)if(a.a[c].endTime>b)return a.a.splice(0,c);b=a.a;a.a=[];return b};Av=function(a,b){let c=a.f(b);c=null===c?-1:c-1;const d=a.get(c+1);let e=-1;if(d&&0<d.a.length)for(let f=d.a.length-1;0<=f;--f){let g=d.a[f];if(b>=g.startTime&&b<g.endTime){for(;f&&!g.g;)--f,g=d.a[f];if(!g.g)break;c+=1;e=f-1;break}}return new zv(a,c,e)};Bv=function(a,b){for(const c of a.a)c.m(a.f.currentTime,b)};Cv=function(a,b,c,d){a.a=b;a.f=c;a.g=d};_.Dv=function(a){_.zn[a]&&delete _.zn[a]};
|
|
35
|
+
_.Ev=function(a){_.xn[a]&&delete _.xn[a]};_.Fv=function(a){a=a.toLowerCase();return _.Xn[a]||window.muxjs&&a==_.Rb?!0:!1};Gv=function(a,b,c,d){return Promise.resolve().then(()=>{if(a.o&&a.g)if(null==c||null==d)a.o.parseInit(_.I(b));else{var e={periodStart:a.w,segmentStart:c,segmentEnd:d};e=a.o.parseMedia(_.I(b),e);var f=e.cues.filter(g=>g.startTime>=a.h&&g.startTime<a.j);a.g.append(f,e.styles);null==a.a&&(a.a=Math.max(c,a.h));a.f=Math.min(d,a.j)}})};
|
|
36
|
+
Hv=function(a,b,c){a.A=b;if(b=a.m.get(b))for(const d of b.keys()){let e=b.get(d);e&&(e=e.filter(f=>f.endTime<=c),a.g.append(e,[]))}};
|
|
37
|
+
Iv=function(a,b,c,d,e){const f=c+" "+d,g=new Map;for(const h of b){b=h.stream;g.has(b)||g.set(b,new Map);g.get(b).has(f)||g.get(b).set(f,[]);h.startTime+=e;h.endTime+=e;if(!(h.startTime>=a.h&&h.startTime<a.j))continue;const k=new _.ro(h.startTime,h.endTime,h.text);g.get(b).get(f).push(k);b==a.A&&a.g.append([k],[])}for(const h of g.keys()){a.m.has(h)||a.m.set(h,new Map);for(const k of g.get(h).keys())e=g.get(h).get(k),a.m.get(h).set(k,e)}a.a=null==a.a?Math.max(c,a.h):Math.min(a.a,Math.max(c,a.h));
|
|
38
|
+
a.f=Math.max(a.f,Math.min(d,a.j))};Jv=function(a){const b=_.Uh(a.mimeType,a.codecs),c=Iu(a);return _.Fv(b)||_.Du(c)||Fu(b,a.type)};
|
|
39
|
+
Lv=function(a,b){if(window.ManagedMediaSource){a.j.disableRemotePlayback=!0;var c=new ManagedMediaSource;a.m.one(c,"sourceopen",()=>{URL.revokeObjectURL(a.w);b.resolve()});a.m.on(c,"startstreaming",()=>{a.R=!0});a.m.on(c,"endstreaming",()=>{a.R=!1});a.w=Kv(c);a.j.src=a.w;return c}c=new MediaSource;a.w=Kv(c);a.m.one(c,"sourceopen",()=>{URL.revokeObjectURL(a.w);b.resolve()});a.j.src=a.w;return c};
|
|
40
|
+
Nv=function(a,b){a.f||(a.f=new Mv(a.K,a.C));a=a.f;if(b!=_.Rb){var c=_.Xn[b];if(!c)throw new _.H(_.G,2,2012,"Text parser is unavailable for "+b);a.o=new c(a.B)}};Ov=function(a,b){b.forEach((c,d)=>{c=a.o.addSourceBuffer(c);a.m.on(c,_.Yc,a.U.bind(a,d));a.m.on(c,"updateend",a.A.bind(a,d));a.g[d]=c;a.h[d]=[];a.G[d]=!1});a.N=b.has(_.p)&&b.has(_.w)};Pv=function(a){return a.K.streaming.ignoreManagedMediaSourceStreamingHints?!0:a.R};Qv=function(a){return a.o?a.o.readyState==_.Xc:!0};
|
|
41
|
+
Rv=function(a,b){try{return new _.Ro(a.g[b].buffered,b)}catch(c){return b in a.g&&a.a.error("failed to get buffered range for "+b,c),null}};Sv=function(a){const b={};b.total=new _.Ro(a.j.buffered,"total");b.audio=Rv(a,_.p);b.video=Rv(a,_.w);let c=[];a.f&&(c=[{start:a.f.ob(),end:a.f.Aa()}]);b.text=Ku(c,_.v);return b};Tv=function(a,b){return a.g[b]?(a=Rv(a,b))?a.toString():"":""};Vv=function(a,b,c){if(a.J)return Promise.reject();c={start:c,p:new _.Mk};a.h[b].push(c);1===a.h[b].length&&Uv(a,b);return c.p};
|
|
42
|
+
Wv=function(a,b,c,d,e,f,g,h){h=void 0===h?!1:h;const k=a.g[b];let l=-1,m=0;k&&k.buffered&&(m=k.buffered.length);b===_.w&&null!==d&&null!==e&&h&&(l=0<m?k.buffered.end(m-1):-1);b==_.v?c=Gv(a.f,c,d,e):a.B[b]?c=Hu(a.B[b],c).then(n=>{n.captions&&0<n.captions.length&&(a.f||Nv(a,_.se),Iv(a.f,n.captions,d,e,a.g.video.timestampOffset));const q=[];0<n.audio.byteLength&&a.g.audio&&q.push(Vv(a,_.p,a.M.bind(a,_.p,n.audio.buffer)));0<n.video.byteLength&&a.g.video&&q.push(Vv(a,_.w,a.M.bind(a,_.w,n.video.buffer)));
|
|
43
|
+
return Promise.all(q)}):(f&&window.muxjs&&(a.f||Nv(a,_.se),null==d&&null==e?a.H.init(c):a.H.g(c,n=>{n.length&&Iv(a.f,n,d,e,a.g.video.timestampOffset)})),c=Vv(a,b,a.M.bind(a,b,c)));return c.then(()=>{if(b===_.w&&null!==d&&null!==e&&!h)a.F.append(d,e,g),null!==d&&null!==e&&a.a.debug("Appended video segment ",d,e,"Buffer:",Tv(a,b));else if(b===_.p&&null!==d&&null!==e)Zu(a.F),null!==d&&null!==e&&a.a.debug("Appended audio segment ",d,e,"Buffer:",Tv(a,b));else if(b===_.w&&null!==d&&null!==e&&h){var n=k.buffered.length,
|
|
44
|
+
q=0<n?k.buffered.end(n-1):-1;0>l&&0<n&&(l=k.buffered.start(0));0<=l&&0<q&&a.F.append(l,q,g)}if(!a.G[b]&&k&&1===k.buffered.length){n=k.buffered.start(0);const t=d-n;if(Math.abs(t)>a.aa&&0===k.timestampOffset)return a.a.warn(`Detected a delta of ${t} between `+`media times and segment times for ${b}. `+`The segment start time is ${d} and the media start time `+`is ${n}. Adjusting timestampOffset.`),n=Vv(a,b,()=>{a.W(b,t)}),q=Vv(a,b,a.T.bind(a,b,!1)),Promise.all([n,q])}null!==d&&null!==e&&(a.G[b]=!0)}).catch(n=>
|
|
45
|
+
{throw n;})};Xv=function(a,b){const c=a.Aa(_.w)||0;Hv(a.f,b,c)};Yv=function(a){a.f&&Hv(a.f,"",0)};Zv=function(a,b,c,d,e){return[Vv(a,b,a.Y.bind(a,b)),Vv(a,b,a.W.bind(a,b,c)),Vv(a,b,a.ba.bind(a,b,d,e))]};$v=function(a,b,c,d,e){if(b==_.v)return a.f.w=c,a=a.f,a.h=d,a.j=e,Promise.resolve();b=Zv(a,b,c,d,e);a.N&&(b=b.concat(Zv(a,_.p,c,d,e)));return Promise.all(b)};
|
|
46
|
+
bw=function(a,b){if(a.J)return Promise.reject();const c=[];for(const d in a.g){const e=new _.Mk,f={start:function(g){g.resolve()}.bind(null,e),p:e};a.h[d].push(f);c.push(e);1==a.h[d].length&&f.start()}return Promise.all(c).then(()=>{for(const e in a.g);let d;try{b()}catch(e){d=Promise.reject(new _.H(_.G,3,3015,{mediaError:e}))}for(const e in a.g)aw(a,e);return d},()=>{for(const d in a.g)a.h[d].length&&a.h[d].shift();return Promise.reject()})};cw=function(a,b){bw(a,()=>{a.o.duration=b})};
|
|
47
|
+
aw=function(a,b){a.h[b].shift();Uv(a,b)};Uv=function(a,b){const c=a.h[b][0];if(c)try{a.a.debug("Starting next operation for "+b),c.start()}catch(d){"QuotaExceededError"==d.name?c.p.reject(new _.H(_.G,3,3017,{type:b})):c.p.reject(new _.H(_.G,3,3015,{mediaError:d})),aw(a,b)}else a.a.debug("No more scheduled operations for "+b)};
|
|
48
|
+
iw=function(a,b,c,d){var e=a.periods.flatMap(h=>h.variants);if(b.length||c.length)e=dw(e,b,c);e=ew(e,d);if(1<a.periods.length){const h=l=>{l=l.split(".");let m=l[0];1<l.length&&(m+="."+l[1]);return m.toLowerCase()};b=[];for(var f of a.periods){c=new Set;for(const l of f.variants)null!==l.audio&&c.add(h(l.audio.codecs));b.push(c)}let k=b[0];for(f=1;f<b.length;f++){const l=b[f];k=new Set([...k].filter(m=>l.has(m)))}e=e.filter(l=>0===k.size&&null===l.audio?!0:0<k.size&&null===l.audio?!1:k.has(h(l.audio.codecs)))}e=
|
|
49
|
+
fw(e);const g=gw(e);for(const h of a.periods)h.variants=h.variants.filter(k=>{if(hw(k)===g)return!0;_.Gf("Dropping Variant (better codec available)",k);return!1})};dw=function(a,b,c){for(const d of b)if(b=a.filter(e=>e.video&&e.video.codecs.startsWith(d)),b.length){a=b;break}for(const d of c)if(c=a.filter(e=>e.audio&&e.audio.codecs.startsWith(d)),c.length){a=c;break}return a};
|
|
50
|
+
ew=function(a,b){var c=a.filter(f=>f.audio&&f.audio.channelsCount);const d=new Map;for(var e of c)c=e.audio.channelsCount,d.has(c)||d.set(c,[]),d.get(c).push(e);e=Array.from(d.keys());if(0===e.length)return a;a=e.filter(f=>f<=b);return a.length?d.get(Math.max.apply(null,a)):d.get(Math.min.apply(null,e))};fw=function(a){const b=new _.fo;for(const c of a)a=hw(c),b.push(a,c);return b};
|
|
51
|
+
gw=function(a){let b="",c=Infinity;a.forEach((d,e)=>{e=e.reduce((f,g)=>f+g.bandwidth||0,0)/e.length;_.Gf(_.Dc,d,"avg bandwidth",e);e<c&&(b=d,c=e)});return b};hw=function(a){let b="";a.video&&(b=_.Ju(a.video.codecs)[0]);let c="";a.audio&&(c=_.Ju(a.audio.codecs)[0]);return b+"-"+c};
|
|
52
|
+
jw=function(a,b,c){var d=a.video,e;if(e=d&&d.width&&d.height){e=d.width;if(e=e>=b.minWidth&&e<=Math.min(b.maxWidth,c.width))e=d.height,e=e>=b.minHeight&&e<=Math.min(b.maxHeight,c.height);if(c=e)d=d.width*d.height,c=d>=b.minPixels&&d<=b.maxPixels;e=!c}(d=e)||(a=a.bandwidth,d=!(a>=b.minBandwidth&&a<=b.maxBandwidth));return d?!1:!0};kw=function(a,b,c){let d=!1;for(const e of a)a=e.allowedByApplication,e.allowedByApplication=jw(e,b,c),a!=e.allowedByApplication&&(d=!0);return d};
|
|
53
|
+
nw=function(a,b,c,d){let e=!1;d.variants=d.variants.filter(f=>{if(a&&a.R&&!qu(a,f))return _.Gf("Dropping variant - not compatible with key system",f),!1;let g=f.audio;const h=f.video;if(g&&!Jv(g)){const k=g.codecs;0<=g.codecs.indexOf("ec-3")?(_.Gf("Trying to use AC-3 for EC-3"),g.codecs=g.codecs.replace("ec-3","ac-3"),Jv(g)?_.Bf("Using AC-3 instead of EC-3 for",lw(g)):(g.codecs=k,_.Bf(Ot,lw(g)),f.audio=null,e=!0,g=null)):(_.Bf(Ot,lw(g)),f.audio=null,e=!0,g=null)}return h&&!Jv(h)?(_.Bf("Dropping variant - video not compatible with platform",
|
|
54
|
+
lw(h)),!1):g&&b&&!mw(g,b)?(_.Bf("Dropping variant - not compatible with active audio","active audio",lw(b),"variant.audio",lw(g)),!1):h&&c&&!mw(h,c)?(_.Bf("Dropping variant - not compatible with active video","active video",lw(c),"variant.video",lw(h)),!1):!0});if(e){let f=!1,g=!1;for(const h of d.variants)!f&&h.video&&h.audio&&(f=!0),g||h.audio||!h.video||(g=!0);f&&g&&(d.variants=d.variants.filter(h=>h.video&&!h.audio?(_.Bf("Dropping variant - not compatible with video + audio","variant.video",lw(h.video)),
|
|
55
|
+
!1):!0))}d.textStreams=d.textStreams.filter(f=>{const g=_.Fv(_.Uh(f.mimeType,f.codecs));g||_.Gf("Dropping text stream. Is not supported by the platform.",f);return g})};
|
|
56
|
+
lw=function(a){const b=Iu(a);return a.type===_.p?"type\x3daudio mimeType\x3d"+a.mimeType+" codecs\x3d"+a.codecs+" codecInfo\x3d"+b+" bandwidth\x3d"+a.bandwidth+" channelsCount\x3d"+a.channelsCount:a.type===_.w?"type\x3dvideo mimeType\x3d"+a.mimeType+" codecs\x3d"+a.codecs+" codecInfo\x3d"+b+" bandwidth\x3d"+a.bandwidth+" frameRate\x3d"+a.frameRate+" width\x3d"+a.width+" height\x3d"+a.height:"unexpected stream type"};
|
|
57
|
+
mw=function(a,b){return a.mimeType!=b.mimeType||a.codecs.split(".")[0]!=b.codecs.split(".")[0]?!1:!0};
|
|
58
|
+
ow=function(a){const b=a.audio,c=a.video,d=b?b.codecs:null,e=c?c.codecs:null,f=[];e&&f.push(e);d&&f.push(d);const g=c&&c.mimeType||null,h=b&&b.mimeType||null;var k=[];b&&k.push(b.kind);c&&k.push(c.kind);k=k[0]||null;const l=new Set,m=new Set;if(b)for(var n of b.roles)m.add(n);if(c)for(const q of c.roles)l.add(q);n=[c,b].map(q=>q?q.accessibility||[]:[]).reduce((q,t)=>q.concat(t),[]);a={id:a.id,active:!1,type:"variant",bandwidth:a.bandwidth,language:a.language,label:null,kind:k,width:null,height:null,
|
|
52
59
|
frameRate:null,mimeType:g,audioMimeType:h,codecs:f.join(", "),audioCodec:d,videoCodec:e,primary:a.primary,roles:Array.from(l),audioRoles:Array.from(m),videoId:null,audioId:null,channelsCount:null,audioBandwidth:null,videoBandwidth:null,originalVideoId:null,originalAudioId:null,originalTextId:null,accessibility:n,keyId:c?c.keyId:b?b.keyId:null};c&&(a.videoId=c.id,a.originalVideoId=c.originalId,a.width=c.width||null,a.height=c.height||null,a.frameRate=c.frameRate||null,a.videoBandwidth=c.bandwidth||
|
|
53
60
|
null);b&&(a.audioId=b.id,a.originalAudioId=b.originalId,a.channelsCount=b.channelsCount,a.audioBandwidth=b.bandwidth||null,a.label=b.label,a.audioRoles=b.roles);return a};
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
_.
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
_.
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
${b} with ID: ${c.id}`);if(b===_.J){const f=e.ja().find(g=>g.id==c.id);f&&(a.f.set(b,c),
|
|
64
|
-
l.id).filter(l=>l!==f.id);g=h.find(l=>k.find(m=>m==l.audioId))}}else g=
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
b,a.a=d,a.j=c;d=b-a.h;d>=a.m&&c&&a.f(a.a,d)}}else if((0!=e||a.w)&&a.F&&(f=d.start(e),!(f>=
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
f<g.end(h)){f=g.start(h+1)-f;break a}f=null}f&&(e=Math.min(f+.1,e))}a.f.warn(`Seeking forward ${e} seconds to break stall.`);b.currentTime+=e}else a.f.warn("Pausing and unpausing to break stall."),b.pause(),b.play()});return c}
|
|
78
|
-
|
|
79
|
-
|
|
61
|
+
pw=function(a){return{id:a.id,active:!1,type:_.v,bandwidth:0,language:a.language,label:a.label,kind:a.kind||null,width:null,height:null,frameRate:null,mimeType:a.mimeType,audioMimeType:null,codecs:a.codecs||null,audioCodec:null,videoCodec:null,primary:a.primary,roles:a.roles,audioRoles:null,videoId:null,audioId:null,channelsCount:null,audioBandwidth:null,videoBandwidth:null,originalVideoId:null,originalAudioId:null,originalTextId:a.originalId,accessibility:a.accessibility,keyId:null}};
|
|
62
|
+
qw=function(a){return a.allowedByApplication&&a.allowedByKeySystem};
|
|
63
|
+
_.sw=function(a,b,c){b=_.Yf(b);let d=a;const e=a.filter(g=>g.primary);e.length&&(d=e);const f=d.length?d[0].language:"";d=d.filter(g=>g.language===f);b.some(g=>{const h=_.xu(_.rg(g),a.map(k=>k.language));return h?(d=a.filter(k=>_.rg(k.language)===h),!0):!1});if(c){b=rw(d,c);if(b.length)return b;_.D("No exact match for the text role could be found.")}else if(b=d.filter(g=>0===g.roles.length),b.length)return b;b=d.map(g=>g.roles).reduce(_.ru,[]);return b.length?rw(d,b[0]):d};
|
|
64
|
+
rw=function(a,b){return a.filter(c=>c.roles.includes(b))};tw=function(a,b,c){for(let d=0;d<c.length;d++)if(c[d].audio===a&&c[d].video===b)return c[d];return null};
|
|
65
|
+
uw=function(a,b){var c=String(_.wh++);c=new _.xh(c,a);c.mimeType=_.th(b.mimeType);if(a===_.J||a===_.K)c.label=_.th(b.label),c.language=_.th(b.language);a===_.L?(c.frameRate=b.frameRate,c.roles=b.roles):a===_.K?(c.channelsCount=b.channelsCount,c.roles=b.audioRoles||[],c.mimeType=_.th(b.audioMimeType)):(c.kind=_.th(b.kind),c.roles=b.roles);c.accessibility=a===_.L||a===_.K?(b.accessibility||[]).filter(d=>d.type===a):b.accessibility||[];return c};
|
|
66
|
+
vw=function(a,b,c){const d=new _.Fh(a===_.L?`${b.videoId}`:a===_.K?`${b.audioId}`:`${b.id}`,c);switch(a){case _.L:d.codec=_.th(b.videoCodec);d.bandwidth=b.videoBandwidth||b.bandwidth;d.width=b.width;d.height=b.height;d.originalId=b.originalVideoId;d.drm={keyId:b.keyId||void 0};break;case _.K:d.codec=_.th(b.audioCodec);d.bandwidth=b.audioBandwidth||b.bandwidth;d.originalId=b.originalAudioId;d.drm={keyId:b.keyId||void 0};break;default:d.codec=_.th(b.codecs),d.originalId=b.originalTextId}(a=c.renditions.find(e=>
|
|
67
|
+
_.rf(e,d,null,["id","track"])))||c.renditions.push(d);return a||d};ww=function(a,b){a=a.reduce((c,d)=>{b===_.L?null===d.videoId||c[d.videoId]&&!d.active||(c[d.videoId]=d):b===_.K&&(null===d.audioId||c[d.audioId]&&!d.active||(c[d.audioId]=d));return c},{});return Object.values(a)};xw=function(a,b){if(void 0!==b&&null!==b){const c=a.filter(d=>d.audio&&d.audio.id===b);if(0<c.length)return c}return a};
|
|
68
|
+
yw=function(a,b,c){function d(e,f){return null==e?null==f:f.id==e}for(let e=0;e<c.length;e++)if(d(a,c[e].audio)&&d(b,c[e].video))return c[e];return null};zw=function(a,b){return a.h.filter(c=>c.type===b)};Aw=function(a,b){return(a=a.a.get(b)||null)&&a.track};Cw=function(a,b,c){c&&Aw(a,c.type)===c&&!a.l.la()||Bw(a,b,c&&c.renditions[0])};
|
|
69
|
+
Bw=function(a,b,c,d){d=void 0===d?!1:d;if(a.l&&((a.a.get(b)||null)!==c||a.l.la())){var e=a.l;if(c){if(0>a.h.indexOf(c.track))throw Error(`Unknown rendition with ID ${c.id}`);if(b!==c.track.type)throw Error("Types mismatch");a.g.debug(`Activate rendition type
|
|
70
|
+
${b} with ID: ${c.id}`);if(b===_.J){const f=e.ja().find(g=>g.id==c.id);f&&(a.f.set(b,c),Dw(a,c),e.trigger(new _.F(_.Qi)),Ew(e,!0).then(()=>{Fw(e,f)}).catch(g=>{a.g.warn("Error while activating track",g)}))}else if(b===_.K)a.f.set(b,c),Gw(e,parseInt(c.id,10));else if(b===_.L){const f=a.a.get(_.K)||null;let g=null;if(f){const h=Hw(e).filter(k=>k.videoId==c.id);g=h.find(k=>k.audioId==f.id)||null;if(!g){a.g.debug("Unable to find exact variant. Searching for equivalent");const k=f.track.renditions.map(l=>
|
|
71
|
+
l.id).filter(l=>l!==f.id);g=h.find(l=>k.find(m=>m==l.audioId))||null}}else g=Hw(e).find(h=>h.videoId==c.id)||null;g?(a.f.set(b,c),Iw(e,g,d)):a.g.warn("Cannot find matching variant")}}else a.g.debug(_.va+b),Aw(a,b)&&(b===_.J?Ew(e,!1).then(()=>{a.a.set(b,null);e.trigger(new _.F(_.Qi))}).catch(f=>{a.g.warn("Error while de-activating text tracks",f)}):b===_.K?a.g.info("Enabling ABR for audio is not supported"):Iw(e,null,d))}};
|
|
72
|
+
Dw=function(a,b){a.a.set(b.track.type,b);b===(a.f.get(b.track.type)||null)&&a.f.set(b.track.type,null)};Lw=function(a){if(a.l){a.g.debug("Track list change detected, updating track list");var b=[];for(var c of Object.values(_.Ko))a.a.set(c,null),a.f.set(c,null);for(var d of a.l.ja()){let e=uw(_.J,d);e=(c=b.find(g=>ju(e,g)))||e;const f=vw(_.J,d,e);d.active&&a.a.set(_.J,f);c||b.push(e)}Jw(a.l)||a.a.set(_.J,null);d=Hw(a.l);Kw(a,b,d,_.L);Kw(a,b,d,_.K);a.h=b}};
|
|
73
|
+
Kw=function(a,b,c,d){c=ww(c,d);for(const e of c){let f=uw(d,e);f=(c=b.find(h=>ju(f,h)))||f;const g=vw(d,e,f);e.active&&a.a.set(d,g);c||b.push(f)}};Mw=function(a,b,c){if(b){a.h.length||Lw(a);var d=b.type,e=a.a.get(d)||null,f;for(const g of zw(a,d))if(f=g.renditions.find(h=>h.id==b.id))break;f&&e!==f&&(Dw(a,f),d===_.K?a.l.trigger(new _.F(_.Pi)):d===_.L&&a.l.trigger(new _.F(_.Le,{details:{width:f.width||0,height:f.height||0,bandwidth:f.bandwidth,track:f.track,abrSelection:c}})))}};
|
|
74
|
+
Nw=function(a,b){return 128E3>a.a?b:Math.min(_.hv(a.f),_.hv(a.g))};Ow=function(a,b){a&&(b=b.filter(c=>jw(c,a,{width:Infinity,height:Infinity})));return b.sort((c,d)=>c.bandwidth-d.bandwidth)};Qw=function(a,b){a.a.has(b)||a.a.set(b,new Pw);return a.a.get(b)};Rw=function(a,b,c){Qw(a,b).text=c};
|
|
75
|
+
Uw=function(a,b){var c;if(!(c=!!a.audio!=!!b.audio||!!a.video!=!!b.video||a.language!=b.language)&&(c=a.audio&&b.audio)){c=a.audio;var d=b.audio;c=!(c.channelsCount==d.channelsCount&&Sw(c,d)&&Tw(c.roles,d.roles))}!c&&(c=a.video&&b.video)&&(a=a.video,b=b.video,c=!(Sw(a,b)&&Tw(a.roles,b.roles)));return c?!1:!0};
|
|
76
|
+
Sw=function(a,b){if(a.mimeType!=b.mimeType)return!1;a=a.codecs.split(",").map(c=>_.Ju(c)[0]);b=b.codecs.split(",").map(c=>_.Ju(c)[0]);if(a.length!=b.length)return!1;a.sort();b.sort();for(let c=0;c<a.length;c++)if(a[c]!=b[c])return!1;return!0};Tw=function(a,b){a=new Set(a);b=new Set(b);a.delete("main");b.delete("main");if(a.size!=b.size)return!1;for(const c of a)if(!b.has(c))return!1;return!0};
|
|
77
|
+
Vw=function(a,b){let c=null;b.some(d=>{c=_.xu(_.rg(d),a.map(e=>wu(e)));return!!c});return c?a.filter(d=>c===wu(d)):[]};Ww=function(a,b){return a.filter(c=>{const d=c.audio;c=c.video;return d&&0<=d.roles.indexOf(b)||c&&0<=c.roles.indexOf(b)})};
|
|
78
|
+
Xw=function(a){return 1>=a.a.chasingRate?(a.f.warn("chasingRate must be greater than 1."),!1):a.a.chaseJumpDistance<=a.a.startChasingAt?(a.f.warn("chaseJumpDistance must be greater than startChasingAt."),!1):a.a.startChasingAt<=a.a.stopChasingAt?(a.f.warn("startChasingAt must be greater than stopChasingAt."),!1):0>a.a.stopChasingAt?(a.f.warn("stopChasingAt must be greater than or equal to 0."),!1):!0};Yw=function(a,b){a.f=b};
|
|
79
|
+
Zw=function(a){a.f.stop();const b=a.h?0:a.g;0<=b?a.a.Bd()!=b&&a.a.Xe(b):(a.f.Xa(.25),0!=a.a.Bd()&&a.a.Xe(0))};$w=function(a,b){a.f=b};ax=function(a){if(a.a.paused||0==a.a.playbackRate||0===a.a.buffered.length)var b=!1;else a:{b=a.a.buffered;a=a.a.currentTime;for(let c=0;c<b.length;c++){const d=b.start(c),e=b.end(c);if(!(a<d-.1||a>e-(c+1===b.length?.5:.1))){b=!0;break a}}b=!1}return b};
|
|
80
|
+
bx=function(a){if(0!=a.a.readyState){if(a.a.seeking){if(!a.A)return}else a.A=!1;if(!a.a.paused&&!a.m){a.a.readyState!=a.G&&(a.h=!1,a.G=a.a.readyState);var b=a.j.smallGapLimit,c=a.a.currentTime,d=a.a.buffered;a:{var e=new _.Ro(d);var f=a.j.gapDetectionThreshold;if(e.length&&!(1===e.length&&1E-6>e.end(0)-e.start(0)))for(var g=0;g<e.length;g++)if(e.start(g)>c&&(0===g||e.end(g-1)-c<=f)){e=g;break a}e=null}if(null==e){if(a.f){a=a.f;d=a.g;c=ax(d);d=d.a.currentTime;b=Date.now()/1E3;if(a.a!=d||a.j!=c)a.h=
|
|
81
|
+
b,a.a=d,a.j=c;d=b-a.h;d>=a.m&&c&&a.f(a.a,d)}}else if((0!=e||a.w)&&a.F&&(f=d.start(e),!(f>=qv(a.C)))){g=f-c;b=g<=b;var h=!1;if(!(.001>g)){if(!b&&!a.h){a.h=!0;const k=new _.F("largegap",{detail:{currentTime:c,gapSize:g}});k.cancelable=!0;a.B(k);a.j.jumpLargeGaps&&!k.defaultPrevented?h=!0:_.Bf("Ignoring large gap at",c,"size",g)}if(b||h)0==e?_.Bf(Jt,g,"seconds because of gap before start time of",f):_.Bf(Jt,g,"seconds because of gap starting at",d.end(e-1),"and ending at",f),a.a.currentTime=f}}}}};
|
|
82
|
+
ex=function(a,b){a.o||(a.o=!0,a.m&&a.m());.001>Math.abs(a.a.currentTime-b)?cx(a):(a.f.one(a.a,_.ee,()=>{cx(a)}),dx(a.g,0==a.a.currentTime?b:a.a.currentTime))};fx=function(a,b){a.w=b;a.f.off(a.a,_.od);a.f.one(a.a,_.od,()=>{ex(a,b)})};gx=function(a){return a.j?a.a.currentTime:a.w};hx=function(a,b){0<a.a.readyState?dx(a.g,b):fx(a,b)};cx=function(a){_.gi()&&!a.j&&a.h();a.j=!0;a.f.on(a.a,_.ee,()=>a.h())};dx=function(a,b){a.g=a.f.currentTime;a.j=b;a.h=a.m;a.f.currentTime=b;a.a.Xa(.1)};
|
|
83
|
+
kx=function(a,b,c){if(!c.stallEnabled)return null;const d=c.gapDetectionThreshold;let e=c.stallSkip;c=new ix(new jx(b),c.stallThreshold);$w(c,(f,g)=>{a.f.warn(`Stall detected at ${f} for ${g} seconds.`);if(e){g=new _.Ro(b.buffered);var h;if(h=_.ai("Edge/")||_.ai("Trident/")||_.bi()||_.gi())a:{h=g;if(h.length&&!(1>=h.length))for(let k=0;k<h.length-1;k++)if(f>h.start(k)&&f<h.end(k)){h=h.start(k+1)-h.end(k)>=d;break a}h=!1}if(h){a:{if(g.length&&!(1>=g.length))for(h=0;h<g.length-1;h++)if(f>g.start(h)&&
|
|
84
|
+
f<g.end(h)){f=g.start(h+1)-f;break a}f=null}f&&(e=Math.min(f+.1,e))}a.f.warn(`Seeking forward ${e} seconds to break stall.`);b.currentTime+=e}else a.f.warn("Pausing and unpausing to break stall."),b.pause(),b.play()});return c};nx=function(a,b){null==b?b=Infinity>a.a.getDuration()?rv(a.a,0):qv(a.a):0>b&&(b=qv(a.a)+b);return lx(a,mx(a,b))};mx=function(a,b){const c=rv(a.a,0);if(b<c)return c;a=qv(a.a);return b>a?a:b};ox=function(a){const b=gx(a.g);return 0<a.h.readyState&&!a.h.paused?mx(a,b):b};
|
|
85
|
+
lx=function(a,b){const c=a.a.getDuration();return b>=c?c-a.m.durationBackoff:b};
|
|
86
|
+
px=function(a,b){var c=new _.Ro(a.h.buffered);c=c.Zb.bind(c);var d=Math.max(a.B,a.m.rebufferingGoal);const e=a.m.safeSeekOffset;let f=rv(a.a,0);const g=qv(a.a),h=a.a.getDuration();3>g-f&&(f=g-3);const k=rv(a.a,d),l=rv(a.a,e);d=rv(a.a,d+e);if(b>=h)return a.f.debug("Playhead past duration."),lx(a,b);if(b>g)return a.f.debug("Playhead past end."),g;if(b<f){if(c(l))return a.f.debug("Playhead before start \x26 start is buffered"),l;a.f.debug("Playhead before start \x26 start is unbuffered");return d}if(b>=
|
|
80
87
|
k||c(b))return a.f.debug("Playhead in safe region or in buffered region."),b;a.f.debug("Playhead outside safe region \x26 in unbuffered region.");return d};
|
|
81
|
-
|
|
82
|
-
g.length||!c)throw _.
|
|
83
|
-
|
|
84
|
-
d=a.getUint32(b);a.setUint32(b,d+1);return h};
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
d.id))})};
|
|
89
|
-
|
|
90
|
-
_.
|
|
91
|
-
g.
|
|
92
|
-
{if(a.D)a.D.onError(k)}))))}else a.a.debug(
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
88
|
+
rx=function(a){a=_.I(a);let b=!1,c;const d=[],e=h=>{d.push(h);_.Ej(h)},f=()=>{b=!0},g=[];(new _.Lj).L(_.wd,e).L(_.ve,e).L(_.rd,e).L(_.vd,e).L(_.le,e).Z(_.ne,h=>{c=h;d.push(h);_.Fj(h)}).Z("encv",f).Z("enca",f).Z("avc1",h=>{g.push({L:h,wc:1701733238})}).Z("avc3",h=>{g.push({L:h,wc:1701733238})}).Z("ac-3",h=>{g.push({L:h,wc:1701733217})}).Z("ec-3",h=>{g.push({L:h,wc:1701733217})}).Z("mp4a",h=>{g.push({L:h,wc:1701733217})}).parse(a);if(b)return _.Bf("Init segment already indicates encryption."),a;if(0===
|
|
89
|
+
g.length||!c)throw _.Hf("Failed to find boxes needed to fake encryption!"),_.Hf("Failed init segment (hex):",_.Yg(a)),new _.H(_.G,3,14E3);g.reverse();for(const h of g)_.Bf(`Inserting "${_.Dj(h.wc)}" box into init segment.`),a=qx(a,c,h.L,d,h.wc);return a};
|
|
90
|
+
qx=function(a,b,c,d,e){{var f=sx.value(),g=a.subarray(c.start,c.start+c.size);const k=_.Bg(g);var h=new Uint8Array(c.size+f.byteLength);h.set(g,0);g=_.Bg(h);g.setUint32(4,e);h.set(f,c.size);e=k.getUint32(4);g.setUint32(c.size+16,e);tx(h,0,h.byteLength);e=h}h=new Uint8Array(a.byteLength+e.byteLength);c=_.ai("Xbox One")||_.$h()?c.start:c.start+c.size;f=a.subarray(c);h.set(a.subarray(0,c));h.set(e,c);h.set(f,c+e.byteLength);for(const k of d)tx(h,k.start,k.size+e.byteLength);a=_.Bg(h,b.start);b=_.Hj(b);
|
|
91
|
+
d=a.getUint32(b);a.setUint32(b,d+1);return h};tx=function(a,b,c){a=_.Bg(a,b);b=a.getUint32(0);0!=b&&(1==b?(a.setUint32(8,c>>32),a.setUint32(12,c&4294967295)):a.setUint32(0,c))};ux=function(a){return"("+a.type+":"+a.stream.id+")"};vx=function(a){return!a.Ta&&null==a.nb&&!a.Cb&&!a.Tb};wx=function(a){null!=a.nb&&(a.nb.stop(),a.nb=null)};xx=function(a){return _.y(function*(){a.zb&&(yield a.zb.abort())})};yx=function(a,b){return(b=bv(a.g.periods,b+_.Co))?a.g.periods.indexOf(b):0};
|
|
92
|
+
Dx=function(a,b,c,d,e){return _.y(function*(){var f=a.D.tb();const g=yx(a,f);f=new Map;const h=new Set;b&&(f.set(_.p,b),h.add(b));c&&(f.set(_.w,c),h.add(c));d&&(f.set(_.v,d),h.add(d));yield a.D.X.init(f,a.j.forceNativeTS,a.j.disableAudioTracks);a.h||(zx(a),yield Ax(a,h),a.h||f.forEach((k,l)=>{a.f.has(l)||(k=Bx(k,g,e),a.f.set(l,k),Cx(a,k,0))}))})};Ex=function(a){var b=a.f.get(_.w);return b?a.g.periods[b.wb]:(b=a.f.get(_.p))?a.g.periods[b.wb]:null};
|
|
93
|
+
_.Fx=function(a,b){return(a=a.f.get(b))?a.Nb||a.stream:null};Gx=function(a){return _.Fx(a,_.p)};Hx=function(a){return _.Fx(a,_.w)};
|
|
94
|
+
Ax=function(a,b){return _.y(function*(){var c=[];for(const d of b){const e=a.o.get(d.id);e?(a.a.debug("(all) Stream "+d.id+Et),c.push(e.P)):(a.a.debug("(all) setting up Stream "+d.id),a.o.set(d.id,{P:new _.Mk,yc:!1}),c.push(d.createSegmentIndex()))}try{if(yield Promise.all(c),a.h)return}catch(d){if(a.h)return;for(const e of b)a.o.get(e.id).P.catch(()=>{}),a.o.get(e.id).P.reject(),a.o.delete(e.id);throw d;}for(const d of b)c=a.o.get(d.id),c.yc||(c.P.resolve(),c.yc=!0,a.a.debug("(all) setup Stream "+
|
|
95
|
+
d.id))})};Bx=function(a,b,c){return{stream:a,type:a.type,Lb:null,segmentIterator:null,qa:null,Nb:null,Lc:!0,wb:b,endOfStream:!1,Ta:!1,nb:null,Cb:!1,Vc:0,md:!1,Tb:!1,Xd:!1,tc:!1,Ve:c||0,zb:null,Xc:!1,Ee:0}};Cx=function(a,b,c){a.a.debug(ux(b),"updating in "+c+" seconds");b.nb=(new _.Oo(()=>_.y(function*(){try{yield a.yb(b)}catch(d){if(a.D)a.D.onError(d)}}))).da(c)};
|
|
96
|
+
Ix=function(a,b){return _.y(function*(){yield a.D.X.clear(_.v);a.G++;a.H=!1;var c=a.G,d=a.D.X;const e=new Map,f=new Set;e.set(_.v,b);f.add(b);yield d.init(e,!1,a.j.disableAudioTracks);a.h||(yield Ax(a,f),a.h||(d=d.getTextDisplayer().isTextVisible()||a.j.alwaysStreamText,a.G!=c||a.f.has(_.v)||a.H||!d||(c=a.D.tb(),c=yx(a,c),c=Bx(b,c,0),a.f.set(_.v,c),Cx(a,c,0))))})};Jx=function(a){a.H=!0;const b=a.f.get(_.v);b&&(wx(b),xx(b).catch(()=>{}),a.f.delete(_.v))};
|
|
97
|
+
_.Px=function(a,b,c,d){const e=a.f.get(b.type);if(!e&&b.type==_.v&&a.j.ignoreTextStreamFailures)Ix(a,b);else if(e){var f=Kx(a,b);if(c&&f!=e.wb){a.a.debug("switch: switching to stream in another Period; clearing buffer and changing Periods");for(var g of a.f.values())Lx(a,g)}else if(e.Nb&&(a.a.debug("switch during trick play mode",b),b.trickModeVideo?(e.Nb=b,b=b.trickModeVideo,a.a.debug("switch found trick play stream",b)):(e.Nb=null,a.a.debug("switch found no special trick play stream"))),(g=a.m[f])&&
|
|
98
|
+
g.yc&&(g=a.o.get(b.id))&&g.yc)if(e.stream!=b){g=a.g.presentationTimeline.getDuration();var h=a.D.tb();h=Mx(a,e,h);!c&&(e.endOfStream||h>=g)?a.a.debug(gu+ux(e)+" already buffered to the end. Not switching."):(b.type==_.v&&Nv(a.D.X,_.Uh(b.mimeType,b.codecs)),e.stream=b,e.stream.segmentIterator=null,e.Lc=!0,a.a.debug("switch: switching to Stream "+ux(e)),Nx(a,e,f)&&(a.a.info("Aborting current segment request to switch."),e.zb.abort()),c&&(e.Tb?e.md=!0:e.Ta?(e.Cb=!0,e.Vc=d,e.md=!0):(wx(e),Ox(a,e,!0,d).catch(k=>
|
|
99
|
+
{if(a.D)a.D.onError(k)}))))}else a.a.debug(gu+ux(e)+" already active")}};Qx=function(a,b,c,d){b.video&&_.Px(a,b.video,c,d);b.audio&&_.Px(a,b.audio,c,d)};
|
|
100
|
+
Lx=function(a,b){const c=ux(b);b.Tb?a.a.debug(c,"clear: already clearing the buffer"):b.Cb?a.a.debug(c,"clear: already waiting"):b.Ta?(a.a.debug(c,"clear: currently updating"),b.Cb=!0,b.Vc=0):null==a.D.X.ob(b.type)?(a.a.debug(c,"clear: nothing buffered"),null==b.nb&&Cx(a,b,0)):(a.a.debug(c,"clear: handling right now"),wx(b),Ox(a,b,!1,0).catch(d=>{if(a.D)a.D.onError(d)}))};
|
|
101
|
+
Rx=function(a){const b=a.D.tb(),c=g=>a.D.X.Zb(g,b,0);let d=!1;const e=yx(a,b);if(_.tg(a.f.values(),g=>g.wb==e))for(const g of a.f.keys()){var f=a.f.get(g);f.stream.segmentIterator=null;c(g)||(Lx(a,f),d=!0)}else if(!_.tg(a.f.keys(),c)){a.a.debug("(all): seeked: unbuffered seek: clearing all buffers");for(f of a.f.values())Lx(a,f);d=!0}d||a.a.debug("(all): seeked: buffered seek: presentationTime\x3d"+b)};
|
|
102
|
+
Sx=function(a,b){b=void 0===b?!1:b;if(a.h)a.a.error("Unable to retry after StreamingEngine is destroyed!");else if(a.A)a.a.error("Unable to retry after StreamingEngine encountered a fatal error!");else for(const c of a.f.values()){const d=ux(c);if(c.tc||b&&vx(c))a.a.info(d,"Retrying after failure..."),c.tc=!1,Cx(a,c,.1)}};
|
|
103
|
+
Ox=function(a,b,c,d){return _.y(function*(){const e=ux(b);b.Cb=!1;b.md=!1;b.Vc=0;b.Tb=!0;b.stream.segmentIterator=null;a.a.debug(e,"clearing buffer");if(d){var f=a.D.tb();const g=a.D.X.getDuration();f=a.D.X.remove(b.type,f+d,g)}else f=a.D.X.clear(b.type).then(()=>!a.h&&c?a.D.X.flush(b.type):null);yield f;a.h||(a.a.debug(e,"cleared buffer"),b.Lb=null,b.qa=null,b.Tb=!1,b.endOfStream=!1,b.Xc=!1,Cx(a,b,0))})};
|
|
104
|
+
Tx=function(a){return _.y(function*(){const b=[];for(const c of a.f.values())wx(c),c.Ta&&c.zb&&(c.Ta=!1,b.push(c.zb.abort())),c.Cb&&b.push(Ox(a,c,!0,0));yield Promise.all(b)})};Ux=function(a,b,c){(a=a.f.get(b))&&c&&(wx(a),a.stream=c,a.Lb=c,a.qa&&(a.qa=c.getSegmentReference(a.qa.position)),a.qa||(a.Lb=null))};Kx=function(a,b){return dv(a.g.periods,b)};Mx=function(a,b,c){if(!b.Lb||!b.qa)return Math.max(c,b.Ve);c=Kx(a,b.Lb);return a.g.periods[c].startTime+b.qa.endTime};
|
|
105
|
+
Nx=function(a,b,c){if(!b.zb)return!1;const d=a.D.tb(),e=a.D.X.Aa(b.type);c=(c=Vx(a,b,d,e,c))?c.ha?c.ha-c.ua+1:null:null;if(null==c)return!1;var f=b.stream.initSegmentReference;f&&(c+=(f.ha?f.ha-f.ua+1:null)||0);f=a.D.yd().getBandwidthEstimate();if(8*c/f<(null===e?0:e-d)-Math.max(a.g.minBufferTime||0,a.j.rebufferingGoal))return!0;a=b.zb;a=a.h?a.h.bytesRemaining:-1;return 0>a||a>c?!0:!1};
|
|
106
|
+
Vx=function(a,b,c,d,e){if(b.stream.segmentLookupStrategy===_.Wx)b.stream.segmentIterator?a=uv(b.stream.segmentIterator):b.qa||d?(e=b.qa?b.qa.endTime:d,a.a.info(It,"looking up segment from new stream endTime:",e),b.stream.segmentIterator=Av(b.stream.segmentIndex,e),d=b.stream.segmentIterator.next().value,null===d&&(b.stream.segmentIterator=null,a.a.warn(It,Ut,"endTime:",e,b.qa)),a=d):(e=Math.max(c,0),a.a.info(It,"looking up segment","lookupTime:",e,$t,c),d=null,d||(b.stream.segmentIterator=Av(b.stream.segmentIndex,
|
|
107
|
+
c),d=b.stream.segmentIterator.next().value),null===d&&a.a.warn(It,Ut,"lookupTime:",e,$t,c),a=d);else{var f=ux(b);b.qa&&b.stream==b.Lb?(d=b.qa.position+1,a.a.debug(f,"next position known:","position\x3d"+d),a=Xx(a,b,e,d)):(b.qa?(a.a.debug(f,"next position unknown: another Stream buffered"),c=Kx(a,b.Lb),c=Yx(a,b,a.g.periods[c].startTime+b.qa.endTime,e)):(a.a.debug(f,"next position unknown: nothing buffered"),c=Yx(a,b,d||c,e)),null==c?a=null:(f=null,null!=d||null!==a.j&&a.j.ignoreDrift||(f=Xx(a,b,e,
|
|
108
|
+
Math.max(0,c-1))),a=f||Xx(a,b,e,c)))}return a};zx=function(a){const b=a.g.presentationTimeline.getDuration();Infinity>b?cw(a.D.X,b):cw(a.D.X,Math.pow(2,32))};
|
|
109
|
+
Zx=function(a,b){let c=a.m[b];if(c)return a.a.debug("(all) Period "+b+Et),c.P;a.a.debug("(all) setting up Period "+b);c={P:new _.Mk,yc:!1};a.m[b]=c;const d=new Set;for(const e of a.g.periods[b].variants)e.video&&d.add(e.video),e.video&&e.video.trickModeVideo&&d.add(e.video.trickModeVideo),e.audio&&d.add(e.audio);for(const e of a.g.periods[b].textStreams)d.add(e);a.F=a.F.then(()=>a.h?null:Ax(a,d)).then(()=>{a.h||(a.m[b].P.resolve(),a.m[b].yc=!0,a.a.debug("(all) setup Period "+b))}).catch(e=>{a.h||
|
|
101
110
|
(a.m[b].P.catch(()=>{}),a.m[b].P.reject(),delete a.m[b],a.a.warn("(all) failed to setup Period "+b),a.D.onError(e))});return c.P};
|
|
102
|
-
|
|
103
|
-
g,
|
|
104
|
-
1;b.
|
|
105
|
-
|
|
106
|
-
k.set(_.v,h.text);for(const l of a.f.keys())if(!k.has(l)&&l!=_.v){a.a.error(c,"invalid Streams chosen: missing "+l+" Stream");a.D.onError(new _.H(_.G,5,5005));return}for(const l of Array.from(k.keys()))if(!a.f.has(l))if(l==_.v)
|
|
107
|
-
a.D.
|
|
108
|
-
|
|
109
|
-
a.h||a.A?null:
|
|
110
|
-
a.f.delete(_.v)):7001==u.code?(b.
|
|
111
|
-
u)))}))})};
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
Promise.resolve();const m=e.closedCaptions&&0<e.closedCaptions.size;null!=e.emsgSchemeIdUris&&0<e.emsgSchemeIdUris.length&&(new _.
|
|
117
|
-
g,n,q,m,e.id,h)}).then(()=>{a.h||(a.a.debug(k,"appended media segment"),b.
|
|
118
|
-
|
|
119
|
-
a.D.
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
f,f+h).then(()=>{a.h||a.a.debug(d,"evicted "+h+" seconds")})};
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
a
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
if(
|
|
146
|
-
(
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
d,"buffered to end",b,"state",a.getState()),
|
|
156
|
-
|
|
157
|
-
emsgSchemeIdUris:null,roles:g.roles,channelsCount:null,closedCaptions:null};e.set(h,k)}}for(const f of e.values())d.textStreams.push(f)}};
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
b).variant=c};
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
a.configuration.preferredAudioChannelCount);const k=
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
_.
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
_.
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
a
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
{
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
a,this.
|
|
196
|
-
b
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
null}
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
a=
|
|
204
|
-
"deltaTimeMs\x3d"+a,"numBytes\x3d"+b,"lastTimeChosenMs\x3d"+this.h,"enabled\x3d"+this.j);var c=this.g;if(!(16E3>b)){var d=8E3*b/a;a/=1E3;c.a+=b;_.
|
|
205
|
-
break a}}else if(Date.now()-this.h<1E3*this.a.switchInterval){this.f.debug("Still within switch interval...");break a}b=this.chooseVariant();this.f.debug("Calling switch_(), bandwidth\x3d"+Math.round(
|
|
206
|
-
(a=b));this.f&&(b=
|
|
207
|
-
this.D.setPlaybackRate(this.a.chasingRate)):1<d&&b<=e&&(this.f.debug("On live edge, reduce playback rate."),this.D.setPlaybackRate(1))}}))}release(){this.g.release()}};var
|
|
208
|
-
this.g?this.a.stop():(this.f.currentTime=this.j,this.h--)})}release(){this.a&&(this.a.stop(),this.a=null);this.f=null}};var
|
|
209
|
-
{if(0!=this.h.readyState&&!this.h.paused){var g=
|
|
210
|
-
if(!c.variant&&!c.text)throw a.a.error("
|
|
211
|
-
a,a.
|
|
212
|
-
d.reader.getPosition());a=a.startTime+b.startTime+h/g;c.includes(e)&&("urn:mpeg:dash:event:2012"==e?this.D.
|
|
213
|
-
b=e!==f;this.a.debug(`hSpacing=${e}, vSpacing=${f}, updatePASP=${b}`);d.parser.stop()}).parse(a.data);b&&(a=new _.
|
|
214
|
-
this.configuration.preferredAudioChannelCount);this.aa=this.configuration.preferredTextLanguage;this.M=this.
|
|
215
|
-
a&&a.release();return this.C===
|
|
216
|
-
d(g)})}catch(e){a.R=null,d(e)}});return a.R})}getBufferInfo(a){if(this.H){var b=
|
|
217
|
-
this.f.presentationTimeline.getDuration():Infinity}destroy(){const a=this,b=()=>Object.getPrototypeOf(Object.getPrototypeOf(this)).destroy;return _.y(function*(){yield b().call(a);a.C!==
|
|
218
|
-
if(b.R){try{yield b.R}catch(h){}b.ra!==c&&d()}b.G=new _.
|
|
219
|
-
d();yield
|
|
220
|
-
|
|
221
|
-
c),_.
|
|
222
|
-
a.getVideoPlaybackQuality();a=this.G;var c=Number(b.totalVideoFrames);a.j=Number(b.droppedVideoFrames);a.h=c}if(this.C===
|
|
223
|
-
this.g.reset()}addTextTrack(a,b,c,d,e,f){const g=this;return _.y(function*(){if(g.C!==
|
|
224
|
-
findSegmentPosition:()=>1,getSegmentReference:q=>1==q?m:null,adjustSegmentDurations:()=>{},getDuration:()=>l,segmentLookupStrategy:_
|
|
225
|
-
|
|
226
|
-
(
|
|
227
|
-
e&&e.id===a.id&&(d.allowedByApplication=!1)}
|
|
228
|
-
this.log.debug(_.
|
|
229
|
-
c;a.f=!0;b.trigger(new _.F(_.
|
|
230
|
-
_.
|
|
231
|
-
|
|
232
|
-
|
|
111
|
+
by=function(a,b){if(b.type==_.v&&b.stream.mimeType==_.Rb)return Xv(a.D.X,b.stream.originalId||""),null;b.type==_.v&&Yv(a.D.X);if(!Pv(a.D.X)&&b.type!=_.v)return a.j.bufferLimitUpdateInterval?a.j.bufferLimitUpdateInterval/2:.5;var c=ux(b);const d=a.D.tb(),e=Mx(a,b,d);a.a.debug(c,"timeNeeded\x3d"+e);const f=Kx(a,b.stream);var g=yx(a,e),h=a.D.X.Ea(b.type,d);a.a.debug(c,"update_:",au+d,"bufferedAhead\x3d"+h);const k=Math.max(a.g.minBufferTime||0,a.j.rebufferingGoal,a.j.bufferingGoal)*a.w,l=kv(a.g.presentationTimeline);
|
|
112
|
+
if(null!=l&&e>=l&&!b.Xc)return $x(a,b),null;b.endOfStream=!1;b.wb=g;if(g!=f)return a.a.debug(c,"need Period "+g,au+d,"timeNeeded\x3d"+e,"currentPeriodIndex\x3d"+f),null;if(h>=k)return a.a.debug(c,"buffering goal met"),a.j.bufferLimitUpdateInterval||.5;g=a.D.X.Aa(b.type);g=Vx(a,b,d,g,f);if(!g)return a.g.presentationTimeline.isLive()||b.type===_.v?a.j.bufferLimitUpdateInterval||1:(a.a.debug("Media state "+c+": no next segment found. Assuming EOS."),$x(a,b),null);c=Infinity;for(const m of a.f.values())if(m.type!=
|
|
113
|
+
_.v||m.stream.mimeType!=_.Rb)h=Mx(a,m,d),c=Math.min(c,h);if(e>=c+a.g.presentationTimeline.a)return a.j.bufferLimitUpdateInterval||1;b.Ve=0;ay(a,b,d,f,g).catch(()=>{});return null};cy=function(a,b){return _.y(function*(){if(!a.h){if(a.D.Ye)try{yield a.D.Ye(b)}catch(c){c.cause=b,b=c}if(!b.f)a.D.onError(b)}})};
|
|
114
|
+
dy=function(a,b){const c=ux(b),d=Kx(a,b.stream);if(b.wb!=d){var e=b.wb,f=Array.from(a.f.values());f.every(g=>g.wb==e)?f.every(vx)?(a.a.debug(c,"all need Period "+e),Zx(a,e).then(()=>{if(!a.h)if(f.every(l=>{const m=vx(l),n=Kx(a,l.stream);return m&&l.wb==e&&n!=e})){var g=a.g.periods[e];a.a.debug(c,"calling onChooseStreams()...");var h=a.D.Sd(g);a.C=!h.variant&&!!h.text;var k=new Map;h.variant&&h.variant.video&&k.set(_.w,h.variant.video);h.variant&&h.variant.audio&&k.set(_.p,h.variant.audio);h.text&&
|
|
115
|
+
k.set(_.v,h.text);for(const l of a.f.keys())if(!k.has(l)&&l!=_.v){a.a.error(c,"invalid Streams chosen: missing "+l+" Stream");a.D.onError(new _.H(_.G,5,5005));return}for(const l of Array.from(k.keys()))if(!a.f.has(l))if(l==_.v)Dx(a,null,null,k.get(_.v),g.startTime),k.delete(l);else{a.a.error(c,"invalid Streams chosen: unusable "+l+" Stream");a.D.onError(new _.H(_.G,5,5005));return}for(const l of Array.from(a.f.keys()))(g=k.get(l))?(_.Px(a,g,!1,0),Cx(a,a.f.get(l),0)):a.f.delete(l);a.a.debug(c,Tt);
|
|
116
|
+
a.D.Rd()}else a.a.debug(c,"ignoring transition to Period",e,"since another is happening")}).catch(su)):a.a.debug(c,"all MediaStates need Period "+e+", but not all MediaStates are idle"):a.a.debug(c,"not all MediaStates need Period "+e)}};$x=function(a,b){a.a.debug(ux(b),"buffered to end of presentation");b.endOfStream=!0;b.type==_.w&&(a=a.f.get(_.v))&&a.stream.mimeType==_.Rb&&(a.endOfStream=!0)};
|
|
117
|
+
ay=function(a,b,c,d,e){return _.y(function*(){const f=ux(b),g=a.g.periods[d];a.a.debug(f,"fetchAndAppend_:",au+c,Wt+g.startTime,cu+e.position,du+e.startTime,bu+e.endTime);const h=b.stream,k=b.stream.segmentIterator;var l=a.g.presentationTimeline.getDuration();const m=a.g.periods[d+1];l=ey(a,b,d,Math.max(0,g.startTime-.1),m?m.startTime+.01:l,e);b.Ta=!0;b.Lc=!1;a.a.debug(f,"fetching segment");let n=!1;const q=(u,x)=>{if(a.h||a.A)return null;n=!0;return fy(a,b,c,g,h,e,u,x)},t=a.D.X.Aa(b.type)||0;l.then(()=>
|
|
118
|
+
a.h||a.A?null:gy(a,b,e,!1,u=>q(u.data,!0))).then(u=>a.h||a.A?null:n||null===u?(hy(a,b,t,e,h),null):q(u,!1)).then(()=>{if(!a.h&&!a.A){hy(a,b,t,e,h);b.Ta=!1;b.Xd=!1;b.Cb||a.D.gd();if(k){const u=k.next().value;u&&a.a.debug("New iterated segment",u)}Cx(a,b,0);iy(a,b,h);a.a.debug(f,"finished fetch and append")}}).catch(u=>_.y(function*(){a.h||a.A||(b.Ta=!1,b.type==_.v&&a.j.ignoreTextStreamFailures?(1001==u.code?a.a.warn(f,"Text stream failed to download. Proceeding without it."):a.a.warn(f,"Text stream failed to parse. Proceeding without it."),
|
|
119
|
+
a.f.delete(_.v)):7001==u.code?(b.Ta=!1,b.nb=null,Cx(a,b,0)):3017===u.code?jy(a,b,u):1001===u.code&&u.data&&404===u.data[1]?(a.a.warn(f,"request for segment failed","segment not available on server",cu+e.position,du+e.startTime,bu+e.endTime,"error\x3d"+u),b.Ta=!1,b.nb=null,Cx(a,b,1)):b.type===_.v?(u instanceof _.H&&u.a(1),wx(b),a.D.onError(new _.H(1,2,2010,u))):1001<=u.code&&1003>=u.code?yield ky(a,b,g,u):(a.a.error(f,"failed fetch and append: code\x3d"+u.code),b.tc=!0,u instanceof _.H&&u.a(_.G),yield cy(a,
|
|
120
|
+
u)))}))})};Xx=function(a,b,c,d){const e=ux(b);c=a.g.periods[c];const f=b.stream.getSegmentReference(d);if(!f)return a.a.debug(e,"segment does not exist:",Wt+c.startTime,"position\x3d"+d),null;var g=a.g.presentationTimeline;d=_.pv(g);g=ov(g);return!b.Xc&&(c.startTime+f.endTime<d||c.startTime+f.startTime>g)?(a.a.debug(e,"segment is not available:",Wt+c.startTime,du+f.startTime,bu+f.endTime,"availabilityStart\x3d"+d,"availabilityEnd\x3d"+g),null):f};
|
|
121
|
+
Yx=function(a,b,c,d){const e=ux(b);d=a.g.periods[d];const f=Math.max(0,c-d.startTime);b=b.stream.findSegmentPosition(f);a.a.debug(e,"Looked up segment:",au+c,"lookupTime\x3d"+f,Wt+d.startTime,"Result: segment position\x3d"+b);null==b&&a.a.warn(e,"cannot find segment:",Wt+d.startTime,"lookupTime\x3d"+f);return b};
|
|
122
|
+
ey=function(a,b,c,d,e,f){c=a.g.periods[c].startTime-f.sa;if(!b.Lc&&c===b.Ee)return Promise.resolve();b.Ee=c;const g=ux(b);a.a.debug(g,"setting timestamp offset to "+c);a.a.debug(g,"setting append window start to "+d);a.a.debug(g,"setting append window end to "+e);d=$v(a.D.X,b.type,c,d,e);if(!b.stream.initSegmentReference||!b.Lc)return d;a.a.debug(g,"fetching init segment");e=gy(a,b,b.stream.initSegmentReference,!0).then(h=>{if(a.h)return null;a.a.debug(g,"appending init segment");return ly(a,h,b).then(()=>
|
|
123
|
+
Wv(a.D.X,b.type,h,null,null,!!b.stream.closedCaptions&&0<b.stream.closedCaptions.size))}).catch(h=>{b.Lc=!0;return Promise.reject(h)});return Promise.all([d,e])};
|
|
124
|
+
fy=function(a,b,c,d,e,f,g,h){h=void 0===h?!1:h;return _.y(function*(){const k=ux(b);if(e&&e.keyId&&a.D.Ec){var l=nu(a.D.Ec,e.keyId);if(l)try{yield l}catch(n){a.a.warn("DRM session load failed!",n)}else a.a.warn(`Unable to find DRM session for ${e.keyId}`)}if(e.encrypted&&e.keyId&&a.D.Ec&&pu(a.D.Ec,e.keyId))return wx(b),l=Kx(a,e),(l=my(a,l))&&(yield l),l=a.D.pd(e,d,Yt),a.a.warn(k,`Blocked append for ${f.startTime+d.startTime} - ${f.endTime+d.startTime}: ${l}. `+`Stream with Key ID ${e.keyId} has restrictions.`),
|
|
125
|
+
Promise.resolve();const m=e.closedCaptions&&0<e.closedCaptions.size;null!=e.emsgSchemeIdUris&&0<e.emsgSchemeIdUris.length&&(new _.Lj).Z("emsg",a.I.bind(a,d,f,e.emsgSchemeIdUris)).parse(g);return ny(a,b,c).then(()=>{if(a.h)return null;const n=f.startTime+d.startTime,q=f.endTime+d.startTime;a.a.debug(k,"Appending segment "+`with ${n.toFixed(3)} - ${q.toFixed(3)} `+`KeyID: ${e.keyId} `+`Width: ${e.width} Height: ${e.height} `+`Bitrate: ${_.Pg(e.bandwidth)} `+`Fragment: ${h}`);return Wv(a.D.X,b.type,
|
|
126
|
+
g,n,q,m,e.id,h)}).then(()=>{a.h||(a.a.debug(k,"appended media segment"),b.Lb=e,b.qa=f)})})};
|
|
127
|
+
gy=function(a,b,c,d,e){d=void 0===d?!1:d;e=void 0===e?null:e;const f=_.iv(c.Ha(),c.ua,c.ha,a.j.attemptParameters,c.startTime,c.endTime,b.type,c.timescale);f.type=2;f.onFragment=c.lc?null:e;f.disableFragmentSupport=c.lc||a.j.disableFragmentSupport;f.disableMergedFragments=a.j.disableMergedFragments;if(e=c.f())f.keyInfo=e,f.onFragment=null;d&&(f.responseModifiers.push(g=>{oy(a,b,g.data)}),b.type===_.w&&a.j.overridePasp&&f.responseModifiers.push(a.J.bind(a)));a.a.debug("fetching: reference\x3d",c);c=
|
|
128
|
+
a.D.xb.fetch(f);b.zb=c;return c.P.then(g=>{const h=a.D.yd(),k=g.timeMs,l=g.data.byteLength;k&&l&&!d&&h.segmentDownloaded(k,l);b.zb=null;return g.data})};
|
|
129
|
+
hy=function(a,b,c,d,e){if(!a.g.presentationTimeline.isLive()&&b.type!==_.v){var f=ux(b);const g=(a.D.X.Aa(b.type)||0)-c,h=d.endTime-d.startTime;c=g-h;if(Math.abs(c)>=Math.min(.01,h)&&Math.abs(c)<=Math.min(1,h))for(a.a.debug(f,"Adjusted segment",d.position,"with real duration",g,"and accounted for",c,"delta between segment duration and real duration"),b.Xc=!0,a=a.g.periods,b=c,e.adjustSegmentDurations(d.position,b),d=dv(a,e),f=a[d],e=e.getDuration(),fv(f,e),e=d+1;e<a.length;e++)a[e].startTime+=b}};
|
|
130
|
+
iy=function(a,b,c){if(!a.B){b=ux(b);var d=Array.from(a.f.values());1!=d.length||d[0].type!=_.v?a.B=d.every(e=>e.type==_.v||a.C?!0:!e.Cb&&!e.Tb&&e.qa):a.C&&(a.B=!0);a.B&&(a.a.debug(b,"startup complete"),c=Kx(a,c),my(a,c))}};
|
|
131
|
+
jy=function(a,b,c){const d=ux(b);if(Array.from(a.f.values()).some(e=>e!=b&&e.Xd))a.a.debug(d,Kt,"waiting for another stream to recover...");else{const e=Math.round(100*a.w);if(20<e)a.w-=.2;else if(4<e)a.w-=.04;else{a.a.error(d,"MediaSource threw QuotaExceededError too many times");b.tc=!0;a.A=!0;a.D.onError(c);return}a.a.warn(d,Kt,"reducing buffering goals by "+(100-Math.round(100*a.w))+"%");b.Xd=!0}Cx(a,b,4)};
|
|
132
|
+
ky=function(a,b,c,d){return _.y(function*(){let e=!0;1001===d.code&&500<=d.data.status||(e=!a.D.pd(b.stream,c));e&&(b.tc=!0,d.a(_.G),yield cy(a,d))})};ly=function(a,b,c){return _.y(function*(){if(a.j.patchEdgeWhenMixedContent&&_.$h()){const d=rx(b);yield Wv(a.D.X,c.type,d.buffer,null,null,!!c.stream.closedCaptions&&0<c.stream.closedCaptions.size)}})};
|
|
133
|
+
my=function(a,b){let c=null;a.m[b]||(c=Zx(a,b).then(()=>{a.h||(a.a.debug(Tt),a.D.Rd())}).catch(su));for(b=0;b<a.g.periods.length;++b)Zx(a,b).catch(su);a.D.bg&&(a.a.debug("calling onStartupComplete()..."),a.D.bg());return c};
|
|
134
|
+
ny=function(a,b,c){if(a.h)return Promise.resolve();const d=ux(b);a.a.debug(d,"checking buffer length");const e=Math.max(a.j.bufferBehind,a.g.presentationTimeline.a),f=a.D.X.ob(b.type);if(null==f)return a.a.debug(d,"buffer behind okay because nothing buffered:",au+c,Rt+e),Promise.resolve();const g=c-f,h=g-e;if(.01>=h)return a.a.debug(d,"buffer behind okay:",au+c,St+g,Rt+e,"underflow\x3d"+Math.abs(h)),Promise.resolve();a.a.debug(d,"buffer behind too large:",au+c,St+g,Rt+e,"overflow\x3d"+h);return a.D.X.remove(b.type,
|
|
135
|
+
f,f+h).then(()=>{a.h||a.a.debug(d,"evicted "+h+" seconds")})};oy=function(a,b,c){(new _.Lj).L(_.wd,_.Ej).L(_.ve,_.Ej).L(_.rd,_.Ej).L(_.vd,_.Ej).L(_.le,_.Ej).Z(_.ne,_.Fj).L("encv",d=>{d.reader.skip(78);_.Ej(d)}).L(_.ge,_.Ej).L("schi",_.Ej).L("tenc",d=>{d.reader.skip(6);if(_.wj(d.reader)){d.reader.skip(1);const e=_.Yg(_.Bj(d.reader,16));e!==b.stream.keyId&&(a.a.debug(ux(b),"Key id from tenc mismatches with key id from manifest. Switching from "+`${b.stream.keyId} to ${e}.`),b.stream.keyId=e)}d.parser.stop()}).parse(c)};
|
|
136
|
+
py=function(a){const b=c=>c.video&&c.audio||c.video&&c.video.codecs.includes(",");if(a.some(c=>c.variants.some(b))){_.Gf("Found variant with audio and video content, so filtering out audio-only content in all periods.");for(const c of a)c.variants=c.variants.filter(b)}};
|
|
137
|
+
Ew=function(a,b){return _.y(function*(){if(a.Jd!=b&&(a.Jd=b,a.C===qy&&(a.H.getTextDisplayer().setTextVisibility(b),!a.configuration.streaming.alwaysStreamText)))if(b){var c=ry(a);c=_.sw(c.textStreams,a.aa,a.ma);0<c.length&&(yield Ix(a.a,c[0]))}else Jx(a.a)})};Fw=function(a,b){if(a.f&&a.a){const c=ry(a),d=c.textStreams.find(e=>e.id==b.id);d?(sy(a,c,d,!1),ty(a,d),a.aa=d.language):a.log.error(_.Lt,b.id)}};
|
|
138
|
+
Gw=function(a,b){if(a.configuration.streaming.disableAudioTracks)Promise.reject(Error("Audio tracks are disabled by config."));else{if(a.a&&(a.f||a.w)){var c=Hx(a.a),d=Gx(a.a),e=bv(a.f.periods,ox(a.w)),f=a.f.periods[e?a.f.periods.indexOf(e):0].variants.filter(h=>h.audio.id===b&&qw(h));e=!1;var g=void 0;if(c){if(g=f.find(h=>h.video.id===c.id),!g){a.log.debug("Cannot find exact variant, looking for anything else that matches with given audioId");e=!0;const h=a.getTrackManager().Ia();if(h){const k=h.renditions.map(l=>
|
|
139
|
+
l.id);g=f.find(l=>k.find(m=>m===String(l.video.id)))}}}else g=f[0];if(g){if(d.codecs.split(".")[0]===g.audio.codecs.split(".")[0]){d=g.audio;a.Za=d.id;a.g.setVariants(f);f=ry(a);uy(a,f,g,!1);e||a.N?vy(a,g,!0,0):_.Px(a.a,d,!0,0);Promise.resolve();return}a.log.warn("Target audio codecs not compatible with active audio codecs.")}}Promise.reject()}};Hw=function(a){if(a.f&&a.w){const b=wy(a),c=[];for(const d of xy(a))a=ow(d),a.active=d==b,c.push(a);return c}return[]};
|
|
140
|
+
Iw=function(a,b,c){var d=void 0===d?0:d;if(a.f&&a.a){const f=ry(a);if(a.configuration.abr.enabled&&b)a.log.info("Disable ABR and enable manual track selection to "+`select ${b.width}x${b.height}@${b.bandwidth}`),a.configuration.abr.enabled=!1,a.g.disable();else if(!a.configuration.abr.enabled&&!b){a.log.info("Enable ABR Selection");a.configuration.abr.enabled=!0;a.g.enable();a.M=null;c=yy(a,f.variants);null!=a.Y&&(a.Ya=a.Y,a.Y=null);null==c||a.N||zy(a,c);return}if(b){a.M=b.id;var e=f.variants.find(g=>
|
|
141
|
+
g.id==b.id);e?(a.M=e.video.id,qw(e)?(uy(a,f,e,!1),vy(a,e,c,d),null==a.Y&&(a.Y=a.Ya),a.Ya=new Ay(e),yy(a,f.variants)):a.log.error("Unable to switch to restricted track",b.id)):a.log.error("No variant with id",b.id)}else a.M=null,null!=a.Y&&(a.Ya=a.Y,a.Y=null),c=yy(a,f.variants),null==c||a.N||zy(a,c)}};Jw=function(a){const b=a.Jd;return a.f?a.H.getTextDisplayer().isTextVisible():b};
|
|
142
|
+
By=function(a,b){a.h||(a.m.on(b,_.Yc,()=>{if(a.h.error){var c=a.h.error.code;if(1==c)c=null;else{var d=a.h.error.msExtendedCode;d&&(0>d&&(d+=Math.pow(2,32)),d=d.toString(16));c=new _.H(_.G,3,3016,{code:c,extendedError:d,message:a.h.error.message})}}else c=null;if(c)a.onError(c)}),a.h=b);return Promise.resolve()};
|
|
143
|
+
Dy=function(a){return new _.Cy(b=>{if(void 0===b||null===b)return null;const c=a.getTrackManager(),d=[];if(c)for(const e of c.getVideoTracks())d.push(...e.renditions);return d.find(e=>e.id==b)||null})};
|
|
144
|
+
Ey=function(a,b){if(a.V!==b)if(a.V===_.Dl&&b!==_.El)b=zu(b,_.Cl),a.log.info(_.Mt+`${b}`);else{var c=a.Md;c=0===c?0:Date.now()-c;var d=a.V;a.V=b;a.Md=Date.now();a.G&&_.nl(a.G.a,a.V);b===_.zl&&(a.Ie=a.Ed?1:2);var e=a.Ie,f={currentState:a.V,previousState:d,timeSinceLastStateChangeMS:c,reason:b===_.zl||d===_.zl?e:void 0},g=zu(d,_.Cl),h=zu(b,_.Cl),k=b!==_.zl?"":`[${zu(e,_.Bl)}]`;a.log.info(`Player state change: ${g} -> `+`${h}${k}`);a.trigger(new _.F(_.je,{detail:f}));(b===_.wl||b===_.Dl)&&a.ba&&a.ba.stop();
|
|
145
|
+
b===_.zl?a.trigger(new _.F(_.ic,{detail:{bufferedTimeMS:-1,reason:e}})):d===_.zl&&a.trigger(new _.F(_.hc,{detail:{bufferedTimeMS:c,reason:e}}))}};Jy=function(a){var b=!1;b=void 0===b?!0:b;return _.y(function*(){if(a.C===Fy)return Promise.reject(new _.H(_.G,7,7E3));yield Gy(a);yield Hy(a);var c=_.bi(4)||_.bi(5);if(b||c)c=a.getSurface().getMedia(),yield By(a,c),yield Iy(a,c)})};Hy=function(a){a.h&&(a.m.off(a.h,_.Yc),a.h=null);return Promise.resolve()};
|
|
146
|
+
Gy=function(a){return _.y(function*(){a.C!==Fy&&(a.C=Ky);const b=a.h;b&&(a.m.off(b,_.nd),a.m.off(b,_.Sd),a.m.off(b,_.Ld),a.m.off(b,_.Xc),a.m.off(b,_.Xd),a.m.off(b,_.Vd));a.ab&&(a.ab.release(),a.ab=null);a.ba&&(a.ba.stop(),a.ba=null);a.A&&(yield a.A.stop(),a.A=null);a.g&&(yield a.g.stop());a.a&&(yield a.a.destroy(),a.a=null);a.w&&(a.w.release(),a.w=null);a.H&&(yield a.H.destroy(),a.H=null);a.pc&&(a.pc.release(),a.pc=null);b&&b.src&&(b.removeAttribute("src"),b.load());a.j&&(yield a.j.destroy(),a.j=
|
|
147
|
+
null);a.K.clear();a.F=null;a.qc.clear();a.f=null;a.G=null;a.N=!0;a.Db.clear();a.Rb=!1;Ly(a)})};Iy=function(a,b){return _.y(function*(){var c=window.muxjs?new My:new _.Ny;const d=_.ml(a.configuration,["html","single-native"]);a.I=d.create(a);a.Sb=Dy(a);a.Sb.track(a);c=new _.Oy(b,c,a.I,a.Sb,a.configuration);yield c.I;a.H=c})};
|
|
148
|
+
Sy=function(a){a.A&&a.A.configure(a.configuration.manifest);a.j&&Py(a);if(a.a){a.a.j=a.configuration.streaming;try{for(var b of a.f.periods)Qy(a,b)}catch(e){a.onError(e)}var c=Gx(a.a);const d=Hx(a.a);b=ry(a)||a.f.periods[0];c=tw(c,d,b.variants);a.g&&c&&c.allowedByApplication&&c.allowedByKeySystem?yy(a,b.variants):(a.log.debug("Choosing new streams after changing configuration"),Ry(a,b))}a.g&&(a.g.configure(a.configuration.abr),a.configuration.abr.enabled&&!a.N?a.g.enable():a.g.disable())};
|
|
149
|
+
Ty=function(a,b){return _.y(function*(){const c=a.getNetworkEngine();a.A=yield _.wn(b.url,c,a.configuration.manifest.attemptParameters,b.type||null);a.A.configure(a.configuration.manifest)})};
|
|
150
|
+
Xy=function(a,b){return _.y(function*(){a.La=new Uy;sv(a.La,c=>{Vy(a,_.Rf,c)});yield(new _.Tl(Promise.resolve().then(()=>_.y(function*(){for(;!a.f;)try{a.f=yield a.A.start(b.url,Wy(a))}catch(c){if(a.ga){const d=yield a.ga(b.url,c);if(d)b.url=d;else throw c;}else throw c;}!a.f.presentationTimeline||a.configuration.manifest.hlsLowLatency||_.C(a.configuration.suggestedPresentationDelay)||isNaN(a.configuration.suggestedPresentationDelay)||(a.log.info("Apply suggested presentation delay of: "+a.configuration.suggestedPresentationDelay),
|
|
151
|
+
a.f.presentationTimeline.F=a.configuration.suggestedPresentationDelay);a.f.presentationTimeline&&(a.f.presentationTimeline.G=!!a.configuration.lowLatencyMode);if(0==a.f.periods.length)throw new _.H(_.G,4,4014);py(a.f.periods)})),()=>{a.log.info("Aborting parser step...");return a.A.stop()})).P})};
|
|
152
|
+
az=function(a){return _.y(function*(){a.j=new _.Ql({xb:a.getNetworkEngine(),onError:f=>a.onError(f),Ud:f=>{if(a.a){var g=ry(a),h=!1,k=Object.keys(f);0===k.length&&a.log.warn("Got a key status event without any key statuses, so we don't know the real key statuses. If we don't have all the keys, you'll need to set restrictions so we don't select those tracks.");var l=1===k.length&&"00"===k[0];l&&a.log.warn("Got a synthetic key status event, so we don't know the real key statuses. If we don't have all the keys, you'll need to set restrictions so we don't select those tracks.");
|
|
153
|
+
if(k.length){k=a.getPeriods();for(let t=0;t<k.length;t++){const u=k[t];for(var m of u.variants){var n=m;var q=[];n.audio&&q.push(n.audio);n.video&&q.push(n.video);n=q;for(const x of n)n=m.allowedByKeySystem,x.keyId&&(q=f[l?"00":x.keyId],q=!!q&&!Yy.includes(q),m.allowedByKeySystem=q),n!==m.allowedByKeySystem&&(q=x.type,x.type===_.w&&(q=`video ${x.width}x${x.height}@`+`${_.Pg(x.bandwidth)}`),a.log.warn("DRM Key not available for "+`KID: '${x.keyId}'. Applying restrictions to ${q}`)),u===g&&n!==m.allowedByKeySystem&&
|
|
154
|
+
(h=!0)}}}if(f=Ex(a.a))if(l=Gx(a.a),m=Hx(a.a),l=tw(l,m,f.variants),!l||l.allowedByKeySystem)a.log.info(Ht),Zy(a),yy(a,f.variants);h&&f!==g&&(a.log.info(Ht),Zy(a),yy(a,g.variants))}},onExpirationUpdated:(f,g)=>{if(a.A&&a.A.onExpirationUpdated)a.A.onExpirationUpdated(f,g);a.trigger(new _.F(_.Pc,{expirationTime:g}))},onEvent:f=>a.Ld(f),getConfiguration:()=>a.getConfiguration(),sc:()=>a.sc()});Py(a);const b=a.configuration.drm,c=b?b.offlineId||"":"";let d=[];const e=_.un(a.f.periods);if(c){const f=_.ej(_.Md);
|
|
155
|
+
f&&(yield f.o(b,e,a.getNetworkEngine()),d=yield f.m(c))}yield _.Ik(a.j,e,d);a.f&&$y(a,a.f.periods)})};
|
|
156
|
+
oz=function(a){return _.y(function*(){const b=a.h;var c=e=>{a.h&&a.F&&(e.type===_.ee&&a.cd?(a.F.a=bz,Ly(a)):e.type===_.Pe&&a.getState()===_.Hl&&.1>a.getBufferInfo().Ea(a.getPosition())?(a.F.a=bz,Ly(a)):a.F&&cz(a));dz(a)};a.m.on(b,_.Sd,c);a.m.on(b,_.Ld,c);a.m.on(b,_.Xc,c);a.m.on(b,_.ee,c);a.m.on(b,_.de,c);a.m.on(b,_.Vd,c);a.m.on(b,_.Pe,c);a.m.on(b,_.Xd,()=>{if(a.h){var e=a.h.playbackRate;0!=e&&a.$a.set(e)}});a.g||(a.g=new _.ez,a.g.configure(a.configuration.abr));fz(a,a.f.periods);a.Ya=new gz(a.configuration.preferredAudioLanguage||
|
|
157
|
+
[],a.configuration.preferredAudioRole,a.configuration.preferredAudioChannelCount);a.aa=a.configuration.preferredTextLanguage;a.ma=a.configuration.preferredTextRole;yield _.al(a.j,b);if(!a.j)throw new _.H(_.G,7,7001);a.g.init((e,f,g)=>{!a.N&&zy(a,e,f,g)});a.w=hz(a,a.configuration.startTime);a.ab=iz(a);a.$a=new jz({Bd:()=>b.playbackRate,Xe:e=>{b.playbackRate=e},$f:e=>{b.currentTime+=e}});a.isLive()&&a.configuration.streaming.enableLiveEdgeChasing&&(a.pc=new kz(a));lz(a,Math.max(1E-4,a.configuration.streaming.rebufferingGoal));
|
|
158
|
+
iw(a.f,_.Yf(a.configuration.preferredVideoCodec),_.Yf(a.configuration.preferredAudioCodec),a.configuration.preferredAudioChannelCount);a.a=mz(a);a.a.j=a.configuration.streaming;a.C=qy;yield a.a.start();if(!a.a)throw new _.H(_.G,7,7001);a.configuration.streaming.startAtSegmentBoundary&&(c=nz(a,ox(a.w)),hx(a.w.g,c));for(var d of a.f.periods)Qy(a,d);Zy(a);d=ry(a)||a.f.periods[0];c=d.variants.some(e=>e.primary);a.configuration.preferredAudioLanguage||c||a.log.warn("No preferred audio language set. We will choose an arbitrary language initially");
|
|
159
|
+
yy(a,d.variants);a.m.one(b,_.nd,()=>{a.G.w=Date.now()/1E3-(null===a.Kd?0:a.Kd)})})};Ly=function(a){if(a.G&&a.F&&a.w){const c=pz(a)===_.zl;var b=a.$a;b.h=c;Zw(b);a.w.j.m=c;dz(a)}};Vy=function(a,b,c){a.trigger(new _.F(b,{detail:{schemeIdUri:c.schemeIdUri,value:c.value,startTime:c.startTime,endTime:c.endTime,id:c.id,eventElement:c.eventElement,type:c.type}}))};
|
|
160
|
+
Wy=function(a){return{networkingEngine:a.getNetworkEngine(),filterNewPeriod:b=>Qy(a,b),filterAllPeriods:b=>$y(a,b),onTimelineCueAdded:b=>{var c=a.La;a:{for(d of c.a)if(d.schemeIdUri===b.schemeIdUri&&d.startTime===b.startTime&&d.endTime===b.endTime)break a;var d=null}null==d&&(c.a.add(b),c.f(b))},onEvent:b=>a.Ld(b),onError:b=>a.onError(b)}};Py=function(a){const b=_.oj(a.configuration.drm);a.j.h=b};
|
|
161
|
+
$y=function(a,b){var c=a.a?Gx(a.a):null;const d=a.a?Hx(a.a):null;for(const f of b)nw(a.j,c,d,f);c=Cu(b,f=>f.variants.some(qw));if(a.configuration.streaming.disableAudioTracks)for(var e of b)for(const f of e.variants)delete f.audio;if(a.configuration.streaming.disableVideoTracks)for(const f of b)for(const g of f.variants)e=g.video,!e||1<Gu(e.type,_.Uh(e.mimeType,e.codecs)).size||delete g.video;if(0===c)throw new _.H(_.G,4,4032);if(c<b.length)throw new _.H(_.G,4,4011);for(const f of b)kw(f.variants,
|
|
162
|
+
a.configuration.restrictions,a.We)&&a.a&&ry(a)==f&&Zy(a),qz(a,f.variants)};
|
|
163
|
+
cz=function(a){switch(a.C){case qy:a:if(a.h.ended||Qv(a.H))var b=!0;else{if(a.isLive()){b=ov(a.f.presentationTimeline);var c=a.getBufferInfo();if(null!==c&&(c=c.Aa(),null!==c&&c>=b)){b=!0;break a}}b=!1}break;default:b=!1}if(a.H){var d=Sv(a.H);c=d.video;d=d.audio;var e=a.h.currentTime;c&&d?(c=c.Ea(e),d=d.Ea(e),c=Math.min(c,d)):c=c?c.Ea(e):d?d.Ea(e):0}else c=0;if(d=a.F){{d=a.F;var f=b;const g=d.f.get(d.a);e=d.a;c=f||c>=g?rz:bz;d.a=c;d=e!=c}}c=d;d=sz(a);c||a.getState()===_.zl&&!d?(a.log.debug("Buffering state changed. Is buffering",
|
|
164
|
+
d,"buffered to end",b,"state",a.getState()),Ly(a)):a.Rb&&dz(a)};dz=function(a){Ey(a,pz(a))};
|
|
165
|
+
fz=function(a,b){for(let c=0;c<b.length;c++){const d=b[c],e=new Map;for(const f of d.variants)if(f.video&&f.video.closedCaptions){const g=f.video;for(const h of g.closedCaptions.keys())if(!e.has(h)){const k={id:a.Ze++,originalId:h,createSegmentIndex:Promise.resolve.bind(Promise),findSegmentPosition:()=>null,getSegmentReference:()=>null,initSegmentReference:null,sa:0,mimeType:_.Rb,codecs:"",kind:"caption",encrypted:!1,keyId:null,language:g.closedCaptions.get(h),label:null,type:_.v,primary:!1,trickModeVideo:null,
|
|
166
|
+
emsgSchemeIdUris:null,roles:g.roles,channelsCount:null,closedCaptions:null};e.set(h,k)}}for(const f of e.values())d.textStreams.push(f)}};zy=function(a,b,c,d){c=void 0===c?!1:c;d=void 0===d?0:d;if(a.configuration.abr.enabled){a.log.debug("switch_");var e=tz(a,b);uz(a,e,()=>uy(a,e,b,!0));e===ry(a)&&Bz(a);a.a&&Qx(a.a,b,c,d)}};hz=function(a,b){return new Cz(a.h,a.f,a.configuration.streaming,b,()=>{a.ab&&Bv(a.ab,!0);a.a&&Rx(a.a)},c=>a.dispatchEvent(c))};
|
|
167
|
+
iz=function(a){const b=new Dz(a.f);Yw(b,()=>{Zy(a)});const c=new Ez(a.La);Cv(c,e=>{e.fd&&e.fd();Vy(a,_.Tf,e)},e=>{e.Td&&e.Td();Vy(a,_.Uf,e)},(e,f)=>{f||(e.fd&&e.fd(),Vy(a,_.Tf,e),e.Td&&e.Td(),Vy(a,_.Uf,e))});const d=new Fz(a.h);d.a.add(b);d.a.add(c);return d};lz=function(a,b){a.F=new Gz(b,Math.min(.5,b/2));a.F.a=bz;Ly(a);a.ba=(new _.Yh(()=>{cz(a)})).Xa(.25)};
|
|
168
|
+
mz=function(a){const b={tb:()=>ox(a.w),X:a.H,xb:a.getNetworkEngine(),Sd:a.vg.bind(a),Rd:a.ug.bind(a),onError:a.onError.bind(a),Je:a.ef.bind(a),onEvent:a.Ld.bind(a),Ne:a.wg.bind(a),gd:a.ff.bind(a),yd:()=>a.g,pd:a.tg.bind(a),Ye:a.hf.bind(a),Ec:a.j};return new _.Hz(a.f,b)};
|
|
169
|
+
nz=function(a,b){function c(g,h){if(!g)return null;h=g.findSegmentPosition(h-f.startTime);return null==h?null:(g=g.getSegmentReference(h))?g.startTime+f.startTime:null}const d=Gx(a.a);var e=Hx(a.a);const f=ry(a);a=c(d,b);e=c(e,b);return null!=e&&null!=a?Math.max(e,a):null!=e?e:null!=a?a:b};
|
|
170
|
+
Qy=function(a,b){var c=a.a?Gx(a.a):null;const d=a.a?Hx(a.a):null;nw(a.j,c,d,b);c=b.variants;if(!c.some(qw))throw new _.H(_.G,4,4011);qz(a,b.variants);kw(c,a.configuration.restrictions,a.We)&&a.a&&ry(a)==b&&Zy(a);if(!_.bi(2)&&(b=a.j?a.j.getDrmInfo():null))for(const e of c)for(const f of e.drmInfos)if(f.keySystem===b.keySystem)for(const g of f.initData||[])_.Pk(a.j,g.keyId,g.initData)||_.Rk(a.j,g.initDataType,g.initData,g.keyId)};
|
|
171
|
+
Zy=function(a){const b=a.getTrackManager();b&&a.C!==Fy&&(b.l&&(Lw(b),b.l.trigger(new _.F(_.Qo))),Bz(a))};ry=function(a){const b=ox(a.w);let c=null;for(const d of a.f.periods)d.startTime<=b&&(c=d);return c};
|
|
172
|
+
yy=function(a,b){try{qz(a,b)}catch(d){return a.onError(d),null}b=b.filter(d=>qw(d));b=xw(b,a.Za);var c=a.Ya.create(b);c=Array.from(c.values());a.g.setVariants(c);if(null!==a.M&&null!==a.Za&&(c=c.find(d=>d.video.id==a.M&&d.audio.id==a.Za),a.M=null,c))return c;if(a.configuration.abr.enabled||null===a.M)return a.g.chooseVariant();b=b.find(d=>null!==d.video&&d.video.id===a.M);return b?b:(a.log.warn("Selected video track not found. Falling back to ABR selection"),a.g.chooseVariant())};
|
|
173
|
+
sz=function(a){return a.j&&a.j.B?!0:a.F?a.F.getState()===bz:!1};Ry=function(a,b,c){c=void 0===c?!0:c;const d=yy(a,b.variants);a.Za=d&&d.audio&&d.audio.id;d&&(uy(a,b,d,!0),vy(a,d,c));(c=_.sw(b.textStreams,a.aa,a.ma)[0]||null)&&(a.configuration.streaming.alwaysStreamText||Jw(a))&&(sy(a,b,c,!0),ty(a,c))};wy=function(a){const b=ry(a);return b&&Qw(a.K,b).variant};xy=function(a){const b=ry(a);if(null==b)return[];Iz(a);return b.variants.filter(c=>qw(c))};
|
|
174
|
+
Jz=function(a){const b=ry(a);if(null==b)return[];Iz(a);return b.textStreams.filter(c=>!a.qc.has(c))};sy=function(a,b,c,d){Rw(a.K,b,c);if(b=a.getTrackManager())Mw(b,c,d),c=b.Ga(),a=a.G.A,a.g!==c&&(a.g=c,a.a.push({timestamp:Date.now()/1E3,id:c.id,trackId:c.track.id,type:c.track.type,fromAdaptation:d,width:null,height:null,bandwidth:null}))};ty=function(a,b){a.N?a.T=b:_.Px(a.a,b,!0,0)};
|
|
175
|
+
uy=function(a,b,c,d){var e=a.getTrackManager();a.A.setCurrentVariant(c);if(e){var f=a.G.A;if(c.video){Mw(e,c.video,d);var g=e.ia(),h=f;h.h!==g&&(h.h=g,h.a.push({timestamp:Date.now()/1E3,id:g.id,trackId:g.track.id,type:g.track.type,fromAdaptation:d,width:g.width,height:g.height,bandwidth:g.bandwidth}))}c.audio&&(Mw(e,c.audio,d),e=e.Fa(),f.f!==e&&(f.f=e,f.a.push({timestamp:Date.now()/1E3,id:e.id,trackId:e.track.id,type:e.track.type,fromAdaptation:d,width:null,height:null,bandwidth:e.bandwidth})))}Qw(a.K,
|
|
176
|
+
b).variant=c};vy=function(a,b,c,d){c=void 0===c?!1:c;d=void 0===d?0:d;a.N?(a.W=b,a.Se=c,a.Re=d):Qx(a.a,b,c,d)};
|
|
177
|
+
qz=function(a,b){a=a.j?_.uf(a.j.W):{};var c=Object.keys(a);c=c.length&&"00"==c[0];let d=!1,e=!1;const f=[],g=[];for(const h of b){b=[];h.audio&&b.push(h.audio);h.video&&b.push(h.video);for(const k of b)k.keyId&&((b=a[c?"00":k.keyId])?Yy.includes(b)&&(g.includes(b)||g.push(b)):f.includes(k.keyId)||f.push(k.keyId));h.allowedByApplication?h.allowedByKeySystem&&(d=!0):e=!0}if(!d)throw new _.H(_.G,4,4012,{hasAppRestrictions:e,missingKeys:f,restrictedKeyStatuses:g});};
|
|
178
|
+
Iz=function(a){if(a.a&&a.f){var b=Ex(a.a),c=ry(a);null!=b&&b==c&&(Gx(a.a),Hx(a.a),_.Fx(a.a,_.v),Qw(a.K,c),Qw(a.K,c))}};pz=function(a){const b=a.getDuration(),c=a.getPosition();return a.h&&a.h.ended||(a.Rb||a.V===_.wl)&&1>=Math.abs(b-c)?_.wl:sz(a)||a.cd?_.zl:a.h&&a.h.paused?_.Gl:_.Hl};
|
|
179
|
+
Kz=function(a,b){a.N=!0;a.g.disable();a.log.debug("Choosing new streams after period changed");let c=yy(a,b.variants),d=_.sw(b.textStreams,a.aa,a.ma)[0]||null;a.W&&(b.variants.includes(a.W)&&(c=a.W),a.W=null);a.T&&(b.textStreams.includes(a.T)&&(d=a.T),a.T=null);c&&uz(a,b,()=>uy(a,b,c,!0));d&&(a.configuration.streaming.alwaysStreamText||Jw(a))&&uz(a,b,()=>sy(a,b,d,!0));b===ry(a)&&Bz(a);return a.configuration.streaming.alwaysStreamText||Jw(a)?{variant:c,text:d}:{variant:c,text:null}};
|
|
180
|
+
uz=function(a,b,c){a.Db.has(b)||a.Db.set(b,[]);a.Db.get(b).push(c)};Bz=function(a){const b=ry(a);if(b){const c=a.Db.get(b)||[];for(a.Db.delete(b);c.length;)c.shift()()}};tz=function(a,b){for(const c of a.f.periods)if(c.variants.includes(b))return c;return null};
|
|
181
|
+
Lz=function(a,b,c){return _.y(function*(){let d;try{d=yield _.wn(b.url,a.getNetworkEngine(),a.configuration.manifest.attemptParameters,b.type||null);d.configure(a.configuration.manifest);var e=yield d.start(b.url,Wy(a));py(e.periods);if(!e.periods.length)throw new _.H(_.G,4,4014);yield a.A.stop();a.A=d;const f=c.audio&&c.audio.id,g=c.video&&c.video.id;a.f.periods=e.periods;const h=bv(e.periods,ox(a.w))||e.periods[0];iw(a.f,_.Yf(a.configuration.preferredVideoCodec),_.Yf(a.configuration.preferredAudioCodec),
|
|
182
|
+
a.configuration.preferredAudioChannelCount);const k=yw(f,g,h.variants),l=_.sw(h.textStreams,a.aa,a.ma)[0]||null;yy(a,h.variants);const m=k&&k.video,n=k&&k.audio;e=[];const q=new Set;for(const t of h.variants)t.video&&q.add(t.video),t.audio&&q.add(t.audio);for(const t of[...q,...h.textStreams])e.push(t.createSegmentIndex());yield Promise.all(e);Ux(a.a,_.p,n);Ux(a.a,_.w,m);Ux(a.a,_.v,l);k&&uy(a,h,k,!1);a.log.info("Switch CDN successful.")}catch(f){throw d&&(yield d.stop()),f;}})};
|
|
183
|
+
Mz=function(){const a=MediaSource.isTypeSupported,b=/^dv(?:h[e1]|a[v1])\./;MediaSource.isTypeSupported=c=>{var d=c.split(/ *; */),e=d.shift();const f={};for(var g of d)d=g.split("\x3d"),f[d[0]]=d[1].replace(/"(.*)"/,"$1");g=f.codecs;if(!g)return a(c);let h=!1,k=!1;c=g.split(",").filter(l=>{b.test(l)&&(k=!0);/^(hev|hvc)1\.2/.test(l)&&(h=!0);return!0});k&&(h=!1);f.codecs=c.join(",");h&&(f.eotf="smpte2084");for(const l in f)e+="; "+l+'\x3d"'+f[l]+'"';return cast.__platform__.canDisplayType(e)}};
|
|
184
|
+
Nz=function(){const a=MediaSource.isTypeSupported;MediaSource.isTypeSupported=b=>"mp2t"==b.split(/ *; */)[0].split("/")[1].toLowerCase()?!1:a(b)};Oz=function(){const a=MediaSource.prototype.addSourceBuffer;MediaSource.prototype.addSourceBuffer=function(...b){b=a.apply(this,b);b.abort=function(){};return b}};Pz=function(){const a=SourceBuffer.prototype.remove;SourceBuffer.prototype.remove=function(b,c){return a.call(this,b,c-.001)}};
|
|
185
|
+
Qz=function(){const a=MediaSource.isTypeSupported;MediaSource.isTypeSupported=b=>"opus"!=_.Ju(b)[0]&&a(b)};Rz=function(a,b){const c=a.mode;a.mode=c==_.fe?_.fe:_.bd;const d=a.cues;for(let e=d.length-1;0<=e;e--){const f=d[e];f&&b(f)&&a.removeCue(f)}a.mode=c};lu=[112,115,115,104,0,0,0,0];_.Sz=class{constructor(a,b,c,d,e){this.Ha=a;this.ua=b;this.ha=c;this.keyInfo=d||null;this.lc=_.C(e)?!1:!!e}f(){return this.keyInfo}};
|
|
186
|
+
_.wv=class{constructor(a,b,c,d,e,f,g,h=null,k=!1,l=null,m=null,n=null,q=null,t=[]){this.position=a;this.startTime=b;this.endTime=c;this.sa=g;this.Ha=d;this.ua=e;this.ha=f;this.keyInfo=h||null;this.lc=_.C(k)?!1:!!k;this.timescale=l;this.horizontalTiles=m;this.verticalTiles=n;this.durationPerTile=q;this.a=t||[];this.g=!1}getPosition(){return this.position}f(){return this.keyInfo}};
|
|
187
|
+
Tz=class{constructor(){this.a=new muxjs.mp4.Transmuxer({keepOriginalTimestamps:!0,remux:!1});this.f=null;this.m=[];this.j=[];this.g=[];this.h=!1;this.a.on("data",this.w.bind(this));this.a.on("done",this.o.bind(this))}destroy(){this.a&&(this.a.dispose(),this.a=null);return Promise.resolve()}w(a){this.g=a.captions;const b=new Uint8Array(a.data.byteLength+a.initSegment.byteLength);b.set(a.initSegment,0);b.set(a.data,a.initSegment.byteLength);a.type===_.w?this.m.push(b):a.type===_.p&&this.j.push(b)}o(){const a=
|
|
188
|
+
{video:_.$g(...this.m),captions:this.g,audio:_.$g(...this.j)};this.f.resolve(a);this.h=!1}};Ru=[154,4,240,121,152,64,66,134,171,146,230,91,224,136,95,149];Qu=class extends _.gp{constructor(a,b,c,d,e,f){f=void 0===f?null:f;super(a,b,d);this.version=e;this.g=c;this.j=f}};
|
|
189
|
+
_.Cy=class{constructor(a){this.j=a;this.log=new _.O("clpp.renditions");this.S=[];this.h=this.a=null;this.g=!1}track(a){null!=this.a&&(this.a&&(this.a.off(_.be,this.f),this.g&&this.a.off(_.ue,this.f)),this.a=null);a&&(this.a=a,this.a.on(_.be,this.f,this))}append(a,b,c){const d=this.j?this.j(c):null;d||this.log.debug("Unable to resolve rendition for id",c);c={start:a,end:b,rendition:d,width:d?d.width:0,height:d?d.height:0,bandwidth:d?d.bandwidth:0};const e=this.S.find(f=>f.start>=a&&f.end<=b);if(e)e.rendition=
|
|
190
|
+
d,e.width=c.width,e.height=c.height,e.bandwidth=c.bandwidth,e.start=c.start,e.end=c.end;else{for(const f of this.S)a>=f.start&&a<f.end?f.end=a:b>=f.start&&b<f.end&&(f.start=b);this.S.push(c);this.S.sort(Xu)}$u(this);this.f();this.a&&this.a.trigger(new _.F(_.Ke))}clear(){this.S=[];$u(this);this.a&&(this.a.trigger(new _.F(_.Ke)),this.a.trigger(new _.F(_.cc)))}f(){if(this.a){var a=this.a.getPosition();if(0<=a){a:{var b=this.S.length,c=Number.MAX_SAFE_INTEGER;for(var d=0;d<b;d++){const e=this.S[d];c=
|
|
191
|
+
Math.min(e.start,c);if(e.start<=a&&e.end>a){a=.1>e.end-a&&d<b-1?this.S[d+1].rendition:e.rendition;break a}if(e.start>a)break}a=0<b&&c>a&&.25>c-a?this.S[0].rendition:null}if(a&&this.h!==a&&(this.h=a,this.a)){c=b=-1;if(a)b=a.width||-1,c=a.height||-1;else if(d=this.a.getSurface().getMedia())b=d.videoWidth,c=d.videoHeight;this.a.trigger(new _.F(_.ec,{detail:{width:b,height:c,bandwidth:a?a.bandwidth:null,rendition:a}}))}}}}};_.Uz=class{constructor(a){this.g=Math.exp(Math.log(.5)/a);this.f=this.a=0}};
|
|
192
|
+
_.Vz=class{constructor(a,b,c,d,e){e=void 0===e?!1:e;this.w=a;this.F=b;this.j=this.f=Infinity;this.a=1;this.A=0;this.g=this.h=null;this.B=0;this.o=this.m=c;this.H=void 0===d?!0:d;this.C=new _.O("clpp.media.PresentationTimeline");this.G=e}getDuration(){return this.f}getPresentationStartTime(){return this.w}offset(a){null!=this.h&&(this.h+=a);null!=this.g&&(this.g+=a)}isLive(){return Infinity==this.f&&!this.m}};Uy=class{constructor(){this.f=()=>{};this.a=new Set}release(){this.f=()=>{};this.a.clear()}cues(){return this.a}};
|
|
193
|
+
zv=class{constructor(a,b,c){this.g=a;this.a=b;this.f=c;new _.O("clpp.media.SegmentIterator")}next(){var a=this.g.get(this.a);a&&0<a.a.length?(this.f+=1,a.Ha().length&&this.f===a.a.length&&(this.a+=1,this.f=0)):(this.a+=1,this.f=0);a=uv(this);return{value:a,done:!a}}};
|
|
194
|
+
_.Wz=class{constructor(a){this.a=a;this.h=new _.O("clpp.media.SegmentIndex")}destroy(){this.a=[];return Promise.resolve()}f(a){for(var b=this.a.length-1;0<=b;--b){const c=this.a[b];if(a>=c.startTime&&a<c.endTime)return c.position}if(this.a.length&&a<this.a[0].startTime)return this.a[0].position;this.h.warn("No Segment found for "+a+". We have "+this.a.length+" references");for(a=0;a<this.a.length;a++)b=this.a[a],this.h.debug("SegmentIndex Ref "+a+" start: "+b.startTime+" end: "+b.endTime+" pos: "+
|
|
195
|
+
b.position);return null}get(a){if(0==this.a.length)return null;a-=this.a[0].position;return 0>a||a>=this.a.length?null:this.a[a]}offset(a){this.h.info("Apply offset"+a+" to segment index");for(const b of this.a)b.startTime+=a,b.endTime+=a,b.sa-=a}g(a,b){a-=this.a[0].position;if(0<=a&&a<this.a.length)for(this.h.warn("Accounting for segment duration drift",b,"at",a),this.a[a].endTime+=b,a+=1;a<this.a.length;++a)this.a[a].startTime+=b,this.a[a].endTime+=b}getDuration(){return this.a[this.a.length-1].endTime-
|
|
196
|
+
this.a[0].startTime}replace(a){this.a=a}};Fz=class{constructor(a){this.f=a;this.a=new Set;this.g=(new _.Yh(()=>{Bv(this,!1)})).Xa(.25)}release(){this.g.stop();for(const a of this.a)a.release();this.a.clear()}};
|
|
197
|
+
Ez=class{constructor(a){this.j=a;this.h=new Map;this.a=()=>{};this.f=()=>{};this.g=()=>{};this.o=[{hc:null,gc:2,Xb:(b,c)=>this.a(b,c)},{hc:1,gc:2,Xb:(b,c)=>this.a(b,c)},{hc:3,gc:2,Xb:(b,c)=>this.a(b,c)},{hc:2,gc:1,Xb:(b,c)=>this.f(b,c)},{hc:2,gc:3,Xb:(b,c)=>this.f(b,c)},{hc:1,gc:3,Xb:(b,c)=>this.g(b,c)},{hc:3,gc:1,Xb:(b,c)=>this.g(b,c)}]}release(){this.j=null;this.h.clear();this.a=()=>{};this.f=()=>{};this.g=()=>{}}m(a,b){for(const c of this.j.cues()){const d=this.h.get(c)||null,e=a<c.startTime?1:
|
|
198
|
+
a>c.endTime?3:2;this.h.set(c,e);const f=this.o.find(g=>g.hc===d&&g.gc===e);f&&f.Xb(c,b)}}};
|
|
199
|
+
Mv=class{constructor(a,b){this.o=null;this.B=a;this.g=b;this.h=this.w=0;this.j=Infinity;this.f=this.a=null;this.A="";this.m=new Map}destroy(){this.g=this.o=null;this.m.clear();return Promise.resolve()}remove(a,b){return Promise.resolve().then(()=>{!this.g||!this.g.remove(a,b)||null==this.a||b<=this.a||a>=this.f||(a<=this.a&&b>=this.f?this.a=this.f=null:a<=this.a&&b<this.f?this.a=b:a>this.a&&b>=this.f&&(this.f=a))})}ob(){return this.a}Aa(){return this.f}Zb(a){return null==this.a||null==this.f?!1:a>=
|
|
200
|
+
this.a&&a<this.f}Ea(a){return null==this.f||this.f<a?0:this.f-Math.max(a,this.a)}};My=class{constructor(){this.a=new muxjs.mp4.CaptionParser;this.j=[];this.h={}}init(a){const b=muxjs.mp4.probe;a=_.I(a);this.j=b.videoTrackIds(a);this.h=b.timescale(a);this.a.init()}g(a,b){a=_.I(a);(a=this.a.parse(a,this.j,this.h))&&a.captions&&b(a.captions);this.a.clearParsedCaptions()}f(){this.a.resetCaptionStream()}};_.Ny=class{init(){}g(){}f(){}};var Kv;
|
|
201
|
+
_.Oy=class{constructor(a,b,c,d,e){this.j=a;this.C=c;this.g={};this.N=!1;this.f=null;this.h={};this.m=new _.jo;this.J=!1;this.B={};this.H=b;this.F=d;this.K=e;this.aa=this.K.streaming.maxSegmentToMediaOffset||1;this.I=new _.Mk;this.w="";this.G={};this.o=Lv(this,this.I);this.R=!0;this.a=new _.O("clpp.mse.MediaSourceEngine")}destroy(){this.J=!0;const a=[];for(const c in this.h){const d=this.h[c];var b=d[0];this.h[c]=d.slice(0,1);b&&a.push(b.p.catch(su));for(b=1;b<d.length;++b)d[b].p.catch(su),d[b].p.reject()}this.f&&
|
|
202
|
+
a.push(this.f.destroy());this.C&&a.push(this.C.destroy());for(const c in this.B)a.push(this.B[c].destroy());return Promise.all(a).then(()=>{this.m&&(this.m.release(),this.m=null);this.j&&(this.j.removeAttribute("src"),this.j.load(),this.j=null);this.w="";this.C=this.f=this.o=null;this.g={};this.B={};this.G={};this.H=null;this.N=!1;for(const c in this.h);this.h={}})}init(a,b,c){c=void 0===c?!1:c;const d=this;return _.y(function*(){yield d.I;a.forEach((e,f)=>{let g=_.Uh(e.mimeType,e.codecs);if(f==_.v)Nv(d,
|
|
203
|
+
g);else{let h=new Map;h.set(f,g);_.Du(g)&&b&&!e.keyInfo||!Fu(g,f)||(d.B[f]=new Tz,g="aac"==g.toLowerCase().split(";")[0].split("/")[1]?g.replace(/aac/i,_.xd):Eu(f,g),h=Gu(f,g),c&&h.delete(_.p));Ov(d,h)}})})}ob(a){return a===_.v?this.f.ob():(a=Rv(this,a))?a.ob():null}Aa(a){return a===_.v?this.f.Aa():(a=Rv(this,a))?a.Aa():null}Zb(a,b,c){return a===_.v?this.f.Zb(b):(a=Rv(this,a))?a.Zb(b,!1,c):!1}Ea(a,b){return a===_.v?this.f.Ea(b):(a=Rv(this,a))?a.Ea(b):0}remove(a,b,c){return a===_.v?this.f.remove(b,
|
|
204
|
+
c):Vv(this,a,this.V.bind(this,a,b,c)).then(()=>{if(a===_.w){var d=this.ob(a);const e=this.Aa(a);null!==d&&null!==e&&av(this.F,d,e)}else a===_.p&&(d=this.F,d.a&&d.a.trigger(new _.F(_.cc)))})}clear(a){if(a==_.v){if(!this.f)return Promise.resolve();this.H.f();return this.f.remove(0,Infinity)}return Vv(this,a,this.V.bind(this,a,0,this.o.duration))}flush(a){return a==_.v?Promise.resolve():Vv(this,a,this.T.bind(this,a))}endOfStream(a){return bw(this,()=>{Qv(this)||(a?this.o.endOfStream(a):this.o.endOfStream())})}getDuration(){return this.o.duration}M(a,
|
|
205
|
+
b){this.a.debug("Appending data to "+a+Dt);try{this.g[a].appendBuffer(b)}catch(c){throw this.a.warn("Failed to append data for "+a,c),c;}this.a.debug("Done Appending data to "+a+Dt)}V(a,b,c){if(c<=b)this.A(a);else{this.a.debug("Removing data from "+a+" range:",b,c);try{this.g[a].remove(b,c)}catch(d){throw this.a.warn("Failed to remove data from "+a+" buffer. Range:",b,c,d),d;}this.a.debug("Done Removing data from "+a+" range:",b,c)}}Y(a){try{this.a.debug("Aborting operations for "+a+Dt);const b=this.g[a].appendWindowStart,
|
|
206
|
+
c=this.g[a].appendWindowEnd;this.g[a].abort();this.g[a].appendWindowStart=b;this.g[a].appendWindowEnd=c}catch(b){throw this.a.warn("Failed to abort operations for "+a+Dt,b),b;}this.a.debug("Done Aborting operations for "+a+Dt);this.A(a)}T(a){try{this.j.readyState>HTMLMediaElement.HAVE_NOTHING?(this.a.debug("Flushing buffer for "+a),this.j.currentTime-=.001):this.a.warn("Skip buffer flush for "+a+" with element state: "+this.j.readyState)}catch(b){throw this.a.warn("Failed to flush buffer for "+a,
|
|
207
|
+
b),b;}this.a.debug("Done Flushing buffer for "+a);this.A(a)}W(a,b){0>b&&(b+=.001);try{this.a.debug("Setting timestamp offset for "+a,b),this.g[a].timestampOffset=b}catch(c){throw this.a.warn("Failed to set timestamp offset for "+a,b,c),c;}this.a.debug("Done Setting timestamp offset for "+a,b);this.A(a)}ba(a,b,c){try{this.a.debug("Setting append window for "+a,b,c),this.g[a].appendWindowStart=0,this.g[a].appendWindowEnd=c,this.g[a].appendWindowStart=b}catch(d){throw this.a.warn("Failed to set append window for "+
|
|
208
|
+
a,b,c,d),d;}this.a.debug("Done Setting append window for "+a,b,c);this.A(a)}U(a){this.h[a][0].p.reject(new _.H(_.G,3,3014,{mediaError:this.j.error?this.j.error.code:0}))}A(a){const b=this.h[a][0];b&&(b.p.resolve(),this.a.debug("Update-End received for "+a),aw(this,a))}getTextDisplayer(){return this.C}};Kv=window.URL.createObjectURL;var U=class extends _.P{constructor(){super();this.g=new _.O("cl.api.mse.TrackManager");this.l=null;this.h=[];this.a=new Map;this.f=new Map}initialize(a){this.l=a}release(){this.h=[];this.a.clear();this.f.clear()}load(){}destroy(){this.release();this.l=null}getVideoTracks(){return zw(this,_.L)}getAudioTracks(){return zw(this,_.K)}ja(){return zw(this,_.J)}ia(){return this.a.get(_.L)||null}Fa(){return this.a.get(_.K)||null}Ga(){return this.a.get(_.J)||null}Ra(){return this.f.get(_.L)||null}eb(){return this.f.get(_.K)||
|
|
209
|
+
null}fb(){return this.f.get(_.J)||null}Ia(){return Aw(this,_.L)}na(){return Aw(this,_.K)}oa(){return Aw(this,_.J)}Wa(a){Cw(this,_.L,a)}ta(a){Cw(this,_.K,a)}Da(a){Cw(this,_.J,a)}Va(a,b){Bw(this,_.L,a,void 0===b?!1:b)}kb(a,b){Bw(this,_.K,a,void 0===b?!1:b)}lb(a,b){Bw(this,_.J,a,void 0===b?!1:b)}addTextTrack(a){const b=this;return _.y(function*(){b.l&&(yield b.l.addTextTrack(a.url,a.language,a.kind,a.mimeType,a.codec,a.label))})}la(){return!!this.l&&this.l.la()}};U.prototype.isAbrEnabled=U.prototype.la;
|
|
210
|
+
U.prototype.addTextTrack=U.prototype.addTextTrack;U.prototype.setTextRendition=U.prototype.lb;U.prototype.setAudioRendition=U.prototype.kb;U.prototype.setVideoRendition=U.prototype.Va;U.prototype.setTextTrack=U.prototype.Da;U.prototype.setAudioTrack=U.prototype.ta;U.prototype.setVideoTrack=U.prototype.Wa;U.prototype.getTextTrack=U.prototype.oa;U.prototype.getAudioTrack=U.prototype.na;U.prototype.getVideoTrack=U.prototype.Ia;U.prototype.getLoadingTextRendition=U.prototype.fb;
|
|
211
|
+
U.prototype.getLoadingAudioRendition=U.prototype.eb;U.prototype.getLoadingVideoRendition=U.prototype.Ra;U.prototype.getTextRendition=U.prototype.Ga;U.prototype.getAudioRendition=U.prototype.Fa;U.prototype.getVideoRendition=U.prototype.ia;U.prototype.getTextTracks=U.prototype.ja;U.prototype.getAudioTracks=U.prototype.getAudioTracks;U.prototype.getVideoTracks=U.prototype.getVideoTracks;var Xz=class{constructor(){this.f=new _.Uz(2);this.g=new _.Uz(5);this.a=0}};_.ez=class{constructor(){this.f=new _.O("clpp.abr");this.w=null;this.j=!1;this.g=new Xz;this.o=[];this.m=1;this.B=this.A=!1;this.a=this.h=null}stop(){this.w=null;this.j=!1;this.o=[];this.m=1;this.h=null;this.B=!1}init(a){this.w=a}chooseVariant(){var a=Ow(!this.B&&this.a.initialRestrictions?this.a.initialRestrictions:this.a.restrictions,this.o);const b=Nw(this.g,this.a.defaultBandwidthEstimate);this.o.length&&!a.length&&(this.f.warn("No variants met the ABR restrictions. Choosing a variant by lowest bandwidth."),
|
|
212
|
+
a=Ow(null,this.o),a=[a[0]]);let c=a[0]||null;for(const {item:e,next:f}of _.yu(a)){var d=isNaN(this.m)||0===this.m?1:Math.abs(this.m);a=d*e.bandwidth;const g=a/this.a.bandwidthDowngradeTarget;d=d*(f||{bandwidth:Infinity}).bandwidth/this.a.bandwidthUpgradeTarget;this.f.debug("Bandwidth ranges:",(a/1E6).toFixed(3),(g/1E6).toFixed(3),(d/1E6).toFixed(3));b>=g&&b<=d&&(c=e)}this.h=Date.now();this.B=!0;return c}enable(){this.j=!0}disable(){this.j=!1}segmentDownloaded(a,b){this.f.debug("Segment downloaded:",
|
|
213
|
+
"deltaTimeMs\x3d"+a,"numBytes\x3d"+b,"lastTimeChosenMs\x3d"+this.h,"enabled\x3d"+this.j);var c=this.g;if(!(16E3>b)){var d=8E3*b/a;a/=1E3;c.a+=b;_.gv(c.f,a,d);_.gv(c.g,a,d)}if(null!=this.h&&this.j)a:{this.f.debug("Suggesting Streams...");if(!this.A){if(!(128E3<=this.g.a)){this.f.debug("Still waiting for a good estimate...");break a}this.A=!0;if(this.a.useSwitchIntervalForInitialSwitch&&Date.now()-this.h<1E3*this.a.switchInterval){this.f.debug("Skipping initial estimation switch due to switch interval...");
|
|
214
|
+
break a}}else if(Date.now()-this.h<1E3*this.a.switchInterval){this.f.debug("Still within switch interval...");break a}b=this.chooseVariant();this.f.debug("Calling switch_(), bandwidth\x3d"+Math.round(Nw(this.g,this.a.defaultBandwidthEstimate)/1E3)+" kbps");b&&this.w(b)}}playbackRateChanged(a){this.m=a}getBandwidthEstimate(){return Nw(this.g,this.a.defaultBandwidthEstimate)}setVariants(a){this.o=a}configure(a){this.a=a}reset(){this.A=!1;this.g=new Xz;const a=this.chooseVariant();a&&this.w(a)}};var Yz=class{constructor(){this.a=new Map}clear(){this.a.clear()}},Pw=class{constructor(){this.text=this.variant=null}};var Zz=class{constructor(a,b){this.f=a;this.a=new Set([a]);b=b||[];for(const c of b)this.add(c)}add(a){if(Uw(this.f,a))return this.a.add(a),!0;_.D("Rejecting variant - not compatible with root.");return!1}values(){return this.a.values()}};var Ay=class{constructor(a){this.a=a;this.f=new gz(a.language,"",a.audio&&a.audio.channelsCount?a.audio.channelsCount:0)}create(a){const b=a.filter(c=>Uw(this.a,c));return b.length?new Zz(b[0],b):this.f.create(a)}},gz=class{constructor(a,b,c){this.g=_.Yf(a);this.a=b;this.f=c}create(a){var b=Vw(a,this.g);0<b.length&&(a=b);b=!1;if(this.a){const c=Ww(a,this.a);0<c.length?(a=c,b=!0):_.D("No exact match for preferred variant role could be "+`found. Role: ${this.a}`)}b||(b=a.filter(c=>c.primary),0<b.length&&
|
|
215
|
+
(a=b));this.f&&(b=ew(a,this.f),b.length?a=b:_.D("No exact match for the channel count could be found."));b=new Zz(a[0]);for(const c of a)Uw(b.f,c)&&b.add(c);return b}};var Gz=class{constructor(a,b){this.a=rz;this.f=(new Map).set(rz,b).set(bz,a)}getState(){return this.a}},bz=0,rz=1;var kz=class{constructor(a){this.D=a;this.a=a.getConfiguration().streaming;this.g=new _.jo;this.f=new _.O("clpp.mse.media.LiveEdgeObserver");Xw(this)&&(a=this.D.getSurface().getMedia(),this.g.on(a,_.ue,()=>{{var b=this.D.getPosition();const c=this.D.getSeekRange().end;b=c-b;const d=this.D.getPlaybackRate(),e=this.a.stopChasingAt;1<=d&&b>=this.a.chaseJumpDistance?(this.f.debug("Too far from edge, jump to beginning."),this.D.setPlaybackRate(1),this.D.seek(c)):1===d&&b>=this.a.startChasingAt?(this.f.debug("Not on live edge, increase playback rate."),
|
|
216
|
+
this.D.setPlaybackRate(this.a.chasingRate)):1<d&&b<=e&&(this.f.debug("On live edge, reduce playback rate."),this.D.setPlaybackRate(1))}}))}release(){this.g.release()}};var Dz=class{constructor(a){this.g=a;this.a=null;this.f=()=>{}}release(){this.a=this.g=null;this.f=()=>{}}m(a){const b=this.a;{const c=this.g.periods;a=bv(c,a)||c[0]}b!=a&&this.f(a);this.a=a}};var jz=class{constructor(a){this.a=a;this.h=!1;this.g=this.a.Bd();this.f=new _.Yh(()=>{this.a.$f(.25*this.g)})}release(){this.f&&(this.f.stop(),this.f=null);this.a=null}set(a){this.g=a;Zw(this)}};var ix=class{constructor(a,b){this.g=a;this.j=ax(a);this.a=a.a.currentTime;this.h=Date.now()/1E3;this.m=b;this.f=()=>{}}release(){this.g=null;this.f=()=>{}}},jx=class{constructor(a){this.a=a}};var $z=class{constructor(a,b,c,d,e){this.a=a;this.C=b;this.j=c;this.B=e;this.g=new _.jo;this.A=!1;this.G=a.readyState;this.h=!1;this.f=d;this.m=this.F=this.w=!1;this.g.on(a,_.Pe,()=>bx(this));this.o=(new _.Yh(()=>{bx(this)})).Xa(.25)}release(){this.g&&(this.g.release(),this.g=null);null!=this.o&&(this.o.stop(),this.o=null);this.f&&(this.f.release(),this.f=null);this.a=this.C=this.B=null;this.m=!1}gd(){this.w=!0;bx(this)}};var bA=class{constructor(a,b,c,d){this.a=a;this.h=b;this.m=d;this.w=c;this.j=!1;this.f=new _.jo;this.g=new aA(a,10);this.o=!1;0<a.readyState?ex(this,c):fx(this,c)}release(){this.f&&(this.f.release(),this.f=null);null!=this.g&&(this.g.release(),this.g=null);this.h=()=>{};this.a=null;this.m=()=>{};this.o=!1}},aA=class{constructor(a,b){this.f=a;this.m=b;this.j=this.g=this.h=0;this.a=new _.Yh(()=>{0>=this.h?(_.D(["Failed to move playhead from",this.g,"to",this.j].join(" ")),this.a.stop()):this.f.currentTime!=
|
|
217
|
+
this.g?this.a.stop():(this.f.currentTime=this.j,this.h--)})}release(){this.a&&(this.a.stop(),this.a=null);this.f=null}};var Cz=class{constructor(a,b,c,d,e,f){this.h=a;this.a=b.presentationTimeline;this.B=b.minBufferTime||0;this.m=c;this.A=e;this.w=null;this.j=new $z(a,b.presentationTimeline,c,kx(this,a,c),f);this.g=new bA(a,()=>{a:{var g=this.j;g.A=!0;g.w=!1;g.h=!1;g=gx(this.g);const h=px(this,g);if(.001<Math.abs(h-g)){const k=(new Date).getTime()/1E3;if(!this.w||this.w<k-1){this.w=k;hx(this.g,h);g=void 0;break a}}this.f.debug("Seek to "+g);this.A();g=void 0}return g},nx(this,d),()=>{this.j.F=!0});this.o=(new _.Yh(()=>
|
|
218
|
+
{if(0!=this.h.readyState&&!this.h.paused){var g=gx(this.g),h=rv(this.a,0),k=qv(this.a);3>k-h&&(h=k-3);g<h&&(h=px(this,g),this.f.info("Jumping forward "+(h-g)+" seconds to catch up with the seek range."),this.h.currentTime=h)}})).Xa(.25);this.f=new _.O("clpp.mse.Playhead")}release(){this.g&&(this.g.release(),this.g=null);this.j&&(this.j.release(),this.j=null);this.o&&(this.o.stop(),this.o=null);this.h=this.g=this.a=this.m=null;this.A=()=>{}}};var sx=new _.lp(()=>new Uint8Array([0,0,0,80,115,105,110,102,0,0,0,12,102,114,109,97,0,0,0,0,0,0,0,20,115,99,104,109,0,0,0,0,99,101,110,99,0,1,0,0,0,0,0,40,115,99,104,105,0,0,0,32,116,101,110,99,0,0,0,0,0,0,1,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]));_.Hz=class{constructor(a,b){this.D=b;this.g=a;this.j=null;this.w=1;this.F=Promise.resolve();this.m=[];this.o=new Map;this.f=new Map;this.H=this.h=this.A=this.B=!1;this.G=0;this.a=new _.O("clpp.mse.Streaming");this.C=!1}destroy(){const a=this;return _.y(function*(){const b=[];for(const c of a.f.values())wx(c),b.push(xx(c));yield Promise.all(b);a.f.clear();a.o.clear();a.D=null;a.g=null;a.F=null;a.m=null;a.j=null;a.h=!0})}start(){const a=this;return _.y(function*(){const b=a.D.tb();var c=yx(a,b);c=a.D.Sd(a.g.periods[c]);
|
|
219
|
+
if(!c.variant&&!c.text)throw a.a.error("start(): No streams chosen"),new _.H(_.G,5,5005);a.C=!c.variant&&!!c.text;yield Dx(a,c.variant?c.variant.audio:null,c.variant?c.variant.video:null,c.text,b);a.h||(a.a.debug("init: completed initial Stream setup"),a.D&&a.D.ag&&(a.a.debug("init: calling onInitialStreamsSetup()..."),a.D.ag()))})}yb(a){const b=this;return _.y(function*(){if(!b.h){var c=ux(a);if(!a.Ta&&null!=a.nb&&!a.Tb)if(a.nb=null,a.Cb)b.a.debug(c,"skipping update and clearing the buffer"),yield Ox(b,
|
|
220
|
+
a,a.md,a.Vc);else{try{var d=by(b,a);null!=d&&(Cx(b,a,d),a.tc=!1)}catch(e){yield cy(b,e);return}d=Array.from(b.f.values());dy(b,a);b.B&&d.every(e=>e.endOfStream)&&(b.a.debug(c,"calling endOfStream()..."),b.D.X.endOfStream().then(()=>{if(!b.h){var e=b.D.X.getDuration();e<b.g.presentationTimeline.getDuration()&&(b.g.presentationTimeline.f=e)}}).then(()=>{b.D.Je()}))}}})}I(a,b,c,d){const e=ku(d.reader),f=ku(d.reader),g=_.N(d.reader),h=_.N(d.reader),k=_.N(d.reader),l=_.N(d.reader);d=_.Bj(d.reader,d.reader.Ba()-
|
|
221
|
+
d.reader.getPosition());a=a.startTime+b.startTime+h/g;c.includes(e)&&("urn:mpeg:dash:event:2012"==e?this.D.Ne():(c=new _.F("emsg",{detail:{startTime:a,endTime:a+k/g,schemeIdUri:e,value:f,timescale:g,presentationTimeDelta:h,eventDuration:k,id:l,messageData:d}}),this.D.onEvent(c)))}J(a){let b=!1,c=0;(new _.Lj).L(_.wd,_.Ej).L(_.ve,_.Ej).L(_.rd,_.Ej).L(_.vd,_.Ej).L(_.le,_.Ej).Z(_.ne,_.Fj).L("encv",d=>{d.reader.skip(78);_.Ej(d)}).L("pasp",d=>{c=d.start+d.headerSize;const e=_.N(d.reader),f=_.N(d.reader);
|
|
222
|
+
b=e!==f;this.a.debug(`hSpacing=${e}, vSpacing=${f}, updatePASP=${b}`);d.parser.stop()}).parse(a.data);b&&(a=new _.Nj(new DataView(a.data)),a.seek(c),_.M(a,1),_.M(a,1))}};_.Wx="iterateSegmentReference";var cA=class extends _.Vo{constructor(a){super(Vt);this.C=Ky;this.h=this.ra=this.R=null;this.Md=0;this.Ie=2;this.Sb=null;this.Jd=!1;this.m=new _.jo;this.ba=this.pc=this.$a=this.ab=this.w=this.H=this.j=null;this.Rb=!1;this.g=this.f=this.A=this.a=this.La=this.F=null;this.Ze=1E9;this.qc=new Set;this.N=!0;this.W=null;this.Se=!1;this.Re=0;this.T=null;this.K=new Yz;this.We={width:Infinity,height:Infinity};this.G=null;this.V=_.El;this.Ya=new gz(this.configuration.preferredAudioLanguage||[],this.configuration.preferredAudioRole,
|
|
223
|
+
this.configuration.preferredAudioChannelCount);this.aa=this.configuration.preferredTextLanguage;this.M=this.Za=null;this.Db=new Map;this.Y=null;this.ma=this.configuration.preferredTextRole;a&&a(this);this.Kd=null;this.m.on(window,"online",()=>{this.C===qy&&Sx(this.a)})}init(a,b){const c=a.getMedia();super.init(a,b);By(this,c)}namespace(){return Vt}Oe(){return new U}getState(){return this.V}getDrmInfo(){return this.j?this.j.getDrmInfo():null}unload(){Ew(this,!1);this.Rb=!1;if(this.o){const a=this.getTrackManager();
|
|
224
|
+
a&&a.release();return this.C===Fy?Promise.resolve():Jy(this).then(()=>{this.log.debug(_.Za,this.o);this.o=null;this.Md=0;this.M=this.Za=null})}return Promise.resolve()}release(){const a=this,b=()=>Object.getPrototypeOf(Object.getPrototypeOf(this)).release;return _.y(function*(){if(a.R)return a.R;a.R=new Promise((c,d)=>{try{const e=a.ra;a.ra=null;let f=e;e&&(f=e.catch(()=>{}));f?f=f.then(()=>b().call(a)):f=b().call(a);f=f.then(()=>a.unload());f.then(()=>{Ey(a,_.El);a.R=null;c()}).catch(g=>{a.R=null;
|
|
225
|
+
d(g)})}catch(e){a.R=null,d(e)}});return a.R})}getBufferInfo(a){if(this.H){var b=Sv(this.H);const c=new _.Ro(void 0,a);switch(a){case _.L:return b.video?b.video:c;case _.K:return b.audio?b.audio:c;case _.J:return b.text?b.text:c}return b.total?b.total:c}return this.Sb?(b=Yu(this.Sb),Ku(b,a)):super.getBufferInfo(a)}getPosition(){return this.w?ox(this.w):super.getPosition()}getPresentationStartTime(){return this.f?this.f.presentationTimeline.getPresentationStartTime():null}getDuration(){return this.f?
|
|
226
|
+
this.f.presentationTimeline.getDuration():Infinity}destroy(){const a=this,b=()=>Object.getPrototypeOf(Object.getPrototypeOf(this)).destroy;return _.y(function*(){yield b().call(a);a.C!==Fy&&(a.log.debug("Destroying player..."),a.C=Fy,yield Hy(a),a.m&&(a.m.release(),a.m=null),a.g=null)})}load(a){const b=this;return _.y(function*(){if(b.C===Fy)return Promise.reject(new _.H(_.G,7,7E3));const c=new _.Mk;var d=()=>{b.log.info("Aborting current load");throw new _.H(_.G,7,7E3);};b.ra=c;try{b.ra!==c&&d();
|
|
227
|
+
if(b.R){try{yield b.R}catch(h){}b.ra!==c&&d()}b.G=new _.kp;b.Kd=Date.now()/1E3;Ey(b,_.Fl);b.o=_.Kl(a);_.cj(a)&&(b.configuration=_.bj(b.kc,a));b.log.info(_.Ia,b.configuration);b.log.info(_.Va,b.o);const e=b.getTrackManager();e&&e.load();const f=b.getSurface().getMedia();f.loop=!!b.configuration.loop;_.C(b.configuration.volume)||b.setVolume(b.configuration.volume);_.C(b.configuration.muted)||b.setMuted(b.configuration.muted);Sy(b);const g=b.o[b.getSourceIndex()];b.ra!==c&&d();yield By(b,f);b.ra!==c&&
|
|
228
|
+
d();yield Iy(b,f);b.ra!==c&&d();yield Ty(b,g);b.ra!==c&&d();yield Xy(b,g);b.ra!==c&&d();yield az(b);b.ra!==c&&d();yield oz(b);b.ra!==c&&d();c.resolve()}catch(e){throw d=e,b.ra!==c&&(d=new _.H(_.G,7,7E3)),c.reject(d),b.onError(d),d;}})}detach(){const a=this;return _.y(function*(){yield Gy(a);return Hy(a)})}isLive(){var a;this.f?(a=this.f.presentationTimeline.isLive())||(a=this.f.presentationTimeline,a=Infinity!=a.f&&!a.m):a=!1;return a}bf(){this.log.debug("User seeking finished");this.F&&cz(this);
|
|
229
|
+
dz(this)}getSeekRange(){if(this.f){const a=this.f.presentationTimeline;return{start:rv(a,0),end:qv(a)}}return{start:0,end:0}}getPlaybackRate(){if(this.$a){var a=this.$a;a=a.h?0:a.g}else a=0;return a}setPlaybackRate(a){if(0===a)this.log.warn("A trick play rate of 0 is unsupported!");else if(this.C===qy){this.$a.set(a);this.g.playbackRateChanged(a);var b=this.a,c=1<Math.abs(a);if(a=b.f.get(_.w)){var d=a.stream;if(d)if(b.a.debug("setTrickPlay",c),c)(c=d.trickModeVideo)&&!a.Nb&&(b.a.debug("Engaging trick mode stream",
|
|
230
|
+
c),_.Px(b,c,!1,0),a.Nb=d);else if(d=a.Nb)b.a.debug("Restoring non-trick-mode stream",d),a.Nb=null,_.Px(b,d,!0,0)}}}ja(){if(this.f&&this.w){var a=ry(this);if(null==a)a=null;else{if(!Qw(this.K,a).text){var b=_.sw(a.textStreams,this.aa,this.ma);b.length&&Rw(this.K,a,b[0])}a=Qw(this.K,a).text}b=[];for(const c of Jz(this)){const d=pw(c);d.active=c==a;b.push(d)}return b}return[]}getPeriods(){return this.f.periods}getStats(){if(this.C!==qy)return _.rl();dz(this);var a=this.h;if(a.getVideoPlaybackQuality){var b=
|
|
231
|
+
a.getVideoPlaybackQuality();a=this.G;var c=Number(b.totalVideoFrames);a.j=Number(b.droppedVideoFrames);a.h=c}if(this.C===qy){if(b=wy(this))this.G.m=b.bandwidth;b&&b.video&&(a=this.G,c=b.video.height||NaN,a.o=b.video.width||NaN,a.g=c);a=this.g.getBandwidthEstimate();this.G.f=a}return this.G.getStats()}getTimelineCues(){return this.La?[...this.La.cues()].map(a=>({schemeIdUri:a.schemeIdUri,value:a.value,startTime:a.startTime,endTime:a.endTime,id:a.id,eventElement:a.eventElement,type:a.type})):[]}resetAbr(){this.g&&
|
|
232
|
+
this.g.reset()}addTextTrack(a,b,c,d,e,f){const g=this;return _.y(function*(){if(g.C!==qy)throw g.log.error("Must call load() and wait for it to resolve before adding text tracks."),Error("State error!");const h=ry(g);var k=g.f.periods.indexOf(h)+1;const l=(k>=g.f.periods.length?g.f.presentationTimeline.getDuration():g.f.periods[k].startTime)-h.startTime;if(Infinity==l)throw new _.H(1,4,4040);const m=new _.wv(1,0,l,()=>[a],0,null,0);k={id:g.Ze++,originalId:null,createSegmentIndex:Promise.resolve.bind(Promise),
|
|
233
|
+
findSegmentPosition:()=>1,getSegmentReference:q=>1==q?m:null,adjustSegmentDurations:()=>{},getDuration:()=>l,segmentLookupStrategy:_.Xt,initSegmentReference:null,mimeType:d,codecs:e||"",kind:c,encrypted:!1,keyId:null,language:b,label:f||null,type:_.v,primary:!1,trickModeVideo:null,emsgSchemeIdUris:null,roles:[],channelsCount:null,closedCaptions:null};g.qc.add(k);h.textStreams.push(k);yield Ix(g.a,k);const n=_.Fx(g.a,_.v);n&&Rw(g.K,h,n);g.qc.delete(k);g.log.debug("Choosing new streams after adding a text stream");
|
|
234
|
+
Ry(g,h);Zy(g);return pw(k)})}vg(a){this.log.debug(_.Zt,a);try{this.log.debug("onChooseStreams_, choosing variant from ",a.variants);this.log.debug("onChooseStreams_, choosing text from ",a.textStreams);const b=Kz(this,a);this.log.debug("onChooseStreams_, chose variant ",b.variant);this.log.debug("onChooseStreams_, chose text ",b.text);return b}catch(b){return this.onError(b),{variant:null,text:null}}}ug(){this.log.debug("canSwitch_");this.N=!1;this.configuration.abr.enabled&&this.g.enable();this.W&&
|
|
235
|
+
(Qx(this.a,this.W,this.Se,this.Re),this.W=null);this.T&&(_.Px(this.a,this.T,!0,0),this.T=null)}wg(){this.A&&this.A.update&&this.A.update()}ff(){this.w&&this.w.j.gd()}tg(a,b,c){if((void 0===c?"":c)===Yt)return Zy(this),this.la()||(this.configuration.abr.enabled=!0,this.g.enable()),Ry(this,b,!1),!0;if(c=b.variants.some(d=>{let e=!1;const f=d[a.type];f&&(e=d.allowedByApplication&&f.id!==a.id,a.type===_.p&&(e=e&&f.language===a.language));return e})&&this.la()){for(const d of b.variants){const e=d[a.type];
|
|
236
|
+
e&&e.id===a.id&&(d.allowedByApplication=!1)}Zy(this);this.la()||(this.configuration.abr.enabled=!0,this.g.enable());Ry(this,b)}return c}ef(){this.log.debug("endOfStream called by streaming engine");this.Rb=!0}onError(a){if(this.C!==Fy&&7001!==a.code&&7E3!==a.code){var b=new _.F(_.Yc,{detail:a});a.severity===_.G&&Ey(this,_.Dl);this.trigger(b);b.defaultPrevented&&(b.a=!0)}}Ld(a){a.type===_.Sc?this.dispatchEvent(a):"largegap"!==a.type&&(a.type===_.Qe?Ly(this):"emsg"!==a.type&&(a instanceof _.F?this.dispatchEvent(a):
|
|
237
|
+
this.log.debug(_.mb,a.type)))}la(){return this.configuration.abr.enabled}hf(a){const b=this;return _.y(function*(){if(b.ga){b.log.info("Attempt to switch CDN.");var c=b.getLoadedSource(),d=b.la();if(c=yield b.ga(c.url,a)){c=_.jf(b.getLoadedSource(),{url:c});d&&b.g.disable();yield Tx(b.a);var e=wy(b);do{var f=!1;try{b.log.info(`Switching CDN to ${c.url}.`),yield Lz(b,c,e)}catch(g){if(b.log.info("Switch failed"),f=yield b.ga(c.url,a))c.url=f,f=!0;else throw g;}}while(f);d&&b.g.enable();Sx(b.a,!0);b.o[b.getSourceIndex()]=
|
|
238
|
+
c;a.f=!0;b.trigger(new _.F(_.qc,{newManifest:c.url}))}}})}};cA.prototype.detach=cA.prototype.detach;var Fy=0,Ky=1,qy=2,Yy=[_.Kd,_.dd];
|
|
239
|
+
_.Kf(new class{a(){return Vt}canPlay(a,b){if(_.ki())return 0;const c=a.type||"",d=(window.ManagedMediaSource?!0:!1)||(window.MediaSource&&MediaSource.isTypeSupported?!0:!1);a=window.ManagedMediaSource||window.MediaSource&&MediaSource.isTypeSupported?c in _.xn||_.yn(a.url)in _.zn?!0:!1:!1;if(d&&a){if(_.bi(2))return 1;if(_.li()&&c===_.Ui){if(b.streaming.preferNativeHlsOnSafari)return 1;_.D("Support for MSE + FairPlay on Apple is experimental. In case of issues, consider using native HLS.")}return 2}return 0}create(){return new cA}});_.pm(function(){_.Gf("MediaSource.install");if(window.MediaSource)if(window.cast&&cast.__platform__&&cast.__platform__.canDisplayType)_.Bf("Patching Chromecast MSE bugs."),Mz();else if(_.li()){var a=navigator.appVersion;a=0<=a.indexOf("Version")?parseInt(a.match(/Version\/(\d+)/)[1],10):13;Nz();10>=a?(_.Bf("Blacklisting MSE on Safari \x3c\x3d 10."),window.MediaSource=null):12>=a?(_.Bf("Patching Safari 11 \x26 12 MSE bugs."),Oz(),Pz()):(_.Bf("Patching Safari 13 MSE bugs."),Oz())}else _.bi(2)||_.bi(3)||
|
|
240
|
+
_.bi(4)?Qz():_.Bf("Using native MSE as-is.");else _.Bf("No MSE implementation available.")});var dA=class extends _.Zp{constructor(a){super(a);a=a.getSurface().getMedia();this.a=null;for(let b=0;b<a.textTracks.length;++b){const c=a.textTracks[b];c.mode=_.Nc;c.label===Nt&&(this.a=c)}this.a||(this.a=a.addTextTrack(_.fu,Nt));this.a.mode=_.bd}append(a){const b=[],c=d=>{if(d.startTime>=d.endTime)_.D("Invalid cue times: "+d.startTime+" - "+d.endTime),d=null;else{var e=d.payload||"";e=e.replace(/<br\s*\/?>/igm,"\n");e=_.Rg(e);e=new VTTCue(d.startTime,d.endTime,e);e.line=-1;try{e.align=_.sc}catch(f){e.align=
|
|
241
|
+
"middle"}d.writingMode===_.Ee?e.vertical="lr":d.writingMode===_.Fe&&(e.vertical="rl");d=e}d&&b.push(d)};for(const d of a)c(d);a=b.slice().sort((d,e)=>d.startTime!==e.startTime?d.startTime-e.startTime:d.endTime!==e.endTime?d.endTime-e.startTime:b.indexOf(e)-b.indexOf(d));for(const d of a)this.a.addCue(d)}remove(a,b){if(!this.a)return!1;Rz(this.a,c=>c.startTime<b&&c.endTime>a);return!0}isTextVisible(){return this.a.mode==_.fe}setTextVisibility(a){null!==this.a&&(this.a.mode=a?_.fe:_.bd)}destroy(){this.a&&
|
|
242
|
+
Rz(this.a,()=>!0);this.a=null;return Promise.resolve()}};_.ll("single-native",new class{ea(){return!0}create(a){return new dA(a)}});};f.call(g, window);
|