@castlabs/prestoplay 6.22.0 → 6.23.1
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 +18 -0
- package/cjs/cl.adobe.js +3 -3
- package/cjs/cl.airplay.js +3 -3
- package/cjs/cl.broadpeak.js +7 -7
- package/cjs/cl.cast.js +116 -116
- package/cjs/cl.conviva.js +32 -33
- package/cjs/cl.core.js +592 -590
- package/cjs/cl.crypto.js +9 -9
- package/cjs/cl.dash.js +86 -80
- package/cjs/cl.externs.js +43 -36
- package/cjs/cl.freewheel.js +24 -24
- package/cjs/cl.hls.js +71 -70
- package/cjs/cl.hlssmpte.js +6 -6
- package/cjs/cl.htmlcue.js +30 -29
- package/cjs/cl.ima.js +23 -23
- package/cjs/cl.mse.js +342 -328
- package/cjs/cl.muxdata.js +15 -15
- package/cjs/cl.onboard.js +3 -3
- package/cjs/cl.persistent.js +14 -14
- package/cjs/cl.playlist.js +6 -6
- package/cjs/cl.sessions.js +16 -16
- package/cjs/cl.simid.js +15 -15
- package/cjs/cl.smooth.js +72 -72
- package/cjs/cl.thumbnails.js +26 -26
- package/cjs/cl.tizen.js +72 -72
- package/cjs/cl.ttml.js +29 -29
- package/cjs/cl.verimatrix.js +5 -5
- package/cjs/cl.vimond.js +12 -13
- package/cjs/cl.vr.js +19 -19
- package/cjs/cl.vtt.js +14 -14
- package/cjs/cl.yospace.js +4 -4
- package/cjs/cl.youbora.js +37 -37
- package/cl.adobe.js +3 -3
- package/cl.airplay.js +3 -3
- package/cl.broadpeak.js +5 -5
- package/cl.cast.js +86 -86
- package/cl.conviva.js +27 -27
- package/cl.core.js +474 -472
- package/cl.crypto.js +9 -9
- package/cl.dash.js +80 -75
- package/cl.externs.js +43 -36
- package/cl.freewheel.js +19 -19
- package/cl.hls.js +74 -74
- package/cl.hlssmpte.js +5 -5
- package/cl.htmlcue.js +26 -26
- package/cl.ima.js +16 -16
- package/cl.mse.js +303 -290
- package/cl.muxdata.js +13 -13
- package/cl.onboard.js +4 -4
- package/cl.persistent.js +10 -10
- package/cl.playlist.js +5 -5
- package/cl.sessions.js +10 -10
- package/cl.simid.js +13 -13
- package/cl.smooth.js +59 -59
- package/cl.thumbnails.js +19 -19
- 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.yospace.js +3 -3
- package/cl.youbora.js +27 -26
- package/package.json +1 -1
- package/typings.d.ts +53 -6
package/cl.smooth.js
CHANGED
|
@@ -1,59 +1,59 @@
|
|
|
1
|
-
import {clpp} from "./cl.core.js";import './cl.mse.js';let g={};const _ = clpp._;var f=function(window){'use strict';var
|
|
2
|
-
b,a.h),a.a+=2}catch(c){_.
|
|
3
|
-
String(d.bitrate)).replace("{start time}",String(c.t)).replace("{start_time}",String(c.t));return _.
|
|
4
|
-
sampleSize:NaN,channelCount:NaN};switch(c.type){case _.w:a.
|
|
5
|
-
Number(a[2]);let f=Number(a[3]),g=Number(a[4]);g+=(Number(a[5])||0)/c.f;f+=g/c.frameRate;d=f+60*e+3600*d}}else
|
|
6
|
-
0;for(let c=0;c<a.a.length;c++)b+=a.a[c].a();return new _.
|
|
7
|
-
|
|
8
|
-
(a=(new
|
|
9
|
-
|
|
10
|
-
0<l-k.reader.getPosition()&&k.flags&32&&(m.
|
|
11
|
-
2048&&(0===k.version?m.
|
|
12
|
-
u.
|
|
13
|
-
g;d=g.get(_.
|
|
14
|
-
A;y++){b:{var k=h;var l=g[y],m=new RegExp("\\w+:"+l),n=0;if(k.hasAttribute(l)){k=k.getAttribute(l);break b}l=k.attributes;const D=l.length;for(;n<D;n++){var q=l[n].name;if(q=q.match(m)){k=k.getAttribute(q[0]);break b}}k=null}h.setAttribute(g[y],
|
|
15
|
-
m,f]);n&&b.append([n]);if(e){g=0;k=[];if(c.flags&2)for(k=[],m=0;m<c.
|
|
16
|
-
periodId:null}},
|
|
17
|
-
c.type=1;c=yield a.D.networkingEngine.fetch(c).
|
|
18
|
-
|
|
19
|
-
const
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
a.getPosition()}},
|
|
44
|
-
for(var b=0;b<this.
|
|
45
|
-
_.
|
|
46
|
-
a.getPosition()}},
|
|
47
|
-
_.O(a,this.entries.length);for(let b=0;b<this.entries.length;b++)this.entries[b].write(a);a.getPosition()}},
|
|
48
|
-
return a+super.a()}write(a){super.write(a);_.O(a,this.entries.length);for(let b=0;b<this.entries.length;b++)this.entries[b].write(a);a.getPosition()}},
|
|
49
|
-
|
|
50
|
-
b);this.
|
|
51
|
-
this.flags&
|
|
52
|
-
|
|
53
|
-
return a+super.a()}write(a){super.write(a);
|
|
54
|
-
class extends
|
|
55
|
-
b,c){super("saiz",0,0);this.
|
|
56
|
-
2,a+=4}return a+super.a()}write(a){super.write(a);_.O(a,this.
|
|
57
|
-
this.
|
|
58
|
-
0;c<this.
|
|
59
|
-
`segment reference time ${a.request.startTime}`);f=
|
|
1
|
+
import {clpp} from "./cl.core.js";import './cl.mse.js';let g={};const _ = clpp._;var f=function(window){'use strict';var QQ="Full MP4 box must have flags defined",RQ="clpp.smooth.SmoothMP4Processor",SQ="codecPrivateData",TQ=function(a,b){const c=Math.floor(b/Math.pow(2,32));b-=c*Math.pow(2,32);_.O(a,c);_.O(a,b)},UQ=function(a,b){try{a.f.setUint8(a.a,b),a.a+=1}catch(c){_.bm()}},VQ=function(a,b){UQ(a,b>>16&255);UQ(a,b>>8&255);UQ(a,b&255)},WQ=function(a,b){try{a.f.setUint16(a.a,b,a.h),a.a+=2}catch(c){_.bm()}},XQ=function(a,b){try{a.f.setInt32(a.a,b,a.h),a.a+=4}catch(c){_.bm()}},YQ=function(a,b){try{a.f.setInt16(a.a,
|
|
2
|
+
b,a.h),a.a+=2}catch(c){_.bm()}},ZQ=function(a,b){if(void 0!==b){var c=new Uint8Array(b);const d=Math.min(a.length,b);let e=0;for(;e<d;++e)c[e]=a.charCodeAt(e);for(;e<b;e++)c[e]=0;return c}b=new Uint8Array(a.length);for(c=0;c<a.length;++c)b[c]=a.charCodeAt(c);return b},$Q=function(a){const b=a.split("/");return b[b.length-1].toLowerCase().match("manifest(\\(.+\\))?")?a:`${a}/Manifest`},aR=function(a,b,c,d){c=b.Hf[c];b=b.li;a=a.replace("Manifest","");b=b.replace("{bitrate}",String(d.bitrate)).replace("{Bitrate}",
|
|
3
|
+
String(d.bitrate)).replace("{start time}",String(c.t)).replace("{start_time}",String(c.t));return _.MC([a],[b])[0]},bR=function(a,b){if(a.type!==b.type)return!1;let c=[];a.type===_.w?c=["maxWidth","maxHeight","bitrate",SQ,"fourCC"]:a.type===_.p&&(c=["bitrate",SQ,"channels","bitsPerSample","samplingRate","fourCC"]);return _.hh(a,b,c,["id","segmentIndex"])},cR=function(a,b,c){const d=c.Bd.split("00000001");a={id:1,type:c.type,duration:a/b,timescale:b,Za:null,ac:null,width:NaN,height:NaN,Zb:null,pd:NaN,
|
|
4
|
+
sampleSize:NaN,channelCount:NaN};switch(c.type){case _.w:a.Za=[_.hj(d[1])];a.ac=[_.hj(d[2])];a.width=c.maxWidth;a.height=c.maxHeight;break;case _.p:a.Zb=_.hj(c.Bd),a.sampleSize=c.Kg||16,a.pd=c.pd,a.channelCount=c.yf}return a},dR=function(a,b){return a.filter(c=>c.type===b)},eR=function(a,b){a=a.exec(b);return null==a||""===a[0]?null:(Number(a[4])||0)/1E3+(Number(a[3])||0)+60*(Number(a[2])||0)+3600*(Number(a[1])||0)},lR=function(a,b,c){var d=null;if(fR.test(a)){{a=fR.exec(a);d=Number(a[1]);const e=
|
|
5
|
+
Number(a[2]);let f=Number(a[3]),g=Number(a[4]);g+=(Number(a[5])||0)/c.f;f+=g/c.frameRate;d=f+60*e+3600*d}}else gR.test(a)?d=eR(gR,a):hR.test(a)?d=eR(hR,a):iR.test(a)?(a=iR.exec(a),d=Number(a[1])/c.frameRate):jR.test(a)?(a=jR.exec(a),d=Number(a[1])/c.a):kR.test(a)&&(d=eR(kR,a));c=d;d=c+b;b=Math.floor(d/3600);c=Math.floor((d-3600*b)/60);a=Math.floor(d-3600*b-60*c);d-=a;10>b&&(b="0"+b);10>c&&(c="0"+c);10>a&&(a="0"+a);0===d?d="000":d=Math.round(1E3*d);return b+":"+c+":"+a+"."+d},mR=function(a){let b=
|
|
6
|
+
0;for(let c=0;c<a.a.length;c++)b+=a.a[c].a();return new _.zm(b)},tR=function(a,b,c){a:{var d=[_.Cd,_.Ad];for(e of d)if((d=c.Gd(e))&&d.keyId){var e=d.keyId;break a}_.C(RQ,"Could not get default Key ID for DRM init data!");e=null}c=new nR("xxxx");a.type===_.w?c=new oR(a.width,a.height):c=new pR(a.channelCount,a.sampleSize,a.pd);a=new qR;a.f=1;a.h=8;a.l=e||"00000000000000000000000000000000";a=(new nR("schi")).append([a]);b=(new nR(_.Of)).append([new rR(b),new sR(_.dd,65536),a]);c.append([b]);return c},
|
|
7
|
+
WR=function(a,b){var c=b.Ld(),d=new uR(a.timescale,a.duration,a.id),e=(new vR).append([new wR(a.id)]),f=new xR(a.id,a.duration,a.timescale,a.width,a.height),g=new yR(a.timescale,a.duration);const h=new zR(a.type);var k=null,l=new AR;l.entries=[new BR];var m=new CR;switch(a.type){case _.w:k=new DR(a.Za,a.ac);c?(a=tR(a,"avc1",b),a.append([k]),m.entries=[a]):(a=(new ER(a.width,a.height)).append([k]),m.entries=[a]);k=new FR;break;case _.p:k=new GR(a.Zb),c?(a=tR(a,"mp4a",b),a.append([k]),m.entries=[a]):
|
|
8
|
+
(a=(new HR(a.channelCount,a.sampleSize,a.pd)).append([k]),m.entries=[a]),k=new IR}m=(new JR).append([m,new KR,new LR,new MR,new NR]);l=(new OR).append([l]);l=(new PR).append([k,l,m]);g=(new QR).append([g,h,l]);f=(new RR).append([f,g]);d=(new SR).append([d,f,e]);e=new TR("dash",0,["iso6","mp41","avc1"]);c&&(c=b.Gd(_.Ad),b=b.Gd(_.Cd),c&&d.append([new UR("pssh",c.initData,8)]),b&&d.append([new UR("pssh",b.initData,8)]),c||b||_.C(RQ,"Could not get PSSH init data!"));b=new VR([e,d]);return _.K(b.write())},
|
|
9
|
+
gS=function(a,b){let c,d,e,f,g,h;(new _.um).N("moof",_.nm).ca("mfhd",k=>{{const l=new YR;l.f=_.P(k.reader);c=l}}).N("traf",_.nm).ca("tfhd",k=>{{const l=k.reader.Pa();if(null===k.flags)throw new _.H(_.F,3,3019,QQ);const m=new ZR(k.version||0,k.flags||0);m.f=_.P(k.reader);0<l-k.reader.getPosition()&&k.flags&1&&(m.h=_.im(k.reader));0<l-k.reader.getPosition()&&k.flags&2&&(m.A=_.P(k.reader));0<l-k.reader.getPosition()&&k.flags&8&&(m.j=_.P(k.reader));0<l-k.reader.getPosition()&&k.flags&16&&(m.o=_.P(k.reader));
|
|
10
|
+
0<l-k.reader.getPosition()&&k.flags&32&&(m.l=_.P(k.reader));d=m}}).ca("trun",k=>{{var l=k.reader.Pa();if(null===k.flags)throw new _.H(_.F,3,3019,QQ);const m=new $R(k.version||0,k.flags||0);m.f=_.P(k.reader);0<l-k.reader.getPosition()&&k.flags&1&&(m.j=_.hm(k.reader));0<l-k.reader.getPosition()&&k.flags&4&&(m.l=_.P(k.reader));if(0<l-k.reader.getPosition())for(l=0;l<m.f;l++)k.flags&256&&m.o.push(_.P(k.reader)),k.flags&512&&m.sampleSize.push(_.P(k.reader)),k.flags&1024&&m.A.push(_.P(k.reader)),k.flags&
|
|
11
|
+
2048&&(0===k.version?m.h.push(_.P(k.reader)):m.h.push(_.hm(k.reader)));e=m}}).ca("sdtp",k=>{{const l=_.km(k.reader,k.reader.Pa());f=new aS("sdtp",k.version||0,k.flags||0,l,0)}}).N("uuid",k=>{var l=_.km(k.reader,16);if(_.jj(l,bS)){l=_.P(k.reader);k.version=l>>>24;k.flags=l&16777215;l=new cS(k.version,k.flags);l.h=_.P(k.reader);k.flags&1&&(l.j=_.fm(k.reader));for(let m=0;m<l.h;m++){const n={Tf:_.km(k.reader,8),Oc:0,Ye:[]};if(k.flags&2){n.Oc=_.gm(k.reader);for(let q=0;q<n.Oc;q++){const u={vf:0,wf:0};
|
|
12
|
+
u.vf=_.gm(k.reader);u.wf=_.P(k.reader);n.Ye.push(u)}}l.f.push(n)}g=l}}).N(_.Ae,k=>{{const l=new dS;0<k.reader.Pa()?l.f=_.km(k.reader,k.reader.Pa()):(_.C(RQ,"mdat box is empty!"),l.f=new Uint8Array(0));h=l}}).parse(a,!1);if(!h)return null;a=(new eS).append([d,e]);f&&a.append([f]);b.Ld()&&g&&a.append([g]);b=(new fS).append([c,a]);return new VR([b,h])},lS=function(a,b,c,d){var e=d.Ld(),f=parseInt(c*b,10);b=a.data||new ArrayBuffer(0);var g=gS(b,d);if(null===g)return a.request.contentType===_.G?a.data:
|
|
13
|
+
g;d=g.get(_.Ae);if(a.request.contentType===_.G){e=d.f.buffer;if(c){e=_.Ui(e);if((e=(new DOMParser).parseFromString(e,_.ag))&&"tt"===e.documentElement.tagName.toLowerCase())var h=e.documentElement;if(h&&(d=new hS(h.getAttribute("ttp:frameRate"),h.getAttribute("ttp:subFrameRate"),h.getAttribute("ttp:frameRateMultiplier"),h.getAttribute("ttp:tickRate")),h=h.getElementsByTagName("body")[0])){f=h.getElementsByTagName("p");for(let u=0,v=f.length;u<v;u++){h=f[u];a=c;b=d;g=["begin",_.ae];for(let y=0,A=g.length;y<
|
|
14
|
+
A;y++){b:{var k=h;var l=g[y],m=new RegExp("\\w+:"+l),n=0;if(k.hasAttribute(l)){k=k.getAttribute(l);break b}l=k.attributes;const D=l.length;for(;n<D;n++){var q=l[n].name;if(q=q.match(m)){k=k.getAttribute(q[0]);break b}}k=null}h.setAttribute(g[y],lR(k||"",a,b))}}}e=(new XMLSerializer).serializeToString(e);c=_.Vi(e).buffer}else c=e;return c}h=new fS;a=g.get("mfhd");b=new eS;k=g.get("tfhd");m=new iS(1,f);f=g.get("trun");n=g.get("sdtp");c=g.get("senc");k.f=1;k.flags&=16777214;k.flags|=131072;b.append([k,
|
|
15
|
+
m,f]);n&&b.append([n]);if(e){g=0;k=[];if(c.flags&2)for(k=[],m=0;m<c.h;m++)k.push(10+6*c.f[m].Oc);else g=8;b.append([c,new jS,new kS(g,k,c.h)])}h.append([a,b]);f.flags|=1;f.j=h.a()+8;d=new VR([h,d]);h=d.write();e&&(e=d.get("saio"),d=d.f,e.offset[0]=c.start+16,d.seek(e.start),e.write(d),h=d.buffer);return h},mS=function(a,b,c){return{keySystem:a,licenseServerUri:"",distinctiveIdentifierRequired:!1,persistentStateRequired:!1,audioRobustness:"",videoRobustness:"",serverCertificate:null,initData:[b],keyIds:c,
|
|
16
|
+
periodId:null}},nS=function(a){return{initData:_.AC(_.qn(a)),initDataType:_.dd,keyId:a,periodId:null}},oS=function(a,b,c){a=_.zn(a);c&&a.version!==c&&(a=_.CC(a,c));return{initData:_.AC(a),initDataType:_.dd,keyId:b,periodId:null}},pS=function(a,b){return _.x(function*(){var c=_.xj(b);c.timeout=a.f.attemptParameters.timeout;c.maxAttempts=Math.max(a.f.attemptParameters.maxAttempts,b.length);c.baseDelay=a.f.attemptParameters.baseDelay;c.backoffFactor=a.f.attemptParameters.backoffFactor;c.fuzzFactor=a.f.attemptParameters.fuzzFactor;
|
|
17
|
+
c.type=1;c=yield a.D.networkingEngine.fetch(c).U;a.o=c.uri;return c})},xS=function(a,b){const c=_.un;let d=null;try{const hb=_.Ui(b);d=c.j(hb,_.Gb)}catch(hb){}if(!d)throw a.g.error("Unable to parse manifest"),new _.H(_.F,4,4033,a.o);const e=+qS(a,d,"MajorVersion"),f=+qS(a,d,"MinorVersion"),g=+d.getAttribute("TimeScale")||1E7;let h=+qS(a,d,"Duration");const k="TRUE"===d.getAttribute("IsLive"),l=+d.getAttribute("LookAheadCount"),m=+d.getAttribute("DVRWindowLength")||Infinity,n=c.a(d,"Protection")[0];
|
|
18
|
+
if(!1===/^[2].[0-2]$/.test(""+e+"."+f))throw a.g.error("Smooth Streaming version must be 2.0, 2.1 or 2.2"),new _.H(_.F,4,4036,a.o);k?(rS(a,sS),a.B=typeof a.f.liveRefreshPeriod===_.t?1E3*a.f.liveRefreshPeriod:Math.min(1E3*a.I,1E4),h=Infinity):rS(a,tS);a.a={startTime:0,delay:0,duration:h/g,oe:m/g,jd:0};if(n){{var q=a.f.playreadyVersion;const hb=_.un,Ya=[],Lb=hb.a(n,"ProtectionHeader")[0],vc=_.gj(hb.f(Lb)||""),dc=_.zn(vc).a;Ya.push(mS(_.Cd,nS(dc),[dc]));Ya.push(mS(_.Ad,oS(vc,dc,q),[dc]));var u=Ya}a.w=
|
|
19
|
+
u}{const hb=[],Ya=_.un.a(d,"StreamIndex");if(!Ya.length)throw a.g.error("No streams found!"),new _.H(_.F,4,4034,a.o);for(let Lb=0;Lb<Ya.length;Lb++){{var v=a,y=Ya[Lb];const vc=qS(v,y,"Type"),dc=+y.getAttribute("Chunks"),Nh=y.getAttribute("Subtype")||"",te=y.getAttribute("Language")||_.fg,ue=_.Di(te),Oh=y.getAttribute("Name")||"",pf=+y.getAttribute(_.eb),rg=+y.getAttribute(_.db),os=qS(v,y,"Url"),vm=+y.getAttribute("TimeScale")||null;{const bd=[],uj=_.un.a(y,_.yb);for(let ve=0;ve<uj.length;ve++){{let cd,
|
|
20
|
+
Ma,Ud;var A=v,D=uj[ve],I=vc;const vj=+D.getAttribute("Index"),sg=+qS(A,D,"Bitrate");let wc=NaN,tg=NaN,wm=NaN,ps=NaN,VF=NaN,WF=NaN,XF=NaN;const YF=D.getAttribute("FourCC")||"";switch(I){case _.w:wc=+qS(A,D,_.db);tg=+qS(A,D,_.eb);break;case _.p:ps=+D.getAttribute("Channels")||2,wm=+qS(A,D,"SamplingRate"),WF=+qS(A,D,"AudioTag"),VF=+qS(A,D,"BitsPerSample"),XF=+qS(A,D,"PacketSize")}let qs=String(D.getAttribute("CodecPrivateData"));if(I===_.p&&!qs){{var X=ps;const ZF={96E3:0,88200:1,64E3:2,48E3:3,44100:4,
|
|
21
|
+
32E3:5,24E3:6,22050:7,16E3:8,12E3:9,11025:10,8E3:11,7350:12},xm=ZF[wm];if("AACH"===YF){Ma=new Uint8Array(4);const $F=ZF[2*wm];Ma[0]=40|xm>>1;Ma[1]=xm<<7|X<<3|$F>>1;Ma[2]=$F<<7|8;Ma[3]=0;cd=new Uint16Array(2);cd[0]=(Ma[0]<<8)+Ma[1];cd[1]=(Ma[2]<<8)+Ma[3];Ud=cd[0].toString(16)+cd[1].toString(16)}else Ma=new Uint8Array(2),Ma[0]=16|xm>>1,Ma[1]=xm<<7|X<<3,cd=new Uint16Array(1),cd[0]=(Ma[0]<<8)+Ma[1],Ud=cd[0].toString(16);qs=Ud.toUpperCase()}}var sb={id:A.V++,type:I,index:vj,bitrate:sg,Bd:qs,maxHeight:wc,
|
|
22
|
+
maxWidth:tg,pd:wm,yf:ps,ri:WF,Kg:VF,Gi:XF,ah:YF,segmentIndex:null}}bd.push(sb)}var bc=bd}{const bd=[],uj=_.un.a(y,"c");for(let ve=0;ve<uj.length;ve++){const cd=uj[ve];let Ma=parseInt(cd.getAttribute("t"),10),Ud=parseInt(cd.getAttribute("d"),10),vj=parseInt(cd.getAttribute("r"),10),sg=0;if(isNaN(Ma)&&isNaN(Ud))throw v.g.error("Either one or both FragmentDuration and FragmentTime field MUST be present in StreamFragmentElement"),new _.H(_.F,4,4037,v.o);0===ve&&isNaN(Ma)&&(sg=Ma=0);if(0<ve){const wc=
|
|
23
|
+
bd[bd.length-1];sg=wc.n+1;wc.d||(wc.d=Ma-wc.t);Ma||(Ma=wc.t+wc.d);Ud||(Ud=Ma-wc.t)}bd.push({n:sg,d:Ud,t:Ma});if(vj){vj--;for(let wc=0;wc<vj;wc++){const tg=bd[bd.length-1];sg=tg.n+1;Ma=tg.t+tg.d;Ud=tg.d;bd.push({n:sg,d:Ud,t:Ma})}}}v.F()||bd.length===dc||v.g.warn("Number of fragments ("+dc+") differs from number of chunks ("+bd.length+").");var xd=bd}var og={type:vc,xi:dc,bi:Nh,language:ue,hd:te,name:Oh,maxWidth:pf,maxHeight:rg,li:os,tracks:bc,Hf:xd,timescale:vm}}hb.push(og)}var Db=hb}const Kb={Fi:e,
|
|
24
|
+
Zf:f,timescale:g,duration:h,isLive:k,Ei:l,oe:m,ue:!1,streams:Db};if(a.j&&a.A)return uS(a,Kb),Promise.resolve();a.H.clear();{const hb=Kb.timescale,Ya=Kb.duration,Lb=dR(Kb.streams,_.p),vc=dR(Kb.streams,_.w),dc=dR(Kb.streams,_.G),Nh=[];let te=vS(a,Ya,hb,Lb),ue=vS(a,Ya,hb,vc);const Oh=vS(a,Ya,hb,dc);te.length||(te=[null]);ue.length||(ue=[null]);for(let pf=0;pf<ue.length;pf++)for(let rg=0;rg<te.length;rg++)Nh.push(wS(a,ue[pf],te[rg]));var sc={id:"ID",configurationId:void 0,startTime:0,endTime:Ya,variants:Nh,
|
|
25
|
+
textStreams:Oh,thumbStreams:[]}}{var Ta=Kb.streams;let hb=a.a.startTime,Ya=a.a.delay;const Lb=a.J;let vc=Math.min(a.a.duration||Infinity,Lb);const dc=a.F(),Nh=a.a.oe,te=a.a.jd,ue=a.I,Oh=isFinite(a.G)?a.G:0;if(dc)vc=Infinity,hb=Date.now()/1E3-te,a.a.startTime=hb,Ya=3*ue;else{const rg=isFinite(Lb)?Lb:a.a.duration;for(const os of Ta)for(const vm of os.tracks)vm.segmentIndex.offset(-Oh),_.qD(vm.segmentIndex,rg)}const pf=a.f.timeline||{};pf.type=void 0;a.C=new _.CJ(pf,hb,Ya,!dc,!0);a.C.f=vc;_.ED(a.C,ue);
|
|
26
|
+
a.C.A=Nh;dc||a.C.offset(-Oh)}a.D.filterAllPeriods([sc]);a.j={presentationTimeline:a.C,periods:[sc],minBufferTime:0,cues:[]};Promise.resolve();a.L||(a.D.networkingEngine.xc(a.M),a.L=!0);a.A=Kb;return Promise.resolve()},yS=function(a,b){null!=a.B&&null!=b&&(a.l=window.setTimeout(a.Sb.bind(a),b))},qS=function(a,b,c){if(b=b.getAttribute(c))return b;a.g.error("required attribute not provided: "+c);throw new _.H(_.F,4,4038,a.o,c);},rS=function(a,b){const c=b===tS;a.j&&a.j.presentationTimeline&&_.zD(a.j.presentationTimeline,
|
|
27
|
+
c);c&&null!=a.l&&(window.clearTimeout(a.l),a.l=null,a.B=null);a.O=b},uS=function(a,b){for(let e=0;e<a.A.streams.length;e++){const f=b.streams[e];for(const g of a.A.streams[e].tracks){var c=f.tracks.find(h=>h.type===g.type&&h.bitrate===g.bitrate);if(c){bR(g,c)||a.g.warn("The current stream is updated with a stream that seems to have different base properties!");var d=zS(a,a.A.timescale,f,c);c=g.segmentIndex;_.QD(c,d);(d=a.a.oe)&&_.RD(c,_.OD(c)-d).forEach(h=>{h.Xa().forEach(k=>{a.H.delete(k)})})}else a.g.warn(`Cannot find satisfying update for ${g.type} `+
|
|
28
|
+
`track with bitrate ${g.bitrate}. Skipping update.`)}}},zS=function(a,b,c,d){let e=0;const f=[],g=c.timescale||b;c.Hf.forEach((h,k)=>{const l=h.d/g;0===k?(h=h.t/g,a.G=Math.min(a.G,h)):h=f[k-1].endTime;const m=h+l,n=aR(a.o,c,k,d);a.I=Math.max(a.I,l);f.push(new _.PD(k,h,m,()=>[n],0,null,0,null,!0,g));a.H.set(n,h);e+=l});if(c.type===_.w||c.type===_.p)b=f[f.length-1],a.J=Math.min(a.J,e),0===a.a.jd?a.a.jd=b.endTime:a.a.jd=Math.min(a.a.jd,b.endTime);return f},vS=function(a,b,c,d){let e=[];for(let f=0;f<
|
|
29
|
+
d.length;f++){const g=d[f].tracks.map(h=>{{var k=d[f],l=zS(a,c,k,h);const X=new _.DJ(l);var m=null;k.type!==_.G&&(m=AS(a,b,c,k,h));h.segmentIndex=X;l=_.zJ++;var n=Promise.resolve.bind(Promise),q=X.f.bind(X),u=X.get.bind(X),v=X.h.bind(X),y=X.getDuration.bind(X),A=BS[k.type];var D="";switch(k.type){case _.w:D=h.Bd;var I=/00000001[0-9]7/.exec(D);D="avc1."+(I&&I[0]?D.substr(D.indexOf(I[0])+10,6):"42c00c");a.g.debug("VIDEO CODECS: ",D);break;case _.p:D=h.Bd,I=2,"AACH"===h.ah?I=5:D&&(I=(parseInt(D.substr(0,
|
|
30
|
+
2),16)&248)>>3),D="mp4a.40."+I,a.g.debug("AUDIO CODECS: ",D)}I=k.type===_.G?CS[k.bi]:void 0;h={id:l,originalId:null,Ji:null,createSegmentIndex:n,findSegmentPosition:q,getSegmentReference:u,adjustSegmentDurations:v,getDuration:y,segmentIndex:X,segmentLookupStrategy:_.hC,initSegmentReference:m,mimeType:A,codecs:D,frameRate:void 0,bandwidth:h.bitrate,width:h.maxWidth||void 0,height:h.maxHeight||void 0,kind:I,encrypted:a.K(),keyId:null,language:k.language,originalLanguage:k.hd,label:k.name,type:k.type,
|
|
31
|
+
primary:!1,trickModeVideo:null,emsgSchemeIdUris:null,roles:[],channelsCount:h.yf||null,spatialAudio:!1,closedCaptions:null}}return h});e=e.concat(g)}return e},wS=function(a,b,c){const d=(c?c.bandwidth:0)+(b?b.bandwidth:0),e=c?c.language:_.fg;return c||b?{id:a.h++,language:e,primary:!1,audio:c,video:b,bandwidth:d,drmInfos:a.w,allowedByApplication:!0,allowedByKeySystem:!0}:null},AS=function(a,b,c,d,e){b=cR(b,d.timescale||c,e);c={isLive:a.F.bind(a),Ld:a.K.bind(a),hh:()=>1,Gd:a.R.bind(a)};d=new Uint8Array(0);
|
|
32
|
+
try{d=WR(b,c)}catch(g){throw a.g.error("Failed to generate initialization segment."),new _.H(_.F,3,4035,g);}const f="data:text/plain;base64,"+_.fj(d);return new _.yJ(()=>[f],0,null,null,!0)},nR=class{constructor(a){this.type=a;this.size=this.start=0;this.parent=null;this.w=!1;this.entries=[];this.children=[]}append(a=[]){for(let b=0;b<a.length;b++)this.children.push(a[b]),a[b].parent=this;return this}get(a){if(this.type===a)return this;for(let b=0;b<this.children.length;b++){if(this.children[b].type===
|
|
33
|
+
a)return this.children[b];{const c=this.children[b].get(a);if(c)return c}}return null}a(){const a=Math.pow(2,32)-1;let b;b=4+this.type.length;"uuid"===this.type&&(b+=16);if(0<this.children.length)for(let c=0;c<this.children.length;c++)b+=this.children[c].a();this.size>a&&(b+=8);return b}write(a){var b=Math.pow(2,32)-1;this.start=a.getPosition();this.size=this.a();this.size>b?_.O(a,1):_.O(a,this.size);_.cm(a,ZQ(this.type));this.size>b&&TQ(a,this.size);"uuid"===this.type&&_.cm(a,null);if(0<this.children.length&&
|
|
34
|
+
!this.w)for(b=0;b<this.children.length;b++)this.children[b].write(a),this.children[b].a(),a.getPosition()}},DS=class extends nR{constructor(a,b,c){super(a);this.version=b;this.flags=c}a(){return 4+super.a()}write(a){super.write(a);UQ(a,this.version);VQ(a,this.flags)}},UR=class extends nR{constructor(a,b,c){super(a);this.f=b;this.offset=c}a(){return this.f.byteLength+super.a()-this.offset}write(a){super.write(a);_.cm(a,this.f,this.offset);a.getPosition()}},aS=class extends DS{constructor(a,b,c,d,e){super(a,
|
|
35
|
+
b,c);this.f=d;this.offset=e}a(){return this.f.byteLength+super.a()-this.offset}write(a){super.write(a);_.cm(a,this.f,this.offset);a.getPosition()}},TR=class extends nR{constructor(a,b,c){super("ftyp");this.h=a;this.Zf=b;this.f=c}a(){let a=this.h.length;a=a+4+this.f.join("").length;return a+super.a()}write(a){super.write(a);_.cm(a,ZQ(this.h));_.O(a,this.Zf);_.cm(a,ZQ(this.f.join("")));a.getPosition()}},SR=class extends nR{constructor(){super(_.Ge)}},RR=class extends nR{constructor(){super(_.cg)}},
|
|
36
|
+
uR=class extends DS{constructor(a,b,c){super("mvhd",1,0);this.timescale=a;this.duration=b;this.volume=256;this.h=c+1;this.f=[0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0]}a(){let a=0;a=1===this.version?a+28:a+16;a=a+44+this.f.length;return a+=super.a()}write(a){super.write(a);1===this.version?(TQ(a,0),TQ(a,0),_.O(a,this.timescale),TQ(a,this.duration*this.timescale)):(_.O(a,0),_.O(a,0),_.O(a,this.timescale),_.O(a,this.duration*this.timescale));_.O(a,65536);WQ(a,this.volume);
|
|
37
|
+
WQ(a,0);_.O(a,0);_.O(a,0);for(let b=0;b<this.f.length;b++)UQ(a,this.f[b]);_.O(a,0);_.O(a,0);_.O(a,0);_.O(a,0);_.O(a,0);_.O(a,0);_.O(a,this.h);a.getPosition()}},vR=class extends nR{constructor(){super("mvex")}},wR=class extends DS{constructor(a){super("trex",0,0);this.f=a}a(){return 20+super.a()}write(a){super.write(a);_.O(a,this.f);_.O(a,1);_.O(a,0);_.O(a,0);_.O(a,0);a.getPosition()}},xR=class extends DS{constructor(a,b,c,d,e){super("tkhd",1,7);this.h=a;this.duration=b;this.timescale=c;this.width=
|
|
38
|
+
d;this.height=e;this.volume=1;this.f=[0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0]}a(){let a=0;a=1===this.version?a+32:a+20;a=a+24+this.f.length;return a+super.a()}write(a){super.write(a);1===this.version?(TQ(a,0),TQ(a,0),_.O(a,this.h),_.O(a,0),TQ(a,this.duration*this.timescale)):(_.O(a,0),_.O(a,0),_.O(a,this.h),_.O(a,0),_.O(a,this.duration*this.timescale));_.O(a,0);_.O(a,0);WQ(a,0);WQ(a,0);WQ(a,this.volume);WQ(a,0);for(let b=0;b<this.f.length;b++)UQ(a,this.f[b]);WQ(a,
|
|
39
|
+
this.width);WQ(a,0);WQ(a,this.height);WQ(a,0);a.getPosition()}},yR=class extends DS{constructor(a,b){super("mdhd",1,0);this.timescale=a;this.duration=b;this.language=21956}a(){let a=0;a=1===this.version?a+28:a+16;return a+4+super.a()}write(a){super.write(a);1===this.version?(TQ(a,0),TQ(a,0),_.O(a,this.timescale),TQ(a,this.duration*this.timescale)):(_.O(a,0),_.O(a,0),_.O(a,this.timescale),_.O(a,this.duration*this.timescale));WQ(a,this.language);WQ(a,0);a.getPosition()}},zR=class extends DS{constructor(a){super("hdlr",
|
|
40
|
+
0,0);this.f=a}a(){return 33+super.a()}write(a){super.write(a);_.O(a,0);this.f===_.w?_.cm(a,ZQ("vide")):_.cm(a,ZQ("soun"));_.O(a,0);_.O(a,0);_.O(a,0);this.f===_.w?_.cm(a,ZQ("VideoHandler\x00")):_.cm(a,ZQ("SoundHandler\x00"));a.getPosition()}},FR=class extends DS{constructor(){super("vmhd",0,1);this.f=new Uint8Array([0,0,0,0,0,0])}a(){return 2+this.f.byteLength+super.a()}write(a){super.write(a);WQ(a,0);_.cm(a,this.f);a.getPosition()}},ES=class extends nR{constructor(a){super(a);this.w=!0}a(){return 8+
|
|
41
|
+
super.a()}write(a){super.write(a);_.O(a,0);WQ(a,0);WQ(a,1)}},FS=class extends ES{constructor(a){super(a);this.height=this.width=0;this.depth=24}a(){return 70+super.a()}write(a){super.write(a);WQ(a,0);WQ(a,0);_.O(a,0);_.O(a,0);_.O(a,0);WQ(a,this.width);WQ(a,this.height);_.O(a,4718592);_.O(a,4718592);_.O(a,0);WQ(a,1);UQ(a,10);_.cm(a,ZQ("AVC Coding",31));WQ(a,this.depth);YQ(a,-1)}},GS=class extends ES{constructor(a,b,c,d){super(a);this.channelCount=b;this.sampleSize=c;this.sampleRate=d}a(){return 20+
|
|
42
|
+
super.a()}write(a){super.write(a);_.O(a,0);_.O(a,0);WQ(a,this.channelCount);WQ(a,this.sampleSize);YQ(a,0);WQ(a,0);WQ(a,this.sampleRate);WQ(a,0)}},ER=class extends FS{constructor(a,b){super("avc1");this.width=a;this.height=b}write(a){super.write(a);for(let b=0;b<this.children.length;b++)this.children[b].write(a);a.getPosition()}},oR=class extends ER{constructor(a,b){super(a,b);this.type="encv"}},HR=class extends GS{constructor(a,b,c){super("mp4a",a,b,c)}write(a){super.write(a);for(let b=0;b<this.children.length;b++)this.children[b].write(a);
|
|
43
|
+
a.getPosition()}},pR=class extends HR{constructor(a,b,c){super(a,b,c);this.type="enca"}},DR=class extends nR{constructor(a,b){super("avcC");this.Za=a;this.ac=b;this.version=1;this.f=this.Za[0][1];this.h=this.Za[0][2];this.level=this.Za[0][3]}a(){let a=7;for(var b=0;b<this.Za.length;b++)a+=2,a+=this.Za[b].byteLength;for(b=0;b<this.Za.length;b++)a+=2,a+=this.ac[b].byteLength;return a+super.a()}write(a){super.write(a);UQ(a,this.version);UQ(a,this.f);UQ(a,this.h);UQ(a,this.level);UQ(a,255);UQ(a,224|this.Za.length);
|
|
44
|
+
for(var b=0;b<this.Za.length;b++)WQ(a,this.Za[b].length),_.cm(a,this.Za[b]);UQ(a,this.ac.length);for(b=0;b<this.ac.length;b++)WQ(a,this.ac[b].length),_.cm(a,this.ac[b]);a.getPosition()}},GR=class extends DS{constructor(a){super("esds",0,0);this.Zb=a}a(){return 22+(this.Zb.byteLength+3)+super.a()}write(a){super.write(a);UQ(a,3);UQ(a,23+this.Zb.byteLength);WQ(a,1);UQ(a,0);UQ(a,4);UQ(a,15+this.Zb.byteLength);UQ(a,64);UQ(a,21);VQ(a,0);_.O(a,0);_.O(a,0);UQ(a,5);UQ(a,this.Zb.byteLength);_.cm(a,this.Zb);
|
|
45
|
+
_.cm(a,new Uint8Array([6,1,2]));a.getPosition()}},BR=class extends DS{constructor(a=""){super("url ",0,1);this.location=a}a(){return this.location.length+super.a()}write(a){super.write(a);0<this.location.length&&_.cm(a,ZQ(this.location));a.getPosition()}},AR=class extends DS{constructor(){super("dref",0,0)}a(){let a=4;for(let b=0;b<this.entries.length;b++)a+=this.entries[b].a();return a+super.a()}write(a){super.write(a);_.O(a,this.entries.length);for(let b=0;b<this.entries.length;b++)this.entries[b].write(a);
|
|
46
|
+
a.getPosition()}},JR=class extends nR{constructor(){super(_.Uf)}},CR=class extends DS{constructor(){super(_.Wf,0,0)}a(){let a=4;for(let b=0;b<this.entries.length;b++)a+=this.entries[b].a();return a+super.a()}write(a){super.write(a);_.O(a,this.entries.length);for(let b=0;b<this.entries.length;b++)this.entries[b].write(a);a.getPosition()}},KR=class extends DS{constructor(){super("stts",0,0)}a(){let a=4;for(let b=0;b<this.entries.length;b++)a+=this.entries[b].a();return a+super.a()}write(a){super.write(a);
|
|
47
|
+
_.O(a,this.entries.length);for(let b=0;b<this.entries.length;b++)this.entries[b].write(a);a.getPosition()}},LR=class extends DS{constructor(){super("stsc",0,0)}a(){let a=4;for(let b=0;b<this.entries.length;b++)a+=this.entries[b].a();return a+super.a()}write(a){super.write(a);_.O(a,this.entries.length);for(let b=0;b<this.entries.length;b++)this.entries[b].write(a);a.getPosition()}},NR=class extends DS{constructor(){super("stco",0,0)}a(){let a=4;for(let b=0;b<this.entries.length;b++)a+=this.entries[b].a();
|
|
48
|
+
return a+super.a()}write(a){super.write(a);_.O(a,this.entries.length);for(let b=0;b<this.entries.length;b++)this.entries[b].write(a);a.getPosition()}},MR=class extends DS{constructor(){super("stsz",0,0)}a(){return 8+super.a()}write(a){super.write(a);_.O(a,0);_.O(a,0);a.getPosition()}},IR=class extends DS{constructor(){super("smhd",0,0)}a(){return 4+super.a()}write(a){super.write(a);YQ(a,0);WQ(a,0);a.getPosition()}},OR=class extends nR{constructor(){super("dinf")}},PR=class extends nR{constructor(){super(_.Fe)}},
|
|
49
|
+
QR=class extends nR{constructor(){super(_.Be)}},iS=class extends DS{constructor(a,b){super("tfdt",a,0);this.baseMediaDecodeTime=b}a(){let a=0;a=1===this.version?a+8:a+4;return a+super.a()}write(a){super.write(a);1===this.version?TQ(a,this.baseMediaDecodeTime):_.O(a,this.baseMediaDecodeTime);a.getPosition()}},YR=class extends DS{constructor(){super("mfhd",0,0);this.f=0}a(){return 4+super.a()}write(a){super.write(a);_.O(a,this.f);a.getPosition()}},$R=class extends DS{constructor(a,b){super("trun",a,
|
|
50
|
+
b);this.l=this.j=this.f=0;this.o=[];this.sampleSize=[];this.A=[];this.h=[]}a(){let a=4;this.flags&HS&&(a+=4);this.flags&IS&&(a+=4);for(let b=0;b<this.f;b++)this.flags&JS&&(a+=4),this.flags&KS&&(a+=4),this.flags&LS&&(a+=4),this.flags&MS&&(a+=4);return a+super.a()}write(a){super.write(a);_.O(a,this.f);this.flags&HS&&(a.getPosition(),XQ(a,this.j));this.flags&IS&&_.O(a,this.l);for(let b=0;b<this.f;b++)this.flags&JS&&_.O(a,this.o[b]),this.flags&KS&&_.O(a,this.sampleSize[b]),this.flags&LS&&_.O(a,this.A[b]),
|
|
51
|
+
this.flags&MS&&(0===this.version?_.O(a,this.h[b]):XQ(a,this.h[b]));a.getPosition()}},HS=1,IS=4,JS=256,KS=512,LS=1024,MS=2048,ZR=class extends DS{constructor(a,b){super("tfhd",a,b);this.f=255;this.l=this.o=this.j=this.A=this.h=0}a(){let a=4;this.flags&NS&&(a+=8);this.flags&OS&&(a+=4);this.flags&PS&&(a+=4);this.flags&QS&&(a+=4);this.flags&RS&&(a+=4);return a+super.a()}write(a){super.write(a);_.O(a,this.f);this.flags&NS&&TQ(a,this.h);this.flags&OS&&_.O(a,this.A);this.flags&PS&&_.O(a,this.j);this.flags&
|
|
52
|
+
QS&&_.O(a,this.o);this.flags&RS&&_.O(a,this.l);a.getPosition()}},NS=1,OS=2,PS=8,QS=16,RS=32,eS=class extends nR{constructor(){super("traf")}},fS=class extends nR{constructor(){super("moof")}},dS=class extends nR{constructor(){super(_.Ae);this.f=new Uint8Array(0)}a(){return this.f.byteLength+super.a()}write(a){super.write(a);0<this.f.byteLength&&_.cm(a,this.f)}},qR=class extends DS{constructor(){super("tenc",0,0);this.f=1;this.h=8;this.l="";this.j=[]}a(){let a;a=20;1===this.f&&0===this.h&&(a=a+1+this.j.length);
|
|
53
|
+
return a+super.a()}write(a){super.write(a);UQ(a,0);0===this.version?UQ(a,0):UQ(a,0);UQ(a,this.f);UQ(a,this.h);_.cm(a,_.hj(this.l));if(1===this.f&&0===this.h){UQ(a,0);for(let b=0;b<this.j.length;b++)UQ(a,this.j[b])}a.getPosition()}},sR=class extends DS{constructor(a,b){super("schm",0,0);this.f=a;this.h=b;this.Ub=""}a(){let a=8;this.flags&1&&(a+=ZQ(this.Ub).byteLength);return a+super.a()}write(a){super.write(a);_.cm(a,ZQ(this.f));_.O(a,this.h);this.flags&1&&_.cm(a,ZQ(this.Ub));a.getPosition()}},rR=
|
|
54
|
+
class extends nR{constructor(a){super("frma");this.f=a}a(){return ZQ(this.f).byteLength+super.a()}write(a){super.write(a);_.cm(a,ZQ(this.f));a.getPosition()}},jS=class extends DS{constructor(){super("saio",0,0);this.offset=[0]}a(){let a=0;this.flags&1&&(a+=8);a+=4;for(let b=0;1>b;b++)a=0===this.version?a+4:a+8;return a+super.a()}write(a){super.write(a);this.flags&1&&(_.O(a,0),_.O(a,0));_.O(a,1);for(let b=0;1>b;b++)0===this.version?_.O(a,this.offset[b]):TQ(a,this.offset[b]);a.getPosition()}},kS=class extends DS{constructor(a,
|
|
55
|
+
b,c){super("saiz",0,0);this.f=a;this.j=b;this.h=c}a(){let a=0;this.flags&1&&(a+=8);a+=5;0===this.f&&(a+=this.j.length);return a+super.a()}write(a){super.write(a);this.flags&1&&(_.O(a,0),_.O(a,0));UQ(a,this.f);_.O(a,this.h);if(0===this.f)for(let b=0;b<this.h;b++)UQ(a,this.j[b]);a.getPosition()}},cS=class extends DS{constructor(a,b){super("senc",a,b);this.h=0;this.j=8;this.f=[]}a(){let a=4;this.flags&1&&(a+=1);for(let b=0;b<this.h;b++)if(a+=this.f[b].Tf.byteLength,this.flags&2){a+=2;for(let c=0;c<this.f[b].Oc;c++)a+=
|
|
56
|
+
2,a+=4}return a+super.a()}write(a){super.write(a);_.O(a,this.h);this.flags&1&&UQ(a,this.j);for(let b=0;b<this.h;b++)if(_.cm(a,this.f[b].Tf),this.flags&2){WQ(a,this.f[b].Oc);for(let c=0;c<this.f[b].Oc;c++)WQ(a,this.f[b].Ye[c].vf),_.O(a,this.f[b].Ye[c].wf)}a.getPosition()}};var hS=class{constructor(a,b,c,d){this.frameRate=Number(a)||30;this.f=Number(b)||1;this.a=Number(d);0===this.a&&(this.a=a?this.frameRate*this.f:1);c&&(a=/^(\d+) (\d+)$/g.exec(c))&&(this.frameRate*=parseInt(a[1],10)/parseInt(a[2],10))}},fR=/^(\d{2,}):(\d{2}):(\d{2}):(\d{2})\.?(\d+)?$/,gR=/^(?:(\d{2,}):)?(\d{2}):(\d{2})$/,hR=/^(?:(\d{2,}):)?(\d{2}):(\d{2}\.\d{2,})$/,iR=/^(\d*\.?\d*)f$/,jR=/^(\d*\.?\d*)t$/,kR=/^(?:(\d*\.?\d*)h)?(?:(\d*\.?\d*)m)?(?:(\d*\.?\d*)s)?(?:(\d*\.?\d*)ms)?$/;var VR=class{constructor(a){this.a=a;this.f=mR(this)}get(a){for(let b=0;b<this.a.length;b++){const c=this.a[b].get(a);if(c)return c}return null}write(){this.f=mR(this);for(let a=0;a<this.a.length;a++)this.a[a].write(this.f);return this.f.buffer}};var bS=new Uint8Array([162,57,79,82,90,155,79,20,162,68,108,66,124,100,141,244]);var SS=class{constructor(){this.A=this.j=this.f=this.D=null;this.h=1;this.V=0;this.o="";this.C=this.a=null;this.g=new _.S("clpp.smooth.SmoothParser");this.L=!1;this.l=this.B=null;this.O=tS;this.I=0;this.G=this.J=Infinity;this.w=[];this.M=this.S.bind(this);this.H=new Map}configure(a){this.f=a}start(a,b){this.D=b;a=[...new Set([a,$Q(a)])];return pS(this,a).then(c=>xS(this,c.data).then(()=>{yS(this,this.B);return this.j}))}requestStop(){}stop(){this.D&&this.D.networkingEngine.od(this.M);this.B=this.A=
|
|
57
|
+
this.j=this.f=this.D=null;this.l&&(clearTimeout(this.l),this.l=null);this.L=!1;this.J=this.G=Infinity;return Promise.resolve()}update(){if(this.F())return pS(this,[this.o]).then(a=>xS(this,a.data).then(()=>this.j)).catch(a=>{if(this.D)this.D.onError(a)})}setCurrentVariant(){}Sb(){this.g.debug(_.XB);this.D&&(this.l=null,this.update().then(()=>{yS(this,this.B)}).catch(a=>{this.D&&(this.D.onError(a),1===a.severity&&yS(this,100))}))}F(){return this.O===sS}K(){return 0<this.w.length}R(a){let b=null;if(this.w.length)for(let c=
|
|
58
|
+
0;c<this.w.length;c++)if(this.w[c].keySystem===a){b=this.w[c].initData[0];break}return b}S(a){if(2!==a.request.type||a.uri.startsWith("data:"))return Promise.resolve(a);const b=a.request.timescale||this.A.timescale,c={isLive:this.F.bind(this),Ld:this.K.bind(this),hh:()=>1,Gd:this.R.bind(this)};let d=!1;const e=new _.H(_.F,3,4035,null);let f=null;try{const g=this.H.get(a.request.uris[a.request.uriIndex])||a.request.startTime||0;g!==a.request.startTime&&this.g.debug(`Using base media decode time ${g} instead of `+
|
|
59
|
+
`segment reference time ${a.request.startTime}`);f=lS(a,b,g,c)}catch(g){d=!0,e.data=g,3E3===g.code&&(e.code=4039)}if(d||!f)return Promise.reject(e);a.data=f;return Promise.resolve(a)}},BS={video:_.vg,audio:_.Pc,text:_.Jc},tS=_.Sb,sS="LIVE",CS={mi:_.cC,ni:_.tC};_.z("clpp.smooth.SmoothComponent",class extends _.pv{f(){_.Ms.ism=SS;_.Ks[_.Kc]=SS}a(){_.nE("ism");_.oE(_.Kc)}id(){return _.Pf}});};f.call(g, window);
|
package/cl.thumbnails.js
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
import {clpp} from "./cl.core.js";let g={};const _ = clpp._;var f=function(window){'use strict';var
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
a&&void 0!==a&&(c=a);null!==b&&void 0!==b&&(d=b);c||(c=Math.ceil(d*e));d||(d=Math.ceil(c/e));a=document.createElement(_.
|
|
6
|
-
this.width*c+_.
|
|
7
|
-
{this.sa.removeEventListener(_.
|
|
8
|
-
c),new _.
|
|
9
|
-
for(let d=0;d<a;d++){const e=this.f.url.replace(c,String(d+1)),f=new Image;for(let g=0;g<b;g++)this.a.push(new
|
|
10
|
-
d[l]),k+=1;for(let l=0,m=e.byteLength;l<m;l++)h.setUint8(k,e[l]),k+=1;this.a=g;this.g.info(`Appended ${e.byteLength} bytes.`+`Total data now ${f} bytes.`);f=this.a;d=_.K(f);h=String.fromCharCode.apply(null
|
|
11
|
-
h.offset-k.offset,k.duration=h.time-k.time;this.f.push(h);d+=8;(g=4294967295===g)&&this.h.resolve();if(1E5<e)throw Error("There was a problem during reading BIF entries");}else throw Error("The file is not a valid BIF format");
|
|
12
|
-
+ 'URL: ${c}`,d);a.onError(new _.
|
|
13
|
-
l);f.match(/^http|^\/\//)||(f=c.substr(0,c.lastIndexOf("/"))+"/"+f);l=
|
|
14
|
-
yield c.load();return c})}l(){return this.f}};var
|
|
15
|
-
e.findSegmentPosition(a-d.startTime);if(null===d||void 0===d)throw b.log.error("Could not find segment index for specified position",a),c();var f=e.getSegmentReference(d);if(f){const h=
|
|
16
|
-
h.
|
|
17
|
-
0;k<e.
|
|
18
|
-
this.g.warn("Unknown thumbnail mode",c)}else this.a=null}onContentLoaded(a){if(!this.a){var b=a.getConfiguration();b=b&&b.thumbnails;if(!b||void 0===b.enabled||b.enabled){var c=a.getPeriods();if(
|
|
19
|
-
var
|
|
1
|
+
import {clpp} from "./cl.core.js";let g={};const _ = clpp._;var f=function(window){'use strict';var By="Thumbnail URL is mandatory",Cy="Wrong gridSize format",Dy="clpp.thumbnails",Fy=function(a,b){b.reduce((c,d)=>{let e=d,f=!1;typeof d===_.Ke&&(e=d.step,f=d.preloadWhileBuffering);return c.then(()=>Ey(a,0,e,!!f))},Promise.resolve())},Ey=function(a,b,c,d){if(a.w||b>=a.a.length)return Promise.resolve();const e=b+c;return Gy(a,d).then(()=>a.a[b].load()).then(()=>Ey(a,e,c,d))},Gy=function(a,b){return new Promise(c=>{if(b||a.player.getState()!==_.Uo)c();else a.player.one(_.Vc,()=>{c()})})},
|
|
2
|
+
Hy=function(a){const b=a.a.byteLength;a.f.forEach(c=>{c.offset+c.length<b&&c.Jc.resolve()})},Ky=function(a,b){return Iy(a,b).then(c=>new Jy(c,b.time,b.duration))},Iy=function(a,b){return b.load().then(()=>{const c=_.K(a.a,b.offset,b.length);return"data:image/jpeg;base64,"+_.ej(c)})},Ly=function(a){a=a.split(/\.|:/).map(parseFloat);let b=0,c;const d={3:.001,2:1,1:60,0:3600};for(c=a.length-1;0<=c;c--)b+=a[c]*d[c];return b},My=function(a,b){let c=null;for(const d of a)d.startTime<=b&&(c=d);return c},
|
|
3
|
+
Ny=function(a,b){const c=a.horizontalTiles||b.horizontalTiles||1,d=a.verticalTiles||b.verticalTiles||1,e=c*d;return{ed:c,gf:d,Sf:e,durationPerTile:a.durationPerTile||b.durationPerTile||(a.endTime-a.startTime)/e}},Oy=function(a){return a.some(b=>0<b.thumbStreams.length)},Wy=function(a){return a?a===Py||a===Qy?new Ry:a===Sy?new Ty:a===Uy?new Vy:null:null},Xy=function(a){if(!a)return null;a=new _.sm(a);return a.path.match(/.*\.vtt$/i)?Sy:a.path.match(/.*\.bif$/i)?Uy:a.path.match(/.*\.(png|jpg|jpeg)$/i)?
|
|
4
|
+
Py:null};var Yy=class{constructor(){this.log=new _.S(Dy);this.player=null;this.a=[];this.w=!1}init(a,b){this.player=a;a.one(_.Af,()=>{this.w=!0});a.isLive()||this.l().then(()=>{b&&b.preload&&Fy(this,b.preload)})}};var Jy=class{constructor(a,b,c,d,e,f,g,h,k,l,m,n){d=void 0===d?0:d;e=void 0===e?0:e;f=void 0===f?0:f;g=void 0===g?0:g;h=void 0===h?1:h;k=void 0===k?1:k;l=void 0===l?0:l;m=void 0===m?0:m;n=void 0===n?new Image:n;this.time=b;this.src=a;this.duration=c;this.x=d;this.y=e;this.width=f;this.height=g;this.sa=n;this.Qg=h;this.Th=k;this.ph=l;this.qh=m;this.ve=null}raw(){return this.sa.cloneNode(!1)}element(a,b){let c=this.width,d=this.height;const e=this.width/this.height;void 0!==a&&void 0===b&&(b=0);null!==
|
|
5
|
+
a&&void 0!==a&&(c=a);null!==b&&void 0!==b&&(d=b);c||(c=Math.ceil(d*e));d||(d=Math.ceil(c/e));a=document.createElement(_.Ld);a.style.width=c+_.xf;a.style.height=d+_.xf;a.style.backgroundColor="#000";a.style.backgroundRepeat="no-repeat";a.style.backgroundImage=`url("${this.src}")`;a.style.backgroundSize=`${Math.ceil(c/this.width*(this.sa.naturalWidth||this.sa.width))}px ${Math.ceil(d/this.height*(this.sa.naturalHeight||this.sa.height))}px`;b=this.y/this.height;a.style.backgroundPositionX="-"+this.x/
|
|
6
|
+
this.width*c+_.xf;a.style.backgroundPositionY="-"+b*d+_.xf;return a}load(){this.ve||(this.ve=new Promise((a,b)=>{const c=()=>{this.width||(this.width=(this.sa.naturalWidth||this.sa.width)/this.Qg);this.height||(this.height=(this.sa.naturalHeight||this.sa.height)/this.Th);this.x||(this.x=this.width*this.ph);this.y||(this.y=this.height*this.qh)};if(this.sa.src&&this.sa.complete)c(),a(this);else{var d=null,e=()=>{c();this.sa.removeEventListener(_.se,e);this.sa.removeEventListener(_.r,d);a(this)};d=f=>
|
|
7
|
+
{this.sa.removeEventListener(_.se,e);this.sa.removeEventListener(_.r,d);b(new _.H(1,9,2014,"Failed to load thumbnail.",f))};this.sa.addEventListener(_.se,e);this.sa.addEventListener(_.r,d);this.sa.src=this.src}}));return this.ve}};_.z("clpp.thumbnails.Thumbnail",Jy);Jy.prototype.load=Jy.prototype.load;Jy.prototype.element=Jy.prototype.element;Jy.prototype.raw=Jy.prototype.raw;var Ry=class extends Yy{constructor(){super();this.f=null;this.o=this.h=1;this.j=0}init(a,b){if(!b||!b.url)throw new _.H(1,9,7100,By);if("GRID"===b.mode&&!b.gridSize)throw new _.H(1,9,7100,"Grid size is mandatory for GRID mode");if(!b.duration)throw new _.H(1,9,7100,"Duration is mandatory");this.f=b;this.j=this.f.duration;if(this.f.gridSize)try{const c=this.f.gridSize.split(/x/).map(d=>parseInt(d,10)).filter(d=>0<d);if(2===c.length)this.h=c[0],this.o=c[1];else throw new _.H(1,9,7100,Cy);}catch(c){throw this.log.error("Error during parsing gridSize",
|
|
8
|
+
c),new _.H(1,9,7100,Cy);}super.init(a,b)}get(a){const b=this;return _.x(function*(){var c=b.player.getDuration();if(0>a||a>c)throw new _.H(1,9,2014,`Position is out of range: ${a}`);c=Math.floor(a/b.f.duration);const d=b.a[c];if(!d)throw new _.H(1,9,2014,"No thumbnail found for position "+a+" at index "+c);yield d.load();return d})}l(){if(0<this.a.length)return Promise.resolve();var a=this.player.getDuration();const b=this.h*this.o;a=Math.ceil(Math.ceil(a/this.j)/b);const c=this.f.templateKey||"$index$";
|
|
9
|
+
for(let d=0;d<a;d++){const e=this.f.url.replace(c,String(d+1)),f=new Image;for(let g=0;g<b;g++)this.a.push(new Jy(e,this.j*(d*b+g),this.j,0,0,0,0,this.h,this.o,g%this.h,Math.floor(g/this.h),f))}return Promise.resolve()}};var Zy=class{constructor(a,b){this.time=a;this.duration=0;this.offset=b;this.length=0;this.Jc=new _.hn}load(){return this.Jc}},Vy=class{constructor(){this.g=new _.S(Dy);this.a=new ArrayBuffer(0);this.f=[];this.h=new _.hn}init(a,b){if(!b||!b.url)throw new _.H(1,9,7100,By);const c=b.url;b=_.xj(c);b.type=_.wj;a.getNetworkEngine().fetch(b).U.then(d=>{var e=d.data;d=_.K(this.a);e=_.K(e);var f=d.byteLength+e.byteLength,g=new ArrayBuffer(f),h=new DataView(g),k=0;for(let l=0,m=d.byteLength;l<m;l++)h.setUint8(k,
|
|
10
|
+
d[l]),k+=1;for(let l=0,m=e.byteLength;l<m;l++)h.setUint8(k,e[l]),k+=1;this.a=g;this.g.info(`Appended ${e.byteLength} bytes.`+`Total data now ${f} bytes.`);f=this.a;d=_.K(f);h=String.fromCharCode.apply(null,$y);k=Array.prototype.slice.call(d,0,8);d=64;e=0;g=!1;if(h===String.fromCharCode.apply(null,k))for(f=new DataView(f,16,20),f=f.getUint32(0,!0),0===f&&(f=1E3);!g;){e+=1;k=f;h=new DataView(this.a,d);g=h.getUint32(0,!0);k=g*k/1E3;h=h.getUint32(4,!0);h=new Zy(k,h);if(k=this.f.length)k=this.f[k-1],k.length=
|
|
11
|
+
h.offset-k.offset,k.duration=h.time-k.time;this.f.push(h);d+=8;(g=4294967295===g)&&this.h.resolve();if(1E5<e)throw Error("There was a problem during reading BIF entries");}else throw Error("The file is not a valid BIF format");Hy(this)}).catch(d=>{this.g.error(`[BIF] Error while loading thumbnails '
|
|
12
|
+
+ 'URL: ${c}`,d);a.onError(new _.H(1,9,2013,"Error while loading and parsing BIF thumbnails.",d))})}get(a){const b=this;return _.x(function*(){if(0>a)throw new _.H(1,9,2014,`Position is out of range: ${a}`);yield b.h;var c=b.f.find(d=>a>=d.time&&a<d.time+d.duration);if(!c)throw new _.H(1,9,2014,`No thumbnail found for position: ${a}`);c=yield Ky(b,c);yield c.load();return c})}},$y=[137,66,73,70,13,10,26,10];var Ty=class extends Yy{constructor(){super();this.f=null}init(a,b){if(!b||!b.url)throw new _.H(1,9,7100,By);const c=b.url,d=_.xj(c);d.type=_.wj;this.f=a.getNetworkEngine().fetch(d).U.then(e=>{e=e.data;if(!e)throw Error("No data in the response");e=_.Ri(e).split(/\n/);for(let m=0;m<e.length;m++){var f=e[m],g=f.split(" --\x3e ");if(2===g.length){f=e[++m];var h=f.indexOf("\x3d");var k=h=0>h?[]:f.substr(h+1).split(/,/).map(parseFloat);h=k[0];const n=k[1],q=k[2];k=k[3];var l=f.indexOf("#");f=0>l?f:f.substr(0,
|
|
13
|
+
l);f.match(/^http|^\/\//)||(f=c.substr(0,c.lastIndexOf("/"))+"/"+f);l=Ly(g[0]);g=Ly(g[1])-l;this.a.push(new Jy(f,l,g,h,n,q,k,0,0))}}}).catch(e=>{this.log.error("[VTT] Error while loading thumbnails "+`URL: ${c}`,e);a.onError(new _.H(1,9,2013,"Error while loading VTT thumbnails.",e))});super.init(a,b)}get(a){const b=this;return _.x(function*(){if(0>a)throw new _.H(1,9,2014,`Position is out of range: ${a}`);yield b.f;const c=b.a.find(d=>a>=d.time&&a<d.time+d.duration);if(!c)throw new _.H(1,9,2014,`No thumbnail found for position: ${a}`);
|
|
14
|
+
yield c.load();return c})}l(){return this.f}};var az=class extends Yy{get(a){const b=this;return _.x(function*(){function c(){return new _.H(1,9,2014,`No thumbnail found for position: ${a}`)}if(0>a)throw b.log.error("Position must be greater than 0 but is "+a),new _.H(1,9,2014,`Position is out of range: ${a}`);var d=b.player.getPeriods();d=My(d,a);if(!d)throw b.log.error("Could not find period for specified position",a),c();var e=d.thumbStreams.sort(b.f)[0];if(!e)throw b.log.error("Could not find thumb stream for specified position",a),c();d=
|
|
15
|
+
e.findSegmentPosition(a-d.startTime);if(null===d||void 0===d)throw b.log.error("Could not find segment index for specified position",a),c();var f=e.getSegmentReference(d);if(f){const h=Ny(f,e),k=Math.floor((a-f.startTime)/h.durationPerTile);var g;if(0<b.a.length)f=e.findSegmentPosition(0),null!==f&&(g=b.a[(d-f)*h.Sf+k]);else if((e=f.Xa())&&0<e.length){let l=g=0;f=f.startTime;1<h.Sf&&(g=k%h.ed,l=Math.floor(k/h.ed),f+=k*h.durationPerTile);g=new Jy(e[0],f,h.durationPerTile,void 0,void 0,void 0,void 0,
|
|
16
|
+
h.ed,h.gf,g,l)}if(g)return yield g.load(),g}b.log.error("segment reference for specified segment index does not exist",d);throw c();})}f(a,b){return void 0!==a.bandwidth&&void 0!==b.bandwidth?a.bandwidth-b.bandwidth:0}l(){if(0<this.a.length)return Promise.resolve();var a=this.player.getPeriods();for(const b of a)if(a=b.thumbStreams.sort(this.f)[0]){let c=a.findSegmentPosition(0),d;for(;null!==c&&!_.B(d=a.getSegmentReference(c++));){const e=Ny(d,a),f=d.Xa()[0],g=new Image;let h=d.startTime;for(let k=
|
|
17
|
+
0;k<e.gf;++k)for(let l=0;l<e.ed;++l)this.a.push(new Jy(f,h,e.durationPerTile,void 0,void 0,void 0,void 0,e.ed,e.gf,l,k,g)),h+=e.durationPerTile}}return Promise.resolve()}};var bz=class{constructor(){this.g=new _.S(Dy);this.a=this.m=null}onPlayerCreated(a){this.m=a}onPlayerWillDestroy(){this.m=null}onPlayerWillRelease(){this.a=null}onContentWillLoad(a){const b=a.getConfiguration().thumbnails;if(b)if(!1===b.enabled)this.g.info("Thumbnails disabled.");else{var c=b.mode||null;c||(c=Xy(b.url||null));(this.a=Wy(c))?(this.g.info("Loading thumbs configuration",b),this.m.one(_.xe,()=>{this.g.info("Initialize thumbnails provider");try{this.a.init(a,b)}catch(d){this.m.onError(d)}})):
|
|
18
|
+
this.g.warn("Unknown thumbnail mode",c)}else this.a=null}onContentLoaded(a){if(!this.a){var b=a.getConfiguration();b=b&&b.thumbnails;if(!b||void 0===b.enabled||b.enabled){var c=a.getPeriods();if(Oy(c)){this.a=new az;try{this.a.init(a,b)}catch(d){this.m.onError(d)}}}}}get(a){return this.a?this.a.get(a):Promise.reject(new _.H(1,9,2014,"Thumbnail format is not supported"))}id(){return"thumbnails"}};_.z("clpp.thumbnails.ThumbnailsPlugin",bz);bz.prototype.get=bz.prototype.get;bz.Id="thumbnails";_.ur(new class{create(){return new bz}});
|
|
19
|
+
var Py="SINGLE",Qy="GRID",Sy="WEBVTT",Uy="BIF";};f.call(g, window);
|