@castlabs/prestoplay 6.14.1 → 6.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/cjs/cl.adobe.js +3 -3
  3. package/cjs/cl.airplay.js +3 -3
  4. package/cjs/cl.broadpeak.js +7 -7
  5. package/cjs/cl.cast.js +114 -112
  6. package/cjs/cl.conviva.js +33 -33
  7. package/cjs/cl.core.js +553 -538
  8. package/cjs/cl.crypto.js +9 -9
  9. package/cjs/cl.dash.js +74 -73
  10. package/cjs/cl.externs.js +193 -58
  11. package/cjs/cl.freewheel.js +24 -24
  12. package/cjs/cl.hls.js +69 -69
  13. package/cjs/cl.hlssmpte.js +6 -6
  14. package/cjs/cl.htmlcue.js +29 -29
  15. package/cjs/cl.ima.js +24 -24
  16. package/cjs/cl.mse.js +368 -264
  17. package/cjs/cl.muxdata.js +15 -15
  18. package/cjs/cl.onboard.js +3 -3
  19. package/cjs/cl.persistent.js +14 -14
  20. package/cjs/cl.playlist.js +6 -6
  21. package/cjs/cl.simid.js +15 -15
  22. package/cjs/cl.smooth.js +72 -71
  23. package/cjs/cl.thumbnails.js +26 -26
  24. package/cjs/cl.tizen.js +71 -71
  25. package/cjs/cl.ttml.js +28 -28
  26. package/cjs/cl.verimatrix.js +5 -5
  27. package/cjs/cl.vimond.js +13 -13
  28. package/cjs/cl.vr.js +19 -19
  29. package/cjs/cl.vtt.js +14 -14
  30. package/cjs/cl.youbora.js +20 -20
  31. package/cl.adobe.js +3 -3
  32. package/cl.airplay.js +3 -3
  33. package/cl.broadpeak.js +5 -5
  34. package/cl.cast.js +89 -88
  35. package/cl.conviva.js +27 -27
  36. package/cl.core.js +455 -443
  37. package/cl.crypto.js +9 -9
  38. package/cl.dash.js +70 -68
  39. package/cl.externs.js +189 -58
  40. package/cl.freewheel.js +19 -19
  41. package/cl.hls.js +71 -71
  42. package/cl.hlssmpte.js +5 -5
  43. package/cl.htmlcue.js +26 -26
  44. package/cl.ima.js +17 -17
  45. package/cl.mse.js +318 -236
  46. package/cl.muxdata.js +13 -13
  47. package/cl.onboard.js +4 -4
  48. package/cl.persistent.js +11 -11
  49. package/cl.playlist.js +5 -5
  50. package/cl.simid.js +13 -13
  51. package/cl.smooth.js +59 -59
  52. package/cl.thumbnails.js +19 -19
  53. package/cl.tizen.js +57 -57
  54. package/cl.ttml.js +22 -22
  55. package/cl.verimatrix.js +4 -4
  56. package/cl.vimond.js +8 -8
  57. package/cl.vr.js +15 -15
  58. package/cl.vtt.js +12 -12
  59. package/cl.youbora.js +15 -15
  60. package/package.json +1 -1
  61. package/typings.d.ts +393 -57
package/cl.freewheel.js CHANGED
@@ -1,19 +1,19 @@
1
- import {clpp} from "./cl.core.js";let g={};const _ = clpp._;var f=function(window){'use strict';var FO="clpp-freewheel",GO="clpp.freewheel.AdsManagerFactory",HO="freewheel",IO=function(a){switch(a){case 0:return tv.freewheel.SDK.ADUNIT_PREROLL;case 1:return tv.freewheel.SDK.ADUNIT_MIDROLL;case 2:return tv.freewheel.SDK.ADUNIT_POSTROLL;default:return""}},JO=function(a){const b=[];typeof a.networkId!==_.r&&b.push("networkId");typeof a.serverUrl!==_.yf&&b.push("serverUrl");typeof a.profileId!==_.yf&&b.push("profileId");typeof a.videoAssetId!==_.yf&&typeof a.videoAssetId!==_.r&&b.push("videoAssetId");
2
- if(b.length)throw new _.H(1,9,12001,{missingKeys:b.join(", ")});},KO=function(){return _.w(function*(){var a=new _.At;let b=tv.freewheel.SDK.VIDEO_ASSET_AUTO_PLAY_TYPE_NONE;const c=yield a.canPlay(!1);a=yield a.canPlay(!0);c?b=tv.freewheel.SDK.VIDEO_ASSET_AUTO_PLAY_TYPE_ATTENDED:a&&(b=tv.freewheel.SDK.VIDEO_ASSET_AUTO_PLAY_TYPE_UNATTENDED);return b})},LO=function(a){a.g.on(a.a,tv.freewheel.SDK.EVENT_REQUEST_COMPLETE,a.H.bind(a));a.g.on(a.a,tv.freewheel.SDK.EVENT_SLOT_STARTED,a.J.bind(a));a.g.on(a.a,
3
- tv.freewheel.SDK.EVENT_SLOT_ENDED,a.I.bind(a));a.g.on(a.a,tv.freewheel.SDK.EVENT_AD,a.G.bind(a));a.g.on(a.m,_.Ff,a.F.bind(a));a.g.on(a.m,_.vf,a.C.bind(a))},OO=function(a){return _.w(function*(){a.B.length?(MO(a),a.f=a.B.shift(),a.f.play()):(NO(a),yield a.m.a.play())})},NO=function(a){const b=a.m.$b(HO).wc();b&&a.m.getSurface().hide(b);a.m.getSurface().showMediaElement()},MO=function(a){const b=a.m.$b(HO).wc();b&&(a.m.getSurface().show(b),a.m.getSurface().hideMediaElement(),a.a.registerVideoDisplayBase(FO),
4
- a.m.isMuted()?a.setVolume(0):a.setVolume(a.m.getVolume()||1))},PO=function(a){a.A.length?(MO(a),a.f=a.A.shift(),a.f.play()):NO(a)},QO=function(a,b,c){var d=null;a.a&&c&&(c.adInstance||c.slot)&&(c=(d=c.adInstance||null)?d.getSlot():c.slot,d={ad:new Y(a.a,c,d)});a.m.trigger(new _.C(b,d))},RO=class extends _.It{constructor(){super();this.f=this.a=null}onPlayerCreated(a){if(window.tv&&tv.freewheel&&tv.freewheel.SDK)this.a=_.$n(_.Bd,{id:FO}),this.f=_.$n(_.u,{"class":_.Zc}),this.a.appendChild(this.f),a.getSurface().addElementToContainer(this.a,
5
- !0),a.getSurface().hide(this.a);else a.onError(new _.H(1,9,12E3))}onPlayerWillDestroy(a){this.a&&(a.getSurface().removeElementFromContainer(this.a),this.f=this.a=null)}id(){return HO}wc(){return this.a}jg(){return this.f}};_.x("clpp.freewheel.FreeWheelPlugin",RO);RO.prototype.getAdVideo=RO.prototype.jg;RO.prototype.getAdContainer=RO.prototype.wc;RO.Id=HO;RO.AD_CONTAINER_ID=FO;_.Ho(new class{create(){return new RO}});var Y=class{constructor(a,b,c){this.g=a;this.f=b;this.a=c}sb(){return"FreeWheel AdManager SDK"}tb(){return tv.freewheel.SDK.version}zb(){return 0}getId(){return this.a?this.a.getAdId():""}getCreativeId(){const a=(this.a||{})._creativeId;return typeof a===_.yf?a:""}getApiFramework(){return this.a?this.a.getActiveCreativeRendition().getCreativeApi():""}getAdSystem(){return""}getAdvertiserName(){return""}getTitle(){return""}getDuration(){return this.a?this.a.getActiveCreativeRendition().getDuration():
6
- 0}getSkipTimeOffset(){return 0}dc(){return!1}Ib(){return this.a&&this.a.getEventCallbackUrls(tv.freewheel.SDK.EVENT_AD_CLICK,tv.freewheel.SDK.EVENT_TYPE_CLICK)[0]||""}getMediaUrl(){return this.a?this.a.getActiveCreativeRendition().getPrimaryCreativeRenditionAsset().getUrl():""}wb(){return this.a?this.a.getActiveCreativeRendition().getWidth():0}vb(){return this.a?this.a.getActiveCreativeRendition().getHeight():0}jb(){return 0}Wa(){switch(this.f.getTimePositionClass()){case tv.freewheel.SDK.TIME_POSITION_CLASS_PREROLL:return 0;
7
- case tv.freewheel.SDK.TIME_POSITION_CLASS_POSTROLL:return 2;default:return 1}}getPodIndex(){switch(this.Wa()){case 0:return 0;case 2:return-1}return this.g.getSlotsByTimePositionClass(tv.freewheel.SDK.TIME_POSITION_CLASS_MIDROLL).indexOf(this.f)+1}Jb(){switch(this.Wa()){case 0:return 0;case 2:return-1;default:return this.f.getTimePosition()}}Kb(){return this.a?this.f.getAdInstances().indexOf(this.a)+1:1}yb(){return this.f.getAdCount()}getWrapperAdIds(){return[]}getWrapperAdSystems(){return[]}getWrapperCreativeIds(){return[]}};
8
- Y.prototype.getWrapperCreativeIds=Y.prototype.getWrapperCreativeIds;Y.prototype.getWrapperAdSystems=Y.prototype.getWrapperAdSystems;Y.prototype.getWrapperAdIds=Y.prototype.getWrapperAdIds;Y.prototype.getSequenceLength=Y.prototype.yb;Y.prototype.getPositionInSequence=Y.prototype.Kb;Y.prototype.getPodTimeOffset=Y.prototype.Jb;Y.prototype.getPodIndex=Y.prototype.getPodIndex;Y.prototype.getPodType=Y.prototype.Wa;Y.prototype.getMediaBitrate=Y.prototype.jb;Y.prototype.getMediaHeight=Y.prototype.vb;
9
- Y.prototype.getMediaWidth=Y.prototype.wb;Y.prototype.getMediaUrl=Y.prototype.getMediaUrl;Y.prototype.getClickThroughUrl=Y.prototype.Ib;Y.prototype.isBumper=Y.prototype.dc;Y.prototype.getSkipTimeOffset=Y.prototype.getSkipTimeOffset;Y.prototype.getDuration=Y.prototype.getDuration;Y.prototype.getTitle=Y.prototype.getTitle;Y.prototype.getAdvertiserName=Y.prototype.getAdvertiserName;Y.prototype.getAdSystem=Y.prototype.getAdSystem;Y.prototype.getApiFramework=Y.prototype.getApiFramework;
10
- Y.prototype.getCreativeId=Y.prototype.getCreativeId;Y.prototype.getId=Y.prototype.getId;Y.prototype.getTechnology=Y.prototype.zb;Y.prototype.getAdManagerVersion=Y.prototype.tb;Y.prototype.getAdManagerName=Y.prototype.sb;var SO=class{constructor(a){this.a=a}getCuePoints(){return this.a.getTemporalSlots().map(a=>{switch(a.getTimePositionClass()){case tv.freewheel.SDK.TIME_POSITION_CLASS_PREROLL:return 0;case tv.freewheel.SDK.TIME_POSITION_CLASS_POSTROLL:return-1;default:return a.getTimePosition()}})}Lb(){return 0<this.a.getSlotsByTimePositionClass(tv.freewheel.SDK.TIME_POSITION_CLASS_PREROLL).length}kb(){return 0<this.a.getSlotsByTimePositionClass(tv.freewheel.SDK.TIME_POSITION_CLASS_POSTROLL).length}};
11
- SO.prototype.hasPostroll=SO.prototype.kb;SO.prototype.hasPreroll=SO.prototype.Lb;SO.prototype.getCuePoints=SO.prototype.getCuePoints;var TO=class{constructor(a){this.h=new _.R("clpp.freewheel.AdsManager");this.m=a;this.g=new _.Er;this.w=new tv.freewheel.SDK.AdManager;this.f=this.a=null;this.B=[];this.o=[];this.A=[];this.l=new _.Km;this.j=null}load(){const a=this;return _.w(function*(){const b=a.m.getConfiguration().freewheel||{};try{JO(b)}catch(d){return a.m.onError(d),a.l.resolve(),a.l}a.w.setNetwork(b.networkId);a.w.setServer(b.serverUrl);a.a=a.w.newContext();a.a.setProfile(b.profileId);typeof b.siteSectionId!==_.yf&&typeof b.siteSectionId!==
12
- _.r||a.a.setSiteSection(b.siteSectionId);const c=yield KO();a.a.setVideoAsset(b.videoAssetId,a.m.getDuration(),void 0,void 0,c);if(Array.isArray(b.pods))for(const d of b.pods)a.a.addTemporalSlot(d.id,IO(d.type),d.position,d.slotProfile,d.cuepointSequence,d.maxDuration,d.minDuration,d.acceptContentType);b.keyValues&&typeof b.keyValues===_.ye&&Object.keys(b.keyValues).forEach(d=>a.a.addKeyValue(d,b.keyValues[d]));a.a.setParameter(tv.freewheel.SDK.PARAMETER_EXTENSION_CONTENT_VIDEO_ENABLED,!1,tv.freewheel.SDK.PARAMETER_LEVEL_GLOBAL);
13
- if(Array.isArray(b.parameters))for(const d of b.parameters)a.a.setParameter(d.name,d.value,d.level);LO(a);a.a.submitRequest();return a.l})}start(){const a=this;return _.w(function*(){yield OO(a)})}resume(){this.f&&this.f.resume()}pause(){this.f&&this.f.pause()}skip(){this.f&&this.f.skipCurrentAd()}getVolume(){return this.a?this.a.getAdVolume():1}setVolume(a){this.a&&this.a.setAdVolume(a)}getPosition(){return this.f?this.f.getPlayheadTime():-1}dispose(){const a=this;return _.w(function*(){a.g.release();
14
- a.j&&(a.j.stop(),a.j=null);NO(a);a.a&&(a.a.dispose(),a.a=null)})}H(a){if(a.success)this.B=this.a.getSlotsByTimePositionClass(tv.freewheel.SDK.TIME_POSITION_CLASS_PREROLL),this.o=this.a.getSlotsByTimePositionClass(tv.freewheel.SDK.TIME_POSITION_CLASS_MIDROLL),this.A=this.a.getSlotsByTimePositionClass(tv.freewheel.SDK.TIME_POSITION_CLASS_POSTROLL),this.m.trigger(new _.C(_.oc,{adsTimeline:new SO(this.a)})),this.j=new _.yt(this.m.getSurface(),(b,c)=>this.a.resize(b,c),this.m.$b(HO).f);else this.m.onError(new _.H(1,
15
- 9,10003,{errorType:0},void 0));this.l.resolve()}J(a){QO(this,_.Xb,a);this.j.start()}I(a){this.f=null;a=a.slot;QO(this,_.Zb);this.j.stop();if(a)switch(a.getTimePositionClass()){case tv.freewheel.SDK.TIME_POSITION_CLASS_PREROLL:OO(this);break;case tv.freewheel.SDK.TIME_POSITION_CLASS_MIDROLL:NO(this);this.m.play();break;case tv.freewheel.SDK.TIME_POSITION_CLASS_POSTROLL:PO(this)}}G(a){const b=a.subType;this.h.debug("ad event",b);switch(b){case tv.freewheel.SDK.EVENT_AD_IMPRESSION:QO(this,_.kc,a);QO(this,
16
- _.dc,a);break;case tv.freewheel.SDK.EVENT_AD_IMPRESSION_END:QO(this,_.lc,a);break;case tv.freewheel.SDK.EVENT_AD_FIRST_QUARTILE:QO(this,_.cc,a);break;case tv.freewheel.SDK.EVENT_AD_MIDPOINT:QO(this,_.fc,a);break;case tv.freewheel.SDK.EVENT_AD_THIRD_QUARTILE:QO(this,_.mc,a);break;case tv.freewheel.SDK.EVENT_AD_COMPLETE:QO(this,_.bc,a);break;case tv.freewheel.SDK.EVENT_AD_CLICK:QO(this,_.ac,a);break;case tv.freewheel.SDK.EVENT_AD_PAUSE:QO(this,_.gc,a);break;case tv.freewheel.SDK.EVENT_AD_RESUME:QO(this,
17
- _.ic,a);break;case tv.freewheel.SDK.EVENT_AD_SKIPPED:QO(this,_.jc,a);break;case tv.freewheel.SDK.EVENT_AD_BUFFERING_START:QO(this,_.$b,a);break;case tv.freewheel.SDK.EVENT_AD_BUFFERING_END:QO(this,_.hc,a);break;case tv.freewheel.SDK.EVENT_ERROR:this.m.onError(new _.H(1,9,10003,{errorType:1},{fwCode:a[tv.freewheel.SDK.INFO_KEY_ERROR_CODE],fwInfo:a[tv.freewheel.SDK.INFO_KEY_ERROR_INFO],fwModule:a[tv.freewheel.SDK.INFO_KEY_ERROR_MODULE]}))}}F(){if(!this.f){var a=this.m.getPosition();if(this.f=this.o.find(b=>
18
- .5>Math.abs(a-b.getTimePosition()))||null){const b=this.o.findIndex(c=>c===this.f);this.o.splice(b,1);this.m.pause();MO(this);this.f.play()}}}C(a){if((a=a.detail)&&this.a)switch(a.currentState){case _.Fn:this.a.setVideoState(tv.freewheel.SDK.VIDEO_STATE_PLAYING);break;case _.En:this.a.setVideoState(tv.freewheel.SDK.VIDEO_STATE_PAUSED);break;case _.un:this.a.setVideoState(tv.freewheel.SDK.VIDEO_STATE_COMPLETED);PO(this);break;case _.Cn:case _.Bn:this.a.setVideoState(tv.freewheel.SDK.VIDEO_STATE_STOPPED)}}};
19
- TO.prototype.getPosition=TO.prototype.getPosition;TO.prototype.setVolume=TO.prototype.setVolume;TO.prototype.getVolume=TO.prototype.getVolume;TO.prototype.skip=TO.prototype.skip;TO.prototype.pause=TO.prototype.pause;TO.prototype.resume=TO.prototype.resume;TO.prototype.start=TO.prototype.start;var UO=class{constructor(){this.a=new _.R(GO)}name(){return GO}isSupported(a,b){return a.namespace()===_.fd?!1:window.tv&&tv.freewheel&&tv.freewheel.SDK?!(!b||!b.freewheel):(this.a.warn("FreeWheel SDK is not loaded."),!1)}create(a){return new TO(a)}};UO.prototype.create=UO.prototype.create;UO.prototype.isSupported=UO.prototype.isSupported;UO.prototype.name=UO.prototype.name;_.Xn(new UO);};f.call(g, window);
1
+ import {clpp} from "./cl.core.js";let g={};const _ = clpp._;var f=function(window){'use strict';var zT="clpp-freewheel",AT="clpp.freewheel.AdsManagerFactory",BT="freewheel",CT=function(a){switch(a){case 0:return tv.freewheel.SDK.ADUNIT_PREROLL;case 1:return tv.freewheel.SDK.ADUNIT_MIDROLL;case 2:return tv.freewheel.SDK.ADUNIT_POSTROLL;default:return""}},DT=function(a){const b=[];typeof a.networkId!==_.t&&b.push("networkId");typeof a.serverUrl!==_.Mf&&b.push("serverUrl");typeof a.profileId!==_.Mf&&b.push("profileId");typeof a.videoAssetId!==_.Mf&&typeof a.videoAssetId!==_.t&&b.push("videoAssetId");
2
+ if(b.length)throw new _.H(1,9,12001,{missingKeys:b.join(", ")});},ET=function(){return _.x(function*(){var a=new _.Zt;let b=tv.freewheel.SDK.VIDEO_ASSET_AUTO_PLAY_TYPE_NONE;const c=yield a.canPlay(!1);a=yield a.canPlay(!0);c?b=tv.freewheel.SDK.VIDEO_ASSET_AUTO_PLAY_TYPE_ATTENDED:a&&(b=tv.freewheel.SDK.VIDEO_ASSET_AUTO_PLAY_TYPE_UNATTENDED);return b})},FT=function(a){a.h.on(a.a,tv.freewheel.SDK.EVENT_REQUEST_COMPLETE,a.H.bind(a));a.h.on(a.a,tv.freewheel.SDK.EVENT_SLOT_STARTED,a.J.bind(a));a.h.on(a.a,
3
+ tv.freewheel.SDK.EVENT_SLOT_ENDED,a.I.bind(a));a.h.on(a.a,tv.freewheel.SDK.EVENT_AD,a.G.bind(a));a.h.on(a.m,_.Tf,a.F.bind(a));a.h.on(a.m,_.Jf,a.D.bind(a))},IT=function(a){return _.x(function*(){a.C.length?(GT(a),a.f=a.C.shift(),a.f.play()):(HT(a),yield a.m.a.play())})},HT=function(a){const b=a.m.kc(BT).Hc();b&&a.m.getSurface().hide(b);a.m.getSurface().showMediaElement()},GT=function(a){const b=a.m.kc(BT).Hc();b&&(a.m.getSurface().show(b),a.m.getSurface().hideMediaElement(),a.a.registerVideoDisplayBase(zT),
4
+ a.m.isMuted()?a.setVolume(0):a.setVolume(a.m.getVolume()||1))},JT=function(a){a.A.length?(GT(a),a.f=a.A.shift(),a.f.play()):HT(a)},KT=function(a,b,c){var d=null;a.a&&c&&(c.adInstance||c.slot)&&(c=(d=c.adInstance||null)?d.getSlot():c.slot,d={ad:new Y(a.a,c,d)});a.m.trigger(new _.D(b,d))},LT=class extends _.iu{constructor(){super();this.f=this.a=null}onPlayerCreated(a){if(window.tv&&tv.freewheel&&tv.freewheel.SDK)this.a=_.po(_.Fd,{id:zT}),this.f=_.po(_.w,{"class":_.dd}),this.a.appendChild(this.f),a.getSurface().addElementToContainer(this.a,
5
+ !0),a.getSurface().hide(this.a);else a.onError(new _.H(1,9,12E3))}onPlayerWillDestroy(a){this.a&&(a.getSurface().removeElementFromContainer(this.a),this.f=this.a=null)}id(){return BT}Hc(){return this.a}zg(){return this.f}};_.z("clpp.freewheel.FreeWheelPlugin",LT);LT.prototype.getAdVideo=LT.prototype.zg;LT.prototype.getAdContainer=LT.prototype.Hc;LT.Id=BT;LT.AD_CONTAINER_ID=zT;_.Wo(new class{create(){return new LT}});var Y=class{constructor(a,b,c){this.h=a;this.f=b;this.a=c}Gb(){return"FreeWheel AdManager SDK"}Hb(){return tv.freewheel.SDK.version}Mb(){return 0}getId(){return this.a?this.a.getAdId():""}getCreativeId(){const a=(this.a||{})._creativeId;return typeof a===_.Mf?a:""}getApiFramework(){return this.a?this.a.getActiveCreativeRendition().getCreativeApi():""}getAdSystem(){return""}getAdvertiserName(){return""}getTitle(){return""}getDuration(){return this.a?this.a.getActiveCreativeRendition().getDuration():
6
+ 0}getSkipTimeOffset(){return 0}pc(){return!1}Xb(){return this.a&&this.a.getEventCallbackUrls(tv.freewheel.SDK.EVENT_AD_CLICK,tv.freewheel.SDK.EVENT_TYPE_CLICK)[0]||""}getMediaUrl(){return this.a?this.a.getActiveCreativeRendition().getPrimaryCreativeRenditionAsset().getUrl():""}Kb(){return this.a?this.a.getActiveCreativeRendition().getWidth():0}Jb(){return this.a?this.a.getActiveCreativeRendition().getHeight():0}yb(){return 0}lb(){switch(this.f.getTimePositionClass()){case tv.freewheel.SDK.TIME_POSITION_CLASS_PREROLL:return 0;
7
+ case tv.freewheel.SDK.TIME_POSITION_CLASS_POSTROLL:return 2;default:return 1}}getPodIndex(){switch(this.lb()){case 0:return 0;case 2:return-1}return this.h.getSlotsByTimePositionClass(tv.freewheel.SDK.TIME_POSITION_CLASS_MIDROLL).indexOf(this.f)+1}Yb(){switch(this.lb()){case 0:return 0;case 2:return-1;default:return this.f.getTimePosition()}}Zb(){return this.a?this.f.getAdInstances().indexOf(this.a)+1:1}Lb(){return this.f.getAdCount()}getWrapperAdIds(){return[]}getWrapperAdSystems(){return[]}getWrapperCreativeIds(){return[]}};
8
+ Y.prototype.getWrapperCreativeIds=Y.prototype.getWrapperCreativeIds;Y.prototype.getWrapperAdSystems=Y.prototype.getWrapperAdSystems;Y.prototype.getWrapperAdIds=Y.prototype.getWrapperAdIds;Y.prototype.getSequenceLength=Y.prototype.Lb;Y.prototype.getPositionInSequence=Y.prototype.Zb;Y.prototype.getPodTimeOffset=Y.prototype.Yb;Y.prototype.getPodIndex=Y.prototype.getPodIndex;Y.prototype.getPodType=Y.prototype.lb;Y.prototype.getMediaBitrate=Y.prototype.yb;Y.prototype.getMediaHeight=Y.prototype.Jb;
9
+ Y.prototype.getMediaWidth=Y.prototype.Kb;Y.prototype.getMediaUrl=Y.prototype.getMediaUrl;Y.prototype.getClickThroughUrl=Y.prototype.Xb;Y.prototype.isBumper=Y.prototype.pc;Y.prototype.getSkipTimeOffset=Y.prototype.getSkipTimeOffset;Y.prototype.getDuration=Y.prototype.getDuration;Y.prototype.getTitle=Y.prototype.getTitle;Y.prototype.getAdvertiserName=Y.prototype.getAdvertiserName;Y.prototype.getAdSystem=Y.prototype.getAdSystem;Y.prototype.getApiFramework=Y.prototype.getApiFramework;
10
+ Y.prototype.getCreativeId=Y.prototype.getCreativeId;Y.prototype.getId=Y.prototype.getId;Y.prototype.getTechnology=Y.prototype.Mb;Y.prototype.getAdManagerVersion=Y.prototype.Hb;Y.prototype.getAdManagerName=Y.prototype.Gb;var MT=class{constructor(a){this.a=a}getCuePoints(){return this.a.getTemporalSlots().map(a=>{switch(a.getTimePositionClass()){case tv.freewheel.SDK.TIME_POSITION_CLASS_PREROLL:return 0;case tv.freewheel.SDK.TIME_POSITION_CLASS_POSTROLL:return-1;default:return a.getTimePosition()}})}$b(){return 0<this.a.getSlotsByTimePositionClass(tv.freewheel.SDK.TIME_POSITION_CLASS_PREROLL).length}Ab(){return 0<this.a.getSlotsByTimePositionClass(tv.freewheel.SDK.TIME_POSITION_CLASS_POSTROLL).length}};
11
+ MT.prototype.hasPostroll=MT.prototype.Ab;MT.prototype.hasPreroll=MT.prototype.$b;MT.prototype.getCuePoints=MT.prototype.getCuePoints;var NT=class{constructor(a){this.g=new _.S("clpp.freewheel.AdsManager");this.m=a;this.h=new _.$r;this.w=new tv.freewheel.SDK.AdManager;this.f=this.a=null;this.C=[];this.o=[];this.A=[];this.l=new _.Zm;this.j=null}load(){const a=this;return _.x(function*(){const b=a.m.getConfiguration().freewheel||{};try{DT(b)}catch(d){return a.m.onError(d),a.l.resolve(),a.l}a.w.setNetwork(b.networkId);a.w.setServer(b.serverUrl);a.a=a.w.newContext();a.a.setProfile(b.profileId);typeof b.siteSectionId!==_.Mf&&typeof b.siteSectionId!==
12
+ _.t||a.a.setSiteSection(b.siteSectionId);const c=yield ET();a.a.setVideoAsset(b.videoAssetId,a.m.getDuration(),void 0,void 0,c);if(Array.isArray(b.pods))for(const d of b.pods)a.a.addTemporalSlot(d.id,CT(d.type),d.position,d.slotProfile,d.cuepointSequence,d.maxDuration,d.minDuration,d.acceptContentType);b.keyValues&&typeof b.keyValues===_.Ce&&Object.keys(b.keyValues).forEach(d=>a.a.addKeyValue(d,b.keyValues[d]));a.a.setParameter(tv.freewheel.SDK.PARAMETER_EXTENSION_CONTENT_VIDEO_ENABLED,!1,tv.freewheel.SDK.PARAMETER_LEVEL_GLOBAL);
13
+ if(Array.isArray(b.parameters))for(const d of b.parameters)a.a.setParameter(d.name,d.value,d.level);FT(a);a.a.submitRequest();return a.l})}start(){const a=this;return _.x(function*(){yield IT(a)})}resume(){this.f&&this.f.resume()}pause(){this.f&&this.f.pause()}skip(){this.f&&this.f.skipCurrentAd()}getVolume(){return this.a?this.a.getAdVolume():1}setVolume(a){this.a&&this.a.setAdVolume(a)}getPosition(){return this.f?this.f.getPlayheadTime():-1}dispose(){const a=this;return _.x(function*(){a.h.release();
14
+ a.j&&(a.j.stop(),a.j=null);HT(a);a.a&&(a.a.dispose(),a.a=null)})}H(a){if(a.success)this.C=this.a.getSlotsByTimePositionClass(tv.freewheel.SDK.TIME_POSITION_CLASS_PREROLL),this.o=this.a.getSlotsByTimePositionClass(tv.freewheel.SDK.TIME_POSITION_CLASS_MIDROLL),this.A=this.a.getSlotsByTimePositionClass(tv.freewheel.SDK.TIME_POSITION_CLASS_POSTROLL),this.m.trigger(new _.D(_.tc,{adsTimeline:new MT(this.a)})),this.j=new _.Xt(this.m.getSurface(),(b,c)=>this.a.resize(b,c),this.m.kc(BT).f);else this.m.onError(new _.H(1,
15
+ 9,10003,{errorType:0},void 0));this.l.resolve()}J(a){KT(this,_.bc,a);this.j.start()}I(a){this.f=null;a=a.slot;KT(this,_.cc);this.j.stop();if(a)switch(a.getTimePositionClass()){case tv.freewheel.SDK.TIME_POSITION_CLASS_PREROLL:IT(this);break;case tv.freewheel.SDK.TIME_POSITION_CLASS_MIDROLL:HT(this);this.m.play();break;case tv.freewheel.SDK.TIME_POSITION_CLASS_POSTROLL:JT(this)}}G(a){const b=a.subType;this.g.debug("ad event",b);switch(b){case tv.freewheel.SDK.EVENT_AD_IMPRESSION:KT(this,_.pc,a);KT(this,
16
+ _.hc,a);break;case tv.freewheel.SDK.EVENT_AD_IMPRESSION_END:KT(this,_.qc,a);break;case tv.freewheel.SDK.EVENT_AD_FIRST_QUARTILE:KT(this,_.gc,a);break;case tv.freewheel.SDK.EVENT_AD_MIDPOINT:KT(this,_.jc,a);break;case tv.freewheel.SDK.EVENT_AD_THIRD_QUARTILE:KT(this,_.rc,a);break;case tv.freewheel.SDK.EVENT_AD_COMPLETE:KT(this,_.fc,a);break;case tv.freewheel.SDK.EVENT_AD_CLICK:KT(this,_.ec,a);break;case tv.freewheel.SDK.EVENT_AD_PAUSE:KT(this,_.lc,a);break;case tv.freewheel.SDK.EVENT_AD_RESUME:KT(this,
17
+ _.nc,a);break;case tv.freewheel.SDK.EVENT_AD_SKIPPED:KT(this,_.oc,a);break;case tv.freewheel.SDK.EVENT_AD_BUFFERING_START:KT(this,_.dc,a);break;case tv.freewheel.SDK.EVENT_AD_BUFFERING_END:KT(this,_.mc,a);break;case tv.freewheel.SDK.EVENT_ERROR:this.m.onError(new _.H(1,9,10003,{errorType:1},{fwCode:a[tv.freewheel.SDK.INFO_KEY_ERROR_CODE],fwInfo:a[tv.freewheel.SDK.INFO_KEY_ERROR_INFO],fwModule:a[tv.freewheel.SDK.INFO_KEY_ERROR_MODULE]}))}}F(){if(!this.f){var a=this.m.getPosition();if(this.f=this.o.find(b=>
18
+ .5>Math.abs(a-b.getTimePosition()))||null){const b=this.o.findIndex(c=>c===this.f);this.o.splice(b,1);this.m.pause();GT(this);this.f.play()}}}D(a){if((a=a.detail)&&this.a)switch(a.currentState){case _.Un:this.a.setVideoState(tv.freewheel.SDK.VIDEO_STATE_PLAYING);break;case _.Tn:this.a.setVideoState(tv.freewheel.SDK.VIDEO_STATE_PAUSED);break;case _.Jn:this.a.setVideoState(tv.freewheel.SDK.VIDEO_STATE_COMPLETED);JT(this);break;case _.Rn:case _.Qn:this.a.setVideoState(tv.freewheel.SDK.VIDEO_STATE_STOPPED)}}};
19
+ NT.prototype.getPosition=NT.prototype.getPosition;NT.prototype.setVolume=NT.prototype.setVolume;NT.prototype.getVolume=NT.prototype.getVolume;NT.prototype.skip=NT.prototype.skip;NT.prototype.pause=NT.prototype.pause;NT.prototype.resume=NT.prototype.resume;NT.prototype.start=NT.prototype.start;var OT=class{constructor(){this.a=new _.S(AT)}name(){return AT}isSupported(a,b){return a.namespace()===_.jd?!1:window.tv&&tv.freewheel&&tv.freewheel.SDK?!(!b||!b.freewheel):(this.a.warn("FreeWheel SDK is not loaded."),!1)}create(a){return new NT(a)}};OT.prototype.create=OT.prototype.create;OT.prototype.isSupported=OT.prototype.isSupported;OT.prototype.name=OT.prototype.name;_.mo(new OT);};f.call(g, window);
package/cl.hls.js CHANGED
@@ -1,71 +1,71 @@
1
- import {clpp} from "./cl.core.js";import './cl.mse.js';let g={};const _ = clpp._;var f=function(window){'use strict';var eE="CLOSED-CAPTIONS",fE="Could not parse MP4 segment start time.",gE="DURATION",hE="EXT-X-STREAM-INF",iE="Failed to infer discontinuity number",jE="Guessing audio-only",kE="METHOD",lE="SAMPLE-AES-CTR",mE="SUBTITLES",nE="Two EXT-X-KEY tags, one with METHOD\x3dAES-128 are applied to one ",oE="application/vnd.apple.mpegurl",pE="sample",qE="whole-segment",rE=function(a,b){return _.I(a,b,void 0,{required:!0})},sE=function(a){if(1>a.a)throw _.bl();--a.a},tE=function(a){if(null!==a&&void 0!==
2
- a)return Number(a)},uE=function(a,b){return a.filter(c=>c.name===b)},vE=function(a,b){const c=Array.isArray(b)?b:[b];return a.filter(d=>{d=rE(d,_.Fb);return c.includes(d)})},wE=function(a,b){return a.some(c=>c.name===b)},xE=function(a,b,c){c=void 0===c?{}:c;a=a.find(d=>d.name===b)||null;if(!a&&c.required)throw new _.H(_.F,4,4024,{missingTag:b});return a},yE=function(a){var b=xE(a,"EXT-X-TILES");if(!b)return{Ze:1,Df:1,durationPerTile:null};a=_.I(b,"LAYOUT")||"1x1";b=(b=_.I(b,gE))?Number(b):null;const [c,
3
- d]=a.split("x").map(e=>parseInt(e,10));return{Ze:c,Df:d,durationPerTile:b}},zE=function(a,b){return _.zy([a],[b])[0]},AE=function(a){const b=new Set;a.variants.forEach(c=>{c.audio&&b.add(c.audio);c.video&&b.add(c.video)});a.textStreams.forEach(c=>b.add(c));a.thumbStreams.forEach(c=>b.add(c));return Array.from(b)},BE=function(a,b){Array.isArray(a)||(a=[a]);a.forEach(c=>{for(const d of AE(c))b(d,c)})},CE=function(a){return a.some(b=>wE(b.X,_.Ca))},DE=function(a){return a.type===_.p||a.type===_.u},EE=
4
- function(a,b){const c=xE(a,_.Ca);if(b&&c)return _.Tx;a=xE(a,_.Ha);if(!a)return"LIVE";if(a.value===_.Tx)return _.Tx;if("EVENT"===a.value)return"EVENT";throw new _.H(_.F,4,4044,`Invalid EXT-X-PLAYLIST-TYPE value: ${a.value}`);},FE=function(a){a={AUDIO:_.p,VIDEO:_.u,SUBTITLES:_.G,"CLOSED-CAPTIONS":_.G}[a.toUpperCase()];if(!a)throw new _.H(_.F,4,4044,"EXT-X-MEDIA tag has an invalid TYPE attribute.");return a},GE=function(a,b,c){c=void 0===c?!1:c;var d=0;let e=null;if(a){d=a.split("@");a=Number(d[0]);
5
- if(0>=a)throw new _.H(_.F,4,4044,"Byte range length must be positive.");if(d[1]){if(d=Number(d[1]),0>d)throw new _.H(_.F,4,4044,"Byte range start byte must not be negative.");}else{if(c)throw new _.H(_.F,4,4044,"Invalid byte range, offset is required but missing.");if(null==b)throw new _.H(_.F,4,4044,"Invalid byte range, cannot calculate offset based on previous byte ranges.");d=b+1}e=d+a-1}return{ua:d,ia:e}},HE=function(a,b){a=xE(a,_.ya);return GE(a?a.value:null,b)},IE=function(a){a=xE(a,"EXTINF",
6
- {required:!0}).value.split(",");return{duration:Number(a[0]),title:a[1]||null}},JE=function(a,b){b=void 0===b?{}:b;const c={gd:!1,Uf:!1,Vf:null,rg:null,nf:null};a=xE(a,_.La,{required:b.uf});if(!a)return c;const d=e=>null==e?null:Number(e);c.gd="YES"===_.I(a,"CAN-BLOCK-RELOAD");c.Uf="YES"===_.I(a,"CAN-SKIP-DATERANGES");c.Vf=d(_.I(a,"CAN-SKIP-UNTIL"));c.rg=d(_.I(a,"HOLD-BACK"));c.nf=d(_.I(a,"PART-HOLD-BACK",void 0,{required:b.uf}));return c},KE=function(a,b,c){c=void 0===c?!1:c;a=_.I(a,"BYTERANGE");
7
- return GE(a,b,c)},ME=function(a,b){const c=HE(a.X,null);return new LE(0,0,0,()=>[a.a],c.ua,c.ia,0,b)},NE=function(a,b){if(null==a)return null;a=Object.assign({},a);null==a.iv&&(a.iv=_.pi(new Uint8Array(12),new Uint8Array([b>>24&255,b>>16&255,b>>8&255,b&255])));return a},OE=function(a){let b=Infinity,c=Infinity;AE(a).filter(DE).forEach(d=>{{d=d.S;var e=d[0].startTime;const f=d[d.length-1].endTime;d=e;e=f-e}b=Math.min(b,d);c=Math.min(c,e)});return{Cc:b,duration:c}},PE=function(a){return a.map(b=>{({duration:b}=
8
- OE(b));return b}).reduce((b,c)=>b+c,0)},QE=function(a){return(a.video?a.video.xa:"")+" - "+(a.audio?a.audio.xa:"")},RE=function(a,b,c,d){if(b===_.Tx)return{delay:0,jc:0};b=xE(a,_.Ga);if(c&&b){c=Number(rE(b,"PART-TARGET"));if(null!=d)return{delay:d,jc:c};({nf:d}=JE(a,{uf:!0}));return{delay:d,jc:c}}a=xE(a,_.Na,{required:!0});a=Number(a.value);return null!=d?{delay:d,jc:a}:{delay:3*a,jc:a}},SE=function(a){const b=[];BE(a,c=>{b.push(c.xg)});return{delay:Math.max(...b.map(c=>c.delay)),jc:Math.min(...b.map(c=>
9
- c.jc))}},UE=function(a){const b=new Map;a.forEach(c=>{var d=TE(c).groupId;b.has(d)?(d=b.get(d),d.includes(c)||d.push(c)):b.set(d,[c])});return b},VE=function(a){const b=new Map;for(const c of a){a=_.I(c,_.$a);a=_.Jh(a||_.If);const d=rE(c,_.Sa),e=rE(c,"INSTREAM-ID");b.has(d)||b.set(d,new Map);b.get(d).set(e,a)}return b},XE=function(a){a=a.audio.concat(a.video);for(const b of a)a=TE(b).codecs.split(",").filter(c=>"mp4a.40.34"!==c),WE(b,a)},YE=function(a,b){if(!a)return null;const c=a.xa;return b.find(d=>
10
- TE(d).xa===c)||null},ZE=function(a){for(const b of a)if(b.startsWith("#EXT-")&&(a=_.ui(0,b),_.ds.has(a.name)))return 1;return 0},$E=function(a){a=uE(a,"EXT-X-DEFINE").map(b=>{const c=_.I(b,"NAME");if(!c)return null;b=rE(b,"VALUE");return{name:c,value:b}}).filter(Boolean);return new Map(a.map(b=>[b.name,b.value]))},aF=function(a,b){return a.replace(/\{\$([a-zA-Z0-9_-]+)\}/g,(c,d)=>{c=b.get(d);if(null==c)throw new _.H(_.F,4,4044,`Undefined variable '${d}'`);return c})},bF=function(a,b){a.forEach(c=>
11
- {c.attributes.forEach(d=>{d.value=aF(d.value,b)})})},cF=function(a,b,c){bF(a,c);b.forEach(d=>{bF(d.X,c)})},fF=function(a,b,c){const d=[];for(let e=1;e<b.length;e++){const f=dF(a,b[e]);d.push(f);if(f.name===hE){const g=b[e+1];if(!g)throw new _.H(_.F,4,4044,"EXT-X-STREAM-INF is not followed by a URI.");f.attributes.push(new _.si(_.Hb,g));e++}}a.a=$E(d);cF(d,[],a.a);return new eF(c,0,d)},iF=function(a,b,c){let d=[];for(var e=1;e<b.length;){const f=dF(a,b[e]);if(_.es.has(f.name))break;d.push(f);e++}b=
12
- gF(a,c,b.slice(e));e=b.S;d=d.concat(b.X);a=hF(a,d);cF(d,e,a);return new eF(c,1,d,b.S)},jF=function(a,b,c){b=b.trim().split(/\n+/m).map(d=>d.trim()).filter(d=>d.length&&!/^#(?!EXT)/m.test(d));if(!/^#EXTM3U($|[ \t\n])/m.test(b[0]))throw new _.H(_.F,4,4015);return 0===ZE(b)?fF(a,b,c):iF(a,b,c)},dF=function(a,b){return _.ui(a.f++,b)},gF=function(a,b,c){const d=[],e=[];let f=[],g=[];c.forEach(h=>{/^(#EXT)/.test(h)?(h=dF(a,h),_.ds.has(h.name)||_.gs.has(h.name)?d.push(h):_.fs.has(h.name)?"EXT-X-PART"===
13
- h.name?g.push(h):h.name===_.Ja&&"PART"===_.I(h,_.Fb)&&g.push(h):f.push(h)):/^#(?!EXT)/m.test(h)||(h=zE(b,h.trim()),e.push(new kF(h,f,g)),f=[],g=[])});0<g.length&&e.push(new kF(null,f,g));return{S:e,X:d}},hF=function(a,b){const c=uE(b,"EXT-X-DEFINE"),d=$E(b);c.map(e=>_.I(e,"IMPORT")).filter(Boolean).forEach(e=>{const f=a.a.get(e);if(null==f)throw new _.H(_.F,4,4044,`Cannot import variable '${e}' as it is not defined `+"in the master playlist");d.set(e,f)});return d},lF=function(a){return 0>a?[]:Array.from({length:a},
14
- (b,c)=>c)},mF=function(a,b=0){return b+10<=a.length&&73===a[b]&&68===a[b+1]&&51===a[b+2]&&255>a[b+3]&&255>a[b+4]&&128>a[b+6]&&128>a[b+7]&&128>a[b+8]&&128>a[b+9]?!0:!1},nF=function(a){function b(h,k,l){let m="";for(;k<l;k++)m+="%"+("00"+h[k].toString(16)).slice(-2);return m}function c(h){return h[0]<<21|h[1]<<14|h[2]<<7|h[3]}function d(){throw new _.H(_.F,4,4030);}mF(a)||d();let e=10;a[5]&64&&(e=e+4+c(a.subarray(10,14)));do{var f=c(a.subarray(e+4,e+8));1>f&&d();var g=String.fromCharCode(a[e],a[e+1],
15
- a[e+2],a[e+3]);if("PRIV"===g){g=a.subarray(e+10,e+f+10);for(let h=0;h<g.byteLength;h++)if(0===g[h]){if("com.apple.streaming.transportStreamTimestamp"===unescape(b(g,0,h)))return a=g.subarray(h+1),f=(a[3]&1)<<30|a[4]<<22|a[5]<<14|a[6]<<6|a[7]>>>2,f*=4,f+=a[7]&3,Math.round(f/9E4);break}}mF(a,e)||d();e+=10;e+=f}while(e<a.byteLength);return d()},oF=function(a,b){let c=null,d=0;try{(new _.sl).L(_.ue,_.ll).L(_.Gf,_.ll).L(_.pe,_.ll).$("mdhd",g=>{g.reader.skip(0==g.version?8:16);d=_.P(g.reader);g.parser.stop()}).parse(b,
16
- !0)}catch(g){c=g}if(c||!d)throw _.Bt.error("Unable to find timescale in init segment!"),new _.H(_.F,4,4030,fE,c);let e=0,f=!1;try{(new _.sl).L("moof",_.ll).L("traf",_.ll).$("tfdt",g=>{var h=d;if(0===g.version)h=_.P(g.reader)/h;else{{const k=_.P(g.reader),l=_.P(g.reader);if(!(2097151>=k||h>=Math.pow(2,12)))throw Error("Cannot accurately parse MP4 timestamp, base time is too high and timescale is \x3c\x3d 2^12");h=k/h*Math.pow(2,32)+l/h}}e=h;f=!0;g.parser.stop()}).parse(a,!0)}catch(g){c=g}if(c||!f)throw new _.H(_.F,
17
- 4,4030,fE,c);return e},pF=function(a){for(;a.getPosition()<a.Ca()-1;){const b=a.getPosition();if(71===_.dl(a))return sE(a),b}return-1},qF=function(a){function b(){d.seek(e+188);f=_.dl(d);71!=f&&(d.seek(e+192),f=_.dl(d));71!=f&&(d.seek(e+204),f=_.dl(d));71!=f&&c();sE(d)}function c(){throw new _.H(_.F,4,4030);}const d=new _.em(new DataView(a),!1);let e=0,f=0;e=pF(d);0>e&&(_.Bt.error("Unable to find sync byte in TS after scanning."),c());for(;;){e=d.getPosition();f=_.dl(d);71!=f&&c();a=_.el(d);if(8191===
18
- (a&8191)){b();continue}if(!(a&16384)){b();continue}a=(_.dl(d)&48)>>4;0!=a&&2!=a||c();3==a&&(a=_.dl(d),d.skip(a));if(1!=_.P(d)>>8){b();continue}d.skip(3);a=_.dl(d)>>6;0!=a&&1!=a||c();0==_.dl(d)&&c();a=_.dl(d);const g=_.el(d),h=_.el(d);return(1073741824*((a&14)>>1)+((g&65534)<<14|(h&65534)>>1))/9E4}},rF=function(a,b){a.forEach(c=>{c.startTime+=b;c.endTime+=b})},uF=function(a){const b=sF(a),c=tF(a);a.forEach(d=>{const e=d.S,f=e.findIndex(h=>h.da===b);let g=e.findIndex(h=>h.da===c+1);-1===g&&(g=e.length);
19
- d.S=e.slice(f,g)})},tF=function(a){a=a.map(b=>b.S[b.S.length-1].da);return Math.min(...a)},sF=function(a){a=a.map(b=>b.S[0].da);return Math.max(...a)},xF=function(a){var b=rE(a,kE);if(!vF.includes(b))return wF.error("PlayReady in HLS is only supported with [",vF.join(", "),"], not",b),null;a=rE(a,_.Hb);b=_.or(a);a=null;b=_.J(b.data);try{a=_.py(_.lm(b))}catch(c){a=b}return _.Ay(_.sd,[{initDataType:_.Uc,initData:a}],"")},zF=function(a){if(0===a.length)return yF();if(a.some(c=>c.type===qE)||a.every(c=>
20
- c.type===_.xe))return a[0];a=a.filter(c=>c.type===pE);const b=_.lh(a.flatMap(c=>c.drmInfos));return{keyInfo:null,keyId:a[a.length-1].keyId,type:pE,drmInfos:b}},CF=function(a){a=AF(a);if(a.some(b=>BF(b))&&1<a.length)throw new _.H(_.F,4,4046,"Two EXT-X-KEY tags, one with METHOD\x3dAES-128 are applied to one playlist.");},BF=function(a){return uE(a.X,_.Da).some(b=>"AES-128"===_.I(b,kE))},EF=function(a,b,c){return AF(a).map(d=>DF(d.X,b,c))},FF=function(a){return a.filter(b=>wE(b.X,_.Da)).length},AF=function(a){return a.filter(b=>
21
- wE(b.X,_.Da))},DF=function(a,b,c){a=uE(a,_.Da);if(0===a.length)return null;var d=rE(a[0],kE);if(1===a.length){if("NONE"===d)return yF();if("AES-128"===d)return a=a[0],d=_.I(a,"IV",""),{type:qE,keyInfo:{method:"AES-128",url:zE(b,rE(a,_.Hb)),iv:d?_.mi((d||"0x").slice(2)):null},drmInfos:[],keyId:null}}b=a.map(e=>rE(e,kE));if(!b.every(e=>"SAMPLE-AES"===e)&&!b.every(e=>e===lE))throw GF.warn(`EXT-X-KEY methods ${b.join(", ")} are incompatible.`),new _.H(_.F,4,4044,"Multiple EXT-X-KEY tags with incompatible METHOD values.");
22
- b=a.map(e=>{const f=_.I(e,"KEYFORMAT","identity");{const g=HF[f]||null;e=g?g(e,c):null}e||GF.warn("Unsupported HLS KEYFORMAT",f);return e}).filter(Boolean);if(0===b.length)throw new _.H(_.F,4,4026);return{keyInfo:null,keyId:b.map(e=>e.keyIds).reduce((e,f)=>e.concat(f),[]).reverse()[0]||null,type:pE,drmInfos:b}},yF=function(){return{type:_.xe,keyInfo:null,drmInfos:[],keyId:null}},IF=function(a,b,c){return _.w(function*(){const d=b.f(),e=_.Zy(b.La(),b.ua,b.ua+2048-1,a.a.attemptParameters);e.type=2;
23
- const f=_.Zy(b.La(),b.ua,b.ia,a.a.attemptParameters);f.type=2;d&&(f.keyInfo=d);try{return yield a.f(c?f:e)}catch(g){if(7001===g.code||c)throw g;a.h.warn("Unable to fetch a partial HLS segment! Falling back to a full segment request, which is expensive! Your server should support Range requests and CORS pre-flights.",e.uris[0]);try{return yield a.f(f)}catch(h){throw a.h.error("Failed to fetch media segment to parse its start timestamp.",f.uris[0],h),new _.H(_.F,4,4030,"Failed to fetch the media segment.");
24
- }}})},JF=function(a,b,c,d,e,f){return _.w(function*(){a.h.debug("Fetching segment to find start time");if("audio/mpeg"===d||d===_.Gc||d===_.Fc)return 0;if(d===_.Ec){var g=yield IF(a,c,f);const h=_.J(g.data);return mF(h)?nF(h):qF(g.data)}if(d===_.Yf||d===_.Hc)return g=[IF(a,c,f)],b&&g.push(IF(a,b,!0)),g=yield Promise.all(g),oF(g[0].data,(g[1]||g[0]).data);if(d===_.Xf)return g=yield IF(a,c,f),qF(g.data);if(!_.pp(`${d.split("/")[0]||""}/mp4;codecs="${e}"`))return 0;throw new _.H(_.F,4,4030);})},KF=function(a,
25
- b){a=a.map(c=>c.streams[b]);return a.some(c=>null==c)?null:a},WE=function(a,b){a.streams.forEach(c=>{c.codecs=b.join(",")})},LF=function(a,b){a=a.streams.find(c=>{c=c.S;return c[0].position<=b&&b<=c[c.length-1].position});return null==a?null:a.S.find(c=>c.position===b)||null},TE=function(a){return a.streams[0]},MF=function(a,b){a.streams.forEach(c=>{c.Dd=b})},NF=function(a,b){a.streams.forEach(c=>{c.width=b})},OF=function(a,b){a.streams.forEach(c=>{c.height=b})},PF=function(a,b){a.streams.forEach(c=>
26
- {c.frameRate=b})},QF=function(a,b){a.streams.forEach(c=>{c.bandwidth=b})},RF=function(a,b){a=a.map(c=>c.a[b]);return a.some(c=>null==c)?null:a},SF=function(a,b){const c=new Set(a.map(d=>d.da));return b.filter(d=>!c.has(d.da))},VF=function(a,b){for(;a[0].da<b[0].da;)a.splice(0,1);var c=a[0];let d=b[0];TF(c,d)||UF(c,d);const e=a.length-1;c=a[e];d=b[e];0<e&&!TF(c,d)&&UF(c,d);for(c=e+1;c<b.length;)a.push(b[c]),c++},WF=function(a,b){const c=a[a.length-1];var d=b.findIndex(f=>f.da===c.da);const e=b[d];
27
- TF(c,e)||UF(c,e);for(d+=1;d<b.length;d++)a.push(b[d])},aG=function(a,b,c,d){var e=a[0].length();e=lF(e).map(f=>{var g=RF(a,f)||[];const h=KF(b,f)||[];{f=KF(c,f)||[];const k=[...XF(g),...h,...f].filter(Boolean);YF(k);const {da:l,duration:m}=k[0];g={variants:g,textStreams:h,thumbStreams:f,startTime:0,id:`P${l}`,endTime:m,duration:m,da:l}}return g});d&&ZF(e[0]);$F(e);return e},XF=function(a){a=new Set(a.flatMap(b=>[b.video,b.audio]).filter(Boolean));return Array.from(a)},ZF=function(a){const b=XF(a.variants)[0].S[0].wa;
28
- a.startTime+=b;a.endTime+=b},$F=function(a){for(let b=0;b<a.length;b++){const c=a[b],d=a[b-1];c.startTime=d?d.endTime:c.startTime;c.endTime=c.startTime+c.duration}},TF=function(a,b){return a.startTime===b.startTime&&a.endTime===b.endTime},UF=function(a,b){a.startTime=b.startTime;a.endTime=b.endTime;a.duration=b.duration;bG(a.variants,b.variants);cG(AE(a),AE(b))},bG=function(a,b){const c=new Map(a.map(d=>[QE(d),d]));b.forEach(d=>{c.get(QE(d)).drmInfos=d.drmInfos})},cG=function(a,b){const c=new Map(a.map(d=>
29
- [d.xa,d]));b.forEach(d=>{const e=c.get(d.xa);e.S=d.S;e.segmentIndex.replace(d.S);e.Cc=d.Cc;e.$d=d.$d;e.duration=d.duration;e.Pe=d.Pe;e.encrypted=d.encrypted;e.drmInfos=d.drmInfos;e.keyId=d.keyId})},YF=function(a){const b=dG(a);a.forEach(c=>{_.Vy(c.segmentIndex,b);c.duration=b;c.$d=c.Cc+b})},dG=function(a){let b=Infinity;a.filter(DE).forEach(c=>{b=Math.min(b,c.duration)});return b},eG=function(a,b){BE(b,(c,d)=>{_.gz(a,c.S,d.startTime)});_.$y(a.a,b[0].startTime,b[b.length-1].endTime)},fG=function(a){return null===
30
- a.j?[]:[a.j.audio,a.j.video].filter(b=>b).map(b=>b.xa)},gG=function(a,b){return _.w(function*(){var c=_.zi([b],a.a.attemptParameters);c.type=1;c=yield a.C(c);let d="";try{d=_.Wh(c.data)}catch(e){throw new _.H(_.F,4,4042);}d=d.replace(/\r\n|\r(?=[^\n]|$)/gm,"\n");d=d.trim();return{text:d,response:c}})},lG=function(a,b){return _.w(function*(){var c=hG(a,b,a.w,"");if(1===c.type){c=_.$r(c.S[0].a)||"";c=null!=_.Zr.video[c]?_.u:null!=_.Zr.audio[c]?_.p:null;var d="";c===_.u?d="avc1.42E01E":c===_.p&&(d="mp4a.40.2");
31
- {c=a.J;var e=a.w;d=a.a.hlsDefaultCodecs||d;var f=[];const q=[];q.push(new _.si(_.la,"0"));q.push(new _.si(_.Hb,e));d.length&&q.push(new _.si(_.na,d));f.push(new _.ti(c.f++,hE,q));c=new eF(e,0,f)}}d=c.X;c=uE(d,"EXT-X-MEDIA");e=uE(d,hE);d=uE(d,"EXT-X-IMAGE-STREAM-INF");c={Bc:{Pf:vE(c,["AUDIO",_.Ob]),closedCaptions:vE(c,eE),Zg:vE(c,mE)},cd:e,Sd:d};const {periods:g,qf:h,Bf:k}=yield iG(a,c);if(!a.D)throw new _.H(_.F,7,7001);e=SE(g[0]);jG(a,g);c=!0;d=null;f=0;kG(a)||(c=!1,d=0,f=e.delay);d=new _.UD(a.a.timeline||
32
- {},d,f,!0,void 0,!!a.a.lowLatencyMode);_.cz(d,c);eG(d,g);h&&(d.I={offsetDateTime:h-_.bz(d),seekRangeStartDateTime:h});c=d;if(!kG(a)){a.H=e.jc;e=0;for(var l of a.f.values())e=Math.max(e,l.streams[0].Cc);for(l=0;95443.7176888889<=e;)l+=95443.7176888889,e-=95443.7176888889;if(l){a.h.debug("Offsetting live streams by",l,"to compensate for rollover");for(var m of a.f.values())e=m.streams[0],95443.7176888889>e.Cc?(a.h.debug("Offset applied to",e.type),e.segmentIndex.offset(l)):a.h.debug("Offset NOT applied to",
33
- e.type)}}m=PE(g);"LIVE"===a.l||"EVENT"===a.l?(m=Math.max(m,c.H),isNaN(a.a.availabilityWindowOverride)||(m=a.a.availabilityWindowOverride),c.w=m):a.l===_.Tx&&(c.g=m);if(k)for(var n of k)a.D.onTimelineCueAdded({schemeIdUri:n.schemeIdUri,Pa:n.Pa,value:"",startTime:n.startTime,endTime:n.endTime,id:n.id,type:_.Zg,eventElement:null});n={presentationTimeline:c,adaptedPeriods:[...g],periods:g,minBufferTime:0};a.h.debug("HLS playlist parsed",n);return n})},nG=function(a,b){return Promise.all(b.map(c=>mG(a,
34
- c)))},pG=function(a,b){b.forEach(c=>{a:{var d=a.f.get(c.a),e=!kG(a),f=xE(c.X,_.Ba);if(f)var g=Number(f.value);else{d?(f=d.streams[d.streams.length-1].S,f=f[f.length-1].da):f=0;if(e&&0<f)try{{const k=xE(c.X,_.Fa);if(!k)throw oG.error("Failed to infer discontinuity number, because EXT-X-MEDIA-SEQUENCE tag is missing."),Error(iE);const l=Number(k.value),m=LF(d,l);if(!m)throw oG.error("Failed to infer discontinuity number, could not find the appropriate segment in the previous playlist"+` (segment position = ${l})`),
35
- Error(iE);var h=m.da}g=h;break a}catch(k){throw new _.H(_.F,4,4024,"EXT-X-DISCONTINUITY-SEQUENCE tag is required for discontinuous HLS live streams.");}g=0}}c=c.S||[];for(const k of c)wE(k.X,_.Aa)&&g++,k.da=g});uF(b)},sG=function(a,b){return _.w(function*(){const {textStreams:c,thumbStreams:d,Qf:e}=yield qG(a,b);var f=a.o.periods[0].variants;a.a.lowLatencyMode&&null!==a.j&&(f=f.filter(g=>g.id===a.j.id));f=f.map(g=>{const h=YE(g.audio,e),k=YE(g.video,e);g=rG(a,h,k,g.bandwidth);if(!g)throw new _.H(_.F,
36
- 4,4047,{message:"Video and audio are encrypted in an incompatible way.",Dh:k?TE(k).xa:void 0,audio:h?TE(h).xa:void 0});return g});return aG(f,c,d,!0)})},jG=function(a,b){kG(a)||2!==a.a.timeline.version||(a.F||(a.F=b[0].startTime),rF(b,-a.F))},tG=function(a,b,c){a.l=_.Tx;_.cz(b,!0);b.g=c[c.length-1].endTime},hG=function(a,b,c,d){a=jF(a.J,b,c);a.a=d;uG(a);return a},iG=function(a,b){return _.w(function*(){var c=VE(b.Bc.closedCaptions),d=vG(a,b.cd),e=yield wG(a,b);const f=Object.values(e).flat().map(h=>
37
- h.Ga);pG(a,f);var g=yield xG(a,e.Ge,d);c=yield yG(a,e.cd,g,c);d=yield zG(a,e.Yg,d);g=yield AG(a,e.Sd);e=BG(a,e);c=aG(c,d,g,!kG(a));a.D.filterAllPeriods(c);return kG(a)?(d=null,e&&(d=CG(f,e)),{periods:c,qf:null,Bf:d}):{periods:c,qf:e,Bf:null}})},qG=function(a,b){return _.w(function*(){const c=g=>TE(g.stream).type===_.u||TE(g.stream).type===_.p;var d=b.filter(c),e=b.filter(g=>!c(g)),f=g=>{g=g.map(h=>{var k=TE(h.stream);k={language:k.language,channelsCount:k.channelsCount,spatialAudio:k.spatialAudio,
38
- closedCaptions:k.closedCaptions,primary:k.primary,kind:k.kind||null,groupId:k.groupId,type:k.type,codecs:k.codecs,name:k.originalId,uri:k.xa,Bd:{width:k.width,height:k.height,frameRate:k.frameRate}};h=Object.assign({},{Ga:h.Ga},k);return DG(a,h)});return Promise.all(g)};d=yield f(d);f=yield f(e);EG(a,d.concat(f));e=f.filter(g=>TE(g).type===_.ky);f=f.filter(g=>TE(g).type===_.Yd);return{textStreams:e,thumbStreams:f,Qf:d}})},rG=function(a,b,c,d){const e=[],f=(c||b).length();for(let m=0;m<f;m++){var g=
39
- b?b.streams[m]||null:null,h=c?c.streams[m]||null:null,k=g,l=h;k=k&&l?_.Hy(k.drmInfos,l.drmInfos)?_.Gy(k.drmInfos,l.drmInfos):null:k?k.drmInfos:l?l.drmInfos:null;if(!k)return null;l=d;g={id:a.M++,language:g?g.language:_.If,primary:!!g&&g.primary||!!h&&h.primary,audio:g,video:h,bandwidth:l,drmInfos:k,allowedByApplication:!0,allowedByKeySystem:!0};e.push(g)}return new FG(e)},DG=function(a,b){return _.w(function*(){const c=b.Ga,d=b.codecs,e=b.type,f=b.Sc,g=b.groupId,h=b.primary;var k=b.kind;const l=b.name,
40
- m=b.channelsCount,n=b.spatialAudio,q=b.closedCaptions,t=b.Bd,v=_.Jh(f||_.If);if(1!==c.type)throw new _.H(_.F,4,4017);var y=EE(c.X,null==a.o);a.l=y;const A=RE(c.X,y,a.a.lowLatencyMode||!1,a.a.suggestedPresentationDelay);y=yield GG(a,c,e,d);const D=a.a.lowLatencyMode?_.RB:_.ay;let E=k;e!==_.G||k||(E=_.ky);const {gd:O}=JE(c.X);k=y.map(bb=>{const Lb=bb.S,bd=bb.ag,Nf=bb.mimeType;bb=bb.da;const Ua=Lb[0].startTime,Xd=Lb[Lb.length-1].endTime,xc=Xd-Ua,ea=new _.VD(Lb),Za=Lb[0].initSegment||null;return{id:_.WD++,
41
- originalId:l,createSegmentIndex:Promise.resolve.bind(Promise),findSegmentPosition:ea.f.bind(ea),getSegmentReference:ea.get.bind(ea),adjustSegmentDurations:ea.g.bind(ea),getDuration:ea.getDuration.bind(ea),segmentIndex:ea,segmentLookupStrategy:D,initSegmentReference:Za,mimeType:Nf,codecs:d,kind:E,Pe:bd.type,encrypted:bd.type===pE,keyId:bd.keyId,language:v,originalLanguage:f||_.If,label:l,type:e,primary:h,trickModeVideo:null,emsgSchemeIdUris:null,frameRate:t?t.frameRate:void 0,width:t?t.width:void 0,
42
- height:t?t.height:void 0,bandwidth:void 0,roles:[],channelsCount:m,spatialAudio:n,closedCaptions:q,keyInfo:bd.keyInfo,S:Lb,drmInfos:bd.drmInfos,da:bb,xa:c.a,Dd:c.f,Cc:Ua,$d:Xd,duration:xc,gd:O,groupId:g,xg:A}});return new HG(k)})},EG=function(a,b){b.forEach(c=>{a.f.a.set(TE(c).xa,c)})},vG=function(a,b){const c=new Map;for(const f of b){var d=_.I(f,"AUDIO");b=_.I(f,_.Ob);var e=_.I(f,mE);const g=IG(a,f);if(e){const h=_.gj(_.G,g);c.set(e,h);e=g.indexOf(h);-1<e&&g.splice(e,1)}d&&(e=JG(_.p,g),c.set(d,
43
- e));b&&(d=JG(_.u,g),c.set(b,d))}return c},wG=function(a,b){return _.w(function*(){const c=yield Promise.all([KG(a,b.Bc.Pf),KG(a,b.Bc.Zg),KG(a,b.cd),KG(a,b.Sd)]),[d,e,f,g]=c;return{Ge:d,Yg:e,cd:f,Sd:g}})},xG=function(a,b,c){return _.w(function*(){if(0===b.length)return new Map;var d=[LG(a,b[0],c)];yield d[0];d=d.concat(b.slice(1).map(e=>LG(a,e,c)));d=yield Promise.all(d);return UE(d)})},yG=function(a,b,c,d){return _.w(function*(){const e=new Set;var f=[...b];let g=0;var h=Infinity;for(let k=0;k<f.length;++k){const l=
44
- Number(rE(f[k].tag,_.la));l<h&&(h=l,g=k)}h=f.splice(g,1).pop();h=yield MG(a,h,c,d,e);f=f.map(k=>MG(a,k,c,d,e));f=yield Promise.all(f);f.splice(g,0,h);return f.reduce(_.xy,[])})},zG=function(a,b,c){return Promise.all(b.map(d=>LG(a,d,c)))},AG=function(a,b){return Promise.all(b.map(c=>NG(a,c)))},BG=function(a,b){b=[...b.cd,...b.Ge].map(d=>d.Ga).flatMap(d=>d.S[0].X);b=xE(b,_.Ka);if(!b)return null;const c=(new Date(b.value)).getTime();return isNaN(c)?(a.h.warn("Failed to parse EXT-X-PROGRAM-DATE-TIME tag "+
45
- `value (value: ${b.value}).`),null):c/1E3},kG=function(a){return a.l===_.Tx},CG=function(a,b){return(a=a.find(c=>null!==xE(c.X,_.za)))?a.X.filter(c=>c.name===_.za).map(c=>{a:{var d=_.I(c,"ID"),e=_.I(c,"START-DATE");if(null===d||null===e)_.cs.warn("Invalid EXT-X-DATERANGE missing mandatory ID or START-DATE attribute, ignoring the EXT-X-DATERANGE tag.",c),c=null;else{var f=new Date(e);e=f.getTime()/1E3-b;d={id:d,startTime:e,startDate:f};var g=tE(_.I(c,gE));void 0!==g&&0<=g&&(d.duration=g);var h=tE(_.I(c,
46
- "PLANNED-DURATION"));void 0!==h&&0<=h&&(d.plannedDuration=h);var k=_.I(c,"CLASS");null!==k&&(d.schemeIdUri=k);var l=_.I(c,"END-DATE");l=l?new Date(l):null;null!==l&&l.getTime()>=f.getTime()&&(d.endDate=l);{const q=c.attributes;if(null==q)var m=null;else{f={};for(m of q)m.name.startsWith("X-")&&(f[m.name]=m.value);m=_.Ag(f)?f:null}}m=m||{};if(k===_.qd){f=c.attributes;if(null==f)var n=null;else{k={};for(n of f)switch(n.name){case _.Ub:k[_.Ub]=n.value;break;case _.Tb:k[_.Tb]=n.value;break;case _.Wb:k[_.Wb]=
47
- tE(n.value);break;case _.Vb:k[_.Vb]=tE(n.value);break;case "X-SNAP":k["X-SNAP"]=n.value.split(",");break;case "X-RESTRICT":k["X-SNAP"]=n.value.split(",")}k[_.Ub]&&k[_.Tb]||!k[_.Ub]&&!k[_.Tb]?(_.cs.warn("Invalid EXT-X-DATERANGE Interstitial attributes X-ASSET-URI, X-ASSET-LIST"),n=null):n=_.Ag(k)?k:null}if(null===n){_.cs.warn("Invalid interstitial attributes, ignoring the EXT-X-DATERANGE tag.",c);c=null;break a}m=Object.assign(m,n)}_.Ag(m)&&(d.Pa=m);d.endTime=l?l.getTime()/1E3:g?e+g:h?e+h:e;d.type=
48
- "hls-daterange";c=d}}return c}).filter(Boolean):null},KG=function(a,b){return _.w(function*(){return(yield Promise.all(b.map(c=>_.w(function*(){const d=yield OG(a,c);return d?{tag:c,Ga:d}:null})))).filter(Boolean)})},mG=function(a,b){return _.w(function*(){var c=new _.vh(TE(b).Dd);if(a.a.lowLatencyMode&&TE(b).gd){var d=b.streams[b.streams.length-1].segmentIndex;if(d=d.a[d.a.length-1]){var e=d.a,f=e.length-1;d={Ag:d.position,Gg:e&&0<e.length?f:null}}else d=null;if(e=d)d=e.Ag,e=e.Gg,f=_.Ti(c.a.toString()),
49
- f._HLS_msn=d.toString(),null===e&&f._HLS_part&&delete f._HLS_part,null!==e&&(f._HLS_part=e.toString()),d=_.Si(f,!0),d=new _.Ch(d),_.yh(c,d)}const {response:g,text:h}=yield gG(a,c.toString());c=TE(b).xa;d=TE(b).Dd;e=g.uri;d!==e&&(d=e,MF(b,d));c=hG(a,h,d,c);return{stream:b,Ga:c}})},IG=function(a,b){var c=_.I(b,_.na,a.a.hlsDefaultCodecs||"avc1.42E01E,mp4a.40.2").split(/\s*,\s*/);b=new Set;const d=[];for(const e of c)c=_.Ly(e)[0],b.has(c)?a.h.debug("Ignoring duplicate codec"):(d.push(e),b.add(c));return d},
50
- JG=function(a,b){if(1===b.length)return b[0];a=_.gj(a,b);if(null!=a)return a;throw new _.H(_.F,4,4025,{codecList:b});},LG=function(a,b,c){return _.w(function*(){const d=b.tag,e=b.Ga;return PG(a,e.a,()=>_.w(function*(){const f=rE(d,_.Sa),g=FE(rE(d,_.Fb));var h=rE(d,_.Fb).toUpperCase();if(FE(h)!==_.G)h=null;else{var k=d.getAttribute("FORCED");k=!(!k||!k.value||"YES"!==k.value.toUpperCase());var l=_.ky;h===eE&&(l=_.Yx);k&&(l=_.Rd);h=l}k=c.get(f)||"";l=_.I(d,_.$a);const m=_.I(d,"NAME"),n=d.getAttribute("DEFAULT"),
51
- q=d.getAttribute("AUTOSELECT");var t=_.I(d,"CHANNELS");t=g===_.p?t?parseInt(t.split("/")[0],10):null:null;var v=g===_.p?(v=_.I(d,"CHANNELS"))?v.includes("/JOC"):!1:!1;return yield DG(a,{Ga:e,codecs:k,type:g,Sc:l,primary:!!n&&!!q,name:m,channelsCount:t,spatialAudio:v,groupId:f,kind:h,closedCaptions:null,Bd:null})}))})},NG=function(a,b){return _.w(function*(){const c=b.tag,d=b.Ga;return PG(a,d.a,()=>_.w(function*(){var e=_.I(c,_.na)||"jpg",f=_.I(c,_.$a);const g=_.I(c,"NAME");e=yield DG(a,{Ga:d,codecs:e,
52
- type:_.Yd,Sc:f,name:g,primary:!1,kind:null,channelsCount:null,spatialAudio:!1,closedCaptions:null,groupId:null,Bd:null});(f=_.I(c,_.la))&&QF(e,Number(f));return e}))})},MG=function(a,b,c,d,e){return _.w(function*(){var f=b.tag,g=Number(rE(f,_.la));if(null!=f.getAttribute("FRAME-RATE")||null!=f.getAttribute(_.vb)){var h=_.I(f,"FRAME-RATE");f=_.I(f,_.vb);var [k,l]=f?f.split("x"):[null,null];h={frameRate:tE(h),width:tE(k),height:tE(l)}}else h=null;if(f=yield QG(a,b,h,c,d)){h=f.video;f=f.audio;var m=
53
- 0<f.length?f:[null];h=0<h.length?h:[null];f=[];for(const n of m)for(const q of h){m=(q?TE(q).xa:"")+" - "+(n?TE(n).xa:"");if(e.has(m)){a.h.debug("Skipping variant which only differs in text streams.");continue}const t=rG(a,n,q,g);null==t?a.h.warn("Incompatible DRM info in HLS variant. Skipping."):(f.push(t),e.add(m))}g=f}else g=[];return g})},QG=function(a,b,c,d,e){return _.w(function*(){var f=b.tag,g=b.Ga;let h=IG(a,f);var k=_.I(f,"AUDIO"),l=_.I(f,_.Ob),m=k||l;m=m&&d.has(m)?d.get(m):[];k={audio:k?
54
- m:[],video:l?m:[]};a.h.debug("Guessing stream type for",f.toString());f=!1;const n=g.a;g=k.audio.find(q=>q.xa===n);l=_.gj(_.u,h);l=c||l;1!==h.length||l?!m.length&&1<h.length?(a.h.debug("Guessing multiplexed audio+video"),g=_.u,h=[h.join(",")]):k.audio.length&&g?(a.h.debug(jE),g=_.p,f=!0):k.video.length?(a.h.debug(jE),g=_.p):(a.h.debug("Guessing video-only"),g=_.u):(g=_.p,a.h.debug(jE));l=null;f||(l=yield RG(a,b,h,g,e,c));if(null==l)return null;k[g]=[l];g===_.p&&c&&m.forEach(q=>{NF(q,c.width);OF(q,
55
- c.height);PF(q,c.frameRate)});XE(k);return k})},RG=function(a,b,c,d,e,f){return _.w(function*(){const g=b.tag,h=b.Ga;return PG(a,h.a,()=>_.w(function*(){var k=_.I(g,eE);let l=null;d===_.u&&k&&"NONE"!==k&&(l=e.get(k));k=JG(d,c);return yield DG(a,{Ga:h,codecs:k,type:d,closedCaptions:l,primary:!1,kind:null,Sc:null,name:null,channelsCount:null,spatialAudio:!1,groupId:null,Bd:f})}))})},PG=function(a,b,c){if(a.f.has(b))return a=a.f.get(b),Promise.resolve(a);if(a.f.f.has(b))return a.f.f.get(b)||null;c=c();
56
- a.f.set(b,c);return c},GG=function(a,b,c,d){return _.w(function*(){var e=b.a,f=b.S;var g=void 0===g?0:g;var h=(h=xE(b.X,_.Fa))?Number(h.value):g;g=[];!kG(a)&&CF(f);e=yield SG(a,b.f,e,f,h,c,d);if(0===f.length)f=[];else{var k=[],l=[];for(var m of f)wE(m.X,_.Aa)&&0<l.length&&(k.push(l),l=[]),l.push(m);k.push(l);f=k}for(m=0;m<f.length;m++)k=f[m],l=yield TG(a,b.f,k,h,e,c,d,g[g.length-1]||null,f.length),g.push(l),h+=k.length;UG(g);return g})},OG=function(a,b){return _.w(function*(){var c="EXT-X-MEDIA"!==
57
- b.name?!0:_.I(b,_.Fb)===mE;c=_.I(b,_.Hb,void 0,{required:c});if(!c)return null;const d=zE(a.w,c),{response:e,text:f}=yield gG(a,d);return hG(a,f,e.uri,c)})},uG=function(a){1===a.type&&a.S.forEach((b,c)=>{if(wE(b.X,_.Ea)&&!wE(b.X,_.Aa)&&0<c)throw new _.H(_.F,4,4046,"Media playlist contains an EXT-X-MAP tag not accompanied by an EXT-X-DISCONTINUITY tag.");})},UG=function(a){if(1<(new Set(a.map(b=>b.mimeType))).size)throw new _.H(_.F,4,4045,"Media playlist contains discontinuities with different MIME types. This is valid, but not yet supported.");
58
- },VG=function(a){a=a.map(b=>b.a?b.a:b.f.map(c=>_.I(c,_.Hb))||null).map(b=>_.$r(b));if(1<(new Set(a)).size)throw new _.H(_.F,4,4044,"Unexpected change in file format.");},WG=function(a,b,c){a=uE(a.X,_.Ea);if(1<a.length)throw new _.H(_.F,4,4020);a=a[0];if(!a)return null;const d=rE(a,_.Hb),e=zE(b,d);b=KE(a,null,!0);return new _.RD(()=>[e],b.ua,b.ia,c)},XG=function(a,b,c,d,e,f,g){const h=[];for(const q of _.Ey(b.f)){b=q.af;const t=q.item;{var k=0===b,l=k?a:h[h.length-1],m=k?d:l.endTime,n=Number(_.I(t,
59
- gE));n=m+n;k=KE(t,k?null:l.ia,k);l=_.I(t,_.Hb);const v=(l=zE(g,l))?[l]:[];m=new LE(c,m,n,()=>v,k.ua,k.ia,e,f,!1,null,null,null,null);if("YES"===_.I(t,"INDEPENDENT")||0===b)m.g=!0;h.push(m)}}return h},YG=function(a,b,c,d,e,f,g,h,k,l,m){const n=c.X;var q=c.a;const t=null!=q,v=q?[q]:[];if(!t&&!a.a.lowLatencyMode)return null;a=0;q={ua:0,ia:null};let y=null;t?({duration:c}=IE(n),a=e+c,q=HE(n,b?b.ia:null)):(b=XG(b,c,d,e,f,g,k),a=b[b.length-1].endTime,y=b);h=h===_.Yd?yE(n):null;d=new LE(d,e,a,()=>v,q.ua,
60
- q.ia,f,g,!1,null,h?h.Ze:null,h?h.Df:null,h?h.durationPerTile:null,y);d.da=l;d.initSegment=m||void 0;return d},SG=function(a,b,c,d,e,f,g){return _.w(function*(){var h=d[0];if(null!=a.B)return a.B;if(!kG(a)&&a.o)try{var k=a.f.get(c);var l=k?LF(k,e)||null:null;if(!l)throw new _.H(_.F,4,4030,"Segment not found in pervious playlist update.");var m=l.startTime+l.wa;a.h.debug(`Setting playlist start time to ${m}.`);return a.B=m}catch(n){if(h=a.f.get(c))m=h.streams[h.streams.length-1].S,m=m[m.length-1],a.h.warn(`Last #EXT-X-MEDIA-SEQUENCE values ${h.streams[0].S[0].position} - ${m.position}`+
61
- `, new values ${e} - ${e+d.length-1}.`,b,h);throw new _.H(_.F,4,4047,{message:"The updated playlist does not share any segments with the previous one.",uri:c});}m=yield ZG(a,f,g,h);k=DF(h.X,a.w,m)||yF();l=WG(h,b,k.keyInfo);k=NE(k.keyInfo,e);h=yield $G(a,l,h,k,m,g);a.h.debug(`Setting playlist start time to ${h}.`);return a.B=h})},TG=function(a,b,c,d,e,f,g,h,k){return _.w(function*(){var l=c[0],m=null==h;VG(c);const n=yield ZG(a,f,g,l);var q=a.w,t=h?h.wg:null;var v=1===k;if(c.slice(1).some(BF))throw new _.H(_.F,
62
- 4,4046,v?"Media playlist contains an EXT-X-KEY tag with METHOD\x3dAES-128 which is not at the beginning of the playlist.":"Media playlist contains an EXT-X-KEY tag with METHOD\x3dAES-128 which is not marked by an EXT-X-DISCONTINUITY tag and is not at the beginning of the playlist.");if(wE(c[0].X,_.Da)||null===t)if((t=DF(c[0].X,q,n))&&t.type===qE){if(1<FF(c))throw new _.H(_.F,4,4046,nE+`${v?"playlist":"discontinuity"}.`);v=[t]}else v=EF(c,q,n),v=0===v.length?[yF()]:v;else if(q=EF(c,q,n),t.type===_.xe||
63
- t.type===pE)v=[t,...q];else{if(0<FF(c))throw new _.H(_.F,4,4046,nE+`${v?"playlist":"discontinuity"}.`);v=[t]}q=v;v=q[q.length-1];q=zF(q);t=WG(l,b,q.keyInfo)||(h?h.sg:null);var y=NE(q.keyInfo,d);const A=l.da;l=m?e:yield aH(a,A,t,l,d,y,n,g);m=[];for(y=0;y<c.length;y++){var D=c[y];const E=m[m.length-1]||null,O=0===y?0:E.endTime,bb=d+y,Lb=NE(q.keyInfo,bb);(D=YG(a,E,D,bb,O,l,Lb,f,b,A,t))&&m.push(D)}return{S:m,ag:q,wg:v,mimeType:n,endTime:m[m.length-1].endTime,da:A,sg:t}})},ZG=function(a,b,c,d){return _.w(function*(){const e=
64
- d.a;var f=xE(d.X,_.Ea);f=f?rE(f,_.Hb):null;return bH(a,b,c,e,f)})},$G=function(a,b,c,d,e,f){return _.w(function*(){if(null==c.a)return 0;const g=ME(c,d);return JF(a.K,b,g,e,f,null!=d)})},aH=function(a,b,c,d,e,f,g,h){return _.w(function*(){if(a.G.has(b))return a.G.get(b);const k=yield $G(a,c,d,f,g,h);a.h.debug(`Segment #${e} has raw media timestamp `+`${k} s.`);a.G.set(b,k);return k})},bH=function(a,b,c,d,e){return _.w(function*(){const f=[d,e].filter(Boolean);var g=_.jj(f,b,c);if(g)return g;g=_.zi([d],
65
- a.a.attemptParameters);g.method="HEAD";g.type=2;g=(yield a.C(g)).headers["content-type"];if(!g)throw new _.H(_.F,4,4021,"Unknown MIME type of: "+f.join(", "));return g.split(";")[0]})},eF=class{constructor(a,b,c,d){if(1===b){if(!d||0===d.length)throw new _.H(_.F,4,4043,"Media playlist must have at least one segment!");if(null==d[0].a)throw new _.H(_.F,4,4043,"Media playlist must have at least one full segment!");}this.f=a;this.a="";this.type=b;this.X=c;this.S=1===b?d:null}},kF=class{constructor(a,
66
- b,c){c=void 0===c?[]:c;this.X=b;this.a=a;this.f=c;this.da=-1}},LE=class extends _.pz{constructor(a,b,c,d,e,f,g,h,k,l,m,n,q,t){t=void 0===t?[]:t;super(a,b,c,d,e,f,g,void 0===h?null:h,void 0===k?!1:k,void 0===l?null:l,void 0===m?null:m,void 0===n?null:n,void 0===q?null:q,t);this.initSegment=void 0;this.da=0}},cH=class{constructor(){this.f=0;this.a=new Map}},dH=class{constructor(){this.a=new Map;this.f=new Map}set(a,b){this.f.set(a,b);return b.then(c=>this.a.set(a,c)).catch(()=>{}).then(()=>this.f.delete(a))}has(a){return this.a.has(a)}get(a){return this.a.get(a)||
67
- null}values(){return Array.from(this.a.values())}clear(){this.f.clear();this.a.clear()}},oG=new _.R("clpp.hls.DiscontinuityUtils");var HF={"com.apple.streamingkeydelivery":function(a,b){if(b===_.Xf)throw new _.H(_.F,4,4041);if(rE(a,kE)===lE)throw new _.H(_.F,4,4044,"EXT-X-KEY:METHOD SAMPLE-AES-CTR is not supported in FairPlay.");return _.Ay(_.pd,[{initDataType:_.sf,initData:new Uint8Array(0)}],"")},"com.microsoft.playready":xF,"urn:uuid:9a04f079-9840-4286-ab92-e65be0885f95":xF,"urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed":function(a){var b=rE(a,kE);if(!vF.includes(b))return wF.error("Widevine in HLS is only supported with [",
68
- vF.join(", "),"], not",b),null;b=rE(a,_.Hb);b=_.or(b);b=_.J(b.data);b=_.Ay(_.ud,[{initDataType:_.Uc,initData:b}],"");if(a=_.I(a,"KEYID"))b.keyIds=[a.substr(2).toLowerCase()];return b}},vF=["SAMPLE-AES",lE],wF=new _.R("clpp.hls.DrmParser");var GF=new _.R("clpp.hls.EncryptionUtils");var eH=class{constructor(a){this.h=new _.R("clpp.hls.MediaReader");this.f=a;this.a={attemptParameters:_.wi()}}};var HG=class{constructor(a){this.streams=a}length(){return this.streams.length}};var FG=class{constructor(a){this.a=a}length(){return this.a.length}};var fH=class{constructor(){this.a=this.D=null;this.M=1;this.f=new dH;this.w="";this.J=new cH;this.H=0;this.j=null;this.g=new _.zj(()=>{this.Bb()});this.l=_.Tx;this.o=null;this.A=new _.hs;this.B=null;this.h=new _.R("clpp.hls.HlsParser");this.G=new Map;this.K=new eH(this.C.bind(this));this.I=!1;this.F=null}configure(a){this.a=a;this.K.a=a}setCurrentVariant(a){this.j=a}start(a,b){const c=this;return _.w(function*(){if(c.I)throw Error("start() may be called only once!");c.I=!0;c.D=b;const {response:d,
69
- text:e}=yield gG(c,a);c.w=d.uri;const f=yield lG(c,e);c.o=f;const g=c.H;c.g&&0<g&&c.g.ca(g);return f})}stop(){this.g&&(this.g.stop(),this.g=null);const a=[];this.A&&(a.push(this.A.destroy()),this.A=null);this.f.clear();this.o=this.a=this.D=this.j=null;return Promise.all(a)}update(){const a=this;return _.w(function*(){const b=a.o;if(!kG(a)&&b){var c=b.presentationTimeline;"LIVE"===a.l&&(a.B=null);var d=Array.from(a.f.values());if(a.a.lowLatencyMode&&null!==a.j){const f=fG(a);d=d.filter(g=>f.includes(TE(g).xa))}var e=
70
- yield nG(a,d);d=e.map(f=>f.Ga);pG(a,d);e=yield sG(a,e);SF(b.periods,e).forEach(f=>{a.D.filterNewPeriod(f)});jG(a,e);VF(b.periods,e);WF(b.adaptedPeriods,e);eG(c,e);if(CE(d)&&(!0!==a.a.keepTimelineLive&&tG(a,c,e),a.g.stop(),a.g=null,a.D.onTurnedStatic))a.D.onTurnedStatic()}})}Bb(){const a=this;return _.w(function*(){a.h.debug(_.Sx);if(a.D)try{yield a.update();const b=a.H;a.g&&a.g.ca(b)}catch(b){if(!(b instanceof _.H))throw b;a.D&&(a.D.onError(b),1===b.severity&&a.g&&a.g.ca(.1))}})}C(a){if(!this.A)throw new _.H(_.F,
71
- 7,7001);a=this.D.networkingEngine.fetch(a);_.Gi(this.A,a);return a.P}};_.x("clpp.hls.HlsComponent",class extends _.ht{f(){_.Nq.m3u8=fH;_.Lq[_.uk]=fH;_.Lq[oE]=fH}a(){_.wz("m3u8");_.xz(_.uk);_.xz(oE)}id(){return"hls"}});};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 UI="CLOSED-CAPTIONS",VI="Could not parse MP4 segment start time.",WI="DURATION",XI="EXT-X-STREAM-INF",YI="Failed to infer discontinuity number",ZI="Guessing audio-only",$I="METHOD",aJ="SAMPLE-AES-CTR",bJ="SUBTITLES",cJ="Two EXT-X-KEY tags, one with METHOD\x3dAES-128 are applied to one ",dJ="application/vnd.apple.mpegurl",eJ="sample",fJ="whole-segment",gJ=function(a,b){return _.I(a,b,void 0,{required:!0})},hJ=function(a){if(1>a.a)throw _.sl();--a.a},iJ=function(a){if(null!==a&&void 0!==
2
+ a)return Number(a)},jJ=function(a,b){return a.filter(c=>c.name===b)},kJ=function(a,b){const c=Array.isArray(b)?b:[b];return a.filter(d=>{d=gJ(d,_.Jb);return c.includes(d)})},lJ=function(a,b){return a.some(c=>c.name===b)},mJ=function(a,b,c){c=void 0===c?{}:c;a=a.find(d=>d.name===b)||null;if(!a&&c.required)throw new _.H(_.E,4,4024,{missingTag:b});return a},nJ=function(a){var b=mJ(a,"EXT-X-TILES");if(!b)return{bd:1,ud:1,durationPerTile:null};a=_.I(b,"LAYOUT")||"1x1";b=_.I(b,WI);a=_.JB(a);return{bd:a.bd,
3
+ ud:a.ud,durationPerTile:b?Number(b):null}},oJ=function(a,b){return _.EB([a],[b])[0]},pJ=function(a){const b=new Set;a.variants.forEach(c=>{c.audio&&b.add(c.audio);c.video&&b.add(c.video)});a.textStreams.forEach(c=>b.add(c));a.thumbStreams.forEach(c=>b.add(c));return Array.from(b)},qJ=function(a,b){Array.isArray(a)||(a=[a]);a.forEach(c=>{for(const d of pJ(c))b(d,c)})},rJ=function(a){return a.some(b=>lJ(b.ca,_.Ea))},sJ=function(a){return a.type===_.p||a.type===_.w},tJ=function(a,b){const c=mJ(a,_.Ea);
4
+ if(b&&c)return _.Sb;a=mJ(a,_.Ja);if(!a)return"LIVE";if(a.value===_.Sb)return _.Sb;if("EVENT"===a.value)return"EVENT";throw new _.H(_.E,4,4044,`Invalid EXT-X-PLAYLIST-TYPE value: ${a.value}`);},uJ=function(a){a={AUDIO:_.p,VIDEO:_.w,SUBTITLES:_.G,"CLOSED-CAPTIONS":_.G}[a.toUpperCase()];if(!a)throw new _.H(_.E,4,4044,"EXT-X-MEDIA tag has an invalid TYPE attribute.");return a},vJ=function(a,b,c){c=void 0===c?!1:c;var d=0;let e=null;if(a){d=a.split("@");a=Number(d[0]);if(0>=a)throw new _.H(_.E,4,4044,
5
+ "Byte range length must be positive.");if(d[1]){if(d=Number(d[1]),0>d)throw new _.H(_.E,4,4044,"Byte range start byte must not be negative.");}else{if(c)throw new _.H(_.E,4,4044,"Invalid byte range, offset is required but missing.");if(null==b)throw new _.H(_.E,4,4044,"Invalid byte range, cannot calculate offset based on previous byte ranges.");d=b+1}e=d+a-1}return{wa:d,la:e}},wJ=function(a,b){a=mJ(a,_.Aa);return vJ(a?a.value:null,b)},xJ=function(a){a=mJ(a,"EXTINF",{required:!0}).value.split(",");
6
+ return{duration:Number(a[0]),title:a[1]||null}},yJ=function(a,b){b=void 0===b?{}:b;const c={zd:!1,jg:!1,kg:null,Mg:null,Mf:null};a=mJ(a,_.Na,{required:b.Rf});if(!a)return c;const d=e=>null==e?null:Number(e);c.zd="YES"===_.I(a,"CAN-BLOCK-RELOAD");c.jg="YES"===_.I(a,"CAN-SKIP-DATERANGES");c.kg=d(_.I(a,"CAN-SKIP-UNTIL"));c.Mg=d(_.I(a,"HOLD-BACK"));c.Mf=d(_.I(a,"PART-HOLD-BACK",void 0,{required:b.Rf}));return c},zJ=function(a,b,c){c=void 0===c?!1:c;a=_.I(a,"BYTERANGE");return vJ(a,b,c)},BJ=function(a,
7
+ b){const c=wJ(a.ca,null);return new AJ(0,0,0,()=>[a.a],c.wa,c.la,0,b)},CJ=function(a,b){if(null==a)return null;a=Object.assign({},a);null==a.iv&&(a.iv=_.Ei(new Uint8Array(12),new Uint8Array([b>>24&255,b>>16&255,b>>8&255,b&255])));return a},DJ=function(a){let b=Infinity,c=Infinity;pJ(a).filter(sJ).forEach(d=>{{d=d.V;var e=d[0].startTime;const f=d[d.length-1].endTime;d=e;e=f-e}b=Math.min(b,d);c=Math.min(c,e)});return{Lc:b,duration:c}},EJ=function(a){return a.map(b=>{({duration:b}=DJ(b));return b}).reduce((b,
8
+ c)=>b+c,0)},FJ=function(a){return(a.video?a.video.Ha:"")+" - "+(a.audio?a.audio.Ha:"")},GJ=function(a,b,c,d){if(b===_.Sb)return{delay:0,wc:0};b=mJ(a,_.Ia);if(c&&b){c=Number(gJ(b,"PART-TARGET"));if(null!=d)return{delay:d,wc:c};({Mf:d}=yJ(a,{Rf:!0}));return{delay:d,wc:c}}a=mJ(a,_.Pa,{required:!0});a=Number(a.value);return null!=d?{delay:d,wc:a}:{delay:3*a,wc:a}},HJ=function(a){const b=[];qJ(a,c=>{b.push(c.Sg)});return{delay:Math.max(...b.map(c=>c.delay)),wc:Math.min(...b.map(c=>c.wc))}},JJ=function(a){const b=
9
+ new Map;a.forEach(c=>{var d=IJ(c).groupId;b.has(d)?(d=b.get(d),d.includes(c)||d.push(c)):b.set(d,[c])});return b},KJ=function(a){const b=new Map;for(const c of a){a=_.I(c,_.ab);a=_.Yh(a||_.Wf);const d=gJ(c,_.Ua),e=gJ(c,"INSTREAM-ID");b.has(d)||b.set(d,new Map);b.get(d).set(e,a)}return b},MJ=function(a){a=a.audio.concat(a.video);for(const b of a)a=IJ(b).codecs.split(",").filter(c=>"mp4a.40.34"!==c),LJ(b,a)},NJ=function(a,b){if(!a)return null;const c=a.Ha;return b.find(d=>IJ(d).Ha===c)||null},OJ=function(a){for(const b of a)if(b.startsWith("#EXT-")&&
10
+ (a=_.Ji(0,b),_.Bs.has(a.name)))return 1;return 0},PJ=function(a){a=jJ(a,"EXT-X-DEFINE").map(b=>{const c=_.I(b,"NAME");if(!c)return null;b=gJ(b,"VALUE");return{name:c,value:b}}).filter(Boolean);return new Map(a.map(b=>[b.name,b.value]))},QJ=function(a,b){return a.replace(/\{\$([a-zA-Z0-9_-]+)\}/g,(c,d)=>{c=b.get(d);if(null==c)throw new _.H(_.E,4,4044,`Undefined variable '${d}'`);return c})},RJ=function(a,b){a.forEach(c=>{c.attributes.forEach(d=>{d.value=QJ(d.value,b)})})},SJ=function(a,b,c){RJ(a,c);
11
+ b.forEach(d=>{RJ(d.ca,c)})},VJ=function(a,b,c){const d=[];for(let e=1;e<b.length;e++){const f=TJ(a,b[e]);d.push(f);if(f.name===XI){const g=b[e+1];if(!g)throw new _.H(_.E,4,4044,"EXT-X-STREAM-INF is not followed by a URI.");f.attributes.push(new _.Hi(_.Lb,g));e++}}a.a=PJ(d);SJ(d,[],a.a);return new UJ(c,0,d)},YJ=function(a,b,c){let d=[];for(var e=1;e<b.length;){const f=TJ(a,b[e]);if(_.Cs.has(f.name))break;d.push(f);e++}b=WJ(a,c,b.slice(e));e=b.V;d=d.concat(b.ca);a=XJ(a,d);SJ(d,e,a);return new UJ(c,
12
+ 1,d,b.V)},ZJ=function(a,b,c){b=b.trim().split(/\n+/m).map(d=>d.trim()).filter(d=>d.length&&!/^#(?!EXT)/m.test(d));if(!/^#EXTM3U($|[ \t\n])/m.test(b[0]))throw new _.H(_.E,4,4015);return 0===OJ(b)?VJ(a,b,c):YJ(a,b,c)},TJ=function(a,b){return _.Ji(a.f++,b)},WJ=function(a,b,c){const d=[],e=[];let f=[],g=[];c.forEach(h=>{/^(#EXT)/.test(h)?(h=TJ(a,h),_.Bs.has(h.name)||_.Es.has(h.name)?d.push(h):_.Ds.has(h.name)?"EXT-X-PART"===h.name?g.push(h):h.name===_.La&&"PART"===_.I(h,_.Jb)&&g.push(h):f.push(h)):/^#(?!EXT)/m.test(h)||
13
+ (h=oJ(b,h.trim()),e.push(new $J(h,f,g)),f=[],g=[])});0<g.length&&e.push(new $J(null,f,g));return{V:e,ca:d}},XJ=function(a,b){const c=jJ(b,"EXT-X-DEFINE"),d=PJ(b);c.map(e=>_.I(e,"IMPORT")).filter(Boolean).forEach(e=>{const f=a.a.get(e);if(null==f)throw new _.H(_.E,4,4044,`Cannot import variable '${e}' as it is not defined `+"in the master playlist");d.set(e,f)});return d},aK=function(a){return 0>a?[]:Array.from({length:a},(b,c)=>c)},bK=function(a,b=0){return b+10<=a.length&&73===a[b]&&68===a[b+1]&&
14
+ 51===a[b+2]&&255>a[b+3]&&255>a[b+4]&&128>a[b+6]&&128>a[b+7]&&128>a[b+8]&&128>a[b+9]?!0:!1},cK=function(a){function b(h,k,l){let m="";for(;k<l;k++)m+="%"+("00"+h[k].toString(16)).slice(-2);return m}function c(h){return h[0]<<21|h[1]<<14|h[2]<<7|h[3]}function d(){throw new _.H(_.E,4,4030);}bK(a)||d();let e=10;a[5]&64&&(e=e+4+c(a.subarray(10,14)));do{var f=c(a.subarray(e+4,e+8));1>f&&d();var g=String.fromCharCode(a[e],a[e+1],a[e+2],a[e+3]);if("PRIV"===g){g=a.subarray(e+10,e+f+10);for(let h=0;h<g.byteLength;h++)if(0===
15
+ g[h]){if("com.apple.streaming.transportStreamTimestamp"===unescape(b(g,0,h)))return a=g.subarray(h+1),f=(a[3]&1)<<30|a[4]<<22|a[5]<<14|a[6]<<6|a[7]>>>2,f*=4,f+=a[7]&3,Math.round(f/9E4);break}}bK(a,e)||d();e+=10;e+=f}while(e<a.byteLength);return d()},dK=function(a,b){let c=null,d=0;try{(new _.Hl).L(_.ye,_.Q).L(_.Uf,_.Q).L(_.qe,_.Q).ba("mdhd",g=>{g.reader.skip(0===g.version?8:16);d=_.P(g.reader);g.parser.stop()}).parse(b,!0)}catch(g){c=g}if(c||!d)throw _.au.error("Unable to find timescale in init segment!"),
16
+ new _.H(_.E,4,4030,VI,c);let e=0,f=!1;try{(new _.Hl).L("moof",_.Q).L("traf",_.Q).ba("tfdt",g=>{var h=d;if(0===g.version)h=_.P(g.reader)/h;else{{const k=_.P(g.reader),l=_.P(g.reader);if(!(2097151>=k||h>=Math.pow(2,12)))throw Error("Cannot accurately parse MP4 timestamp, base time is too high and timescale is \x3c\x3d 2^12");h=k/h*Math.pow(2,32)+l/h}}e=h;f=!0;g.parser.stop()}).parse(a,!0)}catch(g){c=g}if(c||!f)throw new _.H(_.E,4,4030,VI,c);return e},eK=function(a){for(;a.getPosition()<a.Ja()-1;){const b=
17
+ a.getPosition();if(71===_.tl(a))return hJ(a),b}return-1},fK=function(a){function b(){d.seek(e+188);f=_.tl(d);71!==f&&(d.seek(e+192),f=_.tl(d));71!==f&&(d.seek(e+204),f=_.tl(d));71!==f&&c();hJ(d)}function c(){throw new _.H(_.E,4,4030);}const d=new _.qm(new DataView(a),!1);let e=0,f=0;e=eK(d);0>e&&(_.au.error("Unable to find sync byte in TS after scanning."),c());for(;;){e=d.getPosition();f=_.tl(d);71!==f&&c();a=_.ul(d);if(8191===(a&8191)){b();continue}if(!(a&16384)){b();continue}a=(_.tl(d)&48)>>4;
18
+ 0!==a&&2!==a||c();3===a&&(a=_.tl(d),d.skip(a));if(1!==_.P(d)>>8){b();continue}d.skip(3);a=_.tl(d)>>6;0!==a&&1!==a||c();0===_.tl(d)&&c();a=_.tl(d);const g=_.ul(d),h=_.ul(d);return(1073741824*((a&14)>>1)+((g&65534)<<14|(h&65534)>>1))/9E4}},iK=function(a){const b=gK(a),c=hK(a);a.forEach(d=>{const e=d.V,f=e.findIndex(h=>h.ka===b);let g=e.findIndex(h=>h.ka===c+1);-1===g&&(g=e.length);d.V=e.slice(f,g)})},hK=function(a){a=a.map(b=>b.V[b.V.length-1].ka);return Math.min(...a)},gK=function(a){a=a.map(b=>b.V[0].ka);
19
+ return Math.max(...a)},lK=function(a){var b=gJ(a,$I);if(!jK.includes(b))return kK.error("PlayReady in HLS is only supported with [",jK.join(", "),"], not",b),null;a=gJ(a,_.Lb);b=_.Kr(a);a=null;b=_.J(b.data);try{a=_.rB(_.xm(b))}catch(c){a=b}return _.FB(_.wd,[{initDataType:_.Zc,initData:a}],"")},nK=function(a){if(0===a.length)return mK();if(a.some(c=>c.type===fJ)||a.every(c=>c.type===_.Be))return a[0];a=a.filter(c=>c.type===eJ);const b=_.Ah(a.flatMap(c=>c.drmInfos));return{keyInfo:null,keyId:a[a.length-
20
+ 1].keyId,type:eJ,drmInfos:b}},qK=function(a){a=oK(a);if(a.some(b=>pK(b))&&1<a.length)throw new _.H(_.E,4,4046,"Two EXT-X-KEY tags, one with METHOD\x3dAES-128 are applied to one playlist.");},pK=function(a){return jJ(a.ca,_.Fa).some(b=>"AES-128"===_.I(b,$I))},sK=function(a,b,c){return oK(a).map(d=>rK(d.ca,b,c))},tK=function(a){return a.filter(b=>lJ(b.ca,_.Fa)).length},oK=function(a){return a.filter(b=>lJ(b.ca,_.Fa))},rK=function(a,b,c){a=jJ(a,_.Fa);if(0===a.length)return null;var d=gJ(a[0],$I);if(1===
21
+ a.length){if("NONE"===d)return mK();if("AES-128"===d)return a=a[0],d=_.I(a,"IV",""),{type:fJ,keyInfo:{method:"AES-128",url:oJ(b,gJ(a,_.Lb)),iv:d?_.Bi((d||"0x").slice(2)):null},drmInfos:[],keyId:null}}b=a.map(e=>gJ(e,$I));if(!b.every(e=>"SAMPLE-AES"===e)&&!b.every(e=>e===aJ))throw uK.warn(`EXT-X-KEY methods ${b.join(", ")} are incompatible.`),new _.H(_.E,4,4044,"Multiple EXT-X-KEY tags with incompatible METHOD values.");b=a.map(e=>{const f=_.I(e,"KEYFORMAT","identity");{const g=vK[f]||null;e=g?g(e,
22
+ c):null}e||uK.warn("Unsupported HLS KEYFORMAT",f);return e}).filter(Boolean);if(0===b.length)throw new _.H(_.E,4,4026);return{keyInfo:null,keyId:b.map(e=>e.keyIds).reduce((e,f)=>e.concat(f),[]).reverse()[0]||null,type:eJ,drmInfos:b}},mK=function(){return{type:_.Be,keyInfo:null,drmInfos:[],keyId:null}},wK=function(a,b,c){return _.x(function*(){const d=b.f(),e=_.jC(b.Qa(),b.wa,b.wa+2048-1,a.a.attemptParameters);e.type=2;const f=_.jC(b.Qa(),b.wa,b.la,a.a.attemptParameters);f.type=2;d&&(f.keyInfo=d);
23
+ try{return yield a.f(c?f:e)}catch(g){if(7001===g.code||c)throw g;a.g.warn("Unable to fetch a partial HLS segment! Falling back to a full segment request, which is expensive! Your server should support Range requests and CORS pre-flights.",e.uris[0]);try{return yield a.f(f)}catch(h){throw a.g.error("Failed to fetch media segment to parse its start timestamp.",f.uris[0],h),new _.H(_.E,4,4030,"Failed to fetch the media segment.");}}})},xK=function(a,b,c,d,e,f){return _.x(function*(){a.g.debug("Fetching segment to find start time");
24
+ if("audio/mpeg"===d||d===_.Hc||d===_.Gc)return 0;if(d===_.Fc){var g=yield wK(a,c,f);const h=_.J(g.data);return bK(h)?cK(h):fK(g.data)}if(d===_.gg||d===_.Ic)return g=[wK(a,c,f)],b&&g.push(wK(a,b,!0)),g=yield Promise.all(g),dK(g[0].data,(g[1]||g[0]).data);if(d===_.fg)return g=yield wK(a,c,f),fK(g.data);if(!_.Np(`${d.split("/")[0]||""}/mp4;codecs="${e}"`))return 0;throw new _.H(_.E,4,4030);})},yK=function(a,b){a=a.map(c=>c.streams[b]);return a.some(c=>null==c)?null:a},LJ=function(a,b){a.streams.forEach(c=>
25
+ {c.codecs=b.join(",")})},zK=function(a,b){a=a.streams.find(c=>{c=c.V;return c[0].position<=b&&b<=c[c.length-1].position});return null==a?null:a.V.find(c=>c.position===b)||null},IJ=function(a){return a.streams[0]},AK=function(a,b){a.streams.forEach(c=>{c.Xd=b})},BK=function(a,b){a.streams.forEach(c=>{c.width=b})},CK=function(a,b){a.streams.forEach(c=>{c.height=b})},DK=function(a,b){a.streams.forEach(c=>{c.frameRate=b})},EK=function(a,b){a.streams.forEach(c=>{c.bandwidth=b})},FK=function(a,b){a=a.map(c=>
26
+ c.a[b]);return a.some(c=>null==c)?null:a},GK=function(a,b){const c=new Set(a.map(d=>d.ka));return b.filter(d=>!c.has(d.ka))},JK=function(a,b){for(;a[0].ka<b[0].ka;)a.splice(0,1);var c=a[0];let d=b[0];HK(c,d)||IK(c,d);const e=a.length-1;c=a[e];d=b[e];0<e&&!HK(c,d)&&IK(c,d);for(c=e+1;c<b.length;)a.push(b[c]),c++},KK=function(a,b){const c=a[a.length-1];var d=b.findIndex(f=>f.ka===c.ka);const e=b[d];HK(c,e)||IK(c,e);for(d+=1;d<b.length;d++)a.push(b[d])},PK=function(a,b,c,d,e){var f=b[0].length();f=aK(f).map(g=>
27
+ {var h=FK(b,g)||[];const k=yK(c,g)||[];g=yK(d,g)||[];{const l=[...LK(h),...k,...g].filter(Boolean);MK(l);const {ka:m,duration:n}=l[0];h={configurationId:a,variants:h,textStreams:k,thumbStreams:g,startTime:0,id:`P${m}`,endTime:n,duration:n,ka:m}}return h});e&&NK(f[0]);OK(f);return f},LK=function(a){a=new Set(a.flatMap(b=>[b.video,b.audio]).filter(Boolean));return Array.from(a)},NK=function(a){const b=LK(a.variants)[0].V[0].va;a.startTime+=b;a.endTime+=b},OK=function(a){for(let b=0;b<a.length;b++){const c=
28
+ a[b],d=a[b-1];c.startTime=d?d.endTime:c.startTime;c.endTime=c.startTime+c.duration}},HK=function(a,b){return a.startTime===b.startTime&&a.endTime===b.endTime},IK=function(a,b){a.startTime=b.startTime;a.endTime=b.endTime;a.duration=b.duration;QK(a.variants,b.variants);RK(pJ(a),pJ(b))},QK=function(a,b){const c=new Map(a.map(d=>[FJ(d),d]));b.forEach(d=>{c.get(FJ(d)).drmInfos=d.drmInfos})},RK=function(a,b){const c=new Map(a.map(d=>[d.Ha,d]));b.forEach(d=>{const e=c.get(d.Ha);e.V=d.V;e.segmentIndex.replace(d.V);
29
+ e.Lc=d.Lc;e.qe=d.qe;e.duration=d.duration;e.rf=d.rf;e.encrypted=d.encrypted;e.drmInfos=d.drmInfos;e.keyId=d.keyId})},MK=function(a){const b=SK(a);a.forEach(c=>{_.eC(c.segmentIndex,b);c.duration=b;c.qe=c.Lc+b})},SK=function(a){let b=Infinity;a.filter(sJ).forEach(c=>{b=Math.min(b,c.duration)});return b},TK=function(a,b){qJ(b,(c,d)=>{_.sC(a,c.V,d.startTime)});_.kC(a.a,b[0].startTime,b[b.length-1].endTime)},UK=function(a){return null===a.j?[]:[a.j.audio,a.j.video].filter(b=>b).map(b=>b.Ha)},VK=function(a,
30
+ b){return _.x(function*(){var c=_.Oi([b],a.a.attemptParameters);c.type=1;c=yield a.F(c);let d="";try{d=_.ki(c.data)}catch(e){throw new _.H(_.E,4,4042);}d=d.replace(/\r\n|\r(?=[^\n]|$)/gm,"\n");d=d.trim();return{text:d,response:c}})},$K=function(a,b){return _.x(function*(){var c=WK(a,b,a.w,"");if(1===c.type){c=_.xs(c.V[0].a)||"";c=null!=_.ws.video[c]?_.w:null!=_.ws.audio[c]?_.p:null;var d="";c===_.w?d="avc1.42E01E":c===_.p&&(d="mp4a.40.2");{c=a.K;var e=a.w;d=a.a.hlsDefaultCodecs||d;var f=[];const r=
31
+ [];r.push(new _.Hi(_.ma,"0"));r.push(new _.Hi(_.Lb,e));d.length&&r.push(new _.Hi(_.pa,d));f.push(new _.Ii(c.f++,XI,r));c=new UJ(e,0,f)}}d=c.ca;c=jJ(d,"EXT-X-MEDIA");e=jJ(d,XI);d=jJ(d,"EXT-X-IMAGE-STREAM-INF");c={Kc:{eg:kJ(c,["AUDIO",_.Rb]),closedCaptions:kJ(c,UI),rh:kJ(c,bJ)},vd:e,ke:d};const {periods:g,Pf:h,Uf:k}=yield XK(a,c);if(!a.B)throw new _.H(_.E,7,7001);e=HJ(g[0]);YK(a,g);c=!0;d=null;f=0;ZK(a)||(c=!1,d=0,f=e.delay);d=new _.HI(a.a.timeline||{},d,f,!0,void 0,!!a.a.lowLatencyMode);_.oC(d,c);
32
+ TK(d,g);h&&_.nC(d,h);c=d;if(!ZK(a)){a.D=e.wc;e=0;for(var l of a.f.values())e=Math.max(e,l.streams[0].Lc);for(l=0;95443.7176888889<=e;)l+=95443.7176888889,e-=95443.7176888889;if(l){a.g.debug("Offsetting live streams by",l,"to compensate for rollover");for(var m of a.f.values())e=m.streams[0],95443.7176888889>e.Lc?(a.g.debug("Offset applied to",e.type),e.segmentIndex.offset(l)):a.g.debug("Offset NOT applied to",e.type)}}m=EJ(g);"LIVE"===a.l||"EVENT"===a.l?(m=Math.max(m,c.H),isNaN(a.a.availabilityWindowOverride)||
33
+ (m=a.a.availabilityWindowOverride),c.A=m):a.l===_.Sb&&(c.h=m);if(k)for(var n of k)a.B.onTimelineCueAdded({configurationId:a.B.configurationId,schemeIdUri:n.schemeIdUri,eb:n.eb,value:"",startTime:n.startTime,endTime:n.endTime,id:n.id,type:_.nh,eventElement:null});n={presentationTimeline:c,adaptedPeriods:[...g],periods:g,minBufferTime:0};a.g.debug("HLS playlist parsed",n);return n})},bL=function(a,b){return Promise.all(b.map(c=>aL(a,c)))},dL=function(a,b){b.forEach(c=>{a:{var d=a.f.get(c.a),e=!ZK(a),
34
+ f=mJ(c.ca,_.Da);if(f)var g=Number(f.value);else{d?(f=d.streams[d.streams.length-1].V,f=f[f.length-1].ka):f=0;if(e&&0<f)try{{const k=mJ(c.ca,_.Ha);if(!k)throw cL.error("Failed to infer discontinuity number, because EXT-X-MEDIA-SEQUENCE tag is missing."),Error(YI);const l=Number(k.value),m=zK(d,l);if(!m)throw cL.error("Failed to infer discontinuity number, could not find the appropriate segment in the previous playlist"+` (segment position = ${l})`),Error(YI);var h=m.ka}g=h;break a}catch(k){throw new _.H(_.E,
35
+ 4,4024,"EXT-X-DISCONTINUITY-SEQUENCE tag is required for discontinuous HLS live streams.");}g=0}}c=c.V||[];for(const k of c)lJ(k.ca,_.Ca)&&g++,k.ka=g});iK(b)},gL=function(a,b){return _.x(function*(){const {textStreams:c,thumbStreams:d,fg:e}=yield eL(a,b);var f=a.o.periods[0].variants;a.a.lowLatencyMode&&null!==a.j&&(f=f.filter(g=>g.id===a.j.id));f=f.map(g=>{const h=NJ(g.audio,e),k=NJ(g.video,e);g=fL(a,h,k,g.bandwidth);if(!g)throw new _.H(_.E,4,4047,{message:"Video and audio are encrypted in an incompatible way.",
36
+ Vh:k?IJ(k).Ha:void 0,audio:h?IJ(h).Ha:void 0});return g});return PK(a.B.configurationId,f,c,d,!0)})},YK=function(a,b){ZK(a)||2!==a.a.timeline.version||(a.G||(a.G=b[0].startTime),_.$D(b,-a.G))},hL=function(a,b,c){a.l=_.Sb;_.oC(b,!0);b.h=c[c.length-1].endTime},WK=function(a,b,c,d){a=ZJ(a.K,b,c);a.a=d;iL(a);return a},XK=function(a,b){return _.x(function*(){var c=KJ(b.Kc.closedCaptions),d=jL(a,b.vd),e=yield kL(a,b);const f=Object.values(e).flat().map(h=>h.playlist);dL(a,f);var g=yield lL(a,e.gf,d);c=
37
+ yield mL(a,e.vd,g,c);d=yield nL(a,e.qh,d);g=yield oL(a,e.ke);e=pL(a,e);c=PK(a.B.configurationId,c,d,g,!ZK(a));a.B.filterAllPeriods(c);return ZK(a)?(d=null,e&&(d=qL(f,e)),{periods:c,Pf:e,Uf:d}):{periods:c,Pf:e,Uf:null}})},eL=function(a,b){return _.x(function*(){const c=g=>IJ(g.stream).type===_.w||IJ(g.stream).type===_.p;var d=b.filter(c),e=b.filter(g=>!c(g)),f=g=>{g=g.map(h=>{var k=IJ(h.stream);k={language:k.language,channelsCount:k.channelsCount,spatialAudio:k.spatialAudio,closedCaptions:k.closedCaptions,
38
+ primary:k.primary,kind:k.kind||null,groupId:k.groupId,type:k.type,codecs:k.codecs,name:k.originalId,uri:k.Ha,Wd:{width:k.width,height:k.height,frameRate:k.frameRate}};h=Object.assign({},{playlist:h.playlist},k);return rL(a,h)});return Promise.all(g)};d=yield f(d);f=yield f(e);sL(a,d.concat(f));e=f.filter(g=>IJ(g).type===_.dB);f=f.filter(g=>IJ(g).type===_.ae);return{textStreams:e,thumbStreams:f,fg:d}})},fL=function(a,b,c,d){const e=[],f=(c||b).length();for(let m=0;m<f;m++){var g=b?b.streams[m]||null:
39
+ null,h=c?c.streams[m]||null:null,k=g,l=h;k=k&&l?_.NB(k.drmInfos,l.drmInfos)?_.MB(k.drmInfos,l.drmInfos):null:k?k.drmInfos:l?l.drmInfos:null;if(!k)return null;l=d;g={id:a.N++,language:g?g.language:_.Wf,primary:!!g&&g.primary||!!h&&h.primary,audio:g,video:h,bandwidth:l,drmInfos:k,allowedByApplication:!0,allowedByKeySystem:!0};e.push(g)}return new tL(e)},rL=function(a,b){return _.x(function*(){const c=b.playlist,d=b.codecs,e=b.type,f=b.hd,g=b.groupId,h=b.primary;var k=b.kind;const l=b.name,m=b.channelsCount,
40
+ n=b.spatialAudio,r=b.closedCaptions,v=b.Wd,u=_.Yh(f||_.Wf);if(1!==c.type)throw new _.H(_.E,4,4017);var y=tJ(c.ca,null==a.o);a.l=y;const C=GJ(c.ca,y,a.a.lowLatencyMode||!1,a.a.suggestedPresentationDelay);y=yield uL(a,c,e,d);const F=a.a.lowLatencyMode?_.yA:_.sA;let N=k;e!==_.G||k||(N=_.dB);const {zd:da}=yJ(c.ca);k=y.map(vb=>{const Xb=vb.V,pd=vb.qg,mg=vb.mimeType;vb=vb.ka;const Wa=Xb[0].startTime,oe=Xb[Xb.length-1].endTime,Mc=oe-Wa,ea=new _.II(Xb),bb=Xb[0].initSegment||null;return{id:_.MI++,originalId:l,
41
+ createSegmentIndex:Promise.resolve.bind(Promise),findSegmentPosition:ea.f.bind(ea),getSegmentReference:ea.get.bind(ea),adjustSegmentDurations:ea.h.bind(ea),getDuration:ea.getDuration.bind(ea),segmentIndex:ea,segmentLookupStrategy:F,initSegmentReference:bb,mimeType:mg,codecs:d,kind:N,rf:pd.type,encrypted:pd.type===eJ,keyId:pd.keyId,language:u,originalLanguage:f||_.Wf,label:l,type:e,primary:h,trickModeVideo:null,emsgSchemeIdUris:null,frameRate:v?v.frameRate:void 0,width:v?v.width:void 0,height:v?v.height:
42
+ void 0,bandwidth:void 0,roles:[],channelsCount:m,spatialAudio:n,closedCaptions:r,keyInfo:pd.keyInfo,V:Xb,drmInfos:pd.drmInfos,ka:vb,Ha:c.a,Xd:c.f,Lc:Wa,qe:oe,duration:Mc,zd:da,groupId:g,Sg:C}});return new vL(k)})},sL=function(a,b){b.forEach(c=>{a.f.a.set(IJ(c).Ha,c)})},jL=function(a,b){const c=new Map;for(const f of b){var d=_.I(f,"AUDIO");b=_.I(f,_.Rb);var e=_.I(f,bJ);const g=wL(a,f);if(e){const h=_.tj(_.G,g);c.set(e,h);e=g.indexOf(h);-1<e&&g.splice(e,1)}d&&(e=xL(_.p,g),c.set(d,e));b&&(d=xL(_.w,
43
+ g),c.set(b,d))}return c},kL=function(a,b){return _.x(function*(){const c=yield Promise.all([yL(a,b.Kc.eg),yL(a,b.Kc.rh),yL(a,b.vd),yL(a,b.ke)]),[d,e,f,g]=c;return{gf:d,qh:e,vd:f,ke:g}})},lL=function(a,b,c){return _.x(function*(){if(0===b.length)return new Map;var d=[zL(a,b[0],c)];yield d[0];d=d.concat(b.slice(1).map(e=>zL(a,e,c)));d=yield Promise.all(d);return JJ(d)})},mL=function(a,b,c,d){return _.x(function*(){const e=new Set;var f=[...b];let g=0;var h=Infinity;for(let k=0;k<f.length;++k){const l=
44
+ Number(gJ(f[k].tag,_.ma));l<h&&(h=l,g=k)}h=f.splice(g,1).pop();h=yield AL(a,h,c,d,e);f=f.map(k=>AL(a,k,c,d,e));f=yield Promise.all(f);f.splice(g,0,h);return f.reduce(_.CB,[])})},nL=function(a,b,c){return Promise.all(b.map(d=>zL(a,d,c)))},oL=function(a,b){return Promise.all(b.map(c=>BL(a,c)))},pL=function(a,b){b=[...b.vd,...b.gf].map(d=>d.playlist).flatMap(d=>d.V[0].ca);b=mJ(b,_.Ma);if(!b)return null;const c=(new Date(b.value)).getTime();return isNaN(c)?(a.g.warn("Failed to parse EXT-X-PROGRAM-DATE-TIME tag "+
45
+ `value (value: ${b.value}).`),null):c/1E3},ZK=function(a){return a.l===_.Sb},qL=function(a,b){return(a=a.find(c=>null!==mJ(c.ca,_.Ba)))?a.ca.filter(c=>c.name===_.Ba).map(c=>{a:{var d=_.I(c,"ID"),e=_.I(c,"START-DATE");if(null===d||null===e)_.As.warn("Invalid EXT-X-DATERANGE missing mandatory ID or START-DATE attribute, ignoring the EXT-X-DATERANGE tag.",c),c=null;else{var f=new Date(e);e=f.getTime()/1E3-b;d={id:d,startTime:e,startDate:f};var g=iJ(_.I(c,WI));void 0!==g&&0<=g&&(d.duration=g);var h=
46
+ iJ(_.I(c,"PLANNED-DURATION"));void 0!==h&&0<=h&&(d.plannedDuration=h);var k=_.I(c,"CLASS");null!==k&&(d.schemeIdUri=k);var l=_.I(c,"END-DATE");l=l?new Date(l):null;null!==l&&l.getTime()>=f.getTime()&&(d.endDate=l);{const r=c.attributes;if(null==r)var m=null;else{f={};for(m of r)m.name.startsWith("X-")&&(f[m.name]=m.value);m=_.Og(f)?f:null}}m=m||{};if(k===_.vd){f=c.attributes;if(null==f)var n=null;else{k={};for(n of f)switch(n.name){case _.Zb:k[_.Zb]=n.value;break;case _.Yb:k[_.Yb]=n.value;break;case _.ac:k[_.ac]=
47
+ iJ(n.value);break;case _.$b:k[_.$b]=iJ(n.value);break;case "X-SNAP":k["X-SNAP"]=n.value.split(",");break;case "X-RESTRICT":k["X-SNAP"]=n.value.split(",")}k[_.Zb]&&k[_.Yb]||!k[_.Zb]&&!k[_.Yb]?(_.As.warn("Invalid EXT-X-DATERANGE Interstitial attributes X-ASSET-URI, X-ASSET-LIST"),n=null):n=_.Og(k)?k:null}if(null===n){_.As.warn("Invalid interstitial attributes, ignoring the EXT-X-DATERANGE tag.",c);c=null;break a}m=Object.assign(m,n)}_.Og(m)&&(d.eb=m);d.endTime=l?l.getTime()/1E3:g?e+g:h?e+h:e;d.type=
48
+ "hls-daterange";c=d}}return c}).filter(Boolean):null},yL=function(a,b){return _.x(function*(){return(yield Promise.all(b.map(c=>_.x(function*(){const d=yield CL(a,c);return d?{tag:c,playlist:d}:null})))).filter(Boolean)})},aL=function(a,b){return _.x(function*(){var c=new _.Ih(IJ(b).Xd);if(a.a.lowLatencyMode&&IJ(b).zd){var d=b.streams[b.streams.length-1].segmentIndex;if(d=d.a[d.a.length-1]){var e=d.a,f=e.length-1;d={Vg:d.position,Zg:e&&0<e.length?f:null}}else d=null;if(e=d)d=e.Vg,e=e.Zg,f=_.hj(c.a.toString()),
49
+ f._HLS_msn=d.toString(),null===e&&f._HLS_part&&delete f._HLS_part,null!==e&&(f._HLS_part=e.toString()),d=_.gj(f,!0),d=new _.Rh(d),_.Lh(c,d)}const {response:g,text:h}=yield VK(a,c.toString());c=IJ(b).Ha;d=IJ(b).Xd;e=g.uri;d!==e&&(d=e,AK(b,d));c=WK(a,h,d,c);return{stream:b,playlist:c}})},wL=function(a,b){var c=_.I(b,_.pa,a.a.hlsDefaultCodecs||"avc1.42E01E,mp4a.40.2").split(/\s*,\s*/);b=new Set;const d=[];for(const e of c)c=_.SB(e),b.has(c)?a.g.debug("Ignoring duplicate codec"):(d.push(e),b.add(c));
50
+ return d},xL=function(a,b){if(1===b.length)return b[0];a=_.tj(a,b);if(null!=a)return a;throw new _.H(_.E,4,4025,{codecList:b});},zL=function(a,b,c){return _.x(function*(){const d=b.tag,e=b.playlist;return DL(a,e.a,()=>_.x(function*(){const f=gJ(d,_.Ua),g=uJ(gJ(d,_.Jb));var h=gJ(d,_.Jb).toUpperCase();if(uJ(h)!==_.G)h=null;else{var k=d.getAttribute("FORCED");k=!(!k||!k.value||"YES"!==k.value.toUpperCase());var l=_.dB;h===UI&&(l=_.Xz);k&&(l=_.Vd);h=l}k=c.get(f)||"";l=_.I(d,_.ab);const m=_.I(d,"NAME"),
51
+ n=d.getAttribute("DEFAULT"),r=d.getAttribute("AUTOSELECT");var v=_.I(d,"CHANNELS");v=g===_.p?v?parseInt(v.split("/")[0],10):null:null;var u=g===_.p?(u=_.I(d,"CHANNELS"))?u.includes("/JOC"):!1:!1;return yield rL(a,{playlist:e,codecs:k,type:g,hd:l,primary:!!n&&!!r,name:m,channelsCount:v,spatialAudio:u,groupId:f,kind:h,closedCaptions:null,Wd:null})}))})},BL=function(a,b){return _.x(function*(){const c=b.tag,d=b.playlist;return DL(a,d.a,()=>_.x(function*(){var e=_.I(c,_.pa)||"jpg",f=_.I(c,_.ab);const g=
52
+ _.I(c,"NAME");e=yield rL(a,{playlist:d,codecs:e,type:_.ae,hd:f,name:g,primary:!1,kind:null,channelsCount:null,spatialAudio:!1,closedCaptions:null,groupId:null,Wd:null});(f=_.I(c,_.ma))&&EK(e,Number(f));return e}))})},AL=function(a,b,c,d,e){return _.x(function*(){var f=b.tag,g=Number(gJ(f,_.ma));if(null!=f.getAttribute("FRAME-RATE")||null!=f.getAttribute(_.Ab)){var h=_.I(f,"FRAME-RATE");f=_.I(f,_.Ab);var [k,l]=f?f.split("x"):[null,null];h={frameRate:iJ(h),width:iJ(k),height:iJ(l)}}else h=null;if(f=
53
+ yield EL(a,b,h,c,d)){h=f.video;f=f.audio;var m=0<f.length?f:[null];h=0<h.length?h:[null];f=[];for(const n of m)for(const r of h){m=(r?IJ(r).Ha:"")+" - "+(n?IJ(n).Ha:"");if(e.has(m)){a.g.debug("Skipping variant which only differs in text streams.");continue}const v=fL(a,n,r,g);null==v?a.g.warn("Incompatible DRM info in HLS variant. Skipping."):(f.push(v),e.add(m))}g=f}else g=[];return g})},EL=function(a,b,c,d,e){return _.x(function*(){var f=b.tag,g=b.playlist;let h=wL(a,f);var k=_.I(f,"AUDIO"),l=_.I(f,
54
+ _.Rb),m=k||l;m=m&&d.has(m)?d.get(m):[];k={audio:k?m:[],video:l?m:[]};a.g.debug("Guessing stream type for",f.toString());f=!1;const n=g.a;g=k.audio.find(r=>r.Ha===n);l=_.tj(_.w,h);l=c||l;1!==h.length||l?!m.length&&1<h.length?(a.g.debug("Guessing multiplexed audio+video"),g=_.w,h=[h.join(",")]):k.audio.length&&g?(a.g.debug(ZI),g=_.p,f=!0):k.video.length?(a.g.debug(ZI),g=_.p):(a.g.debug("Guessing video-only"),g=_.w):(g=_.p,a.g.debug(ZI));l=null;f||(l=yield FL(a,b,h,g,e,c));if(null==l)return null;k[g]=
55
+ [l];g===_.p&&c&&m.forEach(r=>{BK(r,c.width);CK(r,c.height);DK(r,c.frameRate)});MJ(k);return k})},FL=function(a,b,c,d,e,f){return _.x(function*(){const g=b.tag,h=b.playlist;return DL(a,h.a,()=>_.x(function*(){var k=_.I(g,UI);let l=null;d===_.w&&k&&"NONE"!==k&&(l=e.get(k));k=xL(d,c);return yield rL(a,{playlist:h,codecs:k,type:d,closedCaptions:l,primary:!1,kind:null,hd:null,name:null,channelsCount:null,spatialAudio:!1,groupId:null,Wd:f})}))})},DL=function(a,b,c){if(a.f.has(b))return a=a.f.get(b),Promise.resolve(a);
56
+ if(a.f.f.has(b))return a.f.f.get(b)||null;c=c();a.f.set(b,c);return c},uL=function(a,b,c,d){return _.x(function*(){var e=b.a,f=b.V;var g=void 0===g?0:g;var h=(h=mJ(b.ca,_.Ha))?Number(h.value):g;g=[];!ZK(a)&&qK(f);e=yield GL(a,b.f,e,f,h,c,d);if(0===f.length)f=[];else{var k=[],l=[];for(var m of f)lJ(m.ca,_.Ca)&&0<l.length&&(k.push(l),l=[]),l.push(m);k.push(l);f=k}for(m=0;m<f.length;m++)k=f[m],l=yield HL(a,b.f,k,h,e,c,d,g[g.length-1]||null,f.length),g.push(l),h+=k.length;IL(g);return g})},CL=function(a,
57
+ b){return _.x(function*(){var c="EXT-X-MEDIA"!==b.name?!0:_.I(b,_.Jb)===bJ;c=_.I(b,_.Lb,void 0,{required:c});if(!c)return null;const d=oJ(a.w,c),{response:e,text:f}=yield VK(a,d);return WK(a,f,e.uri,c)})},iL=function(a){1===a.type&&a.V.forEach((b,c)=>{if(lJ(b.ca,_.Ga)&&!lJ(b.ca,_.Ca)&&0<c)throw new _.H(_.E,4,4046,"Media playlist contains an EXT-X-MAP tag not accompanied by an EXT-X-DISCONTINUITY tag.");})},IL=function(a){if(1<(new Set(a.map(b=>b.mimeType))).size)throw new _.H(_.E,4,4045,"Media playlist contains discontinuities with different MIME types. This is valid, but not yet supported.");
58
+ },JL=function(a){a=a.map(b=>b.a?b.a:b.f.map(c=>_.I(c,_.Lb))||null).map(b=>_.xs(b));if(1<(new Set(a)).size)throw new _.H(_.E,4,4044,"Unexpected change in file format.");},KL=function(a,b,c){a=jJ(a.ca,_.Ga);if(1<a.length)throw new _.H(_.E,4,4020);a=a[0];if(!a)return null;const d=gJ(a,_.Lb),e=oJ(b,d);b=zJ(a,null,!0);return new _.EI(()=>[e],b.wa,b.la,c)},LL=function(a,b,c,d,e,f,g){const h=[];for(const r of _.KB(b.f)){b=r.Df;const v=r.item;{var k=0===b,l=k?a:h[h.length-1],m=k?d:l.endTime,n=Number(_.I(v,
59
+ WI));n=m+n;k=zJ(v,k?null:l.la,k);l=_.I(v,_.Lb);const u=(l=oJ(g,l))?[l]:[];m=new AJ(c,m,n,()=>u,k.wa,k.la,e,f,!1,null,null,null,null);if("YES"===_.I(v,"INDEPENDENT")||0===b)m.h=!0;h.push(m)}}return h},ML=function(a,b,c,d,e,f,g,h,k,l,m){const n=c.ca;var r=c.a;const v=null!=r,u=r?[r]:[];if(!v&&!a.a.lowLatencyMode)return null;a=0;r={wa:0,la:null};let y=null;v?({duration:c}=xJ(n),a=e+c,r=wJ(n,b?b.la:null)):(b=LL(b,c,d,e,f,g,k),a=b[b.length-1].endTime,y=b);h=h===_.ae?nJ(n):null;d=new AJ(d,e,a,()=>u,r.wa,
60
+ r.la,f,g,!1,null,h?h.bd:null,h?h.ud:null,h?h.durationPerTile:null,y);d.ka=l;d.initSegment=m||void 0;return d},GL=function(a,b,c,d,e,f,g){return _.x(function*(){var h=d[0];if(null!=a.C)return a.C;if(!ZK(a)&&a.o)try{var k=a.f.get(c);var l=k?zK(k,e)||null:null;if(!l)throw new _.H(_.E,4,4030,"Segment not found in pervious playlist update.");var m=l.startTime+l.va;a.g.debug(`Setting playlist start time to ${m}.`);return a.C=m}catch(n){if(h=a.f.get(c))m=h.streams[h.streams.length-1].V,m=m[m.length-1],a.g.warn(`Last #EXT-X-MEDIA-SEQUENCE values ${h.streams[0].V[0].position} - ${m.position}`+
61
+ `, new values ${e} - ${e+d.length-1}.`,b,h);throw new _.H(_.E,4,4047,{message:"The updated playlist does not share any segments with the previous one.",uri:c});}m=yield NL(a,f,g,h);k=rK(h.ca,a.w,m)||mK();l=KL(h,b,k.keyInfo);k=CJ(k.keyInfo,e);h=yield OL(a,l,h,k,m,g);a.g.debug(`Setting playlist start time to ${h}.`);return a.C=h})},HL=function(a,b,c,d,e,f,g,h,k){return _.x(function*(){var l=c[0],m=null==h;JL(c);const n=yield NL(a,f,g,l);var r=a.w,v=h?h.Rg:null;var u=1===k;if(c.slice(1).some(pK))throw new _.H(_.E,
62
+ 4,4046,u?"Media playlist contains an EXT-X-KEY tag with METHOD\x3dAES-128 which is not at the beginning of the playlist.":"Media playlist contains an EXT-X-KEY tag with METHOD\x3dAES-128 which is not marked by an EXT-X-DISCONTINUITY tag and is not at the beginning of the playlist.");if(lJ(c[0].ca,_.Fa)||null===v)if((v=rK(c[0].ca,r,n))&&v.type===fJ){if(1<tK(c))throw new _.H(_.E,4,4046,cJ+`${u?"playlist":"discontinuity"}.`);u=[v]}else u=sK(c,r,n),u=0===u.length?[mK()]:u;else if(r=sK(c,r,n),v.type===
63
+ _.Be||v.type===eJ)u=[v,...r];else{if(0<tK(c))throw new _.H(_.E,4,4046,cJ+`${u?"playlist":"discontinuity"}.`);u=[v]}r=u;u=r[r.length-1];r=nK(r);v=KL(l,b,r.keyInfo)||(h?h.Ng:null);var y=CJ(r.keyInfo,d);const C=l.ka;l=m?e:yield PL(a,C,v,l,d,y,n,g);m=[];for(y=0;y<c.length;y++){var F=c[y];const N=m[m.length-1]||null,da=0===y?0:N.endTime,vb=d+y,Xb=CJ(r.keyInfo,vb);(F=ML(a,N,F,vb,da,l,Xb,f,b,C,v))&&m.push(F)}return{V:m,qg:r,Rg:u,mimeType:n,endTime:m[m.length-1].endTime,ka:C,Ng:v}})},NL=function(a,b,c,d){return _.x(function*(){const e=
64
+ d.a;var f=mJ(d.ca,_.Ga);f=f?gJ(f,_.Lb):null;return QL(a,b,c,e,f)})},OL=function(a,b,c,d,e,f){return _.x(function*(){if(null==c.a)return 0;const g=BJ(c,d);return xK(a.M,b,g,e,f,null!=d)})},PL=function(a,b,c,d,e,f,g,h){return _.x(function*(){if(a.H.has(b))return a.H.get(b);const k=yield OL(a,c,d,f,g,h);a.g.debug(`Segment #${e} has raw media timestamp `+`${k} s.`);a.H.set(b,k);return k})},QL=function(a,b,c,d,e){return _.x(function*(){const f=[d,e].filter(Boolean);var g=_.yj(f,b,c);if(g)return g;g=_.Oi([d],
65
+ a.a.attemptParameters);g.method="HEAD";g.type=2;g=(yield a.F(g)).headers["content-type"];if(!g)throw new _.H(_.E,4,4021,"Unknown MIME type of: "+f.join(", "));return g.split(";")[0]})},UJ=class{constructor(a,b,c,d){if(1===b){if(!d||0===d.length)throw new _.H(_.E,4,4043,"Media playlist must have at least one segment!");if(null==d[0].a)throw new _.H(_.E,4,4043,"Media playlist must have at least one full segment!");}this.f=a;this.a="";this.type=b;this.ca=c;this.V=1===b?d:null}},$J=class{constructor(a,
66
+ b,c){c=void 0===c?[]:c;this.ca=b;this.a=a;this.f=c;this.ka=-1}},AJ=class extends _.FC{constructor(a,b,c,d,e,f,g,h,k,l,m,n,r,v){v=void 0===v?[]:v;super(a,b,c,d,e,f,g,void 0===h?null:h,void 0===k?!1:k,void 0===l?null:l,void 0===m?null:m,void 0===n?null:n,void 0===r?null:r,v);this.initSegment=void 0;this.ka=0}},RL=class{constructor(){this.f=0;this.a=new Map}},SL=class{constructor(){this.a=new Map;this.f=new Map}set(a,b){this.f.set(a,b);return b.then(c=>this.a.set(a,c)).catch(()=>{}).then(()=>this.f.delete(a))}has(a){return this.a.has(a)}get(a){return this.a.get(a)||
67
+ null}values(){return Array.from(this.a.values())}clear(){this.f.clear();this.a.clear()}},cL=new _.S("clpp.hls.DiscontinuityUtils");var vK={"com.apple.streamingkeydelivery":function(a,b){if(b===_.fg)throw new _.H(_.E,4,4041);if(gJ(a,$I)===aJ)throw new _.H(_.E,4,4044,"EXT-X-KEY:METHOD SAMPLE-AES-CTR is not supported in FairPlay.");return _.FB(_.ud,[{initDataType:_.Ff,initData:new Uint8Array(0)}],"")},"com.microsoft.playready":lK,"urn:uuid:9a04f079-9840-4286-ab92-e65be0885f95":lK,"urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed":function(a){var b=gJ(a,$I);if(!jK.includes(b))return kK.error("Widevine in HLS is only supported with [",
68
+ jK.join(", "),"], not",b),null;b=gJ(a,_.Lb);b=_.Kr(b);b=_.J(b.data);b=_.FB(_.yd,[{initDataType:_.Zc,initData:b}],"");if(a=_.I(a,"KEYID"))b.keyIds=[a.substr(2).toLowerCase()];return b}},jK=["SAMPLE-AES",aJ],kK=new _.S("clpp.hls.DrmParser");var uK=new _.S("clpp.hls.EncryptionUtils");var TL=class{constructor(a){this.g=new _.S("clpp.hls.MediaReader");this.f=a;this.a={attemptParameters:_.Li()}}};var vL=class{constructor(a){this.streams=a}length(){return this.streams.length}};var tL=class{constructor(a){this.a=a}length(){return this.a.length}};var UL=class{constructor(){this.a=this.B=null;this.N=1;this.f=new SL;this.w="";this.K=new RL;this.D=0;this.j=null;this.h=new _.Pj(()=>{this.ob()});this.l=_.Sb;this.o=null;this.A=new _.Fs;this.C=null;this.g=new _.S("clpp.hls.HlsParser");this.H=new Map;this.M=new TL(this.F.bind(this));this.J=!1;this.G=null;this.I=!1}configure(a){this.a=a;this.M.a=a}setCurrentVariant(a){this.j=a}start(a,b){const c=this;return _.x(function*(){if(c.J)throw Error("start() may be called only once!");c.J=!0;c.B=b;const {response:d,
69
+ text:e}=yield VK(c,a);c.w=d.uri;const f=yield $K(c,e);c.o=f;const g=c.D;c.h&&0<g&&c.h.ia(g);return f})}requestStop(){this.I=!0}stop(){this.h&&(this.h.stop(),this.h=null);const a=[];this.A&&(a.push(this.A.destroy()),this.A=null);this.f.clear();this.o=this.a=this.B=this.j=null;return Promise.all(a)}update(){const a=this;return _.x(function*(){const b=a.o;if(!ZK(a)&&b){var c=b.presentationTimeline;"LIVE"===a.l&&(a.C=null);var d=Array.from(a.f.values());if(a.a.lowLatencyMode&&null!==a.j){const f=UK(a);
70
+ d=d.filter(g=>f.includes(IJ(g).Ha))}var e=yield bL(a,d);d=e.map(f=>f.playlist);dL(a,d);e=yield gL(a,e);GK(b.periods,e).forEach(f=>{a.B.filterNewPeriod(f)});YK(a,e);JK(b.periods,e);KK(b.adaptedPeriods,e);TK(c,e);if(d=rJ(d))!0!==a.a.keepTimelineLive&&hL(a,c,e),a.h.stop(),a.h=null;if(a.B.onUpdate)a.B.onUpdate(b);if(d&&a.B.onTurnedStatic)a.B.onTurnedStatic();a.I&&(yield a.stop())}})}ob(){const a=this;return _.x(function*(){a.g.debug(_.Cz);if(a.B)try{yield a.update(),a.h&&0<a.D&&a.h.ia(a.D)}catch(b){if(!(b instanceof
71
+ _.H))throw b;a.B&&(a.B.onError(b),1===b.severity&&a.h&&a.h.ia(.1))}})}F(a){if(!this.A)throw new _.H(_.E,7,7001);a=this.B.networkingEngine.fetch(a);_.Vi(this.A,a);return a.O}};_.z("clpp.hls.HlsComponent",class extends _.Gt{f(){_.kr.m3u8=UL;_.ir[_.Kk]=UL;_.ir[dJ]=UL}a(){_.dD("m3u8");_.eD(_.Kk);_.eD(dJ)}id(){return"hls"}});};f.call(g, window);
package/cl.hlssmpte.js CHANGED
@@ -1,5 +1,5 @@
1
- import {clpp} from "./cl.core.js";let g={};const _ = clpp._;var f=function(window){'use strict';var wO=function(a){a.a.one(a.m,_.ke,()=>vO(a))},vO=function(a){const b=a.m.getSurface().getMedia();if(b)if(a.g){a.a.on(b.textTracks,_.nc,d=>xO(a,d));var c=Array.from(b.textTracks);c.filter(d=>d.kind===_.re).forEach(d=>{xO(a,{track:d})});!yO(c)&&a.l&&(a.h.warn("The metadata track is not present. Changing an audio track in order to enforce the creation of the metadata track."),zO(a,b))}else a.h.warn("The clpp.ttml.TextParser class is not available. Please register the ttml component first.");
2
- else a.h.warn("A video element is not available. Skipping.")},xO=function(a,b){b=b.track;b.kind===_.re&&(a.h.info("The metadata track has been added."),b.mode=_.Vd,a.a.on(b,_.xd,c=>AO(a,c)))},yO=function(a){return a.some(b=>b.kind===_.re)},zO=function(a,b){const c=a.m.getTrackManager(),d=c.ja(),e=c.getAudioTracks().find(g=>g!==d);if(e){var f=()=>c.ta(d);a.a.on(b.textTracks,_.nc,g=>{g.track.kind===_.re&&(a.a.off(b.textTracks,_.nc,f),c.ta(d))});c.ta(e)}else a.h.warn("Can't enforce the creation of the metadata track if single audio track. Skipping.")},
3
- AO=function(a,b){const c=BO(a);c&&Array.from(b.target.activeCues||[]).forEach(d=>{if(d!==a.f&&Number.isFinite(d.startTime)&&Number.isFinite(d.endTime)&&"org.id3"===d.type&&d.value&&"TXXX"===d.value.key){var e=new CO(d);if(e.f===c&&null!==e.a){a.f=d;d=a.g.parseMedia(_.$h(e.a),{periodStart:a.j,segmentStart:e.startTime,segmentEnd:e.endTime});const f=a.m.getTextDisplayer();f.remove(0,e.startTime);f.append(d.cues,d.styles)}}})},BO=function(a){return(a=a.m.getTrackManager().qa())&&a.language&&a.language.toLowerCase()},
4
- CO=class{constructor(a){this.startTime=a.startTime;this.endTime=a.endTime;this.a=this.f=null;a=a.value;if(!_.z(a)){a:{var b=a.info;if(_.Eg(b)&&(b=b.toLowerCase().match(/lang:(\w+)/))&&b[1]){b=b[1].toLowerCase();break a}b=null}this.f=b;a=a.data;this.a=a=_.Eg(a)?a:null}}};var DO=class{constructor(a,b,c){this.m=a;this.l=b;this.j=c;this.a=new _.Er;this.g=(a=_.sr(_.yc))?new a(this.m.getConfiguration()):null;this.h=new _.R("clpp.hlssmpte.ImageCueHandler");this.f=null;wO(this)}destroy(){this.a.release();this.f=null;return Promise.resolve()}};var EO=class extends _.It{constructor(){super();this.a=null;this.f=!1}onPlayerCreated(){}onContentWillLoad(a){if(this.f=_.Nj()){var b=a.getConfiguration();b=_.yg(b.hlssmpte||{});typeof b.patchMetadataTrack!==_.Mc&&(b.patchMetadataTrack=!1);_.Fg(b.timestampOffset)||(b.timestampOffset=0);this.a=new DO(a,b.patchMetadataTrack,b.timestampOffset)}}onPlayerWillDestroy(){const a=this;return _.w(function*(){a.a&&(yield a.a.destroy(),a.a=null)})}id(){return"hlssmpte"}};_.x("clpp.hlssmpte.HlsSmptePlugin",EO);
5
- EO.Id="hlssmpte";_.Ho(new class{create(){return new EO}});};f.call(g, window);
1
+ import {clpp} from "./cl.core.js";let g={};const _ = clpp._;var f=function(window){'use strict';var qT=function(a){a.a.one(a.m,_.ke,()=>pT(a))},pT=function(a){const b=a.m.getSurface().getMedia();if(b)if(a.h){a.a.on(b.textTracks,_.sc,d=>rT(a,d));var c=Array.from(b.textTracks);c.filter(d=>d.kind===_.ve).forEach(d=>{rT(a,{track:d})});!sT(c)&&a.l&&(a.g.warn("The metadata track is not present. Changing an audio track in order to enforce the creation of the metadata track."),tT(a,b))}else a.g.warn("The clpp.ttml.TextParser class is not available. Please register the ttml component first.");
2
+ else a.g.warn("A video element is not available. Skipping.")},rT=function(a,b){b=b.track;b.kind===_.ve&&(a.g.info("The metadata track has been added."),b.mode=_.Zd,a.a.on(b,_.Bd,c=>uT(a,c)))},sT=function(a){return a.some(b=>b.kind===_.ve)},tT=function(a,b){const c=a.m.getTrackManager(),d=c.na(),e=c.getAudioTracks().find(g=>g!==d);if(e){var f=()=>c.Da(d);a.a.on(b.textTracks,_.sc,g=>{g.track.kind===_.ve&&(a.a.off(b.textTracks,_.sc,f),c.Da(d))});c.Da(e)}else a.g.warn("Can't enforce the creation of the metadata track if single audio track. Skipping.")},
3
+ uT=function(a,b){const c=vT(a);c&&Array.from(b.target.activeCues||[]).forEach(d=>{if(d!==a.f&&Number.isFinite(d.startTime)&&Number.isFinite(d.endTime)&&"org.id3"===d.type&&d.value&&"TXXX"===d.value.key){var e=new wT(d);if(e.f===c&&null!==e.a){a.f=d;d=a.h.parseMedia(_.oi(e.a),{periodStart:a.j,segmentStart:e.startTime,segmentEnd:e.endTime});const f=a.m.getTextDisplayer();f.remove(0,e.startTime);f.append(d.cues,d.styles)}}})},vT=function(a){return(a=a.m.getTrackManager().za())&&a.language&&a.language.toLowerCase()},
4
+ wT=class{constructor(a){this.startTime=a.startTime;this.endTime=a.endTime;this.a=this.f=null;a=a.value;if(!_.A(a)){a:{var b=a.info;if(_.Sg(b)&&(b=b.toLowerCase().match(/lang:(\w+)/))&&b[1]){b=b[1].toLowerCase();break a}b=null}this.f=b;a=a.data;this.a=a=_.Sg(a)?a:null}}};var xT=class{constructor(a,b,c){this.m=a;this.l=b;this.j=c;this.a=new _.$r;this.h=(a=_.Or(_.Cc))?new a(this.m.getConfiguration()):null;this.g=new _.S("clpp.hlssmpte.ImageCueHandler");this.f=null;qT(this)}destroy(){this.a.release();this.f=null;return Promise.resolve()}};var yT=class extends _.iu{constructor(){super();this.a=null;this.f=!1}onPlayerCreated(){}onContentWillLoad(a){if(this.f=_.dk()){var b=a.getConfiguration();b=_.Mg(b.hlssmpte||{});typeof b.patchMetadataTrack!==_.Oc&&(b.patchMetadataTrack=!1);_.Tg(b.timestampOffset)||(b.timestampOffset=0);this.a=new xT(a,b.patchMetadataTrack,b.timestampOffset)}}onPlayerWillDestroy(){const a=this;return _.x(function*(){a.a&&(yield a.a.destroy(),a.a=null)})}id(){return"hlssmpte"}};_.z("clpp.hlssmpte.HlsSmptePlugin",yT);
5
+ yT.Id="hlssmpte";_.Wo(new class{create(){return new yT}});};f.call(g, window);