@castlabs/prestoplay 6.31.0 → 6.32.0-beta.2

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 (68) hide show
  1. package/CHANGELOG.md +38 -0
  2. package/README.md +2 -2
  3. package/cjs/cl.adobe.js +3 -3
  4. package/cjs/cl.airplay.js +3 -3
  5. package/cjs/cl.broadpeak.js +18 -18
  6. package/cjs/cl.cast.js +127 -125
  7. package/cjs/cl.cdn.js +13 -0
  8. package/cjs/cl.conviva.js +32 -32
  9. package/cjs/cl.core.js +615 -610
  10. package/cjs/cl.crypto.js +9 -9
  11. package/cjs/cl.dash.js +101 -95
  12. package/cjs/cl.externs.js +113 -44
  13. package/cjs/cl.freewheel.js +26 -26
  14. package/cjs/cl.hls.js +78 -78
  15. package/cjs/cl.hlssmpte.js +6 -6
  16. package/cjs/cl.htmlcue.js +30 -30
  17. package/cjs/cl.ima.js +26 -26
  18. package/cjs/cl.mediatailor.js +3 -3
  19. package/cjs/cl.mse.js +351 -350
  20. package/cjs/cl.muxdata.js +14 -14
  21. package/cjs/cl.onboard.js +4 -4
  22. package/cjs/cl.persistent.js +14 -14
  23. package/cjs/cl.playlist.js +6 -6
  24. package/cjs/cl.simid.js +16 -16
  25. package/cjs/cl.smooth.js +71 -71
  26. package/cjs/cl.thumbnails.js +26 -26
  27. package/cjs/cl.tizen.js +71 -71
  28. package/cjs/cl.ttml.js +29 -29
  29. package/cjs/cl.verimatrix.js +5 -5
  30. package/cjs/cl.vimond.js +11 -11
  31. package/cjs/cl.vr.js +19 -19
  32. package/cjs/cl.vtt.js +14 -14
  33. package/cjs/cl.yospace.js +4 -4
  34. package/cjs/cl.youbora.js +40 -40
  35. package/cl.adobe.js +3 -3
  36. package/cl.airplay.js +3 -3
  37. package/cl.broadpeak.js +14 -14
  38. package/cl.cast.js +102 -101
  39. package/cl.cdn.js +7 -0
  40. package/cl.conviva.js +27 -27
  41. package/cl.core.js +498 -495
  42. package/cl.crypto.js +9 -9
  43. package/cl.dash.js +91 -87
  44. package/cl.externs.js +109 -44
  45. package/cl.freewheel.js +20 -20
  46. package/cl.hls.js +82 -82
  47. package/cl.hlssmpte.js +5 -5
  48. package/cl.htmlcue.js +26 -26
  49. package/cl.ima.js +20 -20
  50. package/cl.mediatailor.js +2 -2
  51. package/cl.mse.js +301 -300
  52. package/cl.muxdata.js +13 -13
  53. package/cl.onboard.js +4 -4
  54. package/cl.persistent.js +10 -10
  55. package/cl.playlist.js +5 -5
  56. package/cl.simid.js +14 -14
  57. package/cl.smooth.js +61 -61
  58. package/cl.thumbnails.js +19 -19
  59. package/cl.tizen.js +56 -56
  60. package/cl.ttml.js +22 -22
  61. package/cl.verimatrix.js +4 -4
  62. package/cl.vimond.js +8 -8
  63. package/cl.vr.js +14 -14
  64. package/cl.vtt.js +12 -12
  65. package/cl.yospace.js +3 -3
  66. package/cl.youbora.js +31 -31
  67. package/package.json +10 -1
  68. package/typings.d.ts +328 -114
package/cl.dash.js CHANGED
@@ -1,87 +1,91 @@
1
- import {clpp} from "./cl.core.js";import './cl.mse.js';let g={};const _ = clpp._;var f=function(window){'use strict';var cM="\x3cms:pro/\x3e lacks content",dM="BaseURL",eM="Channel parsing failure! Ignoring scheme and value",fM="ContentProtection",gM="EssentialProperty",hM="Failed to parse UTCTiming tags.",iM="Location",jM="Missing \x3cms:pro/\x3e node in ContentProtection element",kM="No UTCTiming elements found.",lM="SegmentBase does not contain sufficient segment information:",mM="SegmentList does not contain sufficient segment information:",nM="SegmentTemplate does not contain sufficient segment information:",
2
- oM="SegmentTimeline",pM='The last "S" element cannot have a negative repeat',qM="application",rM="duration",sM="http://dashif.org/guidelines/trickmode",tM="http://www.w3.org/1999/xlink",uM='ignoring the last "S" element.',vM='ignoring the remaining "S" elements.',wM="parse.xml",xM="presentationTimeOffset",yM="schemeIdUri",zM="static",AM="timescale",BM="urn:microsoft:playready",CM="urn:mpeg:cenc:2013",DM="urn:mpeg:dash:utc:http-head:2014",EM="urn:uuid:9a04f079-9840-4286-ab92-e65be0885f95",FM="urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed",
3
- GM=function(a,b){return _.Tg[a]=b},HM=function(a,b,c){try{const d=a(b);if(d&&d.V&&d.abort)return c.resolve(d.V),()=>d.abort();c.resolve(d);return()=>Promise.resolve(d).then(()=>{}).catch(()=>{})}catch(d){return c.reject(d),()=>Promise.resolve()}},IM=function(a,b,c){const d=new _.Gl;let e=()=>{d.reject(new _.I(_.D,7,7001));return a.abort()};a.V.then(f=>{a.a?d.reject(new _.I(_.D,7,7001)):b?e=HM(b,f,d):d.resolve(f)},f=>{c?e=HM(c,f,d):d.reject(f)});return new _.Hs(d,()=>e())},JM=function(a){return new _.Hs(Promise.reject(a),
4
- ()=>Promise.resolve())},KM=function(a){return new _.Hs(Promise.all(a.map(b=>b.V)),()=>Promise.all(a.map(b=>b.abort())))},LM=function(a,b){return a.reduce(((c,d,e)=>d.catch(c.bind(null,e))).bind(null,b),Promise.reject())},MM=function(a){return a===_.q||a===_.t},NM=function(a){return 1>=a?0:Math.floor(Math.random()*a)},OM=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)},PM=function(a){if(!a)return null;const b=
5
- /^P(?:([0-9]*)Y)?(?:([0-9]*)M)?(?:([0-9]*)D)?(?:T(?:([0-9]*)H)?(?:([0-9]*)M)?(?:([0-9.]*)S)?)?$/.exec(a);if(!b)return _.C("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},QM=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},RM=function(a){a=
6
- Number(a);return 0===a%1?a:null},SM=function(a){a=Number(a);return 0===a%1&&0<a?a:null},TM=function(a){a=Number(a);return 0===a%1&&0<=a?a:null},UM=function(a){let b;a=(b=a.match(/^(\d+)\/(\d+)$/))?Number(b[1])/Number(b[2]):Number(a);return isNaN(a)?null:a},VM=function(a){return a?"true"===a.toLowerCase():!1},WM=function(a){var b=void 0===b?1024:b;if(!(a instanceof Uint8Array))return"";if(typeof b!==_.r||0>=b)b=1024;return(a.byteLength>b?a.subarray(0,b):a).toString()},XM=function(a,b){if(0>b||b>=a.a)throw new _.pl(`SegmentTimelineIndex: out of bounds: ${b}/${a.a}`);
7
- a:{var c=0;let d=a.f.length-1;for(;c<=d;){const e=Math.floor((c+d)/2),f=a.f[e],g=f.Re+f.count-1;if(b<f.Re)d=e-1;else if(b>g)c=e+1;else{c=e;break a}}c=-1}if(0>c)throw new _.pl(`SegmentTimelineIndex: index not found: ${b}/${a.a}`);a=c=a.f[c];b-=c.Re;c=a.startTime+b*a.duration;return{startTime:c,endTime:b===a.count-1&&null!=a.Qe?a.Qe:c+a.duration,fj:a.ej+b*a.dj}},YM=function(a,b,c,d,e){const f={RepresentationID:b,Number:c,Bandwidth:d,Time:e};return a.replace(/\$(RepresentationID|Number|Bandwidth|Time)?(?:%0([0-9]+)([diouxX]))?\$/g,
8
- (g,h,k,l)=>{if("$$"===g)return"$";let m=f[h];if(null==m)return _.C("URL template does not have an available substitution ","for identifier",'"'+h+'":',a),g;"RepresentationID"===h&&k&&(_.C("URL template should not contain a width specifier for identifier",'"RepresentationID":',a),k=void 0);"Time"===h&&(m=Math.round(m));switch(l){case void 0:case "d":case "i":case "u":g=m.toString();break;case "o":g=m.toString(8);break;case "x":g=m.toString(16);break;case "X":g=m.toString(16).toUpperCase();break;default:g=
9
- m.toString()}k=window.parseInt(k,10)||1;return Array(Math.max(0,k-g.length)+1).join("0")+g})},bN=function(a,b){var c=ZM(a,b,AM);let d=1;c&&(d=SM(c)||1);c=ZM(a,b,rM);(c=SM(c||""))&&(c/=d);let e=Number(ZM(a,b,xM))||0,f=e/d||0;a.ii&&null!=a.Hd&&a.Hd!==f&&(_.C("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.Ia.id}, `+`Representation ID: ${a.P.id})`),
10
- e=a.Hd*d,f=a.Hd);var g=ZM(a,b,"startNumber");let h=TM(g||"");if(null==g||null==h)h=1;g=ZM(a,b,"endNumber");g=null!==g?TM(g||""):null;var k=$M(a,b,oM),l=null;if(k){{l=d;var m=e,n=a.Ya.duration||Infinity;const y=_.O;k=y.a(k,"S");const A=[];var p=0;let E=0;for(let B=0;B<k.length;++B){const F=k[B];var u=y.ba(F,"t",TM);const ka=y.ba(F,"d",TM);var v=y.ba(F,"r",RM);null!=u&&(u-=m);if(!ka){_.C('"S" element must have a duration:',vM,F);break}u=null!=u?u:p;v=v||0;if(0>v)if(B+1<k.length){v=y.ba(k[B+1],"t",TM);
11
- if(null==v){_.C('An "S" element cannot have a negative repeat','if the next "S" element does not have a valid start time:',vM,F);break}else if(u>=v){_.C('An "S" element cannot have a negative repeat if its start ','time exceeds the next "S" element\'s start time:',vM,F);break}v=Math.ceil((v-u)/ka)-1}else{if(Infinity===n){_.C(pM,"if the Period has an infinite duration:",uM,F);break}else if(u/l>=n){_.C(pM,"if its start time exceeds the Period's duration:",uM,F);break}v=Math.ceil((n*l-u)/ka)-1}0<A.length&&
12
- u!==p&&(Math.abs((u-p)/l)>=_.eu&&_.C("SegmentTimeline contains a large gap/overlap:","the content may have errors in it.",F),A[A.length-1].Qe=u/l);p=v+1;A.push({Re:E,count:p,startTime:u/l,duration:ka/l,ej:u,dj:ka,Qe:null});E+=p;p=u+p*ka}l=new aN(A)}}a=ZM(a,b,"availabilityTimeOffset");b=Number(a||"");b=isNaN(b)?null:b;if(null==a||null==b)b=0;return{timescale:d,Ka:c,Hc:h,Pe:g,Pb:f,Ef:e,ua:l,Ie:b}},ZM=function(a,b,c){return[b(a.P),b(a.ya),b(a.Ia)].filter(_.Jm).map(d=>d.getAttribute(c)).reduce((d,e)=>
13
- d||e)},$M=function(a,b,c){return[b(a.P),b(a.ya),b(a.Ia)].filter(_.Jm).map(d=>_.O.h(d,c)).reduce((d,e)=>d||e)},dN=function(a,b,c,d,e,f){const g=_.O,h=g.getAttributeNS(a,tM,"href"),k=g.getAttributeNS(a,tM,"actuate")||"onRequest";g.ye(a,tM);if(5<=f)return JM(new _.I(_.D,4,4028));if("onLoad"!==k)return JM(new _.I(_.D,4,4027));const l=_.oB([d],[h]);d=_.vk(l,b);d.type=1;return IM(e.fetch(d),m=>{m=_.ni(m.data);m=g.j(m,a.tagName);if(!m)return JM(new _.I(_.D,4,4001,{uri:h}));g.xe(a);g.pe(m,a);g.oe(m,a);return cN(a,
14
- b,c,l[0],e,f+1)})},cN=function(a,b,c,d,e,f){f=void 0===f?0:f;var g=_.O;if(g.getAttributeNS(a,tM,"href"))return g=dN(a,b,c,d,e,f),c&&(g=IM(g,void 0,()=>cN(a,b,c,d,e,f))),g;const h=[],k=g.he(a);for(const l of k)"urn:mpeg:dash:resolve-to-zero:2013"===g.getAttributeNS(l,tM,"href")?g.removeChild(a,l):l.tagName!==oM&&h.push(cN(l,b,c,d,e,f));return IM(KM(h),()=>a)},eN=function(a,b){const c=a.Ya.start;var d=a.presentationTimeline;d.o||(d.I=Math.floor(Math.max(d.I||0,b.Ld+c)));a.yg||_.iC(a.presentationTimeline,
15
- {ne:b.ne+c,Ld:b.Ld+c,me:b.me},"notifySegmentSummary")},fN=function(a){return""===a.id?`${a.schemeIdUri}:${a.startTime}:${a.endTime}`:a.id},gN=function(a,b,c,d,e){return _.w(function*(){const f=_.XB(a,b,c,e);f.type=2;return(yield _.pm(d,f,{objectType:"i"}).V).data})},iN=function(a,b,c,d){let e;var f=(new _.ip).fa("sidx",g=>{e=hN(b,d,c,g)});a&&f.parse(a);if(e)return e;{f=`${b}-${b+a.byteLength-1}`;const g=c[0];a=_.G(a);_.yh('Invalid box type. Expected "sidx", but received:',a,"from:",g,"byte range:",
16
- f);throw new _.I(_.D,3,3004,{url:g,rj:f,size:a.byteLength,Hj:WM(a)});}},hN=function(a,b,c,d){const e=[];d.reader.skip(4);const f=_.N(d.reader);if(0===f)throw _.yh("Invalid timescale."),new _.I(_.D,3,3005);if(0===d.version){var g=_.N(d.reader);var h=_.N(d.reader)}else g=_.Xo(d.reader),h=_.Xo(d.reader);d.reader.skip(2);const k=_.Vo(d.reader);a=a+d.size+h;for(h=0;h<k;h++){var l=_.N(d.reader);const m=(l&2147483648)>>>31;l&=2147483647;const n=_.N(d.reader);d.reader.skip(4);if(1===m)throw _.yh("Hierarchical SIDXs are not supported."),
17
- new _.I(_.D,3,3006);e.push(new _.pI(e.length,g/f-b,(g+n)/f-b,()=>c,a,a+l-1,b));g+=n;a+=l}d.parser.stop();return e},jN=function(a){var b=_.Uo(a.a);let c;for(c=1;8>=c&&!(b&1<<8-c);c++);if(8<c)throw new _.I(_.D,3,3002);const d=new Uint8Array(c);d[0]=b;for(b=1;b<c;b++)d[b]=_.Uo(a.a);return d},mN=function(a){var b=jN(a);if(7<b.length)throw new _.I(_.D,3,3002);var c=0;for(var d=0;d<b.length;d++)c=256*c+b[d];b=c;c=jN(a);a:{for(e of kN)if(_.dm(c,new Uint8Array(e))){var e=!0;break a}e=!1}if(e)c=a.f.byteLength-
18
- a.a.getPosition();else{if(8===c.length&&c[1]&224)throw new _.I(_.D,3,3001);e=c[0]&(1<<8-c.length)-1;for(d=1;d<c.length;d++)e=256*e+c[d];c=e}c=a.a.getPosition()+c<=a.f.byteLength?c:a.f.byteLength-a.a.getPosition();e=new DataView(a.f.buffer,a.f.byteOffset+a.a.getPosition(),c);a.a.skip(c);return new lN(b,e)},nN=function(a){if(8<a.a.byteLength)throw new _.I(_.D,3,3002);if(8===a.a.byteLength&&a.a.getUint8(0)&224)throw new _.I(_.D,3,3001);let b=0;for(let c=0;c<a.a.byteLength;c++){const d=a.a.getUint8(c);
19
- b=256*b+d}return b},qN=function(a,b,c,d,e,f){const g=[],h=()=>e;a=new oN(a.a);let k=null,l=null;for(;_.So(a.a);){var m=mN(a);if(187===m.id){var n=pN(m);n&&(m=c*n.gj,n=b+n.Hi,null!=k&&g.push(new _.pI(g.length,k-f,m-f,h,l,n-1,f)),k=m,l=n)}}null!=k&&g.push(new _.pI(g.length,k-f,d-f,h,l,null,f));return g},pN=function(a){var b=new oN(a.a);a=mN(b);if(179!==a.id)throw _.C("Not a CueTime element."),new _.I(_.D,3,3013);a=nN(a);b=mN(b);if(183!==b.id)throw _.C("Not a CueTrackPositions element."),new _.I(_.D,
20
- 3,3012);b=new oN(b.a);let c=0;for(;_.So(b.a);){const d=mN(b);if(241===d.id){c=nN(d);break}}return{gj:a,Hi:c}},rN=function(a,b){var c=$M(a,b,"Initialization");if(!c)return null;let d=a.P.qa;b=()=>"";const e=c.getAttribute("sourceURL")||void 0;e&&(d=_.oB(a.P.qa,[e]),b=()=>e);let f=0,g=null;if(c=_.O.ba(c,"range",QM))f=c.start,g=c.end;return new _.oI(()=>d,f,g,null,null,b,a.P.Ga)},sN=function(a){return a.Qd},uN=function(a,b,c,d,e,f,g){const h=a.presentationTimeline,k=!a.Oe||!a.Ya.gi,l=a.Ya.start,m=a.Ya.duration;
21
- let n=null;return{createSegmentIndex:function(p,u){return _.w(function*(){var v=[gN(c,d,e,p,u),"webm"===f?gN(b.Da(),b.na,b.ja,p,u):null];v=yield Promise.all(v);var y=v[0];const A=v[1]||null;y="mp4"===f?iN(y,d,c,g):(new tN).parse(y,A,c,g);MM(a.P.contentType)&&_.jC(h,y,l);n=new _.tI(y);k&&_.TB(n,m);return v})},findSegmentPosition:function(p){return n.f(p)},getSegmentReference:function(p){return n.get(p)},adjustSegmentDurations:function(p,u){return n.h(p,u)},getDuration:function(){return null!=m?m:n.getDuration()},
22
- getLastSegmentEndTime:()=>m}},vN=function(a){if(0===a.a.length)var b=null;else{b=a.a[0].startTime;var c=a.a[a.a.length-1].endTime;{let d=0;for(const e of a.a)d=Math.max(d,e.endTime-e.startTime);a=d}b={ne:b,Ld:c,me:a}}return b},wN=function(a,b){null===b||Infinity===b?a.g.warn(`Period duration is ${b}. Skipping fit.`):0===a.a.length||a.a[a.a.length-1].startTime>=b||(a.a[a.a.length-1].endTime=b)},xN=function(a,b){for(let c=0;c<a.a.length;++c)if(a.a[c].endTime>b){a.a.splice(0,c);return}a.a=[]},zN=function(a,
23
- b,c){const d=b.a();b=a.Ya.duration;if(!a.Oe)return a=new yN(d),xN(a,0),wN(a,b),a;var e=a.Ia;var f=a.P;e=e&&e.id&&f&&f.id?`${e.id},${f.id}`:null;if(!a.yg||null==c[e])return a=new yN(d),xN(a,0),wN(a,b),c[e]=a;c=c[e];a:{for(f=e=0;e<c.a.length&&f<d.length;){const g=c.a[e],h=d[f],k=Math.abs(g.endTime-h.endTime);if(.1>=Math.abs(g.startTime-h.startTime)||.1>=k){e=g.position-h.position+c.f;break a}g.startTime<h.startTime?e++:f++}e=null}if(null!=e)c.f=e;else throw c.g.error("Segments could not be updated, overlapping position not found."+
24
- `old: ${c.a.length}, new: ${d.length}`),new _.I(_.D,4,4014);c.a=d;xN(c,_.mC(a.presentationTimeline)-a.Ya.start);wN(c,b);return c},BN=function(a){const b=ZM(a,AN,"initialization");if(!b)return null;const c=a.P.id,d=a.bandwidth||null,e=a.P.qa,f=()=>YM(b,c,null,d,null);return new _.oI(function(){const g=f();return _.oB(e,[g])},0,null,null,null,f,a.P.Ga)},CN=function(a,b){const c=b.Ye,d=a.Ya.duration,e=b.Ka,f=b.Hc,g=b.Pe,h=b.timescale,k=a.bandwidth||null,l=a.P.id,m=a.P.qa,n=a.P.Ga;return{createSegmentIndex:Promise.resolve.bind(Promise),
25
- findSegmentPosition:function(p){return 0>p||d&&p>=d?null:Math.floor(p/e)},getSegmentReference:function(p){const u=p+f;if(null!==g&&u>g)return null;const v=p*e;let y=v+e;d&&(y=Math.min(y,d));if(0>y||d&&v>=d)return null;const A=()=>YM(c,l,u,k,v*h);return new _.pI(p,v,y,function(){const E=A();return _.oB(m,[E])},0,null,b.Pb,null,null,null,null,null,null,null,null,A,n)},adjustSegmentDurations:()=>{},getDuration:()=>d,getLastSegmentEndTime:()=>d}},DN=function(a,b){const c=b.Ye,d=b.ua;if(0===d.a)return[];
26
- const e=[],f=a.P.id,g=a.bandwidth||null,h=a.P.qa;a=a.P.Ga;for(let k=0;k<d.a;k++){const l=k+b.Hc,m=XM(d,k),n=m.fj+b.Ef,p=()=>YM(c,f,l,g,n);e.push(new _.pI(l,m.startTime,m.endTime,()=>{const u=p();return _.oB(h,[u])},0,null,b.Pb,null,null,null,null,null,null,null,null,p,a))}return e},AN=function(a){return a.mc},EN=function(a){return a.lc},FN=function(a,b,c,d,e){let f=e.Fc.length;e.ua&&e.ua.a!==e.Fc.length&&(f=Math.min(e.ua.a,e.Fc.length),_.C("The number of items in the segment timeline and the number of",
27
- "segment URLs do not match, truncating",e.Fc.length,"to",f));const g=[];var h=e.startTime;for(let k=0;k<f;k++){const l=e.Fc[k],m=_.oB(c,[l.Ag]);let n;n=null!=e.Ka?h+e.Ka:e.ua?XM(e.ua,k).endTime:h+a;g.push(new _.pI(k+b,h,n,()=>m,l.start,l.end,e.Pb,null,null,null,null,null,null,null,null,()=>l.Ag,d));h=n}return g},GN=function(a){return[a.P.lc,a.ya.lc,a.Ia.lc].filter(_.Jm).map(b=>_.O.a(b,"SegmentURL")).reduce((b,c)=>0<b.length?b:c).map(b=>{b.getAttribute("indexRange")&&!a.Ue&&(a.Ue=!0,_.C("We do not support the SegmentURL@indexRange attribute on SegmentList. We only use the SegmentList@duration attribute or SegmentTimeline, which must be accurate."));
28
- const c=b.getAttribute("media");b=_.O.ba(b,"mediaRange",QM,{start:0,end:null});return{Ag:c,start:b.start,end:b.end}})},IN=function(a,b,c){c=c.map(e=>({scheme:e.getAttribute(yM),value:e.getAttribute(_.ug)}));const d=a.a.clockSyncUri;!c.length&&d&&(a.g.info("No UTCTiming elements found, falling back on clockSyncUri from config to synchronize clocks."),c.push({scheme:DM,value:d}));return 0===c.length?(a.g.warn(kM),Promise.reject(Error(kM))):LM(c,e=>{const f=e.scheme;e=e.value;switch(f){case DM:case "urn:mpeg:dash:utc:http-head:2012":return HN(a,
29
- 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 HN(a,b,e,"GET");case "urn:mpeg:dash:utc:direct:2014":case "urn:mpeg:dash:utc:direct:2012":{const g=Date.parse(e);return isNaN(g)?(a.g.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.g.warn("NTP UTCTiming scheme is not supported"),
30
- Promise.reject();default:return a.g.warn("Unrecognized scheme in UTCTiming element",f),Promise.reject()}}).catch(()=>{a.g.warn(hM);return Promise.reject(Error(hM))})},JN=function(a,b,c,d){return _.w(function*(){const e=_.O.a(b,"UTCTiming");try{const f=yield IN(a,c,e);d.H=f;a.g.info("Clock synchronized. The difference between server and "+`client clock was ${f} ms.`)}catch(f){a.g.warn("Failed to synchronize clocks. This content may not play on clients with bad clocks!")}return d})},HN=function(a,b,
31
- c,d){return _.w(function*(){var e=_.oB(b,[c]);e=yield a.f(e,d);if("HEAD"===d){if(!e.headers||!e.headers.date)throw a.g.warn("UTC timing response is missing","expected date header"),Error("Date HTTP header missing.");e=e.headers.date}else e=_.ni(e.data);e=Date.parse(e);if(isNaN(e))throw a.g.warn("Unable to parse date from UTC timing response"),Error("Date value invalid.");return e-Date.now()})},LN=function(a,b){return a.find(c=>KN.get(c.$b)===b)},NN=function(a){const b=_.O;var c=b.Tb(a.node,BM,"pro");
32
- if(!c)return MN.warn(jM,a),null;c=b.f(c);if(!c)return MN.warn(cM,a),null;a=_.am(c);a=_.hq(a);a=_.$p(a.a);return{keyId:null,$b:FM,node:b.Mc(),init:[{initData:_.bB(a),initDataType:_.Wc,keyId:null}]}},ON=function(a,b){b=void 0===b?"4.0.0.0":b;const c=_.O;a=c.Tb(a.node,CM,"pssh");if(!a)return null;a=c.f(a);if(!a)return null;a=_.am(a);a=_.bq(a);return a?(b=_.cB(b,a.a))?{keyId:null,$b:EM,node:c.Mc(),init:[{initData:_.bB(b),initDataType:_.Wc,keyId:null}]}:null:(_.C("Unable to parse WV PSSH data. Can not create PR data!"),
33
- null)},PN=function(a,b){const c=_.O;var d=c.Tb(a.node,BM,"pro");if(!d)return _.C(jM,a),null;d=c.f(d);if(!d)return _.C(cM,a),null;a=_.am(d);a=_.hq(a);return a.version!==b&&(_.xh(`Parsing from ${a.version} to ${b}.`),a=_.dB(a,b))?{keyId:null,$b:EM,node:c.Mc(),init:[{initData:_.bB(a),initDataType:_.Wc,keyId:null}]}:null},SN=function(a,b,c,d){const e=QN(a);let f=null;a=[];let g=[];const h=LN(e,_.wd),k=LN(e,_.ud);if(k&&d){var l=PN(k,d);l&&(e[e.indexOf(k)]=l)}k&&!h&&(l=NN(k))&&e.push(l);h&&!k&&(d=ON(h,
34
- d||void 0))&&e.push(d);d=new Set(e.map(m=>m.keyId));d.delete(null);if(1<d.size)throw new _.I(_.D,4,4010);b||(g=e.filter(m=>"urn:mpeg:dash:mp4protection:2011"===m.$b?(f=m.init||f,!1):!0),g.length&&(a=RN(f,g,c),0===a.length&&(a=[_.pB(_.Ge,f,c)])));if(e.length&&(b||!g.length)){a=[];for(const m of KN.values())m!==_.Qe&&a.push(_.pB(m,f,c))}if(b=Array.from(d)[0]||null)for(const m of a)for(const n of m.initData)n.keyId=b;return{qd:b,uj:f,drmInfos:a,ig:!0}},QN=function(a){const b=[];for(const c of a)(a=TN(c))&&
35
- b.push(a);return b},RN=function(a,b,c){const d=[];for(const f of b){var e=KN.get(f.$b);if(e){b=_.pB(e,f.init||a,c);if(e=UN.get(e))(e=e(f))?(b.licenseServerUri=e.licenseUrl,b.licenseServerUriOrigin=e.origin):b.licenseServerUri="";d.push(b)}}return d},VN=function(a,b,c,d,e){const f=SN(a,c,d,e);if(b.ig){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.qd=f.qd||b.qd;b.ig=!1}else if(0<f.drmInfos.length&&(b.drmInfos=b.drmInfos.filter(g=>
36
- f.drmInfos.some(h=>h.keySystem===g.keySystem)),0===b.drmInfos.length))throw new _.I(_.D,4,4008);return f.qd||b.qd},WN=function(a){const b=_.O;a=b.wc(a.node,"https://dashif.org/CPS","Laurl").map(c=>b.f(c)).filter(Boolean);return 0===a.length?null:1===a.length?a[0]:a[NM(a.length)]},TN=function(a){const b=_.O;let c=a.getAttribute(yM),d=b.getAttributeNS(a,CM,"default_KID");const e=b.wc(a,CM,"pssh").map(b.f),f=b.Tb(a,BM,"pro");if(!c)return _.yh("Missing required schemeIdUri attribute on","ContentProtection element",
37
- a),null;c=c.toLowerCase();if(d&&(d=d.replace(/-/g,"").toLowerCase(),d.includes(" ")))throw new _.I(_.D,4,4009);let g=[];try{if(g=e.map(h=>({initDataType:_.Wc,initData:_.am(h),keyId:null})),0===g.length&&f&&b.f(f))try{const h=b.f(f),k=_.am(h),l=_.hq(k);g.push({initDataType:_.Wc,initData:_.bB(l),keyId:null})}catch(h){_.C("Unable to parse ms:pro payload",h),g=[]}}catch(h){throw new _.I(_.D,4,4007);}return{node:a,$b:c,keyId:d,init:0<g.length?g:null}},XN=function(a,b,c){if(a.length){c=c||`${"__clpp_baseUriCollection_"}
38
- ${b.length}`;const d=[];a.forEach(e=>{const f=e.getAttribute("serviceLocation");e=_.O.f(e);f&&e&&d.push({serviceLocationId:f,uri:e,params:{}})});if(d.length)return a=new _.xI(c,d),b.push(a),a}return null},ZN=function(a,b){a=YN(a).filter(c=>c.getLastSegmentEndTime).map(c=>c.getLastSegmentEndTime());0<a.length&&(a=Math.min(...a),_.hC(b.presentationTimeline,a+b.Ya.start))},$N=function(a,b){return _.YB(_.Tm(a,b))?_.K:a.split("/")[0]},YN=function(a){const b=new Set;a.forEach(c=>{c.variants.forEach(d=>
39
- {d.audio&&b.add(d.audio);d.video&&b.add(d.video)})});return Array.from(b)},bO=function(a){return _.w(function*(){var b=a.w?a.w.getBaseUriCollectionById(iM):null;var c=[];b&&(c=_.RC(b,""));0===c.length&&(c=a.o);var d=_.vk(c,a.a.attemptParameters);d.type=1;c=Date.now();d=a.D.networkingEngine.fetch(d);_.Fl(a.A,d);var e=yield d.V;if(!a.D)return 0;b||e.uri&&!a.o.includes(e.uri)&&a.o.unshift(e.uri);d=null!=a.f;const f=yield aO(a,e.data,e.uri);f.manifest.contentSteering&&(a.w=yield a.D.onContentSteeringInfoFound(f.manifest.contentSteering));
40
- if(a.w&&b){0!==e.request.uriIndex&&a.w.banLocation(b.qa[0].serviceLocationId);var g=e.request,h=e.timeMs;e=e.data.byteLength;h&&e&&a.w.notifyThroughput(b.qa[g.uriIndex].serviceLocationId,h,e)}b=(Date.now()-c)/1E3;_.VB(a.I,1,b);if(d&&a.D.onUpdate)a.D.onUpdate(f.manifest);if(f.cj){if(a.D.onTurnedStatic)a.D.onTurnedStatic();a.D.onEvent(new _.H(_.Ee))}return b})},cO=function(a,b){0>a.l||a.B.la(Math.max(3,a.l-b,_.WB(a.I)))},aO=function(a,b,c){return _.w(function*(){var d=_.ni(b);_.vm(wM);d=_.O.j(d,"MPD");
41
- _.vm("parse.xml.end");_.xm(wM,wM,"parse.xml.end");if(!d)throw new _.I(_.D,4,4001,c);d=cN(d,a.a.attemptParameters,a.a.xlinkFailGracefully,c,a.D.networkingEngine);_.Fl(a.A,d);d=yield d.V;return dO(a,d,c)})},dO=function(a,b,c){return _.w(function*(){var d=_.O;const e=[];var f=[c],g=d.a(b,iM),h=g.map(d.f).filter(_.Jm);0<h.length&&(f=_.oB(f,h),a.o=f,XN(g,e,iM));g=d.a(b,dM);h=g.map(d.f);var k=_.oB(f,h);XN(g,e,dM);f=b.getAttribute("type")||zM;a.l=d.ba(b,"minimumUpdatePeriod",PM,-1);f===zM&&0<=a.l&&(a.g.warn("Invalid manifest - a static manifest should not contain the `minimumUpdatePeriod` attribute. The attribute will be ignored."),
42
- a.l=-1,a.B.stop());g=d.ba(b,"maxSegmentDuration",PM);if(d=f===zM&&"dynamic"===a.C)a.g.info("MPD dynamic to static transition."),f="dynamic";h=f===zM;var l="dynamic"===f;if(a.f)var m=a.f.presentationTimeline;else{var n=_.O;m=a.a.timeline||{};var p=n.ba(b,"suggestedPresentationDelay",PM),u=n.ba(b,"minBufferTime",PM,0);p=null!=a.a.suggestedPresentationDelay?a.a.suggestedPresentationDelay:a.a.lowLatencyMode?0:null!=p?p:3*u;n=n.ba(b,"availabilityStartTime",OM);m=new _.sI(m,n,p,h,!!a.a.autoCorrectDrift,
43
- !!a.a.lowLatencyMode);m=h?m:JN(a.J,b,k,m)}m=yield m;n=_.O.ba(b,"timeShiftBufferDepth",PM);n=l&&a.a.availabilityWindowOverride&&!isNaN(a.a.availabilityWindowOverride)?a.a.availabilityWindowOverride:null===n?Infinity:n;m.A=n;if(!a.D)throw new _.I(_.D,7,7001);n={Oe:l,yg:null!=a.f,presentationTimeline:m,Ia:null,Ya:null,ya:null,P:null,bandwidth:0,Ue:!1,ii:d,bc:null,Hd:null};k=eO(a,n,k,e,b);p=k.duration;l=k.periods;d&&(ZN(l,n),m.C=!0);if(h||!d&&!k.fg)m.f=p||Infinity;if(2===a.a.timeline.version){h=p;n=l[0].startTime;
44
- if(null==h||Infinity===h)h=fO(l);p=m.a;_.bC(p,n,n+h);d&&(p.f=!0)}_.kC(m,g||1);m.isLive()||Infinity!==m.f&&!m.o||2===m.j.version&&m.a.getDuration();if(!a.f){a.f={presentationTimeline:m,periods:l,minBufferTime:0,cues:[]};a:{l=_.O;if(m=l.h(b,"ContentSteering"))if(g=m.getAttribute("defaultServiceLocation")||"",h=l.f(m)){l=l.ba(m,"queryBeforeStart",VM,!1);g={manifestType:_.vc,contentSteeringServerUri:h,defaultServiceLocation:g,queryBeforeStart:l||!1,baseUriCollections:[]};break a}g=null}g&&(a.f.contentSteering=
45
- g,a.f.contentSteering.baseUriCollections=e)}a.f.cues=k.cues;a.C=f;return{manifest:a.f,cj:d}})},eO=function(a,b,c,d,e){const f=_.O,g=f.ba(e,"mediaPresentationDuration",PM),h=a.f?a.f.periods[a.f.periods.length-1]||null:null;var k=[];const l=[];var m=0;e=f.a(e,"Period");for(let v=0;v<e.length;v++){var n=e[v];m=f.ba(n,_.Pf,PM,m);var p=f.ba(n,rM,PM);let y=null;if(v!==e.length-1){var u=f.ba(e[v+1],_.Pf,PM);null!=u&&(y=u-m)}else null!=g&&(y=g-m);u=_.eu;y&&p&&Math.abs(y-p)>u&&a.g.warn("There is a gap/overlap between Periods",
46
- n);null==y&&(y=p);n=gO(a,b,c,d,{start:m,duration:y,node:n,gi:null==y||v===e.length-1});p=n.Ia;l.push(p);k=k.concat(n.cues);a.G.includes(p.id)||(a.G.push(p.id),a.f&&(a.D.filterNewPeriod(p),a.f.periods.push(p)));if(null==y){v!==e.length-1&&a.g.warn("Skipping Period",v+1,"and any subsequent Periods:","Period",v+1,"does not have a valid start time.",l[v+1]);m=null;break}m+=y}null==a.f&&a.D.filterAllPeriods(l);h&&(b=l.find(v=>v.id===h.id))&&(h.endTime=b.endTime);k=hO(a,k);return null!=g?(m!==g&&a.g.warn("@mediaPresentationDuration does not match the total duration of ",
47
- "all Periods."),{periods:l,duration:g,fg:!1,cues:k}):{periods:l,duration:m,fg:!0,cues:k}},fO=function(a){return a.map(b=>b.variants[0].video||b.variants[0].audio).reduce((b,c)=>c?c.getDuration():0+b,0)},gO=function(a,b,c,d,e){var f=_.O;b.Ia=iO(a,e.node,null,c,d);b.Ya=e;c=b.Ia.id||`__clpp_period_${e.start}`;b.Ia.id||(a.g.info("No Period ID given for Period with start time "+e.start+`, Assigning a default: ${c}.`),b.Ia.id=c);d=f.a(e.node,"EventStream").flatMap(A=>jO(a,e.start,e.duration,A));f=f.a(e.node,
48
- _.fa).map(A=>kO(a,b,A)).filter(_.Jm);if(b.Oe){var g=[];for(var h of f)for(var k of h.Ji)g.push(k);if(g.length!==(new Set(g)).size)throw new _.I(_.D,4,4018);}h=f.filter(A=>!A.Cf);k=f.filter(A=>A.Cf);for(var l of k){l.streams.forEach(A=>{A.trickPlay=!0});k=l.streams[0];g=l.Cf;for(var m of h)if(g.includes(m.id))for(var n of m.streams)n.trickModeVideo=k}m=lO(f,_.t);n=lO(h,_.q);if(!m.length&&!n.length)throw new _.I(_.D,4,4004);n.length||(n=[null]);m.length||(m=[null]);l=[];for(var p of n)for(var u of m)mO(a,
49
- p,u,l);u=[...lO(h,_.K),...lO(h,_.TA)];p=[];for(var v of u)p.push.apply(p,v.streams);u=lO(h,_.ge);v=[];for(var y of u)v.push.apply(v,y.streams);y=nO(e,h);return{Ia:{id:c,configurationId:a.D.configurationId,startTime:e.start,endTime:y,textStreams:p,thumbStreams:v,variants:l},cues:d}},hO=function(a,b){const c=new Set(b.map(fN));a.j.forEach((d,e)=>{c.has(e)||a.j.delete(e)});b.forEach(d=>{const e=fN(d);a.j.has(e)||a.j.set(e,d)});return Array.from(a.j.values())},iO=function(a,b,c,d,e){const f=_.O;c=c||
50
- {contentType:"",mimeType:"",codecs:"",emsgSchemeIdUris:[],frameRate:void 0,Ze:null,Ga:e?e.find(u=>u.id===dM)||null:null};d=d||c.qa;var g=f.a(b,dM);const h=g.map(f.f);e=e?XN(g,e,b.getAttribute("id")||void 0):null;g=b.getAttribute("contentType")||c.contentType;const k=b.getAttribute(_.Be)||c.mimeType,l=b.getAttribute(_.pd)||c.codecs,m=f.ba(b,"frameRate",UM)||c.frameRate,n=oO(f.a(b,"InbandEventStream"),c.emsgSchemeIdUris),p=f.a(b,"AudioChannelConfiguration");a=pO(a,p)||c.Ze;g||(g=$N(k,l));return{qa:_.oB(d,
51
- h),Ga:e||c.Ga,Qd:f.h(b,"SegmentBase")||c.Qd,lc:f.h(b,"SegmentList")||c.lc,mc:f.h(b,"SegmentTemplate")||c.mc,width:f.ba(b,_.Mg,TM)||c.width,height:f.ba(b,_.be,TM)||c.height,contentType:g,mimeType:k,codecs:l,frameRate:m,emsgSchemeIdUris:n,id:b.getAttribute("id")||"",Ze:a}},jO=function(a,b,c,d){const e=_.O,f=d.getAttribute(yM)||"",g=d.getAttribute(_.ug)||"",h=e.ba(d,AM,TM)||1,k=e.ba(d,xM,TM)||0,l=[];for(const n of e.a(d,"Event")){d=e.ba(n,"presentationTime",TM)||0;var m=e.ba(n,rM,TM)||0;d=b+d/h-k/h;
52
- m=d+m/h;null!=c&&(d=Math.min(d,b+c),m=Math.min(m,b+c));let p=_.lg;f.startsWith(_.qg)?p=_.Gf:"urn:mpeg:dash:event:callback:2015"===f&&(p=_.Fe);const u={configurationId:a.D.configurationId,schemeIdUri:f,value:g,startTime:d,endTime:m,id:n.getAttribute("id")||"",type:p,eventElement:e.Td(n)};u.type===_.Fe&&(u.re=()=>{if(u.eventElement){var v=u.eventElement.getAttribute("messageData")||"";v&&v.startsWith("http")&&(v=_.vk(v),v.type=_.uk,a.D.networkingEngine.fetch(v))}});l.push(u)}return l},kO=function(a,
53
- b,c){var d=_.O;b.ya=iO(a,c,b.Ia,null,null);var e=b.ya.contentType===_.K;const f=qO(c),{kind:g,Kd:h,roles:k}=rO(c,e);let l=null;try{l=sO(c)}catch(y){return null}const m=d.a(c,"Accessibility"),n=tO(m);var p=d.a(c,fM);const u=SN(p,a.a.ignoreDrmInfo,b.Ia.id,a.a.playreadyVersion||null),v=c.getAttribute("lang")||_.kg;p=_.Gn(v);d=d.a(c,_.nb);c=d.map(y=>uO(a,b,u,g,v,f||"",h,k,n,y)).filter(_.Jm);if(0===c.length){if(e)return null;throw new _.I(_.D,4,4003);}if(!b.ya.contentType||b.ya.contentType===qM){b.ya.contentType=
54
- $N(c[0].mimeType,c[0].codecs);for(const y of c)y.type=b.ya.contentType}for(const y of c)for(const A of u.drmInfos)y.keyId&&!A.keyIds.includes(y.keyId)&&A.keyIds.push(y.keyId);c=vO(c,b.ya.contentType,m);e=d.map(y=>y.getAttribute("id")).filter(_.Jm);return{id:b.ya.id||"__fake__"+a.h++,contentType:b.ya.contentType,language:p,originalLanguage:v,Kd:h,streams:c,drmInfos:u.drmInfos,Cf:l,Ji:e}},lO=function(a,b){return a.filter(c=>c.contentType===b)},mO=function(a,b,c,d){if(b||c)if(b&&c){if(_.IB(b.drmInfos,
55
- c.drmInfos)){var e=_.HB(b.drmInfos,c.drmInfos);for(var f of b.streams)for(const h of c.streams){var g=(h.bandwidth||0)+(f.bandwidth||0);g={id:a.h++,language:b.language,primary:b.Kd||c.Kd,audio:f,video:h,bandwidth:g,drmInfos:e,allowedByApplication:!0,allowedByKeySystem:!0};d.push(g)}}}else{f=b||c;for(e of f.streams)g=e.bandwidth||0,g={id:a.h++,language:f.language||_.kg,primary:f.Kd,audio:b?e:null,video:c?e:null,bandwidth:g,drmInfos:f.drmInfos,allowedByApplication:!0,allowedByKeySystem:!0},d.push(g)}},
56
- nO=function(a,b){return null!==a.duration?a.start+a.duration:0<b.length?(b=b.filter(c=>0<c.streams.length).map(c=>c.streams).flat().filter(c=>c.getLastSegmentEndTime).map(c=>c.getLastSegmentEndTime()),0<b.length?a.start+Math.min(...b):null):null},qO=function(a){let b=null;const c=_.O.a(a,"Label").map(_.O.f).filter(_.Jm);c&&0<c.length&&(b=c[c.length-1]);null==b&&(b=a.getAttribute("label"));return b},rO=function(a,b){let c=!1;const d=_.O.a(a,"Role");a=d.map(f=>f.getAttribute(_.ug)).filter(_.Jm);let e=
57
- void 0;b&&(e=_.TA);for(const f of d)if(b=f.getAttribute(yM),null==b||"urn:mpeg:dash:role:2011"===b||"urn:mpeg:dash:role"===b)switch(b=f.getAttribute(_.ug),b){case _.te:c=!0;break;case _.EA:case _.TA:e=b;break;case "forced-subtitle":case "forced_subtitle":case _.Zd:e=_.Zd}return{Kd:c,roles:a,kind:e}},sO=function(a){var b=_.O.a(a,gM);a=null;for(const c of b){b=c.getAttribute(yM)||"";const d=c.getAttribute(_.ug);if(b!==sM&&!wO.includes(b)||void 0===d)throw new _.pl("Unrecognized essential property");
58
- b===sM&&(a=d.split(" "))}return a},tO=function(a){const b=new Map;for(const e of a)if(a=e.getAttribute(yM),"urn:scte:dash:cc:cea-608:2015"===a||"urn:scte:dash:cc:cea-708:2015"===a){a=1;var c=e.getAttribute(_.ug);if(null!=c)for(const f of c.split(";")){if(f.includes("\x3d")){var d=f.split("\x3d");c=d[0].startsWith("CC")?d[0]:"CC"+d[0];d=d[1].split(",")[0].split(":").pop()}else c="CC"+a,a+=2,d=f;b.set(c,_.Gn(d))}else b.set("CC1",_.kg)}return b},uO=function(a,b,c,d,e,f,g,h,k,l){const m=_.O,n=_.Gn(e);
59
- b.P=iO(a,l,b.ya,null,null);if(!xO(a,b.P))return a.g.warn("Skipping Representation",b.P),null;b.bc=`${b.Ia.id} ${b.P.id}`;b.Hd=a.F.get(b.bc);b.bandwidth=m.ba(l,"bandwidth",SM)||0;const p=yO(a,b);if(!p)return null;a.F.set(b.bc,p.Ja);var u=m.a(l,fM);a=VN(u,c,a.a.ignoreDrmInfo,b.Ia.id,a.a.playreadyVersion||null);u=!1;m.a(l,"SupplementalProperty").some(v=>"tag:dolby.com,2018:dash:EC3_ExtensionType:2018"===v.getAttribute(yM)&&"JOC"===v.getAttribute(_.ug))&&(b.P.mimeType="audio/eac3-joc",u=!0);l=zO(b,l);
60
- return{id:_.nI++,originalId:b.P.id,createSegmentIndex:p.createSegmentIndex,findSegmentPosition:p.findSegmentPosition,getSegmentReference:p.getSegmentReference,initSegmentReference:p.initSegmentReference,adjustSegmentDurations:p.adjustSegmentDurations,getLastSegmentEndTime:p.getLastSegmentEndTime,getDuration:p.getDuration,segmentLookupStrategy:_.JA,mimeType:b.P.mimeType,codecs:b.P.codecs,frameRate:b.P.frameRate,bandwidth:b.bandwidth,width:b.P.width,height:b.P.height,kind:d,encrypted:0<c.drmInfos.length,
61
- keyId:a,language:n,originalLanguage:e,label:f,type:b.ya.contentType,primary:g,trickModeVideo:null,emsgSchemeIdUris:b.P.emsgSchemeIdUris,roles:h,channelsCount:b.P.Ze,spatialAudio:u,closedCaptions:k,horizontalTiles:l.horizontalTiles,verticalTiles:l.verticalTiles,durationPerTile:l.durationPerTile}},vO=function(a,b,c){const d=b===_.TA?_.K:b;b=c.map(e=>({scheme:e.getAttribute(yM)||"",id:e.getAttribute("id")||void 0,value:e.getAttribute(_.ug)||"",protocol:"DASH",type:d}));for(const e of a)e.accessibility=
62
- b;return a},xO=function(a,b){let c;c=b.Qd?1:0;c+=b.lc?1:0;c+=b.mc?1:0;if(0===c){if(b.contentType===_.K||b.contentType===qM)return!0;a.g.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.g.warn("Representation contains multiple segment information sources:","the Representation should only contain one of SegmentBase,","SegmentList, or SegmentTemplate.",
63
- b),b.Qd?(a.g.info("Using SegmentBase by default."),b.lc=null):a.g.info("Using SegmentList by default."),b.mc=null);return!0},yO=function(a,b){var c=b.P.contentType;c=c===_.K||c===qM;try{if(b.P.Qd){{const A=Number(ZM(b,sN,xM))||0,E=ZM(b,sN,AM);var d=1;E&&(d=SM(E)||1);var e=A/d||0,f=rN(b,sN);{d=f;var g=e;const B=b.P.mimeType.split("/")[1];if(b.P.contentType!==_.K&&"mp4"!==B&&"webm"!==B)throw _.yh("SegmentBase specifies an unsupported container type.",b.P),new _.I(_.D,4,4006);if("webm"===B&&!d)throw _.yh(lM,
64
- "the SegmentBase uses a WebM container,","but does not contain an Initialization element.",b.P),new _.I(_.D,4,4005);const F=$M(b,sN,"RepresentationIndex"),ka=ZM(b,sN,"indexRange");let Ya=b.P.qa,db=QM(ka||"");if(F){const tc=F.getAttribute("sourceURL");tc&&(Ya=_.oB(b.P.qa,[tc]));db=_.O.ba(F,"range",QM,db)}if(!db)throw _.yh(lM,"the SegmentBase does not contain @indexRange","or a RepresentationIndex element.",b.P),new _.I(_.D,4,4002);MM(b.P.contentType)&&(b.presentationTimeline.B=null);var h=uN(b,d,Ya,
65
- db.start,db.end,B,g)}var k={createSegmentIndex:h.createSegmentIndex,findSegmentPosition:h.findSegmentPosition,getSegmentReference:h.getSegmentReference,adjustSegmentDurations:h.adjustSegmentDurations,getDuration:h.getDuration,initSegmentReference:f,getLastSegmentEndTime:h.getLastSegmentEndTime,Ja:e}}}else{if(b.P.lc){{var l=a.H;const A=rN(b,EN);{const F=GN(b),ka=bN(b,EN);let Ya=ka.Hc;0===Ya&&(_.C("SegmentList@startNumber must be \x3e 0"),Ya=1);h=0;ka.Ka?h=ka.Ka*(Ya-1):ka.ua&&0<ka.ua.a&&(h=ka.ua.h);
66
- var m={Ka:ka.Ka,startTime:h,Hc:Ya,Pb:ka.Pb,ua:ka.ua,Fc:F}}if(!m.Ka&&!m.ua&&1<m.Fc.length)throw _.C(mM,"the SegmentList specifies multiple segments,","but does not specify a segment duration or timeline.",b.P),new _.I(_.D,4,4002);if(!m.Ka&&!b.Ya.duration&&!m.ua&&1===m.Fc.length)throw _.C(mM,"the SegmentList specifies one segment,","but does not specify a segment duration, period duration,","or timeline.",b.P),new _.I(_.D,4,4002);if(m.ua&&0===m.ua.a)throw _.C(mM,"the SegmentList has an empty timeline.",
67
- b.P),new _.I(_.D,4,4002);const E=FN(b.Ya.duration,m.Hc,b.P.qa,b.P.Ga,m),B=zN(b,new AO(E),l);if(MM(b.P.contentType)){const F=vN(B);F&&eN(b,F)}d={createSegmentIndex:Promise.resolve.bind(Promise),findSegmentPosition:B.findSegmentPosition.bind(B),getSegmentReference:B.getSegmentReference.bind(B),adjustSegmentDurations:B.adjustSegmentDurations.bind(B),getDuration:B.getDuration.bind(B),initSegmentReference:A,getLastSegmentEndTime:B.getLastSegmentEndTime.bind(B),Ja:m.Pb}}}else{if(b.P.mc){{var n=a.H,p=!!a.f;
68
- const A=BN(b);{const B=bN(b,AN),F=ZM(b,AN,"media"),ka=ZM(b,AN,"index");e={Ka:B.Ka,timescale:B.timescale,Hc:B.Hc,Pe:B.Pe,Pb:B.Pb,Ef:B.Ef,ua:B.ua,Ye:F,Ed:ka,Ie:B.Ie}}{let B;B=e.Ed?1:0;B+=e.ua?1:0;B+=e.Ka?1:0;if(0===B)throw _.yh("SegmentTemplate does not contain any segment information:","the SegmentTemplate must contain either an index URL template","a SegmentTimeline, or a segment duration.",b.P),new _.I(_.D,4,4002);1!==B&&(_.C("SegmentTemplate contains multiple segment information sources:","the SegmentTemplate should only contain an index URL template,",
69
- "a SegmentTimeline or a segment duration.",b.P),e.Ed?(_.wh("Using the index URL template by default."),e.ua=null):_.wh("Using the SegmentTimeline by default."),e.Ka=null);if(!e.Ed&&!e.Ye)throw _.yh(nM,"the SegmentTemplate's media URL template is missing.",b.P),new _.I(_.D,4,4002);}const E=MM(b.P.contentType);h=null;if(e.Ed){E&&(b.presentationTimeline.B=null);{f=A;const B=b.P.mimeType.split("/")[1];if("mp4"!==B&&"webm"!==B)throw _.yh("SegmentTemplate specifies an unsupported container type.",b.P),
70
- new _.I(_.D,4,4006);if("webm"===B&&!f)throw _.yh(nM,"the SegmentTemplate uses a WebM container,","but does not contain an initialization URL template.",b.P),new _.I(_.D,4,4005);const F=YM(e.Ed,b.P.id,null,b.bandwidth||null,null),ka=_.oB(b.P.qa,[F]);h=uN(b,f,ka,0,null,B,e.Pb)}}else if(e.Ka){if(!p&&E){b.presentationTimeline.B=null;var u=b.presentationTimeline;u.G=Math.max(u.G,e.Ie);u.g.debug("notifyAvailabilityTimeOffset: maxAvailabilityTimeOffset\x3d"+u.G);_.kC(b.presentationTimeline,e.Ka);var v=b.presentationTimeline,
71
- y=b.Ya.start;v.l=null==v.l?y:Math.min(v.l,y)}h=CN(b,e)}else{const B=DN(b,e),F=zN(b,new BO(B),n);if(E){const ka=vN(F);ka&&eN(b,ka)}h={createSegmentIndex:Promise.resolve.bind(Promise),findSegmentPosition:F.findSegmentPosition.bind(F),getSegmentReference:F.getSegmentReference.bind(F),adjustSegmentDurations:F.adjustSegmentDurations.bind(F),getDuration:F.getDuration.bind(F),getLastSegmentEndTime:F.getLastSegmentEndTime.bind(F)}}g={createSegmentIndex:h.createSegmentIndex,findSegmentPosition:h.findSegmentPosition,
72
- getSegmentReference:h.getSegmentReference,adjustSegmentDurations:h.adjustSegmentDurations,getDuration:h.getDuration,initSegmentReference:A,getLastSegmentEndTime:h.getLastSegmentEndTime,Ja:e.Pb}}}else g=CO(b);d=g}k=d}return k}catch(A){if(c&&4002===A.code)return a.g.debug("Ignoring DASH_NO_SEGMENT_INFO error in a text stream",A),null;throw A;}},zO=function(a,b){const c={};if(a.P.contentType===_.ge){var d=(b=_.O.h(b,gM))&&b.getAttribute(yM);d=d||"";DO.includes(d)&&(b=_.BB(b.getAttribute(_.ug)||""))&&
73
- (c.horizontalTiles=b.Bd,c.verticalTiles=b.Vd,a.ya.mc&&(d=_.O.ba(a.ya.mc,rM,TM)||0,a=_.O.ba(a.ya.mc,AM,TM)||1,a=d/a))&&(c.durationPerTile=a/b.Zi)}return c},CO=function(a){const b=a.P.qa,c=a.Ya.duration||0,d=()=>c;return{createSegmentIndex:()=>Promise.resolve(),findSegmentPosition:e=>0<=e&&e<c?1:null,getSegmentReference:e=>1!==e?null:new _.pI(1,0,c,()=>b,0,null,0,null,null,null,null,null,null,null,null,()=>"",a.P.Ga),adjustSegmentDurations:()=>{},getDuration:d,getLastSegmentEndTime:d,verticalTiles:void 0,
74
- horizontalTiles:void 0,initSegmentReference:null,Ja:0}},oO=function(a,b){b=b.slice();for(const c of a)(a=c.getAttribute(yM))&&!b.includes(a)&&b.push(a);return b},pO=function(a,b){for(const d of b){b=d.getAttribute(yM);if(!b)continue;const e=d.getAttribute(_.ug);if(e)switch(b){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 c=parseInt(e,10);if(!c){a.g.warn(eM,
75
- b,e);continue}return c;case "tag:dolby.com,2014:dash:audio_channel_configuration:2011":case "urn:dolby:dash:audio_channel_configuration:2011":c=parseInt(e,16);if(!c){a.g.warn(eM,b,e);continue}for(a=0;c;)c&1&&++a,c>>=1;return a;default:a.g.warn("Unrecognized audio channel scheme:",b,e)}}return null};_.cv.prototype.Td=GM(19,function(a){return a});
76
- _.FB.prototype.Td=GM(18,function(a){const b=Array.from(a.a.entries()).map(([d,e])=>`xmlns:${e}="${d}"`).join(" "),c=(new DOMParser).parseFromString(`<?xml version="1.0"?><${a.tagName} `+`${b}/>`,_.$f).childNodes[0];Object.keys(a.attributes).forEach(d=>{c.setAttribute(d,a.attributes[d])});a.childNodes.forEach(d=>{d.tagName===_.da?c.textContent+=d.textContent:c.appendChild(this.Td(d))});return c});
77
- _.cv.prototype.ye=GM(17,function(a,b){Array.from(a.attributes).forEach(c=>{c.namespaceURI===b&&a.removeAttributeNS(c.namespaceURI,c.localName)})});_.FB.prototype.ye=GM(16,function(a,b){if(b=a.a.get(b)){var c=`${b}:`;Object.keys(a.attributes).forEach(d=>{d.startsWith(c)&&delete a.attributes[d]})}});_.cv.prototype.oe=GM(15,function(a,b){for(const c of a.attributes)b.setAttributeNS(c.namespaceURI,c.nodeName,c.value)});
78
- _.FB.prototype.oe=GM(14,function(a,b){Object.keys(a.attributes).forEach(c=>{b.attributes[c]=a.attributes[c]})});_.cv.prototype.pe=GM(13,function(a,b){Array.from(a.childNodes).forEach(c=>{a.removeChild(c);b.appendChild(c)})});_.FB.prototype.pe=GM(12,function(a,b){b.childNodes.push(...a.childNodes);a.childNodes=[]});_.cv.prototype.xe=GM(11,function(a){Array.from(a.childNodes).forEach(b=>{a.removeChild(b)})});_.FB.prototype.xe=GM(10,function(a){a.childNodes=[]});_.cv.prototype.Mc=GM(9,function(){return document.createElement("null")});
79
- _.FB.prototype.Mc=GM(8,function(){return new _.DB("NULL",null,{},[],null,null,new Map)});_.cv.prototype.he=GM(7,function(a){return Array.from(a.childNodes).filter(b=>b instanceof Element)});_.FB.prototype.he=GM(6,function(a){return a.childNodes});_.cv.prototype.ba=GM(5,function(a,b,c,d=null){let e=null;a=a.getAttribute(b);null!=a&&(e=c(a));return null==e?d:e});_.FB.prototype.ba=GM(4,function(a,b,c,d=null){let e=null;a=a.getAttribute(b);null!=a&&(e=c(a));return null==e?d:e});
80
- _.cv.prototype.wc=GM(3,function(a,b,c){return Array.from(a.childNodes).filter(d=>d instanceof Element&&d.localName===c&&d.namespaceURI===b)});_.FB.prototype.wc=GM(2,function(a,b,c){b=a.a.get(b);if(!b)return[];const d=`${b}:${c}`;return a.childNodes.filter(e=>e.tagName===d)});_.cv.prototype.Tb=GM(1,function(a,b,c){a=this.wc(a,b,c);return 1!==a.length?null:a[0]});_.FB.prototype.Tb=GM(0,function(a,b,c){a=this.wc(a,b,c);return 1!==a.length?null:a[0]});
81
- var aN=class{constructor(a){this.f=a;this.a=a.reduce((b,c)=>b+c.count,0);this.h=0<this.a?a[0].startTime:0}};var DO=["http://dashif.org/thumbnail_tile","http://dashif.org/guidelines/thumbnail_tile"],wO=["urn:mpeg:mpegB:cicp:ColourPrimaries","urn:mpeg:mpegB:cicp:MatrixCoefficients","urn:mpeg:mpegB:cicp:TransferCharacteristics"];var BO=class{constructor(a){this.f=a}a(){return this.f}},AO=class{constructor(a){this.f=a}a(){return this.f}};var oN=class{constructor(a){this.f=a;this.a=new _.aq(a,!1)}},kN=[[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]],lN=class{constructor(a,b){this.id=a;this.a=b}};var tN=class{parse(a,b,c,d){var e;b=new oN(new DataView(b));if(440786851!==mN(b).id)throw _.yh("Not an EBML element."),new _.I(_.D,3,3008);var f=mN(b);if(408125543!==f.id)throw _.yh("Not a Segment element."),new _.I(_.D,3,3009);b=f.a.byteOffset;f=new oN(f.a);for(e=null;_.So(f.a);){var g=mN(f);if(357149030===g.id){e=g;break}}if(!e)throw _.yh("Not an Info element."),new _.I(_.D,3,3010);f=new oN(e.a);g=1E6;for(e=null;_.So(f.a);){const h=mN(f);if(2807729===h.id)g=nN(h);else if(17545===h.id)if(e=h,4===
82
- e.a.byteLength)e=e.a.getFloat32(0);else if(8===e.a.byteLength)e=e.a.getFloat64(0);else throw new _.I(_.D,3,3003);}if(null==e)throw new _.I(_.D,3,3011);f=g/=1E9;e*=g;a=mN(new oN(new DataView(a)));if(475249515!==a.id)throw _.yh("Not a Cues element."),new _.I(_.D,3,3007);return qN(a,b,f,e,c,d)}};var yN=class{constructor(a){this.a=a;this.f=0;this.g=new _.T("clpp.dash.SegmentSourceAdapter")}findSegmentPosition(a){for(let b=this.a.length-1;0<=b;--b){const c=this.a[b];if(a>=c.startTime&&a<c.endTime)return c.position+this.f}return this.a.length&&a<this.a[0].startTime?this.a[0].position+this.f:null}getSegmentReference(a){if(0===this.a.length)return null;var b=a-this.f-this.a[0].position;if(0>b||b>=this.a.length)return null;b=this.a[b];return 0===this.f?b:new _.pI(a,b.startTime,b.endTime,b.Da,b.na,
83
- b.ja,b.Ja,b.keyInfo,b.Pc,b.timescale,b.horizontalTiles,b.verticalTiles,b.durationPerTile,b.a,b.initSegment,b.Uc,b.Ga)}adjustSegmentDurations(a,b){if(0!==this.a.length&&(a=a-this.f-this.a[0].position,0<=a&&a<this.a.length))for(this.g.warn(_.nA,b,"at",a),this.a[a].endTime+=b,a+=1;a<this.a.length;++a)this.a[a].startTime+=b,this.a[a].endTime+=b}getDuration(){return 0===this.a.length?0:this.a[this.a.length-1].endTime-this.a[0].startTime}getLastSegmentEndTime(){return this.a.length?this.a[this.a.length-
84
- 1].endTime:0}};var EO=class{constructor(a,b){this.g=a;this.f=b;this.a={clockSyncUri:void 0}}};var KN=(new Map).set("urn:uuid:1077efec-c0b2-4d02-ace3-3c1e52e2fb4b",_.Qe).set(FM,_.wd).set(EM,_.ud).set("urn:uuid:79f0049a-4098-8642-ab92-e65be0885f95",_.ud).set("urn:uuid:94ce86fb-07ff-4f43-adb8-93d2fa968ca2",_.sd).set("urn:uuid:f239e769-efa3-4850-9c16-a903c6932efb",_.rd),UN=(new Map).set(_.wd,function(a){const b=WN(a);if(b)return{licenseUrl:b,origin:_.HA};if(a=_.O.Tb(a.node,"urn:microsoft","laurl"))if(a=a.getAttribute("licenseUrl"))return{licenseUrl:a,origin:"ms:laurl"};return null}).set(_.ud,
85
- function(a){var b=_.O;const c=WN(a);if(c)return{licenseUrl:c,origin:_.HA};a=b.Tb(a.node,BM,"pro");if(!a)return null;b=b.f(a);if(!b)return null;b=_.am(b);return(b=_.hq(b).h)?{licenseUrl:b,origin:"mspr:pro"}:null}),MN=new _.T("clpp.dash.ContentProtection");var FO=class{constructor(){this.D=this.a=null;this.o=[];this.f=null;this.G=[];this.h=1;this.H={};this.l=0;this.I=new _.qI(5);this.B=new _.Li(()=>{this.Yb()});this.A=new _.$t;this.j=new Map;this.g=new _.T("clpp.dash.DashParser");this.C=null;this.J=new EO(this.g,(a,b)=>{a=_.vk(a,this.a.attemptParameters);a.type=5;a.method=b;b=this.D.networkingEngine.fetch(a);_.Fl(this.A,b);return b.V});this.F=new Map;this.K=!1;this.w=null}configure(a){this.a=a;this.J.a={clockSyncUri:a.clockSyncUri}}start(a,b){const c=
86
- this;return _.w(function*(){c.o=[a];c.D=b;const d=yield bO(c);c.D&&cO(c,d);if(!c.D)throw new _.I(_.D,7,7001);return c.f})}requestStop(){this.K=!0}stop(){this.a=this.D=null;this.o=[];this.f=null;this.G=[];this.H={};this.C=null;this.l=-1;this.B.stop();this.F.clear();this.j.clear();return this.A.destroy()}update(){bO(this).catch(a=>{if(this.D&&a)this.D.onError(a)})}setCurrentVariant(){}Yb(){const a=this;return _.w(function*(){a.g.debug(_.zA);let b=0;try{b=yield bO(a)}catch(c){if(a.D&&c.a&&(a.D.onError(c),
87
- c.severity===_.D))return}a.D&&(a.K?yield a.stop():cO(a,b))})}loadVariant(a){return _.w(function*(){return a})}loadTextStream(a,b){const c=this;return _.w(function*(){let d;const e=c.f.periods.find(f=>f.id===b);e&&(d=e.textStreams.find(f=>f.id===a)||null);if(!d)throw new _.pl(`Could not load text stream with id: ${a}`);return d})}};_.x("clpp.dash.DashComponent",class extends _.zv{install(){_.Ft.mpd=FO;_.Et[_.vc]=FO}uninstall(){_.OC("mpd");_.PC(_.vc)}id(){return"dash"}});};f.call(g, window);
1
+ import {clpp} from "./cl.core.js";import './cl.mse.js';let g={};const _ = clpp._;var f=function(window){'use strict';var eM="\x3cms:pro/\x3e lacks content",fM="BaseURL",gM="Channel parsing failure! Ignoring scheme and value",hM="ContentProtection",iM="Empty period duration.",jM="EssentialProperty",kM="Failed to parse UTCTiming tags.",lM="Location",mM="Missing \x3cms:pro/\x3e node in ContentProtection element",nM="No UTCTiming elements found.",oM="SegmentBase does not contain sufficient segment information:",pM="SegmentList does not contain sufficient segment information:",qM="SegmentTemplate does not contain sufficient segment information:",
2
+ rM="SegmentTimeline",sM="Source is empty. Skipping fit.",tM='The last "S" element cannot have a negative repeat',uM="application",vM="duration",wM="http://dashif.org/guidelines/trickmode",xM="http://www.w3.org/1999/xlink",yM='ignoring the last "S" element.',zM='ignoring the remaining "S" elements.',AM="parse.xml",BM="presentationTimeOffset",CM="schemeIdUri",DM="static",EM="timescale",FM="urn:microsoft:playready",GM="urn:mpeg:cenc:2013",HM="urn:mpeg:dash:utc:http-head:2014",IM="urn:uuid:9a04f079-9840-4286-ab92-e65be0885f95",
3
+ JM="urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed",KM=function(a,b){return _.Yg[a]=b},LM=function(a,b,c){try{const d=a(b);if(d&&d.V&&d.abort)return c.resolve(d.V),()=>d.abort();c.resolve(d);return()=>Promise.resolve(d).then(()=>{}).catch(()=>{})}catch(d){return c.reject(d),()=>Promise.resolve()}},MM=function(a,b,c){const d=new _.Kl;let e=()=>{d.reject(new _.I(_.D,7,7001));return a.abort()};a.V.then(f=>{a.a?d.reject(new _.I(_.D,7,7001)):b?e=LM(b,f,d):d.resolve(f)},f=>{c?e=LM(c,f,d):d.reject(f)});return new _.Rs(d,
4
+ ()=>e())},NM=function(a){return new _.Rs(Promise.reject(a),()=>Promise.resolve())},OM=function(a){return new _.Rs(Promise.all(a.map(b=>b.V)),()=>Promise.all(a.map(b=>b.abort())))},PM=function(a,b){return a.reduce(((c,d,e)=>d.catch(c.bind(null,e))).bind(null,b),Promise.reject())},QM=function(a){return a===_.q||a===_.t},RM=function(a){return 1>=a?0:Math.floor(Math.random()*a)},SM=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:
5
+ Math.floor(a/1E3)},TM=function(a){if(!a)return null;const b=/^P(?:([0-9]*)Y)?(?:([0-9]*)M)?(?:([0-9]*)D)?(?:T(?:([0-9]*)H)?(?:([0-9]*)M)?(?:([0-9.]*)S)?)?$/.exec(a);if(!b)return _.B("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},UM=function(a){var b=/([0-9]+)-([0-9]+)/.exec(a);if(!b)return null;a=Number(b[1]);if(!isFinite(a))return null;b=
6
+ Number(b[2]);return isFinite(b)?{start:a,end:b}:null},VM=function(a){a=Number(a);return 0===a%1?a:null},WM=function(a){a=Number(a);return 0===a%1&&0<a?a:null},XM=function(a){a=Number(a);return 0===a%1&&0<=a?a:null},YM=function(a){let b;a=(b=a.match(/^(\d+)\/(\d+)$/))?Number(b[1])/Number(b[2]):Number(a);return isNaN(a)?null:a},ZM=function(a){return a?"true"===a.toLowerCase():!1},$M=function(a){var b=void 0===b?1024:b;if(!(a instanceof Uint8Array))return"";if(typeof b!==_.r||0>=b)b=1024;return(a.byteLength>
7
+ b?a.subarray(0,b):a).toString()},aN=function(a,b){b-=a.l;return 0>b||b>=a.j?null:b},bN=function(a){let b=0;for(const c of a)!(0>=c.count)&&c.duration>b&&(b=c.duration);return b},cN=function(a,b){if(0>b||b>=a.a)throw new _.tl(`SegmentTimelineIndex: out of bounds: ${b}/${a.a}`);a:{var c=0;let d=a.f.length-1;for(;c<=d;){const e=Math.floor((c+d)/2),f=a.f[e],g=f.te+f.count-1;if(b<f.te)d=e-1;else if(b>g)c=e+1;else{c=e;break a}}c=-1}if(0>c)throw new _.tl(`SegmentTimelineIndex: index not found: ${b}/${a.a}`);
8
+ a=c=a.f[c];b-=c.te;c=a.startTime+b*a.duration;return{startTime:c,endTime:b===a.count-1&&null!=a.Dd?a.Dd:c+a.duration,qj:a.pj+b*a.oj}},dN=function(a,b){if(0===a.a)return null;if(b<a.j)return 0;var c=a.f[a.f.length-1];if(b>=(null!=c.Dd?c.Dd:c.startTime+c.count*c.duration))return null;{c=0;let d=a.f.length-1,e=0;for(;c<=d;){const f=Math.floor((c+d)/2);b<a.f[f].startTime?d=f-1:(e=f,c=f+1)}c=e}a=a.f[c];b=Math.floor((b-a.startTime)/a.duration);0>b?b=0:b>=a.count&&(b=a.count-1);return a.te+b},eN=function(a,
9
+ b,c,d,e){const f={RepresentationID:b,Number:c,Bandwidth:d,Time:e};return a.replace(/\$(RepresentationID|Number|Bandwidth|Time)?(?:%0([0-9]+)([diouxX]))?\$/g,(g,h,k,l)=>{if("$$"===g)return"$";let m=f[h];if(null==m)return _.B("URL template does not have an available substitution ","for identifier",'"'+h+'":',a),g;"RepresentationID"===h&&k&&(_.B("URL template should not contain a width specifier for identifier",'"RepresentationID":',a),k=void 0);"Time"===h&&(m=Math.round(m));switch(l){case void 0:case "d":case "i":case "u":g=
10
+ m.toString();break;case "o":g=m.toString(8);break;case "x":g=m.toString(16);break;case "X":g=m.toString(16).toUpperCase();break;default:g=m.toString()}k=window.parseInt(k,10)||1;return Array(Math.max(0,k-g.length)+1).join("0")+g})},iN=function(a,b){var c=fN(a,b,EM);let d=1;c&&(d=WM(c)||1);c=fN(a,b,vM);(c=WM(c||""))&&(c/=d);let e=Number(fN(a,b,BM))||0,f=e/d||0;a.wi&&null!=a.Rd&&a.Rd!==f&&(_.B("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 "+
11
+ `value will be ignored. (Period ID: ${a.Ja.id}, `+`Representation ID: ${a.O.id})`),e=a.Rd*d,f=a.Rd);var g=fN(a,b,"startNumber");let h=XM(g||"");if(null==g||null==h)h=1;g=fN(a,b,"endNumber");g=null!==g?XM(g||""):null;var k=gN(a,b,rM),l=null;if(k){{l=d;var m=e,n=a.Za.duration||Infinity;const y=_.O;k=y.a(k,"S");const A=[];var p=0;let E=0;for(let F=0;F<k.length;++F){const C=k[F];var u=y.aa(C,"t",XM);const ja=y.aa(C,"d",XM);var v=y.aa(C,"r",VM);null!=u&&(u-=m);if(!ja){_.B('"S" element must have a duration:',
12
+ zM,C);break}u=null!=u?u:p;v=v||0;if(0>v)if(F+1<k.length){v=y.aa(k[F+1],"t",XM);if(null==v){_.B('An "S" element cannot have a negative repeat','if the next "S" element does not have a valid start time:',zM,C);break}else if(u>=v){_.B('An "S" element cannot have a negative repeat if its start ','time exceeds the next "S" element\'s start time:',zM,C);break}v=Math.ceil((v-u)/ja)-1}else{if(Infinity===n){_.B(tM,"if the Period has an infinite duration:",yM,C);break}else if(u/l>=n){_.B(tM,"if its start time exceeds the Period's duration:",
13
+ yM,C);break}v=Math.ceil((n*l-u)/ja)-1}0<A.length&&u!==p&&(Math.abs((u-p)/l)>=_.ou&&_.B("SegmentTimeline contains a large gap/overlap:","the content may have errors in it.",C),A[A.length-1].Dd=u/l);p=v+1;A.push({te:E,count:p,startTime:u/l,duration:ja/l,pj:u,oj:ja,Dd:null});E+=p;p=u+p*ja}l=new hN(A)}}a=fN(a,b,"availabilityTimeOffset");b=Number(a||"");b=isNaN(b)?null:b;if(null==a||null==b)b=0;return{timescale:d,$a:c,Pc:h,cf:g,Sb:f,Rf:e,wa:l,We:b}},fN=function(a,b,c){return[b(a.O),b(a.xa),b(a.Ja)].filter(_.Nm).map(d=>
14
+ d.getAttribute(c)).reduce((d,e)=>d||e)},gN=function(a,b,c){return[b(a.O),b(a.xa),b(a.Ja)].filter(_.Nm).map(d=>_.O.h(d,c)).reduce((d,e)=>d||e)},kN=function(a,b,c,d,e,f){const g=_.O,h=g.getAttributeNS(a,xM,"href"),k=g.getAttributeNS(a,xM,"actuate")||"onRequest";g.Ke(a,xM);if(5<=f)return NM(new _.I(_.D,4,4028));if("onLoad"!==k)return NM(new _.I(_.D,4,4027));const l=_.qB([d],[h]);d=_.zk(l,b);d.type=1;return MM(e.fetch(d),m=>{m=_.ri(m.data);m=g.j(m,a.tagName);if(!m)return NM(new _.I(_.D,4,4001,{uri:h}));
15
+ g.Je(a);g.Ae(m,a);g.ze(m,a);return jN(a,b,c,l[0],e,f+1)})},jN=function(a,b,c,d,e,f){f=void 0===f?0:f;var g=_.O;if(g.getAttributeNS(a,xM,"href"))return g=kN(a,b,c,d,e,f),c&&(g=MM(g,void 0,()=>jN(a,b,c,d,e,f))),g;const h=[],k=g.ve(a);for(const l of k)"urn:mpeg:dash:resolve-to-zero:2013"===g.getAttributeNS(l,xM,"href")?g.removeChild(a,l):l.tagName!==rM&&h.push(jN(l,b,c,d,e,f));return MM(OM(h),()=>a)},lN=function(a,b){const c=a.Za.start;var d=a.presentationTimeline;d.o||(d.I=Math.floor(Math.max(d.I||
16
+ 0,b.ac+c)));a.Jg||_.kC(a.presentationTimeline,{pc:b.pc+c,ac:b.ac+c,bc:b.bc},"notifySegmentSummary")},mN=function(a){return""===a.id?`${a.schemeIdUri}:${a.startTime}:${a.endTime}`:a.id},nN=function(a,b,c,d,e){return _.w(function*(){const f=_.ZB(a,b,c,e);f.type=2;return(yield _.tm(d,f,{objectType:"i"}).V).data})},oN=function(a,b){b-=a.h;return 0>b||b>=a.f?null:b},qN=function(a,b,c,d){let e;var f=(new _.np).fa("sidx",g=>{e=pN(b,d,c,g)});a&&f.parse(a);if(e)return e;{f=`${b}-${b+a.byteLength-1}`;const g=
17
+ c[0];a=_.G(a);_.Dh('Invalid box type. Expected "sidx", but received:',a,"from:",g,"byte range:",f);throw new _.I(_.D,3,3004,{url:g,Bj:f,size:a.byteLength,Rj:$M(a)});}},pN=function(a,b,c,d){const e=[];d.reader.skip(4);const f=_.N(d.reader);if(0===f)throw _.Dh("Invalid timescale."),new _.I(_.D,3,3005);if(0===d.version){var g=_.N(d.reader);var h=_.N(d.reader)}else g=_.bp(d.reader),h=_.bp(d.reader);d.reader.skip(2);const k=_.$o(d.reader);a=a+d.size+h;for(h=0;h<k;h++){var l=_.N(d.reader);const m=(l&2147483648)>>>
18
+ 31;l&=2147483647;const n=_.N(d.reader);d.reader.skip(4);if(1===m)throw _.Dh("Hierarchical SIDXs are not supported."),new _.I(_.D,3,3006);e.push(new _.rI(e.length,g/f-b,(g+n)/f-b,()=>c,a,a+l-1,b));g+=n;a+=l}d.parser.stop();return e},rN=function(a){var b=_.Zo(a.a);let c;for(c=1;8>=c&&!(b&1<<8-c);c++);if(8<c)throw new _.I(_.D,3,3002);const d=new Uint8Array(c);d[0]=b;for(b=1;b<c;b++)d[b]=_.Zo(a.a);return d},uN=function(a){var b=rN(a);if(7<b.length)throw new _.I(_.D,3,3002);var c=0;for(var d=0;d<b.length;d++)c=
19
+ 256*c+b[d];b=c;c=rN(a);a:{for(e of sN)if(_.hm(c,new Uint8Array(e))){var e=!0;break a}e=!1}if(e)c=a.f.byteLength-a.a.getPosition();else{if(8===c.length&&c[1]&224)throw new _.I(_.D,3,3001);e=c[0]&(1<<8-c.length)-1;for(d=1;d<c.length;d++)e=256*e+c[d];c=e}c=a.a.getPosition()+c<=a.f.byteLength?c:a.f.byteLength-a.a.getPosition();e=new DataView(a.f.buffer,a.f.byteOffset+a.a.getPosition(),c);a.a.skip(c);return new tN(b,e)},vN=function(a){if(8<a.a.byteLength)throw new _.I(_.D,3,3002);if(8===a.a.byteLength&&
20
+ a.a.getUint8(0)&224)throw new _.I(_.D,3,3001);let b=0;for(let c=0;c<a.a.byteLength;c++){const d=a.a.getUint8(c);b=256*b+d}return b},yN=function(a,b,c,d,e,f){const g=[],h=()=>e;a=new wN(a.a);let k=null,l=null;for(;_.Xo(a.a);){var m=uN(a);if(187===m.id){var n=xN(m);n&&(m=c*n.rj,n=b+n.Ti,null!=k&&g.push(new _.rI(g.length,k-f,m-f,h,l,n-1,f)),k=m,l=n)}}null!=k&&g.push(new _.rI(g.length,k-f,d-f,h,l,null,f));return g},xN=function(a){var b=new wN(a.a);a=uN(b);if(179!==a.id)throw _.B("Not a CueTime element."),
21
+ new _.I(_.D,3,3013);a=vN(a);b=uN(b);if(183!==b.id)throw _.B("Not a CueTrackPositions element."),new _.I(_.D,3,3012);b=new wN(b.a);let c=0;for(;_.Xo(b.a);){const d=uN(b);if(241===d.id){c=vN(d);break}}return{rj:a,Ti:c}},zN=function(a,b){var c=gN(a,b,"Initialization");if(!c)return null;let d=a.O.qa;b=()=>"";const e=c.getAttribute("sourceURL")||void 0;e&&(d=_.qB(a.O.qa,[e]),b=()=>e);let f=0,g=null;if(c=_.O.aa(c,"range",UM))f=c.start,g=c.end;return new _.qI(()=>d,f,g,null,null,b,a.O.Ha)},AN=function(a){return a.Zd},
22
+ CN=function(a,b,c,d,e,f,g){const h=a.presentationTimeline,k=!a.bf||!a.Za.si,l=a.Za.start,m=a.Za.duration;let n=null;return{createSegmentIndex:function(p,u){return _.w(function*(){var v=[nN(c,d,e,p,u),"webm"===f?nN(b.Da(),b.na,b.ja,p,u):null];v=yield Promise.all(v);var y=v[0];const A=v[1]||null;y="mp4"===f?qN(y,d,c,g):(new BN).parse(y,A,c,g);QM(a.O.contentType)&&_.lC(h,y,l);n=new _.vI(y);k&&_.VB(n,m);return v})},findSegmentPosition:function(p){return n.f(p)},getSegmentReference:function(p){return n.get(p)},
23
+ adjustSegmentDurations:function(p,u){return n.h(p,u)},getDuration:function(){return null!=m?m:n.getDuration()},getLastSegmentEndTime:()=>m}},DN=function(a){var b=a.a.o();if(0===b)return null;const c=a.a.w();b=c+b-1;a=Math.max(a.l,c);return a>b?null:{Kb:a,Zb:b}},EN=function(a,b){var c,d=a.a.B(b);if(!d)throw new _.tl(`Cannot get segment timing for source position ${b}`);if(!(0<a.h.length||null!=a.j))return d;var e=b+a.f;var f=c=0;for(const g of a.h)g.position<e?c+=g.qe:g.position===e&&(f+=g.qe);e=c;
24
+ c=f;f=d.startTime+e;d=d.endTime+e+c;e=DN(a);a.j&&b===e.Zb&&(d+=a.j);return{startTime:f,endTime:d}},FN=function(a,b){return(a=DN(a))?b>=a.Kb&&b<=a.Zb:!1},GN=function(a){var b=DN(a);if(!b)return null;var c=b.Kb===a.a.w();if(!(0<a.h.length||null!=a.j)&&c)return a.a.C();c=EN(a,b.Kb);b=EN(a,b.Zb);return(a=a.a.C())?{pc:c.startTime,ac:b.endTime,bc:a.bc}:null},HN=function(a,b){if(null===b||Infinity===b)a.g.warn(`Period duration is ${b}. Skipping fit.`);else{var c=DN(a);c?(c=a.a.B(c.Zb),c.startTime>=b||(a.j=
25
+ b-c.endTime)):a.g.warn(sM)}},IN=function(a,b){var c=DN(a);if(c){var d=c.Kb;c=c.Zb;for(var e=c+1;d<=c;d++)if(EN(a,d).endTime>b){e=d;break}a.l=e}else a.g.warn(sM)},JN=function(a,b){const c=a.a.o(),d=b.o();if(0===c||0===d)return null;const e=a.a.w(),f=b.w();let g=0,h=0;for(;g<c&&h<d;){const k=e+g,l=f+h,m=a.a.B(k),n=b.B(l);if(!m||!n)break;const p=Math.abs(m.endTime-n.endTime);if(.1>=Math.abs(m.startTime-n.startTime)||.1>=p)return k-l+a.f;m.startTime<n.startTime?g++:h++}return null},KN=function(a,b){if(0===
26
+ b.o())a.g.warn("Source is empty. Skipping update.");else{var c=()=>{a.a=b;a.l=b.w();a.h=[];a.j=null};0===a.a.o()&&c();var d=JN(a,b);if(null!=d)a.f=d;else throw a.g.error("Segments could not be updated, overlapping position not found."),new _.I(_.D,4,4014);c()}},MN=function(a,b,c){const d=a.Za.duration;if(!a.bf)return a=new LN(b),IN(a,0),HN(a,d),a;{var e=a.Ja;const f=a.O;e=e&&e.id&&f&&f.id?`${e.id},${f.id}`:null}if(!a.Jg||null==c[e])return a=new LN(b),IN(a,0),HN(a,d),c[e]=a;c=c[e];KN(c,b);IN(c,_.oC(a.presentationTimeline)-
27
+ a.Za.start);HN(c,d);return c},ON=function(a){const b=fN(a,NN,"initialization");if(!b)return null;const c=a.O.id,d=a.bandwidth||null,e=a.O.qa,f=()=>eN(b,c,null,d,null);return new _.qI(function(){const g=f();return _.qB(e,[g])},0,null,null,null,f,a.O.Ha)},PN=function(a,b){const c=b.kf,d=a.Za.duration,e=b.$a,f=b.Pc,g=b.cf,h=b.timescale,k=a.bandwidth||null,l=a.O.id,m=a.O.qa,n=a.O.Ha;return{createSegmentIndex:Promise.resolve.bind(Promise),findSegmentPosition:function(p){return 0>p||d&&p>=d?null:Math.floor(p/
28
+ e)},getSegmentReference:function(p){const u=p+f;if(null!==g&&u>g)return null;const v=p*e;let y=v+e;d&&(y=Math.min(y,d));if(0>y||d&&v>=d)return null;const A=()=>eN(c,l,u,k,v*h);return new _.rI(p,v,y,function(){const E=A();return _.qB(m,[E])},0,null,b.Sb,null,null,null,null,null,null,null,null,A,n)},adjustSegmentDurations:()=>{},getDuration:()=>d,getLastSegmentEndTime:()=>d}},NN=function(a){return a.uc},QN=function(a){return a.tc},RN=function(a){return[a.O.tc,a.xa.tc,a.Ja.tc].filter(_.Nm).map(b=>_.O.a(b,
29
+ "SegmentURL")).reduce((b,c)=>0<b.length?b:c).map(b=>{b.getAttribute("indexRange")&&!a.ff&&(a.ff=!0,_.B("We do not support the SegmentURL@indexRange attribute on SegmentList. We only use the SegmentList@duration attribute or SegmentTimeline, which must be accurate."));const c=b.getAttribute("media");b=_.O.aa(b,"mediaRange",UM,{start:0,end:null});return{Lg:c,start:b.start,end:b.end}})},TN=function(a,b,c){c=c.map(e=>({scheme:e.getAttribute(CM),value:e.getAttribute(_.vg)}));const d=a.a.clockSyncUri;
30
+ !c.length&&d&&(a.g.info("No UTCTiming elements found, falling back on clockSyncUri from config to synchronize clocks."),c.push({scheme:HM,value:d}));return 0===c.length?(a.g.warn(nM),Promise.reject(Error(nM))):PM(c,e=>{const f=e.scheme;e=e.value;switch(f){case HM:case "urn:mpeg:dash:utc:http-head:2012":return SN(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 SN(a,
31
+ b,e,"GET");case "urn:mpeg:dash:utc:direct:2014":case "urn:mpeg:dash:utc:direct:2012":{const g=Date.parse(e);return isNaN(g)?(a.g.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.g.warn("NTP UTCTiming scheme is not supported"),Promise.reject();default:return a.g.warn("Unrecognized scheme in UTCTiming element",f),Promise.reject()}}).catch(()=>
32
+ {a.g.warn(kM);return Promise.reject(Error(kM))})},UN=function(a,b,c,d){return _.w(function*(){const e=_.O.a(b,"UTCTiming");try{const f=yield TN(a,c,e);d.H=f;a.g.info("Clock synchronized. The difference between server and "+`client clock was ${f} ms.`)}catch(f){a.g.warn("Failed to synchronize clocks. This content may not play on clients with bad clocks!")}return d})},SN=function(a,b,c,d){return _.w(function*(){var e=_.qB(b,[c]);e=yield a.f(e,d);if("HEAD"===d){if(!e.headers||!e.headers.date)throw a.g.warn("UTC timing response is missing",
33
+ "expected date header"),Error("Date HTTP header missing.");e=e.headers.date}else e=_.ri(e.data);e=Date.parse(e);if(isNaN(e))throw a.g.warn("Unable to parse date from UTC timing response"),Error("Date value invalid.");return e-Date.now()})},WN=function(a,b){return a.find(c=>VN.get(c.fc)===b)},YN=function(a){const b=_.O;var c=b.Wb(a.node,FM,"pro");if(!c)return XN.warn(mM,a),null;c=b.f(c);if(!c)return XN.warn(eM,a),null;a=_.em(c);a=_.rq(a);a=_.jq(a.a);return{keyId:null,fc:JM,node:b.Vc(),init:[{initData:_.dB(a),
34
+ initDataType:_.Wc,keyId:null}]}},ZN=function(a,b){b=void 0===b?"4.0.0.0":b;const c=_.O;a=c.Wb(a.node,GM,"pssh");if(!a)return null;a=c.f(a);if(!a)return null;a=_.em(a);a=_.lq(a);return a?(b=_.eB(b,a.a))?{keyId:null,fc:IM,node:c.Vc(),init:[{initData:_.dB(b),initDataType:_.Wc,keyId:null}]}:null:(_.B("Unable to parse WV PSSH data. Can not create PR data!"),null)},$N=function(a,b){const c=_.O;var d=c.Wb(a.node,FM,"pro");if(!d)return _.B(mM,a),null;d=c.f(d);if(!d)return _.B(eM,a),null;a=_.em(d);a=_.rq(a);
35
+ return a.version!==b&&(_.Ch(`Parsing from ${a.version} to ${b}.`),a=_.fB(a,b))?{keyId:null,fc:IM,node:c.Vc(),init:[{initData:_.dB(a),initDataType:_.Wc,keyId:null}]}:null},cO=function(a,b,c,d){const e=aO(a);let f=null;a=[];let g=[];const h=WN(e,_.wd),k=WN(e,_.ud);if(k&&d){var l=$N(k,d);l&&(e[e.indexOf(k)]=l)}k&&!h&&(l=YN(k))&&e.push(l);h&&!k&&(d=ZN(h,d||void 0))&&e.push(d);d=new Set(e.map(m=>m.keyId));d.delete(null);if(1<d.size)throw new _.I(_.D,4,4010);b||(g=e.filter(m=>"urn:mpeg:dash:mp4protection:2011"===
36
+ m.fc?(f=m.init||f,!1):!0),g.length&&(a=bO(f,g,c),0===a.length&&(a=[_.rB(_.He,f,c)])));if(e.length&&(b||!g.length)){a=[];for(const m of VN.values())m!==_.Re&&a.push(_.rB(m,f,c))}if(b=Array.from(d)[0]||null)for(const m of a)for(const n of m.initData)n.keyId=b;return{zd:b,Ej:f,drmInfos:a,ug:!0}},aO=function(a){const b=[];for(const c of a)(a=dO(c))&&b.push(a);return b},bO=function(a,b,c){const d=[];for(const f of b){var e=VN.get(f.fc);if(e){b=_.rB(e,f.init||a,c);if(e=eO.get(e))(e=e(f))?(b.licenseServerUri=
37
+ e.licenseUrl,b.licenseServerUriOrigin=e.origin):b.licenseServerUri="";d.push(b)}}return d},fO=function(a,b,c,d,e){const f=cO(a,c,d,e);if(b.ug){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.zd=f.zd||b.zd;b.ug=!1}else if(0<f.drmInfos.length&&(b.drmInfos=b.drmInfos.filter(g=>f.drmInfos.some(h=>h.keySystem===g.keySystem)),0===b.drmInfos.length))throw new _.I(_.D,4,4008);return f.zd||b.zd},gO=function(a){const b=_.O;a=
38
+ b.Ec(a.node,"https://dashif.org/CPS","Laurl").map(c=>b.f(c)).filter(Boolean);return 0===a.length?null:1===a.length?a[0]:a[RM(a.length)]},dO=function(a){const b=_.O;let c=a.getAttribute(CM),d=b.getAttributeNS(a,GM,"default_KID");const e=b.Ec(a,GM,"pssh").map(b.f),f=b.Wb(a,FM,"pro");if(!c)return _.Dh("Missing required schemeIdUri attribute on","ContentProtection element",a),null;c=c.toLowerCase();if(d&&(d=d.replace(/-/g,"").toLowerCase(),d.includes(" ")))throw new _.I(_.D,4,4009);let g=[];try{if(g=
39
+ e.map(h=>({initDataType:_.Wc,initData:_.em(h),keyId:null})),0===g.length&&f&&b.f(f))try{const h=b.f(f),k=_.em(h),l=_.rq(k);g.push({initDataType:_.Wc,initData:_.dB(l),keyId:null})}catch(h){_.B("Unable to parse ms:pro payload",h),g=[]}}catch(h){throw new _.I(_.D,4,4007);}return{node:a,fc:c,keyId:d,init:0<g.length?g:null}},hO=function(a,b,c){if(a.length){c=c||`${"__clpp_baseUriCollection_"}
40
+ ${b.length}`;const d=[];a.forEach(e=>{const f=e.getAttribute("serviceLocation");e=_.O.f(e);f&&e&&d.push({serviceLocationId:f,uri:e,params:{}})});if(d.length)return a=new _.zI(c,d),b.push(a),a}return null},jO=function(a,b){a=iO(a).filter(c=>c.getLastSegmentEndTime).map(c=>c.getLastSegmentEndTime());0<a.length&&(a=Math.min(...a),_.jC(b.presentationTimeline,a+b.Za.start))},kO=function(a,b){return _.$B(_.Xm(a,b))?_.K:a.split("/")[0]},iO=function(a){const b=new Set;a.forEach(c=>{c.variants.forEach(d=>
41
+ {d.audio&&b.add(d.audio);d.video&&b.add(d.video)})});return Array.from(b)},mO=function(a){return _.w(function*(){var b=a.w?a.w.getBaseUriCollectionById(lM):null;var c=[];b&&(c=_.TC(b,""));0===c.length&&(c=a.o);var d=_.zk(c,a.a.attemptParameters);d.type=1;c=Date.now();d=a.D.networkingEngine.fetch(d);_.Jl(a.A,d);var e=yield d.V;if(!a.D)return 0;b||e.uri&&!a.o.includes(e.uri)&&a.o.unshift(e.uri);d=null!=a.f;const f=yield lO(a,e.data,e.uri);f.manifest.contentSteering&&(a.w=yield a.D.onContentSteeringInfoFound(f.manifest.contentSteering));
42
+ if(a.w&&b){0!==e.request.uriIndex&&a.w.banLocation(b.qa[0].serviceLocationId);var g=e.request,h=e.timeMs;e=e.data.byteLength;h&&e&&a.w.notifyThroughput(b.qa[g.uriIndex].serviceLocationId,h,e)}b=(Date.now()-c)/1E3;_.XB(a.I,1,b);if(d&&a.D.onUpdate)a.D.onUpdate(f.manifest);if(f.nj){if(a.D.onTurnedStatic)a.D.onTurnedStatic();a.D.onEvent(new _.H(_.Fe))}return b})},nO=function(a,b){0>a.l||a.B.la(Math.max(3,a.l-b,_.YB(a.I)))},lO=function(a,b,c){return _.w(function*(){var d=_.ri(b);_.zm(AM);d=_.O.j(d,"MPD");
43
+ _.zm("parse.xml.end");_.Bm(AM,AM,"parse.xml.end");if(!d)throw new _.I(_.D,4,4001,c);d=jN(d,a.a.attemptParameters,a.a.xlinkFailGracefully,c,a.D.networkingEngine);_.Jl(a.A,d);d=yield d.V;return oO(a,d,c)})},oO=function(a,b,c){return _.w(function*(){var d=_.O;const e=[];var f=[c],g=d.a(b,lM),h=g.map(d.f).filter(_.Nm);0<h.length&&(f=_.qB(f,h),a.o=f,hO(g,e,lM));g=d.a(b,fM);h=g.map(d.f);var k=_.qB(f,h);hO(g,e,fM);f=b.getAttribute("type")||DM;a.l=d.aa(b,"minimumUpdatePeriod",TM,-1);f===DM&&0<=a.l&&(a.g.warn("Invalid manifest - a static manifest should not contain the `minimumUpdatePeriod` attribute. The attribute will be ignored."),
44
+ a.l=-1,a.B.stop());g=d.aa(b,"maxSegmentDuration",TM);if(d=f===DM&&"dynamic"===a.C)a.g.info("MPD dynamic to static transition."),f="dynamic";h=f===DM;var l="dynamic"===f;if(a.f)var m=a.f.presentationTimeline;else{var n=_.O;m=a.a.timeline||{};var p=n.aa(b,"suggestedPresentationDelay",TM),u=n.aa(b,"minBufferTime",TM,0);p=null!=a.a.suggestedPresentationDelay?a.a.suggestedPresentationDelay:a.a.lowLatencyMode?0:null!=p?p:3*u;n=n.aa(b,"availabilityStartTime",SM);m=new _.uI(m,n,p,h,!!a.a.autoCorrectDrift,
45
+ !!a.a.lowLatencyMode);m=h?m:UN(a.J,b,k,m)}m=yield m;n=_.O.aa(b,"timeShiftBufferDepth",TM);n=l&&a.a.availabilityWindowOverride&&!isNaN(a.a.availabilityWindowOverride)?a.a.availabilityWindowOverride:null===n?Infinity:n;m.A=n;if(!a.D)throw new _.I(_.D,7,7001);n={bf:l,Jg:null!=a.f,presentationTimeline:m,Ja:null,Za:null,xa:null,O:null,bandwidth:0,ff:!1,wi:d,hc:null,Rd:null};k=pO(a,n,k,e,b);p=k.duration;l=k.periods;d&&(jO(l,n),m.C=!0);if(h||!d&&!k.rg)m.f=p||Infinity;if(2===a.a.timeline.version){h=p;n=l[0].startTime;
46
+ if(null==h||Infinity===h)h=qO(l);p=m.a;_.dC(p,n,n+h);d&&(p.f=!0)}_.mC(m,g||1);m.isLive()||Infinity!==m.f&&!m.o||2===m.j.version&&m.a.getDuration();if(!a.f){a.f={presentationTimeline:m,periods:l,minBufferTime:0,cues:[]};a:{l=_.O;if(m=l.h(b,"ContentSteering"))if(g=m.getAttribute("defaultServiceLocation")||"",h=l.f(m)){l=l.aa(m,"queryBeforeStart",ZM,!1);g={manifestType:_.vc,contentSteeringServerUri:h,defaultServiceLocation:g,queryBeforeStart:l||!1,baseUriCollections:[]};break a}g=null}g&&(a.f.contentSteering=
47
+ g,a.f.contentSteering.baseUriCollections=e)}a.f.cues=k.cues;a.C=f;return{manifest:a.f,nj:d}})},pO=function(a,b,c,d,e){const f=_.O,g=f.aa(e,"mediaPresentationDuration",TM),h=a.f?a.f.periods[a.f.periods.length-1]||null:null;var k=[];const l=[];var m=0;e=f.a(e,"Period");for(let v=0;v<e.length;v++){var n=e[v];m=f.aa(n,_.Qf,TM,m);var p=f.aa(n,vM,TM);let y=null;if(v!==e.length-1){var u=f.aa(e[v+1],_.Qf,TM);null!=u&&(y=u-m)}else null!=g&&(y=g-m);u=_.ou;y&&p&&Math.abs(y-p)>u&&a.g.warn("There is a gap/overlap between Periods",
48
+ n);null==y&&(y=p);n=rO(a,b,c,d,{start:m,duration:y,node:n,si:null==y||v===e.length-1});p=n.Ja;l.push(p);k=k.concat(n.cues);a.G.includes(p.id)||(a.G.push(p.id),a.f&&(a.D.filterNewPeriod(p),a.f.periods.push(p)));if(null==y){v!==e.length-1&&a.g.warn("Skipping Period",v+1,"and any subsequent Periods:","Period",v+1,"does not have a valid start time.",l[v+1]);m=null;break}m+=y}null==a.f&&a.D.filterAllPeriods(l);h&&(b=l.find(v=>v.id===h.id))&&(h.endTime=b.endTime);k=sO(a,k);return null!=g?(m!==g&&a.g.warn("@mediaPresentationDuration does not match the total duration of ",
49
+ "all Periods."),{periods:l,duration:g,rg:!1,cues:k}):{periods:l,duration:m,rg:!0,cues:k}},qO=function(a){return a.map(b=>b.variants[0].video||b.variants[0].audio).reduce((b,c)=>c?c.getDuration():0+b,0)},rO=function(a,b,c,d,e){var f=_.O;b.Ja=tO(a,e.node,null,c,d);b.Za=e;c=b.Ja.id||`__clpp_period_${e.start}`;b.Ja.id||(a.g.info("No Period ID given for Period with start time "+e.start+`, Assigning a default: ${c}.`),b.Ja.id=c);d=f.a(e.node,"EventStream").flatMap(A=>uO(a,e.start,e.duration,A));f=f.a(e.node,
50
+ _.fa).map(A=>vO(a,b,A)).filter(_.Nm);if(b.bf){var g=[];for(var h of f)for(var k of h.Vi)g.push(k);if(g.length!==(new Set(g)).size)throw new _.I(_.D,4,4018);}h=f.filter(A=>!A.Pf);k=f.filter(A=>A.Pf);for(var l of k){l.streams.forEach(A=>{A.trickPlay=!0});k=l.streams[0];g=l.Pf;for(var m of h)if(g.includes(m.id))for(var n of m.streams)n.trickModeVideo=k}m=wO(f,_.t);n=wO(h,_.q);if(!m.length&&!n.length)throw new _.I(_.D,4,4004);n.length||(n=[null]);m.length||(m=[null]);l=[];for(var p of n)for(var u of m)xO(a,
51
+ p,u,l);u=[...wO(h,_.K),...wO(h,_.VA)];p=[];for(var v of u)p.push.apply(p,v.streams);u=wO(h,_.he);v=[];for(var y of u)v.push.apply(v,y.streams);y=yO(e,h);return{Ja:{id:c,configurationId:a.D.configurationId,startTime:e.start,endTime:y,textStreams:p,thumbStreams:v,variants:l},cues:d}},sO=function(a,b){const c=new Set(b.map(mN));a.j.forEach((d,e)=>{c.has(e)||a.j.delete(e)});b.forEach(d=>{const e=mN(d);a.j.has(e)||a.j.set(e,d)});return Array.from(a.j.values())},tO=function(a,b,c,d,e){const f=_.O;c=c||
52
+ {contentType:"",mimeType:"",codecs:"",emsgSchemeIdUris:[],frameRate:void 0,lf:null,Ha:e?e.find(u=>u.id===fM)||null:null};d=d||c.qa;var g=f.a(b,fM);const h=g.map(f.f);e=e?hO(g,e,b.getAttribute("id")||void 0):null;g=b.getAttribute("contentType")||c.contentType;const k=b.getAttribute(_.Ce)||c.mimeType,l=b.getAttribute(_.pd)||c.codecs,m=f.aa(b,"frameRate",YM)||c.frameRate,n=zO(f.a(b,"InbandEventStream"),c.emsgSchemeIdUris),p=f.a(b,"AudioChannelConfiguration");a=AO(a,p)||c.lf;g||(g=kO(k,l));return{qa:_.qB(d,
53
+ h),Ha:e||c.Ha,Zd:f.h(b,"SegmentBase")||c.Zd,tc:f.h(b,"SegmentList")||c.tc,uc:f.h(b,"SegmentTemplate")||c.uc,width:f.aa(b,_.Ng,XM)||c.width,height:f.aa(b,_.be,XM)||c.height,contentType:g,mimeType:k,codecs:l,frameRate:m,emsgSchemeIdUris:n,id:b.getAttribute("id")||"",lf:a}},uO=function(a,b,c,d){const e=_.O,f=d.getAttribute(CM)||"",g=d.getAttribute(_.vg)||"",h=e.aa(d,EM,XM)||1,k=e.aa(d,BM,XM)||0,l=[];for(const n of e.a(d,"Event")){d=e.aa(n,"presentationTime",XM)||0;var m=e.aa(n,vM,XM)||0;d=b+d/h-k/h;
54
+ m=d+m/h;null!=c&&(d=Math.min(d,b+c),m=Math.min(m,b+c));let p=_.mg;f.startsWith(_.og)?p=_.Hf:"urn:mpeg:dash:event:callback:2015"===f&&(p=_.Ge);const u={configurationId:a.D.configurationId,schemeIdUri:f,value:g,startTime:d,endTime:m,id:n.getAttribute("id")||"",type:p,eventElement:e.be(n)};u.type===_.Ge&&(u.De=()=>{if(u.eventElement){var v=u.eventElement.getAttribute("messageData")||"";v&&v.startsWith("http")&&(v=_.zk(v),v.type=_.yk,a.D.networkingEngine.fetch(v))}});l.push(u)}return l},vO=function(a,
55
+ b,c){var d=_.O;b.xa=tO(a,c,b.Ja,null,null);var e=b.xa.contentType===_.K;const f=BO(c),{kind:g,Td:h,roles:k}=CO(c,e);let l=null;try{l=DO(c)}catch(y){return null}const m=d.a(c,"Accessibility"),n=EO(m);var p=d.a(c,hM);const u=cO(p,a.a.ignoreDrmInfo,b.Ja.id,a.a.playreadyVersion||null),v=c.getAttribute("lang")||_.lg;p=_.Kn(v);d=d.a(c,_.nb);c=d.map(y=>FO(a,b,u,g,v,f||"",h,k,n,y)).filter(_.Nm);if(0===c.length){if(e)return null;throw new _.I(_.D,4,4003);}if(!b.xa.contentType||b.xa.contentType===uM){b.xa.contentType=
56
+ kO(c[0].mimeType,c[0].codecs);for(const y of c)y.type=b.xa.contentType}for(const y of c)for(const A of u.drmInfos)y.keyId&&!A.keyIds.includes(y.keyId)&&A.keyIds.push(y.keyId);c=GO(c,b.xa.contentType,m);e=d.map(y=>y.getAttribute("id")).filter(_.Nm);return{id:b.xa.id||"__fake__"+a.h++,contentType:b.xa.contentType,language:p,originalLanguage:v,Td:h,streams:c,drmInfos:u.drmInfos,Pf:l,Vi:e}},wO=function(a,b){return a.filter(c=>c.contentType===b)},xO=function(a,b,c,d){if(b||c)if(b&&c){if(_.KB(b.drmInfos,
57
+ c.drmInfos)){var e=_.JB(b.drmInfos,c.drmInfos);for(var f of b.streams)for(const h of c.streams){var g=(h.bandwidth||0)+(f.bandwidth||0);g={id:a.h++,language:b.language,primary:b.Td||c.Td,audio:f,video:h,bandwidth:g,drmInfos:e,allowedByApplication:!0,allowedByKeySystem:!0};d.push(g)}}}else{f=b||c;for(e of f.streams)g=e.bandwidth||0,g={id:a.h++,language:f.language||_.lg,primary:f.Td,audio:b?e:null,video:c?e:null,bandwidth:g,drmInfos:f.drmInfos,allowedByApplication:!0,allowedByKeySystem:!0},d.push(g)}},
58
+ yO=function(a,b){return null!==a.duration?a.start+a.duration:0<b.length?(b=b.filter(c=>0<c.streams.length).map(c=>c.streams).flat().filter(c=>c.getLastSegmentEndTime).map(c=>c.getLastSegmentEndTime()),0<b.length?a.start+Math.min(...b):null):null},BO=function(a){let b=null;const c=_.O.a(a,"Label").map(_.O.f).filter(_.Nm);c&&0<c.length&&(b=c[c.length-1]);null==b&&(b=a.getAttribute("label"));return b},CO=function(a,b){let c=!1;const d=_.O.a(a,"Role");a=d.map(f=>f.getAttribute(_.vg)).filter(_.Nm);let e=
59
+ void 0;b&&(e=_.VA);for(const f of d)if(b=f.getAttribute(CM),null==b||"urn:mpeg:dash:role:2011"===b||"urn:mpeg:dash:role"===b)switch(b=f.getAttribute(_.vg),b){case _.ue:c=!0;break;case _.GA:case _.VA:e=b;break;case "forced-subtitle":case "forced_subtitle":case _.Zd:e=_.Zd}return{Td:c,roles:a,kind:e}},DO=function(a){var b=_.O.a(a,jM);a=null;for(const c of b){b=c.getAttribute(CM)||"";const d=c.getAttribute(_.vg);if(b!==wM&&!HO.includes(b)||void 0===d)throw new _.tl("Unrecognized essential property");
60
+ b===wM&&(a=d.split(" "))}return a},EO=function(a){const b=new Map;for(const e of a)if(a=e.getAttribute(CM),"urn:scte:dash:cc:cea-608:2015"===a||"urn:scte:dash:cc:cea-708:2015"===a){a=1;var c=e.getAttribute(_.vg);if(null!=c)for(const f of c.split(";")){if(f.includes("\x3d")){var d=f.split("\x3d");c=d[0].startsWith("CC")?d[0]:"CC"+d[0];d=d[1].split(",")[0].split(":").pop()}else c="CC"+a,a+=2,d=f;b.set(c,_.Kn(d))}else b.set("CC1",_.lg)}return b},FO=function(a,b,c,d,e,f,g,h,k,l){const m=_.O,n=_.Kn(e);
61
+ b.O=tO(a,l,b.xa,null,null);if(!IO(a,b.O))return a.g.warn("Skipping Representation",b.O),null;b.hc=`${b.Ja.id} ${b.O.id}`;b.Rd=a.F.get(b.hc);b.bandwidth=m.aa(l,"bandwidth",WM)||0;const p=JO(a,b);if(!p)return null;a.F.set(b.hc,p.Ka);var u=m.a(l,hM);a=fO(u,c,a.a.ignoreDrmInfo,b.Ja.id,a.a.playreadyVersion||null);u=!1;m.a(l,"SupplementalProperty").some(v=>"tag:dolby.com,2018:dash:EC3_ExtensionType:2018"===v.getAttribute(CM)&&"JOC"===v.getAttribute(_.vg))&&(b.O.mimeType="audio/eac3-joc",u=!0);l=KO(b,l);
62
+ return{id:_.pI++,originalId:b.O.id,createSegmentIndex:p.createSegmentIndex,findSegmentPosition:p.findSegmentPosition,getSegmentReference:p.getSegmentReference,initSegmentReference:p.initSegmentReference,adjustSegmentDurations:p.adjustSegmentDurations,getLastSegmentEndTime:p.getLastSegmentEndTime,getDuration:p.getDuration,segmentLookupStrategy:_.LA,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,
63
+ keyId:a,language:n,originalLanguage:e,label:f,type:b.xa.contentType,primary:g,trickModeVideo:null,emsgSchemeIdUris:b.O.emsgSchemeIdUris,roles:h,channelsCount:b.O.lf,spatialAudio:u,closedCaptions:k,horizontalTiles:l.horizontalTiles,verticalTiles:l.verticalTiles,durationPerTile:l.durationPerTile}},GO=function(a,b,c){const d=b===_.VA?_.K:b;b=c.map(e=>({scheme:e.getAttribute(CM)||"",id:e.getAttribute("id")||void 0,value:e.getAttribute(_.vg)||"",protocol:"DASH",type:d}));for(const e of a)e.accessibility=
64
+ b;return a},IO=function(a,b){let c;c=b.Zd?1:0;c+=b.tc?1:0;c+=b.uc?1:0;if(0===c){if(b.contentType===_.K||b.contentType===uM)return!0;a.g.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.g.warn("Representation contains multiple segment information sources:","the Representation should only contain one of SegmentBase,","SegmentList, or SegmentTemplate.",
65
+ b),b.Zd?(a.g.info("Using SegmentBase by default."),b.tc=null):a.g.info("Using SegmentList by default."),b.uc=null);return!0},JO=function(a,b){var c=b.O.contentType;c=c===_.K||c===uM;try{if(b.O.Zd){{const E=Number(fN(b,AN,BM))||0,F=fN(b,AN,EM);var d=1;F&&(d=WM(F)||1);var e=E/d||0,f=zN(b,AN);{d=f;var g=e;const C=b.O.mimeType.split("/")[1];if(b.O.contentType!==_.K&&"mp4"!==C&&"webm"!==C)throw _.Dh("SegmentBase specifies an unsupported container type.",b.O),new _.I(_.D,4,4006);if("webm"===C&&!d)throw _.Dh(oM,
66
+ "the SegmentBase uses a WebM container,","but does not contain an Initialization element.",b.O),new _.I(_.D,4,4005);const ja=gN(b,AN,"RepresentationIndex"),Ca=fN(b,AN,"indexRange");let Xa=b.O.qa,Jb=UM(Ca||"");if(ja){const vb=ja.getAttribute("sourceURL");vb&&(Xa=_.qB(b.O.qa,[vb]));Jb=_.O.aa(ja,"range",UM,Jb)}if(!Jb)throw _.Dh(oM,"the SegmentBase does not contain @indexRange","or a RepresentationIndex element.",b.O),new _.I(_.D,4,4002);QM(b.O.contentType)&&(b.presentationTimeline.B=null);var h=CN(b,
67
+ d,Xa,Jb.start,Jb.end,C,g)}var k={createSegmentIndex:h.createSegmentIndex,findSegmentPosition:h.findSegmentPosition,getSegmentReference:h.getSegmentReference,adjustSegmentDurations:h.adjustSegmentDurations,getDuration:h.getDuration,initSegmentReference:f,getLastSegmentEndTime:h.getLastSegmentEndTime,Ka:e}}}else{if(b.O.tc){{var l=a.H;const E=zN(b,QN);{const ja=RN(b),Ca=iN(b,QN);let Xa=Ca.Pc;0===Xa&&(_.B("SegmentList@startNumber must be \x3e 0"),Xa=1);h=0;Ca.$a?h=Ca.$a*(Xa-1):Ca.wa&&0<Ca.wa.a&&(h=Ca.wa.j);
68
+ var m={$a:Ca.$a,startTime:h,Pc:Xa,Sb:Ca.Sb,wa:Ca.wa,Nc:ja}}if(!m.$a&&!m.wa&&1<m.Nc.length)throw _.B(pM,"the SegmentList specifies multiple segments,","but does not specify a segment duration or timeline.",b.O),new _.I(_.D,4,4002);if(!m.$a&&!b.Za.duration&&!m.wa&&1===m.Nc.length)throw _.B(pM,"the SegmentList specifies one segment,","but does not specify a segment duration, period duration,","or timeline.",b.O),new _.I(_.D,4,4002);if(m.wa&&0===m.wa.a)throw _.B(pM,"the SegmentList has an empty timeline.",
69
+ b.O),new _.I(_.D,4,4002);{let ja=m.Nc.length;m.wa&&m.wa.a!==m.Nc.length&&(ja=Math.min(m.wa.a,m.Nc.length),_.B("The number of items in the segment timeline and the number of","segment URLs do not match, truncating",m.Nc.length,"to",ja));var n=ja}const F=new LO(m,b.O.qa,b.O.Ha,b.Za.duration,n),C=MN(b,F,l);if(QM(b.O.contentType)){const ja=GN(C);ja&&lN(b,ja)}d={createSegmentIndex:Promise.resolve.bind(Promise),findSegmentPosition:C.findSegmentPosition.bind(C),getSegmentReference:C.getSegmentReference.bind(C),
70
+ adjustSegmentDurations:C.adjustSegmentDurations.bind(C),getDuration:C.getDuration.bind(C),initSegmentReference:E,getLastSegmentEndTime:C.getLastSegmentEndTime.bind(C),Ka:m.Sb}}}else{if(b.O.uc){{var p=a.H,u=!!a.f;const E=ON(b);{const C=iN(b,NN),ja=fN(b,NN,"media"),Ca=fN(b,NN,"index");e={$a:C.$a,timescale:C.timescale,Pc:C.Pc,cf:C.cf,Sb:C.Sb,Rf:C.Rf,wa:C.wa,kf:ja,Od:Ca,We:C.We}}{let C;C=e.Od?1:0;C+=e.wa?1:0;C+=e.$a?1:0;if(0===C)throw _.Dh("SegmentTemplate does not contain any segment information:","the SegmentTemplate must contain either an index URL template",
71
+ "a SegmentTimeline, or a segment duration.",b.O),new _.I(_.D,4,4002);1!==C&&(_.B("SegmentTemplate contains multiple segment information sources:","the SegmentTemplate should only contain an index URL template,","a SegmentTimeline or a segment duration.",b.O),e.Od?(_.Bh("Using the index URL template by default."),e.wa=null):_.Bh("Using the SegmentTimeline by default."),e.$a=null);if(!e.Od&&!e.kf)throw _.Dh(qM,"the SegmentTemplate's media URL template is missing.",b.O),new _.I(_.D,4,4002);}const F=
72
+ QM(b.O.contentType);h=null;if(e.Od){F&&(b.presentationTimeline.B=null);{f=E;const C=b.O.mimeType.split("/")[1];if("mp4"!==C&&"webm"!==C)throw _.Dh("SegmentTemplate specifies an unsupported container type.",b.O),new _.I(_.D,4,4006);if("webm"===C&&!f)throw _.Dh(qM,"the SegmentTemplate uses a WebM container,","but does not contain an initialization URL template.",b.O),new _.I(_.D,4,4005);const ja=eN(e.Od,b.O.id,null,b.bandwidth||null,null),Ca=_.qB(b.O.qa,[ja]);h=CN(b,f,Ca,0,null,C,e.Sb)}}else if(e.$a){if(!u&&
73
+ F){b.presentationTimeline.B=null;var v=b.presentationTimeline;v.G=Math.max(v.G,e.We);v.g.debug("notifyAvailabilityTimeOffset: maxAvailabilityTimeOffset\x3d"+v.G);_.mC(b.presentationTimeline,e.$a);var y=b.presentationTimeline,A=b.Za.start;y.l=null==y.l?A:Math.min(y.l,A)}h=PN(b,e)}else{const C=MN(b,new MO(e,b.O.id,b.bandwidth||null,b.O.qa,b.O.Ha),p);if(F){const ja=GN(C);ja&&lN(b,ja)}h={createSegmentIndex:Promise.resolve.bind(Promise),findSegmentPosition:C.findSegmentPosition.bind(C),getSegmentReference:C.getSegmentReference.bind(C),
74
+ adjustSegmentDurations:C.adjustSegmentDurations.bind(C),getDuration:C.getDuration.bind(C),getLastSegmentEndTime:C.getLastSegmentEndTime.bind(C)}}g={createSegmentIndex:h.createSegmentIndex,findSegmentPosition:h.findSegmentPosition,getSegmentReference:h.getSegmentReference,adjustSegmentDurations:h.adjustSegmentDurations,getDuration:h.getDuration,initSegmentReference:E,getLastSegmentEndTime:h.getLastSegmentEndTime,Ka:e.Sb}}}else g=NO(b);d=g}k=d}return k}catch(E){if(c&&4002===E.code)return a.g.debug("Ignoring DASH_NO_SEGMENT_INFO error in a text stream",
75
+ E),null;throw E;}},KO=function(a,b){const c={};if(a.O.contentType===_.he){var d=(b=_.O.h(b,jM))&&b.getAttribute(CM);d=d||"";OO.includes(d)&&(b=_.DB(b.getAttribute(_.vg)||""))&&(c.horizontalTiles=b.Ld,c.verticalTiles=b.de,a.xa.uc&&(d=_.O.aa(a.xa.uc,vM,XM)||0,a=_.O.aa(a.xa.uc,EM,XM)||1,a=d/a))&&(c.durationPerTile=a/b.jj)}return c},NO=function(a){const b=a.O.qa,c=a.Za.duration||0,d=()=>c;return{createSegmentIndex:()=>Promise.resolve(),findSegmentPosition:e=>0<=e&&e<c?1:null,getSegmentReference:e=>1!==
76
+ e?null:new _.rI(1,0,c,()=>b,0,null,0,null,null,null,null,null,null,null,null,()=>"",a.O.Ha),adjustSegmentDurations:()=>{},getDuration:d,getLastSegmentEndTime:d,verticalTiles:void 0,horizontalTiles:void 0,initSegmentReference:null,Ka:0}},zO=function(a,b){b=b.slice();for(const c of a)(a=c.getAttribute(CM))&&!b.includes(a)&&b.push(a);return b},AO=function(a,b){for(const d of b){b=d.getAttribute(CM);if(!b)continue;const e=d.getAttribute(_.vg);if(e)switch(b){case "urn:mpeg:dash:outputChannelPositionList:2012":return e.trim().split(/ +/).length;
77
+ case "urn:mpeg:dash:23003:3:audio_channel_configuration:2011":case "urn:dts:dash:audio_channel_configuration:2012":var c=parseInt(e,10);if(!c){a.g.warn(gM,b,e);continue}return c;case "tag:dolby.com,2014:dash:audio_channel_configuration:2011":case "urn:dolby:dash:audio_channel_configuration:2011":c=parseInt(e,16);if(!c){a.g.warn(gM,b,e);continue}for(a=0;c;)c&1&&++a,c>>=1;return a;default:a.g.warn("Unrecognized audio channel scheme:",b,e)}}return null};_.hv.prototype.be=KM(19,function(a){return a});
78
+ _.HB.prototype.be=KM(18,function(a){const b=Array.from(a.a.entries()).map(([d,e])=>`xmlns:${e}="${d}"`).join(" "),c=(new DOMParser).parseFromString(`<?xml version="1.0"?><${a.tagName} `+`${b}/>`,_.ag).childNodes[0];Object.keys(a.attributes).forEach(d=>{c.setAttribute(d,a.attributes[d])});a.childNodes.forEach(d=>{d.tagName===_.da?c.textContent+=d.textContent:c.appendChild(this.be(d))});return c});
79
+ _.hv.prototype.Ke=KM(17,function(a,b){Array.from(a.attributes).forEach(c=>{c.namespaceURI===b&&a.removeAttributeNS(c.namespaceURI,c.localName)})});_.HB.prototype.Ke=KM(16,function(a,b){if(b=a.a.get(b)){var c=`${b}:`;Object.keys(a.attributes).forEach(d=>{d.startsWith(c)&&delete a.attributes[d]})}});_.hv.prototype.ze=KM(15,function(a,b){for(const c of a.attributes)b.setAttributeNS(c.namespaceURI,c.nodeName,c.value)});
80
+ _.HB.prototype.ze=KM(14,function(a,b){Object.keys(a.attributes).forEach(c=>{b.attributes[c]=a.attributes[c]})});_.hv.prototype.Ae=KM(13,function(a,b){Array.from(a.childNodes).forEach(c=>{a.removeChild(c);b.appendChild(c)})});_.HB.prototype.Ae=KM(12,function(a,b){b.childNodes.push(...a.childNodes);a.childNodes=[]});_.hv.prototype.Je=KM(11,function(a){Array.from(a.childNodes).forEach(b=>{a.removeChild(b)})});_.HB.prototype.Je=KM(10,function(a){a.childNodes=[]});_.hv.prototype.Vc=KM(9,function(){return document.createElement("null")});
81
+ _.HB.prototype.Vc=KM(8,function(){return new _.FB("NULL",null,{},[],null,null,new Map)});_.hv.prototype.ve=KM(7,function(a){return Array.from(a.childNodes).filter(b=>b instanceof Element)});_.HB.prototype.ve=KM(6,function(a){return a.childNodes});_.hv.prototype.aa=KM(5,function(a,b,c,d=null){let e=null;a=a.getAttribute(b);null!=a&&(e=c(a));return null==e?d:e});_.HB.prototype.aa=KM(4,function(a,b,c,d=null){let e=null;a=a.getAttribute(b);null!=a&&(e=c(a));return null==e?d:e});
82
+ _.hv.prototype.Ec=KM(3,function(a,b,c){return Array.from(a.childNodes).filter(d=>d instanceof Element&&d.localName===c&&d.namespaceURI===b)});_.HB.prototype.Ec=KM(2,function(a,b,c){b=a.a.get(b);if(!b)return[];const d=`${b}:${c}`;return a.childNodes.filter(e=>e.tagName===d)});_.hv.prototype.Wb=KM(1,function(a,b,c){a=this.Ec(a,b,c);return 1!==a.length?null:a[0]});_.HB.prototype.Wb=KM(0,function(a,b,c){a=this.Ec(a,b,c);return 1!==a.length?null:a[0]});var LO=class{constructor(a,b,c,d,e){this.l=a.Pc;this.j=e;this.I=a.Nc;this.a=a.startTime;this.h=a.$a;this.f=a.wa;this.H=a.Sb;this.G=b;this.F=c;this.A=d;this.g=new _.T("clpp.dash.SegmentListSource")}o(){return this.j}w(){return this.l}B(a){a=aN(this,a);return null==a?null:null!=this.h?(a=this.a+a*this.h,{startTime:a,endTime:a+this.h}):this.f?(a=cN(this.f,a),{startTime:a.startTime,endTime:a.endTime}):null==this.A?(this.g.warn(iM),null):{startTime:this.a,endTime:this.a+this.A}}findSegmentPosition(a){return 0<
83
+ this.j?a<this.a?this.l:null!=this.h?(a=this.l+Math.floor((a-this.a)/this.h),a>this.l+this.j-1?null:a):this.f?(a=dN(this.f,a),null==a?null:this.l+a):null==this.A?(this.g.warn(iM),null):a<this.a+this.A?this.l:null:null}getSegmentReference(a,b){const c=aN(this,a);if(null==c)return null;b=null==b?a:b;a=this.B(a);if(null==a)return null;const d=this.I[c],e=_.qB(this.G,[d.Lg]);return new _.rI(b,a.startTime,a.endTime,()=>e,d.start,d.end,this.H,null,null,null,null,null,null,null,null,()=>d.Lg,this.F)}C(){return 0<
84
+ this.j?null!=this.h?{pc:this.a,ac:this.a+this.j*this.h,bc:this.h}:this.f?{pc:cN(this.f,0).startTime,ac:cN(this.f,this.j-1).endTime,bc:this.f.h}:null==this.A?null:{pc:this.a,ac:this.a+this.A,bc:this.A}:null}};var hN=class{constructor(a){this.f=a;this.a=a.reduce((b,c)=>b+c.count,0);this.j=0<this.a?a[0].startTime:0;this.h=bN(a)}};var OO=["http://dashif.org/thumbnail_tile","http://dashif.org/guidelines/thumbnail_tile"],HO=["urn:mpeg:mpegB:cicp:ColourPrimaries","urn:mpeg:mpegB:cicp:MatrixCoefficients","urn:mpeg:mpegB:cicp:TransferCharacteristics"];var MO=class{constructor(a,b,c,d,e){const f=a.wa;this.h=a.Pc;this.f=f.a;this.a=f;this.G=a.kf;this.H=b;this.j=c;this.A=d;this.l=e;this.F=a.Sb;this.I=a.Rf}o(){return this.f}w(){return this.h}B(a){a=oN(this,a);if(null==a)return null;a=cN(this.a,a);return{startTime:a.startTime,endTime:a.endTime}}findSegmentPosition(a){if(!(0<this.f))return null;a=dN(this.a,a);return null==a?null:this.h+a}getSegmentReference(a,b){var c=oN(this,a);if(null==c)return null;b=null==b?a:b;c=cN(this.a,c);const d=c.qj+this.I,
85
+ e=()=>eN(this.G,this.H,a,this.j,d);return new _.rI(b,c.startTime,c.endTime,()=>{const f=e();return _.qB(this.A,[f])},0,null,this.F,null,null,null,null,null,null,null,null,e,this.l)}C(){return 0<this.f?{pc:cN(this.a,0).startTime,ac:cN(this.a,this.f-1).endTime,bc:this.a.h}:null}};var wN=class{constructor(a){this.f=a;this.a=new _.kq(a,!1)}},sN=[[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]],tN=class{constructor(a,b){this.id=a;this.a=b}};var BN=class{parse(a,b,c,d){var e;b=new wN(new DataView(b));if(440786851!==uN(b).id)throw _.Dh("Not an EBML element."),new _.I(_.D,3,3008);var f=uN(b);if(408125543!==f.id)throw _.Dh("Not a Segment element."),new _.I(_.D,3,3009);b=f.a.byteOffset;f=new wN(f.a);for(e=null;_.Xo(f.a);){var g=uN(f);if(357149030===g.id){e=g;break}}if(!e)throw _.Dh("Not an Info element."),new _.I(_.D,3,3010);e=new wN(e.a);g=1E6;for(f=null;_.Xo(e.a);){const h=uN(e);if(2807729===h.id)g=vN(h);else if(17545===h.id)if(f=h,4===
86
+ f.a.byteLength)f=f.a.getFloat32(0);else if(8===f.a.byteLength)f=f.a.getFloat64(0);else throw new _.I(_.D,3,3003);}if(null==f)throw new _.I(_.D,3,3011);e=g/=1E9;f*=g;a=uN(new wN(new DataView(a)));if(475249515!==a.id)throw _.Dh("Not a Cues element."),new _.I(_.D,3,3007);return yN(a,b,e,f,c,d)}};var LN=class{constructor(a){this.a=a;this.f=0;this.l=0<a.o()?a.w():0;this.h=[];this.j=null;this.g=new _.T("clpp.dash.SegmentSourceAdapter")}findSegmentPosition(a){const b=DN(this);if(!b)return null;if(!(0<this.h.length||null!=this.j))return a=this.a.findSegmentPosition(a),null==a||a>b.Zb?null:a<b.Kb?b.Kb+this.f:a+this.f;for(var c=b.Zb;c>=b.Kb;c--){const d=EN(this,c);if(a>=d.startTime&&a<d.endTime)return c+this.f}c=EN(this,b.Kb);return a<c.startTime?b.Kb+this.f:null}getSegmentReference(a){var b=a-
87
+ this.f;if(!FN(this,b))return null;a=this.a.getSegmentReference(b,a);if(!a)return null;b=EN(this,b);return new _.rI(a.position,b.startTime,b.endTime,a.Da,a.na,a.ja,a.Ka,a.keyInfo,a.Xc,a.timescale,a.horizontalTiles,a.verticalTiles,a.durationPerTile,a.a,a.initSegment,a.cd,a.Ha)}adjustSegmentDurations(a,b){if(FN(this,a-this.f)){this.g.warn(`Adjusting segment duration by drift ${b} at ${a}`);var c=this.h.find(d=>d.position===a);c?c.qe+=b:this.h.push({position:a,qe:b})}}getDuration(){const a=DN(this);if(!a)return 0;
88
+ const b=EN(this,a.Kb);return EN(this,a.Zb).endTime-b.startTime}getLastSegmentEndTime(){const a=DN(this);return a?EN(this,a.Zb).endTime:0}};var PO=class{constructor(a,b){this.g=a;this.f=b;this.a={clockSyncUri:void 0}}};var VN=(new Map).set("urn:uuid:1077efec-c0b2-4d02-ace3-3c1e52e2fb4b",_.Re).set(JM,_.wd).set(IM,_.ud).set("urn:uuid:79f0049a-4098-8642-ab92-e65be0885f95",_.ud).set("urn:uuid:94ce86fb-07ff-4f43-adb8-93d2fa968ca2",_.sd).set("urn:uuid:f239e769-efa3-4850-9c16-a903c6932efb",_.rd),eO=(new Map).set(_.wd,function(a){const b=gO(a);if(b)return{licenseUrl:b,origin:_.JA};if(a=_.O.Wb(a.node,"urn:microsoft","laurl"))if(a=a.getAttribute("licenseUrl"))return{licenseUrl:a,origin:"ms:laurl"};return null}).set(_.ud,
89
+ function(a){var b=_.O;const c=gO(a);if(c)return{licenseUrl:c,origin:_.JA};a=b.Wb(a.node,FM,"pro");if(!a)return null;b=b.f(a);if(!b)return null;b=_.em(b);return(b=_.rq(b).h)?{licenseUrl:b,origin:"mspr:pro"}:null}),XN=new _.T("clpp.dash.ContentProtection");var QO=class{constructor(){this.D=this.a=null;this.o=[];this.f=null;this.G=[];this.h=1;this.H={};this.l=0;this.I=new _.sI(5);this.B=new _.Pi(()=>{this.dc()});this.A=new _.ju;this.j=new Map;this.g=new _.T("clpp.dash.DashParser");this.C=null;this.J=new PO(this.g,(a,b)=>{a=_.zk(a,this.a.attemptParameters);a.type=5;a.method=b;b=this.D.networkingEngine.fetch(a);_.Jl(this.A,b);return b.V});this.F=new Map;this.K=!1;this.w=null}configure(a){this.a=a;this.J.a={clockSyncUri:a.clockSyncUri}}start(a,b){const c=
90
+ this;return _.w(function*(){c.o=[a];c.D=b;const d=yield mO(c);c.D&&nO(c,d);if(!c.D)throw new _.I(_.D,7,7001);return c.f})}requestStop(){this.K=!0}stop(){this.a=this.D=null;this.o=[];this.f=null;this.G=[];this.H={};this.C=null;this.l=-1;this.B.stop();this.F.clear();this.j.clear();return this.A.destroy()}update(){mO(this).catch(a=>{if(this.D&&a)this.D.onError(a)})}setCurrentVariant(){}dc(){const a=this;return _.w(function*(){a.g.debug(_.BA);let b=0;try{b=yield mO(a)}catch(c){if(a.D&&c.a&&(a.D.onError(c),
91
+ c.severity===_.D))return}a.D&&(a.K?yield a.stop():nO(a,b))})}loadVariant(a){return _.w(function*(){return a})}loadTextStream(a,b){const c=this;return _.w(function*(){let d;const e=c.f.periods.find(f=>f.id===b);e&&(d=e.textStreams.find(f=>f.id===a)||null);if(!d)throw new _.tl(`Could not load text stream with id: ${a}`);return d})}};_.x("clpp.dash.DashComponent",class extends _.Ev{install(){_.Pt.mpd=QO;_.Ot[_.vc]=QO}uninstall(){_.QC("mpd");_.RC(_.vc)}id(){return"dash"}});};f.call(g, window);