@castlabs/prestoplay 6.9.0 → 6.11.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 +66 -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 +112 -111
- package/cjs/cl.conviva.js +33 -33
- package/cjs/cl.core.js +467 -432
- package/cjs/cl.crypto.js +9 -9
- package/cjs/cl.dash.js +72 -72
- package/cjs/cl.externs.js +143 -45
- package/cjs/cl.freewheel.js +24 -24
- package/cjs/cl.hls.js +78 -73
- package/cjs/cl.hlssmpte.js +6 -6
- package/cjs/cl.htmlcue.js +29 -31
- package/cjs/cl.ima.js +24 -24
- package/cjs/cl.mse.js +276 -275
- package/cjs/cl.muxdata.js +14 -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.smooth.js +71 -71
- package/cjs/cl.thumbnails.js +24 -24
- package/cjs/cl.tizen.js +71 -71
- package/cjs/cl.ttml.js +29 -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 +20 -20
- package/cl.adobe.js +3 -3
- package/cl.airplay.js +3 -3
- package/cl.broadpeak.js +5 -5
- package/cl.cast.js +88 -88
- package/cl.conviva.js +27 -27
- package/cl.core.js +396 -365
- package/cl.crypto.js +9 -9
- package/cl.dash.js +68 -67
- package/cl.externs.js +139 -45
- package/cl.freewheel.js +19 -19
- package/cl.hls.js +64 -61
- package/cl.hlssmpte.js +5 -5
- package/cl.htmlcue.js +26 -25
- package/cl.ima.js +17 -17
- package/cl.mse.js +240 -242
- package/cl.muxdata.js +12 -12
- package/cl.onboard.js +4 -4
- package/cl.persistent.js +11 -11
- package/cl.playlist.js +5 -5
- package/cl.smooth.js +59 -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 +14 -14
- package/cl.vtt.js +12 -12
- package/cl.youbora.js +15 -15
- package/clpp.styles.css +15 -0
- package/package.json +1 -1
- package/typings.d.ts +249 -21
package/cjs/cl.hls.js
CHANGED
|
@@ -1,77 +1,82 @@
|
|
|
1
1
|
(function(){var g={}; var _ = _ || {}
|
|
2
|
-
var f=function(window){var
|
|
3
|
-
|
|
4
|
-
this.S=1===b?d:null},
|
|
5
|
-
h),
|
|
6
|
-
128>a[b+8]&&128>a[b+9]?!0:!1},
|
|
7
|
-
g[h]){if("com.apple.streaming.transportStreamTimestamp"===unescape(b(g,0,h)))return a=g.subarray(h+1),f=(a[3]&1)<<30|a[4]<<22|a[5]<<14|a[6]<<6|a[7]>>>2,f*=4,f+=a[7]&3,Math.round(f/9E4);break}}
|
|
8
|
-
4,4030);}var d=new _.
|
|
9
|
-
d=0;try{(new _.
|
|
10
|
-
h=l/h*Math.pow(2,32)+m/h}e=h;f=!0;g.parser.stop()}).parse(a,!0)}catch(g){c=g}if(c||!f)throw new _.
|
|
11
|
-
b,c,d,e,f){var g,h,l,m,n,p,q,
|
|
12
|
-
case 4:if(d!==_.
|
|
13
|
-
n["return"](h);case 2:l=_.
|
|
14
|
-
a},
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
this.
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
_.
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
4,
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
var
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
_.
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
(c
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
_.
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
_.
|
|
73
|
-
_
|
|
74
|
-
|
|
2
|
+
var f=function(window){var EC="CLOSED-CAPTIONS",FC="Could not parse MP4 segment start time.",GC="EXT-X-BYTERANGE",HC="EXT-X-DISCONTINUITY",IC="EXT-X-DISCONTINUITY-SEQUENCE",JC="EXT-X-ENDLIST",KC="EXT-X-KEY",LC="EXT-X-MAP",MC="EXT-X-MEDIA-SEQUENCE",NC="EXT-X-PART-INF",OC="EXT-X-PLAYLIST-TYPE",PC="EXT-X-PRELOAD-HINT",QC="EXT-X-PROGRAM-DATE-TIME",RC="EXT-X-SERVER-CONTROL",SC="EXT-X-STREAM-INF",TC="EXT-X-TARGETDURATION",UC="Failed to infer discontinuity number",VC="Guessing audio-only",WC="METHOD",XC="SAMPLE-AES-CTR",YC="SUBTITLES",
|
|
3
|
+
ZC="Setting playlist start time to ",$C="Two EXT-X-KEY tags, one with METHOD\x3dAES-128 are applied to one ",aD="application/vnd.apple.mpegurl",bD="sample",cD="whole-segment",dD=function(a,b){return _.Hh(a,b,void 0,{required:!0})},eD=function(a){if(1>a.a)throw _.nl();--a.a},fD=function(a,b,c,d){if(1===b){if(!d||0===d.length)throw new _.N(_.O,4,4043,"Media playlist must have at least one segment!");if(null==d[0].a)throw new _.N(_.O,4,4043,"Media playlist must have at least one full segment!");}this.f=
|
|
4
|
+
a;this.a="";this.type=b;this.Y=c;this.S=1===b?d:null},gD=function(a,b,c){c=void 0===c?[]:c;this.Y=b;this.a=a;this.f=c;this.ba=-1},hD=function(a,b,c,d,e,f,g,h,l,m,n,p,q,t){t=void 0===t?[]:t;_.lx.call(this,a,b,c,d,e,f,g,void 0===h?null:h,void 0===l?!1:l,void 0===m?null:m,void 0===n?null:n,void 0===p?null:p,void 0===q?null:q,t);this.initSegment=void 0;this.ba=0},iD=function(a){if(null!==a&&void 0!==a)return Number(a)},jD=function(){this.a=0},mD=function(a,b,c){var d=[],e=[],f=[],g=[];c.forEach(function(h){/^(#EXT)/.test(h)?
|
|
5
|
+
(h=_.vi(a.a++,h),kD.includes(h.name)?d.push(h):lD.includes(h.name)?"EXT-X-PART"===h.name?g.push(h):h.name===PC&&"PART"===_.Hh(h,_.yb)&&g.push(h):f.push(h)):Y.Re(h)||(h=Y.dd(b,h.trim()),e.push(new gD(h,f,g)),f=[],g=[])});0<g.length&&e.push(new gD(null,f,g));return{S:e,Y:d}},nD=function(a){var b=void 0===b?0:b;return 0>a?[]:Array.from({length:a},function(c,d){return d+b})},oD=function(a,b){b=void 0===b?0:b;return b+10<=a.length&&73===a[b]&&68===a[b+1]&&51===a[b+2]&&255>a[b+3]&&255>a[b+4]&&128>a[b+6]&&
|
|
6
|
+
128>a[b+7]&&128>a[b+8]&&128>a[b+9]?!0:!1},pD=function(){this.a=new Map;this.f=new Map},qD=function(a){function b(l,m,n){for(var p="";m<n;m++)p+="%"+("00"+l[m].toString(16)).slice(-2);return p}function c(l){return l[0]<<21|l[1]<<14|l[2]<<7|l[3]}function d(){throw new _.N(_.O,4,4030);}oD(a)||d();var e=10;a[5]&64&&(e=e+4+c(a.subarray(10,14)));do{var f=c(a.subarray(e+4,e+8));1>f&&d();var g=String.fromCharCode(a[e],a[e+1],a[e+2],a[e+3]);if("PRIV"===g){g=a.subarray(e+10,e+f+10);for(var h=0;h<g.byteLength;h++)if(0===
|
|
7
|
+
g[h]){if("com.apple.streaming.transportStreamTimestamp"===unescape(b(g,0,h)))return a=g.subarray(h+1),f=(a[3]&1)<<30|a[4]<<22|a[5]<<14|a[6]<<6|a[7]>>>2,f*=4,f+=a[7]&3,Math.round(f/9E4);break}}oD(a,e)||d();e+=10;e+=f}while(e<a.byteLength);return d()},rD=function(a){for(;a.getPosition()<a.Fa()-1;){var b=a.getPosition();if(71===_.ol(a))return eD(a),b}return-1},sD=function(a){function b(){d.seek(e+188);f=_.ol(d);71!=f&&(d.seek(e+192),f=_.ol(d));71!=f&&(d.seek(e+204),f=_.ol(d));71!=f&&c();eD(d)}function c(){throw new _.N(_.O,
|
|
8
|
+
4,4030);}var d=new _.ll(new DataView(a),!1),e=0,f=0;e=rD(d);0>e&&(_.Yr.error("Unable to find sync byte in TS after scanning."),c());for(;;)if(e=d.getPosition(),f=_.ol(d),71!=f&&c(),a=_.pl(d),8191===(a&8191))b();else if(a&16384)if(a=(_.ol(d)&48)>>4,0!=a&&2!=a||c(),3==a&&(a=_.ol(d),d.skip(a)),1!=_.W(d)>>8)b();else{d.skip(3);a=_.ol(d)>>6;0!=a&&1!=a||c();0==_.ol(d)&&c();a=_.ol(d);var g=_.pl(d),h=_.pl(d);return(1073741824*((a&14)>>1)+((g&65534)<<14|(h&65534)>>1))/9E4}else b()},tD=function(a,b){var c=null,
|
|
9
|
+
d=0;try{(new _.ul).L(_.Wd,_.vl).L(_.df,_.vl).L(_.Rd,_.vl).X("mdhd",function(g){g.reader.skip(0==g.version?8:16);d=_.W(g.reader);g.parser.stop()}).parse(b,!0)}catch(g){c=g}if(c||!d)throw _.Yr.error("Unable to find timescale in init segment!"),new _.N(_.O,4,4030,FC,c);var e=0,f=!1;try{(new _.ul).L("moof",_.vl).L("traf",_.vl).X("tfdt",function(g){var h=d;if(0===g.version)h=_.W(g.reader)/h;else{var l=_.W(g.reader),m=_.W(g.reader);if(!(2097151>=l||h>=Math.pow(2,12)))throw Error("Cannot accurately parse MP4 timestamp, base time is too high and timescale is \x3c\x3d 2^12");
|
|
10
|
+
h=l/h*Math.pow(2,32)+m/h}e=h;f=!0;g.parser.stop()}).parse(a,!0)}catch(g){c=g}if(c||!f)throw new _.N(_.O,4,4030,FC,c);return e},wD=function(a){var b=dD(a,WC);if(!uD.includes(b))return vD.error("PlayReady in HLS is only supported with [",uD.join(", "),"], not",b),null;a=dD(a,_.Ab);b=_.er(a);a=null;b=_.R(b.data);try{a=_.Zw(_.vm(b))}catch(c){a=b}return _.jx(_.Zc,[{initDataType:_.Hc,initData:a}],"")},xD=function(a){this.h=new _.K("clpp.hls.MediaReader");this.f=a;this.a={attemptParameters:_.xi()}},zD=function(a,
|
|
11
|
+
b,c,d,e,f){var g,h,l,m,n,p,q,t;return _.G(function(v){switch(v.a){case 1:a.h.debug("Fetching segment to find start time");if("audio/mpeg"===d||d===_.uc||d===_.tc)return v["return"](0);g=f;if(d!==_.sc){v.G(2);break}return _.x(v,yD(a,c,g),3);case 3:return h=v.f,l=_.R(h.data),oD(l)?v["return"](qD(l)):v["return"](sD(h.data));case 2:if(d!==_.wf&&d!==_.vc){v.G(4);break}m=[yD(a,c,g)];b&&m.push(yD(a,b,!0));return _.x(v,Promise.all(m),5);case 5:return n=v.f,p=n[0],q=n[1]||n[0],v["return"](tD(p.data,q.data));
|
|
12
|
+
case 4:if(d!==_.vf){v.G(6);break}return _.x(v,yD(a,c,g),7);case 7:return t=v.f,v["return"](sD(t.data));case 6:if(!_.tx((d.split("/")[0]||"")+'/mp4;codecs\x3d"'+e+'"'))return v["return"](0);throw new _.N(_.O,4,4030);}})},yD=function(a,b,c){var d,e,f,g,h,l,m;return _.G(function(n){switch(n.a){case 1:return d=b.f(),e=_.Qx(b.Na(),b.ta,b.ta+2048-1,a.a.attemptParameters),e.type=2,f=_.Qx(b.Na(),b.ta,b.fa,a.a.attemptParameters),f.type=2,d&&(f.keyInfo=d),_.B(n,2),g=c?f:e,_.x(n,a.f(g),4);case 4:return h=n.f,
|
|
13
|
+
n["return"](h);case 2:l=_.D(n);if(7001===l.code||c)throw l;a.h.warn("Unable to fetch a partial HLS segment! Falling back to a full segment request, which is expensive! Your server should support Range requests and CORS pre-flights.",e.uris[0]);_.B(n,5);return _.x(n,a.f(f),7);case 7:return n["return"](n.f);case 5:throw m=_.D(n),a.h.error("Failed to fetch media segment to parse its start timestamp.",f.uris[0],m),new _.N(_.O,4,4030,"Failed to fetch the media segment.");}})},AD=function(a){this.streams=
|
|
14
|
+
a},BD=function(a,b){a.streams.forEach(function(c){c.ve=b})},CD=function(a,b){a.streams.forEach(function(c){c.codecs=b.join(",")})},DD=function(a,b){a.streams.forEach(function(c){c.width=b})},ED=function(a,b){a.streams.forEach(function(c){c.height=b})},FD=function(a,b){a.streams.forEach(function(c){c.frameRate=b})},GD=function(a,b){a.streams.forEach(function(c){c.bandwidth=b})},HD=function(a,b){var c=a.streams.find(function(d){d=d.S;return d[0].position<=b&&b<=d[d.length-1].position});return null==
|
|
15
|
+
c?null:c.S.find(function(d){return d.position===b})||null},ID=function(a){return a.streams[0]},JD=function(a,b){var c=a.map(function(d){return d.streams[b]});return c.some(function(d){return null==d})?null:c},KD=function(a){this.a=a},LD=function(a,b){var c=a.map(function(d){return d.a[b]});return c.some(function(d){return null==d})?null:c},MD=function(a,b){var c=new Set(a.map(function(d){return d.ba}));return b.filter(function(d){return!c.has(d.ba)})},QD=function(a,b){for(;a[0].ba<b[0].ba;)a.splice(0,
|
|
16
|
+
1);var c=a[0],d=b[0];ND(c,d)||PD(c,d);var e=a.length-1;c=a[e];d=b[e];0<e&&!ND(c,d)&&PD(c,d);for(c=e+1;c<b.length;)a.push(b[c]),c++},lE=function(a,b){var c=a[a.length-1],d=b.findIndex(function(f){return f.ba===c.ba}),e=b[d];ND(c,e)||PD(c,e);for(d+=1;d<b.length;d++)a.push(b[d])},qE=function(a,b,c,d){var e=a[0].length();e=nD(e).map(function(f){var g=LD(a,f)||[],h=JD(b,f)||[];f=JD(c,f)||[];var l=_.Of(mE(g)).concat(_.Of(h),_.Of(f)).filter(Boolean);nE(l);var m=l[0];l=m.ba;m=m.duration;return{variants:g,
|
|
17
|
+
textStreams:h,thumbStreams:f,startTime:0,id:"P"+l,endTime:m,duration:m,ba:l}});d&&oE(e[0]);pE(e);return e},mE=function(a){a=new Set(a.flatMap(function(b){return[b.video,b.audio]}).filter(Boolean));return Array.from(a)},oE=function(a){var b=mE(a.variants)[0].S[0].Ba;a.startTime+=b;a.endTime+=b},pE=function(a){for(var b=0;b<a.length;b++){var c=a[b],d=a[b-1];c.startTime=d?d.endTime:c.startTime;c.endTime=c.startTime+c.duration}},ND=function(a,b){return a.startTime===b.startTime&&a.endTime===b.endTime},
|
|
18
|
+
PD=function(a,b){a.startTime=b.startTime;a.endTime=b.endTime;a.duration=b.duration;rE(a.variants,b.variants);sE(Y.ge(a),Y.ge(b))},rE=function(a,b){var c=new Map(a.map(function(d){return[Y.cg(d),d]}));b.forEach(function(d){c.get(Y.cg(d)).drmInfos=d.drmInfos})},sE=function(a,b){var c=new Map(a.map(function(d){return[d.ya,d]}));b.forEach(function(d){var e=c.get(d.ya);e.S=d.S;e.segmentIndex.replace(d.S);e.Sb=d.Sb;e.ae=d.ae;e.duration=d.duration;e.fg=d.fg;e.encrypted=d.encrypted;e.drmInfos=d.drmInfos;
|
|
19
|
+
e.keyId=d.keyId})},nE=function(a){var b=tE(a);a.forEach(function(c){_.Lx(c.segmentIndex,b);c.duration=b;c.ae=c.Sb+b})},tE=function(a){var b=Infinity;Y.hj(a).forEach(function(c){b=Math.min(b,c.duration)});return b},uE=function(){var a=this;this.a=this.C=null;this.H=1;this.f=new pD;this.o="";this.J=new jD;this.F=0;this.g=null;this.j=new _.zj(function(){a.Db()});this.l=_.Cw;this.w=null;this.A=new _.Ji;this.B=null;this.h=new _.K("clpp.hls.HlsParser");this.D=new Map;this.K=new xD(this.Ce.bind(this));this.I=
|
|
20
|
+
!1},vE=function(a){if(null===a.g)return[];a=a.g;return[a.audio,a.video].filter(function(b){return b}).map(function(b){return b.ya})},AE=function(a,b){var c,d,e,f,g,h,l,m,n,p,q,t,v;return _.G(function(z){if(1==z.a){c=_.io;d=Y;e=wE(a,b,a.o,"");if(1===e.type){f=e.S[0].a;var A=_.Dh(f)||"";g=null!=_.Eh.video[A]?_.uf:null!=_.Eh.audio[A]?_.rc:null;h="";g===c.VIDEO?h="avc1.42E01E":g===c.AUDIO&&(h="mp4a.40.2");A=a.J;var C=a.o,F=a.a.hlsDefaultCodecs||h,E=[],H=[];H.push(new _.Ih(_.na,"0"));H.push(new _.Ih(_.Ab,
|
|
21
|
+
C));F.length&&H.push(new _.Ih(_.pa,F));E.push(new _.Gh(A.a++,SC,H));e=new fD(C,0,E)}l=Y.bl(e.Y);return _.x(z,xE(a,l),2)}m=z.f;n=m.periods;p=m.nl;if(!a.C)throw new _.N(_.O,7,7001);q=d.Aj(n[0]);A=!0;C=null;F=0;yE(a)||(A=!1,C=0,F=q.delay);C=new _.Rx(C,F,!0);C.j=A;C.l=A;zE(C,n);p&&(C.I={offsetDateTime:p-_.Zx(C,0),seekRangeStartDateTime:p});t=C;if(!yE(a)){a.F=q.xd;F=0;C=_.u(a.f.values());for(A=C.next();!A.done;A=C.next())F=Math.max(F,A.value.streams[0].Sb);for(C=0;95443.7176888889<=F;)C+=95443.7176888889,
|
|
22
|
+
F-=95443.7176888889;if(C)for(a.h.debug("Offsetting live streams by",C,"to compensate for rollover"),F=_.u(a.f.values()),A=F.next();!A.done;A=F.next())A=A.value.streams[0],95443.7176888889>A.Sb?(a.h.debug("Offset applied to",A.type),A.segmentIndex.offset(C)):a.h.debug("Offset NOT applied to",A.type)}A=Y.Cj(n);"LIVE"===a.l||"EVENT"===a.l?(A=Math.max(A,t.F),isNaN(a.a.availabilityWindowOverride)||(A=a.a.availabilityWindowOverride),t.w=A):a.l===_.Cw&&(t.f=A);v={presentationTimeline:t,adaptedPeriods:_.Of(n).concat(),
|
|
23
|
+
periods:n,offlineSessionIds:[],minBufferTime:0};a.h.debug("HLS playlist parsed",v);return z["return"](v)})},DE=function(a,b){var c,d,e,f,g,h,l,m;return _.G(function(n){if(1==n.a)return c=Y,_.x(n,BE(a,b),2);d=n.f;e=d.textStreams;f=d.thumbStreams;g=d.Gh;h=a.w.periods[0].variants;a.a.hlsLowLatency&&null!==a.g&&(h=h.filter(function(p){return p.id===a.g.id}));l=h.map(function(p){var q=c.kg(p.audio,g),t=c.kg(p.video,g);p=CE(a,q,t,p.bandwidth);if(!p)throw new _.N(_.O,4,4047,{message:"Video and audio are encrypted in an incompatible way.",
|
|
24
|
+
wm:t?ID(t).ya:void 0,audio:q?ID(q).ya:void 0});return p});m=qE(l,e,f,!0);return n["return"](m)})},BE=function(a,b){var c,d,e,f,g,h,l,m,n;return _.G(function(p){if(1==p.a)return c=_.io,d=function(q){return ID(q.stream).type===c.VIDEO||ID(q.stream).type===c.AUDIO},e=b.filter(d),f=b.filter(function(q){return!d(q)}),g=function(q){q=q.map(function(t){var v=ID(t.stream);t=Object.assign({},{Ha:t.Ha},{language:v.language,channelsCount:v.channelsCount,closedCaptions:v.closedCaptions,primary:v.primary,kind:v.kind||
|
|
25
|
+
null,groupId:v.groupId,type:v.type,codecs:v.codecs,name:v.originalId,uri:v.ya,je:{width:v.width,height:v.height,frameRate:v.frameRate}});return EE(a,t)});return Promise.all(q)},_.x(p,g(e),2);if(3!=p.a)return h=p.f,_.x(p,g(f),3);l=p.f;FE(a,h.concat(l));m=l.filter(function(q){return ID(q).type===c.zh});n=l.filter(function(q){return ID(q).type===c.IMAGE});return p["return"]({textStreams:m,thumbStreams:n,Gh:h})})},FE=function(a,b){b.forEach(function(c){a.f.a.set(ID(c).ya,c)})},xE=function(a,b){var c,
|
|
26
|
+
d,e,f,g,h,l,m,n,p;return _.G(function(q){switch(q.a){case 1:return c=Y.Xk(b.Nc.closedCaptions),d=GE(a,b.yd),_.x(q,HE(a,b),2);case 2:return e=q.f,f=Object.values(e).flat().map(function(t){return t.Ha}),IE(a,f),_.x(q,JE(a,e.Jf,d),3);case 3:return g=q.f,_.x(q,KE(a,e.yd,g,c),4);case 4:return h=q.f,_.x(q,LE(a,e.El,d),5);case 5:return l=q.f,_.x(q,ME(a,e.Pe),6);case 6:return m=q.f,n=NE(a,e),p=qE(h,l,m,!yE(a)),a.C.filterAllPeriods(p),q["return"]({periods:p,nl:n})}})},NE=function(a,b){if(yE(a))return null;
|
|
27
|
+
var c=_.Of(b.yd).concat(_.Of(b.Jf)).map(function(e){return e.Ha}).flatMap(function(e){return e.S[0].Y});c=Y.Ta(c,QC);if(!c)return null;var d=(new Date(c.value)).getTime();return isNaN(d)?(a.h.warn("Failed to parse EXT-X-PROGRAM-DATE-TIME tag value (value: "+(c.value+").")),null):d/1E3},HE=function(a,b){var c,d,e,f,g,h;return _.G(function(l){if(1==l.a)return _.x(l,Promise.all([OE(a,b.Nc.Fh),OE(a,b.Nc.Fl),OE(a,b.yd),OE(a,b.Pe)]),2);c=l.f;d=_.u(c);e=d.next().value;f=d.next().value;g=d.next().value;h=
|
|
28
|
+
d.next().value;return l["return"]({Jf:e,El:f,yd:g,Pe:h})})},QE=function(a,b){return Promise.all(b.map(function(c){return PE(a,c)}))},GE=function(a,b){for(var c=new Map,d=_.u(b),e=d.next();!e.done;e=d.next()){var f=e.value,g=_.Hh(f,"AUDIO");e=_.Hh(f,_.Ib);var h=_.Hh(f,YC);f=RE(a,f);if(h){var l=_.Ch(_.$e,f);c.set(h,l);h=f.indexOf(l);-1<h&&f.splice(h,1)}g&&(h=SE(_.rc,f),c.set(g,h));e&&(g=SE(_.uf,f),c.set(e,g))}return c},LE=function(a,b,c){return Promise.all(b.map(function(d){return TE(a,d,c)}))},ME=
|
|
29
|
+
function(a,b){return Promise.all(b.map(function(c){return UE(a,c)}))},JE=function(a,b,c){var d,e;return _.G(function(f){if(1==f.a){if(0===b.length)return f["return"](new Map);d=[TE(a,b[0],c)];return _.x(f,d[0],2)}if(3!=f.a)return d=d.concat(b.slice(1).map(function(g){return TE(a,g,c)})),_.x(f,Promise.all(d),3);e=f.f;return f["return"](Y.Hl(e))})},KE=function(a,b,c,d){var e,f,g,h,l,m,n,p,q,t,v;return _.G(function(z){if(1==z.a){e=new Set;f=_.Of(b).concat();g=0;h=Infinity;for(l=0;l<f.length;++l)m=Number(dD(f[l].tag,
|
|
30
|
+
_.na)),m<h&&(h=m,g=l);n=f.splice(g,1).pop();return _.x(z,VE(a,n,c,d,e),2)}if(3!=z.a)return p=z.f,q=f.map(function(A){return VE(a,A,c,d,e)}),_.x(z,Promise.all(q),3);t=z.f;t.splice(g,0,p);v=t.reduce(_.gx,[]);return z["return"](v)})},VE=function(a,b,c,d,e){var f,g,h,l,m,n;return _.G(function(p){return 1==p.a?(f=Y,g=b,h=g.tag,l=Number(dD(h,_.na)),m=f.fl(h),_.x(p,WE(a,b,m,c,d),2)):(n=p.f)?p["return"](XE(a,n,l,e)):p["return"]([])})},WE=function(a,b,c,d,e){var f,g,h,l,m,n,p,q,t,v,z,A,C,F,E,H,Q;return _.G(function(P){if(1==
|
|
31
|
+
P.a)return f=_.io,g=b,h=g.tag,l=g.Ha,m=RE(a,h),n=_.Hh(h,"AUDIO"),p=_.Hh(h,_.Ib),t=(q=n||p)&&d.has(q)?d.get(q):[],v={audio:n?t:[],video:p?t:[]},a.h.debug("Guessing stream type for",h.toString()),A=!1,C=l.a,F=v.audio.find(function(Ba){return Ba.ya===C}),E=_.Ch(f.VIDEO,m),H=c||E,1!==m.length||H?!t.length&&1<m.length?(a.h.debug("Guessing multiplexed audio+video"),z=f.VIDEO,m=[m.join(",")]):v.audio.length&&F?(a.h.debug(VC),z=f.AUDIO,A=!0):v.video.length?(a.h.debug(VC),z=f.AUDIO):(a.h.debug("Guessing video-only"),
|
|
32
|
+
z=f.VIDEO):(z=f.AUDIO,a.h.debug(VC)),Q=null,A?P.G(2):_.x(P,YE(a,b,m,z,e,c),3);2!=P.a&&(Q=P.f);if(null==Q)return P["return"](null);v[z]=[Q];z===f.AUDIO&&c&&t.forEach(function(Ba){DD(Ba,c.width);ED(Ba,c.height);FD(Ba,c.frameRate)});Y.fj(v);return P["return"](v)})},XE=function(a,b,c,d){var e=b.video,f=b.audio;e=0<e.length?e:[null];b=[];f=_.u(0<f.length?f:[null]);for(var g=f.next();!g.done;g=f.next()){g=g.value;for(var h=_.u(e),l=h.next();!l.done;l=h.next()){var m=l.value;l=Y.cj(g,m);d.has(l)?a.h.debug("Skipping variant which only differs in text streams."):
|
|
33
|
+
(m=CE(a,g,m,c),null==m?a.h.warn("Incompatible DRM info in HLS variant. Skipping."):(b.push(m),d.add(l)))}}return b},CE=function(a,b,c,d){for(var e=[],f=(c||b).length(),g=0;g<f;g++){var h=b?b.streams[g]||null:null,l=c?c.streams[g]||null:null,m=Y.uj(h,l);if(!m)return null;var n=d;h={id:a.H++,language:h?h.language:_.ff,primary:!!h&&h.primary||!!l&&l.primary,audio:h,video:l,bandwidth:n,drmInfos:m,allowedByApplication:!0,allowedByKeySystem:!0};e.push(h)}return new KD(e)},TE=function(a,b,c){var d,e,f,g;
|
|
34
|
+
return _.G(function(h){d=b;e=d.tag;f=d.Ha;g=f.a;return h["return"](ZE(a,g,function(){var l,m,n,p,q,t,v,z,A,C,F,E,H;return _.G(function(Q){if(1==Q.a)return l=_.io,m=dD(e,_.Ma),n=Y.ag(dD(e,_.yb)),p=Y.Zi(e),q=c.get(m)||"",t=_.Hh(e,_.Ua),v=_.Hh(e,"NAME"),z=e.getAttribute("DEFAULT"),A=e.getAttribute("AUTOSELECT"),C=_.Hh(e,"CHANNELS"),F=n===l.AUDIO?C?parseInt(C.split("/")[0],10):null:null,E=!!z&&!!A,_.x(Q,EE(a,{Ha:f,codecs:q,type:n,od:t,primary:E,name:v,channelsCount:F,groupId:m,kind:p,closedCaptions:null,
|
|
35
|
+
je:null}),2);H=Q.f;return Q["return"](H)})}))})},UE=function(a,b){var c,d,e,f;return _.G(function(g){c=b;d=c.tag;e=c.Ha;f=e.a;return g["return"](ZE(a,f,function(){var h,l,m,n,p;return _.G(function(q){if(1==q.a)return h=_.Hh(d,_.pa)||"jpg",l=_.Hh(d,_.Ua),m=_.Hh(d,"NAME"),_.x(q,EE(a,{Ha:e,codecs:h,type:_.Ed,od:l,name:m,primary:!1,kind:null,channelsCount:null,closedCaptions:null,groupId:null,je:null}),2);n=q.f;(p=_.Hh(d,_.na))&&GD(n,Number(p));return q["return"](n)})}))})},RE=function(a,b){var c=_.Hh(b,
|
|
36
|
+
_.pa,a.a.hlsDefaultCodecs||"avc1.42E01E,mp4a.40.2").split(/\s*,\s*/),d=new Set,e=[];c=_.u(c);for(var f=c.next();!f.done;f=c.next()){f=f.value;var g=_.Ax(f)[0];d.has(g)?a.h.debug("Ignoring duplicate codec"):(e.push(f),d.add(g))}return e},YE=function(a,b,c,d,e,f){var g,h,l,m,n;return _.G(function(p){g=b;h=g.tag;l=g.Ha;m=_.io;n=l.a;return p["return"](ZE(a,n,function(){var q,t,v,z;return _.G(function(A){if(1==A.a)return q=_.Hh(h,EC),t=null,d===m.VIDEO&&q&&"NONE"!==q&&(t=e.get(q)),v=SE(d,c),_.x(A,EE(a,
|
|
37
|
+
{Ha:l,codecs:v,type:d,closedCaptions:t,primary:!1,kind:null,od:null,name:null,channelsCount:null,groupId:null,je:f}),2);z=A.f;return A["return"](z)})}))})},ZE=function(a,b,c){if(a.f.has(b))return a=a.f.get(b),Promise.resolve(a);if(a.f.f.has(b))return a.f.f.get(b)||null;c=c();a.f.set(b,c);return c},EE=function(a,b){var c,d,e,f,g,h,l,m,n,p,q,t,v,z,A,C,F,E,H,Q,P,Ba,ta,ya,Ja;return _.G(function(Ha){if(1==Ha.a){c=$E;d=_.DC;e=_.io;f=Y;g=b;h=g.Ha;l=g.codecs;m=g.type;n=g.od;p=g.groupId;q=g.primary;t=g.kind;
|
|
38
|
+
v=g.name;z=g.channelsCount;A=g.closedCaptions;C=g.je;F=Y.sg(n);if(1!==h.type)throw new _.N(_.O,4,4017);E=Y.dl(h.Y);aF(a,E);H=Y.al(h.Y,E,a.a.hlsLowLatency||!1);return _.x(Ha,bF(a,h,m,l),2)}Q=Ha.f;P=a.a.hlsLowLatency?d.Wl:d.Xl;Ba=t;m!==e.TEXT||t||(Ba=_.Xe);ta=f.ah(h.Y);ya=ta.Hd;Ja=Q.map(function(ma){var la=ma.S,Ea=ma.gj,Bb=ma.mimeType;ma=ma.ba;var Wb=la[0].startTime,Hb=la[la.length-1].endTime,nf=Hb-Wb,id=new _.dy(la),qm=la[0].initSegment||null;return{id:a.H++,originalId:v,createSegmentIndex:Promise.resolve.bind(Promise),
|
|
39
|
+
findSegmentPosition:id.Cc.bind(id),getSegmentReference:id.get.bind(id),adjustSegmentDurations:id.Wc.bind(id),getDuration:id.getDuration.bind(id),segmentIndex:id,segmentLookupStrategy:P,initSegmentReference:qm,mimeType:Bb,codecs:l,kind:Ba,fg:Ea.type,encrypted:Ea.type===c.yh,keyId:Ea.keyId,language:F,originalLanguage:n||_.ff,label:v,type:m,primary:q,trickModeVideo:null,emsgSchemeIdUris:null,frameRate:C?C.frameRate:void 0,width:C?C.width:void 0,height:C?C.height:void 0,bandwidth:void 0,roles:[],channelsCount:z,
|
|
40
|
+
closedCaptions:A,keyInfo:Ea.keyInfo,S:la,drmInfos:Ea.drmInfos,ba:ma,ya:h.a,ve:h.f,Sb:Wb,ae:Hb,duration:nf,Hd:ya,groupId:p,Zj:H}});return Ha["return"](new AD(Ja))})},OE=function(a,b){var c;return _.G(function(d){if(1==d.a)return _.x(d,Promise.all(b.map(function(e){var f;return _.G(function(g){if(1==g.a)return _.x(g,cF(a,e),2);f=g.f;return g["return"](f?{tag:e,Ha:f}:null)})})),2);c=d.f;return d["return"](c.filter(Boolean))})},cF=function(a,b){var c,d,e,f,g,h,l;return _.G(function(m){if(1==m.a){c=Y.Wj(b);
|
|
41
|
+
d=_.Hh(b,_.Ab,void 0,{required:c});if(!d)return m["return"](null);e=Y.dd(a.o,d);return _.x(m,dF(a,e),2)}f=m.f;g=f.response;h=f.text;l=g.uri;return m["return"](wE(a,h,l,d))})},PE=function(a,b){var c,d,e,f,g,h,l,m;return _.G(function(n){if(1==n.a){var p=new _.ph(ID(b).ve);if(a.a.hlsLowLatency&&ID(b).Hd){var q=b.streams[b.streams.length-1].segmentIndex;if(q=q.a[q.a.length-1]){var t=q.a,v=t.length-1;q={bk:q.position,gl:t&&0<t.length?v:null}}else q=null;if(t=q)q=t.bk,t=t.gl,v=_.fj(p.a.toString()),v._HLS_msn=
|
|
42
|
+
q.toString(),null===t&&v._HLS_part&&delete v._HLS_part,null!==t&&(v._HLS_part=t.toString()),q=_.ej(v,!0),_.sh(p,new _.wh(q))}c=p.toString();return _.x(n,dF(a,c),2)}d=n.f;e=d.response;f=d.text;g=ID(b).ya;h=ID(b).ve;l=e.uri;h!==l&&(h=l,BD(b,h));m=wE(a,f,h,g);return n["return"]({stream:b,Ha:m})})},wE=function(a,b,c,d){a:{a=a.J;b=b.trim().split(/\n+/m);if(!/^#EXTM3U($|[ \t\n])/m.test(b[0]))throw new _.N(_.O,4,4015);var e=0;for(var f=!0,g=_.u(b),h=g.next();!h.done;h=g.next())if(h=h.value,h=h.trim(),!h.length||
|
|
43
|
+
Y.Re(h)||f)f=!1;else if(h=_.vi(0,h),kD.includes(h.name)){e=1;break}else h.name===SC&&(f=!0);f=[];g=!0;h=_.u(_.CC(b));for(var l=h.next();!l.done;l=h.next()){var m=l.value;l=m.Oe;var n=m.item;m=m.next;n=n.trim();if(!n.length||Y.Re(n)||g)g=!1;else{n=_.vi(a.a++,n);if(eF.includes(n.name)){if(1!==e)throw new _.N(_.O,4,4017);b=b.splice(l,b.length-l);a=mD(a,c,b);c=new fD(c,e,f.concat(a.Y),a.S);break a}f.push(n);n.name===SC&&(n.attributes.push(new _.Ih(_.Ab,m)),g=!0)}}c=new fD(c,e,f)}c.a=d;fF(c);return c},
|
|
44
|
+
fF=function(a){1===a.type&&a.S.forEach(function(b,c){if(Y.Pb(b.Y,LC)&&!Y.Pb(b.Y,HC)&&0<c)throw new _.N(_.O,4,4046,"Media playlist contains an EXT-X-MAP tag not accompanied by an EXT-X-DISCONTINUITY tag.");})},gF=function(a){if(1<(new Set(a.map(function(b){return b.mimeType}))).size)throw new _.N(_.O,4,4045,"Media playlist contains discontinuities with different MIME types. This is valid, but not yet supported.");},hF=function(a){a=a.map(function(b){return b.a?b.a:b.f.map(function(c){return _.Hh(c,
|
|
45
|
+
_.Ab)})||null}).map(function(b){return _.Dh(b)});if(1<(new Set(a)).size)throw new _.N(_.O,4,4044,"Unexpected change in file format.");},iF=function(a,b,c){a=Y.Hc(a.Y,LC);if(1<a.length)throw new _.N(_.O,4,4020);a=a[0];if(!a)return null;var d=dD(a,_.Ab),e=Y.dd(b,d);b=Y.Zg(a,null,!0);return new _.kx(function(){return[e]},b.ta,b.fa,c)},jF=function(a,b,c,d,e,f,g){var h=[],l={};b=_.u(_.CC(b.f));for(var m=b.next();!m.done;l={le:l.le},m=b.next()){var n=m.value;m=n.Oe;n=n.item;var p=0===m,q=p?a:h[h.length-
|
|
46
|
+
1],t=p?d:q.endTime,v=Number(_.Hh(n,"DURATION"));v=t+v;p=Y.Zg(n,p?null:q.fa,p);q=_.Hh(n,_.Ab);q=Y.dd(g,q);l.le=q?[q]:[];t=new hD(c,t,v,function(z){return function(){return z.le}}(l),p.ta,p.fa,e,f,!1,null,null,null,null);if("YES"===_.Hh(n,"INDEPENDENT")||0===m)t.g=!0;h.push(t)}return h},kF=function(a,b,c,d,e,f,g,h,l,m,n){var p=c.Y,q=c.a,t=null!=q,v=q?[q]:[];if(!t&&!a.a.hlsLowLatency)return null;a=0;q={ta:0,fa:null};var z=null;t?(c=Y.$k(p).duration,a=e+c,q=Y.$g(p,b?b.fa:null)):(b=jF(b,c,d,e,f,g,l),a=
|
|
47
|
+
b[b.length-1].endTime,z=b);h=h===_.Ed?Y.el(p):null;d=new hD(d,e,a,function(){return v},q.ta,q.fa,f,g,!1,null,h?h.vg:null,h?h.sh:null,h?h.durationPerTile:null,z);d.ba=m;d.initSegment=n||void 0;return d},bF=function(a,b,c,d){var e,f,g,h,l,m,n,p,q,t,v,z,A,C;return _.G(function(F){switch(F.a){case 1:return e=Y,f=lF,g=mF,h=b.a,l=b.S,m=e.yj(b.Y,MC),n=[],!yE(a)&&g.Eh(l),_.x(F,nF(a,b.f,h,l,m,c,d),2);case 2:p=F.f,q=m,t=f.Cl(l),v=0;case 3:if(!(v<t.length)){F.G(5);break}z=t[v];A=n[n.length-1]||null;return _.x(F,
|
|
48
|
+
oF(a,b.f,z,q,p,c,d,A,t.length),6);case 6:C=F.f;n.push(C);q+=z.length;v++;F.G(3);break;case 5:return gF(n),F["return"](n)}})},nF=function(a,b,c,d,e,f,g){var h,l,m,n,p,q,t,v,z,A,C,F;return _.G(function(E){if(1==E.a){h=d[0];if(null!=a.B)return E["return"](a.B);if(!yE(a)&&a.w)try{var H=a.f.get(c),Q=H?HD(H,e)||null:null;if(!Q)throw new _.N(_.O,4,4030,"Segment not found in pervious playlist update.");l=Q.startTime+Q.Ba;a.h.debug(ZC+l+".");a.B=l;return E["return"](l)}catch(P){if(m=a.f.get(c))n=m.streams[0].S[0].position,
|
|
49
|
+
E=m.streams[m.streams.length-1].S,p=E[E.length-1].position,q=e,t=e+d.length-1,a.h.warn("Last #EXT-X-MEDIA-SEQUENCE values "+n+" - "+p+(", new values "+q+" - "+t+"."),b,m);throw new _.N(_.O,4,4047,{message:"The updated playlist does not share any segments with the previous one.",uri:c});}return _.x(E,pF(a,f,g,h),2)}if(3!=E.a)return v=E.f,z=mF.cl(h,a.o,v),A=iF(h,b,z.keyInfo),C=Y.Le(z.keyInfo,e),_.x(E,qF(a,A,h,C,v,g),3);F=E.f;a.h.debug(ZC+F+".");a.B=F;return E["return"](F)})},oF=function(a,b,c,d,e,f,
|
|
50
|
+
g,h,l){var m,n,p,q,t,v,z,A,C,F,E,H,Q,P,Ba,ta,ya,Ja,Ha,ma,la;return _.G(function(Ea){switch(Ea.a){case 1:return m=Y,n=mF,p=c[0],q=null==h,hF(c),_.x(Ea,pF(a,f,g,p),2);case 2:t=Ea.f;v=n.Zk(c,a.o,t,h?h.Yj:null,1===l);z=v[v.length-1];A=mF.va(v);C=iF(p,b,A.keyInfo)||(h?h.Oj:null);F=Y.Le(A.keyInfo,d);E=p.ba;if(q){H=e;Ea.G(3);break}return _.x(Ea,rF(a,E,C,p,d,F,t,g),4);case 4:H=Ea.f;case 3:Q=H;P=[];for(Ba=0;Ba<c.length;Ba++)ta=c[Ba],ya=P[P.length-1]||null,Ja=0===Ba?0:ya.endTime,Ha=d+Ba,ma=m.Le(A.keyInfo,Ha),
|
|
51
|
+
(la=kF(a,ya,ta,Ha,Ja,Q,ma,f,b,E,C))&&P.push(la);return Ea["return"]({S:P,gj:A,Yj:z,mimeType:t,endTime:P[P.length-1].endTime,ba:E,Oj:C})}})},IE=function(a,b){b.forEach(function(c){var d=a.f.get(c.a);lF.Kh(c,d,!yE(a))});lF.dj(b)},rF=function(a,b,c,d,e,f,g,h){var l;return _.G(function(m){if(1==m.a)return a.D.has(b)?m["return"](a.D.get(b)):_.x(m,qF(a,c,d,f,g,h),2);l=m.f;a.h.debug("Segment #"+e+" has raw media timestamp "+(l+" s."));a.D.set(b,l);return m["return"](l)})},qF=function(a,b,c,d,e,f){var g;
|
|
52
|
+
return _.G(function(h){if(null==c.a)return h["return"](0);g=Y.bj(c,d);return h["return"](zD(a.K,b,g,e,f,null!=d))})},SE=function(a,b){if(1===b.length)return b[0];var c=_.Ch(a,b);if(null!=c)return c;throw new _.N(_.O,4,4025,{codecList:b});},pF=function(a,b,c,d){var e,f,g;return _.G(function(h){e=d.a;g=(f=Y.Ta(d.Y,LC))?dD(f,_.Ab):null;return h["return"](sF(a,b,c,e,g))})},sF=function(a,b,c,d,e){var f,g,h,l,m;return _.G(function(n){if(1==n.a){f=[d,e].filter(Boolean);if(g=_.Fh(f,b,c))return n["return"](g);
|
|
53
|
+
h=_.Ai([d],a.a.attemptParameters);h.method="HEAD";h.type=2;return _.x(n,a.Ce(h),2)}l=n.f;m=l.headers["content-type"];if(!m)throw new _.N(_.O,4,4021,"Unknown MIME type of: "+f.join(", "));return n["return"](m.split(";")[0])})},dF=function(a,b){var c,d,e;return _.G(function(f){if(1==f.a)return c=_.Ai([b],a.a.attemptParameters),c.type=1,_.x(f,a.Ce(c),2);d=f.f;e="";try{e=_.Yh(d.data)}catch(g){throw new _.N(_.O,4,4042);}e=e.replace(/\r\n|\r(?=[^\n]|$)/gm,"\n");e=e.trim();return f["return"]({text:e,response:d})})},
|
|
54
|
+
yE=function(a){return a.l===_.Cw},aF=function(a,b){a.l=b;yE(a)&&a.j.stop()},zE=function(a,b){Y.Fg(b,function(c,d){_.Ux(a,c.S,d.startTime)})},tF=function(){};_.w(hD,_.lx);
|
|
55
|
+
var $E={yh:bD,am:cD,NONE:_.$d},Y={Hc:function(a,b){return a.filter(function(c){return c.name===b})},Ie:function(a,b){var c=Array.isArray(b)?b:[b];return a.filter(function(d){d=dD(d,_.yb);return c.includes(d)})},Pb:function(a,b){return a.some(function(c){return c.name===b})},Ta:function(a,b,c){c=void 0===c?{}:c;a=a.find(function(d){return d.name===b})||null;if(!a&&c.required)throw new _.N(_.O,4,4024,{missingTag:b});return a},ug:function(a,b){return Y.Ta(a,b,{required:!0})},yj:function(a,b,c){c=void 0===
|
|
56
|
+
c?0:c;return(a=Y.Ta(a,b))?Number(a.value):c},mm:function(a,b,c){return a.filter(function(d){var e=d.getAttribute(_.yb);d=d.getAttribute(_.Ma);return e.value==b&&d.value==c})},el:function(a){a=Y.Ta(a,"EXT-X-TILES");if(!a)return{vg:1,sh:1,durationPerTile:null};var b=_.Hh(a,"LAYOUT")||"1x1";a=(a=_.Hh(a,"DURATION"))?Number(a):null;var c=_.u(b.split("x").map(function(d){return parseInt(d,10)}));b=c.next().value;c=c.next().value;return{vg:b,sh:c,durationPerTile:a}},dd:function(a,b){return _.ix([a],[b])[0]},
|
|
57
|
+
Re:function(a){return/^#(?!EXT)/m.test(a)},Fg:function(a,b){Array.isArray(a)||(a=[a]);a.forEach(function(c){for(var d=_.u(Y.ge(c)),e=d.next();!e.done;e=d.next())b(e.value,c)})},ge:function(a){var b=new Set;a.variants.forEach(function(c){c.audio&&b.add(c.audio);c.video&&b.add(c.video)});a.textStreams.forEach(function(c){return b.add(c)});a.thumbStreams.forEach(function(c){return b.add(c)});return Array.from(b)},Lj:function(a){return a.some(function(b){return Y.Pb(b.Y,JC)})},Hh:function(a){return Y.ge(a).filter(Y.Ag)},
|
|
58
|
+
dl:function(a){var b=Y.Ta(a,OC);if(Y.Ta(a,JC))return _.Cw;if(!b)return"LIVE";if(b.value===_.Cw)return _.Cw;if("EVENT"===b.value)return"EVENT";throw new _.N(_.O,4,4044,"Invalid EXT-X-PLAYLIST-TYPE value: "+b.value);},ag:function(a){a={AUDIO:_.rc,VIDEO:_.uf,SUBTITLES:_.$e,"CLOSED-CAPTIONS":_.$e}[a.toUpperCase()];if(!a)throw new _.N(_.O,4,4044,"EXT-X-MEDIA tag has an invalid TYPE attribute.");return a},Zi:function(a){var b=dD(a,_.yb).toUpperCase();if(Y.ag(b)!==_.$e)return null;a=a.getAttribute("FORCED");
|
|
59
|
+
a=!(!a||!a.value||"YES"!==a.value.toUpperCase());var c=_.Xe;b===EC&&(c=_.Hw);a&&(c="forced");return c},Yg:function(a,b,c){c=void 0===c?!1:c;var d=0,e=null;if(a){d=a.split("@");a=Number(d[0]);if(0>=a)throw new _.N(_.O,4,4044,"Byte range length must be positive.");if(d[1]){if(d=Number(d[1]),0>d)throw new _.N(_.O,4,4044,"Byte range start byte must not be negative.");}else{if(c)throw new _.N(_.O,4,4044,"Invalid byte range, offset is required but missing.");if(null==b)throw new _.N(_.O,4,4044,"Invalid byte range, cannot calculate offset based on previous byte ranges.");
|
|
60
|
+
d=b+1}e=d+a-1}return{ta:d,fa:e}},$g:function(a,b){var c=Y.Ta(a,GC);return Y.Yg(c?c.value:null,b)},$k:function(a){a=Y.ug(a,"EXTINF").value.split(",");return{duration:Number(a[0]),title:a[1]||null}},ah:function(a,b){function c(f){return null==f?null:Number(f)}b=void 0===b?{}:b;var d={Hd:!1,Lh:!1,Mh:null,Mj:null,bh:null},e=Y.Ta(a,RC,{required:b.ih});if(!e)return d;d.Hd="YES"===_.Hh(e,"CAN-BLOCK-RELOAD");d.Lh="YES"===_.Hh(e,"CAN-SKIP-DATERANGES");d.Mh=c(_.Hh(e,"CAN-SKIP-UNTIL"));d.Mj=c(_.Hh(e,"HOLD-BACK"));
|
|
61
|
+
d.bh=c(_.Hh(e,"PART-HOLD-BACK",void 0,{required:b.ih}));return d},Zg:function(a,b,c){c=void 0===c?!1:c;a=_.Hh(a,"BYTERANGE");return Y.Yg(a,b,c)},bl:function(a){var b=Y.Hc(a,"EXT-X-MEDIA"),c=Y.Hc(a,SC);a=Y.Hc(a,"EXT-X-IMAGE-STREAM-INF");return{Nc:{Fh:Y.Ie(b,["AUDIO",_.Ib]),closedCaptions:Y.Ie(b,EC),Fl:Y.Ie(b,YC)},yd:c,Pe:a}},bj:function(a,b){var c=Y.$g(a.Y,null);return new hD(0,0,0,function(){return[a.a]},c.ta,c.fa,0,b)},Le:function(a,b){if(null==a)return null;var c=Object.assign({},a);null==c.iv&&
|
|
62
|
+
(c.iv=_.si(new Uint8Array(12),new Uint8Array([b>>24&255,b>>16&255,b>>8&255,b&255])));return c},Gj:function(a){var b=a.S;a=b[0].startTime;b=b[b.length-1].endTime;return{Sb:a,ae:b,duration:b-a}},Dj:function(a){var b=Infinity,c=Infinity;Y.Hh(a).forEach(function(d){d=Y.Gj(d);b=Math.min(b,d.Sb);c=Math.min(c,d.duration)});return{Sb:b,duration:c}},Ag:function(a){return a.type===_.rc||a.type===_.uf},hj:function(a){return a.filter(Y.Ag)},Cj:function(a){return a.map(function(b){return Y.Dj(b).duration}).reduce(function(b,
|
|
63
|
+
c){return b+c},0)},uj:function(a,b){return a&&b?_.rx(a.drmInfos,b.drmInfos)?_.qx(a.drmInfos,b.drmInfos):null:a?a.drmInfos:b?b.drmInfos:null},cj:function(a,b){return(b?ID(b).ya:"")+" - "+(a?ID(a).ya:"")},cg:function(a){return(a.video?a.video.ya:"")+" - "+(a.audio?a.audio.ya:"")},al:function(a,b,c){if(b===_.Cw)return{delay:0,xd:0};b=Y.Ta(a,NC);if(c&&b)return c=Number(dD(b,"PART-TARGET")),{delay:Y.ah(a,{ih:!0}).bh,xd:c};a=Y.ug(a,TC);a=Number(a.value);return{delay:3*a,xd:a}},Aj:function(a){var b=[];Y.Fg(a,
|
|
64
|
+
function(c){b.push(c.Zj)});return{delay:Math.max.apply(Math,_.Of(b.map(function(c){return c.delay}))),xd:Math.min.apply(Math,_.Of(b.map(function(c){return c.xd})))}},Hl:function(a){var b=new Map;a.forEach(function(c){var d=ID(c).groupId;b.has(d)?(d=b.get(d),d.includes(c)||d.push(c)):b.set(d,[c])});return b},sg:function(a){return _.Jh(a||_.ff)},Xk:function(a){var b=new Map;a=_.u(a);for(var c=a.next();!c.done;c=a.next()){c=c.value;var d=_.Hh(c,_.Ua);d=Y.sg(d);var e=dD(c,_.Ma);c=dD(c,"INSTREAM-ID");
|
|
65
|
+
b.has(e)||b.set(e,new Map);b.get(e).set(c,d)}return b},fj:function(a){a=_.u(a.audio.concat(a.video));for(var b=a.next();!b.done;b=a.next()){b=b.value;var c=ID(b).codecs.split(",").filter(function(d){return"mp4a.40.34"!==d});CD(b,c)}},fl:function(a){if(null==a.getAttribute("FRAME-RATE")&&null==a.getAttribute(_.nb))return null;var b=_.Hh(a,"FRAME-RATE");a=_.Hh(a,_.nb);var c=_.u(a?a.split("x"):[null,null]);a=c.next().value;c=c.next().value;return{frameRate:iD(b),width:iD(a),height:iD(c)}},Wj:function(a){return"EXT-X-MEDIA"!==
|
|
66
|
+
a.name?!0:_.Hh(a,_.yb)===YC},kg:function(a,b){if(!a)return null;var c=a.ya;return b.find(function(d){return ID(d).ya===c})||null}},eF=["EXTINF",GC,"EXT-X-DATERANGE",HC,KC,LC,QC],kD=[IC,JC,"EXT-X-I-FRAMES-ONLY",MC,NC,OC,RC,TC],lD=["EXT-X-PART",PC];_.r=pD.prototype;_.r.set=function(a,b){var c=this;this.f.set(a,b);return b.then(function(d){return c.a.set(a,d)})["catch"](function(){}).then(function(){return c.f["delete"](a)})};_.r.has=function(a){return this.a.has(a)};
|
|
67
|
+
_.r.get=function(a){return this.a.get(a)||null};_.r.values=function(){return Array.from(this.a.values())};_.r.clear=function(){this.f.clear();this.a.clear()};
|
|
68
|
+
var lF={dj:function(a){var b=lF.oj(a),c=lF.Xj(a);a.forEach(function(d){var e=d.S,f=e.findIndex(function(h){return h.ba===b}),g=e.findIndex(function(h){return h.ba===c+1});-1===g&&(g=e.length);d.S=e.slice(f,g)})},Kh:function(a,b,c){b=lF.xj(a,b,c);a=_.u(a.S||[]);for(c=a.next();!c.done;c=a.next())c=c.value,Y.Pb(c.Y,HC)&&b++,c.ba=b},xj:function(a,b,c){var d=Y.Ta(a.Y,IC);if(d)return Number(d.value);d=lF.Qj(b);if(c&&d)try{return lF.Nj(a,b)}catch(e){throw new _.N(_.O,4,4024,"EXT-X-DISCONTINUITY-SEQUENCE tag is required for discontinuous HLS live streams.");
|
|
69
|
+
}return 0},Qj:function(a){return 0<lF.zj(a)},Cl:function(a){if(0===a.length)return[];var b=[],c=[];a=_.u(a);for(var d=a.next();!d.done;d=a.next())d=d.value,Y.Pb(d.Y,HC)&&0<c.length&&(b.push(c),c=[]),c.push(d);b.push(c);return b},zj:function(a){if(!a)return 0;a=a.streams[a.streams.length-1].S;return a[a.length-1].ba},Nj:function(a,b){var c=Y.Ta(a.Y,MC);if(!c)throw lF.h.error("Failed to infer discontinuity number, because EXT-X-MEDIA-SEQUENCE tag is missing."),Error(UC);c=Number(c.value);var d=HD(b,
|
|
70
|
+
c);if(!d)throw lF.h.error("Failed to infer discontinuity number, could not find the appropriate segment in the previous playlist (segment position \x3d "+(c+")")),Error(UC);return d.ba},Xj:function(a){a=a.map(function(b){return b.S[b.S.length-1].ba});return Math.min.apply(Math,_.Of(a))},oj:function(a){a=a.map(function(b){return b.S[0].ba});return Math.max.apply(Math,_.Of(a))}};lF.h=new _.K("clpp.hls.DiscontinuityUtils");var uF={"com.apple.streamingkeydelivery":function(a,b){if(b===_.vf)throw new _.N(_.O,4,4041);if(dD(a,WC)===XC)throw new _.N(_.O,4,4044,"EXT-X-KEY:METHOD SAMPLE-AES-CTR is not supported in FairPlay.");return _.jx(_.Yc,[{initDataType:_.Oe,initData:new Uint8Array(0)}],"")},"com.microsoft.playready":wD,"urn:uuid:9a04f079-9840-4286-ab92-e65be0885f95":wD,"urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed":function(a){var b=dD(a,WC);if(!uD.includes(b))return vD.error("Widevine in HLS is only supported with [",
|
|
71
|
+
uD.join(", "),"], not",b),null;b=dD(a,_.Ab);b=_.er(b);b=_.R(b.data);b=_.jx(_.ad,[{initDataType:_.Hc,initData:b}],"");if(a=_.Hh(a,"KEYID"))b.keyIds=[a.substr(2).toLowerCase()];return b}},uD=["SAMPLE-AES",XC],vD=new _.K("clpp.hls.DrmParser");var mF={cl:function(a,b,c){return mF.lf(a.Y,b,c)||{type:_.$d,keyInfo:null,drmInfos:[],keyId:null}},Zk:function(a,b,c,d,e){if(a.slice(1).some(mF.wg))throw new _.N(_.O,4,4046,e?"Media playlist contains an EXT-X-KEY tag with METHOD\x3dAES-128 which is not at the beginning of the playlist.":"Media playlist contains an EXT-X-KEY tag with METHOD\x3dAES-128 which is not marked by an EXT-X-DISCONTINUITY tag and is not at the beginning of the playlist.");if(Y.Pb(a[0].Y,KC)||null===d){if((d=mF.lf(a[0].Y,b,
|
|
72
|
+
c))&&d.type===cD){if(1<mF.bg(a))throw new _.N(_.O,4,4046,$C+((e?"playlist":"discontinuity")+"."));return[d]}a=mF.Xg(a,b,c);return 0===a.length?[{type:_.$d,keyInfo:null,drmInfos:[],keyId:null}]:a}b=mF.Xg(a,b,c);if(d.type===_.$d||d.type===bD)return[d].concat(_.Of(b));if(0<mF.bg(a))throw new _.N(_.O,4,4046,$C+((e?"playlist":"discontinuity")+"."));return[d]},va:function(a){if(0===a.length)return{type:_.$d,keyInfo:null,drmInfos:[],keyId:null};if(a.some(function(c){return c.type===cD})||a.every(function(c){return c.type===
|
|
73
|
+
_.$d}))return a[0];a=a.filter(function(c){return c.type===bD});var b=_.Xg(a.flatMap(function(c){return c.drmInfos}));return{keyInfo:null,keyId:a[a.length-1].keyId,type:bD,drmInfos:b}},Eh:function(a){a=mF.jg(a);if(a.some(function(b){return mF.wg(b)})&&1<a.length)throw new _.N(_.O,4,4046,"Two EXT-X-KEY tags, one with METHOD\x3dAES-128 are applied to one playlist.");},wg:function(a){return Y.Hc(a.Y,KC).some(function(b){return"AES-128"===_.Hh(b,WC)})},Xg:function(a,b,c){return mF.jg(a).map(function(d){return mF.lf(d.Y,
|
|
74
|
+
b,c)})},bg:function(a){return a.filter(function(b){return Y.Pb(b.Y,KC)}).length},jg:function(a){return a.filter(function(b){return Y.Pb(b.Y,KC)})},lf:function(a,b,c){a=Y.Hc(a,KC);if(0===a.length)return null;var d=dD(a[0],WC);if(1===a.length){if("NONE"===d)return{type:_.$d,keyInfo:null,drmInfos:[],keyId:null};if("AES-128"===d)return a=a[0],d=_.Hh(a,"IV",""),{type:cD,keyInfo:{method:"AES-128",url:Y.dd(b,dD(a,_.Ab)),iv:d?_.pi((d||"0x").slice(2)):null},drmInfos:[],keyId:null}}b=a.map(function(e){return dD(e,
|
|
75
|
+
WC)});if(!b.every(function(e){return"SAMPLE-AES"===e})&&!b.every(function(e){return e===XC}))throw mF.h.warn("EXT-X-KEY methods "+b.join(", ")+" are incompatible."),new _.N(_.O,4,4044,"Multiple EXT-X-KEY tags with incompatible METHOD values.");b=a.map(function(e){var f=_.Hh(e,"KEYFORMAT","identity"),g=uF[f]||null;(e=g?g(e,c):null)||mF.h.warn("Unsupported HLS KEYFORMAT",f);return e}).filter(Boolean);if(0===b.length)throw new _.N(_.O,4,4026);return{keyInfo:null,keyId:b.map(function(e){return e.keyIds}).reduce(function(e,
|
|
76
|
+
f){return e.concat(f)},[]).reverse()[0]||null,type:bD,drmInfos:b}},qm:function(){return{type:_.$d,keyInfo:null,drmInfos:[],keyId:null}}};mF.h=new _.K("clpp.hls.EncryptionUtils");AD.prototype.length=function(){return this.streams.length};KD.prototype.length=function(){return this.a.length};_.r=uE.prototype;_.r.configure=function(a){this.a=a;this.K.a=a};_.r.setCurrentVariant=function(a){this.g=a};_.r.start=function(a,b){var c=this,d,e,f,g,h;return _.G(function(l){if(1==l.a){if(c.I)throw Error("start() may be called only once!");c.I=!0;c.C=b;return _.x(l,dF(c,a),2)}if(3!=l.a)return d=l.f,e=d.response,f=d.text,c.o=e.uri,_.x(l,AE(c,f),3);g=l.f;c.w=g;h=c.F;0<h&&c.j.$(h);return l["return"](g)})};
|
|
77
|
+
_.r.stop=function(){this.j&&(this.j.stop(),this.j=null);var a=[];this.A&&(a.push(this.A.destroy()),this.A=null);this.f.clear();this.w=this.a=this.C=this.g=null;return Promise.all(a)};_.r.onExpirationUpdated=function(){};
|
|
78
|
+
_.r.update=function(){var a=this,b,c,d,e,f,g,h;return _.G(function(l){if(1==l.a){b=a.w;if(yE(a)||!b)return l["return"]();c=b.presentationTimeline;"LIVE"===a.l&&(a.B=null);d=Array.from(a.f.values());a.a.hlsLowLatency&&null!==a.g&&(e=vE(a),d=d.filter(function(m){return e.includes(ID(m).ya)}));return _.x(l,QE(a,d),2)}if(3!=l.a)return f=l.f,g=f.map(function(m){return m.Ha}),IE(a,g),_.x(l,DE(a,f),3);h=l.f;MD(b.periods,h).forEach(function(m){a.C.filterNewPeriod(m)});QD(b.periods,h);lE(b.adaptedPeriods,
|
|
79
|
+
h);zE(c,h);Y.Lj(g)&&(aF(a,_.Cw),c.j=!0,c.l=!0,c.f=h[h.length-1].endTime);_.y(l)})};_.r.Db=function(){var a=this,b,c,d;return _.G(function(e){if(1==e.a){a.h.debug(_.Bw);if(!a.C)return e["return"]();_.B(e,2);return _.x(e,a.update(),4)}if(2!=e.a)return b=a.F,a.j.$(b),_.ag(e,0);c=_.D(e);if(!(c instanceof _.N))throw c;a.C&&(a.C.onError(c),d=c,1===d.severity&&a.j.$(.1));_.y(e)})};_.r.Ce=function(a){if(!this.A)throw new _.N(_.O,7,7001);a=this.C.networkingEngine.fetch(a);_.Ki(this.A,a);return a.O};_.w(tF,_.Mp);tF.prototype.f=function(){_.Jq.m3u8=uE;_.Hq[_.kk]=uE;_.Hq[aD]=uE};tF.prototype.a=function(){_.ly("m3u8");_.my(_.kk);_.my(aD)};tF.prototype.id=function(){return"hls"};_.I("clpp.hls.HlsComponent",tF);};
|
|
75
80
|
if(typeof(module)!="undefined"&&module.exports){var x=require("./cl.core.js");_ = x._;(f.call(g,this));module.exports=g;}
|
|
76
81
|
else if (typeof(define)!="undefined"&&define.amd) {define(["./cl.core"], function(c){_=c._;(f.call(g,this));return g;});}
|
|
77
82
|
else{_=this.clpp._;(f.call(g,this));}
|
package/cjs/cl.hlssmpte.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
(function(){var g={}; var _ = _ || {}
|
|
2
|
-
var f=function(window){var
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
c.mode=_.
|
|
6
|
-
a.
|
|
7
|
-
_.
|
|
2
|
+
var f=function(window){var NM=function(a){this.startTime=a.startTime;this.endTime=a.endTime;this.a=this.f=null;a=a.value;if(!_.M.R(a)){a:{var b=a.info;if(_.M.Z(b)&&(b=b.toLowerCase().match(/lang:(\w+)/))&&b[1]){b=b[1].toLowerCase();break a}b=null}this.f=b;a=a.data;this.a=_.M.Z(a)?a:null}},PM=function(a,b,c){this.m=a;this.l=b;this.j=c;this.a=new _.Eg;this.g=(a=_.fr[_.oc]||null)?new a(this.m.getConfiguration()):null;this.h=new _.K("clpp.hlssmpte.ImageCueHandler");this.f=null;OM(this)},OM=function(a){a.a.one(a.m,_.Nd,function(){return QM(a)})},
|
|
3
|
+
QM=function(a){var b=a.m.getSurface().getMedia();if(b)if(a.g){a.a.on(b.textTracks,_.cc,function(d){return RM(a,d)});var c=Array.from(b.textTracks);c.filter(function(d){return d.kind===_.Td}).forEach(function(d){RM(a,{track:d})});!SM(c)&&a.l&&(a.h.warn("The metadata track is not present. Changing an audio track in order to enforce the creation of the metadata track."),TM(a,b))}else a.h.warn("The clpp.ttml.TextParser class is not available. Please register the ttml component first.");else a.h.warn("A video element is not available. Skipping.")},
|
|
4
|
+
SM=function(a){return a.some(function(b){return b.kind===_.Td})},TM=function(a,b){var c=a.m.getTrackManager(),d=c.qa(),e=c.getAudioTracks().find(function(g){return g!==d});if(e){var f=function(){return c.xa(d)};a.a.on(b.textTracks,_.cc,function(g){g.track.kind===_.Td&&(a.a.off(b.textTracks,_.cc,f),f())});c.xa(e)}else a.h.warn("Can't enforce the creation of the metadata track if single audio track. Skipping.")},RM=function(a,b){var c=b.track;c.kind===_.Td&&(a.h.info("The metadata track has been added."),
|
|
5
|
+
c.mode=_.Cd,a.a.on(c,_.dd,function(d){return UM(a,d)}))},UM=function(a,b){var c=VM(a);c&&Array.from(b.target.activeCues||[]).forEach(function(d){if(d!==a.f&&Number.isFinite(d.startTime)&&Number.isFinite(d.endTime)&&"org.id3"===d.type&&d.value&&"TXXX"===d.value.key){var e=new NM(d);if(e.f===c&&null!==e.a){a.f=d;d=a.g.parseMedia(_.bi(e.a),{periodStart:a.j,segmentStart:e.startTime,segmentEnd:e.endTime});var f=a.m.getTextDisplayer();f.remove(0,e.startTime);f.append(d.cues,d.styles)}}})},VM=function(a){return(a=
|
|
6
|
+
a.m.getTrackManager().ra())&&a.language&&a.language.toLowerCase()},WM=function(){this.a=null;this.f=!1},XM=function(){};PM.prototype.destroy=function(){this.a.release();this.f=null;return Promise.resolve()};_.w(WM,_.rr);WM.prototype.onPlayerCreated=function(){};WM.prototype.onContentWillLoad=function(a){if(this.f=_.Ij()){var b=a.getConfiguration();b=_.M.Sa(b.hlssmpte||{});_.M.Bg(b.patchMetadataTrack)||(b.patchMetadataTrack=!1);_.M.la(b.timestampOffset)||(b.timestampOffset=0);this.a=new PM(a,b.patchMetadataTrack,b.timestampOffset)}};WM.prototype.onPlayerWillDestroy=function(){var a=this;return _.G(function(b){if(1==b.a)return a.a?_.x(b,a.a.destroy(),3):b.G(0);a.a=null;_.y(b)})};WM.prototype.id=function(){return"hlssmpte"};
|
|
7
|
+
_.I("clpp.hlssmpte.HlsSmptePlugin",WM);WM.Id="hlssmpte";XM.prototype.create=function(){return new WM};_.qp(new XM);};
|
|
8
8
|
if(typeof(module)!="undefined"&&module.exports){var x=require("./cl.core.js");_ = x._;(f.call(g,this));module.exports=g;}
|
|
9
9
|
else if (typeof(define)!="undefined"&&define.amd) {define(["./cl.core"], function(c){_=c._;(f.call(g,this));return g;});}
|
|
10
10
|
else{_=this.clpp._;(f.call(g,this));}
|