@castlabs/prestoplay 6.9.0 → 6.10.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.
Files changed (59) hide show
  1. package/CHANGELOG.md +39 -0
  2. package/cjs/cl.adobe.js +3 -3
  3. package/cjs/cl.airplay.js +3 -3
  4. package/cjs/cl.broadpeak.js +6 -6
  5. package/cjs/cl.cast.js +105 -104
  6. package/cjs/cl.conviva.js +33 -33
  7. package/cjs/cl.core.js +420 -417
  8. package/cjs/cl.crypto.js +10 -9
  9. package/cjs/cl.dash.js +71 -71
  10. package/cjs/cl.externs.js +11 -12
  11. package/cjs/cl.freewheel.js +21 -21
  12. package/cjs/cl.hls.js +72 -71
  13. package/cjs/cl.hlssmpte.js +6 -6
  14. package/cjs/cl.htmlcue.js +29 -31
  15. package/cjs/cl.ima.js +22 -22
  16. package/cjs/cl.mse.js +273 -272
  17. package/cjs/cl.muxdata.js +14 -15
  18. package/cjs/cl.onboard.js +3 -3
  19. package/cjs/cl.persistent.js +13 -13
  20. package/cjs/cl.playlist.js +6 -6
  21. package/cjs/cl.smooth.js +71 -71
  22. package/cjs/cl.thumbnails.js +24 -24
  23. package/cjs/cl.tizen.js +68 -68
  24. package/cjs/cl.ttml.js +27 -27
  25. package/cjs/cl.verimatrix.js +5 -5
  26. package/cjs/cl.vimond.js +13 -13
  27. package/cjs/cl.vr.js +19 -19
  28. package/cjs/cl.vtt.js +14 -14
  29. package/cjs/cl.youbora.js +16 -16
  30. package/cl.adobe.js +3 -3
  31. package/cl.airplay.js +3 -3
  32. package/cl.broadpeak.js +5 -5
  33. package/cl.cast.js +87 -87
  34. package/cl.conviva.js +27 -27
  35. package/cl.core.js +363 -359
  36. package/cl.crypto.js +9 -9
  37. package/cl.dash.js +67 -67
  38. package/cl.externs.js +11 -12
  39. package/cl.freewheel.js +17 -17
  40. package/cl.hls.js +61 -61
  41. package/cl.hlssmpte.js +5 -5
  42. package/cl.htmlcue.js +26 -25
  43. package/cl.ima.js +17 -17
  44. package/cl.mse.js +235 -236
  45. package/cl.muxdata.js +12 -12
  46. package/cl.onboard.js +4 -4
  47. package/cl.persistent.js +9 -9
  48. package/cl.playlist.js +5 -5
  49. package/cl.smooth.js +59 -58
  50. package/cl.thumbnails.js +17 -17
  51. package/cl.tizen.js +57 -57
  52. package/cl.ttml.js +22 -22
  53. package/cl.verimatrix.js +4 -4
  54. package/cl.vimond.js +8 -8
  55. package/cl.vr.js +14 -14
  56. package/cl.vtt.js +12 -12
  57. package/cl.youbora.js +13 -13
  58. package/package.json +1 -1
  59. package/typings.d.ts +47 -2
package/cjs/cl.crypto.js CHANGED
@@ -1,14 +1,15 @@
1
1
  (function(){var g={}; var _ = _ || {}
2
- var f=function(window){var OL=function(){this.B=[0,1,2,4,8,16,32,64,128,27,54];this.D=[new Uint32Array(256),new Uint32Array(256),new Uint32Array(256),new Uint32Array(256)];this.m=[new Uint32Array(256),new Uint32Array(256),new Uint32Array(256),new Uint32Array(256)];this.A=new Uint32Array(256);this.o=new Uint32Array(256);this.w=new Uint32Array(0);this.g=this.a=this.j=this.f=null;var a=this.A,b=this.o,c=this.D,d=c[0],e=c[1],f=c[2];c=c[3];var g=this.m,h=g[0],l=g[1],m=g[2];g=g[3];var n=new Uint32Array(256),p=0,q=0,r;for(r=0;256>
3
- r;r++)n[r]=128>r?r<<1:r<<1^283;for(r=0;256>r;r++){var v=q^q<<1^q<<2^q<<3^q<<4;v=v>>>8^v&255^99;a[p]=v;b[v]=p;var z=n[p],A=n[z],E=n[A],H=257*n[v]^16843008*v;d[p]=H<<24|H>>>8;e[p]=H<<16|H>>>16;f[p]=H<<8|H>>>24;c[p]=H;H=16843009*E^65537*A^257*z^16843008*p;h[v]=H<<24|H>>>8;l[v]=H<<16|H>>>16;m[v]=H<<8|H>>>24;g[v]=H;p?(p=z^n[n[n[E^z]]],q^=n[n[q]]):p=q=1}},PL=function(a){a=_.rh(a);for(var b=new Uint32Array(4),c=0;4>c;c++)b[c]=a.getUint32(4*c);return b},QL=function(){this.a=null},RL=function(){this.f=this.l=
4
- null;this.j=this.bi.bind(this);this.g={};this.a=null;this.h=new _.I("clpp.crypto")},SL=function(a,b){var c,d;return _.B(function(e){if(1==e.a){if(a.g[b])return e["return"](a.g[b]);c=_.Xh(b);return _.x(e,a.f.fetch(c).P,2)}d=e.f;a.g[b]=d.data;return e["return"](d.data)})},TL=function(a,b,c){var d,e,f,g;return _.B(function(h){switch(h.a){case 1:return d=new ArrayBuffer(0),_.zf(h,2),_.x(h,SL(a,c.url),4);case 4:d=h.f;_.Af(h,3);break;case 2:return e=_.Bf(h),a.h.debug("Could not fetch key"),a.l.onError(new _.L(1,
5
- 7,7104,null,e)),h["return"](b);case 3:return _.zf(h,5),_.x(h,a.a.importKey(d),7);case 7:return _.x(h,a.a.decrypt(b,c.iv),8);case 8:return f=h.f,h["return"](f);case 5:return g=_.Bf(h),a.h.warn("Could not decrypt segment data!",g),a.l.onError(new _.L(1,3,3103,null,g)),h["return"](b)}})};
6
- OL.prototype.importKey=function(a){a=PL(a);for(var b=!0,c=0;c<a.length&&b;)b=a[c]===this.w[c],c++;if(b)return new Promise(function(n){return n()});this.w=a;this.a=a.length;if(4!==this.a&&6!==this.a&&8!==this.a)throw Error("Invalid aes key size\x3d"+this.a);this.g=4*(this.a+7);this.f=new Uint32Array(this.g);this.j=new Uint32Array(this.g);b=this.A;var d=this.B;var e=this.m;c=e[0];var f=e[1],g=e[2],h=e[3],l=0,m=0;for(e=0;e<this.g;e++)e<this.a?l=this.f[e]=a[e]:(m=l,0===e%this.a?(m=m<<8|m>>>24,m=b[m>>>
2
+ var f=function(window){var $L=function(){this.B=[0,1,2,4,8,16,32,64,128,27,54];this.D=[new Uint32Array(256),new Uint32Array(256),new Uint32Array(256),new Uint32Array(256)];this.m=[new Uint32Array(256),new Uint32Array(256),new Uint32Array(256),new Uint32Array(256)];this.A=new Uint32Array(256);this.o=new Uint32Array(256);this.w=new Uint32Array(0);this.g=this.a=this.j=this.f=null;var a=this.A,b=this.o,c=this.D,d=c[0],e=c[1],f=c[2];c=c[3];var g=this.m,h=g[0],l=g[1],m=g[2];g=g[3];var n=new Uint32Array(256),p=0,q=0,r;for(r=0;256>
3
+ r;r++)n[r]=128>r?r<<1:r<<1^283;for(r=0;256>r;r++){var v=q^q<<1^q<<2^q<<3^q<<4;v=v>>>8^v&255^99;a[p]=v;b[v]=p;var z=n[p],A=n[z],D=n[A],F=257*n[v]^16843008*v;d[p]=F<<24|F>>>8;e[p]=F<<16|F>>>16;f[p]=F<<8|F>>>24;c[p]=F;F=16843009*D^65537*A^257*z^16843008*p;h[v]=F<<24|F>>>8;l[v]=F<<16|F>>>16;m[v]=F<<8|F>>>24;g[v]=F;p?(p=z^n[n[n[D^z]]],q^=n[n[q]]):p=q=1}},aM=function(a){a=_.vh(a);for(var b=new Uint32Array(4),c=0;4>c;c++)b[c]=a.getUint32(4*c);return b},bM=function(){this.a=null},cM=function(){this.f=this.l=
4
+ null;this.j=this.ei.bind(this);this.g={};this.a=null;this.h=new _.I("clpp.crypto")},dM=function(a,b){var c,d,e,f,g,h;return _.B(function(l){if(1==l.a){c=_.ai(b);if(d=(new _.Pg(b)).Ka.endsWith(".drmtoday.com"))e=a.l.getConfiguration(),_.ol(c,e);f=b+JSON.stringify(c.headers);if(a.g[f])return l["return"](a.g[f]);_.Bf(l,2);return _.x(l,a.f.fetch(c).P,4)}if(2!=l.a)return g=l.f,a.g[f]=g.data,l["return"](g.data);h=_.Df(l);d&&1001===h.code&&412===h.data.status&&a.h.warn("Wrong DRMtoday credentials, server responded with 412.");
5
+ throw h;})},eM=function(a,b,c){var d,e,f,g;return _.B(function(h){switch(h.a){case 1:return d=new ArrayBuffer(0),_.Bf(h,2),_.x(h,dM(a,c.url),4);case 4:d=h.f;_.Cf(h,3);break;case 2:return e=_.Df(h),a.h.warn("Could not fetch AES key",e),a.l.onError(new _.L(1,7,7104,null,e)),h["return"](b);case 3:return _.Bf(h,5),_.x(h,a.a.importKey(d),7);case 7:return _.x(h,a.a.decrypt(b,c.iv),8);case 8:return f=h.f,h["return"](f);case 5:return g=_.Df(h),a.h.warn("Could not decrypt segment data!",g),a.l.onError(new _.L(1,
6
+ 3,3103,null,g)),h["return"](b)}})};
7
+ $L.prototype.importKey=function(a){a=aM(a);for(var b=!0,c=0;c<a.length&&b;)b=a[c]===this.w[c],c++;if(b)return new Promise(function(n){return n()});this.w=a;this.a=a.length;if(4!==this.a&&6!==this.a&&8!==this.a)throw Error("Invalid aes key size\x3d"+this.a);this.g=4*(this.a+7);this.f=new Uint32Array(this.g);this.j=new Uint32Array(this.g);b=this.A;var d=this.B;var e=this.m;c=e[0];var f=e[1],g=e[2],h=e[3],l=0,m=0;for(e=0;e<this.g;e++)e<this.a?l=this.f[e]=a[e]:(m=l,0===e%this.a?(m=m<<8|m>>>24,m=b[m>>>
7
8
  24]<<24|b[m>>>16&255]<<16|b[m>>>8&255]<<8|b[m&255],m^=d[e/this.a|0]<<24):6<this.a&&4===e%this.a&&(m=b[m>>>24]<<24|b[m>>>16&255]<<16|b[m>>>8&255]<<8|b[m&255]),l=(this.f[e-this.a]^m)>>>0,this.f[e]=l);for(a=0;a<this.g;a++)e=this.g-a,m=a&3?this.f[e]:this.f[e-4],this.j[a]=4>a||4>=e?m:c[b[m>>>24]]^f[b[m>>>16&255]]^g[b[m>>>8&255]]^h[b[m&255]],this.j[a]>>>=0;return new Promise(function(n){return n()})};
8
- OL.prototype.decrypt=function(a,b){var c=0,d=this.a+6,e=this.j,f=this.o,g=this.m,h=g[0],l=g[1],m=g[2];g=g[3];var n=PL(b),p=n[0],q=n[1],r=n[2];n=n[3];for(var v=_.qh(a),z=new Int32Array(v.length),A,E,H,D,F,V,P,Ca,qa,ra,Da,Fa,pa,za=this.F.bind(this);c<v.length;){Ca=za(v[c]);qa=za(v[c+1]);ra=za(v[c+2]);Da=za(v[c+3]);F=Ca^e[0];V=Da^e[1];P=ra^e[2];D=qa^e[3];Fa=4;for(pa=1;pa<d;pa++)A=h[F>>>24]^l[V>>16&255]^m[P>>8&255]^g[D&255]^e[Fa],E=h[V>>>24]^l[P>>16&255]^m[D>>8&255]^g[F&255]^e[Fa+1],H=h[P>>>24]^l[D>>
9
- 16&255]^m[F>>8&255]^g[V&255]^e[Fa+2],D=h[D>>>24]^l[F>>16&255]^m[V>>8&255]^g[P&255]^e[Fa+3],F=A,V=E,P=H,Fa+=4;A=f[F>>>24]<<24^f[V>>16&255]<<16^f[P>>8&255]<<8^f[D&255]^e[Fa];E=f[V>>>24]<<24^f[P>>16&255]<<16^f[D>>8&255]<<8^f[F&255]^e[Fa+1];H=f[P>>>24]<<24^f[D>>16&255]<<16^f[F>>8&255]<<8^f[V&255]^e[Fa+2];D=f[D>>>24]<<24^f[F>>16&255]<<16^f[V>>8&255]<<8^f[P&255]^e[Fa+3];Fa+=3;z[c]=za(A^p);z[c+1]=za(D^q);z[c+2]=za(H^r);z[c+3]=za(E^n);p=Ca;q=qa;r=ra;n=Da;c+=4}return new Promise(function(La){var tb=z.buffer;
10
- var Zb=tb.byteLength,bb=Zb&&(new DataView(tb)).getUint8(Zb-1);tb=bb?tb.slice(0,Zb-bb):tb;La(tb)})};OL.prototype.destroy=function(){this.B=this.j=this.f=this.m=this.D=this.o=this.A=this.g=this.a=this.w=null;return new Promise(function(a){return a()})};OL.prototype.F=function(a){return a<<24|(a&65280)<<8|(a&16711680)>>8|a>>>24};QL.prototype.importKey=function(a){var b=this,c;return _.B(function(d){if(1==d.a)return c=b,_.x(d,crypto.subtle.importKey("raw",a,{name:"AES-CBC"},!1,["decrypt"]),2);c.a=d.f;_.y(d)})};QL.prototype.decrypt=function(a,b){var c=this,d;return _.B(function(e){if(1==e.a)return _.x(e,crypto.subtle.decrypt({name:"AES-CBC",iv:b},c.a,a),2);d=e.f;return e["return"](d)})};QL.prototype.destroy=function(){this.a=null;return new Promise(function(a){return a()})};_.w(RL,_.wo);_.t=RL.prototype;_.t.Oa=function(a){this.l=a};_.t.Ha=function(){this.l=null};_.t.ac=function(){if(window.crypto&&crypto.subtle){var a=crypto.subtle.decrypt;a=typeof crypto.subtle.importKey===_.jd&&typeof a===_.jd}else a=!1;a?this.a=new QL:(this.h.warn("No WebCrypto APIs found. Will fallback to software AES"),this.a=new OL);this.f=this.l.getNetworkEngine();this.f.Ed(this.j)};_.t.release=function(){this.f&&this.f.be(this.j);this.a&&(this.a.destroy(),this.a=null);this.f=null;this.g={}};
11
- _.t.id=function(){return"crypto"};_.t.bi=function(a){var b=this,c,d;return _.B(function(e){if(1==e.a){c=a.request||null;if(!c||2!==c.type||!c.keyInfo||!a.data)return e.G(2);b.h.debug("Decrypt data");d=a;return _.x(e,TL(b,a.data,c.keyInfo),4)}2!=e.a&&(d.data=e.f);return e["return"](a)})};_.C("clpp.crypto.CryptoComponent",RL);};
9
+ $L.prototype.decrypt=function(a,b){var c=0,d=this.a+6,e=this.j,f=this.o,g=this.m,h=g[0],l=g[1],m=g[2];g=g[3];var n=aM(b),p=n[0],q=n[1],r=n[2];n=n[3];for(var v=_.uh(a),z=new Int32Array(v.length),A,D,F,E,H,Q,O,Ca,sa,wa,Fa,Ea,ka,la=this.F.bind(this);c<v.length;){Ca=la(v[c]);sa=la(v[c+1]);wa=la(v[c+2]);Fa=la(v[c+3]);H=Ca^e[0];Q=Fa^e[1];O=wa^e[2];E=sa^e[3];Ea=4;for(ka=1;ka<d;ka++)A=h[H>>>24]^l[Q>>16&255]^m[O>>8&255]^g[E&255]^e[Ea],D=h[Q>>>24]^l[O>>16&255]^m[E>>8&255]^g[H&255]^e[Ea+1],F=h[O>>>24]^l[E>>
10
+ 16&255]^m[H>>8&255]^g[Q&255]^e[Ea+2],E=h[E>>>24]^l[H>>16&255]^m[Q>>8&255]^g[O&255]^e[Ea+3],H=A,Q=D,O=F,Ea+=4;A=f[H>>>24]<<24^f[Q>>16&255]<<16^f[O>>8&255]<<8^f[E&255]^e[Ea];D=f[Q>>>24]<<24^f[O>>16&255]<<16^f[E>>8&255]<<8^f[H&255]^e[Ea+1];F=f[O>>>24]<<24^f[E>>16&255]<<16^f[H>>8&255]<<8^f[Q&255]^e[Ea+2];E=f[E>>>24]<<24^f[H>>16&255]<<16^f[Q>>8&255]<<8^f[O&255]^e[Ea+3];Ea+=3;z[c]=la(A^p);z[c+1]=la(E^q);z[c+2]=la(F^r);z[c+3]=la(D^n);p=Ca;q=sa;r=wa;n=Fa;c+=4}return new Promise(function(Na){var tb=z.buffer;
11
+ var Rb=tb.byteLength,Gb=Rb&&(new DataView(tb)).getUint8(Rb-1);tb=Gb?tb.slice(0,Rb-Gb):tb;Na(tb)})};$L.prototype.destroy=function(){this.B=this.j=this.f=this.m=this.D=this.o=this.A=this.g=this.a=this.w=null;return new Promise(function(a){return a()})};$L.prototype.F=function(a){return a<<24|(a&65280)<<8|(a&16711680)>>8|a>>>24};bM.prototype.importKey=function(a){var b=this,c;return _.B(function(d){if(1==d.a)return c=b,_.x(d,crypto.subtle.importKey("raw",a,{name:"AES-CBC"},!1,["decrypt"]),2);c.a=d.f;_.y(d)})};bM.prototype.decrypt=function(a,b){var c=this,d;return _.B(function(e){if(1==e.a)return _.x(e,crypto.subtle.decrypt({name:"AES-CBC",iv:b},c.a,a),2);d=e.f;return e["return"](d)})};bM.prototype.destroy=function(){this.a=null;return new Promise(function(a){return a()})};_.w(cM,_.Bo);_.t=cM.prototype;_.t.Qa=function(a){this.l=a};_.t.Ha=function(){this.l=null};_.t.ac=function(){if(window.crypto&&crypto.subtle){var a=crypto.subtle.decrypt;a=typeof crypto.subtle.importKey===_.ld&&typeof a===_.ld}else a=!1;a?this.a=new bM:(this.h.warn("No WebCrypto APIs found. Will fallback to software AES"),this.a=new $L);this.f=this.l.getNetworkEngine();this.f.Gd(this.j)};_.t.release=function(){this.f&&this.f.ee(this.j);this.a&&(this.a.destroy(),this.a=null);this.f=null;this.g={}};
12
+ _.t.id=function(){return"crypto"};_.t.ei=function(a){var b=this,c,d;return _.B(function(e){if(1==e.a){c=a.request||null;if(!(c&&2===c.type&&c.keyInfo&&a.data))return e.G(2);b.h.debug("Decrypting AES-128-encrypted video segment");d=a;return _.x(e,eM(b,a.data,c.keyInfo),3)}2!=e.a&&(d.data=e.f);return e["return"](a)})};_.C("clpp.crypto.CryptoComponent",cM);};
12
13
  if(typeof(module)!="undefined"&&module.exports){var x=require("./cl.core.js");_ = x._;(f.call(g,this));module.exports=g;}
13
14
  else if (typeof(define)!="undefined"&&define.amd) {define(["./cl.core"], function(c){_=c._;(f.call(g,this));return g;});}
14
15
  else{_=this.clpp._;(f.call(g,this));}
package/cjs/cl.dash.js CHANGED
@@ -1,76 +1,76 @@
1
1
  (function(){var g={}; var _ = _ || {}
2
- var f=function(window){var ZD="Channel parsing failure! Ignoring scheme and value",$D="ContentProtection",aE="EssentialProperty",bE="Failed to parse UTCTiming tags.",cE="Missing \x3cms:pro/\x3e node in ContentProtection element",dE="No UTCTiming elements found.",eE="SegmentBase does not contain sufficient segment information:",fE="SegmentList does not contain sufficient segment information:",gE="SegmentTemplate does not contain sufficient segment information:",hE="SegmentTimeline",iE='The last "S" element cannot have a negative repeat',
3
- jE="duration",kE="http://dashif.org/guidelines/trickmode",lE="http://www.w3.org/1999/xlink",mE='ignoring the last "S" element.',nE='ignoring the remaining "S" elements.',oE="presentationTimeOffset",pE="schemeIdUri",qE="static",rE="timescale",sE="urn:microsoft:playready",tE="urn:mpeg:cenc:2013",uE="urn:mpeg:dash:utc:http-head:2014",vE="urn:uuid:9a04f079-9840-4286-ab92-e65be0885f95",wE="urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed",xE=function(a,b){a.B=Math.max(a.B,b);a.h.debug("notifyAvailabilityTimeOffset: maxAvailabilityTimeOffset\x3d"+
4
- a.B)},yE=function(a,b){return a.reduce(function(c,d,e){return d["catch"](c.bind(null,e))}.bind(null,b),Promise.reject())},zE=function(a){return new _.ci(Promise.reject(a),function(){return Promise.resolve()})},AE=function(a){return new _.ci(Promise.all(a.map(function(b){return b.P})),function(){return Promise.all(a.map(function(b){return b.abort()}))})},BE=function(a,b,c){return Array.prototype.filter.call(a.childNodes,function(d){return d instanceof Element&&d.localName==c&&d.namespaceURI==b})},
5
- CE=function(a,b,c){a=BE(a,b,c);return 1!=a.length?null:a[0]},DE=function(a,b,c){return a.hasAttributeNS(b,c)?a.getAttributeNS(b,c):null},EE=function(a,b,c,d){d=void 0===d?null:d;var e=null;a=a.getAttribute(b);null!=a&&(e=c(a));return null==e?d:e},FE=function(a){if(!a)return null;/^\d+-\d+-\d+T\d+:\d+:\d+(\.\d+)?$/.test(a)&&(a+="Z");a=Date.parse(a);return isNaN(a)?null:Math.floor(a/1E3)},GE=function(a){if(!a)return null;var b=/^P(?:([0-9]*)Y)?(?:([0-9]*)M)?(?:([0-9]*)D)?(?:T(?:([0-9]*)H)?(?:([0-9]*)M)?(?:([0-9.]*)S)?)?$/.exec(a);
6
- if(!b)return _.G("Invalid duration string:",a),null;a=31536E3*Number(b[1]||null)+2592E3*Number(b[2]||null)+86400*Number(b[3]||null)+3600*Number(b[4]||null)+60*Number(b[5]||null)+Number(b[6]||null);return isFinite(a)?a:null},HE=function(a){var b=/([0-9]+)-([0-9]+)/.exec(a);if(!b)return null;a=Number(b[1]);if(!isFinite(a))return null;b=Number(b[2]);return isFinite(b)?{start:a,end:b}:null},IE=function(a){a=Number(a);return 0===a%1?a:null},JE=function(a){a=Number(a);return 0===a%1&&0<a?a:null},KE=function(a){a=
7
- Number(a);return 0===a%1&&0<=a?a:null},LE=function(a){var b;a=(b=a.match(/^(\d+)\/(\d+)$/))?Number(b[1])/Number(b[2]):Number(a);return isNaN(a)?null:a},ME=function(a,b){try{var c=_.uh(a);return _.dw(c,b)}catch(d){return null}},NE=function(a){var b=void 0===b?1024:b;if(!(a instanceof Uint8Array))return"";if(typeof b!==_.k||0>=b)b=1024;return(a.byteLength>b?a.subarray(0,b):a).toString()},OE=function(a,b,c,d,e){var f={RepresentationID:b,Number:c,Bandwidth:d,Time:e};return a.replace(/\$(RepresentationID|Number|Bandwidth|Time)?(?:%0([0-9]+)([diouxX]))?\$/g,
2
+ var f=function(window){var iE="Channel parsing failure! Ignoring scheme and value",jE="ContentProtection",kE="EssentialProperty",lE="Failed to parse UTCTiming tags.",mE="Missing \x3cms:pro/\x3e node in ContentProtection element",nE="No UTCTiming elements found.",oE="SegmentBase does not contain sufficient segment information:",pE="SegmentList does not contain sufficient segment information:",qE="SegmentTemplate does not contain sufficient segment information:",rE="SegmentTimeline",sE='The last "S" element cannot have a negative repeat',
3
+ tE="duration",uE="http://dashif.org/guidelines/trickmode",vE="http://www.w3.org/1999/xlink",wE='ignoring the last "S" element.',xE='ignoring the remaining "S" elements.',yE="presentationTimeOffset",zE="schemeIdUri",AE="static",BE="timescale",CE="urn:microsoft:playready",DE="urn:mpeg:cenc:2013",EE="urn:mpeg:dash:utc:http-head:2014",FE="urn:uuid:9a04f079-9840-4286-ab92-e65be0885f95",GE="urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed",HE=function(a,b){a.B=Math.max(a.B,b);a.h.debug("notifyAvailabilityTimeOffset: maxAvailabilityTimeOffset\x3d"+
4
+ a.B)},IE=function(a,b){return a.reduce(function(c,d,e){return d["catch"](c.bind(null,e))}.bind(null,b),Promise.reject())},JE=function(a){return new _.gi(Promise.reject(a),function(){return Promise.resolve()})},KE=function(a){return new _.gi(Promise.all(a.map(function(b){return b.P})),function(){return Promise.all(a.map(function(b){return b.abort()}))})},LE=function(a,b,c){return Array.prototype.filter.call(a.childNodes,function(d){return d instanceof Element&&d.localName==c&&d.namespaceURI==b})},
5
+ ME=function(a,b,c){a=LE(a,b,c);return 1!=a.length?null:a[0]},NE=function(a,b,c){return a.hasAttributeNS(b,c)?a.getAttributeNS(b,c):null},OE=function(a,b,c,d){d=void 0===d?null:d;var e=null;a=a.getAttribute(b);null!=a&&(e=c(a));return null==e?d:e},PE=function(a){if(!a)return null;/^\d+-\d+-\d+T\d+:\d+:\d+(\.\d+)?$/.test(a)&&(a+="Z");a=Date.parse(a);return isNaN(a)?null:Math.floor(a/1E3)},QE=function(a){if(!a)return null;var b=/^P(?:([0-9]*)Y)?(?:([0-9]*)M)?(?:([0-9]*)D)?(?:T(?:([0-9]*)H)?(?:([0-9]*)M)?(?:([0-9.]*)S)?)?$/.exec(a);
6
+ if(!b)return _.G("Invalid duration string:",a),null;a=31536E3*Number(b[1]||null)+2592E3*Number(b[2]||null)+86400*Number(b[3]||null)+3600*Number(b[4]||null)+60*Number(b[5]||null)+Number(b[6]||null);return isFinite(a)?a:null},RE=function(a){var b=/([0-9]+)-([0-9]+)/.exec(a);if(!b)return null;a=Number(b[1]);if(!isFinite(a))return null;b=Number(b[2]);return isFinite(b)?{start:a,end:b}:null},SE=function(a){a=Number(a);return 0===a%1?a:null},TE=function(a){a=Number(a);return 0===a%1&&0<a?a:null},UE=function(a){a=
7
+ Number(a);return 0===a%1&&0<=a?a:null},VE=function(a){var b;a=(b=a.match(/^(\d+)\/(\d+)$/))?Number(b[1])/Number(b[2]):Number(a);return isNaN(a)?null:a},WE=function(a,b){try{var c=_.yh(a);return _.lw(c,b)}catch(d){return null}},XE=function(a){var b=void 0===b?1024:b;if(!(a instanceof Uint8Array))return"";if(typeof b!==_.k||0>=b)b=1024;return(a.byteLength>b?a.subarray(0,b):a).toString()},YE=function(a,b,c,d,e){var f={RepresentationID:b,Number:c,Bandwidth:d,Time:e};return a.replace(/\$(RepresentationID|Number|Bandwidth|Time)?(?:%0([0-9]+)([diouxX]))?\$/g,
8
8
  function(g,h,l,m){if("$$"==g)return"$";var n=f[h];if(null==n)return _.G("URL template does not have an available substitution ","for identifier",'"'+h+'":',a),g;"RepresentationID"==h&&l&&(_.G("URL template should not contain a width specifier for identifier",'"RepresentationID":',a),l=void 0);"Time"==h&&(n=Math.round(n));switch(m){case void 0:case "d":case "i":case "u":g=n.toString();break;case "o":g=n.toString(8);break;case "x":g=n.toString(16);break;case "X":g=n.toString(16).toUpperCase();break;
9
- default:g=n.toString()}l=window.parseInt(l,10)||1;return Array(Math.max(0,l-g.length)+1).join("0")+g})},RE=function(a,b){var c=PE(a,b,rE),d=1;c&&(d=JE(c)||1);c=PE(a,b,jE);(c=JE(c||""))&&(c/=d);var e=Number(PE(a,b,oE))||0,f=e/d||0;a.Gj&&null!=a.pd&&a.pd!==f&&(_.G("The stream is non-compliant with the DASH spec. The value of `presentationTimeOffset` has changed during the transition from dynamic to static manifest, which is not allowed. The last value will be ignored. (Period ID: "+(a.wa.id+", Representation ID: ")+
10
- (a.O.id+")")),e=a.pd*d,f=a.pd);var g=PE(a,b,"startNumber"),h=KE(g||"");if(null==g||null==h)h=1;g=PE(a,b,"endNumber");g=null!==g?KE(g||""):null;var l=QE(a,b,hE),m=null;if(l){m=d;var n=e,p=a.ca.duration||Infinity;l=_.aw(l,"S");for(var q=[],r=0,v=0;v<l.length;++v){var z=l[v],A=EE(z,"t",KE),E=EE(z,"d",KE),H=EE(z,"r",IE);null!=A&&(A-=n);if(!E){_.G('"S" element must have a duration:',nE,z);break}A=null!=A?A:r;H=H||0;if(0>H)if(v+1<l.length){H=EE(l[v+1],"t",KE);if(null==H){_.G('An "S" element cannot have a negative repeat',
11
- 'if the next "S" element does not have a valid start time:',nE,z);break}else if(A>=H){_.G('An "S" element cannot have a negative repeat if its start ','time exceeds the next "S" element\'s start time:',nE,z);break}H=Math.ceil((H-A)/E)-1}else{if(Infinity==p){_.G(iE,"if the Period has an infinite duration:",mE,z);break}else if(A/m>=p){_.G(iE,"if its start time exceeds the Period's duration:",mE,z);break}H=Math.ceil((p*m-A)/E)-1}0<q.length&&A!=r&&(Math.abs((A-r)/m)>=_.lq&&_.G("SegmentTimeline contains a large gap/overlap:",
12
- "the content may have errors in it.",z),q[q.length-1].end=A/m);for(z=0;z<=H;++z)r=A+E,q.push({start:A/m,end:r/m,rl:A}),A=r}m=q}n=PE(a,b,"availabilityTimeOffset");p=Number(n||"");p=isNaN(p)?null:p;if(null==n||null==p)p=0;return{timescale:d,Ca:c,nc:h,Ce:g,ob:f,yf:e,timeline:m,re:p}},PE=function(a,b,c){return[b(a.O),b(a.ua),b(a.wa)].filter(_.Jg).map(function(d){return d.getAttribute(c)}).reduce(function(d,e){return d||e})},QE=function(a,b,c){return[b(a.O),b(a.ua),b(a.wa)].filter(_.Jg).map(function(d){return _.bw(d,
13
- c)}).reduce(function(d,e){return d||e})},TE=function(a,b,c,d,e,f){for(var g=DE(a,lE,"href"),h=DE(a,lE,"actuate")||"onRequest",l=0;l<a.attributes.length;l++){var m=a.attributes[l];m.namespaceURI==lE&&(a.removeAttributeNS(m.namespaceURI,m.localName),--l)}if(5<=f)return zE(new _.L(_.M,4,4028));if("onLoad"!=h)return zE(new _.L(_.M,4,4027));var n=_.Hv([d],[g]);d=_.Xh(n,b);d.type=1;return e.fetch(d).Hd(function(p){p=ME(p.data,a.tagName);if(!p)return zE(new _.L(_.M,4,4001,{uri:g}));for(;a.childNodes.length;)a.removeChild(a.childNodes[0]);
14
- for(;p.childNodes.length;){var q=p.childNodes[0];p.removeChild(q);a.appendChild(q)}for(q=0;q<p.attributes.length;q++){var r=p.attributes[q].nodeName,v=p.getAttribute(r);a.setAttribute(r,v)}return SE(a,b,c,n[0],e,f+1)})},SE=function(a,b,c,d,e,f){f=void 0===f?0:f;if(DE(a,lE,"href")){var g=TE(a,b,c,d,e,f);c&&(g=g.Hd(void 0,function(){return SE(a,b,c,d,e,f)}));return g}g=[];for(var h=0;h<a.childNodes.length;h++){var l=a.childNodes[h];l instanceof Element&&("urn:mpeg:dash:resolve-to-zero:2013"==DE(l,lE,
15
- "href")?(a.removeChild(l),--h):l.tagName!=hE&&g.push(SE(l,b,c,d,e,f)))}return AE(g).Hd(function(){return a})},VE=function(a,b,c,d){var e,f=(new _.Kk).Y("sidx",function(h){e=UE(b,d,c,h)});a&&f.parse(a);if(e)return e;f=b+"-"+(b+a.byteLength-1);var g=c[0];a=_.N(a);_.Tf('Invalid box type. Expected "sidx", but received:',a,"from:",g,"byte range:",f);throw new _.L(_.M,3,3004,{url:g,Pl:f,size:a.byteLength,dm:NE(a)});},UE=function(a,b,c,d){var e=[];d.reader.skip(4);var f=_.T(d.reader);if(0==f)throw _.Tf("Invalid timescale."),
16
- new _.L(_.M,3,3005);if(0==d.version){var g=_.T(d.reader);var h=_.T(d.reader)}else g=_.Ik(d.reader),h=_.Ik(d.reader);d.reader.skip(2);var l=_.Fk(d.reader);a=a+d.size+h;for(h=0;h<l;h++){var m=_.T(d.reader),n=(m&2147483648)>>>31;m&=2147483647;var p=_.T(d.reader);d.reader.skip(4);if(1==n)throw _.Tf("Hierarchical SIDXs are not supported."),new _.L(_.M,3,3006);e.push(new _.Kv(e.length,g/f-b,(g+p)/f-b,function(){return c},a,a+m-1,b));g+=p;a+=m}d.parser.stop();return e},WE=function(a){this.f=a;this.a=new _.Bk(a,
17
- !1)},$E=function(a){var b=XE(a);if(7<b.length)throw new _.L(_.M,3,3002);for(var c=0,d=0;d<b.length;d++)c=256*c+b[d];b=c;c=XE(a);a:{d=_.u(YE);for(var e=d.next();!e.done;e=d.next())if(_.Oh(c,new Uint8Array(e.value))){d=!0;break a}d=!1}if(d)c=a.f.byteLength-a.a.getPosition();else{if(8==c.length&&c[1]&224)throw new _.L(_.M,3,3001);d=c[0]&(1<<8-c.length)-1;for(e=1;e<c.length;e++)d=256*d+c[e];c=d}c=a.a.getPosition()+c<=a.f.byteLength?c:a.f.byteLength-a.a.getPosition();d=new DataView(a.f.buffer,a.f.byteOffset+
18
- a.a.getPosition(),c);a.a.skip(c);return new ZE(b,d)},XE=function(a){var b=_.Ek(a.a),c;for(c=1;8>=c&&!(b&1<<8-c);c++);if(8<c)throw new _.L(_.M,3,3002);var d=new Uint8Array(c);d[0]=b;for(b=1;b<c;b++)d[b]=_.Ek(a.a);return d},ZE=function(a,b){this.id=a;this.a=b},aF=function(a){if(8<a.a.byteLength)throw new _.L(_.M,3,3002);if(8==a.a.byteLength&&a.a.getUint8(0)&224)throw new _.L(_.M,3,3001);for(var b=0,c=0;c<a.a.byteLength;c++){var d=a.a.getUint8(c);b=256*b+d}return b},bF=function(){},dF=function(a,b,c,
19
- d,e,f){function g(){return e}var h=[];a=new WE(a.a);for(var l=null,m=null;_.Ck(a.a);){var n=$E(a);if(187==n.id){var p=cF(n);p&&(n=c*p.sl,p=b+p.Yk,null!=l&&h.push(new _.Kv(h.length,l-f,n-f,g,m,p-1,f)),l=n,m=p)}}null!=l&&h.push(new _.Kv(h.length,l-f,d-f,g,m,null,f));return h},cF=function(a){var b=new WE(a.a);a=$E(b);if(179!=a.id)throw _.G("Not a CueTime element."),new _.L(_.M,3,3013);a=aF(a);b=$E(b);if(183!=b.id)throw _.G("Not a CueTrackPositions element."),new _.L(_.M,3,3012);b=new WE(b.a);for(var c=
20
- 0;_.Ck(b.a);){var d=$E(b);if(241==d.id){c=aF(d);break}}return{sl:a,Yk:c}},eF=function(a,b){var c=QE(a,b,"Initialization");if(!c)return null;var d=a.O.Ya,e=c.getAttribute("sourceURL");e&&(d=_.Hv(a.O.Ya,[e]));e=0;var f=null;if(c=EE(c,"range",HE))e=c.start,f=c.end;return new _.Jv(function(){return d},e,f)},hF=function(a,b){var c=Number(PE(a,fF,oE))||0,d=PE(a,fF,rE),e=1;d&&(e=JE(d)||1);c=c/e||0;d=eF(a,fF);e=a.O.mimeType.split("/")[1];if(a.O.contentType!=_.Ae&&e!=_.Ed&&"webm"!=e)throw _.Tf("SegmentBase specifies an unsupported container type.",
21
- a.O),new _.L(_.M,4,4006);if("webm"==e&&!d)throw _.Tf(eE,"the SegmentBase uses a WebM container,","but does not contain an Initialization element.",a.O),new _.L(_.M,4,4005);var f=QE(a,fF,"RepresentationIndex"),g=PE(a,fF,"indexRange"),h=a.O.Ya;g=HE(g||"");if(f){var l=f.getAttribute("sourceURL");l&&(h=_.Hv(a.O.Ya,[l]));g=EE(f,"range",HE,g)}if(!g)throw _.Tf(eE,"the SegmentBase does not contain @indexRange","or a RepresentationIndex element.",a.O),new _.L(_.M,4,4002);e=gF(a,b,d,h,g.start,g.end,e,c);return{createSegmentIndex:e.createSegmentIndex,
22
- findSegmentPosition:e.findSegmentPosition,getSegmentReference:e.getSegmentReference,adjustSegmentDurations:e.adjustSegmentDurations,getDuration:e.getDuration,initSegmentReference:d,getLastSegmentEndTime:e.getLastSegmentEndTime,sa:c}},gF=function(a,b,c,d,e,f,g,h){var l=a.presentationTimeline,m=!a.Jc||!a.ca.Pe,n=a.ca.start,p=a.ca.duration,q=b,r=null;return{createSegmentIndex:function(){var v,z,A,E,H,D;return _.B(function(F){if(1==F.a)return v=[q(d,e,f),"webm"==g?q(c.Ma(),c.ta,c.ea):null],q=null,_.x(F,
23
- Promise.all(v),2);z=F.f;A=z[0];E=z[1]||null;H=null;g==_.Ed?H=VE(A,e,d,h):(D=new bF,H=D.parse(A,E,d,h));_.Fw(l,H,n);r=new _.Pw(H);m&&_.vw(r,p);return F["return"](z)})},findSegmentPosition:function(v){return r.Fc(v)},getSegmentReference:function(v){return r.get(v)},adjustSegmentDurations:function(v,z){return r.Xc(v,z)},getDuration:function(){return r.getDuration()},getLastSegmentEndTime:function(){return p}}},fF=function(a){return a.vd},oF=function(a,b,c,d){var e=iF(a),f=jF(a);kF(a,f);var g=null;if(f.nd)g=
24
- lF(a,b,e,f);else if(f.Ca)d||(xE(a.presentationTimeline,f.re),_.Gw(a.presentationTimeline,f.Ca),_.Ew(a.presentationTimeline,a.ca.start)),g=mF(a,f);else{var h=null;b=null;a.wa.id&&a.O.id&&(b=a.wa.id+","+a.O.id,h=c[b]);d=nF(a,f);g=!a.Jc||!a.ca.Pe;h?(g&&_.vw(new _.Pw(d),a.ca.duration),h.va(d),_.Rw(h,_.Iw(a.presentationTimeline)-a.ca.start)):(_.Fw(a.presentationTimeline,d,a.ca.start),h=new _.Pw(d),b&&a.Jc&&(c[b]=h));g&&_.vw(h,a.ca.duration);g={createSegmentIndex:Promise.resolve.bind(Promise),findSegmentPosition:h.Fc.bind(h),
25
- getSegmentReference:h.get.bind(h),adjustSegmentDurations:h.Xc.bind(h),getDuration:h.getDuration.bind(h),getLastSegmentEndTime:function(){return _.Qw(h)}}}return{createSegmentIndex:g.createSegmentIndex,findSegmentPosition:g.findSegmentPosition,getSegmentReference:g.getSegmentReference,adjustSegmentDurations:g.adjustSegmentDurations,getDuration:g.getDuration,initSegmentReference:e,getLastSegmentEndTime:g.getLastSegmentEndTime,sa:f.ob}},pF=function(a){return a.lc},jF=function(a){var b=RE(a,pF),c=PE(a,
26
- pF,"media");a=PE(a,pF,"index");return{Ca:b.Ca,timescale:b.timescale,nc:b.nc,Ce:b.Ce,ob:b.ob,yf:b.yf,timeline:b.timeline,Xe:c,nd:a,re:b.re}},kF=function(a,b){var c=b.nd?1:0;c+=b.timeline?1:0;c+=b.Ca?1:0;if(0==c)throw _.Tf("SegmentTemplate does not contain any segment information:","the SegmentTemplate must contain either an index URL template","a SegmentTimeline, or a segment duration.",a.O),new _.L(_.M,4,4002);1!=c&&(_.G("SegmentTemplate contains multiple segment information sources:","the SegmentTemplate should only contain an index URL template,",
27
- "a SegmentTimeline or a segment duration.",a.O),b.nd?(_.Rf("Using the index URL template by default."),b.timeline=null):_.Rf("Using the SegmentTimeline by default."),b.Ca=null);if(!b.nd&&!b.Xe)throw _.Tf(gE,"the SegmentTemplate's media URL template is missing.",a.O),new _.L(_.M,4,4002);},lF=function(a,b,c,d){var e=a.O.mimeType.split("/")[1];if(e!=_.Ed&&"webm"!=e)throw _.Tf("SegmentTemplate specifies an unsupported container type.",a.O),new _.L(_.M,4,4006);if("webm"==e&&!c)throw _.Tf(gE,"the SegmentTemplate uses a WebM container,",
28
- "but does not contain an initialization URL template.",a.O),new _.L(_.M,4,4005);var f=OE(d.nd,a.O.id,null,a.bandwidth||null,null);f=_.Hv(a.O.Ya,[f]);return gF(a,b,c,f,0,null,e,d.ob)},mF=function(a,b){var c=a.ca.duration,d=b.Ca,e=b.nc,f=b.Ce,g=b.timescale,h=b.Xe,l=a.bandwidth||null,m=a.O.id,n=a.O.Ya;return{createSegmentIndex:Promise.resolve.bind(Promise),findSegmentPosition:function(p){return 0>p||c&&p>=c?null:Math.floor(p/d)},getSegmentReference:function(p){var q=p+e;if(null!==f&&q>f)return null;
29
- var r=p*d,v=r+d;c&&(v=Math.min(v,c));return 0>v||c&&r>=c?null:new _.Kv(p,r,v,function(){var z=OE(h,m,q,l,r*g);return _.Hv(n,[z])},0,null,b.ob)},adjustSegmentDurations:function(){},getDuration:function(){return c},getLastSegmentEndTime:function(){return c}}},nF=function(a,b){for(var c=[],d=0;d<b.timeline.length;d++){var e=d+b.nc;c.push(new _.Kv(e,b.timeline[d].start,b.timeline[d].end,function(f,g,h,l,m,n){f=OE(f,g,m,h,n);return _.Hv(l,[f]).map(function(p){return p.toString()})}.bind(null,b.Xe,a.O.id,
30
- a.bandwidth||null,a.O.Ya,e,b.timeline[d].rl+b.yf),0,null,b.ob))}return c},iF=function(a){var b=PE(a,pF,"initialization");if(!b)return null;var c=a.O.id,d=a.bandwidth||null,e=a.O.Ya;return new _.Jv(function(){var f=OE(b,c,null,d,null);return _.Hv(e,[f])},0,null)},uF=function(a,b){var c=eF(a,qF),d=rF(a);sF(a,d);var e=null,f=null;a.wa.id&&a.O.id&&(f=a.wa.id+","+a.O.id,e=b[f]);var g=tF(a.ca.duration,d.nc,a.O.Ya,d);e?(e.va(g),_.Rw(e,_.Iw(a.presentationTimeline)-a.ca.start)):(_.Fw(a.presentationTimeline,
31
- g,a.ca.start),e=new _.Pw(g),f&&a.Jc&&(b[f]=e));a.Jc&&a.ca.Pe||_.vw(e,a.ca.duration);return{createSegmentIndex:Promise.resolve.bind(Promise),findSegmentPosition:e.Fc.bind(e),getSegmentReference:e.get.bind(e),adjustSegmentDurations:e.Xc.bind(e),getDuration:e.getDuration.bind(e),initSegmentReference:c,getLastSegmentEndTime:function(){return _.Qw(e)},sa:d.ob}},qF=function(a){return a.Wb},rF=function(a){var b=vF(a);a=RE(a,qF);var c=a.nc;0==c&&(_.G("SegmentList@startNumber must be \x3e 0"),c=1);var d=0;
32
- a.Ca?d=a.Ca*(c-1):a.timeline&&0<a.timeline.length&&(d=a.timeline[0].start);return{Ca:a.Ca,startTime:d,nc:c,ob:a.ob,timeline:a.timeline,jc:b}},sF=function(a,b){if(!b.Ca&&!b.timeline&&1<b.jc.length)throw _.G(fE,"the SegmentList specifies multiple segments,","but does not specify a segment duration or timeline.",a.O),new _.L(_.M,4,4002);if(!b.Ca&&!a.ca.duration&&!b.timeline&&1==b.jc.length)throw _.G(fE,"the SegmentList specifies one segment,","but does not specify a segment duration, period duration,",
33
- "or timeline.",a.O),new _.L(_.M,4,4002);if(b.timeline&&0==b.timeline.length)throw _.G(fE,"the SegmentList has an empty timeline.",a.O),new _.L(_.M,4,4002);},tF=function(a,b,c,d){var e=d.jc.length;d.timeline&&d.timeline.length!=d.jc.length&&(e=Math.min(d.timeline.length,d.jc.length),_.G("The number of items in the segment timeline and the number of","segment URLs do not match, truncating",d.jc.length,"to",e));for(var f=[],g=d.startTime,h={},l=0;l<e;h={le:h.le},l++){var m=d.jc[l];h.le=_.Hv(c,[m.Qj]);
34
- var n=void 0;n=null!=d.Ca?g+d.Ca:d.timeline?d.timeline[l].end:g+a;f.push(new _.Kv(l+b,g,n,function(p){return function(){return p.le}}(h),m.start,m.end,d.ob));g=n}return f},vF=function(a){return[a.O.Wb,a.ua.Wb,a.wa.Wb].filter(_.Jg).map(function(b){return _.aw(b,"SegmentURL")}).reduce(function(b,c){return 0<b.length?b:c}).map(function(b){b.getAttribute("indexRange")&&!a.Ne&&(a.Ne=!0,_.G("We do not support the SegmentURL@indexRange attribute on SegmentList. We only use the SegmentList@duration attribute or SegmentTimeline, which must be accurate."));
35
- var c=b.getAttribute("media");b=EE(b,"mediaRange",HE,{start:0,end:null});return{Qj:c,start:b.start,end:b.end}})},wF=function(a,b){this.h=a;this.f=b;this.a={clockSyncUri:void 0}},yF=function(a,b,c,d){var e,f;return _.B(function(g){switch(g.a){case 1:return e=_.aw(b,"UTCTiming"),_.zf(g,2),_.x(g,xF(a,c,e),4);case 4:f=g.f;d.D=f;a.h.info("Clock synchronized. The difference between server and client clock was "+(f+" ms."));_.Af(g,3);break;case 2:_.Bf(g),a.h.warn("Failed to synchronize clocks. This content may not play on clients with bad clocks!");
36
- case 3:return g["return"](d)}})},xF=function(a,b,c){c=c.map(function(e){return{scheme:e.getAttribute(pE),value:e.getAttribute(_.Me)}});var d=a.a.clockSyncUri;!c.length&&d&&(a.h.info("No UTCTiming elements found, falling back on clockSyncUri from config to synchronize clocks."),c.push({scheme:uE,value:d}));return 0===c.length?(a.h.warn(dE),Promise.reject(Error(dE))):yE(c,function(e){var f=e.scheme;e=e.value;switch(f){case uE:case "urn:mpeg:dash:utc:http-head:2012":return zF(a,b,e,"HEAD");case "urn:mpeg:dash:utc:http-xsdate:2014":case "urn:mpeg:dash:utc:http-iso:2014":case "urn:mpeg:dash:utc:http-xsdate:2012":case "urn:mpeg:dash:utc:http-iso:2012":return zF(a,
37
- b,e,"GET");case "urn:mpeg:dash:utc:direct:2014":case "urn:mpeg:dash:utc:direct:2012":var g=Date.parse(e);return isNaN(g)?(a.h.warn("Invalid date for scheme "+f+", value: "+e),Promise.reject()):Promise.resolve(g-Date.now());case "urn:mpeg:dash:utc:http-ntp:2014":case "urn:mpeg:dash:utc:ntp:2014":case "urn:mpeg:dash:utc:sntp:2014":return a.h.warn("NTP UTCTiming scheme is not supported"),Promise.reject();default:return a.h.warn("Unrecognized scheme in UTCTiming element",f),Promise.reject()}})["catch"](function(){a.h.warn(bE);
38
- return Promise.reject(Error(bE))})},zF=function(a,b,c,d){var e,f,g,h;return _.B(function(l){if(1==l.a)return e=_.Hv(b,[c]),_.x(l,a.f(e,d),2);f=l.f;if("HEAD"==d){if(!f.headers||!f.headers.date)throw a.h.warn("UTC timing response is missing","expected date header"),Error("Date HTTP header missing.");g=f.headers.date}else g=_.uh(f.data);h=Date.parse(g);if(isNaN(h))throw a.h.warn("Unable to parse date from UTC timing response"),Error("Date value invalid.");return l["return"](h-Date.now())})},BF=function(a,
39
- b){return a.find(function(c){return AF.get(c.Gb)===b})},CF=function(a){var b=CE(a.node,sE,"pro");if(!b)return _.G(cE,a),null;a=_.Lh(b.textContent);a=_.lw(a);a=_.zl(a.a);return{keyId:null,Gb:wE,node:document.createElement("null"),init:[{initData:_.Av(a),initDataType:_.Ac,keyId:null}]}},DF=function(a,b){b=void 0===b?"4.0.0.0":b;var c=CE(a.node,tE,"pssh");if(!c)return _.G("Missing \x3ccenc:pssh/\x3e node in ContentProtection element",a),null;c=_.Lh(c.textContent);c=_.Al(c);return c?(c=_.gw(b,c.a))?{keyId:null,
40
- Gb:vE,node:document.createElement("null"),init:[{initData:_.Av(c),initDataType:_.Ac,keyId:null}]}:null:(_.G("Unable to parse WV PSSH data. Can not create PR data!"),null)},EF=function(a,b){var c=CE(a.node,sE,"pro");if(!c)return _.G(cE,a),null;c=_.Lh(c.textContent);c=_.lw(c);return c.version!==b&&(_.Sf("Parsing from "+c.version+" to "+b+"."),c=_.hw(c,b))?{keyId:null,Gb:vE,node:document.createElement("null"),init:[{initData:_.Av(c),initDataType:_.Ac,keyId:null}]}:null},HF=function(a,b,c,d){var e=FF(a),
41
- f=null;a=[];var g=[],h=BF(e,_.Rc),l=BF(e,_.Qc);if(l&&d){var m=EF(l,d);m&&(e[e.indexOf(l)]=m)}l&&!h&&(m=CF(l))&&e.push(m);h&&!l&&(d=DF(h,d||void 0))&&e.push(d);d=new Set(e.map(function(n){return n.keyId}));d["delete"](null);if(1<d.size)throw new _.L(_.M,4,4010);b||(g=e.filter(function(n){return"urn:mpeg:dash:mp4protection:2011"==n.Gb?(f=n.init||f,!1):!0}),g.length&&(a=GF(f,g,c),0==a.length&&(a=[_.Iv(_.Id,f,c)])));if(e.length&&(b||!g.length))for(a=[],b=_.u(AF.values()),e=b.next();!e.done;e=b.next())e=
42
- e.value,e!=_.Rd&&a.push(_.Iv(e,f,c));if(c=Array.from(d)[0]||null)for(b=_.u(a),e=b.next();!e.done;e=b.next())for(e=_.u(e.value.initData),g=e.next();!g.done;g=e.next())g.value.keyId=c;return{hd:c,Sl:f,drmInfos:a,eg:!0}},IF=function(a,b,c,d,e){var f=HF(a,c,d,e);if(b.eg){a=1==b.drmInfos.length&&!b.drmInfos[0].keySystem;c=0==f.drmInfos.length;if(0==b.drmInfos.length||a&&!c)b.drmInfos=f.drmInfos;b.hd=f.hd||b.hd;b.eg=!1}else if(0<f.drmInfos.length&&(b.drmInfos=b.drmInfos.filter(function(g){return f.drmInfos.some(function(h){return h.keySystem==
43
- g.keySystem})}),0==b.drmInfos.length))throw new _.L(_.M,4,4008);return f.hd||b.hd},GF=function(a,b,c){var d=[];b=_.u(b);for(var e=b.next();!e.done;e=b.next()){e=e.value;var f=AF.get(e.Gb);if(f){var g=_.Iv(f,e.init||a,c);if(f=JF.get(f))g.licenseServerUri=f(e);d.push(g)}}return d},FF=function(a){var b=[];a=_.u(a);for(var c=a.next();!c.done;c=a.next())(c=KF(c.value))&&b.push(c);return b},KF=function(a){var b=a.getAttribute(pE),c=DE(a,tE,"default_KID"),d=BE(a,tE,"pssh").map(_.cw);if(!b)return _.Tf("Missing required schemeIdUri attribute on",
44
- "ContentProtection element",a),null;b=b.toLowerCase();if(c&&(c=c.replace(/-/g,"").toLowerCase(),c.includes(" ")))throw new _.L(_.M,4,4009);var e=[];try{e=d.map(function(f){return{initDataType:_.Ac,initData:_.Lh(f),keyId:null}})}catch(f){throw new _.L(_.M,4,4007);}return{node:a,Gb:b,keyId:c,init:0<e.length?e:null}},LF=function(){var a=this;this.C=this.a=null;this.j=[];this.f=null;this.D=[];this.o=1;this.F={};this.g=0;this.H=new _.xw(5);this.w=new _.Wi(function(){a.Eb()});this.m=new _.fi;this.h=new _.I("clpp.dash.DashParser");
45
- this.A=null;this.I=new wF(this.h,function(b,c){var d=_.Xh(b,a.a.attemptParameters);d.type=5;d.method=c;d=a.C.networkingEngine.fetch(d);_.gi(a.m,d);return d.P});this.B=new Map},NF=function(a){var b,c,d,e,f,g,h;return _.B(function(l){if(1==l.a)return b=_.Xh(a.j,a.a.attemptParameters),b.type=1,c=a.C.networkingEngine,d=Date.now(),e=c.fetch(b),_.gi(a.m,e),_.x(l,e.P,2);if(3!=l.a){f=l.f;if(!a.C)return l["return"](0);f.uri&&!a.j.includes(f.uri)&&a.j.unshift(f.uri);return _.x(l,MF(a,f.data,f.uri),3)}g=Date.now();
46
- h=(g-d)/1E3;_.yw(a.H,1,h);return l["return"](h)})},MF=function(a,b,c){var d,e,f,g;return _.B(function(h){if(1==h.a){d=ME(b,"MPD");if(!d)throw new _.L(_.M,4,4001,c);e=a.a.xlinkFailGracefully;f=SE(d,a.a.attemptParameters,e,c,a.C.networkingEngine);_.gi(a.m,f);return _.x(h,f.P,2)}g=h.f;return h["return"](OF(a,g,c))})},OF=function(a,b,c){var d,e,f,g,h,l,m,n,p,q,r,v,z,A,E,H,D,F,V,P,Ca,qa;return _.B(function(ra){if(1==ra.a){d=[c];e=_.aw(b,"Location").map(_.cw).filter(_.Jg);0<e.length&&(f=_.Hv(d,e),d=a.j=
47
- f);g=_.aw(b,"BaseURL").map(_.cw);h=_.Hv(d,g);l=EE(b,"minBufferTime",GE,0);m=b.getAttribute("type")||qE;a.g=EE(b,"minimumUpdatePeriod",GE,-1);m===qE&&0<=a.g&&(a.h.warn("Invalid manifest - a static manifest should not contain the `minimumUpdatePeriod` attribute. The attribute will be ignored."),a.g=-1,a.w.stop());n=EE(b,"availabilityStartTime",FE);p=EE(b,"timeShiftBufferDepth",GE);q=EE(b,"suggestedPresentationDelay",GE);r=EE(b,"maxSegmentDuration",GE);if(v=m===qE&&"dynamic"===a.A)a.h.info("MPD dynamic to static transition."),
48
- m="dynamic";z=m===qE;A="dynamic"===m;if(a.f)return E=a.f.presentationTimeline,ra.G(2);H=3*l;D=null!=q?q:H;E=new _.Bw(n,D,m===qE,!!a.a.autoCorrectDrift);return A?_.x(ra,yF(a.I,b,h,E),4):ra.G(2)}if(2!=ra.a&&(E=ra.f,!a.C))return ra["return"]();F={Jc:A,presentationTimeline:E,wa:null,ca:null,ua:null,O:null,bandwidth:0,Ne:!1,Gj:v,sf:null,pd:null};var Da=EE(b,"mediaPresentationDuration",GE);for(var Fa=[],pa=0,za=_.aw(b,"Period"),La=0;La<za.length;La++){var tb=za[La];pa=EE(tb,_.oe,GE,pa);var Zb=EE(tb,jE,
49
- GE),bb=null;if(La!=za.length-1){var gf=EE(za[La+1],_.oe,GE);null!=gf&&(bb=gf-pa)}else null!=Da&&(bb=Da-pa);gf=_.lq;bb&&Zb&&Math.abs(bb-Zb)>gf&&a.h.warn("There is a gap/overlap between Periods",tb);null==bb&&(bb=Zb);tb=PF(a,F,h,{start:pa,duration:bb,node:tb,Pe:null==bb||La==za.length-1});Fa.push(tb);Zb=F.wa.id;a.D.includes(Zb)||(a.D.push(Zb),a.f&&(a.C.filterNewPeriod(tb),a.f.periods.push(tb)));if(null==bb){La!=za.length-1&&a.h.warn("Skipping Period",La+1,"and any subsequent Periods:","Period",La+1,
50
- "does not have a valid start time.",Fa[La+1]);pa=null;break}pa+=bb}null==a.f&&a.C.filterAllPeriods(Fa);null!=Da?(pa!=Da&&a.h.warn("@mediaPresentationDuration does not match the total duration of ","all Periods."),Da={periods:Fa,duration:Da,Zf:!1}):Da={periods:Fa,duration:pa,Zf:!0};V=Da;P=V.duration;Ca=V.periods;v&&(QF(Ca,F),E.w=!0,a.C.onEvent(new _.J(_.Fd)));if(z||!v&&!V.Zf)E.f=P||Infinity;(qa=E.isLive())&&a.a.availabilityWindowOverride&&!isNaN(a.a.availabilityWindowOverride)&&(p=a.a.availabilityWindowOverride);
51
- null==p&&(p=Infinity);E.m=p;_.Gw(E,r||1);E.isLive();a.f||(a.f={presentationTimeline:E,periods:Ca,offlineSessionIds:[],minBufferTime:l||0});a.A=m;_.y(ra)})},PF=function(a,b,c,d){b.wa=RF(a,d.node,null,c);b.ca=d;b.wa.id||(a.h.info("No Period ID given for Period with start time "+d.start+", Assigning a default"),b.wa.id="__clpp_period_"+d.start);c=_.aw(d.node,"EventStream");c=_.u(c);for(var e=c.next();!e.done;e=c.next())SF(a,d.start,d.duration,e.value);e=_.aw(d.node,_.fa).map(function(n){return TF(a,
52
- b,n)}).filter(_.Jg);if(b.Jc){c=[];for(var f=_.u(e),g=f.next();!g.done;g=f.next()){g=_.u(g.value.al);for(var h=g.next();!h.done;h=g.next())c.push(h.value)}if(c.length!=(new Set(c)).size)throw new _.L(_.M,4,4018);}c=e.filter(function(n){return!n.xf});e=e.filter(function(n){return n.xf});e=_.u(e);for(f=e.next();!f.done;f=e.next()){g=f.value;f=g.streams[0];g=g.xf;h=_.u(c);for(var l=h.next();!l.done;l=h.next())if(l=l.value,l.id==g){l=_.u(l.streams);for(var m=l.next();!m.done;m=l.next())m.value.trickModeVideo=
53
- f}}f=UF(c,_.Pe);g=UF(c,_.jc);if(!f.length&&!g.length)throw new _.L(_.M,4,4004);g.length||(g=[null]);f.length||(f=[null]);e=[];g=_.u(g);for(h=g.next();!h.done;h=g.next())for(h=h.value,l=_.u(f),m=l.next();!m.done;m=l.next())VF(a,h,m.value,e);g=_.mf(UF(c,_.Ae)).concat(_.mf(UF(c,_.we)));f=[];g=_.u(g);for(h=g.next();!h.done;h=g.next())f.push.apply(f,h.value.streams);g=UF(c,_.md);c=[];g=_.u(g);for(h=g.next();!h.done;h=g.next())c.push.apply(c,h.value.streams);return{startTime:d.start,textStreams:f,thumbStreams:c,
54
- variants:e}},UF=function(a,b){return a.filter(function(c){return c.contentType==b})},VF=function(a,b,c,d){var e;if(b||c)if(b&&c){if(_.Qv(b.drmInfos,c.drmInfos)){var f=_.Pv(b.drmInfos,c.drmInfos),g=_.u(b.streams);for(e=g.next();!e.done;e=g.next()){var h=e.value,l=_.u(c.streams);for(e=l.next();!e.done;e=l.next()){var m=e.value;e=(m.bandwidth||0)+(h.bandwidth||0);e={id:a.o++,language:b.language,primary:b.We||c.We,audio:h,video:m,bandwidth:e,drmInfos:f,allowedByApplication:!0,allowedByKeySystem:!0};d.push(e)}}}}else for(f=
55
- b||c,g=_.u(f.streams),e=g.next();!e.done;e=g.next())h=e.value,e=h.bandwidth||0,e={id:a.o++,language:f.language||_.Ge,primary:f.We,audio:b?h:null,video:c?h:null,bandwidth:e,drmInfos:f.drmInfos,allowedByApplication:!0,allowedByKeySystem:!0},d.push(e)},TF=function(a,b,c){b.ua=RF(a,c,b.wa,null);var d=!1,e=_.aw(c,"Role"),f=e.map(function(D){return D.getAttribute(_.Me)}).filter(_.Jg),g=null,h=_.aw(c,"Label").map(function(D){return D.textContent}).filter(_.Jg);h&&0<h.length&&(g=h[h.length-1]);var l=void 0;
56
- (h=b.ua.contentType==_.Ae)&&(l=_.we);e=_.u(e);for(var m=e.next();!m.done;m=e.next()){m=m.value;var n=m.getAttribute(pE);if(null==n||"urn:mpeg:dash:role:2011"===n||"urn:mpeg:dash:role"===n)switch(m=m.getAttribute(_.Me),m){case "main":d=!0;break;case "caption":case _.we:l=m}}m=_.aw(c,aE);e=null;m=_.u(m);for(var p=m.next();!p.done;p=m.next()){p=p.value;n=p.getAttribute(pE);p=p.getAttribute(_.Me);if(n!==kE&&!WF.includes(n)||void 0===p)return null;n===kE&&(e=p)}m=_.aw(c,"Accessibility");var q=new Map;
57
- n=_.u(m);for(p=n.next();!p.done;p=n.next()){var r=p.value;p=r.getAttribute(pE);if("urn:scte:dash:cc:cea-608:2015"==p||"urn:scte:dash:cc:cea-708:2015"==p)if(p=1,r=r.getAttribute(_.Me),null!=r){r=_.u(r.split(";"));for(var v=r.next();!v.done;v=r.next()){var z=v.value,A=v=void 0;z.includes("\x3d")?(z=z.split("\x3d"),v=z[0].startsWith("CC")?z[0]:"CC"+z[0],A=z[1].split(",")[0].split(":").pop()):(v="CC"+p,p+=2,A=z);q.set(v,_.eh(A))}}else q.set("CC1",_.Ge)}n=_.aw(c,$D);var E=HF(n,a.a.ignoreDrmInfo,b.wa.id,
58
- a.a.playreadyVersion||null),H=_.eh(c.getAttribute("lang")||_.Ge);null==g&&(g=c.getAttribute("label"));n=_.aw(c,_.jb);c=n.map(function(D){return XF(a,b,E,l,H,g,d,f,q,D)}).filter(function(D){return!!D});if(0==c.length){if(h)return null;throw new _.L(_.M,4,4003);}if(!b.ua.contentType||b.ua.contentType==_.ac)for(b.ua.contentType=YF(c[0].mimeType,c[0].codecs),h=_.u(c),p=h.next();!p.done;p=h.next())p.value.type=b.ua.contentType;h=_.u(c);for(p=h.next();!p.done;p=h.next())for(p=p.value,r=_.u(E.drmInfos),
59
- v=r.next();!v.done;v=r.next())v=v.value,p.keyId&&!v.keyIds.includes(p.keyId)&&v.keyIds.push(p.keyId);c=ZF(c,b.ua.contentType,m);h=n.map(function(D){return D.getAttribute("id")}).filter(_.Jg);return{id:b.ua.id||"__fake__"+a.o++,contentType:b.ua.contentType,language:H,We:d,streams:c,drmInfos:E.drmInfos,xf:e,al:h}},ZF=function(a,b,c){var d=b===_.we?_.Ae:b;b=c.map(function(f){return{scheme:f.getAttribute(pE)||"",id:f.getAttribute("id")||void 0,value:f.getAttribute(_.Me)||"",protocol:"DASH",type:d}});
60
- c=_.u(a);for(var e=c.next();!e.done;e=c.next())e.value.accessibility=b;return a},XF=function(a,b,c,d,e,f,g,h,l,m){b.O=RF(a,m,b.ua,null);if(!$F(a,b.O))return a.h.warn("Skipping Representation",b.O),null;b.sf=b.wa.id+" "+b.O.id;b.pd=a.B.get(b.sf);b.bandwidth=EE(m,"bandwidth",JE)||0;var n=b.O.contentType,p=n==_.Ae||n==_.ac,q=n==_.md;try{if(n=function(A,E,H){return aG(a,A,E,H)},b.O.vd)var r=hF(b,n);else if(b.O.Wb)r=uF(b,a.F);else if(b.O.lc)r=oF(b,n,a.F,!!a.f);else{var v=b.O.Ya,z=b.ca.duration||0;r={createSegmentIndex:function(){return Promise.resolve()},
61
- findSegmentPosition:function(A){return 0<=A&&A<z?1:null},getSegmentReference:function(A){return 1!=A?null:new _.Kv(1,0,z,function(){return v},0,null,0)},adjustSegmentDurations:function(){},getLastSegmentEndTime:function(){return z},getDuration:function(){return z},initSegmentReference:null,sa:0}}}catch(A){if(p&&4002==A.code)return null;throw A;}a.B.set(b.sf,r.sa);p=_.aw(m,$D);p=IF(p,c,a.a.ignoreDrmInfo,b.wa.id,a.a.playreadyVersion||null);n=void 0;q&&(q=(m=_.bw(m,aE))&&m.getAttribute(pE),bG.includes(q||
62
- "")&&(m=(m=m.getAttribute(_.Me))&&m.split("x").map(function(A){return parseInt(A,10)}))&&2==m.length&&(r.horizontalTiles=m[0],r.verticalTiles=m[1],b.ua.lc&&(m=r.horizontalTiles*r.verticalTiles,n=(n=EE(b.ua.lc,jE,KE)||0)?n/m:void 0)));return{id:a.o++,originalId:b.O.id,createSegmentIndex:r.createSegmentIndex,findSegmentPosition:r.findSegmentPosition,getSegmentReference:r.getSegmentReference,initSegmentReference:r.initSegmentReference,adjustSegmentDurations:r.adjustSegmentDurations,getLastSegmentEndTime:r.getLastSegmentEndTime,
63
- getDuration:r.getDuration,segmentLookupStrategy:_.mv,mimeType:b.O.mimeType,codecs:b.O.codecs,frameRate:b.O.frameRate,bandwidth:b.bandwidth,width:b.O.width,height:b.O.height,kind:d,encrypted:0<c.drmInfos.length,keyId:p,language:e,label:f,type:b.ua.contentType,primary:g,trickModeVideo:null,emsgSchemeIdUris:b.O.emsgSchemeIdUris,roles:h,channelsCount:b.O.Ye,closedCaptions:l,horizontalTiles:r.horizontalTiles,verticalTiles:r.verticalTiles,durationPerTile:n}},cG=function(a,b){0>a.g||a.w.aa(Math.max(3,a.g-
64
- b,_.zw(a.H)))},RF=function(a,b,c,d){c=c||{contentType:"",mimeType:"",codecs:"",emsgSchemeIdUris:[],frameRate:void 0,Ye:null};d=d||c.Ya;var e=_.aw(b,"BaseURL").map(_.cw),f=b.getAttribute("contentType")||c.contentType,g=b.getAttribute(_.Bd)||c.mimeType,h=b.getAttribute(_.Mc)||c.codecs,l=EE(b,"frameRate",LE)||c.frameRate,m=_.aw(b,"InbandEventStream"),n=c.emsgSchemeIdUris.slice();m=_.u(m);for(var p=m.next();!p.done;p=m.next())p=p.value.getAttribute(pE),n.includes(p)||n.push(p);m=_.aw(b,"AudioChannelConfiguration");
65
- a=dG(a,m)||c.Ye;f||(f=YF(g,h));return{Ya:_.Hv(d,e),vd:_.bw(b,"SegmentBase")||c.vd,Wb:_.bw(b,"SegmentList")||c.Wb,lc:_.bw(b,"SegmentTemplate")||c.lc,width:EE(b,_.df,KE)||c.width,height:EE(b,_.kd,KE)||c.height,contentType:f,mimeType:g,codecs:h,frameRate:l,emsgSchemeIdUris:n,id:b.getAttribute("id"),Ye:a}},dG=function(a,b){for(var c=_.u(b),d=c.next();!d.done;d=c.next()){var e=d.value;if(d=e.getAttribute(pE))if(e=e.getAttribute(_.Me))switch(d){case "urn:mpeg:dash:outputChannelPositionList:2012":return e.trim().split(/ +/).length;
66
- case "urn:mpeg:dash:23003:3:audio_channel_configuration:2011":case "urn:dts:dash:audio_channel_configuration:2012":var f=parseInt(e,10);if(!f){a.h.warn(ZD,d,e);continue}return f;case "tag:dolby.com,2014:dash:audio_channel_configuration:2011":case "urn:dolby:dash:audio_channel_configuration:2011":f=parseInt(e,16);if(!f){a.h.warn(ZD,d,e);continue}for(c=0;f;)f&1&&++c,f>>=1;return c;default:a.h.warn("Unrecognized audio channel scheme:",d,e)}}return null},$F=function(a,b){var c=b.vd?1:0;c+=b.Wb?1:0;c+=
67
- b.lc?1:0;if(0==c){if(b.contentType==_.Ae||b.contentType==_.ac)return!0;a.h.warn("Representation does not contain a segment information source:","the Representation must contain one of SegmentBase, SegmentList,",'SegmentTemplate, or explicitly indicate that it is "text".',b);return!1}1!=c&&(a.h.warn("Representation contains multiple segment information sources:","the Representation should only contain one of SegmentBase,","SegmentList, or SegmentTemplate.",b),b.vd?(a.h.info("Using SegmentBase by default."),
68
- b.Wb=null):a.h.info("Using SegmentList by default."),b.lc=null);return!0},SF=function(a,b,c,d){var e=d.getAttribute(pE)||"",f=d.getAttribute(_.Me)||"",g=EE(d,rE,KE)||1,h={};d=_.u(_.aw(d,"Event"));for(var l=d.next();!l.done;h={tc:h.tc},l=d.next()){l=l.value;var m=EE(l,"presentationTime",KE)||0,n=EE(l,jE,KE)||0;m=m/g+b;n=m+n/g;null!=c&&(m=Math.min(m,b+c),n=Math.min(n,b+c));var p=_.lg;e.startsWith(_.Ie)?p=_.ng:"urn:mpeg:dash:event:callback:2015"===e&&(p=_.Gd);h.tc={schemeIdUri:e,value:f,startTime:m,
69
- endTime:n,id:l.getAttribute("id")||"",type:p,eventElement:l};h.tc.type===_.Gd&&(h.tc.Zd=function(q){return function(){var r=q.tc;r.eventElement&&(r=r.eventElement.getAttribute("messageData")||"")&&r.startsWith("http")&&(r=_.Xh(r),r.type=_.Wh,a.C.networkingEngine.fetch(r))}}(h));a.C.onTimelineCueAdded(h.tc)}},aG=function(a,b,c,d){var e,f,g,h;return _.B(function(l){if(1==l.a)return e=_.Aw(b,c,d,a.a.attemptParameters),e.type=2,f=a.C.networkingEngine,g=f.fetch(e),_.gi(a.m,g),_.x(l,g.P,2);h=l.f;return l["return"](h.data)})},
70
- YF=function(a,b){return _.cx(_.Ti(a,b))?_.Ae:a.split("/")[0]},eG=function(a){var b=new Set;a.forEach(function(c){c.variants.forEach(function(d){d.audio&&b.add(d.audio);d.video&&b.add(d.video)})});return Array.from(b)},QF=function(a,b){eG(a).forEach(function(c){c=c.getLastSegmentEndTime?c.getLastSegmentEndTime():0;if(0<c){var d=b.presentationTimeline;d.g=Math.max(d.g||0,c+b.ca.start)}})},fG=function(){},bG=["http://dashif.org/thumbnail_tile","http://dashif.org/guidelines/thumbnail_tile"],WF=["urn:mpeg:mpegB:cicp:ColourPrimaries",
71
- "urn:mpeg:mpegB:cicp:MatrixCoefficients","urn:mpeg:mpegB:cicp:TransferCharacteristics"];var YE=[[255],[127,255],[63,255,255],[31,255,255,255],[15,255,255,255,255],[7,255,255,255,255,255],[3,255,255,255,255,255,255],[1,255,255,255,255,255,255,255]];bF.prototype.parse=function(a,b,c,d){b=new WE(new DataView(b));if(440786851!=$E(b).id)throw _.Tf("Not an EBML element."),new _.L(_.M,3,3008);var e=$E(b);if(408125543!=e.id)throw _.Tf("Not a Segment element."),new _.L(_.M,3,3009);b=e.a.byteOffset;e=new WE(e.a);for(var f=null;_.Ck(e.a);){var g=$E(e);if(357149030==g.id){f=g;break}}if(!f)throw _.Tf("Not an Info element."),new _.L(_.M,3,3010);f=new WE(f.a);g=1E6;for(e=null;_.Ck(f.a);){var h=$E(f);if(2807729==h.id)g=aF(h);else if(17545==h.id)if(4==h.a.byteLength)e=
72
- h.a.getFloat32(0);else if(8==h.a.byteLength)e=h.a.getFloat64(0);else throw new _.L(_.M,3,3003);}if(null==e)throw new _.L(_.M,3,3011);f=g/1E9;e*=f;a=$E(new WE(new DataView(a)));if(475249515!=a.id)throw _.Tf("Not a Cues element."),new _.L(_.M,3,3007);return dF(a,b,f,e,c,d)};var AF=(new Map).set("urn:uuid:1077efec-c0b2-4d02-ace3-3c1e52e2fb4b",_.Rd).set(wE,_.Rc).set(vE,_.Qc).set("urn:uuid:79f0049a-4098-8642-ab92-e65be0885f95",_.Qc).set("urn:uuid:94ce86fb-07ff-4f43-adb8-93d2fa968ca2",_.Pc).set("urn:uuid:f239e769-efa3-4850-9c16-a903c6932efb",_.Oc),JF=(new Map).set(_.Rc,function(a){return(a=CE(a.node,"urn:microsoft","laurl"))?a.getAttribute("licenseUrl")||"":""}).set(_.Qc,function(a){a=CE(a.node,sE,"pro");if(!a)return"";a=_.Lh(a.textContent);return _.lw(a).g||""});_.t=LF.prototype;_.t.configure=function(a){this.a=a;this.I.a={clockSyncUri:a.clockSyncUri}};_.t.start=function(a,b){var c=this,d;return _.B(function(e){if(1==e.a)return c.j=[a],c.C=b,_.x(e,NF(c),2);d=e.f;c.C&&cG(c,d);if(!c.C)throw new _.L(_.M,7,7001);return e["return"](c.f)})};_.t.stop=function(){this.a=this.C=null;this.j=[];this.f=null;this.D=[];this.F={};this.A=null;this.g=-1;this.w.stop();this.B.clear();return this.m.destroy()};
73
- _.t.update=function(){var a=this;NF(this)["catch"](function(b){if(a.C&&b)a.C.onError(b)})};_.t.onExpirationUpdated=function(){};_.t.setCurrentVariant=function(){};_.t.Eb=function(){var a=this,b,c,d;return _.B(function(e){switch(e.a){case 1:return a.h.debug(_.ev),b=0,_.zf(e,2),_.x(e,NF(a),4);case 4:b=e.f;_.Af(e,3);break;case 2:if(c=_.Bf(e),a.C&&c.a&&(a.C.onError(c),d=c,d.severity===_.M))return e["return"]();case 3:if(!a.C)return e["return"]();cG(a,b);_.y(e)}})};_.w(fG,_.wo);_.t=fG.prototype;_.t.Oa=function(){_.tp.mpd=LF;_.rp[_.cc]=LF};_.t.Ha=function(){_.Xw("mpd");_.Yw(_.cc)};_.t.ac=function(){};_.t.release=function(){};_.t.id=function(){return"dash"};_.C("clpp.dash.DashComponent",fG);};
9
+ default:g=n.toString()}l=window.parseInt(l,10)||1;return Array(Math.max(0,l-g.length)+1).join("0")+g})},aF=function(a,b){var c=ZE(a,b,BE),d=1;c&&(d=TE(c)||1);c=ZE(a,b,tE);(c=TE(c||""))&&(c/=d);var e=Number(ZE(a,b,yE))||0,f=e/d||0;a.Kj&&null!=a.rd&&a.rd!==f&&(_.G("The stream is non-compliant with the DASH spec. The value of `presentationTimeOffset` has changed during the transition from dynamic to static manifest, which is not allowed. The last value will be ignored. (Period ID: "+(a.xa.id+", Representation ID: ")+
10
+ (a.O.id+")")),e=a.rd*d,f=a.rd);var g=ZE(a,b,"startNumber"),h=UE(g||"");if(null==g||null==h)h=1;g=ZE(a,b,"endNumber");g=null!==g?UE(g||""):null;var l=$E(a,b,rE),m=null;if(l){m=d;var n=e,p=a.ca.duration||Infinity;l=_.iw(l,"S");for(var q=[],r=0,v=0;v<l.length;++v){var z=l[v],A=OE(z,"t",UE),D=OE(z,"d",UE),F=OE(z,"r",SE);null!=A&&(A-=n);if(!D){_.G('"S" element must have a duration:',xE,z);break}A=null!=A?A:r;F=F||0;if(0>F)if(v+1<l.length){F=OE(l[v+1],"t",UE);if(null==F){_.G('An "S" element cannot have a negative repeat',
11
+ 'if the next "S" element does not have a valid start time:',xE,z);break}else if(A>=F){_.G('An "S" element cannot have a negative repeat if its start ','time exceeds the next "S" element\'s start time:',xE,z);break}F=Math.ceil((F-A)/D)-1}else{if(Infinity==p){_.G(sE,"if the Period has an infinite duration:",wE,z);break}else if(A/m>=p){_.G(sE,"if its start time exceeds the Period's duration:",wE,z);break}F=Math.ceil((p*m-A)/D)-1}0<q.length&&A!=r&&(Math.abs((A-r)/m)>=_.qq&&_.G("SegmentTimeline contains a large gap/overlap:",
12
+ "the content may have errors in it.",z),q[q.length-1].end=A/m);for(z=0;z<=F;++z)r=A+D,q.push({start:A/m,end:r/m,vl:A}),A=r}m=q}n=ZE(a,b,"availabilityTimeOffset");p=Number(n||"");p=isNaN(p)?null:p;if(null==n||null==p)p=0;return{timescale:d,Ca:c,nc:h,Ee:g,ob:f,zf:e,timeline:m,te:p}},ZE=function(a,b,c){return[b(a.O),b(a.va),b(a.xa)].filter(_.Ng).map(function(d){return d.getAttribute(c)}).reduce(function(d,e){return d||e})},$E=function(a,b,c){return[b(a.O),b(a.va),b(a.xa)].filter(_.Ng).map(function(d){return _.jw(d,
13
+ c)}).reduce(function(d,e){return d||e})},cF=function(a,b,c,d,e,f){for(var g=NE(a,vE,"href"),h=NE(a,vE,"actuate")||"onRequest",l=0;l<a.attributes.length;l++){var m=a.attributes[l];m.namespaceURI==vE&&(a.removeAttributeNS(m.namespaceURI,m.localName),--l)}if(5<=f)return JE(new _.L(_.M,4,4028));if("onLoad"!=h)return JE(new _.L(_.M,4,4027));var n=_.Pv([d],[g]);d=_.ai(n,b);d.type=1;return e.fetch(d).Kd(function(p){p=WE(p.data,a.tagName);if(!p)return JE(new _.L(_.M,4,4001,{uri:g}));for(;a.childNodes.length;)a.removeChild(a.childNodes[0]);
14
+ for(;p.childNodes.length;){var q=p.childNodes[0];p.removeChild(q);a.appendChild(q)}for(q=0;q<p.attributes.length;q++){var r=p.attributes[q].nodeName,v=p.getAttribute(r);a.setAttribute(r,v)}return bF(a,b,c,n[0],e,f+1)})},bF=function(a,b,c,d,e,f){f=void 0===f?0:f;if(NE(a,vE,"href")){var g=cF(a,b,c,d,e,f);c&&(g=g.Kd(void 0,function(){return bF(a,b,c,d,e,f)}));return g}g=[];for(var h=0;h<a.childNodes.length;h++){var l=a.childNodes[h];l instanceof Element&&("urn:mpeg:dash:resolve-to-zero:2013"==NE(l,vE,
15
+ "href")?(a.removeChild(l),--h):l.tagName!=rE&&g.push(bF(l,b,c,d,e,f)))}return KE(g).Kd(function(){return a})},eF=function(a,b,c,d){var e,f=(new _.Ok).Y("sidx",function(h){e=dF(b,d,c,h)});a&&f.parse(a);if(e)return e;f=b+"-"+(b+a.byteLength-1);var g=c[0];a=_.N(a);_.Vf('Invalid box type. Expected "sidx", but received:',a,"from:",g,"byte range:",f);throw new _.L(_.M,3,3004,{url:g,Tl:f,size:a.byteLength,hm:XE(a)});},dF=function(a,b,c,d){var e=[];d.reader.skip(4);var f=_.U(d.reader);if(0==f)throw _.Vf("Invalid timescale."),
16
+ new _.L(_.M,3,3005);if(0==d.version){var g=_.U(d.reader);var h=_.U(d.reader)}else g=_.Lk(d.reader),h=_.Lk(d.reader);d.reader.skip(2);var l=_.Jk(d.reader);a=a+d.size+h;for(h=0;h<l;h++){var m=_.U(d.reader),n=(m&2147483648)>>>31;m&=2147483647;var p=_.U(d.reader);d.reader.skip(4);if(1==n)throw _.Vf("Hierarchical SIDXs are not supported."),new _.L(_.M,3,3006);e.push(new _.Sv(e.length,g/f-b,(g+p)/f-b,function(){return c},a,a+m-1,b));g+=p;a+=m}d.parser.stop();return e},fF=function(a){this.f=a;this.a=new _.Fk(a,
17
+ !1)},jF=function(a){var b=gF(a);if(7<b.length)throw new _.L(_.M,3,3002);for(var c=0,d=0;d<b.length;d++)c=256*c+b[d];b=c;c=gF(a);a:{d=_.u(hF);for(var e=d.next();!e.done;e=d.next())if(_.Sh(c,new Uint8Array(e.value))){d=!0;break a}d=!1}if(d)c=a.f.byteLength-a.a.getPosition();else{if(8==c.length&&c[1]&224)throw new _.L(_.M,3,3001);d=c[0]&(1<<8-c.length)-1;for(e=1;e<c.length;e++)d=256*d+c[e];c=d}c=a.a.getPosition()+c<=a.f.byteLength?c:a.f.byteLength-a.a.getPosition();d=new DataView(a.f.buffer,a.f.byteOffset+
18
+ a.a.getPosition(),c);a.a.skip(c);return new iF(b,d)},gF=function(a){var b=_.Ik(a.a),c;for(c=1;8>=c&&!(b&1<<8-c);c++);if(8<c)throw new _.L(_.M,3,3002);var d=new Uint8Array(c);d[0]=b;for(b=1;b<c;b++)d[b]=_.Ik(a.a);return d},iF=function(a,b){this.id=a;this.a=b},kF=function(a){if(8<a.a.byteLength)throw new _.L(_.M,3,3002);if(8==a.a.byteLength&&a.a.getUint8(0)&224)throw new _.L(_.M,3,3001);for(var b=0,c=0;c<a.a.byteLength;c++){var d=a.a.getUint8(c);b=256*b+d}return b},lF=function(){},nF=function(a,b,c,
19
+ d,e,f){function g(){return e}var h=[];a=new fF(a.a);for(var l=null,m=null;_.Gk(a.a);){var n=jF(a);if(187==n.id){var p=mF(n);p&&(n=c*p.wl,p=b+p.bl,null!=l&&h.push(new _.Sv(h.length,l-f,n-f,g,m,p-1,f)),l=n,m=p)}}null!=l&&h.push(new _.Sv(h.length,l-f,d-f,g,m,null,f));return h},mF=function(a){var b=new fF(a.a);a=jF(b);if(179!=a.id)throw _.G("Not a CueTime element."),new _.L(_.M,3,3013);a=kF(a);b=jF(b);if(183!=b.id)throw _.G("Not a CueTrackPositions element."),new _.L(_.M,3,3012);b=new fF(b.a);for(var c=
20
+ 0;_.Gk(b.a);){var d=jF(b);if(241==d.id){c=kF(d);break}}return{wl:a,bl:c}},oF=function(a,b){var c=$E(a,b,"Initialization");if(!c)return null;var d=a.O.Ya,e=c.getAttribute("sourceURL");e&&(d=_.Pv(a.O.Ya,[e]));e=0;var f=null;if(c=OE(c,"range",RE))e=c.start,f=c.end;return new _.Rv(function(){return d},e,f)},rF=function(a,b){var c=Number(ZE(a,pF,yE))||0,d=ZE(a,pF,BE),e=1;d&&(e=TE(d)||1);c=c/e||0;d=oF(a,pF);e=a.O.mimeType.split("/")[1];if(a.O.contentType!=_.Ce&&e!=_.Gd&&"webm"!=e)throw _.Vf("SegmentBase specifies an unsupported container type.",
21
+ a.O),new _.L(_.M,4,4006);if("webm"==e&&!d)throw _.Vf(oE,"the SegmentBase uses a WebM container,","but does not contain an Initialization element.",a.O),new _.L(_.M,4,4005);var f=$E(a,pF,"RepresentationIndex"),g=ZE(a,pF,"indexRange"),h=a.O.Ya;g=RE(g||"");if(f){var l=f.getAttribute("sourceURL");l&&(h=_.Pv(a.O.Ya,[l]));g=OE(f,"range",RE,g)}if(!g)throw _.Vf(oE,"the SegmentBase does not contain @indexRange","or a RepresentationIndex element.",a.O),new _.L(_.M,4,4002);e=qF(a,b,d,h,g.start,g.end,e,c);return{createSegmentIndex:e.createSegmentIndex,
22
+ findSegmentPosition:e.findSegmentPosition,getSegmentReference:e.getSegmentReference,adjustSegmentDurations:e.adjustSegmentDurations,getDuration:e.getDuration,initSegmentReference:d,getLastSegmentEndTime:e.getLastSegmentEndTime,ta:c}},qF=function(a,b,c,d,e,f,g,h){var l=a.presentationTimeline,m=!a.Jc||!a.ca.Qe,n=a.ca.start,p=a.ca.duration,q=b,r=null;return{createSegmentIndex:function(){var v,z,A,D,F,E;return _.B(function(H){if(1==H.a)return v=[q(d,e,f),"webm"==g?q(c.Oa(),c.ua,c.ea):null],q=null,_.x(H,
23
+ Promise.all(v),2);z=H.f;A=z[0];D=z[1]||null;F=null;g==_.Gd?F=eF(A,e,d,h):(E=new lF,F=E.parse(A,D,d,h));_.Nw(l,F,n);r=new _.Xw(F);m&&_.Dw(r,p);return H["return"](z)})},findSegmentPosition:function(v){return r.Fc(v)},getSegmentReference:function(v){return r.get(v)},adjustSegmentDurations:function(v,z){return r.Yc(v,z)},getDuration:function(){return r.getDuration()},getLastSegmentEndTime:function(){return p}}},pF=function(a){return a.wd},yF=function(a,b,c,d){var e=sF(a),f=tF(a);uF(a,f);var g=null;if(f.od)g=
24
+ vF(a,b,e,f);else if(f.Ca)d||(HE(a.presentationTimeline,f.te),_.Ow(a.presentationTimeline,f.Ca),_.Mw(a.presentationTimeline,a.ca.start)),g=wF(a,f);else{var h=null;b=null;a.xa.id&&a.O.id&&(b=a.xa.id+","+a.O.id,h=c[b]);d=xF(a,f);g=!a.Jc||!a.ca.Qe;h?(g&&_.Dw(new _.Xw(d),a.ca.duration),h.wa(d),_.Zw(h,_.Qw(a.presentationTimeline)-a.ca.start)):(_.Nw(a.presentationTimeline,d,a.ca.start),h=new _.Xw(d),b&&a.Jc&&(c[b]=h));g&&_.Dw(h,a.ca.duration);g={createSegmentIndex:Promise.resolve.bind(Promise),findSegmentPosition:h.Fc.bind(h),
25
+ getSegmentReference:h.get.bind(h),adjustSegmentDurations:h.Yc.bind(h),getDuration:h.getDuration.bind(h),getLastSegmentEndTime:function(){return _.Yw(h)}}}return{createSegmentIndex:g.createSegmentIndex,findSegmentPosition:g.findSegmentPosition,getSegmentReference:g.getSegmentReference,adjustSegmentDurations:g.adjustSegmentDurations,getDuration:g.getDuration,initSegmentReference:e,getLastSegmentEndTime:g.getLastSegmentEndTime,ta:f.ob}},zF=function(a){return a.lc},tF=function(a){var b=aF(a,zF),c=ZE(a,
26
+ zF,"media");a=ZE(a,zF,"index");return{Ca:b.Ca,timescale:b.timescale,nc:b.nc,Ee:b.Ee,ob:b.ob,zf:b.zf,timeline:b.timeline,Ye:c,od:a,te:b.te}},uF=function(a,b){var c=b.od?1:0;c+=b.timeline?1:0;c+=b.Ca?1:0;if(0==c)throw _.Vf("SegmentTemplate does not contain any segment information:","the SegmentTemplate must contain either an index URL template","a SegmentTimeline, or a segment duration.",a.O),new _.L(_.M,4,4002);1!=c&&(_.G("SegmentTemplate contains multiple segment information sources:","the SegmentTemplate should only contain an index URL template,",
27
+ "a SegmentTimeline or a segment duration.",a.O),b.od?(_.Tf("Using the index URL template by default."),b.timeline=null):_.Tf("Using the SegmentTimeline by default."),b.Ca=null);if(!b.od&&!b.Ye)throw _.Vf(qE,"the SegmentTemplate's media URL template is missing.",a.O),new _.L(_.M,4,4002);},vF=function(a,b,c,d){var e=a.O.mimeType.split("/")[1];if(e!=_.Gd&&"webm"!=e)throw _.Vf("SegmentTemplate specifies an unsupported container type.",a.O),new _.L(_.M,4,4006);if("webm"==e&&!c)throw _.Vf(qE,"the SegmentTemplate uses a WebM container,",
28
+ "but does not contain an initialization URL template.",a.O),new _.L(_.M,4,4005);var f=YE(d.od,a.O.id,null,a.bandwidth||null,null);f=_.Pv(a.O.Ya,[f]);return qF(a,b,c,f,0,null,e,d.ob)},wF=function(a,b){var c=a.ca.duration,d=b.Ca,e=b.nc,f=b.Ee,g=b.timescale,h=b.Ye,l=a.bandwidth||null,m=a.O.id,n=a.O.Ya;return{createSegmentIndex:Promise.resolve.bind(Promise),findSegmentPosition:function(p){return 0>p||c&&p>=c?null:Math.floor(p/d)},getSegmentReference:function(p){var q=p+e;if(null!==f&&q>f)return null;
29
+ var r=p*d,v=r+d;c&&(v=Math.min(v,c));return 0>v||c&&r>=c?null:new _.Sv(p,r,v,function(){var z=YE(h,m,q,l,r*g);return _.Pv(n,[z])},0,null,b.ob)},adjustSegmentDurations:function(){},getDuration:function(){return c},getLastSegmentEndTime:function(){return c}}},xF=function(a,b){for(var c=[],d=0;d<b.timeline.length;d++){var e=d+b.nc;c.push(new _.Sv(e,b.timeline[d].start,b.timeline[d].end,function(f,g,h,l,m,n){f=YE(f,g,m,h,n);return _.Pv(l,[f]).map(function(p){return p.toString()})}.bind(null,b.Ye,a.O.id,
30
+ a.bandwidth||null,a.O.Ya,e,b.timeline[d].vl+b.zf),0,null,b.ob))}return c},sF=function(a){var b=ZE(a,zF,"initialization");if(!b)return null;var c=a.O.id,d=a.bandwidth||null,e=a.O.Ya;return new _.Rv(function(){var f=YE(b,c,null,d,null);return _.Pv(e,[f])},0,null)},EF=function(a,b){var c=oF(a,AF),d=BF(a);CF(a,d);var e=null,f=null;a.xa.id&&a.O.id&&(f=a.xa.id+","+a.O.id,e=b[f]);var g=DF(a.ca.duration,d.nc,a.O.Ya,d);e?(e.wa(g),_.Zw(e,_.Qw(a.presentationTimeline)-a.ca.start)):(_.Nw(a.presentationTimeline,
31
+ g,a.ca.start),e=new _.Xw(g),f&&a.Jc&&(b[f]=e));a.Jc&&a.ca.Qe||_.Dw(e,a.ca.duration);return{createSegmentIndex:Promise.resolve.bind(Promise),findSegmentPosition:e.Fc.bind(e),getSegmentReference:e.get.bind(e),adjustSegmentDurations:e.Yc.bind(e),getDuration:e.getDuration.bind(e),initSegmentReference:c,getLastSegmentEndTime:function(){return _.Yw(e)},ta:d.ob}},AF=function(a){return a.Wb},BF=function(a){var b=FF(a);a=aF(a,AF);var c=a.nc;0==c&&(_.G("SegmentList@startNumber must be \x3e 0"),c=1);var d=0;
32
+ a.Ca?d=a.Ca*(c-1):a.timeline&&0<a.timeline.length&&(d=a.timeline[0].start);return{Ca:a.Ca,startTime:d,nc:c,ob:a.ob,timeline:a.timeline,jc:b}},CF=function(a,b){if(!b.Ca&&!b.timeline&&1<b.jc.length)throw _.G(pE,"the SegmentList specifies multiple segments,","but does not specify a segment duration or timeline.",a.O),new _.L(_.M,4,4002);if(!b.Ca&&!a.ca.duration&&!b.timeline&&1==b.jc.length)throw _.G(pE,"the SegmentList specifies one segment,","but does not specify a segment duration, period duration,",
33
+ "or timeline.",a.O),new _.L(_.M,4,4002);if(b.timeline&&0==b.timeline.length)throw _.G(pE,"the SegmentList has an empty timeline.",a.O),new _.L(_.M,4,4002);},DF=function(a,b,c,d){var e=d.jc.length;d.timeline&&d.timeline.length!=d.jc.length&&(e=Math.min(d.timeline.length,d.jc.length),_.G("The number of items in the segment timeline and the number of","segment URLs do not match, truncating",d.jc.length,"to",e));for(var f=[],g=d.startTime,h={},l=0;l<e;h={ne:h.ne},l++){var m=d.jc[l];h.ne=_.Pv(c,[m.Tj]);
34
+ var n=void 0;n=null!=d.Ca?g+d.Ca:d.timeline?d.timeline[l].end:g+a;f.push(new _.Sv(l+b,g,n,function(p){return function(){return p.ne}}(h),m.start,m.end,d.ob));g=n}return f},FF=function(a){return[a.O.Wb,a.va.Wb,a.xa.Wb].filter(_.Ng).map(function(b){return _.iw(b,"SegmentURL")}).reduce(function(b,c){return 0<b.length?b:c}).map(function(b){b.getAttribute("indexRange")&&!a.Oe&&(a.Oe=!0,_.G("We do not support the SegmentURL@indexRange attribute on SegmentList. We only use the SegmentList@duration attribute or SegmentTimeline, which must be accurate."));
35
+ var c=b.getAttribute("media");b=OE(b,"mediaRange",RE,{start:0,end:null});return{Tj:c,start:b.start,end:b.end}})},GF=function(a,b){this.h=a;this.f=b;this.a={clockSyncUri:void 0}},IF=function(a,b,c,d){var e,f;return _.B(function(g){switch(g.a){case 1:return e=_.iw(b,"UTCTiming"),_.Bf(g,2),_.x(g,HF(a,c,e),4);case 4:f=g.f;d.D=f;a.h.info("Clock synchronized. The difference between server and client clock was "+(f+" ms."));_.Cf(g,3);break;case 2:_.Df(g),a.h.warn("Failed to synchronize clocks. This content may not play on clients with bad clocks!");
36
+ case 3:return g["return"](d)}})},HF=function(a,b,c){c=c.map(function(e){return{scheme:e.getAttribute(zE),value:e.getAttribute(_.Oe)}});var d=a.a.clockSyncUri;!c.length&&d&&(a.h.info("No UTCTiming elements found, falling back on clockSyncUri from config to synchronize clocks."),c.push({scheme:EE,value:d}));return 0===c.length?(a.h.warn(nE),Promise.reject(Error(nE))):IE(c,function(e){var f=e.scheme;e=e.value;switch(f){case EE:case "urn:mpeg:dash:utc:http-head:2012":return JF(a,b,e,"HEAD");case "urn:mpeg:dash:utc:http-xsdate:2014":case "urn:mpeg:dash:utc:http-iso:2014":case "urn:mpeg:dash:utc:http-xsdate:2012":case "urn:mpeg:dash:utc:http-iso:2012":return JF(a,
37
+ b,e,"GET");case "urn:mpeg:dash:utc:direct:2014":case "urn:mpeg:dash:utc:direct:2012":var g=Date.parse(e);return isNaN(g)?(a.h.warn("Invalid date for scheme "+f+", value: "+e),Promise.reject()):Promise.resolve(g-Date.now());case "urn:mpeg:dash:utc:http-ntp:2014":case "urn:mpeg:dash:utc:ntp:2014":case "urn:mpeg:dash:utc:sntp:2014":return a.h.warn("NTP UTCTiming scheme is not supported"),Promise.reject();default:return a.h.warn("Unrecognized scheme in UTCTiming element",f),Promise.reject()}})["catch"](function(){a.h.warn(lE);
38
+ return Promise.reject(Error(lE))})},JF=function(a,b,c,d){var e,f,g,h;return _.B(function(l){if(1==l.a)return e=_.Pv(b,[c]),_.x(l,a.f(e,d),2);f=l.f;if("HEAD"==d){if(!f.headers||!f.headers.date)throw a.h.warn("UTC timing response is missing","expected date header"),Error("Date HTTP header missing.");g=f.headers.date}else g=_.yh(f.data);h=Date.parse(g);if(isNaN(h))throw a.h.warn("Unable to parse date from UTC timing response"),Error("Date value invalid.");return l["return"](h-Date.now())})},LF=function(a,
39
+ b){return a.find(function(c){return KF.get(c.Gb)===b})},MF=function(a){var b=ME(a.node,CE,"pro");if(!b)return _.G(mE,a),null;a=_.Ph(b.textContent);a=_.tw(a);a=_.El(a.a);return{keyId:null,Gb:GE,node:document.createElement("null"),init:[{initData:_.Iv(a),initDataType:_.Cc,keyId:null}]}},NF=function(a,b){b=void 0===b?"4.0.0.0":b;var c=ME(a.node,DE,"pssh");if(!c)return _.G("Missing \x3ccenc:pssh/\x3e node in ContentProtection element",a),null;c=_.Ph(c.textContent);c=_.Fl(c);return c?(c=_.ow(b,c.a))?{keyId:null,
40
+ Gb:FE,node:document.createElement("null"),init:[{initData:_.Iv(c),initDataType:_.Cc,keyId:null}]}:null:(_.G("Unable to parse WV PSSH data. Can not create PR data!"),null)},OF=function(a,b){var c=ME(a.node,CE,"pro");if(!c)return _.G(mE,a),null;c=_.Ph(c.textContent);c=_.tw(c);return c.version!==b&&(_.Uf("Parsing from "+c.version+" to "+b+"."),c=_.pw(c,b))?{keyId:null,Gb:FE,node:document.createElement("null"),init:[{initData:_.Iv(c),initDataType:_.Cc,keyId:null}]}:null},RF=function(a,b,c,d){var e=PF(a),
41
+ f=null;a=[];var g=[],h=LF(e,_.Tc),l=LF(e,_.Sc);if(l&&d){var m=OF(l,d);m&&(e[e.indexOf(l)]=m)}l&&!h&&(m=MF(l))&&e.push(m);h&&!l&&(d=NF(h,d||void 0))&&e.push(d);d=new Set(e.map(function(n){return n.keyId}));d["delete"](null);if(1<d.size)throw new _.L(_.M,4,4010);b||(g=e.filter(function(n){return"urn:mpeg:dash:mp4protection:2011"==n.Gb?(f=n.init||f,!1):!0}),g.length&&(a=QF(f,g,c),0==a.length&&(a=[_.Qv(_.Kd,f,c)])));if(e.length&&(b||!g.length))for(a=[],b=_.u(KF.values()),e=b.next();!e.done;e=b.next())e=
42
+ e.value,e!=_.Td&&a.push(_.Qv(e,f,c));if(c=Array.from(d)[0]||null)for(b=_.u(a),e=b.next();!e.done;e=b.next())for(e=_.u(e.value.initData),g=e.next();!g.done;g=e.next())g.value.keyId=c;return{jd:c,Wl:f,drmInfos:a,hg:!0}},SF=function(a,b,c,d,e){var f=RF(a,c,d,e);if(b.hg){a=1==b.drmInfos.length&&!b.drmInfos[0].keySystem;c=0==f.drmInfos.length;if(0==b.drmInfos.length||a&&!c)b.drmInfos=f.drmInfos;b.jd=f.jd||b.jd;b.hg=!1}else if(0<f.drmInfos.length&&(b.drmInfos=b.drmInfos.filter(function(g){return f.drmInfos.some(function(h){return h.keySystem==
43
+ g.keySystem})}),0==b.drmInfos.length))throw new _.L(_.M,4,4008);return f.jd||b.jd},QF=function(a,b,c){var d=[];b=_.u(b);for(var e=b.next();!e.done;e=b.next()){e=e.value;var f=KF.get(e.Gb);if(f){var g=_.Qv(f,e.init||a,c);if(f=TF.get(f))g.licenseServerUri=f(e);d.push(g)}}return d},PF=function(a){var b=[];a=_.u(a);for(var c=a.next();!c.done;c=a.next())(c=UF(c.value))&&b.push(c);return b},UF=function(a){var b=a.getAttribute(zE),c=NE(a,DE,"default_KID"),d=LE(a,DE,"pssh").map(_.kw);if(!b)return _.Vf("Missing required schemeIdUri attribute on",
44
+ "ContentProtection element",a),null;b=b.toLowerCase();if(c&&(c=c.replace(/-/g,"").toLowerCase(),c.includes(" ")))throw new _.L(_.M,4,4009);var e=[];try{e=d.map(function(f){return{initDataType:_.Cc,initData:_.Ph(f),keyId:null}})}catch(f){throw new _.L(_.M,4,4007);}return{node:a,Gb:b,keyId:c,init:0<e.length?e:null}},VF=function(){var a=this;this.C=this.a=null;this.j=[];this.f=null;this.D=[];this.o=1;this.F={};this.g=0;this.H=new _.Fw(5);this.w=new _.$i(function(){a.Eb()});this.m=new _.ji;this.h=new _.I("clpp.dash.DashParser");
45
+ this.A=null;this.I=new GF(this.h,function(b,c){var d=_.ai(b,a.a.attemptParameters);d.type=5;d.method=c;d=a.C.networkingEngine.fetch(d);_.ki(a.m,d);return d.P});this.B=new Map},XF=function(a){var b,c,d,e,f,g,h;return _.B(function(l){if(1==l.a)return b=_.ai(a.j,a.a.attemptParameters),b.type=1,c=a.C.networkingEngine,d=Date.now(),e=c.fetch(b),_.ki(a.m,e),_.x(l,e.P,2);if(3!=l.a){f=l.f;if(!a.C)return l["return"](0);f.uri&&!a.j.includes(f.uri)&&a.j.unshift(f.uri);return _.x(l,WF(a,f.data,f.uri),3)}g=Date.now();
46
+ h=(g-d)/1E3;_.Gw(a.H,1,h);return l["return"](h)})},WF=function(a,b,c){var d,e,f,g;return _.B(function(h){if(1==h.a){d=WE(b,"MPD");if(!d)throw new _.L(_.M,4,4001,c);e=a.a.xlinkFailGracefully;f=bF(d,a.a.attemptParameters,e,c,a.C.networkingEngine);_.ki(a.m,f);return _.x(h,f.P,2)}g=h.f;return h["return"](YF(a,g,c))})},YF=function(a,b,c){var d,e,f,g,h,l,m,n,p,q,r,v,z,A,D,F,E,H,Q,O,Ca,sa;return _.B(function(wa){if(1==wa.a){d=[c];e=_.iw(b,"Location").map(_.kw).filter(_.Ng);0<e.length&&(f=_.Pv(d,e),d=a.j=
47
+ f);g=_.iw(b,"BaseURL").map(_.kw);h=_.Pv(d,g);l=OE(b,"minBufferTime",QE,0);m=b.getAttribute("type")||AE;a.g=OE(b,"minimumUpdatePeriod",QE,-1);m===AE&&0<=a.g&&(a.h.warn("Invalid manifest - a static manifest should not contain the `minimumUpdatePeriod` attribute. The attribute will be ignored."),a.g=-1,a.w.stop());n=OE(b,"availabilityStartTime",PE);p=OE(b,"timeShiftBufferDepth",QE);q=OE(b,"suggestedPresentationDelay",QE);r=OE(b,"maxSegmentDuration",QE);if(v=m===AE&&"dynamic"===a.A)a.h.info("MPD dynamic to static transition."),
48
+ m="dynamic";z=m===AE;A="dynamic"===m;if(a.f)return D=a.f.presentationTimeline,wa.G(2);F=3*l;E=null!=q?q:F;D=new _.Jw(n,E,m===AE,!!a.a.autoCorrectDrift);return A?_.x(wa,IF(a.I,b,h,D),4):wa.G(2)}if(2!=wa.a&&(D=wa.f,!a.C))return wa["return"]();H={Jc:A,presentationTimeline:D,xa:null,ca:null,va:null,O:null,bandwidth:0,Oe:!1,Kj:v,tf:null,rd:null};var Fa=OE(b,"mediaPresentationDuration",QE);for(var Ea=[],ka=0,la=_.iw(b,"Period"),Na=0;Na<la.length;Na++){var tb=la[Na];ka=OE(tb,_.qe,QE,ka);var Rb=OE(tb,tE,
49
+ QE),Gb=null;if(Na!=la.length-1){var Mb=OE(la[Na+1],_.qe,QE);null!=Mb&&(Gb=Mb-ka)}else null!=Fa&&(Gb=Fa-ka);Mb=_.qq;Gb&&Rb&&Math.abs(Gb-Rb)>Mb&&a.h.warn("There is a gap/overlap between Periods",tb);null==Gb&&(Gb=Rb);tb=ZF(a,H,h,{start:ka,duration:Gb,node:tb,Qe:null==Gb||Na==la.length-1});Ea.push(tb);Rb=H.xa.id;a.D.includes(Rb)||(a.D.push(Rb),a.f&&(a.C.filterNewPeriod(tb),a.f.periods.push(tb)));if(null==Gb){Na!=la.length-1&&a.h.warn("Skipping Period",Na+1,"and any subsequent Periods:","Period",Na+1,
50
+ "does not have a valid start time.",Ea[Na+1]);ka=null;break}ka+=Gb}null==a.f&&a.C.filterAllPeriods(Ea);null!=Fa?(ka!=Fa&&a.h.warn("@mediaPresentationDuration does not match the total duration of ","all Periods."),Fa={periods:Ea,duration:Fa,bg:!1}):Fa={periods:Ea,duration:ka,bg:!0};Q=Fa;O=Q.duration;Ca=Q.periods;v&&($F(Ca,H),D.w=!0,a.C.onEvent(new _.J(_.Hd)));if(z||!v&&!Q.bg)D.f=O||Infinity;(sa=D.isLive())&&a.a.availabilityWindowOverride&&!isNaN(a.a.availabilityWindowOverride)&&(p=a.a.availabilityWindowOverride);
51
+ null==p&&(p=Infinity);D.m=p;_.Ow(D,r||1);D.isLive();a.f||(a.f={presentationTimeline:D,periods:Ca,offlineSessionIds:[],minBufferTime:l||0});a.A=m;_.y(wa)})},ZF=function(a,b,c,d){b.xa=aG(a,d.node,null,c);b.ca=d;b.xa.id||(a.h.info("No Period ID given for Period with start time "+d.start+", Assigning a default"),b.xa.id="__clpp_period_"+d.start);c=_.iw(d.node,"EventStream");c=_.u(c);for(var e=c.next();!e.done;e=c.next())bG(a,d.start,d.duration,e.value);e=_.iw(d.node,_.fa).map(function(n){return cG(a,
52
+ b,n)}).filter(_.Ng);if(b.Jc){c=[];for(var f=_.u(e),g=f.next();!g.done;g=f.next()){g=_.u(g.value.el);for(var h=g.next();!h.done;h=g.next())c.push(h.value)}if(c.length!=(new Set(c)).size)throw new _.L(_.M,4,4018);}c=e.filter(function(n){return!n.yf});e=e.filter(function(n){return n.yf});e=_.u(e);for(f=e.next();!f.done;f=e.next()){g=f.value;f=g.streams[0];g=g.yf;h=_.u(c);for(var l=h.next();!l.done;l=h.next())if(l=l.value,l.id==g){l=_.u(l.streams);for(var m=l.next();!m.done;m=l.next())m.value.trickModeVideo=
53
+ f}}f=dG(c,_.Re);g=dG(c,_.mc);if(!f.length&&!g.length)throw new _.L(_.M,4,4004);g.length||(g=[null]);f.length||(f=[null]);e=[];g=_.u(g);for(h=g.next();!h.done;h=g.next())for(h=h.value,l=_.u(f),m=l.next();!m.done;m=l.next())eG(a,h,m.value,e);g=_.of(dG(c,_.Ce)).concat(_.of(dG(c,_.ye)));f=[];g=_.u(g);for(h=g.next();!h.done;h=g.next())f.push.apply(f,h.value.streams);g=dG(c,_.od);c=[];g=_.u(g);for(h=g.next();!h.done;h=g.next())c.push.apply(c,h.value.streams);return{startTime:d.start,textStreams:f,thumbStreams:c,
54
+ variants:e}},dG=function(a,b){return a.filter(function(c){return c.contentType==b})},eG=function(a,b,c,d){var e;if(b||c)if(b&&c){if(_.Yv(b.drmInfos,c.drmInfos)){var f=_.Xv(b.drmInfos,c.drmInfos),g=_.u(b.streams);for(e=g.next();!e.done;e=g.next()){var h=e.value,l=_.u(c.streams);for(e=l.next();!e.done;e=l.next()){var m=e.value;e=(m.bandwidth||0)+(h.bandwidth||0);e={id:a.o++,language:b.language,primary:b.Xe||c.Xe,audio:h,video:m,bandwidth:e,drmInfos:f,allowedByApplication:!0,allowedByKeySystem:!0};d.push(e)}}}}else for(f=
55
+ b||c,g=_.u(f.streams),e=g.next();!e.done;e=g.next())h=e.value,e=h.bandwidth||0,e={id:a.o++,language:f.language||_.Ie,primary:f.Xe,audio:b?h:null,video:c?h:null,bandwidth:e,drmInfos:f.drmInfos,allowedByApplication:!0,allowedByKeySystem:!0},d.push(e)},cG=function(a,b,c){b.va=aG(a,c,b.xa,null);var d=!1,e=_.iw(c,"Role"),f=e.map(function(E){return E.getAttribute(_.Oe)}).filter(_.Ng),g=null,h=_.iw(c,"Label").map(function(E){return E.textContent}).filter(_.Ng);h&&0<h.length&&(g=h[h.length-1]);var l=void 0;
56
+ (h=b.va.contentType==_.Ce)&&(l=_.ye);e=_.u(e);for(var m=e.next();!m.done;m=e.next()){m=m.value;var n=m.getAttribute(zE);if(null==n||"urn:mpeg:dash:role:2011"===n||"urn:mpeg:dash:role"===n)switch(m=m.getAttribute(_.Oe),m){case "main":d=!0;break;case "caption":case _.ye:l=m}}m=_.iw(c,kE);e=null;m=_.u(m);for(var p=m.next();!p.done;p=m.next()){p=p.value;n=p.getAttribute(zE);p=p.getAttribute(_.Oe);if(n!==uE&&!fG.includes(n)||void 0===p)return null;n===uE&&(e=p)}m=_.iw(c,"Accessibility");var q=new Map;
57
+ n=_.u(m);for(p=n.next();!p.done;p=n.next()){var r=p.value;p=r.getAttribute(zE);if("urn:scte:dash:cc:cea-608:2015"==p||"urn:scte:dash:cc:cea-708:2015"==p)if(p=1,r=r.getAttribute(_.Oe),null!=r){r=_.u(r.split(";"));for(var v=r.next();!v.done;v=r.next()){var z=v.value,A=v=void 0;z.includes("\x3d")?(z=z.split("\x3d"),v=z[0].startsWith("CC")?z[0]:"CC"+z[0],A=z[1].split(",")[0].split(":").pop()):(v="CC"+p,p+=2,A=z);q.set(v,_.ih(A))}}else q.set("CC1",_.Ie)}n=_.iw(c,jE);var D=RF(n,a.a.ignoreDrmInfo,b.xa.id,
58
+ a.a.playreadyVersion||null),F=c.getAttribute("lang")||_.Ie;n=_.ih(F);null==g&&(g=c.getAttribute("label"));p=_.iw(c,_.jb);c=p.map(function(E){return gG(a,b,D,l,F,g,d,f,q,E)}).filter(function(E){return!!E});if(0==c.length){if(h)return null;throw new _.L(_.M,4,4003);}if(!b.va.contentType||b.va.contentType==_.dc)for(b.va.contentType=hG(c[0].mimeType,c[0].codecs),h=_.u(c),r=h.next();!r.done;r=h.next())r.value.type=b.va.contentType;h=_.u(c);for(r=h.next();!r.done;r=h.next())for(r=r.value,v=_.u(D.drmInfos),
59
+ z=v.next();!z.done;z=v.next())z=z.value,r.keyId&&!z.keyIds.includes(r.keyId)&&z.keyIds.push(r.keyId);c=iG(c,b.va.contentType,m);h=p.map(function(E){return E.getAttribute("id")}).filter(_.Ng);return{id:b.va.id||"__fake__"+a.o++,contentType:b.va.contentType,language:n,originalLanguage:F,Xe:d,streams:c,drmInfos:D.drmInfos,yf:e,el:h}},iG=function(a,b,c){var d=b===_.ye?_.Ce:b;b=c.map(function(f){return{scheme:f.getAttribute(zE)||"",id:f.getAttribute("id")||void 0,value:f.getAttribute(_.Oe)||"",protocol:"DASH",
60
+ type:d}});c=_.u(a);for(var e=c.next();!e.done;e=c.next())e.value.accessibility=b;return a},gG=function(a,b,c,d,e,f,g,h,l,m){var n=_.ih(e);b.O=aG(a,m,b.va,null);if(!jG(a,b.O))return a.h.warn("Skipping Representation",b.O),null;b.tf=b.xa.id+" "+b.O.id;b.rd=a.B.get(b.tf);b.bandwidth=OE(m,"bandwidth",TE)||0;var p=b.O.contentType,q=p==_.Ce||p==_.dc,r=p==_.od;try{if(p=function(D,F,E){return kG(a,D,F,E)},b.O.wd)var v=rF(b,p);else if(b.O.Wb)v=EF(b,a.F);else if(b.O.lc)v=yF(b,p,a.F,!!a.f);else{var z=b.O.Ya,
61
+ A=b.ca.duration||0;v={createSegmentIndex:function(){return Promise.resolve()},findSegmentPosition:function(D){return 0<=D&&D<A?1:null},getSegmentReference:function(D){return 1!=D?null:new _.Sv(1,0,A,function(){return z},0,null,0)},adjustSegmentDurations:function(){},getLastSegmentEndTime:function(){return A},getDuration:function(){return A},initSegmentReference:null,ta:0}}}catch(D){if(q&&4002==D.code)return null;throw D;}a.B.set(b.tf,v.ta);q=_.iw(m,jE);q=SF(q,c,a.a.ignoreDrmInfo,b.xa.id,a.a.playreadyVersion||
62
+ null);p=void 0;r&&(r=(m=_.jw(m,kE))&&m.getAttribute(zE),lG.includes(r||"")&&(m=(m=m.getAttribute(_.Oe))&&m.split("x").map(function(D){return parseInt(D,10)}))&&2==m.length&&(v.horizontalTiles=m[0],v.verticalTiles=m[1],b.va.lc&&(m=v.horizontalTiles*v.verticalTiles,p=(p=OE(b.va.lc,tE,UE)||0)?p/m:void 0)));return{id:a.o++,originalId:b.O.id,createSegmentIndex:v.createSegmentIndex,findSegmentPosition:v.findSegmentPosition,getSegmentReference:v.getSegmentReference,initSegmentReference:v.initSegmentReference,
63
+ adjustSegmentDurations:v.adjustSegmentDurations,getLastSegmentEndTime:v.getLastSegmentEndTime,getDuration:v.getDuration,segmentLookupStrategy:_.vv,mimeType:b.O.mimeType,codecs:b.O.codecs,frameRate:b.O.frameRate,bandwidth:b.bandwidth,width:b.O.width,height:b.O.height,kind:d,encrypted:0<c.drmInfos.length,keyId:q,language:n,originalLanguage:e,label:f,type:b.va.contentType,primary:g,trickModeVideo:null,emsgSchemeIdUris:b.O.emsgSchemeIdUris,roles:h,channelsCount:b.O.Ze,closedCaptions:l,horizontalTiles:v.horizontalTiles,
64
+ verticalTiles:v.verticalTiles,durationPerTile:p}},mG=function(a,b){0>a.g||a.w.aa(Math.max(3,a.g-b,_.Hw(a.H)))},aG=function(a,b,c,d){c=c||{contentType:"",mimeType:"",codecs:"",emsgSchemeIdUris:[],frameRate:void 0,Ze:null};d=d||c.Ya;var e=_.iw(b,"BaseURL").map(_.kw),f=b.getAttribute("contentType")||c.contentType,g=b.getAttribute(_.Dd)||c.mimeType,h=b.getAttribute(_.Oc)||c.codecs,l=OE(b,"frameRate",VE)||c.frameRate,m=_.iw(b,"InbandEventStream"),n=c.emsgSchemeIdUris.slice();m=_.u(m);for(var p=m.next();!p.done;p=
65
+ m.next())p=p.value.getAttribute(zE),n.includes(p)||n.push(p);m=_.iw(b,"AudioChannelConfiguration");a=nG(a,m)||c.Ze;f||(f=hG(g,h));return{Ya:_.Pv(d,e),wd:_.jw(b,"SegmentBase")||c.wd,Wb:_.jw(b,"SegmentList")||c.Wb,lc:_.jw(b,"SegmentTemplate")||c.lc,width:OE(b,_.ff,UE)||c.width,height:OE(b,_.md,UE)||c.height,contentType:f,mimeType:g,codecs:h,frameRate:l,emsgSchemeIdUris:n,id:b.getAttribute("id"),Ze:a}},nG=function(a,b){for(var c=_.u(b),d=c.next();!d.done;d=c.next()){var e=d.value;if(d=e.getAttribute(zE))if(e=
66
+ e.getAttribute(_.Oe))switch(d){case "urn:mpeg:dash:outputChannelPositionList:2012":return e.trim().split(/ +/).length;case "urn:mpeg:dash:23003:3:audio_channel_configuration:2011":case "urn:dts:dash:audio_channel_configuration:2012":var f=parseInt(e,10);if(!f){a.h.warn(iE,d,e);continue}return f;case "tag:dolby.com,2014:dash:audio_channel_configuration:2011":case "urn:dolby:dash:audio_channel_configuration:2011":f=parseInt(e,16);if(!f){a.h.warn(iE,d,e);continue}for(c=0;f;)f&1&&++c,f>>=1;return c;default:a.h.warn("Unrecognized audio channel scheme:",
67
+ d,e)}}return null},jG=function(a,b){var c=b.wd?1:0;c+=b.Wb?1:0;c+=b.lc?1:0;if(0==c){if(b.contentType==_.Ce||b.contentType==_.dc)return!0;a.h.warn("Representation does not contain a segment information source:","the Representation must contain one of SegmentBase, SegmentList,",'SegmentTemplate, or explicitly indicate that it is "text".',b);return!1}1!=c&&(a.h.warn("Representation contains multiple segment information sources:","the Representation should only contain one of SegmentBase,","SegmentList, or SegmentTemplate.",
68
+ b),b.wd?(a.h.info("Using SegmentBase by default."),b.Wb=null):a.h.info("Using SegmentList by default."),b.lc=null);return!0},bG=function(a,b,c,d){var e=d.getAttribute(zE)||"",f=d.getAttribute(_.Oe)||"",g=OE(d,BE,UE)||1,h={};d=_.u(_.iw(d,"Event"));for(var l=d.next();!l.done;h={tc:h.tc},l=d.next()){l=l.value;var m=OE(l,"presentationTime",UE)||0,n=OE(l,tE,UE)||0;m=m/g+b;n=m+n/g;null!=c&&(m=Math.min(m,b+c),n=Math.min(n,b+c));var p=_.mg;e.startsWith(_.Ke)?p=_.og:"urn:mpeg:dash:event:callback:2015"===e&&
69
+ (p=_.Jd);h.tc={schemeIdUri:e,value:f,startTime:m,endTime:n,id:l.getAttribute("id")||"",type:p,eventElement:l};h.tc.type===_.Jd&&(h.tc.be=function(q){return function(){var r=q.tc;r.eventElement&&(r=r.eventElement.getAttribute("messageData")||"")&&r.startsWith("http")&&(r=_.ai(r),r.type=_.$h,a.C.networkingEngine.fetch(r))}}(h));a.C.onTimelineCueAdded(h.tc)}},kG=function(a,b,c,d){var e,f,g,h;return _.B(function(l){if(1==l.a)return e=_.Iw(b,c,d,a.a.attemptParameters),e.type=2,f=a.C.networkingEngine,g=
70
+ f.fetch(e),_.ki(a.m,g),_.x(l,g.P,2);h=l.f;return l["return"](h.data)})},hG=function(a,b){return _.kx(_.Xi(a,b))?_.Ce:a.split("/")[0]},oG=function(a){var b=new Set;a.forEach(function(c){c.variants.forEach(function(d){d.audio&&b.add(d.audio);d.video&&b.add(d.video)})});return Array.from(b)},$F=function(a,b){oG(a).forEach(function(c){c=c.getLastSegmentEndTime?c.getLastSegmentEndTime():0;if(0<c){var d=b.presentationTimeline;d.g=Math.max(d.g||0,c+b.ca.start)}})},pG=function(){},lG=["http://dashif.org/thumbnail_tile",
71
+ "http://dashif.org/guidelines/thumbnail_tile"],fG=["urn:mpeg:mpegB:cicp:ColourPrimaries","urn:mpeg:mpegB:cicp:MatrixCoefficients","urn:mpeg:mpegB:cicp:TransferCharacteristics"];var hF=[[255],[127,255],[63,255,255],[31,255,255,255],[15,255,255,255,255],[7,255,255,255,255,255],[3,255,255,255,255,255,255],[1,255,255,255,255,255,255,255]];lF.prototype.parse=function(a,b,c,d){b=new fF(new DataView(b));if(440786851!=jF(b).id)throw _.Vf("Not an EBML element."),new _.L(_.M,3,3008);var e=jF(b);if(408125543!=e.id)throw _.Vf("Not a Segment element."),new _.L(_.M,3,3009);b=e.a.byteOffset;e=new fF(e.a);for(var f=null;_.Gk(e.a);){var g=jF(e);if(357149030==g.id){f=g;break}}if(!f)throw _.Vf("Not an Info element."),new _.L(_.M,3,3010);f=new fF(f.a);g=1E6;for(e=null;_.Gk(f.a);){var h=jF(f);if(2807729==h.id)g=kF(h);else if(17545==h.id)if(4==h.a.byteLength)e=
72
+ h.a.getFloat32(0);else if(8==h.a.byteLength)e=h.a.getFloat64(0);else throw new _.L(_.M,3,3003);}if(null==e)throw new _.L(_.M,3,3011);f=g/1E9;e*=f;a=jF(new fF(new DataView(a)));if(475249515!=a.id)throw _.Vf("Not a Cues element."),new _.L(_.M,3,3007);return nF(a,b,f,e,c,d)};var KF=(new Map).set("urn:uuid:1077efec-c0b2-4d02-ace3-3c1e52e2fb4b",_.Td).set(GE,_.Tc).set(FE,_.Sc).set("urn:uuid:79f0049a-4098-8642-ab92-e65be0885f95",_.Sc).set("urn:uuid:94ce86fb-07ff-4f43-adb8-93d2fa968ca2",_.Rc).set("urn:uuid:f239e769-efa3-4850-9c16-a903c6932efb",_.Qc),TF=(new Map).set(_.Tc,function(a){return(a=ME(a.node,"urn:microsoft","laurl"))?a.getAttribute("licenseUrl")||"":""}).set(_.Sc,function(a){a=ME(a.node,CE,"pro");if(!a)return"";a=_.Ph(a.textContent);return _.tw(a).g||""});_.t=VF.prototype;_.t.configure=function(a){this.a=a;this.I.a={clockSyncUri:a.clockSyncUri}};_.t.start=function(a,b){var c=this,d;return _.B(function(e){if(1==e.a)return c.j=[a],c.C=b,_.x(e,XF(c),2);d=e.f;c.C&&mG(c,d);if(!c.C)throw new _.L(_.M,7,7001);return e["return"](c.f)})};_.t.stop=function(){this.a=this.C=null;this.j=[];this.f=null;this.D=[];this.F={};this.A=null;this.g=-1;this.w.stop();this.B.clear();return this.m.destroy()};
73
+ _.t.update=function(){var a=this;XF(this)["catch"](function(b){if(a.C&&b)a.C.onError(b)})};_.t.onExpirationUpdated=function(){};_.t.setCurrentVariant=function(){};_.t.Eb=function(){var a=this,b,c,d;return _.B(function(e){switch(e.a){case 1:return a.h.debug(_.mv),b=0,_.Bf(e,2),_.x(e,XF(a),4);case 4:b=e.f;_.Cf(e,3);break;case 2:if(c=_.Df(e),a.C&&c.a&&(a.C.onError(c),d=c,d.severity===_.M))return e["return"]();case 3:if(!a.C)return e["return"]();mG(a,b);_.y(e)}})};_.w(pG,_.Bo);_.t=pG.prototype;_.t.Qa=function(){_.yp.mpd=VF;_.wp[_.fc]=VF};_.t.Ha=function(){_.ex("mpd");_.fx(_.fc)};_.t.ac=function(){};_.t.release=function(){};_.t.id=function(){return"dash"};_.C("clpp.dash.DashComponent",pG);};
74
74
  if(typeof(module)!="undefined"&&module.exports){var x=require("./cl.core.js");_ = x._;(f.call(g,this));module.exports=g;}
75
75
  else if (typeof(define)!="undefined"&&define.amd) {define(["./cl.core"], function(c){_=c._;(f.call(g,this));return g;});}
76
76
  else{_=this.clpp._;(f.call(g,this));}
package/cjs/cl.externs.js CHANGED
@@ -137,7 +137,7 @@ clpp.EventTarget.prototype.removeEventListener = function(type, listener) {
137
137
  /**
138
138
  * @param {(HTMLMediaElement|null|string)} element
139
139
  * @param {{abr: {bandwidthDowngradeTarget: number, bandwidthUpgradeTarget: number, defaultBandwidthEstimate: number, enabled: boolean, initialRestrictions: (undefined|{maxBandwidth: number, maxHeight: number, maxPixels: number, maxWidth: number, minBandwidth: number, minHeight: number, minPixels: number, minWidth: number}), restrictions: {maxBandwidth: number, maxHeight: number, maxPixels: number, maxWidth: number, minBandwidth: number, minHeight: number, minPixels: number, minWidth: number}, switchInterval: number, useSwitchIntervalForInitialSwitch: boolean}, autoplay: (boolean|undefined), broadpeak: (undefined|{analyticsAddress: (string|undefined), broadpeakDomainNames: (string|undefined), customParameters: (Object|null|undefined), nanoCDNHost: (string|undefined), uuid: (string|undefined)}), connectivityCheck: (undefined|{attemptParameters: (undefined|{backoffFactor: number, baseDelay: number, fatalStatusCodes: (Array<number>|undefined), fuzzFactor: number, maxAttempts: number, timeout: number}), method: (string|undefined), url: string}), conviva: (undefined|{connectionType: (string|undefined), customTags: (Object|null|undefined), customerKey: string, defaultResource: (string|undefined), deviceBrand: (string|undefined), deviceCategory: (string|undefined), deviceMetadata: (Object|null|undefined), deviceType: (string|undefined), enableAdInsights: boolean, playerName: (string|undefined), serviceUrl: (string|undefined), viewerId: string}), drm: (null|{attemptParameters: (undefined|{backoffFactor: number, baseDelay: number, fatalStatusCodes: (Array<number>|undefined), fuzzFactor: number, maxAttempts: number, timeout: number}), customData: (Object<string,*>|null|undefined), delayLicenseRequestUntilPlayed: (boolean|undefined), emeApi: (string|undefined), enableSessionCacheForSkd: (boolean|undefined), enforceSingleSession: (boolean|undefined), env: string, ignoreUnrecognizedInitData: (boolean|undefined), offlineId: (string|undefined), preferredDrmSystem: (string|undefined)}), enableHtmlCue: (boolean|undefined), fmts: (undefined|{asidConfig: (Object<string,*>|undefined), enableDrmToday: boolean}), forceWaitForTracks: (boolean|undefined), freewheel: (undefined|{keyValues: (Object<string,string>|undefined), networkId: number, parameters: (Array<{level: number, name: string, value: *}>|undefined), pods: (Array<{acceptContentType: (string|undefined), cuepointSequence: (number|undefined), id: string, maxDuration: (number|undefined), minDuration: (number|undefined), position: number, slotProfile: (string|undefined), type: number}>|undefined), profileId: string, serverUrl: string, siteSectionId: (number|string|undefined), videoAssetId: (number|string)}), hlssmpte: (undefined|{patchMetadataTrack: (boolean|undefined), timestampOffset: (number|undefined)}), htmlcue: (undefined|{enableResizeObserver: boolean, stretchSmpteImage: boolean}), ima: (undefined|{adTagUrl: string, bitrate: (number|undefined), disableCustomPlayback: (boolean|undefined), enablePreloading: (boolean|undefined), loadVideoTimeout: (number|undefined), mimeTypes: (Array<string>|null|undefined), playAdsAfterTime: (number|undefined), uiElements: (Array<string>|null|undefined), useStyledLinearAds: (boolean|undefined)}), license: string, loop: (boolean|undefined), lowLatencyMode: (boolean|undefined), manifest: {attemptParameters: {backoffFactor: number, baseDelay: number, fatalStatusCodes: (Array<number>|undefined), fuzzFactor: number, maxAttempts: number, timeout: number}, autoCorrectDrift: (boolean|undefined), availabilityWindowOverride: number, clockSyncUri: (string|undefined), hlsDefaultCodecs: (string|undefined), hlsLowLatency: (boolean|undefined), ignoreDrmInfo: boolean, liveRefreshPeriod: (number|undefined), playreadyVersion: (string|undefined), xlinkFailGracefully: boolean}, muted: (boolean|undefined), muxdata: (undefined|{envKey: string, muxLib: (Object|undefined), muxOptionsOverride: (undefined|{data: (undefined|{env_key: string, player_mux_plugin_name: (string|undefined), player_mux_plugin_version: (string|undefined), player_software_name: (string|undefined), player_software_version: (string|undefined), player_version: (string|undefined), video_id: (string|undefined), video_title: (string|undefined), viewer_user_id: (string|undefined)}), debug: (boolean|undefined)})}), pauseWhenInBackground: (boolean|undefined), preferredAudioChannelCount: number, preferredAudioCodec: (Array<string>|string), preferredAudioLanguage: (Array<string>|null|string), preferredAudioRole: string, preferredTextLanguage: (Array<string>|null|string), preferredTextRole: string, preferredVideoCodec: (Array<string>|string), remoteTextTracks: (Array<{codec: (string|undefined), kind: string, label: (string|undefined), language: string, mimeType: string, url: string}>|null|undefined), restrictions: {maxBandwidth: number, maxHeight: number, maxPixels: number, maxWidth: number, minBandwidth: number, minHeight: number, minPixels: number, minWidth: number}, safari: (undefined|{enableHlsVideoTrackInfo: (boolean|undefined), enableMetadata: (boolean|undefined)}), source: (Array<(string|{audioMimeType: (string|undefined), drmProtected: (boolean|undefined), isLive: (boolean|undefined), name: (string|undefined), type: (null|string|undefined), url: string, videoMimeType: (string|undefined)})>|null|string|{audioMimeType: (string|undefined), drmProtected: (boolean|undefined), isLive: (boolean|undefined), name: (string|undefined), type: (null|string|undefined), url: string, videoMimeType: (string|undefined)}), startTime: (null|number), streaming: {addMissingTimelineCues: (boolean|undefined), alwaysStreamText: boolean, attemptParameters: {backoffFactor: number, baseDelay: number, fatalStatusCodes: (Array<number>|undefined), fuzzFactor: number, maxAttempts: number, timeout: number}, bufferBehind: number, bufferLimitUpdateInterval: (number|undefined), bufferingGoal: number, chaseJumpDistance: number, chasingRate: number, disableAudioTracks: (boolean|undefined), disableFragmentSupport: (boolean|null), disableMergedFragments: (boolean|null), disableVideoTracks: (boolean|undefined), durationBackoff: number, enableLiveEdgeChasing: boolean, forceNativeTS: boolean, gapDetectionThreshold: number, ignoreDrift: boolean, ignoreManagedMediaSourceStreamingHints: (boolean|undefined), ignoreTextStreamFailures: boolean, jumpLargeGaps: boolean, maxSegmentToMediaOffset: number, overridePasp: boolean, patchEdgeWhenMixedContent: boolean, preferNativeHlsOnSafari: boolean, rebufferingGoal: number, relativeTextTimestamp: boolean, safeSeekOffset: number, smallGapLimit: number, stallEnabled: boolean, stallSkip: number, stallThreshold: number, startAtSegmentBoundary: boolean, startChasingAt: number, stopChasingAt: number}, suggestedPresentationDelay: (number|undefined), textStyle: (undefined|{backgroundColor: (string|undefined), edgeColor: (string|undefined), edgeType: (string|undefined), fontColor: (string|undefined), fontFamily: (string|undefined), fontSize: (string|undefined), fontSizePercent: (number|undefined), windowColor: (string|undefined)}), thumbnails: (undefined|{duration: (number|undefined), enabled: (boolean|undefined), gridSize: (string|undefined), mode: (string|undefined), preload: (Array<(number|{preloadWhileBuffering: (boolean|undefined), step: number})>|null|undefined), templateKey: (string|undefined), url: (string|undefined)}), tizen: (undefined|{sideStreamText: boolean}), ttml: (undefined|{containerHeight: number, containerWidth: number, fontSizeRadix: number}), viewerId: (string|undefined), vimond: (undefined|{authToken: string, failIfUnreachable: boolean, failOnError: boolean, playerEventRequest: {body: {client: {buildName: string, buildVersion: string, deviceId: string, drm: string, envPlatform: string, envVersion: string, pageUrl: string, playerEvent: string, playerState: (null|string), streamUrl: string, userAgent: string, videoFormat: string, videoProtocol: string, viewingSession: string}, originator: string, progress: {eventNumber: number, live: (undefined|{liveResumePossible: boolean, onLiveEdge: boolean, position: string}), vod: (undefined|{position: number})}, timestamp: string}, eventInterval: number, uri: string}}), volume: (null|number|undefined), vr: (undefined|{attachMouseListener: (boolean|undefined), enable: (boolean|undefined), fieldOfView: (number|undefined), invertHorizontalControl: (boolean|undefined), invertVerticalControl: (boolean|undefined), sensitivity: (number|undefined)}), youbora: (undefined|{errorFilter: (function(!clpp.Error): (null|{code: string, message: string, metadata: (Object|undefined), severity: number})|undefined)})}=} opt_configuration
140
- * @param {{containerEl: (Element|null), crossorigin: string, disableContainer: boolean}=} opt_viewConfiguration
140
+ * @param {{containerEl: (Element|null), crossorigin: string, disableContainer: boolean, webOSStartupPatch: boolean}=} opt_viewConfiguration
141
141
  * @extends {clpp.EventTarget}
142
142
  * @implements {cl.api.IEventTarget}
143
143
  * @implements {cl.api.IPlayer}
@@ -244,6 +244,11 @@ clpp.Player.prototype.getTextDisplayer = function() {
244
244
  */
245
245
  clpp.Player.prototype.getTimelineCues = function() {
246
246
  };
247
+ /**
248
+ * @return {(null|{offsetDateTime: number, seekRangeStartDateTime: number})}
249
+ */
250
+ clpp.Player.prototype.getTimelineOffset = function() {
251
+ };
247
252
  /**
248
253
  * @return {(clpp.TrackManager|null)}
249
254
  */
@@ -535,7 +540,7 @@ clpp.Playlist.prototype.stop = function() {
535
540
  /**
536
541
  * @param {string} id
537
542
  * @param {!clpp.Track} track
538
- * @implements {{bandwidth: (null|number), codec: (null|string), drmInfo: (null|string), height: (null|number), id: string, originalId: (null|string), track: {channelsCount: (null|number), frameRate: (null|number), id: string, kind: (null|string), label: (null|string), language: (null|string), mimeType: (null|string), renditions: !Array<*>, roles: !Array<string>, src: (null|string), type: string}, width: (null|number)}}
543
+ * @implements {{bandwidth: (null|number), codec: (null|string), drmInfo: (null|string), height: (null|number), id: string, originalId: (null|string), track: {channelsCount: (null|number), frameRate: (null|number), id: string, kind: (null|string), label: (null|string), language: (null|string), mimeType: (null|string), originalLanguage: (null|string), renditions: !Array<*>, roles: !Array<string>, src: (null|string), type: string}, width: (null|number)}}
539
544
  * @constructor
540
545
  */
541
546
  clpp.Rendition = function(id, track) {
@@ -553,7 +558,7 @@ clpp.TimelineCueType = {SCTE35:1, DASH_CALLBACK:2, UNKNOWN:3};
553
558
  /**
554
559
  * @param {string} id
555
560
  * @param {string} type
556
- * @implements {{channelsCount: (null|number), frameRate: (null|number), id: string, kind: (null|string), label: (null|string), language: (null|string), mimeType: (null|string), renditions: !Array<*>, roles: !Array<string>, src: (null|string), type: string}}
561
+ * @implements {{channelsCount: (null|number), frameRate: (null|number), id: string, kind: (null|string), label: (null|string), language: (null|string), mimeType: (null|string), originalLanguage: (null|string), renditions: !Array<*>, roles: !Array<string>, src: (null|string), type: string}}
557
562
  * @constructor
558
563
  */
559
564
  clpp.Track = function(id, type) {
@@ -568,6 +573,7 @@ clpp.Track.prototype.kind;
568
573
  clpp.Track.prototype.label;
569
574
  clpp.Track.prototype.language;
570
575
  clpp.Track.prototype.mimeType;
576
+ clpp.Track.prototype.originalLanguage;
571
577
  clpp.Track.prototype.renditions;
572
578
  clpp.Track.prototype.roles;
573
579
  clpp.Track.prototype.src;
@@ -3685,17 +3691,10 @@ clpp.utils.Uint8ArrayUtils.toStandardBase64 = function(data) {
3685
3691
  clpp.utils.dataview = {};
3686
3692
  /**
3687
3693
  * @param {!DataView} dataView
3688
- * @param {boolean=} opt_littleEndian
3694
+ * @param {boolean=} endian
3689
3695
  * @constructor
3690
3696
  */
3691
- clpp.utils.dataview.DataViewReader = function(dataView, opt_littleEndian) {
3692
- };
3693
- clpp.utils.dataview.DataViewWriter;
3694
- /**
3695
- * @param {number} position
3696
- * @return {undefined}
3697
- */
3698
- clpp.utils.dataview.DataViewWriter.prototype.seek = function(position) {
3697
+ clpp.utils.dataview.DataViewReader = function(dataView, endian) {
3699
3698
  };
3700
3699
  clpp.utils.dom;
3701
3700
  /**