@mux/playback-core 0.16.1 → 0.16.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +4 -4
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +4 -4
- package/dist/playback-core.js +30 -30
- package/dist/playback-core.js.map +4 -4
- package/dist/playback-core.mjs +30 -30
- package/dist/playback-core.mjs.map +4 -4
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types/hls.d.ts +5 -0
- package/dist/types/index.d.ts +5 -4
- package/dist/types/tracks.d.ts +2 -2
- package/dist/types/types.d.ts +2 -3
- package/dist/types-ts3.4/hls.d.ts +5 -0
- package/dist/types-ts3.4/index.d.ts +5 -4
- package/dist/types-ts3.4/tracks.d.ts +2 -2
- package/dist/types-ts3.4/types.d.ts +2 -3
- package/package.json +2 -2
package/dist/playback-core.mjs
CHANGED
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
var Wi=Object.create;var kr=Object.defineProperty;var Gi=Object.getOwnPropertyDescriptor;var Hi=Object.getOwnPropertyNames;var ji=Object.getPrototypeOf,Vi=Object.prototype.hasOwnProperty;var Fr=(J,ee)=>()=>(ee||J((ee={exports:{}}).exports,ee),ee.exports);var Yi=(J,ee,ie,se)=>{if(ee&&typeof ee=="object"||typeof ee=="function")for(let z of Hi(ee))!Vi.call(J,z)&&z!==ie&&kr(J,z,{get:()=>ee[z],enumerable:!(se=Gi(ee,z))||se.enumerable});return J};var zt=(J,ee,ie)=>(ie=J!=null?Wi(ji(J)):{},Yi(ee||!J||!J.__esModule?kr(ie,"default",{value:J,enumerable:!0}):ie,J));var Ur=Fr((Qt,vr)=>{(function(){var J,ee;J=this,ee=function(){return function(){var ie={80:function(N,T,C){N.exports=C(728).default},728:function(N,T,C){"use strict";C.d(T,{default:function(){return Ni}});var L=C(48),M=C.n(L),P=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(U){var O=16*Math.random()|0;return(U==="x"?O:3&O|8).toString(16)})},B=function(){return("000000"+(Math.random()*Math.pow(36,6)<<0).toString(36)).slice(-6)},A=function(U){return U&&U.nodeName!==void 0?(U.muxId||(U.muxId=U.id||B()),U.muxId):U},D=function(U){var O;U&&U.nodeName!==void 0?U=A(O=U):O=document.querySelector(U);var w=O&&O.nodeName?O.nodeName.toLowerCase():"";return[O,U,w]},x=C(640),_=C.n(x),S=_().methodFactory;_().methodFactory=function(U,O,w){var W=S(U,O,w);return function(){for(var G=["[mux]"],X=0;X<arguments.length;X++)G.push(arguments[X]);W.apply(void 0,G)}},_().setLevel(_().getLevel());var d=_();function E(){return(M().doNotTrack||M().navigator&&M().navigator.doNotTrack)==="1"}var p={now:function(){var U=M().performance,O=U&&U.timing,w=O&&O.navigationStart,W=typeof w=="number"&&typeof U.now=="function"?w+U.now():Date.now();return Math.round(W)}},h=C(678),a=C.n(h),o=function(U){return n(U)[0]},n=function(U){if(typeof U!="string"||U==="")return["localhost"];var O,w=(U.match(/^(([^:\/?#]+):)?(\/\/([^\/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/)||[])[4];return w&&(O=(w.match(/[^\.]+\.[^\.]+$/)||[])[0]),[w,O]},v={exists:function(){var U=M().performance;return(U&&U.timing)!==void 0},domContentLoadedEventEnd:function(){var U=M().performance,O=U&&U.timing;return O&&O.domContentLoadedEventEnd},navigationStart:function(){var U=M().performance,O=U&&U.timing;return O&&O.navigationStart}};function l(U,O,w){w=w===void 0?1:w,U[O]=U[O]||0,U[O]+=w}var i=["x-cdn","content-type","x-request-id"];function u(U){var O={};return(U=U||"").trim().split(/[\r\n]+/).forEach(function(w){if(w){var W=w.split(": "),G=W.shift();G&&(i.indexOf(G.toLowerCase())>=0||G.toLowerCase().indexOf("x-litix-")===0)&&(O[G]=W.join(": "))}}),O}var g=function(U){var O={};for(var w in U){var W=U[w];W["DATA-ID"].search("io.litix.data.")!==-1&&(O[W["DATA-ID"].replace("io.litix.data.","")]=W.VALUE)}return O};function c(U,O){var w=Object.keys(U);if(Object.getOwnPropertySymbols){var W=Object.getOwnPropertySymbols(U);O&&(W=W.filter(function(G){return Object.getOwnPropertyDescriptor(U,G).enumerable})),w.push.apply(w,W)}return w}function m(U){for(var O=1;O<arguments.length;O++){var w=arguments[O]!=null?arguments[O]:{};O%2?c(Object(w),!0).forEach(function(W){e(U,W,w[W])}):Object.getOwnPropertyDescriptors?Object.defineProperties(U,Object.getOwnPropertyDescriptors(w)):c(Object(w)).forEach(function(W){Object.defineProperty(U,W,Object.getOwnPropertyDescriptor(w,W))})}return U}function e(U,O,w){return O in U?Object.defineProperty(U,O,{value:w,enumerable:!0,configurable:!0,writable:!0}):U[O]=w,U}var r=function(U){if(!U)return{};var O=v.navigationStart(),w=U.loading,W=w?w.start:U.trequest,G=w?w.first:U.tfirst,X=w?w.end:U.tload;return{bytesLoaded:U.total,requestStart:Math.round(O+W),responseStart:Math.round(O+G),responseEnd:Math.round(O+X)}},t=function(U){if(U&&typeof U.getAllResponseHeaders=="function")return u(U.getAllResponseHeaders())};function s(U,O){var w=Object.keys(U);if(Object.getOwnPropertySymbols){var W=Object.getOwnPropertySymbols(U);O&&(W=W.filter(function(G){return Object.getOwnPropertyDescriptor(U,G).enumerable})),w.push.apply(w,W)}return w}function y(U){for(var O=1;O<arguments.length;O++){var w=arguments[O]!=null?arguments[O]:{};O%2?s(Object(w),!0).forEach(function(W){f(U,W,w[W])}):Object.getOwnPropertyDescriptors?Object.defineProperties(U,Object.getOwnPropertyDescriptors(w)):s(Object(w)).forEach(function(W){Object.defineProperty(U,W,Object.getOwnPropertyDescriptor(w,W))})}return U}function f(U,O,w){return O in U?Object.defineProperty(U,O,{value:w,enumerable:!0,configurable:!0,writable:!0}):U[O]=w,U}var b=function(U,O){if(!U||typeof U.getRequests!="function")return{};var w=U.getRequests({state:"executed"});if(w.length===0)return{};var W,G=w[w.length-1],X=o(G.url),V=G.url,$=G.bytesLoaded,re=new Date(G.requestStartDate).getTime(),Z=new Date(G.firstByteDate).getTime(),oe=new Date(G.requestEndDate).getTime(),Ee=isNaN(G.duration)?0:G.duration,ve=typeof O.getMetricsFor=="function"?O.getMetricsFor(G.mediaType).HttpList:O.getDashMetrics().getHttpRequests(G.mediaType);return ve.length>0&&(W=u(ve[ve.length-1]._responseHeaders||"")),{requestStart:re,requestResponseStart:Z,requestResponseEnd:oe,requestBytesLoaded:$,requestResponseHeaders:W,requestMediaDuration:Ee,requestHostname:X,requestUrl:V}},R=function(U,O){var w=O.getQualityFor(U),W=O.getCurrentTrackFor(U).bitrateList;return W?{currentLevel:w,renditionWidth:W[w].width||null,renditionHeight:W[w].height||null,renditionBitrate:W[w].bandwidth}:{}},I=function(U){var O;return(O=U.match(/.*codecs\*?="(.*)"/))===null||O===void 0?void 0:O[1]};function k(U,O){for(var w=0;w<O.length;w++){var W=O[w];W.enumerable=W.enumerable||!1,W.configurable=!0,"value"in W&&(W.writable=!0),Object.defineProperty(U,W.key,W)}}var F=0,K=function(){function U(){(function(G,X){if(!(G instanceof X))throw new TypeError("Cannot call a class as a function")})(this,U)}var O,w,W;return O=U,w=[{key:"on",value:function(G,X,V){return X._eventEmitterGuid=X._eventEmitterGuid||++F,this._listeners=this._listeners||{},this._listeners[G]=this._listeners[G]||[],V&&(X=X.bind(V)),this._listeners[G].push(X),X}},{key:"off",value:function(G,X){var V=this._listeners&&this._listeners[G];V&&V.forEach(function($,re){$._eventEmitterGuid===X._eventEmitterGuid&&V.splice(re,1)})}},{key:"one",value:function(G,X,V){var $=this;X._eventEmitterGuid=X._eventEmitterGuid||++F;var re=function Z(){$.off(G,Z),X.apply(V||this,arguments)};re._eventEmitterGuid=X._eventEmitterGuid,this.on(G,re)}},{key:"emit",value:function(G,X){var V=this;if(this._listeners){X=X||{};var $=this._listeners["before*"]||[],re=this._listeners[G]||[],Z=this._listeners["after"+G]||[],oe=function(Ee,ve){(Ee=Ee.slice()).forEach(function(pe){pe.call(V,{type:G},ve)})};oe($,X),oe(re,X),oe(Z,X)}}}],w&&k(O.prototype,w),W&&k(O,W),Object.defineProperty(O,"prototype",{writable:!1}),U}(),H=K;function j(U,O){for(var w=0;w<O.length;w++){var W=O[w];W.enumerable=W.enumerable||!1,W.configurable=!0,"value"in W&&(W.writable=!0),Object.defineProperty(U,W.key,W)}}var Y=function(){function U(G){var X=this;(function(V,$){if(!(V instanceof $))throw new TypeError("Cannot call a class as a function")})(this,U),this.pm=G,this._playbackHeartbeatInterval=null,this._playheadShouldBeProgressing=!1,G.on("playing",function(){X._playheadShouldBeProgressing=!0}),G.on("play",this._startPlaybackHeartbeatInterval.bind(this)),G.on("playing",this._startPlaybackHeartbeatInterval.bind(this)),G.on("adbreakstart",this._startPlaybackHeartbeatInterval.bind(this)),G.on("adplay",this._startPlaybackHeartbeatInterval.bind(this)),G.on("adplaying",this._startPlaybackHeartbeatInterval.bind(this)),G.on("seeking",this._startPlaybackHeartbeatInterval.bind(this)),G.on("devicewake",this._startPlaybackHeartbeatInterval.bind(this)),G.on("viewstart",this._startPlaybackHeartbeatInterval.bind(this)),G.on("rebufferstart",this._startPlaybackHeartbeatInterval.bind(this)),G.on("pause",this._stopPlaybackHeartbeatInterval.bind(this)),G.on("ended",this._stopPlaybackHeartbeatInterval.bind(this)),G.on("viewend",this._stopPlaybackHeartbeatInterval.bind(this)),G.on("error",this._stopPlaybackHeartbeatInterval.bind(this)),G.on("aderror",this._stopPlaybackHeartbeatInterval.bind(this)),G.on("adpause",this._stopPlaybackHeartbeatInterval.bind(this)),G.on("adended",this._stopPlaybackHeartbeatInterval.bind(this)),G.on("adbreakend",this._stopPlaybackHeartbeatInterval.bind(this)),G.on("seeked",function(){G.data.player_is_paused?X._stopPlaybackHeartbeatInterval():X._startPlaybackHeartbeatInterval()}),G.on("timeupdate",function(){X._playbackHeartbeatInterval!==null&&G.emit("playbackheartbeat")}),G.on("devicesleep",function(V,$){X._playbackHeartbeatInterval!==null&&(M().clearInterval(X._playbackHeartbeatInterval),G.emit("playbackheartbeatend",{viewer_time:$.viewer_time}),X._playbackHeartbeatInterval=null)})}var O,w,W;return O=U,(w=[{key:"_startPlaybackHeartbeatInterval",value:function(){var G=this;this._playbackHeartbeatInterval===null&&(this.pm.emit("playbackheartbeat"),this._playbackHeartbeatInterval=M().setInterval(function(){G.pm.emit("playbackheartbeat")},this.pm.playbackHeartbeatTime))}},{key:"_stopPlaybackHeartbeatInterval",value:function(){this._playheadShouldBeProgressing=!1,this._playbackHeartbeatInterval!==null&&(M().clearInterval(this._playbackHeartbeatInterval),this.pm.emit("playbackheartbeatend"),this._playbackHeartbeatInterval=null)}}])&&j(O.prototype,w),W&&j(O,W),Object.defineProperty(O,"prototype",{writable:!1}),U}();function Q(U,O){for(var w=0;w<O.length;w++){var W=O[w];W.enumerable=W.enumerable||!1,W.configurable=!0,"value"in W&&(W.writable=!0),Object.defineProperty(U,W.key,W)}}function q(U,O,w){return O&&Q(U.prototype,O),w&&Q(U,w),Object.defineProperty(U,"prototype",{writable:!1}),U}var ne=q(function U(O){var w=this;(function(W,G){if(!(W instanceof G))throw new TypeError("Cannot call a class as a function")})(this,U),O.on("viewinit",function(){w.viewErrored=!1}),O.on("error",function(W,G){try{var X=O.errorTranslator({player_error_code:G.player_error_code,player_error_message:G.player_error_message,player_error_context:G.player_error_context});X?(O.data.player_error_code=X.player_error_code||G.player_error_code,O.data.player_error_message=X.player_error_message||G.player_error_message,O.data.player_error_context=X.player_error_context||G.player_error_context,w.viewErrored=!0):(delete O.data.player_error_code,delete O.data.player_error_message,delete O.data.player_error_context)}catch(V){O.mux.log.warn("Exception in error translator callback.",V),w.viewErrored=!0}})});function te(U,O){for(var w=0;w<O.length;w++){var W=O[w];W.enumerable=W.enumerable||!1,W.configurable=!0,"value"in W&&(W.writable=!0),Object.defineProperty(U,W.key,W)}}var ae=function(){function U(G){(function(X,V){if(!(X instanceof V))throw new TypeError("Cannot call a class as a function")})(this,U),this.pm=G,this._watchTimeTrackerLastCheckedTime=null,G.on("playbackheartbeat",this._updateWatchTime.bind(this)),G.on("playbackheartbeatend",this._clearWatchTimeState.bind(this))}var O,w,W;return O=U,(w=[{key:"_updateWatchTime",value:function(G,X){var V=X.viewer_time;this._watchTimeTrackerLastCheckedTime===null&&(this._watchTimeTrackerLastCheckedTime=V),l(this.pm.data,"view_watch_time",V-this._watchTimeTrackerLastCheckedTime),this._watchTimeTrackerLastCheckedTime=V}},{key:"_clearWatchTimeState",value:function(G,X){this._updateWatchTime(G,X),this._watchTimeTrackerLastCheckedTime=null}}])&&te(O.prototype,w),W&&te(O,W),Object.defineProperty(O,"prototype",{writable:!1}),U}();function ue(U,O){for(var w=0;w<O.length;w++){var W=O[w];W.enumerable=W.enumerable||!1,W.configurable=!0,"value"in W&&(W.writable=!0),Object.defineProperty(U,W.key,W)}}var ce=function(){function U(G){(function(X,V){if(!(X instanceof V))throw new TypeError("Cannot call a class as a function")})(this,U),this.pm=G,this._playbackTimeTrackerLastPlayheadPosition=-1,G.on("playbackheartbeat",this._updatePlaybackTime.bind(this)),G.on("playbackheartbeatend",this._clearPlaybackTimeState.bind(this)),G.on("seeking",this._clearPlaybackTimeState.bind(this))}var O,w,W;return O=U,(w=[{key:"_updatePlaybackTime",value:function(){var G=this.pm.data.player_playhead_time;if(this._playbackTimeTrackerLastPlayheadPosition>=0&&G>this._playbackTimeTrackerLastPlayheadPosition){var X=G-this._playbackTimeTrackerLastPlayheadPosition;X<=1e3&&l(this.pm.data,"view_content_playback_time",X)}this._playbackTimeTrackerLastPlayheadPosition=G}},{key:"_clearPlaybackTimeState",value:function(){this._updatePlaybackTime(),this._playbackTimeTrackerLastPlayheadPosition=-1}}])&&ue(O.prototype,w),W&&ue(O,W),Object.defineProperty(O,"prototype",{writable:!1}),U}();function le(U,O){for(var w=0;w<O.length;w++){var W=O[w];W.enumerable=W.enumerable||!1,W.configurable=!0,"value"in W&&(W.writable=!0),Object.defineProperty(U,W.key,W)}}var fe=function(){function U(G){(function(V,$){if(!(V instanceof $))throw new TypeError("Cannot call a class as a function")})(this,U),this.pm=G;var X=this._updatePlayheadTime.bind(this);G.on("playbackheartbeat",X),G.on("playbackheartbeatend",X),G.on("timeupdate",X),G.on("destroy",function(){G.off("timeupdate",X)})}var O,w,W;return O=U,(w=[{key:"_updateMaxPlayheadPosition",value:function(){this.pm.data.view_max_playhead_position=this.pm.data.view_max_playhead_position===void 0?this.pm.data.player_playhead_time:Math.max(this.pm.data.view_max_playhead_position,this.pm.data.player_playhead_time)}},{key:"_updatePlayheadTime",value:function(G,X){var V=this,$=function(){V.pm.currentFragmentPDT&&V.pm.currentFragmentStart&&(V.pm.data.player_program_time=V.pm.currentFragmentPDT+V.pm.data.player_playhead_time-V.pm.currentFragmentStart)};if(X&&X.player_playhead_time)this.pm.data.player_playhead_time=X.player_playhead_time,$(),this._updateMaxPlayheadPosition();else if(this.pm.getPlayheadTime){var re=this.pm.getPlayheadTime();re!==void 0&&(this.pm.data.player_playhead_time=re,$(),this._updateMaxPlayheadPosition())}}}])&&le(O.prototype,w),W&&le(O,W),Object.defineProperty(O,"prototype",{writable:!1}),U}();function de(U,O){for(var w=0;w<O.length;w++){var W=O[w];W.enumerable=W.enumerable||!1,W.configurable=!0,"value"in W&&(W.writable=!0),Object.defineProperty(U,W.key,W)}}function xe(U,O,w){return O&&de(U.prototype,O),w&&de(U,w),Object.defineProperty(U,"prototype",{writable:!1}),U}var Ae=xe(function U(O){if(function(X,V){if(!(X instanceof V))throw new TypeError("Cannot call a class as a function")}(this,U),!O.disableRebufferTracking){var w,W=function(X,V){G(V),w=void 0},G=function(X){if(w){var V=X.viewer_time-w;l(O.data,"view_rebuffer_duration",V),w=X.viewer_time}O.data.view_watch_time>=0&&O.data.view_rebuffer_count>0&&(O.data.view_rebuffer_frequency=O.data.view_rebuffer_count/O.data.view_watch_time,O.data.view_rebuffer_percentage=O.data.view_rebuffer_duration/O.data.view_watch_time)};O.on("playbackheartbeat",function(X,V){return G(V)}),O.on("rebufferstart",function(X,V){w||(l(O.data,"view_rebuffer_count",1),w=V.viewer_time,O.one("rebufferend",W))}),O.on("viewinit",function(){w=void 0,O.off("rebufferend",W)})}});function Ie(U,O){for(var w=0;w<O.length;w++){var W=O[w];W.enumerable=W.enumerable||!1,W.configurable=!0,"value"in W&&(W.writable=!0),Object.defineProperty(U,W.key,W)}}var Re=function(){function U(G){var X=this;(function(V,$){if(!(V instanceof $))throw new TypeError("Cannot call a class as a function")})(this,U),this.pm=G,G.disableRebufferTracking||G.disablePlayheadRebufferTracking||(this._lastCheckedTime=null,this._lastPlayheadTime=null,this._lastPlayheadTimeUpdatedTime=null,G.on("playbackheartbeat",this._checkIfRebuffering.bind(this)),G.on("playbackheartbeatend",this._cleanupRebufferTracker.bind(this)),G.on("seeking",function(){X._cleanupRebufferTracker(null,{viewer_time:p.now()})}))}var O,w,W;return O=U,w=[{key:"_checkIfRebuffering",value:function(G,X){if(this.pm.seekingTracker.isSeeking||this.pm.adTracker.isAdBreak||!this.pm.playbackHeartbeat._playheadShouldBeProgressing)this._cleanupRebufferTracker(G,X);else if(this._lastCheckedTime!==null)if(this._lastPlayheadTime===this.pm.data.player_playhead_time){var V=X.viewer_time-this._lastPlayheadTimeUpdatedTime;typeof this.pm.sustainedRebufferThreshold=="number"&&V>=this.pm.sustainedRebufferThreshold&&(this._rebuffering||(this._rebuffering=!0,this.pm.emit("rebufferstart",{viewer_time:this._lastPlayheadTimeUpdatedTime}))),this._lastCheckedTime=X.viewer_time}else this._cleanupRebufferTracker(G,X,!0);else this._prepareRebufferTrackerState(X.viewer_time)}},{key:"_clearRebufferTrackerState",value:function(){this._lastCheckedTime=null,this._lastPlayheadTime=null,this._lastPlayheadTimeUpdatedTime=null}},{key:"_prepareRebufferTrackerState",value:function(G){this._lastCheckedTime=G,this._lastPlayheadTime=this.pm.data.player_playhead_time,this._lastPlayheadTimeUpdatedTime=G}},{key:"_cleanupRebufferTracker",value:function(G,X){var V=arguments.length>2&&arguments[2]!==void 0&&arguments[2];if(this._rebuffering)this._rebuffering=!1,this.pm.emit("rebufferend",{viewer_time:X.viewer_time});else{if(this._lastCheckedTime===null)return;var $=this.pm.data.player_playhead_time-this._lastPlayheadTime,re=X.viewer_time-this._lastPlayheadTimeUpdatedTime;typeof this.pm.minimumRebufferDuration=="number"&&$>0&&re-$>this.pm.minimumRebufferDuration&&(this.pm.emit("rebufferstart",{viewer_time:this._lastPlayheadTimeUpdatedTime}),this.pm.emit("rebufferend",{viewer_time:this._lastPlayheadTimeUpdatedTime+re-$}))}V?this._prepareRebufferTrackerState(X.viewer_time):this._clearRebufferTrackerState()}}],w&&Ie(O.prototype,w),W&&Ie(O,W),Object.defineProperty(O,"prototype",{writable:!1}),U}(),Oe=Re;function Pe(U,O){for(var w=0;w<O.length;w++){var W=O[w];W.enumerable=W.enumerable||!1,W.configurable=!0,"value"in W&&(W.writable=!0),Object.defineProperty(U,W.key,W)}}var Ce=function(){function U(G){var X=this;(function(V,$){if(!(V instanceof $))throw new TypeError("Cannot call a class as a function")})(this,U),this.pm=G,G.on("viewinit",function(){var V=G.data,$=V.view_id;if(!V.view_program_changed){var re=function(Z,oe){var Ee=oe.viewer_time;Z.type==="playing"&&G.data.view_time_to_first_frame===void 0?X.calculateTimeToFirstFrame(Ee||p.now(),$):Z.type!=="adplaying"||G.data.view_time_to_first_frame!==void 0&&!X._inPrerollPosition()||X.calculateTimeToFirstFrame(Ee||p.now(),$)};G.one("playing",re),G.one("adplaying",re),G.one("viewend",function(){G.off("playing",re),G.off("adplaying",re)})}})}var O,w,W;return O=U,(w=[{key:"_inPrerollPosition",value:function(){return this.pm.data.view_content_playback_time===void 0||this.pm.data.view_content_playback_time<=1e3}},{key:"calculateTimeToFirstFrame",value:function(G,X){X===this.pm.data.view_id&&(this.pm.watchTimeTracker._updateWatchTime(null,{viewer_time:G}),this.pm.data.view_time_to_first_frame=this.pm.data.view_watch_time,(this.pm.data.player_autoplay_on||this.pm.data.video_is_autoplay)&&this.NAVIGATION_START&&(this.pm.data.view_aggregate_startup_time=this.pm.data.view_start+this.pm.data.view_watch_time-this.NAVIGATION_START))}}])&&Pe(O.prototype,w),W&&Pe(O,W),Object.defineProperty(O,"prototype",{writable:!1}),U}();function Le(U,O){for(var w=0;w<O.length;w++){var W=O[w];W.enumerable=W.enumerable||!1,W.configurable=!0,"value"in W&&(W.writable=!0),Object.defineProperty(U,W.key,W)}}function ke(U,O,w){return O&&Le(U.prototype,O),w&&Le(U,w),Object.defineProperty(U,"prototype",{writable:!1}),U}var Be=ke(function U(O){var w=this;(function(W,G){if(!(W instanceof G))throw new TypeError("Cannot call a class as a function")})(this,U),O.on("viewinit",function(){w._lastPlayheadPosition=-1}),["pause","rebufferstart","seeking","error","adbreakstart","hb"].forEach(function(W){O.on(W,function(){if(w._lastPlayheadPosition>=0&&O.data.player_playhead_time>=0&&w._lastPlayerWidth>=0&&w._lastSourceWidth>0&&w._lastPlayerHeight>=0&&w._lastSourceHeight>0){var G=O.data.player_playhead_time-w._lastPlayheadPosition;if(G<0)return void(w._lastPlayheadPosition=-1);var X=Math.min(w._lastPlayerWidth/w._lastSourceWidth,w._lastPlayerHeight/w._lastSourceHeight),V=Math.max(0,X-1),$=Math.max(0,1-X);O.data.view_max_upscale_percentage=Math.max(O.data.view_max_upscale_percentage||0,V),O.data.view_max_downscale_percentage=Math.max(O.data.view_max_downscale_percentage||0,$),l(O.data,"view_total_content_playback_time",G),l(O.data,"view_total_upscaling",V*G),l(O.data,"view_total_downscaling",$*G)}w._lastPlayheadPosition=-1})}),["playing","hb"].forEach(function(W){O.on(W,function(){w._lastPlayheadPosition=O.data.player_playhead_time,w._lastPlayerWidth=O.data.player_width,w._lastPlayerHeight=O.data.player_height,w._lastSourceWidth=O.data.video_source_width,w._lastSourceHeight=O.data.video_source_height})})});function we(U,O){for(var w=0;w<O.length;w++){var W=O[w];W.enumerable=W.enumerable||!1,W.configurable=!0,"value"in W&&(W.writable=!0),Object.defineProperty(U,W.key,W)}}function Ye(U,O,w){return O&&we(U.prototype,O),w&&we(U,w),Object.defineProperty(U,"prototype",{writable:!1}),U}var Xe=Ye(function U(O){var w=this;(function(W,G){if(!(W instanceof G))throw new TypeError("Cannot call a class as a function")})(this,U),this.isSeeking=!1,O.on("seeking",function(W,G){a()(O.data,G),w._lastSeekingTime=p.now(),w.isSeeking===!1&&(w.isSeeking=!0,O.send("seeking"))}),O.on("seeked",function(){w.isSeeking=!1;var W=w._lastSeekingTime||p.now(),G=p.now()-W;l(O.data,"view_seek_count",1),l(O.data,"view_seek_duration",G);var X=O.data.view_max_seek_time||0;O.data.view_max_seek_time=Math.max(X,G)}),O.on("viewend",function(){w.isSeeking=!1})});function rt(U,O){return function(w){if(Array.isArray(w))return w}(U)||function(w,W){var G=w==null?null:typeof Symbol!="undefined"&&w[Symbol.iterator]||w["@@iterator"];if(G!=null){var X,V,$=[],re=!0,Z=!1;try{for(G=G.call(w);!(re=(X=G.next()).done)&&($.push(X.value),!W||$.length!==W);re=!0);}catch(oe){Z=!0,V=oe}finally{try{re||G.return==null||G.return()}finally{if(Z)throw V}}return $}}(U,O)||function(w,W){if(w){if(typeof w=="string")return ze(w,W);var G=Object.prototype.toString.call(w).slice(8,-1);return G==="Object"&&w.constructor&&(G=w.constructor.name),G==="Map"||G==="Set"?Array.from(w):G==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(G)?ze(w,W):void 0}}(U,O)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
2
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function ze(U,O){(O==null||O>U.length)&&(O=U.length);for(var w=0,W=new Array(O);w<O;w++)W[w]=U[w];return W}function it(U,O){for(var w=0;w<O.length;w++){var W=O[w];W.enumerable=W.enumerable||!1,W.configurable=!0,"value"in W&&(W.writable=!0),Object.defineProperty(U,W.key,W)}}var nt=function(U,O){U.push(O),U.sort(function(w,W){return w.viewer_time-W.viewer_time})},Je=["adbreakstart","adrequest","adresponse","adplay","adplaying","adpause","adended","adbreakend","aderror"],Ne=function(){function U(G){var X=this;(function($,re){if(!($ instanceof re))throw new TypeError("Cannot call a class as a function")})(this,U),this.pm=G,G.on("viewinit",function(){X.isAdBreak=!1,X._currentAdRequestNumber=0,X._currentAdResponseNumber=0,X._adRequests=[],X._adResponses=[],X._adHasPlayed=!1,X._wouldBeNewAdPlay=!0,X._prerollPlayTime=void 0}),Je.forEach(function($){return G.on($,X._updateAdData.bind(X))});var V=function(){X.isAdBreak=!1};G.on("adbreakstart",function(){X.isAdBreak=!0}),G.on("play",V),G.on("playing",V),G.on("viewend",V),G.on("adrequest",function($,re){re=a()({ad_request_id:"generatedAdRequestId"+X._currentAdRequestNumber++},re),nt(X._adRequests,re),l(G.data,"view_ad_request_count"),X.inPrerollPosition()&&(G.data.view_preroll_requested=!0,X._adHasPlayed||l(G.data,"view_preroll_request_count"))}),G.on("adresponse",function($,re){re=a()({ad_request_id:"generatedAdRequestId"+X._currentAdResponseNumber++},re),nt(X._adResponses,re);var Z=X.findAdRequest(re.ad_request_id);Z&&l(G.data,"view_ad_request_time",Math.max(0,re.viewer_time-Z.viewer_time))}),G.on("adplay",function($,re){X._adHasPlayed=!0,X._wouldBeNewAdPlay&&(X._wouldBeNewAdPlay=!1,l(G.data,"view_ad_played_count")),X.inPrerollPosition()&&!G.data.view_preroll_played&&(G.data.view_preroll_played=!0,X._adRequests.length>0&&(G.data.view_preroll_request_time=Math.max(0,re.viewer_time-X._adRequests[0].viewer_time)),G.data.view_start&&(G.data.view_startup_preroll_request_time=Math.max(0,re.viewer_time-G.data.view_start)),X._prerollPlayTime=re.viewer_time)}),G.on("adplaying",function($,re){X.inPrerollPosition()&&G.data.view_preroll_load_time===void 0&&X._prerollPlayTime!==void 0&&(G.data.view_preroll_load_time=re.viewer_time-X._prerollPlayTime,G.data.view_startup_preroll_load_time=re.viewer_time-X._prerollPlayTime)}),G.on("adended",function(){X._wouldBeNewAdPlay=!0}),G.on("aderror",function(){X._wouldBeNewAdPlay=!0})}var O,w,W;return O=U,(w=[{key:"inPrerollPosition",value:function(){return this.pm.data.view_content_playback_time===void 0||this.pm.data.view_content_playback_time<=1e3}},{key:"findAdRequest",value:function(G){for(var X=0;X<this._adRequests.length;X++)if(this._adRequests[X].ad_request_id===G)return this._adRequests[X]}},{key:"_updateAdData",value:function(G,X){if(this.inPrerollPosition()){if(!this.pm.data.view_preroll_ad_tag_hostname&&X.ad_tag_url){var V=rt(n(X.ad_tag_url),2),$=V[0],re=V[1];this.pm.data.view_preroll_ad_tag_domain=re,this.pm.data.view_preroll_ad_tag_hostname=$}if(!this.pm.data.view_preroll_ad_asset_hostname&&X.ad_asset_url){var Z=rt(n(X.ad_asset_url),2),oe=Z[0],Ee=Z[1];this.pm.data.view_preroll_ad_asset_domain=Ee,this.pm.data.view_preroll_ad_asset_hostname=oe}}}}])&&it(O.prototype,w),W&&it(O,W),Object.defineProperty(O,"prototype",{writable:!1}),U}();function Ke(U,O){for(var w=0;w<O.length;w++){var W=O[w];W.enumerable=W.enumerable||!1,W.configurable=!0,"value"in W&&(W.writable=!0),Object.defineProperty(U,W.key,W)}}function Ze(U,O,w){return O&&Ke(U.prototype,O),w&&Ke(U,w),Object.defineProperty(U,"prototype",{writable:!1}),U}var ft=Ze(function U(O){var w,W;(function($,re){if(!($ instanceof re))throw new TypeError("Cannot call a class as a function")})(this,U);var G=function(){O.disableRebufferTracking||w&&(l(O.data,"view_waiting_rebuffer_duration",p.now()-w),w=!1,M().clearInterval(W))},X=!1,V=function(){X=!1,G()};O.on("waiting",function(){X&&(O.disableRebufferTracking||(l(O.data,"view_waiting_rebuffer_count",1),w=p.now(),W=M().setInterval(function(){if(w){var $=p.now();l(O.data,"view_waiting_rebuffer_duration",$-w),w=$}},250)))}),O.on("playing",function(){G(),X=!0}),O.on("pause",V),O.on("seeking",V)});function Me(U,O){for(var w=0;w<O.length;w++){var W=O[w];W.enumerable=W.enumerable||!1,W.configurable=!0,"value"in W&&(W.writable=!0),Object.defineProperty(U,W.key,W)}}function qe(U,O,w){return O&&Me(U.prototype,O),w&&Me(U,w),Object.defineProperty(U,"prototype",{writable:!1}),U}var et=qe(function U(O){var w=this;(function(X,V){if(!(X instanceof V))throw new TypeError("Cannot call a class as a function")})(this,U);var W=function(){w.lastWallClockTime=p.now(),O.on("before*",G)},G=function(X){var V=p.now(),$=w.lastWallClockTime;w.lastWallClockTime=V,V-$>3e4&&(O.emit("devicesleep",{viewer_time:$}),a()(O.data,{viewer_time:$}),O.send("devicesleep"),O.emit("devicewake",{viewer_time:V}),a()(O.data,{viewer_time:V}),O.send("devicewake"))};O.one("playbackheartbeat",W),O.on("playbackheartbeatend",function(){O.off("before*",G),O.one("playbackheartbeat",W)})}),_t=C(375),mt=C(655),pt=C.n(mt),Rt="muxData",Tt=function(){var U;try{U=_t.parse(pt().get(Rt)||"")}catch{U={}}return U},Gt=function(U){try{pt().set(Rt,_t.stringify(U),{expires:7300})}catch{}},It=function(){var U=Tt();return U.mux_viewer_id=U.mux_viewer_id||P(),U.msn=U.msn||Math.random(),Gt(U),{mux_viewer_id:U.mux_viewer_id,mux_sample_number:U.msn}};function rr(U,O){var w=O.beaconCollectionDomain,W=O.beaconDomain;if(w)return"https://"+w;var G=W||"litix.io";return(U=U||"inferred").match(/^[a-z0-9]+$/)?"https://"+U+"."+G:"https://img.litix.io/a.gif"}var Ot=function(){var U;switch(St()){case"cellular":U="cellular";break;case"ethernet":U="wired";break;case"wifi":U="wifi";break;case void 0:break;default:U="other"}return U},St=function(){var U=M().navigator,O=U&&(U.connection||U.mozConnection||U.webkitConnection);return O&&O.type};Ot.getConnectionFromAPI=St;var lt=Ot,Ht=jt({a:"env",b:"beacon",c:"custom",d:"ad",e:"event",f:"experiment",i:"internal",m:"mux",n:"response",p:"player",q:"request",r:"retry",s:"session",t:"timestamp",u:"viewer",v:"video",w:"page",x:"view",y:"sub"}),Ct=jt({ad:"ad",ag:"aggregate",ap:"api",al:"application",ar:"architecture",as:"asset",au:"autoplay",av:"average",bi:"bitrate",br:"break",bw:"browser",by:"bytes",ca:"cached",cb:"cancel",cc:"codec",cd:"code",cg:"category",ch:"changed",cn:"config",co:"count",ce:"counter",cp:"complete",cr:"creative",ct:"content",cu:"current",cx:"connection",cz:"context",dg:"downscaling",dm:"domain",dn:"cdn",do:"downscale",dr:"drm",dp:"dropped",du:"duration",dv:"device",ec:"encoding",ed:"edge",en:"end",eg:"engine",em:"embed",er:"error",es:"errorcode",et:"errortext",ee:"event",ev:"events",ex:"expires",ep:"experiments",fi:"first",fm:"family",ft:"format",fp:"fps",fq:"frequency",fr:"frame",fs:"fullscreen",hb:"holdback",he:"headers",ho:"host",hn:"hostname",ht:"height",id:"id",ii:"init",in:"instance",ip:"ip",is:"is",ke:"key",la:"language",lb:"labeled",le:"level",li:"live",ld:"loaded",lo:"load",ls:"lists",lt:"latency",ma:"max",md:"media",me:"message",mf:"manifest",mi:"mime",ml:"midroll",mm:"min",mn:"manufacturer",mo:"model",mx:"mux",ne:"newest",nm:"name",no:"number",on:"on",os:"os",pa:"paused",pb:"playback",pd:"producer",pe:"percentage",pf:"played",pg:"program",ph:"playhead",pi:"plugin",pl:"preroll",pn:"playing",po:"poster",pr:"preload",ps:"position",pt:"part",py:"property",ra:"rate",rd:"requested",re:"rebuffer",rf:"rendition",rm:"remote",ro:"ratio",rp:"response",rq:"request",rs:"requests",sa:"sample",se:"session",sk:"seek",sm:"stream",so:"source",sq:"sequence",sr:"series",st:"start",su:"startup",sv:"server",sw:"software",ta:"tag",tc:"tech",te:"text",tg:"target",th:"throughput",ti:"time",tl:"total",to:"to",tt:"title",ty:"type",ug:"upscaling",un:"universal",up:"upscale",ur:"url",us:"user",va:"variant",vd:"viewed",vi:"video",ve:"version",vw:"view",vr:"viewer",wd:"width",wa:"watch",wt:"waiting"});function jt(U){var O={};for(var w in U)U.hasOwnProperty(w)&&(O[U[w]]=w);return O}function Mt(U){var O={},w={};return Object.keys(U).forEach(function(W){var G=!1;if(U.hasOwnProperty(W)&&U[W]!==void 0){var X=W.split("_"),V=X[0],$=Ht[V];$||(d.info("Data key word `"+X[0]+"` not expected in "+W),$=V+"_"),X.splice(1).forEach(function(re){re==="url"&&(G=!0),Ct[re]?$+=Ct[re]:Number(re)&&Math.floor(Number(re))===Number(re)?$+=re:(d.info("Data key word `"+re+"` not expected in "+W),$+="_"+re+"_")}),G?w[$]=U[W]:O[$]=U[W]}}),a()(O,w)}var ir={maxBeaconSize:300,maxQueueLength:3600,baseTimeBetweenBeacons:1e4,maxPayloadKBSize:500},nr=["hb","requestcompleted","requestfailed","requestcanceled"],ar="https://img.litix.io",ut=function(U){var O=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this._beaconUrl=U||ar,this._eventQueue=[],this._postInFlight=!1,this._failureCount=0,this._sendTimeout=!1,this._options=a()({},ir,O)};ut.prototype.queueEvent=function(U,O){var w=a()({},O);return(this._eventQueue.length<=this._options.maxQueueLength||U==="eventrateexceeded")&&(this._eventQueue.push(w),this._sendTimeout||this._startBeaconSending(),this._eventQueue.length<=this._options.maxQueueLength)},ut.prototype.flushEvents=function(){var U=arguments.length>0&&arguments[0]!==void 0&&arguments[0];U&&this._eventQueue.length===1?this._eventQueue.pop():(this._eventQueue.length&&this._sendBeaconQueue(),this._startBeaconSending())},ut.prototype.destroy=function(){var U=arguments.length>0&&arguments[0]!==void 0&&arguments[0];this.destroyed=!0,U?this._clearBeaconQueue():this.flushEvents(),M().clearTimeout(this._sendTimeout)},ut.prototype._clearBeaconQueue=function(){var U=this._eventQueue.length>this._options.maxBeaconSize?this._eventQueue.length-this._options.maxBeaconSize:0,O=this._eventQueue.slice(U);U>0&&a()(O[O.length-1],Mt({mux_view_message:"event queue truncated"}));var w=this._createPayload(O);wt(this._beaconUrl,w,!0,function(){})},ut.prototype._sendBeaconQueue=function(){var U=this;if(!this._postInFlight){var O=this._eventQueue.slice(0,this._options.maxBeaconSize);this._eventQueue=this._eventQueue.slice(this._options.maxBeaconSize),this._postInFlight=!0;var w=this._createPayload(O),W=p.now();wt(this._beaconUrl,w,!1,function(G,X){X?(U._eventQueue=O.concat(U._eventQueue),U._failureCount+=1,d.info("Error sending beacon: "+X)):U._failureCount=0,U._roundTripTime=p.now()-W,U._postInFlight=!1})}},ut.prototype._getNextBeaconTime=function(){if(!this._failureCount)return this._options.baseTimeBetweenBeacons;var U=Math.pow(2,this._failureCount-1);return(1+(U*=Math.random()))*this._options.baseTimeBetweenBeacons},ut.prototype._startBeaconSending=function(){var U=this;M().clearTimeout(this._sendTimeout),this.destroyed||(this._sendTimeout=M().setTimeout(function(){U._eventQueue.length&&U._sendBeaconQueue(),U._startBeaconSending()},this._getNextBeaconTime()))},ut.prototype._createPayload=function(U){var O,w,W,G=this,X={transmission_timestamp:Math.round(p.now())};this._roundTripTime&&(X.rtt_ms=Math.round(this._roundTripTime));var V=function(){O=JSON.stringify({metadata:X,events:w||U}),W=O.length/1024},$=function(){return W<=G._options.maxPayloadKBSize};return V(),$()||(d.info("Payload size is too big ("+W+" kb). Removing unnecessary events."),w=U.filter(function(re){return nr.indexOf(re.e)===-1}),V()),$()||(d.info("Payload size still too big ("+W+" kb). Cropping fields.."),w.forEach(function(re){for(var Z in re){var oe=re[Z];typeof oe=="string"&&oe.length>51200&&(re[Z]=oe.substring(0,51200))}}),V()),O};var wt=function(U,O,w,W){if(w&&navigator&&navigator.sendBeacon&&navigator.sendBeacon(U,O))W();else if(M().fetch)M().fetch(U,{method:"POST",body:O,headers:{"Content-Type":"text/plain"},keepalive:!0}).then(function(X){return W(null,X.ok?null:"Error")}).catch(function(X){return W(null,X)});else{if(M().XMLHttpRequest){var G=new(M()).XMLHttpRequest;return G.onreadystatechange=function(){if(G.readyState===4)return W(null,G.status!==200?"error":void 0)},G.open("POST",U),G.setRequestHeader("Content-Type","text/plain"),void G.send(O)}W()}},sr=ut;function or(U,O){return function(w){if(Array.isArray(w))return w}(U)||function(w,W){var G=w==null?null:typeof Symbol!="undefined"&&w[Symbol.iterator]||w["@@iterator"];if(G!=null){var X,V,$=[],re=!0,Z=!1;try{for(G=G.call(w);!(re=(X=G.next()).done)&&($.push(X.value),!W||$.length!==W);re=!0);}catch(oe){Z=!0,V=oe}finally{try{re||G.return==null||G.return()}finally{if(Z)throw V}}return $}}(U,O)||function(w,W){if(w){if(typeof w=="string")return Dr(w,W);var G=Object.prototype.toString.call(w).slice(8,-1);return G==="Object"&&w.constructor&&(G=w.constructor.name),G==="Map"||G==="Set"?Array.from(w):G==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(G)?Dr(w,W):void 0}}(U,O)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
3
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function
|
|
4
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function Rr(U,O){(O==null||O>U.length)&&(O=U.length);for(var w=0,W=new Array(O);w<O;w++)W[w]=U[w];return W}function Ir(U,O){for(var w=0;w<O.length;w++){var W=O[w];W.enumerable=W.enumerable||!1,W.configurable=!0,"value"in W&&(W.writable=!0),Object.defineProperty(U,W.key,W)}}function ur(U,O){return ur=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(w,W){return w.__proto__=W,w},ur(U,O)}function vi(U){var O=function(){if(typeof Reflect=="undefined"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}();return function(){var w,W=Yt(U);if(O){var G=Yt(this).constructor;w=Reflect.construct(W,arguments,G)}else w=W.apply(this,arguments);return gi(this,w)}}function gi(U,O){if(O&&(lr(O)==="object"||typeof O=="function"))return O;if(O!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return We(U)}function We(U){if(U===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return U}function Yt(U){return Yt=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(O){return O.__proto__||Object.getPrototypeOf(O)},Yt(U)}var mi=["viewstart","ended","loadstart","pause","play","playing","ratechange","waiting","adplay","adpause","adended","aderror","adplaying","adrequest","adresponse","adbreakstart","adbreakend","adfirstquartile","admidpoint","adthirdquartile","rebufferstart","rebufferend","seeked","error","hb","requestcompleted","requestfailed","requestcanceled","renditionchange"],pi=function(U){(function(V,$){if(typeof $!="function"&&$!==null)throw new TypeError("Super expression must either be null or a function");V.prototype=Object.create($&&$.prototype,{constructor:{value:V,writable:!0,configurable:!0}}),Object.defineProperty(V,"prototype",{writable:!1}),$&&ur(V,$)})(X,U);var O,w,W,G=vi(X);function X(V,$,re){var Z;(function(he,ye){if(!(he instanceof ye))throw new TypeError("Cannot call a class as a function")})(this,X),(Z=G.call(this)).DOM_CONTENT_LOADED_EVENT_END=v.domContentLoadedEventEnd(),Z.NAVIGATION_START=v.navigationStart(),Z.mux=V,Z.id=$,(re=a()({debug:!1,minimumRebufferDuration:250,sustainedRebufferThreshold:1e3,playbackHeartbeatTime:25,beaconDomain:"litix.io",sampleRate:1,disableCookies:!1,respectDoNotTrack:!1,disableRebufferTracking:!1,disablePlayheadRebufferTracking:!1,errorTranslator:function(he){return he}},re)).data=re.data||{},re.data.property_key&&(re.data.env_key=re.data.property_key,delete re.data.property_key),d.setLevel(re.debug?"debug":"warn"),Z.getPlayheadTime=re.getPlayheadTime,Z.getStateData=re.getStateData||function(){return{}},Z.getAdData=re.getAdData||function(){},Z.minimumRebufferDuration=re.minimumRebufferDuration,Z.sustainedRebufferThreshold=re.sustainedRebufferThreshold,Z.playbackHeartbeatTime=re.playbackHeartbeatTime,Z.disableRebufferTracking=re.disableRebufferTracking,Z.disableRebufferTracking&&Z.mux.log.warn("Disabling rebuffer tracking. This should only be used in specific circumstances as a last resort when your player is known to unreliably track rebuffering."),Z.disablePlayheadRebufferTracking=re.disablePlayheadRebufferTracking,Z.errorTranslator=re.errorTranslator,Z.playbackEventDispatcher=new li(V,re.data.env_key,re),Z.data={player_instance_id:P(),mux_sample_rate:re.sampleRate,beacon_domain:re.beaconCollectionDomain?re.beaconCollectionDomain:re.beaconDomain},Z.data.view_sequence_number=1,Z.data.player_sequence_number=1,Z.oldEmit=Z.emit,Z.emit=function(he,ye){ye=a()({viewer_time:this.mux.utils.now()},ye),this.oldEmit(he,ye)};var oe=function(){this.data.view_start===void 0&&(this.data.view_start=this.mux.utils.now(),this.emit("viewstart"))}.bind(We(Z));Z.on("viewinit",function(he,ye){this._resetVideoData(),this._resetViewData(),this._resetErrorData(),this._updateStateData(),a()(this.data,ye),this._initializeViewData(),this.one("play",oe),this.one("adbreakstart",oe)});var Ee=function(he){this.emit("viewend"),this.send("viewend"),this.emit("viewinit",he)}.bind(We(Z));if(Z.on("videochange",function(he,ye){Ee(ye)}),Z.on("programchange",function(he,ye){this.data.player_is_paused&&this.mux.log.warn("The `programchange` event is intended to be used when the content changes mid playback without the video source changing, however the video is not currently playing. If the video source is changing please use the videochange event otherwise you will lose startup time information."),Ee(a()(ye,{view_program_changed:!0})),oe(),this.emit("play"),this.emit("playing")}),Z.on("fragmentchange",function(he,ye){this.currentFragmentPDT=ye.currentFragmentPDT,this.currentFragmentStart=ye.currentFragmentStart}),Z.on("destroy",Z.destroy),typeof window!="undefined"&&typeof window.addEventListener=="function"&&typeof window.removeEventListener=="function"){var ve=function(){var he=Z.data.view_start!==void 0;Z.mux.WINDOW_HIDDEN=document.visibilityState==="hidden",he&&Z.mux.WINDOW_HIDDEN&&(Z.data.player_is_paused||Z.emit("hb"))};window.addEventListener("visibilitychange",ve,!1);var pe=function(he){he.persisted||Z.destroy()};window.addEventListener("pagehide",pe,!1),Z.on("destroy",function(){window.removeEventListener("visibilitychange",ve),window.removeEventListener("pagehide",pe)})}return Z.on("playerready",function(he,ye){a()(this.data,ye)}),mi.forEach(function(he){Z.on(he,function(ye,be){he.indexOf("ad")!==0&&this._updateStateData(),a()(this.data,be),this._sanitizeData()}),Z.on("after"+he,function(){(he!=="error"||this.errorTracker.viewErrored)&&this.send(he)})}),Z.on("viewend",function(he,ye){a()(Z.data,ye)}),Z.one("playerready",function(he){var ye=this.mux.utils.now();this.data.player_init_time&&(this.data.player_startup_time=ye-this.data.player_init_time),!this.mux.PLAYER_TRACKED&&this.NAVIGATION_START&&(this.mux.PLAYER_TRACKED=!0,(this.data.player_init_time||this.DOM_CONTENT_LOADED_EVENT_END)&&(this.data.page_load_time=Math.min(this.data.player_init_time||1/0,this.DOM_CONTENT_LOADED_EVENT_END||1/0)-this.NAVIGATION_START)),this.send("playerready"),delete this.data.player_startup_time,delete this.data.page_load_time}),Z.longResumeTracker=new ci(We(Z)),Z.errorTracker=new ne(We(Z)),new et(We(Z)),Z.seekingTracker=new Xe(We(Z)),Z.playheadTime=new fe(We(Z)),Z.playbackHeartbeat=new Y(We(Z)),new Be(We(Z)),Z.watchTimeTracker=new ae(We(Z)),new ce(We(Z)),Z.adTracker=new Ne(We(Z)),new Oe(We(Z)),new Ae(We(Z)),new Ce(We(Z)),new ft(We(Z)),new fi(We(Z)),re.hlsjs&&Z.addHLSJS(re),re.dashjs&&Z.addDashJS(re),Z.emit("viewinit",re.data),Z}return O=X,w=[{key:"destroy",value:function(){this._destroyed||(this._destroyed=!0,this.data.view_start!==void 0&&(this.emit("viewend"),this.send("viewend")),this.playbackEventDispatcher.destroy(),this.removeHLSJS(),this.removeDashJS(),window.clearTimeout(this._heartBeatTimeout))}},{key:"send",value:function(V){var $=a()({},this.data);if($.video_source_is_live===void 0&&($.player_source_duration===1/0||$.video_source_duration===1/0?$.video_source_is_live=!0:($.player_source_duration>0||$.video_source_duration>0)&&($.video_source_is_live=!1)),$.video_source_is_live||["player_program_time","player_manifest_newest_program_time","player_live_edge_program_time","player_program_time","video_holdback","video_part_holdback","video_target_duration","video_part_target_duration"].forEach(function(Ee){$[Ee]=void 0}),$.video_source_url=$.video_source_url||$.player_source_url,$.video_source_url){var re=hi(n($.video_source_url),2),Z=re[0],oe=re[1];$.video_source_domain=oe,$.video_source_hostname=Z}delete $.ad_request_id,this.playbackEventDispatcher.send(V,$),this.data.view_sequence_number++,this.data.player_sequence_number++,this._restartHeartBeat()}},{key:"_updateStateData",value:function(){a()(this.data,this.getStateData()),this.playheadTime._updatePlayheadTime(),this._sanitizeData()}},{key:"_sanitizeData",value:function(){var V=this;["player_width","player_height","video_source_width","video_source_height","player_playhead_time","video_source_bitrate"].forEach(function($){var re=parseInt(V.data[$],10);V.data[$]=isNaN(re)?void 0:re}),["player_source_url","video_source_url"].forEach(function($){if(V.data[$]){var re=V.data[$].toLowerCase();re.indexOf("data:")!==0&&re.indexOf("blob:")!==0||(V.data[$]="MSE style URL")}})}},{key:"_resetVideoData",value:function(V,$){var re=this;Object.keys(this.data).forEach(function(Z){Z.indexOf("video_")===0&&delete re.data[Z]})}},{key:"_resetViewData",value:function(){var V=this;Object.keys(this.data).forEach(function($){$.indexOf("view_")===0&&delete V.data[$]}),this.data.view_sequence_number=1}},{key:"_resetErrorData",value:function(V,$){delete this.data.player_error_code,delete this.data.player_error_message}},{key:"_initializeViewData",value:function(){var V=this,$=this.data.view_id=P(),re=function(){$===V.data.view_id&&l(V.data,"player_view_count",1)};this.data.player_is_paused?this.one("play",re):re()}},{key:"_restartHeartBeat",value:function(){var V=this;window.clearTimeout(this._heartBeatTimeout),this.errorTracker.viewErrored||(this._heartBeatTimeout=window.setTimeout(function(){V.data.player_is_paused||V.emit("hb")},1e4))}},{key:"addHLSJS",value:function(V){V.hlsjs?this.hlsjs?this.mux.log.warn("An instance of HLS.js is already being monitored for this player."):(this.hlsjs=V.hlsjs,function($,re,Z){var oe=arguments.length>4?arguments[4]:void 0,Ee=$.log,ve=$.utils.secondsToMs,pe=function(De){var me,_e=parseInt(oe.version);return _e===1&&De.programDateTime!==null&&(me=De.programDateTime),_e===0&&De.pdt!==null&&(me=De.pdt),me};if(v.exists()){var he=function(De,me){return $.emit(re,De,me)},ye=function(De,me){var _e=me.levels,ge=me.audioTracks,Te=me.url,Fe=me.stats,Ue=me.networkDetails,st=me.sessionData,tt={},ct={};_e.forEach(function(gt,Bt){tt[Bt]={width:gt.width,height:gt.height,bitrate:gt.bitrate,attrs:gt.attrs}}),ge.forEach(function(gt,Bt){ct[Bt]={name:gt.name,language:gt.lang,bitrate:gt.bitrate}});var ot=r(Fe),vt=ot.bytesLoaded,Ge=ot.requestStart,ht=ot.responseStart,hr=ot.responseEnd;he("requestcompleted",m(m({},g(st)),{},{request_event_type:De,request_bytes_loaded:vt,request_start:Ge,request_response_start:ht,request_response_end:hr,request_type:"manifest",request_hostname:o(Te),request_response_headers:t(Ue),request_rendition_lists:{media:tt,audio:ct,video:{}}}))};Z.on(oe.Events.MANIFEST_LOADED,ye);var be=function(De,me){var _e=me.details,ge=me.level,Te=me.networkDetails,Fe=me.stats,Ue=r(Fe),st=Ue.bytesLoaded,tt=Ue.requestStart,ct=Ue.responseStart,ot=Ue.responseEnd,vt=_e.fragments[_e.fragments.length-1],Ge=pe(vt)+ve(vt.duration);he("requestcompleted",{request_event_type:De,request_bytes_loaded:st,request_start:tt,request_response_start:ct,request_response_end:ot,request_current_level:ge,request_type:"manifest",request_hostname:o(_e.url),request_response_headers:t(Te),video_holdback:_e.holdBack&&ve(_e.holdBack),video_part_holdback:_e.partHoldBack&&ve(_e.partHoldBack),video_part_target_duration:_e.partTarget&&ve(_e.partTarget),video_target_duration:_e.targetduration&&ve(_e.targetduration),video_source_is_live:_e.live,player_manifest_newest_program_time:isNaN(Ge)?void 0:Ge})};Z.on(oe.Events.LEVEL_LOADED,be);var He=function(De,me){var _e=me.details,ge=me.networkDetails,Te=me.stats,Fe=r(Te),Ue=Fe.bytesLoaded,st=Fe.requestStart,tt=Fe.responseStart,ct=Fe.responseEnd;he("requestcompleted",{request_event_type:De,request_bytes_loaded:Ue,request_start:st,request_response_start:tt,request_response_end:ct,request_type:"manifest",request_hostname:o(_e.url),request_response_headers:t(ge)})};Z.on(oe.Events.AUDIO_TRACK_LOADED,He);var je=function(De,me){var _e=me.stats,ge=me.networkDetails,Te=me.frag;_e=_e||Te.stats;var Fe=r(_e),Ue=Fe.bytesLoaded,st=Fe.requestStart,tt=Fe.responseStart,ct=Fe.responseEnd,ot=t(ge),vt=ot==null?void 0:ot["x-request-id"],Ge={request_event_type:De,request_bytes_loaded:Ue,request_start:st,request_response_start:tt,request_response_end:ct,request_hostname:ge?o(ge.responseURL):void 0,request_id:vt,request_response_headers:ot,request_media_duration:Te.duration,request_url:ge==null?void 0:ge.responseURL};Te.type==="main"?(Ge.request_type="media",Ge.request_current_level=Te.level,Ge.request_video_width=(Z.levels[Te.level]||{}).width,Ge.request_video_height=(Z.levels[Te.level]||{}).height,Ge.request_labeled_bitrate=(Z.levels[Te.level]||{}).bitrate):Ge.request_type=Te.type,he("requestcompleted",Ge)};Z.on(oe.Events.FRAG_LOADED,je);var at=function(De,me){var _e=me.frag,ge=_e.start,Te={currentFragmentPDT:pe(_e),currentFragmentStart:ve(ge)};he("fragmentchange",Te)};Z.on(oe.Events.FRAG_CHANGED,at);var Se=function(De,me){var _e=me.type,ge=me.details,Te=me.response,Fe=me.fatal,Ue=me.context,st=me.frag;if(ge===oe.ErrorDetails.MANIFEST_LOAD_ERROR||ge===oe.ErrorDetails.MANIFEST_LOAD_TIMEOUT||ge===oe.ErrorDetails.FRAG_LOAD_ERROR||ge===oe.ErrorDetails.FRAG_LOAD_TIMEOUT||ge===oe.ErrorDetails.LEVEL_LOAD_ERROR||ge===oe.ErrorDetails.LEVEL_LOAD_TIMEOUT){var tt=st&&st.url||Ue&&Ue.url||"";he("requestfailed",{request_error:ge,request_url:tt,request_hostname:o(tt),request_type:ge===oe.ErrorDetails.FRAG_LOAD_ERROR||ge===oe.ErrorDetails.FRAG_LOAD_TIMEOUT?"media":"manifest",request_error_code:Te&&Te.code,request_error_text:Te&&Te.text})}Fe&&he("error",{player_error_code:_e,player_error_message:ge})};Z.on(oe.Events.ERROR,Se);var Ve=function(De,me){var _e=me.frag,ge=_e&&_e._url||"";he("requestcanceled",{request_event_type:De,request_url:ge,request_type:"media",request_hostname:o(ge)})};Z.on(oe.Events.FRAG_LOAD_EMERGENCY_ABORTED,Ve);var Qe=function(De,me){var _e=me.level,ge=Z.levels[_e];if(ge&&ge.attrs&&ge.attrs.BANDWIDTH){var Te,Fe=ge.attrs.BANDWIDTH,Ue=parseFloat(ge.attrs["FRAME-RATE"]);isNaN(Ue)||(Te=Ue),Fe?he("renditionchange",{video_source_fps:Te,video_source_bitrate:Fe,video_source_width:ge.width,video_source_height:ge.height,video_source_rendition_name:ge.name,video_source_codec:ge==null?void 0:ge.videoCodec}):Ee.warn("missing BANDWIDTH from HLS manifest parsed by HLS.js")}};Z.on(oe.Events.LEVEL_SWITCHED,Qe),Z._stopMuxMonitor=function(){Z.off(oe.Events.MANIFEST_LOADED,ye),Z.off(oe.Events.LEVEL_LOADED,be),Z.off(oe.Events.AUDIO_TRACK_LOADED,He),Z.off(oe.Events.FRAG_LOADED,je),Z.off(oe.Events.FRAG_CHANGED,at),Z.off(oe.Events.ERROR,Se),Z.off(oe.Events.FRAG_LOAD_EMERGENCY_ABORTED,Ve),Z.off(oe.Events.LEVEL_SWITCHED,Qe),Z.off(oe.Events.DESTROYING,Z._stopMuxMonitor),delete Z._stopMuxMonitor},Z.on(oe.Events.DESTROYING,Z._stopMuxMonitor)}else Ee.warn("performance timing not supported. Not tracking HLS.js.")}(this.mux,this.id,V.hlsjs,{},V.Hls||window.Hls)):this.mux.log.warn("You must pass a valid hlsjs instance in order to track it.")}},{key:"removeHLSJS",value:function(){var V;this.hlsjs&&((V=this.hlsjs)&&typeof V._stopMuxMonitor=="function"&&V._stopMuxMonitor(),this.hlsjs=void 0)}},{key:"addDashJS",value:function(V){V.dashjs?this.dashjs?this.mux.log.warn("An instance of Dash.js is already being monitored for this player."):(this.dashjs=V.dashjs,function($,re,Z){var oe=$.log;if(Z&&Z.on){var Ee=function(Se,Ve){return $.emit(re,Se,Ve)},ve=function(Se){var Ve=Se.type,Qe=(Se.data||{}).url;Ee("requestcompleted",{request_event_type:Ve,request_start:0,request_response_start:0,request_response_end:0,request_bytes_loaded:-1,request_type:"manifest",request_hostname:o(Qe),request_url:Qe})};Z.on("manifestLoaded",ve);var pe={},he=function(Se){var Ve=Se.type,Qe=Se.fragmentModel,De=(Se.chunk||{}).mediaInfo||{},me=De.type,_e=De.bitrateList,ge={};(_e=_e||[]).forEach(function(Ge,ht){ge[ht]={},ge[ht].width=Ge.width,ge[ht].height=Ge.height,ge[ht].bitrate=Ge.bandwidth,ge[ht].attrs={}}),me==="video"?pe.video=ge:me==="audio"?pe.audio=ge:pe.media=ge;var Te=b(Qe,Z),Fe=Te.requestStart,Ue=Te.requestResponseStart,st=Te.requestResponseEnd,tt=Te.requestResponseHeaders,ct=Te.requestMediaDuration,ot=Te.requestHostname,vt=Te.requestUrl;Ee("requestcompleted",{request_event_type:Ve,request_start:Fe,request_response_start:Ue,request_response_end:st,request_bytes_loaded:-1,request_type:me+"_init",request_response_headers:tt,request_hostname:ot,request_url:vt,request_media_duration:ct,request_rendition_lists:pe})};Z.on("initFragmentLoaded",he);var ye=function(Se){var Ve=Se.type,Qe=Se.fragmentModel,De=Se.chunk||{},me=De.mediaInfo,_e=De.start,ge=(me||{}).type,Te=b(Qe,Z),Fe=Te.requestStart,Ue=Te.requestResponseStart,st=Te.requestResponseEnd,tt=Te.requestBytesLoaded,ct=Te.requestResponseHeaders,ot=Te.requestMediaDuration,vt=Te.requestHostname,Ge=Te.requestUrl,ht=R(ge,Z),hr=ht.currentLevel,gt=ht.renditionWidth,Bt=ht.renditionHeight,Ki=ht.renditionBitrate;Ee("requestcompleted",{request_event_type:Ve,request_start:Fe,request_response_start:Ue,request_response_end:st,request_bytes_loaded:tt,request_type:ge,request_response_headers:ct,request_hostname:vt,request_url:Ge,request_media_start_time:_e,request_media_duration:ot,request_current_level:hr,request_labeled_bitrate:Ki,request_video_width:gt,request_video_height:Bt})};Z.on("mediaFragmentLoaded",ye);var be={video:void 0,audio:void 0,totalBitrate:void 0},He=function(){if(be.video&&typeof be.video.bitrate=="number"){if(be.video.width&&be.video.height){var Se=be.video.bitrate;return be.audio&&typeof be.audio.bitrate=="number"&&(Se+=be.audio.bitrate),Se!==be.totalBitrate?(be.totalBitrate=Se,{video_source_bitrate:Se,video_source_height:be.video.height,video_source_width:be.video.width,video_source_codec:I(be.video.codec)}):void 0}oe.warn("have bitrate info for video but missing width/height")}},je=function(Se,Ve,Qe){if(typeof Se.newQuality=="number"){var De=Se.mediaType;if(De==="audio"||De==="video"){var me=Z.getBitrateInfoListFor(De).find(function(ge){return ge.qualityIndex===Se.newQuality});if(me&&typeof me.bitrate=="number"){be[De]=y(y({},me),{},{codec:Z.getCurrentTrackFor(De).codec});var _e=He();_e&&Ee("renditionchange",_e)}else oe.warn("missing bitrate info for ".concat(De))}}else oe.warn("missing evt.newQuality in qualityChangeRendered event",Se)};Z.on("qualityChangeRendered",je);var at=function(Se){var Ve=Se.error,Qe=Se.event,De=(Qe=Qe||{}).request||{},me=M().event&&M().event.currentTarget||{};Ee("requestfailed",{request_error:Ve+"_"+Qe.id+"_"+De.type,request_url:Qe.url,request_hostname:o(Qe.url),request_type:De.mediaType,request_error_code:me.status,request_error_type:me.statusText})};Z.on("error",at),Z._stopMuxMonitor=function(){Z.off("manifestLoaded",ve),Z.off("initFragmentLoaded",he),Z.off("mediaFragmentLoaded",ye),Z.off("qualityChangeRendered",je),Z.off("error",at),delete Z._stopMuxMonitor}}else oe.warn("Invalid dash.js player reference. Monitoring blocked.")}(this.mux,this.id,V.dashjs)):this.mux.log.warn("You must pass a valid dashjs instance in order to track it.")}},{key:"removeDashJS",value:function(){var V;this.dashjs&&((V=this.dashjs)&&typeof V._stopMuxMonitor=="function"&&V._stopMuxMonitor(),this.dashjs=void 0)}}],w&&Ir(O.prototype,w),W&&Ir(O,W),Object.defineProperty(O,"prototype",{writable:!1}),X}(H),yi=pi,Ei=C(153),Ft=C.n(Ei);function fr(U){return fr=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(O){return typeof O}:function(O){return O&&typeof Symbol=="function"&&O.constructor===Symbol&&O!==Symbol.prototype?"symbol":typeof O},fr(U)}function Or(U,O){return function(w){if(Array.isArray(w))return w}(U)||function(w,W){var G=w==null?null:typeof Symbol!="undefined"&&w[Symbol.iterator]||w["@@iterator"];if(G!=null){var X,V,$=[],re=!0,Z=!1;try{for(G=G.call(w);!(re=(X=G.next()).done)&&($.push(X.value),!W||$.length!==W);re=!0);}catch(oe){Z=!0,V=oe}finally{try{re||G.return==null||G.return()}finally{if(Z)throw V}}return $}}(U,O)||function(w,W){if(w){if(typeof w=="string")return Cr(w,W);var G=Object.prototype.toString.call(w).slice(8,-1);return G==="Object"&&w.constructor&&(G=w.constructor.name),G==="Map"||G==="Set"?Array.from(w):G==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(G)?Cr(w,W):void 0}}(U,O)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
5
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function
|
|
6
|
-
`);
|
|
7
|
-
`))this.processLine(this.buffer.substring(0,
|
|
8
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function wr(U,O){(O==null||O>U.length)&&(O=U.length);for(var w=0,W=new Array(O);w<O;w++)W[w]=U[w];return W}var dt={},Ut=function U(O){var w=arguments;typeof O=="string"?U.hasOwnProperty(O)?M().setTimeout(function(){w=Array.prototype.splice.call(w,1),U[O].apply(null,w)},0):d.warn("`"+O+"` is an unknown task"):typeof O=="function"?M().setTimeout(function(){O(U)},0):d.warn("`"+O+"` is invalid.")},Bi={loaded:p.now(),NAME:"mux-embed",VERSION:"4.17.0",API_VERSION:"2.1",PLAYER_TRACKED:!1,monitor:function(U,O){return function(w,W,G){var X=Or(D(W),3),V=X[0],$=X[1],re=X[2],Z=w.log,oe=w.utils.getComputedStyle,Ee=w.utils.secondsToMs;if(!V)return Z.error("No element was found with the `"+$+"` query selector.");if(re!=="video"&&re!=="audio")return Z.error("The element of `"+$+"` was not a media element.");V.mux&&(V.mux.destroy(),delete V.mux,Z.warn("Already monitoring this video element, replacing existing event listeners")),(G=a()({automaticErrorTracking:!0},G)).data=a()({player_software:"HTML5 Video Element",player_mux_plugin_name:"VideoElementMonitor",player_mux_plugin_version:w.VERSION},G.data),G.getPlayheadTime=function(){return Ee(V.currentTime)},G.getStateData=function(){var pe,he,ye=this.hlsjs&&this.hlsjs.url,be=this.dashjs&&fr(this.dashjs.getSource==="function")&&this.dashjs.getSource(),He={player_is_paused:V.paused,player_playhead_time:Ee(V.currentTime),player_width:parseInt(oe(V,"width")),player_height:parseInt(oe(V,"height")),player_autoplay_on:V.autoplay,player_preload_on:V.preload,player_language_code:V.lang,player_is_fullscreen:Ft()&&!!(Ft().fullscreenElement||Ft().webkitFullscreenElement||Ft().mozFullScreenElement||Ft().msFullscreenElement),video_poster_url:V.poster,video_source_url:ye||be||V.currentSrc,video_source_duration:Ee(V.duration),video_source_height:V.videoHeight,video_source_width:V.videoWidth,view_dropped_frame_count:(pe=V)===null||pe===void 0||(he=pe.getVideoPlaybackQuality)===null||he===void 0?void 0:he.call(pe).droppedVideoFrames},je=G.getPlayheadTime();if(V.getStartDate&&je>0){var at=V.getStartDate();if(at&&typeof at.getTime=="function"&&at.getTime()){var Se=at.getTime();if(He.player_program_time=Se+je,V.seekable.length>0){var Ve=Se+V.seekable.end(V.seekable.length-1);He.player_live_edge_program_time=Ve}}}return He},V.mux=V.mux||{},V.mux.deleted=!1,V.mux.emit=function(pe,he){w.emit($,pe,he)};var ve=function(){Z.error("The monitor for this video element has already been destroyed.")};V.mux.destroy=function(){Object.keys(V.mux.listeners).forEach(function(pe){V.removeEventListener(pe,V.mux.listeners[pe],!1)}),delete V.mux.listeners,V.mux.destroy=ve,V.mux.swapElement=ve,V.mux.emit=ve,V.mux.addHLSJS=ve,V.mux.addDashJS=ve,V.mux.removeHLSJS=ve,V.mux.removeDashJS=ve,V.mux.deleted=!0,w.emit($,"destroy")},V.mux.swapElement=function(pe){var he=Or(D(pe),3),ye=he[0],be=he[1],He=he[2];return ye?He!=="video"&&He!=="audio"?w.log.error("The element of `"+be+"` was not a media element."):(ye.muxId=V.muxId,delete V.muxId,ye.mux=ye.mux||{},ye.mux.listeners=a()({},V.mux.listeners),delete V.mux.listeners,Object.keys(ye.mux.listeners).forEach(function(je){V.removeEventListener(je,ye.mux.listeners[je],!1),ye.addEventListener(je,ye.mux.listeners[je],!1)}),ye.mux.swapElement=V.mux.swapElement,ye.mux.destroy=V.mux.destroy,delete V.mux,void(V=ye)):w.log.error("No element was found with the `"+be+"` query selector.")},V.mux.addHLSJS=function(pe){w.addHLSJS($,pe)},V.mux.addDashJS=function(pe){w.addDashJS($,pe)},V.mux.removeHLSJS=function(){w.removeHLSJS($)},V.mux.removeDashJS=function(){w.removeDashJS($)},w.init($,G),w.emit($,"playerready"),V.paused||(w.emit($,"play"),V.readyState>2&&w.emit($,"playing")),V.mux.listeners={},_i.forEach(function(pe){(pe!=="error"||G.automaticErrorTracking)&&(V.mux.listeners[pe]=function(){var he={};if(pe==="error"){if(!V.error||V.error.code===1)return;he.player_error_code=V.error.code,he.player_error_message=Ti[V.error.code]||V.error.message}w.emit($,pe,he)},V.addEventListener(pe,V.mux.listeners[pe],!1))})}(Ut,U,O)},destroyMonitor:function(U){var O=Ui(D(U),1)[0];O&&O.mux&&typeof O.mux.destroy=="function"?O.mux.destroy():d.error("A video element monitor for `"+U+"` has not been initialized via `mux.monitor`.")},addHLSJS:function(U,O){var w=A(U);dt[w]?dt[w].addHLSJS(O):d.error("A monitor for `"+w+"` has not been initialized.")},addDashJS:function(U,O){var w=A(U);dt[w]?dt[w].addDashJS(O):d.error("A monitor for `"+w+"` has not been initialized.")},removeHLSJS:function(U){var O=A(U);dt[O]?dt[O].removeHLSJS():d.error("A monitor for `"+O+"` has not been initialized.")},removeDashJS:function(U){var O=A(U);dt[O]?dt[O].removeDashJS():d.error("A monitor for `"+O+"` has not been initialized.")},init:function(U,O){E()&&O&&O.respectDoNotTrack&&d.info("The browser's Do Not Track flag is enabled - Mux beaconing is disabled.");var w=A(U);dt[w]=new yi(Ut,w,O)},emit:function(U,O,w){var W=A(U);dt[W]?(dt[W].emit(O,w),O==="destroy"&&delete dt[W]):d.error("A monitor for `"+W+"` has not been initialized.")},checkDoNotTrack:E,log:d,utils:ki,events:Fi,WINDOW_HIDDEN:!1,WINDOW_UNLOADING:!1};Object.assign(Ut,Bi),M()!==void 0&&typeof M().addEventListener=="function"&&M().addEventListener("pagehide",function(U){U.persisted||(Ut.WINDOW_UNLOADING=!0)},!1);var Ni=Ut},655:function(N,T,C){var L,M;function P(B){return P=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(A){return typeof A}:function(A){return A&&typeof Symbol=="function"&&A.constructor===Symbol&&A!==Symbol.prototype?"symbol":typeof A},P(B);}(function(B){var A=!1;if((M=typeof(L=B)=="function"?L.call(T,C,T,N):L)===void 0||(N.exports=M),A=!0,P(T)==="object"&&(N.exports=B(),A=!0),!A){var D=window.Cookies,x=window.Cookies=B();x.noConflict=function(){return window.Cookies=D,x}}})(function(){var B=function(){for(var A=0,D={};A<arguments.length;A++){var x=arguments[A];for(var _ in x)D[_]=x[_]}return D};return function A(D){function x(_,S,d){var E;if(typeof document!="undefined"){if(arguments.length>1){if(typeof(d=B({path:"/"},x.defaults,d)).expires=="number"){var p=new Date;p.setMilliseconds(p.getMilliseconds()+864e5*d.expires),d.expires=p}try{E=JSON.stringify(S),/^[\{\[]/.test(E)&&(S=E)}catch{}return S=D.write?D.write(S,_):encodeURIComponent(String(S)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent),_=(_=(_=encodeURIComponent(String(_))).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent)).replace(/[\(\)]/g,escape),document.cookie=[_,"=",S,d.expires?"; expires="+d.expires.toUTCString():"",d.path?"; path="+d.path:"",d.domain?"; domain="+d.domain:"",d.secure?"; secure":""].join("")}_||(E={});for(var h=document.cookie?document.cookie.split("; "):[],a=/(%[0-9A-Z]{2})+/g,o=0;o<h.length;o++){var n=h[o].split("="),v=n.slice(1).join("=");v.charAt(0)==='"'&&(v=v.slice(1,-1));try{var l=n[0].replace(a,decodeURIComponent);if(v=D.read?D.read(v,l):D(v,l)||v.replace(a,decodeURIComponent),this.json)try{v=JSON.parse(v)}catch{}if(_===l){E=v;break}_||(E[l]=v)}catch{}}return E}}return x.set=x,x.get=function(_){return x.call(x,_)},x.getJSON=function(){return x.apply({json:!0},[].slice.call(arguments))},x.defaults={},x.remove=function(_,S){x(_,"",B(S,{expires:-1}))},x.withConverter=A,x}(function(){})})},153:function(N,T,C){var L,M=C.g!==void 0?C.g:typeof window!="undefined"?window:{},P=C(558);typeof document!="undefined"?L=document:(L=M["__GLOBAL_DOCUMENT_CACHE@4"])||(L=M["__GLOBAL_DOCUMENT_CACHE@4"]=P),N.exports=L},48:function(N,T,C){var L;L=typeof window!="undefined"?window:C.g!==void 0?C.g:typeof self!="undefined"?self:{},N.exports=L},678:function(N){var T=9007199254740991,C="[object Arguments]",L="[object Function]",M="[object GeneratorFunction]",P=/^(?:0|[1-9]\d*)$/;function B(e,r,t){switch(t.length){case 0:return e.call(r);case 1:return e.call(r,t[0]);case 2:return e.call(r,t[0],t[1]);case 3:return e.call(r,t[0],t[1],t[2])}return e.apply(r,t)}var A,D,x=Object.prototype,_=x.hasOwnProperty,S=x.toString,d=x.propertyIsEnumerable,E=(A=Object.keys,D=Object,function(e){return A(D(e))}),p=Math.max,h=!d.call({valueOf:1},"valueOf");function a(e,r){var t=i(e)||function(b){return function(R){return function(I){return!!I&&typeof I=="object"}(R)&&u(R)}(b)&&_.call(b,"callee")&&(!d.call(b,"callee")||S.call(b)==C)}(e)?function(b,R){for(var I=-1,k=Array(b);++I<b;)k[I]=R(I);return k}(e.length,String):[],s=t.length,y=!!s;for(var f in e)!r&&!_.call(e,f)||y&&(f=="length"||n(f,s))||t.push(f);return t}function o(e,r,t){var s=e[r];_.call(e,r)&&l(s,t)&&(t!==void 0||r in e)||(e[r]=t)}function n(e,r){return!!(r=r==null?T:r)&&(typeof e=="number"||P.test(e))&&e>-1&&e%1==0&&e<r}function v(e){var r=e&&e.constructor;return e===(typeof r=="function"&&r.prototype||x)}function l(e,r){return e===r||e!=e&&r!=r}var i=Array.isArray;function u(e){return e!=null&&function(r){return typeof r=="number"&&r>-1&&r%1==0&&r<=T}(e.length)&&!function(r){var t=g(r)?S.call(r):"";return t==L||t==M}(e)}function g(e){var r=typeof e;return!!e&&(r=="object"||r=="function")}var c,m=(c=function(e,r){if(h||v(r)||u(r))(function(s,y,f,b){f||(f={});for(var R=-1,I=y.length;++R<I;){var k=y[R],F=b?b(f[k],s[k],k,f,s):void 0;o(f,k,F===void 0?s[k]:F)}})(r,function(s){return u(s)?a(s):function(y){if(!v(y))return E(y);var f=[];for(var b in Object(y))_.call(y,b)&&b!="constructor"&&f.push(b);return f}(s)}(r),e);else for(var t in r)_.call(r,t)&&o(e,t,r[t])},function(e,r){return r=p(r===void 0?e.length-1:r,0),function(){for(var t=arguments,s=-1,y=p(t.length-r,0),f=Array(y);++s<y;)f[s]=t[r+s];s=-1;for(var b=Array(r+1);++s<r;)b[s]=t[s];return b[r]=f,B(e,this,b)}}(function(e,r){var t=-1,s=r.length,y=s>1?r[s-1]:void 0,f=s>2?r[2]:void 0;for(y=c.length>3&&typeof y=="function"?(s--,y):void 0,f&&function(R,I,k){if(!g(k))return!1;var F=typeof I;return!!(F=="number"?u(k)&&n(I,k.length):F=="string"&&I in k)&&l(k[I],R)}(r[0],r[1],f)&&(y=s<3?void 0:y,s=1),e=Object(e);++t<s;){var b=r[t];b&&c(e,b,t,y)}return e}));N.exports=m},640:function(N,T,C){var L,M;(function(P,B){"use strict";L=function(){var A=function(){},D="undefined",x=typeof window!==D&&typeof window.navigator!==D&&/Trident\/|MSIE /.test(window.navigator.userAgent),_=["trace","debug","info","warn","error"];function S(i,u){var g=i[u];if(typeof g.bind=="function")return g.bind(i);try{return Function.prototype.bind.call(g,i)}catch{return function(){return Function.prototype.apply.apply(g,[i,arguments])}}}function d(){console.log&&(console.log.apply?console.log.apply(console,arguments):Function.prototype.apply.apply(console.log,[console,arguments])),console.trace&&console.trace()}function E(i){return i==="debug"&&(i="log"),typeof console!==D&&(i==="trace"&&x?d:console[i]!==void 0?S(console,i):console.log!==void 0?S(console,"log"):A)}function p(i,u){for(var g=0;g<_.length;g++){var c=_[g];this[c]=g<i?A:this.methodFactory(c,i,u)}this.log=this.debug}function h(i,u,g){return function(){typeof console!==D&&(p.call(this,u,g),this[i].apply(this,arguments))}}function a(i,u,g){return E(i)||h.apply(this,arguments)}function o(i,u,g){var c,m=this;u=u==null?"WARN":u;var e="loglevel";function r(f){var b=(_[f]||"silent").toUpperCase();if(typeof window!==D&&e){try{return void(window.localStorage[e]=b)}catch{}try{window.document.cookie=encodeURIComponent(e)+"="+b+";"}catch{}}}function t(){var f;if(typeof window!==D&&e){try{f=window.localStorage[e]}catch{}if(typeof f===D)try{var b=window.document.cookie,R=b.indexOf(encodeURIComponent(e)+"=");R!==-1&&(f=/^([^;]+)/.exec(b.slice(R))[1])}catch{}return m.levels[f]===void 0&&(f=void 0),f}}function s(){if(typeof window!==D&&e){try{return void window.localStorage.removeItem(e)}catch{}try{window.document.cookie=encodeURIComponent(e)+"=; expires=Thu, 01 Jan 1970 00:00:00 UTC"}catch{}}}typeof i=="string"?e+=":"+i:typeof i=="symbol"&&(e=void 0),m.name=i,m.levels={TRACE:0,DEBUG:1,INFO:2,WARN:3,ERROR:4,SILENT:5},m.methodFactory=g||a,m.getLevel=function(){return c},m.setLevel=function(f,b){if(typeof f=="string"&&m.levels[f.toUpperCase()]!==void 0&&(f=m.levels[f.toUpperCase()]),!(typeof f=="number"&&f>=0&&f<=m.levels.SILENT))throw"log.setLevel() called with invalid level: "+f;if(c=f,b!==!1&&r(f),p.call(m,f,i),typeof console===D&&f<m.levels.SILENT)return"No console available for logging"},m.setDefaultLevel=function(f){u=f,t()||m.setLevel(f,!1)},m.resetLevel=function(){m.setLevel(u,!1),s()},m.enableAll=function(f){m.setLevel(m.levels.TRACE,f)},m.disableAll=function(f){m.setLevel(m.levels.SILENT,f)};var y=t();y==null&&(y=u),m.setLevel(y,!1)}var n=new o,v={};n.getLogger=function(i){if(typeof i!="symbol"&&typeof i!="string"||i==="")throw new TypeError("You must supply a name when creating a logger.");var u=v[i];return u||(u=v[i]=new o(i,n.getLevel(),n.methodFactory)),u};var l=typeof window!==D?window.log:void 0;return n.noConflict=function(){return typeof window!==D&&window.log===n&&(window.log=l),n},n.getLoggers=function(){return v},n.default=n,n},(M=typeof L=="function"?L.call(T,C,T,N):L)===void 0||(N.exports=M)})()},375:function(N,T){"use strict";var C=Object.prototype.hasOwnProperty;function L(P){try{return decodeURIComponent(P.replace(/\+/g," "))}catch{return null}}function M(P){try{return encodeURIComponent(P)}catch{return null}}T.stringify=function(P,B){B=B||"";var A,D,x=[];for(D in typeof B!="string"&&(B="?"),P)if(C.call(P,D)){if((A=P[D])||A!=null&&!isNaN(A)||(A=""),D=M(D),A=M(A),D===null||A===null)continue;x.push(D+"="+A)}return x.length?B+x.join("&"):""},T.parse=function(P){for(var B,A=/([^=?#&]+)=?([^&]*)/g,D={};B=A.exec(P);){var x=L(B[1]),_=L(B[2]);x===null||_===null||x in D||(D[x]=_)}return D}},558:function(){}},se={};function z(N){var T=se[N];if(T!==void 0)return T.exports;var C=se[N]={exports:{}};return ie[N].call(C.exports,C,C.exports,z),C.exports}return z.n=function(N){var T=N&&N.__esModule?function(){return N.default}:function(){return N};return z.d(T,{a:T}),T},z.d=function(N,T){for(var C in T)z.o(T,C)&&!z.o(N,C)&&Object.defineProperty(N,C,{enumerable:!0,get:T[C]})},z.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch{if(typeof window=="object")return window}}(),z.o=function(N,T){return Object.prototype.hasOwnProperty.call(N,T)},z(80)}()},typeof Qt=="object"&&typeof vr=="object"?vr.exports=ee():typeof Qt=="object"?Qt.mux=ee():J.mux=ee()})()});var $t=Fr((Nt,gr)=>{typeof window!="undefined"&&function(ee,ie){typeof Nt=="object"&&typeof gr=="object"?gr.exports=ie():typeof define=="function"&&define.amd?define([],ie):typeof Nt=="object"?Nt.Hls=ie():ee.Hls=ie()}(Nt,()=>(()=>{var J={"./src/config.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{enableStreamingMode:()=>r,hlsDefaultConfig:()=>c,mergeConfig:()=>e});var C=T("./src/controller/abr-controller.ts"),L=T("./src/controller/audio-stream-controller.ts"),M=T("./src/controller/audio-track-controller.ts"),P=T("./src/controller/subtitle-stream-controller.ts"),B=T("./src/controller/subtitle-track-controller.ts"),A=T("./src/controller/buffer-controller.ts"),D=T("./src/controller/timeline-controller.ts"),x=T("./src/controller/cap-level-controller.ts"),_=T("./src/controller/fps-controller.ts"),S=T("./src/controller/eme-controller.ts"),d=T("./src/controller/cmcd-controller.ts"),E=T("./src/utils/xhr-loader.ts"),p=T("./src/utils/fetch-loader.ts"),h=T("./src/utils/cues.ts"),a=T("./src/utils/mediakeys-helper.ts"),o=T("./src/utils/logger.ts");function n(){return n=Object.assign?Object.assign.bind():function(t){for(var s=1;s<arguments.length;s++){var y=arguments[s];for(var f in y)Object.prototype.hasOwnProperty.call(y,f)&&(t[f]=y[f])}return t},n.apply(this,arguments)}function v(t,s){var y=Object.keys(t);if(Object.getOwnPropertySymbols){var f=Object.getOwnPropertySymbols(t);s&&(f=f.filter(function(b){return Object.getOwnPropertyDescriptor(t,b).enumerable})),y.push.apply(y,f)}return y}function l(t){for(var s=1;s<arguments.length;s++){var y=arguments[s]!=null?arguments[s]:{};s%2?v(Object(y),!0).forEach(function(f){i(t,f,y[f])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(y)):v(Object(y)).forEach(function(f){Object.defineProperty(t,f,Object.getOwnPropertyDescriptor(y,f))})}return t}function i(t,s,y){return s=u(s),s in t?Object.defineProperty(t,s,{value:y,enumerable:!0,configurable:!0,writable:!0}):t[s]=y,t}function u(t){var s=g(t,"string");return typeof s=="symbol"?s:String(s)}function g(t,s){if(typeof t!="object"||t===null)return t;var y=t[Symbol.toPrimitive];if(y!==void 0){var f=y.call(t,s||"default");if(typeof f!="object")return f;throw new TypeError("@@toPrimitive must return a primitive value.")}return(s==="string"?String:Number)(t)}var c=l(l({autoStartLoad:!0,startPosition:-1,defaultAudioCodec:void 0,debug:!1,capLevelOnFPSDrop:!1,capLevelToPlayerSize:!1,ignoreDevicePixelRatio:!1,initialLiveManifestSize:1,maxBufferLength:30,backBufferLength:1/0,maxBufferSize:60*1e3*1e3,maxBufferHole:.1,highBufferWatchdogPeriod:2,nudgeOffset:.1,nudgeMaxRetry:3,maxFragLookUpTolerance:.25,liveSyncDurationCount:3,liveMaxLatencyDurationCount:1/0,liveSyncDuration:void 0,liveMaxLatencyDuration:void 0,maxLiveSyncPlaybackRate:1,liveDurationInfinity:!1,liveBackBufferLength:null,maxMaxBufferLength:600,enableWorker:!0,enableSoftwareAES:!0,manifestLoadingTimeOut:1e4,manifestLoadingMaxRetry:1,manifestLoadingRetryDelay:1e3,manifestLoadingMaxRetryTimeout:64e3,startLevel:void 0,levelLoadingTimeOut:1e4,levelLoadingMaxRetry:4,levelLoadingRetryDelay:1e3,levelLoadingMaxRetryTimeout:64e3,fragLoadingTimeOut:2e4,fragLoadingMaxRetry:6,fragLoadingRetryDelay:1e3,fragLoadingMaxRetryTimeout:64e3,startFragPrefetch:!1,fpsDroppedMonitoringPeriod:5e3,fpsDroppedMonitoringThreshold:.2,appendErrorMaxRetry:3,loader:E.default,fLoader:void 0,pLoader:void 0,xhrSetup:void 0,licenseXhrSetup:void 0,licenseResponseCallback:void 0,abrController:C.default,bufferController:A.default,capLevelController:x.default,fpsController:_.default,stretchShortVideoTrack:!1,maxAudioFramesDrift:1,forceKeyFrameOnDiscontinuity:!0,abrEwmaFastLive:3,abrEwmaSlowLive:9,abrEwmaFastVoD:3,abrEwmaSlowVoD:9,abrEwmaDefaultEstimate:5e5,abrBandWidthFactor:.95,abrBandWidthUpFactor:.7,abrMaxWithRealBitrate:!1,maxStarvationDelay:4,maxLoadingDelay:4,minAutoBitrate:0,emeEnabled:!1,widevineLicenseUrl:void 0,drmSystems:{},drmSystemOptions:{},requestMediaKeySystemAccessFunc:a.requestMediaKeySystemAccess,testBandwidth:!0,progressive:!1,lowLatencyMode:!0,cmcd:void 0,enableDateRangeMetadataCues:!0,enableEmsgMetadataCues:!0,enableID3MetadataCues:!0},m()),{},{subtitleStreamController:P.SubtitleStreamController,subtitleTrackController:B.default,timelineController:D.TimelineController,audioStreamController:L.default,audioTrackController:M.default,emeController:S.default,cmcdController:d.default});function m(){return{cueHandler:h.default,enableWebVTT:!0,enableIMSC1:!0,enableCEA708Captions:!0,captionsTextTrack1Label:"English",captionsTextTrack1LanguageCode:"en",captionsTextTrack2Label:"Spanish",captionsTextTrack2LanguageCode:"es",captionsTextTrack3Label:"Unknown CC",captionsTextTrack3LanguageCode:"",captionsTextTrack4Label:"Unknown CC",captionsTextTrack4LanguageCode:"",renderTextTracksNatively:!0}}function e(t,s){if((s.liveSyncDurationCount||s.liveMaxLatencyDurationCount)&&(s.liveSyncDuration||s.liveMaxLatencyDuration))throw new Error("Illegal hls.js config: don't mix up liveSyncDurationCount/liveMaxLatencyDurationCount and liveSyncDuration/liveMaxLatencyDuration");if(s.liveMaxLatencyDurationCount!==void 0&&(s.liveSyncDurationCount===void 0||s.liveMaxLatencyDurationCount<=s.liveSyncDurationCount))throw new Error('Illegal hls.js config: "liveMaxLatencyDurationCount" must be greater than "liveSyncDurationCount"');if(s.liveMaxLatencyDuration!==void 0&&(s.liveSyncDuration===void 0||s.liveMaxLatencyDuration<=s.liveSyncDuration))throw new Error('Illegal hls.js config: "liveMaxLatencyDuration" must be greater than "liveSyncDuration"');return n({},t,s)}function r(t){var s=t.loader;if(s!==p.default&&s!==E.default)o.logger.log("[config]: Custom loader detected, cannot enable progressive streaming"),t.progressive=!1;else{var y=(0,p.fetchSupported)();y&&(t.loader=p.default,t.progressive=!0,t.enableSoftwareAES=!0,o.logger.log("[config]: Progressive streaming enabled, using FetchLoader"))}}},"./src/controller/abr-controller.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>E});var C=T("./src/polyfills/number.ts"),L=T("./src/utils/ewma-bandwidth-estimator.ts"),M=T("./src/events.ts"),P=T("./src/errors.ts"),B=T("./src/types/loader.ts"),A=T("./src/utils/logger.ts");function D(p,h){for(var a=0;a<h.length;a++){var o=h[a];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(p,_(o.key),o)}}function x(p,h,a){return h&&D(p.prototype,h),a&&D(p,a),Object.defineProperty(p,"prototype",{writable:!1}),p}function _(p){var h=S(p,"string");return typeof h=="symbol"?h:String(h)}function S(p,h){if(typeof p!="object"||p===null)return p;var a=p[Symbol.toPrimitive];if(a!==void 0){var o=a.call(p,h||"default");if(typeof o!="object")return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return(h==="string"?String:Number)(p)}var d=function(){function p(a){this.hls=void 0,this.lastLoadedFragLevel=0,this._nextAutoLevel=-1,this.timer=void 0,this.onCheck=this._abandonRulesCheck.bind(this),this.fragCurrent=null,this.partCurrent=null,this.bitrateTestDelay=0,this.bwEstimator=void 0,this.hls=a;var o=a.config;this.bwEstimator=new L.default(o.abrEwmaSlowVoD,o.abrEwmaFastVoD,o.abrEwmaDefaultEstimate),this.registerListeners()}var h=p.prototype;return h.registerListeners=function(){var o=this.hls;o.on(M.Events.FRAG_LOADING,this.onFragLoading,this),o.on(M.Events.FRAG_LOADED,this.onFragLoaded,this),o.on(M.Events.FRAG_BUFFERED,this.onFragBuffered,this),o.on(M.Events.LEVEL_LOADED,this.onLevelLoaded,this),o.on(M.Events.ERROR,this.onError,this)},h.unregisterListeners=function(){var o=this.hls;o.off(M.Events.FRAG_LOADING,this.onFragLoading,this),o.off(M.Events.FRAG_LOADED,this.onFragLoaded,this),o.off(M.Events.FRAG_BUFFERED,this.onFragBuffered,this),o.off(M.Events.LEVEL_LOADED,this.onLevelLoaded,this),o.off(M.Events.ERROR,this.onError,this)},h.destroy=function(){this.unregisterListeners(),this.clearTimer(),this.hls=this.onCheck=null,this.fragCurrent=this.partCurrent=null},h.onFragLoading=function(o,n){var v=n.frag;if(v.type===B.PlaylistLevelType.MAIN&&!this.timer){var l;this.fragCurrent=v,this.partCurrent=(l=n.part)!=null?l:null,this.timer=self.setInterval(this.onCheck,100)}},h.onLevelLoaded=function(o,n){var v=this.hls.config;n.details.live?this.bwEstimator.update(v.abrEwmaSlowLive,v.abrEwmaFastLive):this.bwEstimator.update(v.abrEwmaSlowVoD,v.abrEwmaFastVoD)},h._abandonRulesCheck=function(){var o=this.fragCurrent,n=this.partCurrent,v=this.hls,l=v.autoLevelEnabled,i=v.media;if(!(!o||!i)){var u=n?n.stats:o.stats,g=n?n.duration:o.duration;if(u.aborted||u.loaded&&u.loaded===u.total||o.level===0){this.clearTimer(),this._nextAutoLevel=-1;return}if(!(!l||i.paused||!i.playbackRate||!i.readyState)){var c=v.mainForwardBufferInfo;if(c!==null){var m=performance.now()-u.loading.start,e=Math.abs(i.playbackRate);if(!(m<=500*g/e)){var r=u.loaded&&u.loading.first,t=this.bwEstimator.getEstimate(),s=v.levels,y=v.minAutoLevel,f=s[o.level],b=u.total||Math.max(u.loaded,Math.round(g*f.maxBitrate/8)),R=r?u.loaded*1e3/m:0,I=R?(b-u.loaded)/R:b*8/t,k=c.len/e;if(!(I<=k)){var F=Number.POSITIVE_INFINITY,K;for(K=o.level-1;K>y;K--){var H=s[K].maxBitrate;if(F=R?g*H/(8*.8*R):g*H/t,F<k)break}F>=I||(A.logger.warn("Fragment "+o.sn+(n?" part "+n.index:"")+" of level "+o.level+" is loading too slowly and will cause an underbuffer; aborting and switching to level "+K+`
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
Time to underbuffer: `+k.toFixed(3)+" s"),v.nextLoadLevel=K,r&&this.bwEstimator.sample(m,u.loaded),this.clearTimer(),(o.loader||o.keyLoader)&&(this.fragCurrent=this.partCurrent=null,o.abortRequests()),v.trigger(M.Events.FRAG_LOAD_EMERGENCY_ABORTED,{frag:o,part:n,stats:u}))}}}}}},h.onFragLoaded=function(o,n){var v=n.frag,l=n.part;if(v.type===B.PlaylistLevelType.MAIN&&(0,C.isFiniteNumber)(v.sn)){var i=l?l.stats:v.stats,u=l?l.duration:v.duration;if(this.clearTimer(),this.lastLoadedFragLevel=v.level,this._nextAutoLevel=-1,this.hls.config.abrMaxWithRealBitrate){var g=this.hls.levels[v.level],c=(g.loaded?g.loaded.bytes:0)+i.loaded,m=(g.loaded?g.loaded.duration:0)+u;g.loaded={bytes:c,duration:m},g.realBitrate=Math.round(8*c/m)}if(v.bitrateTest){var e={stats:i,frag:v,part:l,id:v.type};this.onFragBuffered(M.Events.FRAG_BUFFERED,e)}}},h.onFragBuffered=function(o,n){var v=n.frag,l=n.part,i=l?l.stats:v.stats;if(!i.aborted&&!(v.type!==B.PlaylistLevelType.MAIN||v.sn==="initSegment")){var u=i.parsing.end-i.loading.start;this.bwEstimator.sample(u,i.loaded),i.bwEstimate=this.bwEstimator.getEstimate(),v.bitrateTest?this.bitrateTestDelay=u/1e3:this.bitrateTestDelay=0}},h.onError=function(o,n){var v;if(((v=n.frag)===null||v===void 0?void 0:v.type)===B.PlaylistLevelType.MAIN){if(n.type===P.ErrorTypes.KEY_SYSTEM_ERROR){this.clearTimer();return}switch(n.details){case P.ErrorDetails.FRAG_LOAD_ERROR:case P.ErrorDetails.FRAG_LOAD_TIMEOUT:case P.ErrorDetails.KEY_LOAD_ERROR:case P.ErrorDetails.KEY_LOAD_TIMEOUT:this.clearTimer();break;default:break}}},h.clearTimer=function(){self.clearInterval(this.timer),this.timer=void 0},h.getNextABRAutoLevel=function(){var o=this.fragCurrent,n=this.partCurrent,v=this.hls,l=v.maxAutoLevel,i=v.config,u=v.minAutoLevel,g=v.media,c=n?n.duration:o?o.duration:0,m=g&&g.playbackRate!==0?Math.abs(g.playbackRate):1,e=this.bwEstimator?this.bwEstimator.getEstimate():i.abrEwmaDefaultEstimate,r=v.mainForwardBufferInfo,t=(r?r.len:0)/m,s=this.findBestLevel(e,u,l,t,i.abrBandWidthFactor,i.abrBandWidthUpFactor);if(s>=0)return s;A.logger.trace((t?"rebuffering expected":"buffer is empty")+", finding optimal quality level");var y=c?Math.min(c,i.maxStarvationDelay):i.maxStarvationDelay,f=i.abrBandWidthFactor,b=i.abrBandWidthUpFactor;if(!t){var R=this.bitrateTestDelay;if(R){var I=c?Math.min(c,i.maxLoadingDelay):i.maxLoadingDelay;y=I-R,A.logger.trace("bitrate test took "+Math.round(1e3*R)+"ms, set first fragment max fetchDuration to "+Math.round(1e3*y)+" ms"),f=b=1}}return s=this.findBestLevel(e,u,l,t+y,f,b),Math.max(s,0)},h.findBestLevel=function(o,n,v,l,i,u){for(var g,c=this.fragCurrent,m=this.partCurrent,e=this.lastLoadedFragLevel,r=this.hls.levels,t=r[e],s=!!(t!=null&&(g=t.details)!==null&&g!==void 0&&g.live),y=t==null?void 0:t.codecSet,f=m?m.duration:c?c.duration:0,b=v;b>=n;b--){var R=r[b];if(!(!R||y&&R.codecSet!==y)){var I=R.details,k=(m?I==null?void 0:I.partTarget:I==null?void 0:I.averagetargetduration)||f,F=void 0;b<=e?F=i*o:F=u*o;var K=r[b].maxBitrate,H=K*k/F;if(A.logger.trace("level/adjustedbw/bitrate/avgDuration/maxFetchDuration/fetchDuration: "+b+"/"+Math.round(F)+"/"+K+"/"+k+"/"+l+"/"+H),F>K&&(H===0||!(0,C.isFiniteNumber)(H)||s&&!this.bitrateTestDelay||H<l))return b}}return-1},x(p,[{key:"nextAutoLevel",get:function(){var o=this._nextAutoLevel,n=this.bwEstimator;if(o!==-1&&!n.canEstimate())return o;var v=this.getNextABRAutoLevel();return o!==-1&&this.hls.levels[v].loadError?o:(o!==-1&&(v=Math.min(o,v)),v)},set:function(o){this._nextAutoLevel=o}}]),p}();let E=d},"./src/controller/audio-stream-controller.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>i});var C=T("./src/polyfills/number.ts"),L=T("./src/controller/base-stream-controller.ts"),M=T("./src/events.ts"),P=T("./src/utils/buffer-helper.ts"),B=T("./src/controller/fragment-tracker.ts"),A=T("./src/types/level.ts"),D=T("./src/types/loader.ts"),x=T("./src/loader/fragment.ts"),_=T("./src/demux/chunk-cache.ts"),S=T("./src/demux/transmuxer-interface.ts"),d=T("./src/types/transmuxer.ts"),E=T("./src/controller/fragment-finders.ts"),p=T("./src/utils/discontinuities.ts"),h=T("./src/errors.ts");function a(){return a=Object.assign?Object.assign.bind():function(u){for(var g=1;g<arguments.length;g++){var c=arguments[g];for(var m in c)Object.prototype.hasOwnProperty.call(c,m)&&(u[m]=c[m])}return u},a.apply(this,arguments)}function o(u,g){u.prototype=Object.create(g.prototype),u.prototype.constructor=u,n(u,g)}function n(u,g){return n=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(m,e){return m.__proto__=e,m},n(u,g)}var v=100,l=function(u){o(g,u);function g(m,e,r){var t;return t=u.call(this,m,e,r,"[audio-stream-controller]")||this,t.videoBuffer=null,t.videoTrackCC=-1,t.waitingVideoCC=-1,t.audioSwitch=!1,t.trackId=-1,t.waitingData=null,t.mainDetails=null,t.bufferFlushed=!1,t.cachedTrackLoadedData=null,t._registerListeners(),t}var c=g.prototype;return c.onHandlerDestroying=function(){this._unregisterListeners(),this.mainDetails=null},c._registerListeners=function(){var e=this.hls;e.on(M.Events.MEDIA_ATTACHED,this.onMediaAttached,this),e.on(M.Events.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(M.Events.MANIFEST_LOADING,this.onManifestLoading,this),e.on(M.Events.LEVEL_LOADED,this.onLevelLoaded,this),e.on(M.Events.AUDIO_TRACKS_UPDATED,this.onAudioTracksUpdated,this),e.on(M.Events.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),e.on(M.Events.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),e.on(M.Events.ERROR,this.onError,this),e.on(M.Events.BUFFER_RESET,this.onBufferReset,this),e.on(M.Events.BUFFER_CREATED,this.onBufferCreated,this),e.on(M.Events.BUFFER_FLUSHED,this.onBufferFlushed,this),e.on(M.Events.INIT_PTS_FOUND,this.onInitPtsFound,this),e.on(M.Events.FRAG_BUFFERED,this.onFragBuffered,this)},c._unregisterListeners=function(){var e=this.hls;e.off(M.Events.MEDIA_ATTACHED,this.onMediaAttached,this),e.off(M.Events.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(M.Events.MANIFEST_LOADING,this.onManifestLoading,this),e.off(M.Events.LEVEL_LOADED,this.onLevelLoaded,this),e.off(M.Events.AUDIO_TRACKS_UPDATED,this.onAudioTracksUpdated,this),e.off(M.Events.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),e.off(M.Events.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),e.off(M.Events.ERROR,this.onError,this),e.off(M.Events.BUFFER_RESET,this.onBufferReset,this),e.off(M.Events.BUFFER_CREATED,this.onBufferCreated,this),e.off(M.Events.BUFFER_FLUSHED,this.onBufferFlushed,this),e.off(M.Events.INIT_PTS_FOUND,this.onInitPtsFound,this),e.off(M.Events.FRAG_BUFFERED,this.onFragBuffered,this)},c.onInitPtsFound=function(e,r){var t=r.frag,s=r.id,y=r.initPTS;if(s==="main"){var f=t.cc;this.initPTS[t.cc]=y,this.log("InitPTS for cc: "+f+" found from main: "+y),this.videoTrackCC=f,this.state===L.State.WAITING_INIT_PTS&&this.tick()}},c.startLoad=function(e){if(!this.levels){this.startPosition=e,this.state=L.State.STOPPED;return}var r=this.lastCurrentTime;this.stopLoad(),this.setInterval(v),this.fragLoadError=0,r>0&&e===-1?(this.log("Override startPosition with lastCurrentTime @"+r.toFixed(3)),e=r,this.state=L.State.IDLE):(this.loadedmetadata=!1,this.state=L.State.WAITING_TRACK),this.nextLoadPosition=this.startPosition=this.lastCurrentTime=e,this.tick()},c.doTick=function(){switch(this.state){case L.State.IDLE:this.doTickIdle();break;case L.State.WAITING_TRACK:{var e,r=this.levels,t=this.trackId,s=r==null||(e=r[t])===null||e===void 0?void 0:e.details;if(s){if(this.waitForCdnTuneIn(s))break;this.state=L.State.WAITING_INIT_PTS}break}case L.State.FRAG_LOADING_WAITING_RETRY:{var y,f=performance.now(),b=this.retryDate;(!b||f>=b||(y=this.media)!==null&&y!==void 0&&y.seeking)&&(this.log("RetryDate reached, switch back to IDLE state"),this.resetStartWhenNotLoaded(this.trackId),this.state=L.State.IDLE);break}case L.State.WAITING_INIT_PTS:{var R=this.waitingData;if(R){var I=R.frag,k=R.part,F=R.cache,K=R.complete;if(this.initPTS[I.cc]!==void 0){this.waitingData=null,this.waitingVideoCC=-1,this.state=L.State.FRAG_LOADING;var H=F.flush(),j={frag:I,part:k,payload:H,networkDetails:null};this._handleFragmentLoadProgress(j),K&&u.prototype._handleFragmentLoadComplete.call(this,j)}else if(this.videoTrackCC!==this.waitingVideoCC)this.log("Waiting fragment cc ("+I.cc+") cancelled because video is at cc "+this.videoTrackCC),this.clearWaitingFragment();else{var Y=this.getLoadPosition(),Q=P.BufferHelper.bufferInfo(this.mediaBuffer,Y,this.config.maxBufferHole),q=(0,E.fragmentWithinToleranceTest)(Q.end,this.config.maxFragLookUpTolerance,I);q<0&&(this.log("Waiting fragment cc ("+I.cc+") @ "+I.start+" cancelled because another fragment at "+Q.end+" is needed"),this.clearWaitingFragment())}}else this.state=L.State.IDLE}}this.onTickEnd()},c.clearWaitingFragment=function(){var e=this.waitingData;e&&(this.fragmentTracker.removeFragment(e.frag),this.waitingData=null,this.waitingVideoCC=-1,this.state=L.State.IDLE)},c.resetLoadingState=function(){this.clearWaitingFragment(),u.prototype.resetLoadingState.call(this)},c.onTickEnd=function(){var e=this.media;!e||!e.readyState||(this.lastCurrentTime=e.currentTime)},c.doTickIdle=function(){var e=this.hls,r=this.levels,t=this.media,s=this.trackId,y=e.config;if(!(!r||!r[s])&&!(!t&&(this.startFragRequested||!y.startFragPrefetch))){var f=r[s],b=f.details;if(!b||b.live&&this.levelLastLoaded!==s||this.waitForCdnTuneIn(b)){this.state=L.State.WAITING_TRACK;return}var R=this.mediaBuffer?this.mediaBuffer:this.media;this.bufferFlushed&&R&&(this.bufferFlushed=!1,this.afterBufferFlushed(R,x.ElementaryStreamTypes.AUDIO,D.PlaylistLevelType.AUDIO));var I=this.getFwdBufferInfo(R,D.PlaylistLevelType.AUDIO);if(I!==null){var k=this.audioSwitch;if(!k&&this._streamEnded(I,b)){e.trigger(M.Events.BUFFER_EOS,{type:"audio"}),this.state=L.State.ENDED;return}var F=this.getFwdBufferInfo(this.videoBuffer?this.videoBuffer:this.media,D.PlaylistLevelType.MAIN),K=I.len,H=this.getMaxBufferLength(F==null?void 0:F.len);if(!(K>=H&&!k)){var j=b.fragments,Y=j[0].start,Q=I.end;if(k&&t){var q=this.getLoadPosition();Q=q,b.PTSKnown&&q<Y&&(I.end>Y||I.nextStart)&&(this.log("Alt audio track ahead of main track, seek to start of alt audio track"),t.currentTime=Y+.05)}if(!(F&&Q>F.end+b.targetduration)&&!((!F||!F.len)&&I.len)){var ne=this.getNextFragment(Q,b);if(!ne){this.bufferFlushed=!0;return}this.loadFragment(ne,b,Q)}}}}},c.getMaxBufferLength=function(e){var r=u.prototype.getMaxBufferLength.call(this);return e?Math.max(r,e):r},c.onMediaDetaching=function(){this.videoBuffer=null,u.prototype.onMediaDetaching.call(this)},c.onAudioTracksUpdated=function(e,r){var t=r.audioTracks;this.resetTransmuxer(),this.levels=t.map(function(s){return new A.Level(s)})},c.onAudioTrackSwitching=function(e,r){var t=!!r.url;this.trackId=r.id;var s=this.fragCurrent;s&&s.abortRequests(),this.fragCurrent=null,this.clearWaitingFragment(),t?this.setInterval(v):this.resetTransmuxer(),t?(this.audioSwitch=!0,this.state=L.State.IDLE):this.state=L.State.STOPPED,this.tick()},c.onManifestLoading=function(){this.mainDetails=null,this.fragmentTracker.removeAllFragments(),this.startPosition=this.lastCurrentTime=0,this.bufferFlushed=!1},c.onLevelLoaded=function(e,r){this.mainDetails=r.details,this.cachedTrackLoadedData!==null&&(this.hls.trigger(M.Events.AUDIO_TRACK_LOADED,this.cachedTrackLoadedData),this.cachedTrackLoadedData=null)},c.onAudioTrackLoaded=function(e,r){var t;if(this.mainDetails==null){this.cachedTrackLoadedData=r;return}var s=this.levels,y=r.details,f=r.id;if(!s){this.warn("Audio tracks were reset while loading level "+f);return}this.log("Track "+f+" loaded ["+y.startSN+","+y.endSN+"],duration:"+y.totalduration);var b=s[f],R=0;if(y.live||(t=b.details)!==null&&t!==void 0&&t.live){var I=this.mainDetails;if(y.fragments[0]||(y.deltaUpdateFailed=!0),y.deltaUpdateFailed||!I)return;!b.details&&y.hasProgramDateTime&&I.hasProgramDateTime?((0,p.alignMediaPlaylistByPDT)(y,I),R=y.fragments[0].start):R=this.alignPlaylists(y,b.details)}b.details=y,this.levelLastLoaded=f,!this.startFragRequested&&(this.mainDetails||!y.live)&&this.setStartPosition(b.details,R),this.state===L.State.WAITING_TRACK&&!this.waitForCdnTuneIn(y)&&(this.state=L.State.IDLE),this.tick()},c._handleFragmentLoadProgress=function(e){var r,t=e.frag,s=e.part,y=e.payload,f=this.config,b=this.trackId,R=this.levels;if(!R){this.warn("Audio tracks were reset while fragment load was in progress. Fragment "+t.sn+" of level "+t.level+" will not be buffered");return}var I=R[b];console.assert(I,"Audio track is defined on fragment load progress");var k=I.details;console.assert(k,"Audio track details are defined on fragment load progress");var F=f.defaultAudioCodec||I.audioCodec||"mp4a.40.2",K=this.transmuxer;K||(K=this.transmuxer=new S.default(this.hls,D.PlaylistLevelType.AUDIO,this._handleTransmuxComplete.bind(this),this._handleTransmuxerFlush.bind(this)));var H=this.initPTS[t.cc],j=(r=t.initSegment)===null||r===void 0?void 0:r.data;if(H!==void 0){var Y=!1,Q=s?s.index:-1,q=Q!==-1,ne=new d.ChunkMetadata(t.level,t.sn,t.stats.chunkCount,y.byteLength,Q,q);K.push(y,j,F,"",t,s,k.totalduration,Y,ne,H)}else{this.log("Unknown video PTS for cc "+t.cc+", waiting for video PTS before demuxing audio frag "+t.sn+" of ["+k.startSN+" ,"+k.endSN+"],track "+b);var te=this.waitingData=this.waitingData||{frag:t,part:s,cache:new _.default,complete:!1},ae=te.cache;ae.push(new Uint8Array(y)),this.waitingVideoCC=this.videoTrackCC,this.state=L.State.WAITING_INIT_PTS}},c._handleFragmentLoadComplete=function(e){if(this.waitingData){this.waitingData.complete=!0;return}u.prototype._handleFragmentLoadComplete.call(this,e)},c.onBufferReset=function(){this.mediaBuffer=this.videoBuffer=null,this.loadedmetadata=!1},c.onBufferCreated=function(e,r){var t=r.tracks.audio;t&&(this.mediaBuffer=t.buffer||null),r.tracks.video&&(this.videoBuffer=r.tracks.video.buffer||null)},c.onFragBuffered=function(e,r){var t=r.frag,s=r.part;if(t.type!==D.PlaylistLevelType.AUDIO){if(!this.loadedmetadata&&t.type===D.PlaylistLevelType.MAIN){var y;(y=this.videoBuffer||this.media)!==null&&y!==void 0&&y.buffered.length&&(this.loadedmetadata=!0)}return}if(this.fragContextChanged(t)){this.warn("Fragment "+t.sn+(s?" p: "+s.index:"")+" of level "+t.level+" finished buffering, but was aborted. state: "+this.state+", audioSwitch: "+this.audioSwitch);return}t.sn!=="initSegment"&&(this.fragPrevious=t,this.audioSwitch&&(this.audioSwitch=!1,this.hls.trigger(M.Events.AUDIO_TRACK_SWITCHED,{id:this.trackId}))),this.fragBufferedComplete(t,s)},c.onError=function(e,r){if(r.type===h.ErrorTypes.KEY_SYSTEM_ERROR){this.onFragmentOrKeyLoadError(D.PlaylistLevelType.AUDIO,r);return}switch(r.details){case h.ErrorDetails.FRAG_LOAD_ERROR:case h.ErrorDetails.FRAG_LOAD_TIMEOUT:case h.ErrorDetails.FRAG_PARSING_ERROR:case h.ErrorDetails.KEY_LOAD_ERROR:case h.ErrorDetails.KEY_LOAD_TIMEOUT:this.onFragmentOrKeyLoadError(D.PlaylistLevelType.AUDIO,r);break;case h.ErrorDetails.AUDIO_TRACK_LOAD_ERROR:case h.ErrorDetails.AUDIO_TRACK_LOAD_TIMEOUT:this.state!==L.State.ERROR&&this.state!==L.State.STOPPED&&(this.state=r.fatal?L.State.ERROR:L.State.IDLE,this.warn(r.details+" while loading frag, switching to "+this.state+" state"));break;case h.ErrorDetails.BUFFER_FULL_ERROR:if(r.parent==="audio"&&(this.state===L.State.PARSING||this.state===L.State.PARSED)){var t=!0,s=this.getFwdBufferInfo(this.mediaBuffer,D.PlaylistLevelType.AUDIO);s&&s.len>.5&&(t=!this.reduceMaxBufferLength(s.len)),t&&(this.warn("Buffer full error also media.currentTime is not buffered, flush audio buffer"),this.fragCurrent=null,u.prototype.flushMainBuffer.call(this,0,Number.POSITIVE_INFINITY,"audio")),this.resetLoadingState()}break;default:break}},c.onBufferFlushed=function(e,r){var t=r.type;t===x.ElementaryStreamTypes.AUDIO&&(this.bufferFlushed=!0,this.state===L.State.ENDED&&(this.state=L.State.IDLE))},c._handleTransmuxComplete=function(e){var r,t="audio",s=this.hls,y=e.remuxResult,f=e.chunkMeta,b=this.getCurrentContext(f);if(!b){this.warn("The loading context changed while buffering fragment "+f.sn+" of level "+f.level+". This chunk will not be buffered."),this.resetStartWhenNotLoaded(f.level);return}var R=b.frag,I=b.part,k=b.level.details,F=y.audio,K=y.text,H=y.id3,j=y.initSegment;if(!(this.fragContextChanged(R)||!k)){if(this.state=L.State.PARSING,this.audioSwitch&&F&&this.completeAudioSwitch(),j!=null&&j.tracks&&(this._bufferInitSegment(j.tracks,R,f),s.trigger(M.Events.FRAG_PARSING_INIT_SEGMENT,{frag:R,id:t,tracks:j.tracks})),F){var Y=F.startPTS,Q=F.endPTS,q=F.startDTS,ne=F.endDTS;I&&(I.elementaryStreams[x.ElementaryStreamTypes.AUDIO]={startPTS:Y,endPTS:Q,startDTS:q,endDTS:ne}),R.setElementaryStreamInfo(x.ElementaryStreamTypes.AUDIO,Y,Q,q,ne),this.bufferFragmentData(F,R,I,f)}if(H!=null&&(r=H.samples)!==null&&r!==void 0&&r.length){var te=a({id:t,frag:R,details:k},H);s.trigger(M.Events.FRAG_PARSING_METADATA,te)}if(K){var ae=a({id:t,frag:R,details:k},K);s.trigger(M.Events.FRAG_PARSING_USERDATA,ae)}}},c._bufferInitSegment=function(e,r,t){if(this.state===L.State.PARSING){e.video&&delete e.video;var s=e.audio;if(!!s){s.levelCodec=s.codec,s.id="audio",this.log("Init audio buffer, container:"+s.container+", codecs[parsed]=["+s.codec+"]"),this.hls.trigger(M.Events.BUFFER_CODECS,e);var y=s.initSegment;if(y!=null&&y.byteLength){var f={type:"audio",frag:r,part:null,chunkMeta:t,parent:r.type,data:y};this.hls.trigger(M.Events.BUFFER_APPENDING,f)}this.tick()}}},c.loadFragment=function(e,r,t){var s=this.fragmentTracker.getState(e);this.fragCurrent=e,(this.audioSwitch||s===B.FragmentState.NOT_LOADED||s===B.FragmentState.PARTIAL)&&(e.sn==="initSegment"?this._loadInitSegment(e,r):r.live&&!(0,C.isFiniteNumber)(this.initPTS[e.cc])?(this.log("Waiting for video PTS in continuity counter "+e.cc+" of live stream before loading audio fragment "+e.sn+" of level "+this.trackId),this.state=L.State.WAITING_INIT_PTS):(this.startFragRequested=!0,u.prototype.loadFragment.call(this,e,r,t)))},c.completeAudioSwitch=function(){var e=this.hls,r=this.media,t=this.trackId;r&&(this.log("Switching audio track : flushing all audio"),u.prototype.flushMainBuffer.call(this,0,Number.POSITIVE_INFINITY,"audio")),this.audioSwitch=!1,e.trigger(M.Events.AUDIO_TRACK_SWITCHED,{id:t})},g}(L.default);let i=l},"./src/controller/audio-track-controller.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>E});var C=T("./src/events.ts"),L=T("./src/errors.ts"),M=T("./src/controller/base-playlist-controller.ts"),P=T("./src/types/loader.ts");function B(p,h){for(var a=0;a<h.length;a++){var o=h[a];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(p,D(o.key),o)}}function A(p,h,a){return h&&B(p.prototype,h),a&&B(p,a),Object.defineProperty(p,"prototype",{writable:!1}),p}function D(p){var h=x(p,"string");return typeof h=="symbol"?h:String(h)}function x(p,h){if(typeof p!="object"||p===null)return p;var a=p[Symbol.toPrimitive];if(a!==void 0){var o=a.call(p,h||"default");if(typeof o!="object")return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return(h==="string"?String:Number)(p)}function _(p,h){p.prototype=Object.create(h.prototype),p.prototype.constructor=p,S(p,h)}function S(p,h){return S=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(o,n){return o.__proto__=n,o},S(p,h)}var d=function(p){_(h,p);function h(o){var n;return n=p.call(this,o,"[audio-track-controller]")||this,n.tracks=[],n.groupId=null,n.tracksInGroup=[],n.trackId=-1,n.trackName="",n.selectDefaultTrack=!0,n.registerListeners(),n}var a=h.prototype;return a.registerListeners=function(){var n=this.hls;n.on(C.Events.MANIFEST_LOADING,this.onManifestLoading,this),n.on(C.Events.MANIFEST_PARSED,this.onManifestParsed,this),n.on(C.Events.LEVEL_LOADING,this.onLevelLoading,this),n.on(C.Events.LEVEL_SWITCHING,this.onLevelSwitching,this),n.on(C.Events.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),n.on(C.Events.ERROR,this.onError,this)},a.unregisterListeners=function(){var n=this.hls;n.off(C.Events.MANIFEST_LOADING,this.onManifestLoading,this),n.off(C.Events.MANIFEST_PARSED,this.onManifestParsed,this),n.off(C.Events.LEVEL_LOADING,this.onLevelLoading,this),n.off(C.Events.LEVEL_SWITCHING,this.onLevelSwitching,this),n.off(C.Events.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),n.off(C.Events.ERROR,this.onError,this)},a.destroy=function(){this.unregisterListeners(),this.tracks.length=0,this.tracksInGroup.length=0,p.prototype.destroy.call(this)},a.onManifestLoading=function(){this.tracks=[],this.groupId=null,this.tracksInGroup=[],this.trackId=-1,this.trackName="",this.selectDefaultTrack=!0},a.onManifestParsed=function(n,v){this.tracks=v.audioTracks||[]},a.onAudioTrackLoaded=function(n,v){var l=v.id,i=v.details,u=this.tracksInGroup[l];if(!u){this.warn("Invalid audio track id "+l);return}var g=u.details;u.details=v.details,this.log("audioTrack "+l+" loaded ["+i.startSN+"-"+i.endSN+"]"),l===this.trackId&&(this.retryCount=0,this.playlistLoaded(l,v,g))},a.onLevelLoading=function(n,v){this.switchLevel(v.level)},a.onLevelSwitching=function(n,v){this.switchLevel(v.level)},a.switchLevel=function(n){var v=this.hls.levels[n];if(!!(v!=null&&v.audioGroupIds)){var l=v.audioGroupIds[v.urlId];if(this.groupId!==l){this.groupId=l;var i=this.tracks.filter(function(g){return!l||g.groupId===l});this.selectDefaultTrack&&!i.some(function(g){return g.default})&&(this.selectDefaultTrack=!1),this.tracksInGroup=i;var u={audioTracks:i};this.log("Updating audio tracks, "+i.length+' track(s) found in "'+l+'" group-id'),this.hls.trigger(C.Events.AUDIO_TRACKS_UPDATED,u),this.selectInitialTrack()}}},a.onError=function(n,v){p.prototype.onError.call(this,n,v),!(v.fatal||!v.context)&&v.context.type===P.PlaylistContextType.AUDIO_TRACK&&v.context.id===this.trackId&&v.context.groupId===this.groupId&&this.retryLoadingOrFail(v)},a.setAudioTrack=function(n){var v=this.tracksInGroup;if(n<0||n>=v.length){this.warn("Invalid id passed to audio-track controller");return}this.clearTimer();var l=v[this.trackId];this.log("Now switching to audio-track index "+n);var i=v[n],u=i.id,g=i.groupId,c=g===void 0?"":g,m=i.name,e=i.type,r=i.url;if(this.trackId=n,this.trackName=m,this.selectDefaultTrack=!1,this.hls.trigger(C.Events.AUDIO_TRACK_SWITCHING,{id:u,groupId:c,name:m,type:e,url:r}),!(i.details&&!i.details.live)){var t=this.switchParams(i.url,l==null?void 0:l.details);this.loadPlaylist(t)}},a.selectInitialTrack=function(){var n=this.tracksInGroup;console.assert(n.length,"Initial audio track should be selected when tracks are known");var v=this.trackName,l=this.findTrackId(v)||this.findTrackId();l!==-1?this.setAudioTrack(l):(this.warn("No track found for running audio group-ID: "+this.groupId),this.hls.trigger(C.Events.ERROR,{type:L.ErrorTypes.MEDIA_ERROR,details:L.ErrorDetails.AUDIO_TRACK_LOAD_ERROR,fatal:!0}))},a.findTrackId=function(n){for(var v=this.tracksInGroup,l=0;l<v.length;l++){var i=v[l];if((!this.selectDefaultTrack||i.default)&&(!n||n===i.name))return i.id}return-1},a.loadPlaylist=function(n){p.prototype.loadPlaylist.call(this);var v=this.tracksInGroup[this.trackId];if(this.shouldLoadTrack(v)){var l=v.id,i=v.groupId,u=v.url;if(n)try{u=n.addDirectives(u)}catch(g){this.warn("Could not construct new URL with HLS Delivery Directives: "+g)}this.log("loading audio-track playlist for id: "+l),this.clearTimer(),this.hls.trigger(C.Events.AUDIO_TRACK_LOADING,{url:u,id:l,groupId:i,deliveryDirectives:n||null})}},A(h,[{key:"audioTracks",get:function(){return this.tracksInGroup}},{key:"audioTrack",get:function(){return this.trackId},set:function(n){this.selectDefaultTrack=!1,this.setAudioTrack(n)}}]),h}(M.default);let E=d},"./src/controller/base-playlist-controller.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>B});var C=T("./src/types/level.ts"),L=T("./src/controller/level-helper.ts"),M=T("./src/utils/logger.ts"),P=T("./src/errors.ts"),B=function(){function A(x,_){this.hls=void 0,this.timer=-1,this.requestScheduled=-1,this.canLoad=!1,this.retryCount=0,this.log=void 0,this.warn=void 0,this.log=M.logger.log.bind(M.logger,_+":"),this.warn=M.logger.warn.bind(M.logger,_+":"),this.hls=x}var D=A.prototype;return D.destroy=function(){this.clearTimer(),this.hls=this.log=this.warn=null},D.onError=function(_,S){S.fatal&&(S.type===P.ErrorTypes.NETWORK_ERROR||S.type===P.ErrorTypes.KEY_SYSTEM_ERROR)&&this.stopLoad()},D.clearTimer=function(){clearTimeout(this.timer),this.timer=-1},D.startLoad=function(){this.canLoad=!0,this.retryCount=0,this.requestScheduled=-1,this.loadPlaylist()},D.stopLoad=function(){this.canLoad=!1,this.clearTimer()},D.switchParams=function(_,S){var d=S==null?void 0:S.renditionReports;if(d)for(var E=0;E<d.length;E++){var p=d[E],h=void 0;try{h=new self.URL(p.URI,S.url).href}catch(v){M.logger.warn("Could not construct new URL for Rendition Report: "+v),h=p.URI||""}if(h===_.slice(-h.length)){var a=parseInt(p["LAST-MSN"])||(S==null?void 0:S.lastPartSn),o=parseInt(p["LAST-PART"])||(S==null?void 0:S.lastPartIndex);if(this.hls.config.lowLatencyMode){var n=Math.min(S.age-S.partTarget,S.targetduration);o>=0&&n>S.partTarget&&(o+=1)}return new C.HlsUrlParameters(a,o>=0?o:void 0,C.HlsSkip.No)}}},D.loadPlaylist=function(_){this.requestScheduled===-1&&(this.requestScheduled=self.performance.now())},D.shouldLoadTrack=function(_){return this.canLoad&&_&&!!_.url&&(!_.details||_.details.live)},D.playlistLoaded=function(_,S,d){var E=this,p=S.details,h=S.stats,a=self.performance.now(),o=h.loading.first?Math.max(0,a-h.loading.first):0;if(p.advancedDateTime=Date.now()-o,p.live||d!=null&&d.live){if(p.reloaded(d),d&&this.log("live playlist "+_+" "+(p.advanced?"REFRESHED "+p.lastPartSn+"-"+p.lastPartIndex:"MISSED")),d&&p.fragments.length>0&&(0,L.mergeDetails)(d,p),!this.canLoad||!p.live)return;var n,v=void 0,l=void 0;if(p.canBlockReload&&p.endSN&&p.advanced){var i=this.hls.config.lowLatencyMode,u=p.lastPartSn,g=p.endSN,c=p.lastPartIndex,m=c!==-1,e=u===g,r=i?0:c;m?(v=e?g+1:u,l=e?r:c+1):v=g+1;var t=p.age,s=t+p.ageHeader,y=Math.min(s-p.partTarget,p.targetduration*1.5);if(y>0){if(d&&y>d.tuneInGoal)this.warn("CDN Tune-in goal increased from: "+d.tuneInGoal+" to: "+y+" with playlist age: "+p.age),y=0;else{var f=Math.floor(y/p.targetduration);if(v+=f,l!==void 0){var b=Math.round(y%p.targetduration/p.partTarget);l+=b}this.log("CDN Tune-in age: "+p.ageHeader+"s last advanced "+t.toFixed(2)+"s goal: "+y+" skip sn "+f+" to part "+l)}p.tuneInGoal=y}if(n=this.getDeliveryDirectives(p,S.deliveryDirectives,v,l),i||!e){this.loadPlaylist(n);return}}else n=this.getDeliveryDirectives(p,S.deliveryDirectives,v,l);var R=this.hls.mainForwardBufferInfo,I=R?R.end-R.len:0,k=(p.edge-I)*1e3,F=(0,L.computeReloadInterval)(p,k);p.updated?a>this.requestScheduled+F&&(this.requestScheduled=h.loading.start):this.requestScheduled=-1,v!==void 0&&p.canBlockReload?this.requestScheduled=h.loading.first+F-(p.partTarget*1e3||1e3):this.requestScheduled=(this.requestScheduled===-1?a:this.requestScheduled)+F;var K=this.requestScheduled-a;K=Math.max(0,K),this.log("reload live playlist "+_+" in "+Math.round(K)+" ms"),this.timer=self.setTimeout(function(){return E.loadPlaylist(n)},K)}else this.clearTimer()},D.getDeliveryDirectives=function(_,S,d,E){var p=(0,C.getSkipValue)(_,d);return S!=null&&S.skip&&_.deltaUpdateFailed&&(d=S.msn,E=S.part,p=C.HlsSkip.No),new C.HlsUrlParameters(d,E,p)},D.retryLoadingOrFail=function(_){var S=this,d=this.hls.config,E=this.retryCount<d.levelLoadingMaxRetry;if(E){var p;if(this.requestScheduled=-1,this.retryCount++,_.details.indexOf("LoadTimeOut")>-1&&(p=_.context)!==null&&p!==void 0&&p.deliveryDirectives)this.warn("retry playlist loading #"+this.retryCount+' after "'+_.details+'"'),this.loadPlaylist();else{var h=Math.min(Math.pow(2,this.retryCount)*d.levelLoadingRetryDelay,d.levelLoadingMaxRetryTimeout);this.timer=self.setTimeout(function(){return S.loadPlaylist()},h),this.warn("retry playlist loading #"+this.retryCount+" in "+h+' ms after "'+_.details+'"')}}else this.warn('cannot recover from error "'+_.details+'"'),this.clearTimer(),_.fatal=!0;return E},A}()},"./src/controller/base-stream-controller.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{State:()=>m,default:()=>e});var C=T("./src/polyfills/number.ts"),L=T("./src/task-loop.ts"),M=T("./src/controller/fragment-tracker.ts"),P=T("./src/utils/buffer-helper.ts"),B=T("./src/utils/logger.ts"),A=T("./src/events.ts"),D=T("./src/errors.ts"),x=T("./src/types/transmuxer.ts"),_=T("./src/utils/mp4-tools.ts"),S=T("./src/utils/discontinuities.ts"),d=T("./src/controller/fragment-finders.ts"),E=T("./src/controller/level-helper.ts"),p=T("./src/loader/fragment-loader.ts"),h=T("./src/crypt/decrypter.ts"),a=T("./src/utils/time-ranges.ts"),o=T("./src/types/loader.ts");function n(r,t){for(var s=0;s<t.length;s++){var y=t[s];y.enumerable=y.enumerable||!1,y.configurable=!0,"value"in y&&(y.writable=!0),Object.defineProperty(r,l(y.key),y)}}function v(r,t,s){return t&&n(r.prototype,t),s&&n(r,s),Object.defineProperty(r,"prototype",{writable:!1}),r}function l(r){var t=i(r,"string");return typeof t=="symbol"?t:String(t)}function i(r,t){if(typeof r!="object"||r===null)return r;var s=r[Symbol.toPrimitive];if(s!==void 0){var y=s.call(r,t||"default");if(typeof y!="object")return y;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(r)}function u(r){if(r===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return r}function g(r,t){r.prototype=Object.create(t.prototype),r.prototype.constructor=r,c(r,t)}function c(r,t){return c=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(y,f){return y.__proto__=f,y},c(r,t)}var m={STOPPED:"STOPPED",IDLE:"IDLE",KEY_LOADING:"KEY_LOADING",FRAG_LOADING:"FRAG_LOADING",FRAG_LOADING_WAITING_RETRY:"FRAG_LOADING_WAITING_RETRY",WAITING_TRACK:"WAITING_TRACK",PARSING:"PARSING",PARSED:"PARSED",ENDED:"ENDED",ERROR:"ERROR",WAITING_INIT_PTS:"WAITING_INIT_PTS",WAITING_LEVEL:"WAITING_LEVEL"},e=function(r){g(t,r);function t(y,f,b,R){var I;return I=r.call(this)||this,I.hls=void 0,I.fragPrevious=null,I.fragCurrent=null,I.fragmentTracker=void 0,I.transmuxer=null,I._state=m.STOPPED,I.media=null,I.mediaBuffer=null,I.config=void 0,I.bitrateTest=!1,I.lastCurrentTime=0,I.nextLoadPosition=0,I.startPosition=0,I.loadedmetadata=!1,I.fragLoadError=0,I.retryDate=0,I.levels=null,I.fragmentLoader=void 0,I.keyLoader=void 0,I.levelLastLoaded=null,I.startFragRequested=!1,I.decrypter=void 0,I.initPTS=[],I.onvseeking=null,I.onvended=null,I.logPrefix="",I.log=void 0,I.warn=void 0,I.logPrefix=R,I.log=B.logger.log.bind(B.logger,R+":"),I.warn=B.logger.warn.bind(B.logger,R+":"),I.hls=y,I.fragmentLoader=new p.default(y.config),I.keyLoader=b,I.fragmentTracker=f,I.config=y.config,I.decrypter=new h.default(y.config),y.on(A.Events.LEVEL_SWITCHING,I.onLevelSwitching,u(I)),I}var s=t.prototype;return s.doTick=function(){this.onTickEnd()},s.onTickEnd=function(){},s.startLoad=function(f){},s.stopLoad=function(){this.fragmentLoader.abort(),this.keyLoader.abort();var f=this.fragCurrent;f&&(f.abortRequests(),this.fragmentTracker.removeFragment(f)),this.resetTransmuxer(),this.fragCurrent=null,this.fragPrevious=null,this.clearInterval(),this.clearNextTick(),this.state=m.STOPPED},s._streamEnded=function(f,b){if(b.live||f.nextStart||!f.end||!this.media)return!1;var R=b.partList;if(R!=null&&R.length){var I=R[R.length-1],k=P.BufferHelper.isBuffered(this.media,I.start+I.duration/2);return k}var F=b.fragments[b.fragments.length-1].type;return this.fragmentTracker.isEndListAppended(F)},s.getLevelDetails=function(){if(this.levels&&this.levelLastLoaded!==null){var f;return(f=this.levels[this.levelLastLoaded])===null||f===void 0?void 0:f.details}},s.onMediaAttached=function(f,b){var R=this.media=this.mediaBuffer=b.media;this.onvseeking=this.onMediaSeeking.bind(this),this.onvended=this.onMediaEnded.bind(this),R.addEventListener("seeking",this.onvseeking),R.addEventListener("ended",this.onvended);var I=this.config;this.levels&&I.autoStartLoad&&this.state===m.STOPPED&&this.startLoad(I.startPosition)},s.onMediaDetaching=function(){var f=this.media;f!=null&&f.ended&&(this.log("MSE detaching and video ended, reset startPosition"),this.startPosition=this.lastCurrentTime=0),f&&this.onvseeking&&this.onvended&&(f.removeEventListener("seeking",this.onvseeking),f.removeEventListener("ended",this.onvended),this.onvseeking=this.onvended=null),this.keyLoader&&this.keyLoader.detach(),this.media=this.mediaBuffer=null,this.loadedmetadata=!1,this.fragmentTracker.removeAllFragments(),this.stopLoad()},s.onMediaSeeking=function(){var f=this.config,b=this.fragCurrent,R=this.media,I=this.mediaBuffer,k=this.state,F=R?R.currentTime:0,K=P.BufferHelper.bufferInfo(I||R,F,f.maxBufferHole);if(this.log("media seeking to "+((0,C.isFiniteNumber)(F)?F.toFixed(3):F)+", state: "+k),this.state===m.ENDED)this.resetLoadingState();else if(b){var H=f.maxFragLookUpTolerance,j=b.start-H,Y=b.start+b.duration+H;if(!K.len||Y<K.start||j>K.end){var Q=F>Y;(F<j||Q)&&(Q&&b.loader&&(this.log("seeking outside of buffer while fragment load in progress, cancel fragment load"),b.abortRequests()),this.resetLoadingState())}}R&&(this.lastCurrentTime=F),!this.loadedmetadata&&!K.len&&(this.nextLoadPosition=this.startPosition=F),this.tickImmediate()},s.onMediaEnded=function(){this.startPosition=this.lastCurrentTime=0},s.onLevelSwitching=function(f,b){this.fragLoadError=0},s.onHandlerDestroying=function(){this.stopLoad(),r.prototype.onHandlerDestroying.call(this)},s.onHandlerDestroyed=function(){this.state=m.STOPPED,this.hls.off(A.Events.LEVEL_SWITCHING,this.onLevelSwitching,this),this.fragmentLoader&&this.fragmentLoader.destroy(),this.keyLoader&&this.keyLoader.destroy(),this.decrypter&&this.decrypter.destroy(),this.hls=this.log=this.warn=this.decrypter=this.keyLoader=this.fragmentLoader=this.fragmentTracker=null,r.prototype.onHandlerDestroyed.call(this)},s.loadFragment=function(f,b,R){this._loadFragForPlayback(f,b,R)},s._loadFragForPlayback=function(f,b,R){var I=this,k=function(K){if(I.fragContextChanged(f)){I.warn("Fragment "+f.sn+(K.part?" p: "+K.part.index:"")+" of level "+f.level+" was dropped during download."),I.fragmentTracker.removeFragment(f);return}f.stats.chunkCount++,I._handleFragmentLoadProgress(K)};this._doFragLoad(f,b,R,k).then(function(F){if(!!F){I.fragLoadError=0;var K=I.state;if(I.fragContextChanged(f)){(K===m.FRAG_LOADING||!I.fragCurrent&&K===m.PARSING)&&(I.fragmentTracker.removeFragment(f),I.state=m.IDLE);return}"payload"in F&&(I.log("Loaded fragment "+f.sn+" of level "+f.level),I.hls.trigger(A.Events.FRAG_LOADED,F)),I._handleFragmentLoadComplete(F)}}).catch(function(F){I.state===m.STOPPED||I.state===m.ERROR||(I.warn(F),I.resetFragmentLoading(f))})},s.flushMainBuffer=function(f,b,R){if(R===void 0&&(R=null),!!(f-b)){var I={startOffset:f,endOffset:b,type:R};this.fragLoadError=0,this.hls.trigger(A.Events.BUFFER_FLUSHING,I)}},s._loadInitSegment=function(f,b){var R=this;this._doFragLoad(f,b).then(function(I){if(!I||R.fragContextChanged(f)||!R.levels)throw new Error("init load aborted");return I}).then(function(I){var k=R.hls,F=I.payload,K=f.decryptdata;if(F&&F.byteLength>0&&K&&K.key&&K.iv&&K.method==="AES-128"){var H=self.performance.now();return R.decrypter.decrypt(new Uint8Array(F),K.key.buffer,K.iv.buffer).then(function(j){var Y=self.performance.now();return k.trigger(A.Events.FRAG_DECRYPTED,{frag:f,payload:j,stats:{tstart:H,tdecrypt:Y}}),I.payload=j,I})}return I}).then(function(I){var k=R.fragCurrent,F=R.hls,K=R.levels;if(!K)throw new Error("init load aborted, missing levels");var H=K[f.level].details;console.assert(H,"Level details are defined when init segment is loaded");var j=f.stats;R.state=m.IDLE,R.fragLoadError=0,f.data=new Uint8Array(I.payload),j.parsing.start=j.buffering.start=self.performance.now(),j.parsing.end=j.buffering.end=self.performance.now(),I.frag===k&&F.trigger(A.Events.FRAG_BUFFERED,{stats:j,frag:k,part:null,id:f.type}),R.tick()}).catch(function(I){R.state===m.STOPPED||R.state===m.ERROR||(R.warn(I),R.resetFragmentLoading(f))})},s.fragContextChanged=function(f){var b=this.fragCurrent;return!f||!b||f.level!==b.level||f.sn!==b.sn||f.urlId!==b.urlId},s.fragBufferedComplete=function(f,b){var R,I,k=this.mediaBuffer?this.mediaBuffer:this.media;this.log("Buffered "+f.type+" sn: "+f.sn+(b?" part: "+b.index:"")+" of "+(this.logPrefix==="[stream-controller]"?"level":"track")+" "+f.level+" "+(k?a.default.toString(P.BufferHelper.getBuffered(k)):"(detached)")),this.state=m.IDLE,k&&(!this.loadedmetadata&&f.type==o.PlaylistLevelType.MAIN&&k.buffered.length&&((R=this.fragCurrent)===null||R===void 0?void 0:R.sn)===((I=this.fragPrevious)===null||I===void 0?void 0:I.sn)&&(this.loadedmetadata=!0,this.seekToStartPos()),this.tick())},s.seekToStartPos=function(){},s._handleFragmentLoadComplete=function(f){var b=this.transmuxer;if(!!b){var R=f.frag,I=f.part,k=f.partsLoaded,F=!k||k.length===0||k.some(function(H){return!H}),K=new x.ChunkMetadata(R.level,R.sn,R.stats.chunkCount+1,0,I?I.index:-1,!F);b.flush(K)}},s._handleFragmentLoadProgress=function(f){},s._doFragLoad=function(f,b,R,I){var k,F=this;if(R===void 0&&(R=null),!this.levels)throw new Error("frag load aborted, missing levels");var K=null;if(f.encrypted&&!((k=f.decryptdata)!==null&&k!==void 0&&k.key)?(this.log("Loading key for "+f.sn+" of ["+b.startSN+"-"+b.endSN+"], "+(this.logPrefix==="[stream-controller]"?"level":"track")+" "+f.level),this.state=m.KEY_LOADING,this.fragCurrent=f,K=this.keyLoader.load(f).then(function(q){if(!F.fragContextChanged(q.frag))return F.hls.trigger(A.Events.KEY_LOADED,q),q}),this.hls.trigger(A.Events.KEY_LOADING,{frag:f}),this.throwIfFragContextChanged("KEY_LOADING")):!f.encrypted&&b.encryptedFragments.length&&this.keyLoader.loadClear(f,b.encryptedFragments),R=Math.max(f.start,R||0),this.config.lowLatencyMode&&b){var H=b.partList;if(H&&I){R>f.end&&b.fragmentHint&&(f=b.fragmentHint);var j=this.getNextPart(H,f,R);if(j>-1){var Y=H[j];return this.log("Loading part sn: "+f.sn+" p: "+Y.index+" cc: "+f.cc+" of playlist ["+b.startSN+"-"+b.endSN+"] parts [0-"+j+"-"+(H.length-1)+"] "+(this.logPrefix==="[stream-controller]"?"level":"track")+": "+f.level+", target: "+parseFloat(R.toFixed(3))),this.nextLoadPosition=Y.start+Y.duration,this.state=m.FRAG_LOADING,this.hls.trigger(A.Events.FRAG_LOADING,{frag:f,part:H[j],targetBufferTime:R}),this.throwIfFragContextChanged("FRAG_LOADING parts"),K?K.then(function(q){return!q||F.fragContextChanged(q.frag)?null:F.doFragPartsLoad(f,H,j,I)}).catch(function(q){return F.handleFragLoadError(q)}):this.doFragPartsLoad(f,H,j,I).catch(function(q){return F.handleFragLoadError(q)})}else if(!f.url||this.loadedEndOfParts(H,R))return Promise.resolve(null)}}this.log("Loading fragment "+f.sn+" cc: "+f.cc+" "+(b?"of ["+b.startSN+"-"+b.endSN+"] ":"")+(this.logPrefix==="[stream-controller]"?"level":"track")+": "+f.level+", target: "+parseFloat(R.toFixed(3))),(0,C.isFiniteNumber)(f.sn)&&!this.bitrateTest&&(this.nextLoadPosition=f.start+f.duration),this.state=m.FRAG_LOADING,this.hls.trigger(A.Events.FRAG_LOADING,{frag:f,targetBufferTime:R}),this.throwIfFragContextChanged("FRAG_LOADING");var Q=this.config.progressive;return Q&&K?K.then(function(q){return!q||F.fragContextChanged(q==null?void 0:q.frag)?null:F.fragmentLoader.load(f,I)}).catch(function(q){return F.handleFragLoadError(q)}):Promise.all([this.fragmentLoader.load(f,Q?I:void 0),K]).then(function(q){var ne=q[0];return!Q&&ne&&I&&I(ne),ne}).catch(function(q){return F.handleFragLoadError(q)})},s.throwIfFragContextChanged=function(f){if(this.fragCurrent===null)throw new Error("frag load aborted, context changed in "+f)},s.doFragPartsLoad=function(f,b,R,I){var k=this;return new Promise(function(F,K){var H=[],j=function Y(Q){var q=b[Q];k.fragmentLoader.loadPart(f,q,I).then(function(ne){H[q.index]=ne;var te=ne.part;k.hls.trigger(A.Events.FRAG_LOADED,ne);var ae=b[Q+1];if(ae&&ae.fragment===f)Y(Q+1);else return F({frag:f,part:te,partsLoaded:H})}).catch(K)};j(R)})},s.handleFragLoadError=function(f){if("data"in f){var b=f.data;f.data&&b.details===D.ErrorDetails.INTERNAL_ABORTED?this.handleFragLoadAborted(b.frag,b.part):this.hls.trigger(A.Events.ERROR,b)}else this.hls.trigger(A.Events.ERROR,{type:D.ErrorTypes.OTHER_ERROR,details:D.ErrorDetails.INTERNAL_EXCEPTION,err:f,fatal:!0});return null},s._handleTransmuxerFlush=function(f){var b=this.getCurrentContext(f);if(!b||this.state!==m.PARSING){!this.fragCurrent&&this.state!==m.STOPPED&&this.state!==m.ERROR&&(this.state=m.IDLE);return}var R=b.frag,I=b.part,k=b.level,F=self.performance.now();R.stats.parsing.end=F,I&&(I.stats.parsing.end=F),this.updateLevelTiming(R,I,k,f.partial)},s.getCurrentContext=function(f){var b=this.levels,R=f.level,I=f.sn,k=f.part;if(!b||!b[R])return this.warn("Levels object was unset while buffering fragment "+I+" of level "+R+". The current chunk will not be buffered."),null;var F=b[R],K=k>-1?(0,E.getPartWith)(F,I,k):null,H=K?K.fragment:(0,E.getFragmentWithSN)(F,I,this.fragCurrent);return H?{frag:H,part:K,level:F}:null},s.bufferFragmentData=function(f,b,R,I){if(!(!f||this.state!==m.PARSING)){var k=f.data1,F=f.data2,K=k;if(k&&F&&(K=(0,_.appendUint8Array)(k,F)),!(!K||!K.length)){var H={type:f.type,frag:b,part:R,chunkMeta:I,parent:b.type,data:K};this.hls.trigger(A.Events.BUFFER_APPENDING,H),f.dropped&&f.independent&&!R&&this.flushBufferGap(b)}}},s.flushBufferGap=function(f){var b=this.media;if(!!b){if(!P.BufferHelper.isBuffered(b,b.currentTime)){this.flushMainBuffer(0,f.start);return}var R=b.currentTime,I=P.BufferHelper.bufferInfo(b,R,0),k=f.duration,F=Math.min(this.config.maxFragLookUpTolerance*2,k*.25),K=Math.max(Math.min(f.start-F,I.end-F),R+F);f.start-K>F&&this.flushMainBuffer(K,f.start)}},s.getFwdBufferInfo=function(f,b){var R=this.config,I=this.getLoadPosition();if(!(0,C.isFiniteNumber)(I))return null;var k=P.BufferHelper.bufferInfo(f,I,R.maxBufferHole);if(k.len===0&&k.nextStart!==void 0){var F=this.fragmentTracker.getBufferedFrag(I,b);if(F&&k.nextStart<F.end)return P.BufferHelper.bufferInfo(f,I,Math.max(k.nextStart,R.maxBufferHole))}return k},s.getMaxBufferLength=function(f){var b=this.config,R;return f?R=Math.max(8*b.maxBufferSize/f,b.maxBufferLength):R=b.maxBufferLength,Math.min(R,b.maxMaxBufferLength)},s.reduceMaxBufferLength=function(f){var b=this.config,R=f||b.maxBufferLength;return b.maxMaxBufferLength>=R?(b.maxMaxBufferLength/=2,this.warn("Reduce max buffer length to "+b.maxMaxBufferLength+"s"),!0):!1},s.getNextFragment=function(f,b){var R=b.fragments,I=R.length;if(!I)return null;var k=this.config,F=R[0].start,K;if(b.live){var H=k.initialLiveManifestSize;if(I<H)return this.warn("Not enough fragments to start playback (have: "+I+", need: "+H+")"),null;!b.PTSKnown&&!this.startFragRequested&&this.startPosition===-1&&(K=this.getInitialLiveFragment(b,R),this.startPosition=K?this.hls.liveSyncPosition||K.start:f)}else f<=F&&(K=R[0]);if(!K){var j=k.lowLatencyMode?b.partEnd:b.fragmentEnd;K=this.getFragmentAtPosition(f,j,b)}return this.mapToInitFragWhenRequired(K)},s.mapToInitFragWhenRequired=function(f){return f!=null&&f.initSegment&&!(f!=null&&f.initSegment.data)&&!this.bitrateTest?f.initSegment:f},s.getNextPart=function(f,b,R){for(var I=-1,k=!1,F=!0,K=0,H=f.length;K<H;K++){var j=f[K];if(F=F&&!j.independent,I>-1&&R<j.start)break;var Y=j.loaded;Y?I=-1:(k||j.independent||F)&&j.fragment===b&&(I=K),k=Y}return I},s.loadedEndOfParts=function(f,b){var R=f[f.length-1];return R&&b>R.start&&R.loaded},s.getInitialLiveFragment=function(f,b){var R=this.fragPrevious,I=null;if(R){if(f.hasProgramDateTime&&(this.log("Live playlist, switching playlist, load frag with same PDT: "+R.programDateTime),I=(0,d.findFragmentByPDT)(b,R.endProgramDateTime,this.config.maxFragLookUpTolerance)),!I){var k=R.sn+1;if(k>=f.startSN&&k<=f.endSN){var F=b[k-f.startSN];R.cc===F.cc&&(I=F,this.log("Live playlist, switching playlist, load frag with next SN: "+I.sn))}I||(I=(0,d.findFragWithCC)(b,R.cc),I&&this.log("Live playlist, switching playlist, load frag with same CC: "+I.sn))}}else{var K=this.hls.liveSyncPosition;K!==null&&(I=this.getFragmentAtPosition(K,this.bitrateTest?f.fragmentEnd:f.edge,f))}return I},s.getFragmentAtPosition=function(f,b,R){var I=this.config,k=this.fragPrevious,F=R.fragments,K=R.endSN,H=R.fragmentHint,j=I.maxFragLookUpTolerance,Y=!!(I.lowLatencyMode&&R.partList&&H);Y&&H&&!this.bitrateTest&&(F=F.concat(H),K=H.sn);var Q;if(f<b){var q=f>b-j?0:j;Q=(0,d.findFragmentByPTS)(k,F,f,q)}else Q=F[F.length-1];if(Q){var ne=Q.sn-R.startSN;if(this.fragmentTracker.getState(Q)===M.FragmentState.OK&&(k=Q),k&&Q.sn===k.sn&&!Y){var te=k&&Q.level===k.level;if(te){var ae=F[ne+1];Q.sn<K&&this.fragmentTracker.getState(ae)!==M.FragmentState.OK?(this.log("SN "+Q.sn+" just loaded, load next one: "+ae.sn),Q=ae):Q=null}}}return Q},s.synchronizeToLiveEdge=function(f){var b=this.config,R=this.media;if(!!R){var I=this.hls.liveSyncPosition,k=R.currentTime,F=f.fragments[0].start,K=f.edge,H=k>=F-b.maxFragLookUpTolerance&&k<=K;if(I!==null&&R.duration>I&&(k<I||!H)){var j=b.liveMaxLatencyDuration!==void 0?b.liveMaxLatencyDuration:b.liveMaxLatencyDurationCount*f.targetduration;(!H&&R.readyState<4||k<K-j)&&(this.loadedmetadata||(this.nextLoadPosition=I),R.readyState&&(this.warn("Playback: "+k.toFixed(3)+" is located too far from the end of live sliding playlist: "+K+", reset currentTime to : "+I.toFixed(3)),R.currentTime=I))}}},s.alignPlaylists=function(f,b){var R=this.levels,I=this.levelLastLoaded,k=this.fragPrevious,F=I!==null?R[I]:null,K=f.fragments.length;if(!K)return this.warn("No fragments in live playlist"),0;var H=f.fragments[0].start,j=!b,Y=f.alignedSliding&&(0,C.isFiniteNumber)(H);if(j||!Y&&!H){(0,S.alignStream)(k,F,f);var Q=f.fragments[0].start;return this.log("Live playlist sliding: "+Q.toFixed(2)+" start-sn: "+(b?b.startSN:"na")+"->"+f.startSN+" prev-sn: "+(k?k.sn:"na")+" fragments: "+K),Q}return H},s.waitForCdnTuneIn=function(f){var b=3;return f.live&&f.canBlockReload&&f.partTarget&&f.tuneInGoal>Math.max(f.partHoldBack,f.partTarget*b)},s.setStartPosition=function(f,b){var R=this.startPosition;if(R<b&&(R=-1),R===-1||this.lastCurrentTime===-1){var I=f.startTimeOffset;(0,C.isFiniteNumber)(I)?(R=b+I,I<0&&(R+=f.totalduration),R=Math.min(Math.max(b,R),b+f.totalduration),this.log("Start time offset "+I+" found in playlist, adjust startPosition to "+R),this.startPosition=R):f.live?R=this.hls.liveSyncPosition||b:this.startPosition=R=0,this.lastCurrentTime=R}this.nextLoadPosition=R},s.getLoadPosition=function(){var f=this.media,b=0;return this.loadedmetadata&&f?b=f.currentTime:this.nextLoadPosition&&(b=this.nextLoadPosition),b},s.handleFragLoadAborted=function(f,b){this.transmuxer&&f.sn!=="initSegment"&&f.stats.aborted&&(this.warn("Fragment "+f.sn+(b?" part"+b.index:"")+" of level "+f.level+" was aborted"),this.resetFragmentLoading(f))},s.resetFragmentLoading=function(f){(!this.fragCurrent||!this.fragContextChanged(f)&&this.state!==m.FRAG_LOADING_WAITING_RETRY)&&(this.state=m.IDLE)},s.onFragmentOrKeyLoadError=function(f,b){if(b.fatal){this.stopLoad(),this.state=m.ERROR;return}var R=this.config;if(b.chunkMeta){var I=this.getCurrentContext(b.chunkMeta);I&&(b.frag=I.frag,b.levelRetry=!0,this.fragLoadError=R.fragLoadingMaxRetry)}var k=b.frag;if(!(!k||k.type!==f)){var F=this.fragCurrent;if(console.assert(F&&k.sn===F.sn&&k.level===F.level&&k.urlId===F.urlId,"Frag load error must match current frag to retry"),this.fragLoadError+1<=R.fragLoadingMaxRetry){this.loadedmetadata||(this.startFragRequested=!1,this.nextLoadPosition=this.startPosition);var K=Math.min(Math.pow(2,this.fragLoadError)*R.fragLoadingRetryDelay,R.fragLoadingMaxRetryTimeout);this.warn("Fragment "+k.sn+" of "+f+" "+k.level+" failed to load, retrying in "+K+"ms"),this.retryDate=self.performance.now()+K,this.fragLoadError++,this.state=m.FRAG_LOADING_WAITING_RETRY}else b.levelRetry?(f===o.PlaylistLevelType.AUDIO&&(this.fragCurrent=null),this.fragLoadError=0,this.state=m.IDLE):(B.logger.error(b.details+" reaches max retry, redispatch as fatal ..."),b.fatal=!0,this.hls.stopLoad(),this.state=m.ERROR)}},s.afterBufferFlushed=function(f,b,R){if(!!f){var I=P.BufferHelper.getBuffered(f);this.fragmentTracker.detectEvictedFragments(b,I,R),this.state===m.ENDED&&this.resetLoadingState()}},s.resetLoadingState=function(){this.log("Reset loading state"),this.fragCurrent=null,this.fragPrevious=null,this.state=m.IDLE},s.resetStartWhenNotLoaded=function(f){if(!this.loadedmetadata){this.startFragRequested=!1;var b=this.levels?this.levels[f].details:null;b!=null&&b.live?(this.startPosition=-1,this.setStartPosition(b,0),this.resetLoadingState()):this.nextLoadPosition=this.startPosition}},s.updateLevelTiming=function(f,b,R,I){var k=this,F=R.details;console.assert(!!F,"level.details must be defined");var K=Object.keys(f.elementaryStreams).reduce(function(H,j){var Y=f.elementaryStreams[j];if(Y){var Q=Y.endPTS-Y.startPTS;if(Q<=0)return k.warn("Could not parse fragment "+f.sn+" "+j+" duration reliably ("+Q+")"),H||!1;var q=I?0:(0,E.updateFragPTSDTS)(F,f,Y.startPTS,Y.endPTS,Y.startDTS,Y.endDTS);return k.hls.trigger(A.Events.LEVEL_PTS_UPDATED,{details:F,level:R,drift:q,type:j,frag:f,start:Y.startPTS,end:Y.endPTS}),!0}return H},!1);K||(this.warn("Found no media in fragment "+f.sn+" of level "+R.id+" resetting transmuxer to fallback to playlist timing"),this.resetTransmuxer()),this.state=m.PARSED,this.hls.trigger(A.Events.FRAG_PARSED,{frag:f,part:b})},s.resetTransmuxer=function(){this.transmuxer&&(this.transmuxer.destroy(),this.transmuxer=null)},v(t,[{key:"state",get:function(){return this._state},set:function(f){var b=this._state;b!==f&&(this._state=f,this.log(b+"->"+f))}}]),t}(L.default)},"./src/controller/buffer-controller.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>d});var C=T("./src/polyfills/number.ts"),L=T("./src/events.ts"),M=T("./src/utils/logger.ts"),P=T("./src/errors.ts"),B=T("./src/utils/buffer-helper.ts"),A=T("./src/utils/mediasource-helper.ts"),D=T("./src/loader/fragment.ts"),x=T("./src/controller/buffer-operation-queue.ts"),_=(0,A.getMediaSource)(),S=/([ha]vc.)(?:\.[^.,]+)+/,d=function(){function E(h){var a=this;this.details=null,this._objectUrl=null,this.operationQueue=void 0,this.listeners=void 0,this.hls=void 0,this.bufferCodecEventsExpected=0,this._bufferCodecEventsTotal=0,this.media=null,this.mediaSource=null,this.lastMpegAudioChunk=null,this.appendError=0,this.tracks={},this.pendingTracks={},this.sourceBuffer=void 0,this._onMediaSourceOpen=function(){var o=a.hls,n=a.media,v=a.mediaSource;M.logger.log("[buffer-controller]: Media source opened"),n&&(a.updateMediaElementDuration(),o.trigger(L.Events.MEDIA_ATTACHED,{media:n})),v&&v.removeEventListener("sourceopen",a._onMediaSourceOpen),a.checkPendingTracks()},this._onMediaSourceClose=function(){M.logger.log("[buffer-controller]: Media source closed")},this._onMediaSourceEnded=function(){M.logger.log("[buffer-controller]: Media source ended")},this.hls=h,this._initSourceBuffer(),this.registerListeners()}var p=E.prototype;return p.hasSourceTypes=function(){return this.getSourceBufferTypes().length>0||Object.keys(this.pendingTracks).length>0},p.destroy=function(){this.unregisterListeners(),this.details=null,this.lastMpegAudioChunk=null},p.registerListeners=function(){var a=this.hls;a.on(L.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),a.on(L.Events.MEDIA_DETACHING,this.onMediaDetaching,this),a.on(L.Events.MANIFEST_PARSED,this.onManifestParsed,this),a.on(L.Events.BUFFER_RESET,this.onBufferReset,this),a.on(L.Events.BUFFER_APPENDING,this.onBufferAppending,this),a.on(L.Events.BUFFER_CODECS,this.onBufferCodecs,this),a.on(L.Events.BUFFER_EOS,this.onBufferEos,this),a.on(L.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),a.on(L.Events.LEVEL_UPDATED,this.onLevelUpdated,this),a.on(L.Events.FRAG_PARSED,this.onFragParsed,this),a.on(L.Events.FRAG_CHANGED,this.onFragChanged,this)},p.unregisterListeners=function(){var a=this.hls;a.off(L.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),a.off(L.Events.MEDIA_DETACHING,this.onMediaDetaching,this),a.off(L.Events.MANIFEST_PARSED,this.onManifestParsed,this),a.off(L.Events.BUFFER_RESET,this.onBufferReset,this),a.off(L.Events.BUFFER_APPENDING,this.onBufferAppending,this),a.off(L.Events.BUFFER_CODECS,this.onBufferCodecs,this),a.off(L.Events.BUFFER_EOS,this.onBufferEos,this),a.off(L.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),a.off(L.Events.LEVEL_UPDATED,this.onLevelUpdated,this),a.off(L.Events.FRAG_PARSED,this.onFragParsed,this),a.off(L.Events.FRAG_CHANGED,this.onFragChanged,this)},p._initSourceBuffer=function(){this.sourceBuffer={},this.operationQueue=new x.default(this.sourceBuffer),this.listeners={audio:[],video:[],audiovideo:[]},this.lastMpegAudioChunk=null},p.onManifestParsed=function(a,o){var n=2;(o.audio&&!o.video||!o.altAudio)&&(n=1),this.bufferCodecEventsExpected=this._bufferCodecEventsTotal=n,this.details=null,M.logger.log(this.bufferCodecEventsExpected+" bufferCodec event(s) expected")},p.onMediaAttaching=function(a,o){var n=this.media=o.media;if(n&&_){var v=this.mediaSource=new _;v.addEventListener("sourceopen",this._onMediaSourceOpen),v.addEventListener("sourceended",this._onMediaSourceEnded),v.addEventListener("sourceclose",this._onMediaSourceClose),n.src=self.URL.createObjectURL(v),this._objectUrl=n.src}},p.onMediaDetaching=function(){var a=this.media,o=this.mediaSource,n=this._objectUrl;if(o){if(M.logger.log("[buffer-controller]: media source detaching"),o.readyState==="open")try{o.endOfStream()}catch(v){M.logger.warn("[buffer-controller]: onMediaDetaching: "+v.message+" while calling endOfStream")}this.onBufferReset(),o.removeEventListener("sourceopen",this._onMediaSourceOpen),o.removeEventListener("sourceended",this._onMediaSourceEnded),o.removeEventListener("sourceclose",this._onMediaSourceClose),a&&(n&&self.URL.revokeObjectURL(n),a.src===n?(a.removeAttribute("src"),a.load()):M.logger.warn("[buffer-controller]: media.src was changed by a third party - skip cleanup")),this.mediaSource=null,this.media=null,this._objectUrl=null,this.bufferCodecEventsExpected=this._bufferCodecEventsTotal,this.pendingTracks={},this.tracks={}}this.hls.trigger(L.Events.MEDIA_DETACHED,void 0)},p.onBufferReset=function(){var a=this;this.getSourceBufferTypes().forEach(function(o){var n=a.sourceBuffer[o];try{n&&(a.removeBufferListeners(o),a.mediaSource&&a.mediaSource.removeSourceBuffer(n),a.sourceBuffer[o]=void 0)}catch(v){M.logger.warn("[buffer-controller]: Failed to reset the "+o+" buffer",v)}}),this._initSourceBuffer()},p.onBufferCodecs=function(a,o){var n=this,v=this.getSourceBufferTypes().length;Object.keys(o).forEach(function(l){if(v){var i=n.tracks[l];if(i&&typeof i.buffer.changeType=="function"){var u=o[l],g=u.id,c=u.codec,m=u.levelCodec,e=u.container,r=u.metadata,t=(i.levelCodec||i.codec).replace(S,"$1"),s=(m||c).replace(S,"$1");if(t!==s){var y=e+";codecs="+(m||c);n.appendChangeType(l,y),M.logger.log("[buffer-controller]: switching codec "+t+" to "+s),n.tracks[l]={buffer:i.buffer,codec:c,container:e,levelCodec:m,metadata:r,id:g}}}}else n.pendingTracks[l]=o[l]}),!v&&(this.bufferCodecEventsExpected=Math.max(this.bufferCodecEventsExpected-1,0),this.mediaSource&&this.mediaSource.readyState==="open"&&this.checkPendingTracks())},p.appendChangeType=function(a,o){var n=this,v=this.operationQueue,l={execute:function(){var u=n.sourceBuffer[a];u&&(M.logger.log("[buffer-controller]: changing "+a+" sourceBuffer type to "+o),u.changeType(o)),v.shiftAndExecuteNext(a)},onStart:function(){},onComplete:function(){},onError:function(u){M.logger.warn("[buffer-controller]: Failed to change "+a+" SourceBuffer type",u)}};v.append(l,a)},p.onBufferAppending=function(a,o){var n=this,v=this.hls,l=this.operationQueue,i=this.tracks,u=o.data,g=o.type,c=o.frag,m=o.part,e=o.chunkMeta,r=e.buffering[g],t=self.performance.now();r.start=t;var s=c.stats.buffering,y=m?m.stats.buffering:null;s.start===0&&(s.start=t),y&&y.start===0&&(y.start=t);var f=i.audio,b=!1;g==="audio"&&(f==null?void 0:f.container)==="audio/mpeg"&&(b=!this.lastMpegAudioChunk||e.id===1||this.lastMpegAudioChunk.sn!==e.sn,this.lastMpegAudioChunk=e);var R=c.start,I={execute:function(){if(r.executeStart=self.performance.now(),b){var F=n.sourceBuffer[g];if(F){var K=R-F.timestampOffset;Math.abs(K)>=.1&&(M.logger.log("[buffer-controller]: Updating audio SourceBuffer timestampOffset to "+R+" (delta: "+K+") sn: "+c.sn+")"),F.timestampOffset=R)}}n.appendExecutor(u,g)},onStart:function(){},onComplete:function(){var F=self.performance.now();r.executeEnd=r.end=F,s.first===0&&(s.first=F),y&&y.first===0&&(y.first=F);var K=n.sourceBuffer,H={};for(var j in K)H[j]=B.BufferHelper.getBuffered(K[j]);n.appendError=0,n.hls.trigger(L.Events.BUFFER_APPENDED,{type:g,frag:c,part:m,chunkMeta:e,parent:c.type,timeRanges:H})},onError:function(F){M.logger.error("[buffer-controller]: Error encountered while trying to append to the "+g+" SourceBuffer",F);var K={type:P.ErrorTypes.MEDIA_ERROR,parent:c.type,details:P.ErrorDetails.BUFFER_APPEND_ERROR,err:F,fatal:!1};F.code===DOMException.QUOTA_EXCEEDED_ERR?K.details=P.ErrorDetails.BUFFER_FULL_ERROR:(n.appendError++,K.details=P.ErrorDetails.BUFFER_APPEND_ERROR,n.appendError>v.config.appendErrorMaxRetry&&(M.logger.error("[buffer-controller]: Failed "+v.config.appendErrorMaxRetry+" times to append segment in sourceBuffer"),K.fatal=!0,v.stopLoad())),v.trigger(L.Events.ERROR,K)}};l.append(I,g)},p.onBufferFlushing=function(a,o){var n=this,v=this.operationQueue,l=function(u){return{execute:n.removeExecutor.bind(n,u,o.startOffset,o.endOffset),onStart:function(){},onComplete:function(){n.hls.trigger(L.Events.BUFFER_FLUSHED,{type:u})},onError:function(c){M.logger.warn("[buffer-controller]: Failed to remove from "+u+" SourceBuffer",c)}}};o.type?v.append(l(o.type),o.type):this.getSourceBufferTypes().forEach(function(i){v.append(l(i),i)})},p.onFragParsed=function(a,o){var n=this,v=o.frag,l=o.part,i=[],u=l?l.elementaryStreams:v.elementaryStreams;u[D.ElementaryStreamTypes.AUDIOVIDEO]?i.push("audiovideo"):(u[D.ElementaryStreamTypes.AUDIO]&&i.push("audio"),u[D.ElementaryStreamTypes.VIDEO]&&i.push("video"));var g=function(){var m=self.performance.now();v.stats.buffering.end=m,l&&(l.stats.buffering.end=m);var e=l?l.stats:v.stats;n.hls.trigger(L.Events.FRAG_BUFFERED,{frag:v,part:l,stats:e,id:v.type})};i.length===0&&M.logger.warn("Fragments must have at least one ElementaryStreamType set. type: "+v.type+" level: "+v.level+" sn: "+v.sn),this.blockBuffers(g,i)},p.onFragChanged=function(a,o){this.flushBackBuffer()},p.onBufferEos=function(a,o){var n=this,v=this.getSourceBufferTypes().reduce(function(l,i){var u=n.sourceBuffer[i];return u&&(!o.type||o.type===i)&&(u.ending=!0,u.ended||(u.ended=!0,M.logger.log("[buffer-controller]: "+i+" sourceBuffer now EOS"))),l&&!!(!u||u.ended)},!0);v&&(M.logger.log("[buffer-controller]: Queueing mediaSource.endOfStream()"),this.blockBuffers(function(){n.getSourceBufferTypes().forEach(function(i){var u=n.sourceBuffer[i];u&&(u.ending=!1)});var l=n.mediaSource;if(!l||l.readyState!=="open"){l&&M.logger.info("[buffer-controller]: Could not call mediaSource.endOfStream(). mediaSource.readyState: "+l.readyState);return}M.logger.log("[buffer-controller]: Calling mediaSource.endOfStream()"),l.endOfStream()}))},p.onLevelUpdated=function(a,o){var n=o.details;!n.fragments.length||(this.details=n,this.getSourceBufferTypes().length?this.blockBuffers(this.updateMediaElementDuration.bind(this)):this.updateMediaElementDuration())},p.flushBackBuffer=function(){var a=this.hls,o=this.details,n=this.media,v=this.sourceBuffer;if(!(!n||o===null)){var l=this.getSourceBufferTypes();if(!!l.length){var i=o.live&&a.config.liveBackBufferLength!==null?a.config.liveBackBufferLength:a.config.backBufferLength;if(!(!(0,C.isFiniteNumber)(i)||i<0)){var u=n.currentTime,g=o.levelTargetDuration,c=Math.max(i,g),m=Math.floor(u/g)*g-c;l.forEach(function(e){var r=v[e];if(r){var t=B.BufferHelper.getBuffered(r);if(t.length>0&&m>t.start(0)){if(a.trigger(L.Events.BACK_BUFFER_REACHED,{bufferEnd:m}),o.live)a.trigger(L.Events.LIVE_BACK_BUFFER_REACHED,{bufferEnd:m});else if(r.ended&&t.end(t.length-1)-u<g*2){M.logger.info("[buffer-controller]: Cannot flush "+e+" back buffer while SourceBuffer is in ended state");return}a.trigger(L.Events.BUFFER_FLUSHING,{startOffset:0,endOffset:m,type:e})}}})}}}},p.updateMediaElementDuration=function(){if(!(!this.details||!this.media||!this.mediaSource||this.mediaSource.readyState!=="open")){var a=this.details,o=this.hls,n=this.media,v=this.mediaSource,l=a.fragments[0].start+a.totalduration,i=n.duration,u=(0,C.isFiniteNumber)(v.duration)?v.duration:0;a.live&&o.config.liveDurationInfinity?(M.logger.log("[buffer-controller]: Media Source duration is set to Infinity"),v.duration=1/0,this.updateSeekableRange(a)):(l>u&&l>i||!(0,C.isFiniteNumber)(i))&&(M.logger.log("[buffer-controller]: Updating Media Source duration to "+l.toFixed(3)),v.duration=l)}},p.updateSeekableRange=function(a){var o=this.mediaSource,n=a.fragments,v=n.length;if(v&&a.live&&o!==null&&o!==void 0&&o.setLiveSeekableRange){var l=Math.max(0,n[0].start),i=Math.max(l,l+a.totalduration);o.setLiveSeekableRange(l,i)}},p.checkPendingTracks=function(){var a=this.bufferCodecEventsExpected,o=this.operationQueue,n=this.pendingTracks,v=Object.keys(n).length;if(v&&!a||v===2){this.createSourceBuffers(n),this.pendingTracks={};var l=this.getSourceBufferTypes();if(l.length===0){this.hls.trigger(L.Events.ERROR,{type:P.ErrorTypes.MEDIA_ERROR,details:P.ErrorDetails.BUFFER_INCOMPATIBLE_CODECS_ERROR,fatal:!0,reason:"could not create source buffer for media codec(s)"});return}l.forEach(function(i){o.executeNext(i)})}},p.createSourceBuffers=function(a){var o=this.sourceBuffer,n=this.mediaSource;if(!n)throw Error("createSourceBuffers called when mediaSource was null");var v=0;for(var l in a)if(!o[l]){var i=a[l];if(!i)throw Error("source buffer exists for track "+l+", however track does not");var u=i.levelCodec||i.codec,g=i.container+";codecs="+u;M.logger.log("[buffer-controller]: creating sourceBuffer("+g+")");try{var c=o[l]=n.addSourceBuffer(g),m=l;this.addBufferListener(m,"updatestart",this._onSBUpdateStart),this.addBufferListener(m,"updateend",this._onSBUpdateEnd),this.addBufferListener(m,"error",this._onSBUpdateError),this.tracks[l]={buffer:c,codec:u,container:i.container,levelCodec:i.levelCodec,metadata:i.metadata,id:i.id},v++}catch(e){M.logger.error("[buffer-controller]: error while trying to add sourceBuffer: "+e.message),this.hls.trigger(L.Events.ERROR,{type:P.ErrorTypes.MEDIA_ERROR,details:P.ErrorDetails.BUFFER_ADD_CODEC_ERROR,fatal:!1,error:e,mimeType:g})}}v&&this.hls.trigger(L.Events.BUFFER_CREATED,{tracks:this.tracks})},p._onSBUpdateStart=function(a){var o=this.operationQueue,n=o.current(a);n.onStart()},p._onSBUpdateEnd=function(a){var o=this.operationQueue,n=o.current(a);n.onComplete(),o.shiftAndExecuteNext(a)},p._onSBUpdateError=function(a,o){M.logger.error("[buffer-controller]: "+a+" SourceBuffer error",o),this.hls.trigger(L.Events.ERROR,{type:P.ErrorTypes.MEDIA_ERROR,details:P.ErrorDetails.BUFFER_APPENDING_ERROR,fatal:!1});var n=this.operationQueue.current(a);n&&n.onError(o)},p.removeExecutor=function(a,o,n){var v=this.media,l=this.mediaSource,i=this.operationQueue,u=this.sourceBuffer,g=u[a];if(!v||!l||!g){M.logger.warn("[buffer-controller]: Attempting to remove from the "+a+" SourceBuffer, but it does not exist"),i.shiftAndExecuteNext(a);return}var c=(0,C.isFiniteNumber)(v.duration)?v.duration:1/0,m=(0,C.isFiniteNumber)(l.duration)?l.duration:1/0,e=Math.max(0,o),r=Math.min(n,c,m);r>e&&!g.ending?(g.ended=!1,M.logger.log("[buffer-controller]: Removing ["+e+","+r+"] from the "+a+" SourceBuffer"),console.assert(!g.updating,a+" sourceBuffer must not be updating"),g.remove(e,r)):i.shiftAndExecuteNext(a)},p.appendExecutor=function(a,o){var n=this.operationQueue,v=this.sourceBuffer,l=v[o];if(!l){M.logger.warn("[buffer-controller]: Attempting to append to the "+o+" SourceBuffer, but it does not exist"),n.shiftAndExecuteNext(o);return}l.ended=!1,console.assert(!l.updating,o+" sourceBuffer must not be updating"),l.appendBuffer(a)},p.blockBuffers=function(a,o){var n=this;if(o===void 0&&(o=this.getSourceBufferTypes()),!o.length){M.logger.log("[buffer-controller]: Blocking operation requested, but no SourceBuffers exist"),Promise.resolve().then(a);return}var v=this.operationQueue,l=o.map(function(i){return v.appendBlocker(i)});Promise.all(l).then(function(){a(),o.forEach(function(i){var u=n.sourceBuffer[i];(!u||!u.updating)&&v.shiftAndExecuteNext(i)})})},p.getSourceBufferTypes=function(){return Object.keys(this.sourceBuffer)},p.addBufferListener=function(a,o,n){var v=this.sourceBuffer[a];if(!!v){var l=n.bind(this,a);this.listeners[a].push({event:o,listener:l}),v.addEventListener(o,l)}},p.removeBufferListeners=function(a){var o=this.sourceBuffer[a];!o||this.listeners[a].forEach(function(n){o.removeEventListener(n.event,n.listener)})},E}()},"./src/controller/buffer-operation-queue.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>L});var C=T("./src/utils/logger.ts"),L=function(){function M(B){this.buffers=void 0,this.queues={video:[],audio:[],audiovideo:[]},this.buffers=B}var P=M.prototype;return P.append=function(A,D){var x=this.queues[D];x.push(A),x.length===1&&this.buffers[D]&&this.executeNext(D)},P.insertAbort=function(A,D){var x=this.queues[D];x.unshift(A),this.executeNext(D)},P.appendBlocker=function(A){var D,x=new Promise(function(S){D=S}),_={execute:D,onStart:function(){},onComplete:function(){},onError:function(){}};return this.append(_,A),x},P.executeNext=function(A){var D=this.buffers,x=this.queues,_=D[A],S=x[A];if(S.length){var d=S[0];try{d.execute()}catch(E){C.logger.warn("[buffer-operation-queue]: Unhandled exception executing the current operation"),d.onError(E),(!_||!_.updating)&&(S.shift(),this.executeNext(A))}}},P.shiftAndExecuteNext=function(A){this.queues[A].shift(),this.executeNext(A)},P.current=function(A){return this.queues[A][0]},M}()},"./src/controller/cap-level-controller.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>D});var C=T("./src/events.ts");function L(x,_){for(var S=0;S<_.length;S++){var d=_[S];d.enumerable=d.enumerable||!1,d.configurable=!0,"value"in d&&(d.writable=!0),Object.defineProperty(x,P(d.key),d)}}function M(x,_,S){return _&&L(x.prototype,_),S&&L(x,S),Object.defineProperty(x,"prototype",{writable:!1}),x}function P(x){var _=B(x,"string");return typeof _=="symbol"?_:String(_)}function B(x,_){if(typeof x!="object"||x===null)return x;var S=x[Symbol.toPrimitive];if(S!==void 0){var d=S.call(x,_||"default");if(typeof d!="object")return d;throw new TypeError("@@toPrimitive must return a primitive value.")}return(_==="string"?String:Number)(x)}var A=function(){function x(S){this.autoLevelCapping=void 0,this.firstLevel=void 0,this.media=void 0,this.restrictedLevels=void 0,this.timer=void 0,this.hls=void 0,this.streamController=void 0,this.clientRect=void 0,this.hls=S,this.autoLevelCapping=Number.POSITIVE_INFINITY,this.firstLevel=-1,this.media=null,this.restrictedLevels=[],this.timer=void 0,this.clientRect=null,this.registerListeners()}var _=x.prototype;return _.setStreamController=function(d){this.streamController=d},_.destroy=function(){this.unregisterListener(),this.hls.config.capLevelToPlayerSize&&this.stopCapping(),this.media=null,this.clientRect=null,this.hls=this.streamController=null},_.registerListeners=function(){var d=this.hls;d.on(C.Events.FPS_DROP_LEVEL_CAPPING,this.onFpsDropLevelCapping,this),d.on(C.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),d.on(C.Events.MANIFEST_PARSED,this.onManifestParsed,this),d.on(C.Events.BUFFER_CODECS,this.onBufferCodecs,this),d.on(C.Events.MEDIA_DETACHING,this.onMediaDetaching,this)},_.unregisterListener=function(){var d=this.hls;d.off(C.Events.FPS_DROP_LEVEL_CAPPING,this.onFpsDropLevelCapping,this),d.off(C.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),d.off(C.Events.MANIFEST_PARSED,this.onManifestParsed,this),d.off(C.Events.BUFFER_CODECS,this.onBufferCodecs,this),d.off(C.Events.MEDIA_DETACHING,this.onMediaDetaching,this)},_.onFpsDropLevelCapping=function(d,E){x.isLevelAllowed(E.droppedLevel,this.restrictedLevels)&&this.restrictedLevels.push(E.droppedLevel)},_.onMediaAttaching=function(d,E){this.media=E.media instanceof HTMLVideoElement?E.media:null,this.clientRect=null},_.onManifestParsed=function(d,E){var p=this.hls;this.restrictedLevels=[],this.firstLevel=E.firstLevel,p.config.capLevelToPlayerSize&&E.video&&this.startCapping()},_.onBufferCodecs=function(d,E){var p=this.hls;p.config.capLevelToPlayerSize&&E.video&&this.startCapping()},_.onMediaDetaching=function(){this.stopCapping()},_.detectPlayerSize=function(){if(this.media&&this.mediaHeight>0&&this.mediaWidth>0){var d=this.hls.levels;if(d.length){var E=this.hls;E.autoLevelCapping=this.getMaxLevel(d.length-1),E.autoLevelCapping>this.autoLevelCapping&&this.streamController&&this.streamController.nextLevelSwitch(),this.autoLevelCapping=E.autoLevelCapping}}},_.getMaxLevel=function(d){var E=this,p=this.hls.levels;if(!p.length)return-1;var h=p.filter(function(a,o){return x.isLevelAllowed(o,E.restrictedLevels)&&o<=d});return this.clientRect=null,x.getMaxLevelByMediaSize(h,this.mediaWidth,this.mediaHeight)},_.startCapping=function(){this.timer||(this.autoLevelCapping=Number.POSITIVE_INFINITY,this.hls.firstLevel=this.getMaxLevel(this.firstLevel),self.clearInterval(this.timer),this.timer=self.setInterval(this.detectPlayerSize.bind(this),1e3),this.detectPlayerSize())},_.stopCapping=function(){this.restrictedLevels=[],this.firstLevel=-1,this.autoLevelCapping=Number.POSITIVE_INFINITY,this.timer&&(self.clearInterval(this.timer),this.timer=void 0)},_.getDimensions=function(){if(this.clientRect)return this.clientRect;var d=this.media,E={width:0,height:0};if(d){var p=d.getBoundingClientRect();E.width=p.width,E.height=p.height,!E.width&&!E.height&&(E.width=p.right-p.left||d.width||0,E.height=p.bottom-p.top||d.height||0)}return this.clientRect=E,E},x.isLevelAllowed=function(d,E){return E===void 0&&(E=[]),E.indexOf(d)===-1},x.getMaxLevelByMediaSize=function(d,E,p){if(!d||!d.length)return-1;for(var h=function(l,i){return i?l.width!==i.width||l.height!==i.height:!0},a=d.length-1,o=0;o<d.length;o+=1){var n=d[o];if((n.width>=E||n.height>=p)&&h(n,d[o+1])){a=o;break}}return a},M(x,[{key:"mediaWidth",get:function(){return this.getDimensions().width*this.contentScaleFactor}},{key:"mediaHeight",get:function(){return this.getDimensions().height*this.contentScaleFactor}},{key:"contentScaleFactor",get:function(){var d=1;if(!this.hls.config.ignoreDevicePixelRatio)try{d=self.devicePixelRatio}catch{}return d}}]),x}();let D=A},"./src/controller/cmcd-controller.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>p});var C=T("./src/events.ts"),L=T("./src/types/cmcd.ts"),M=T("./src/utils/buffer-helper.ts"),P=T("./src/utils/logger.ts");function B(h,a){for(var o=0;o<a.length;o++){var n=a[o];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(h,D(n.key),n)}}function A(h,a,o){return a&&B(h.prototype,a),o&&B(h,o),Object.defineProperty(h,"prototype",{writable:!1}),h}function D(h){var a=x(h,"string");return typeof a=="symbol"?a:String(a)}function x(h,a){if(typeof h!="object"||h===null)return h;var o=h[Symbol.toPrimitive];if(o!==void 0){var n=o.call(h,a||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(a==="string"?String:Number)(h)}function _(h,a){var o=typeof Symbol!="undefined"&&h[Symbol.iterator]||h["@@iterator"];if(o)return(o=o.call(h)).next.bind(o);if(Array.isArray(h)||(o=S(h))||a&&h&&typeof h.length=="number"){o&&(h=o);var n=0;return function(){return n>=h.length?{done:!0}:{done:!1,value:h[n++]}}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
13
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function S(h,a){if(!!h){if(typeof h=="string")return d(h,a);var o=Object.prototype.toString.call(h).slice(8,-1);if(o==="Object"&&h.constructor&&(o=h.constructor.name),o==="Map"||o==="Set")return Array.from(h);if(o==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return d(h,a)}}function d(h,a){(a==null||a>h.length)&&(a=h.length);for(var o=0,n=new Array(a);o<a;o++)n[o]=h[o];return n}function E(){return E=Object.assign?Object.assign.bind():function(h){for(var a=1;a<arguments.length;a++){var o=arguments[a];for(var n in o)Object.prototype.hasOwnProperty.call(o,n)&&(h[n]=o[n])}return h},E.apply(this,arguments)}var p=function(){function h(o){var n=this;this.hls=void 0,this.config=void 0,this.media=void 0,this.sid=void 0,this.cid=void 0,this.useHeaders=!1,this.initialized=!1,this.starved=!1,this.buffering=!0,this.audioBuffer=void 0,this.videoBuffer=void 0,this.onWaiting=function(){n.initialized&&(n.starved=!0),n.buffering=!0},this.onPlaying=function(){n.initialized||(n.initialized=!0),n.buffering=!1},this.applyPlaylistData=function(i){try{n.apply(i,{ot:L.CMCDObjectType.MANIFEST,su:!n.initialized})}catch(u){P.logger.warn("Could not generate manifest CMCD data.",u)}},this.applyFragmentData=function(i){try{var u=i.frag,g=n.hls.levels[u.level],c=n.getObjectType(u),m={d:u.duration*1e3,ot:c};(c===L.CMCDObjectType.VIDEO||c===L.CMCDObjectType.AUDIO||c==L.CMCDObjectType.MUXED)&&(m.br=g.bitrate/1e3,m.tb=n.getTopBandwidth(c)/1e3,m.bl=n.getBufferLength(c)),n.apply(i,m)}catch(e){P.logger.warn("Could not generate segment CMCD data.",e)}},this.hls=o;var v=this.config=o.config,l=v.cmcd;l!=null&&(v.pLoader=this.createPlaylistLoader(),v.fLoader=this.createFragmentLoader(),this.sid=l.sessionId||h.uuid(),this.cid=l.contentId,this.useHeaders=l.useHeaders===!0,this.registerListeners())}var a=h.prototype;return a.registerListeners=function(){var n=this.hls;n.on(C.Events.MEDIA_ATTACHED,this.onMediaAttached,this),n.on(C.Events.MEDIA_DETACHED,this.onMediaDetached,this),n.on(C.Events.BUFFER_CREATED,this.onBufferCreated,this)},a.unregisterListeners=function(){var n=this.hls;n.off(C.Events.MEDIA_ATTACHED,this.onMediaAttached,this),n.off(C.Events.MEDIA_DETACHED,this.onMediaDetached,this),n.off(C.Events.BUFFER_CREATED,this.onBufferCreated,this),this.onMediaDetached()},a.destroy=function(){this.unregisterListeners(),this.hls=this.config=this.audioBuffer=this.videoBuffer=null},a.onMediaAttached=function(n,v){this.media=v.media,this.media.addEventListener("waiting",this.onWaiting),this.media.addEventListener("playing",this.onPlaying)},a.onMediaDetached=function(){!this.media||(this.media.removeEventListener("waiting",this.onWaiting),this.media.removeEventListener("playing",this.onPlaying),this.media=null)},a.onBufferCreated=function(n,v){var l,i;this.audioBuffer=(l=v.tracks.audio)===null||l===void 0?void 0:l.buffer,this.videoBuffer=(i=v.tracks.video)===null||i===void 0?void 0:i.buffer},a.createData=function(){var n;return{v:L.CMCDVersion,sf:L.CMCDStreamingFormat.HLS,sid:this.sid,cid:this.cid,pr:(n=this.media)===null||n===void 0?void 0:n.playbackRate,mtp:this.hls.bandwidthEstimate/1e3}},a.apply=function(n,v){v===void 0&&(v={}),E(v,this.createData());var l=v.ot===L.CMCDObjectType.INIT||v.ot===L.CMCDObjectType.VIDEO||v.ot===L.CMCDObjectType.MUXED;if(this.starved&&l&&(v.bs=!0,v.su=!0,this.starved=!1),v.su==null&&(v.su=this.buffering),this.useHeaders){var i=h.toHeaders(v);if(!Object.keys(i).length)return;n.headers||(n.headers={}),E(n.headers,i)}else{var u=h.toQuery(v);if(!u)return;n.url=h.appendQueryToUri(n.url,u)}},a.getObjectType=function(n){var v=n.type;if(v==="subtitle")return L.CMCDObjectType.TIMED_TEXT;if(n.sn==="initSegment")return L.CMCDObjectType.INIT;if(v==="audio")return L.CMCDObjectType.AUDIO;if(v==="main")return this.hls.audioTracks.length?L.CMCDObjectType.VIDEO:L.CMCDObjectType.MUXED},a.getTopBandwidth=function(n){var v=0,l,i=this.hls;if(n===L.CMCDObjectType.AUDIO)l=i.audioTracks;else{var u=i.maxAutoLevel,g=u>-1?u+1:i.levels.length;l=i.levels.slice(0,g)}for(var c=_(l),m;!(m=c()).done;){var e=m.value;e.bitrate>v&&(v=e.bitrate)}return v>0?v:NaN},a.getBufferLength=function(n){var v=this.hls.media,l=n===L.CMCDObjectType.AUDIO?this.audioBuffer:this.videoBuffer;if(!l||!v)return NaN;var i=M.BufferHelper.bufferInfo(l,v.currentTime,this.config.maxBufferHole);return i.len*1e3},a.createPlaylistLoader=function(){var n=this.config.pLoader,v=this.applyPlaylistData,l=n||this.config.loader;return function(){function i(g){this.loader=void 0,this.loader=new l(g)}var u=i.prototype;return u.destroy=function(){this.loader.destroy()},u.abort=function(){this.loader.abort()},u.load=function(c,m,e){v(c),this.loader.load(c,m,e)},A(i,[{key:"stats",get:function(){return this.loader.stats}},{key:"context",get:function(){return this.loader.context}}]),i}()},a.createFragmentLoader=function(){var n=this.config.fLoader,v=this.applyFragmentData,l=n||this.config.loader;return function(){function i(g){this.loader=void 0,this.loader=new l(g)}var u=i.prototype;return u.destroy=function(){this.loader.destroy()},u.abort=function(){this.loader.abort()},u.load=function(c,m,e){v(c),this.loader.load(c,m,e)},A(i,[{key:"stats",get:function(){return this.loader.stats}},{key:"context",get:function(){return this.loader.context}}]),i}()},h.uuid=function(){var n=URL.createObjectURL(new Blob),v=n.toString();return URL.revokeObjectURL(n),v.slice(v.lastIndexOf("/")+1)},h.serialize=function(n){for(var v=[],l=function(I){return!Number.isNaN(I)&&I!=null&&I!==""&&I!==!1},i=function(I){return Math.round(I)},u=function(I){return i(I/100)*100},g=function(I){return encodeURIComponent(I)},c={br:i,d:i,bl:u,dl:u,mtp:u,nor:g,rtp:u,tb:i},m=Object.keys(n||{}).sort(),e=_(m),r;!(r=e()).done;){var t=r.value,s=n[t];if(!!l(s)&&!(t==="v"&&s===1)&&!(t=="pr"&&s===1)){var y=c[t];y&&(s=y(s));var f=typeof s,b=void 0;t==="ot"||t==="sf"||t==="st"?b=t+"="+s:f==="boolean"?b=t:f==="number"?b=t+"="+s:b=t+"="+JSON.stringify(s),v.push(b)}}return v.join(",")},h.toHeaders=function(n){for(var v=Object.keys(n),l={},i=["Object","Request","Session","Status"],u=[{},{},{},{}],g={br:0,d:0,ot:0,tb:0,bl:1,dl:1,mtp:1,nor:1,nrr:1,su:1,cid:2,pr:2,sf:2,sid:2,st:2,v:2,bs:3,rtp:3},c=0,m=v;c<m.length;c++){var e=m[c],r=g[e]!=null?g[e]:1;u[r][e]=n[e]}for(var t=0;t<u.length;t++){var s=h.serialize(u[t]);s&&(l["CMCD-"+i[t]]=s)}return l},h.toQuery=function(n){return"CMCD="+encodeURIComponent(h.serialize(n))},h.appendQueryToUri=function(n,v){if(!v)return n;var l=n.includes("?")?"&":"?";return""+n+l+v},h}()},"./src/controller/eme-controller.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>c});var C=T("./src/events.ts"),L=T("./src/errors.ts"),M=T("./src/utils/logger.ts"),P=T("./src/utils/mediakeys-helper.ts"),B=T("./src/utils/keysystem-util.ts"),A=T("./src/utils/numeric-encoding-utils.ts"),D=T("./src/loader/level-key.ts"),x=T("./src/utils/hex.ts"),_=T("./src/utils/mp4-tools.ts"),S=T("./node_modules/eventemitter3/index.js"),d=T.n(S);function E(m,e){m.prototype=Object.create(e.prototype),m.prototype.constructor=m,n(m,e)}function p(m){var e=typeof Map=="function"?new Map:void 0;return p=function(t){if(t===null||!o(t))return t;if(typeof t!="function")throw new TypeError("Super expression must either be null or a function");if(typeof e!="undefined"){if(e.has(t))return e.get(t);e.set(t,s)}function s(){return h(t,arguments,v(this).constructor)}return s.prototype=Object.create(t.prototype,{constructor:{value:s,enumerable:!1,writable:!0,configurable:!0}}),n(s,t)},p(m)}function h(m,e,r){return a()?h=Reflect.construct.bind():h=function(s,y,f){var b=[null];b.push.apply(b,y);var R=Function.bind.apply(s,b),I=new R;return f&&n(I,f.prototype),I},h.apply(null,arguments)}function a(){if(typeof Reflect=="undefined"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function o(m){return Function.toString.call(m).indexOf("[native code]")!==-1}function n(m,e){return n=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,s){return t.__proto__=s,t},n(m,e)}function v(m){return v=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(r){return r.__proto__||Object.getPrototypeOf(r)},v(m)}var l=3,i="[eme]",u=function(){function m(r){this.hls=void 0,this.config=void 0,this.media=null,this.keyFormatPromise=null,this.keySystemAccessPromises={},this._requestLicenseFailureCount=0,this.mediaKeySessions=[],this.keyIdToKeySessionPromise={},this.setMediaKeysQueue=m.CDMCleanupPromise?[m.CDMCleanupPromise]:[],this.onMediaEncrypted=this._onMediaEncrypted.bind(this),this.onWaitingForKey=this._onWaitingForKey.bind(this),this.debug=M.logger.debug.bind(M.logger,i),this.log=M.logger.log.bind(M.logger,i),this.warn=M.logger.warn.bind(M.logger,i),this.error=M.logger.error.bind(M.logger,i),this.hls=r,this.config=r.config,this.registerListeners()}var e=m.prototype;return e.destroy=function(){this.unregisterListeners(),this.onMediaDetached(),this.hls=this.onMediaEncrypted=this.onWaitingForKey=this.keyIdToKeySessionPromise=null},e.registerListeners=function(){this.hls.on(C.Events.MEDIA_ATTACHED,this.onMediaAttached,this),this.hls.on(C.Events.MEDIA_DETACHED,this.onMediaDetached,this),this.hls.on(C.Events.MANIFEST_LOADED,this.onManifestLoaded,this)},e.unregisterListeners=function(){this.hls.off(C.Events.MEDIA_ATTACHED,this.onMediaAttached,this),this.hls.off(C.Events.MEDIA_DETACHED,this.onMediaDetached,this),this.hls.off(C.Events.MANIFEST_LOADED,this.onManifestLoaded,this)},e.getLicenseServerUrl=function(t){var s=this.config,y=s.drmSystems,f=s.widevineLicenseUrl,b=y[t];if(b)return b.licenseUrl;if(t===P.KeySystems.WIDEVINE&&f)return f;throw new Error('no license server URL configured for key-system "'+t+'"')},e.getServerCertificateUrl=function(t){var s=this.config.drmSystems,y=s[t];if(y)return y.serverCertificateUrl;this.log('No Server Certificate in config.drmSystems["'+t+'"]')},e.attemptKeySystemAccess=function(t){var s=this,y=this.hls.levels,f=function(k,F,K){return!!k&&K.indexOf(k)===F},b=y.map(function(I){return I.audioCodec}).filter(f),R=y.map(function(I){return I.videoCodec}).filter(f);return b.length+R.length===0&&R.push("avc1.42e01e"),new Promise(function(I,k){var F=function K(H){var j=H.shift();s.getMediaKeysPromise(j,b,R).then(function(Y){return I({keySystem:j,mediaKeys:Y})}).catch(function(Y){H.length?K(H):Y instanceof g?k(Y):k(new g({type:L.ErrorTypes.KEY_SYSTEM_ERROR,details:L.ErrorDetails.KEY_SYSTEM_NO_ACCESS,error:Y,fatal:!0},Y.message))})};F(t)})},e.requestMediaKeySystemAccess=function(t,s){var y=this.config.requestMediaKeySystemAccessFunc;if(typeof y!="function"){var f="Configured requestMediaKeySystemAccess is not a function "+y;return P.requestMediaKeySystemAccess===null&&self.location.protocol==="http:"&&(f="navigator.requestMediaKeySystemAccess is not available over insecure protocol "+location.protocol),Promise.reject(new Error(f))}return y(t,s)},e.getMediaKeysPromise=function(t,s,y){var f=this,b=(0,P.getSupportedMediaKeySystemConfigurations)(t,s,y,this.config.drmSystemOptions),R=this.keySystemAccessPromises[t],I=R==null?void 0:R.keySystemAccess;if(!I){this.log('Requesting encrypted media "'+t+'" key-system access with config: '+JSON.stringify(b)),I=this.requestMediaKeySystemAccess(t,b);var k=this.keySystemAccessPromises[t]={keySystemAccess:I};return I.catch(function(F){f.log('Failed to obtain access to key-system "'+t+'": '+F)}),I.then(function(F){f.log('Access for key-system "'+F.keySystem+'" obtained');var K=f.fetchServerCertificate(t);return f.log('Create media-keys for "'+t+'"'),k.mediaKeys=F.createMediaKeys().then(function(H){return f.log('Media-keys created for "'+t+'"'),K.then(function(j){return j?f.setMediaKeysServerCertificate(H,t,j):H})}),k.mediaKeys.catch(function(H){f.error('Failed to create media-keys for "'+t+'"}: '+H)}),k.mediaKeys})}return I.then(function(){return R.mediaKeys})},e.createMediaKeySessionContext=function(t){var s=t.decryptdata,y=t.keySystem,f=t.mediaKeys;console.assert(!!f,"mediaKeys is defined"),this.log('Creating key-system session "'+y+'" keyId: '+x.default.hexDump(s.keyId||[]));var b=f.createSession(),R={decryptdata:s,keySystem:y,mediaKeys:f,mediaKeysSession:b,keyStatus:"status-pending"};return this.mediaKeySessions.push(R),R},e.renewKeySession=function(t){var s=t.decryptdata;if(s.pssh){var y=this.createMediaKeySessionContext(t),f=this.getKeyIdString(s),b="cenc";this.keyIdToKeySessionPromise[f]=this.generateRequestWithPreferredKeySession(y,b,s.pssh,"expired")}else this.warn("Could not renew expired session. Missing pssh initData.");this.removeSession(t)},e.getKeyIdString=function(t){if(!t)throw new Error("Could not read keyId of undefined decryptdata");if(t.keyId===null)throw new Error("keyId is null");return x.default.hexDump(t.keyId)},e.updateKeySession=function(t,s){var y,f=t.mediaKeysSession;return this.log('Updating key-session "'+f.sessionId+'" for keyID '+x.default.hexDump(((y=t.decryptdata)===null||y===void 0?void 0:y.keyId)||[])+`
|
|
14
|
-
} (data length: `+(s&&s.byteLength)+")"),f.update(s)},e.selectKeySystemFormat=function(t){var s=Object.keys(t.levelkeys||{});return this.keyFormatPromise||(this.log("Selecting key-system from fragment (sn: "+t.sn+" "+t.type+": "+t.level+") key formats "+s.join(", ")),this.keyFormatPromise=this.getKeyFormatPromise(s)),this.keyFormatPromise},e.getKeyFormatPromise=function(t){var s=this;return new Promise(function(y,f){var b=(0,P.getKeySystemsForConfig)(s.config),R=t.map(P.keySystemFormatToKeySystemDomain).filter(function(I){return!!I&&b.indexOf(I)!==-1});return s.getKeySystemSelectionPromise(R).then(function(I){var k=I.keySystem,F=(0,P.keySystemDomainToKeySystemFormat)(k);F?y(F):f(new Error('Unable to find format for key-system "'+k+'"'))}).catch(f)})},e.loadKey=function(t){var s=this,y=t.keyInfo.decryptdata,f=this.getKeyIdString(y),b="(keyId: "+f+' format: "'+y.keyFormat+'" method: '+y.method+" uri: "+y.uri+")";this.log("Starting session for key "+b);var R=this.keyIdToKeySessionPromise[f];return R||(R=this.keyIdToKeySessionPromise[f]=this.getKeySystemForKeyPromise(y).then(function(I){var k=I.keySystem,F=I.mediaKeys;return s.throwIfDestroyed(),s.log("Handle encrypted media sn: "+t.frag.sn+" "+t.frag.type+": "+t.frag.level+" using key "+b),s.attemptSetMediaKeys(k,F).then(function(){s.throwIfDestroyed();var K=s.createMediaKeySessionContext({keySystem:k,mediaKeys:F,decryptdata:y}),H="cenc";return s.generateRequestWithPreferredKeySession(K,H,y.pssh,"playlist-key")})}),R.catch(function(I){return s.handleError(I)})),R},e.throwIfDestroyed=function(t){if(t===void 0&&(t="Invalid state"),!this.hls)throw new Error("invalid state")},e.handleError=function(t){!this.hls||(this.error(t.message),t instanceof g?this.hls.trigger(C.Events.ERROR,t.data):this.hls.trigger(C.Events.ERROR,{type:L.ErrorTypes.KEY_SYSTEM_ERROR,details:L.ErrorDetails.KEY_SYSTEM_NO_KEYS,error:t,fatal:!0}))},e.getKeySystemForKeyPromise=function(t){var s=this.getKeyIdString(t),y=this.keyIdToKeySessionPromise[s];if(!y){var f=(0,P.keySystemFormatToKeySystemDomain)(t.keyFormat),b=f?[f]:(0,P.getKeySystemsForConfig)(this.config);return this.attemptKeySystemAccess(b)}return y},e.getKeySystemSelectionPromise=function(t){if(t.length||(t=(0,P.getKeySystemsForConfig)(this.config)),t.length===0)throw new g({type:L.ErrorTypes.KEY_SYSTEM_ERROR,details:L.ErrorDetails.KEY_SYSTEM_NO_CONFIGURED_LICENSE,fatal:!0},"Missing key-system license configuration options "+JSON.stringify({drmSystems:this.config.drmSystems}));return this.attemptKeySystemAccess(t)},e._onMediaEncrypted=function(t){var s=this,y=t.initDataType,f=t.initData;if(this.debug('"'+t.type+'" event: init data type: "'+y+'"'),f!==null){var b,R;if(y==="sinf"&&this.config.drmSystems[P.KeySystems.FAIRPLAY]){var I=(0,_.bin2str)(new Uint8Array(f));try{var k=(0,A.base64Decode)(JSON.parse(I).sinf),F=(0,_.parseSinf)(new Uint8Array(k));if(!F)return;b=F.subarray(8,24),R=P.KeySystems.FAIRPLAY}catch{this.warn('Failed to parse sinf "encrypted" event message initData');return}}else{var K=(0,_.parsePssh)(f);if(K===null)return;K.version===0&&K.systemId===P.KeySystemIds.WIDEVINE&&K.data&&(b=K.data.subarray(8,24)),R=(0,P.keySystemIdToKeySystemDomain)(K.systemId)}if(!(!R||!b)){for(var H=x.default.hexDump(b),j=this.keyIdToKeySessionPromise,Y=this.mediaKeySessions,Q=j[H],q=function(ue){var ce=Y[ue],le=ce.decryptdata;if(le.pssh||!le.keyId)return"continue";var fe=x.default.hexDump(le.keyId);if(H===fe||le.uri.replace(/-/g,"").indexOf(H)!==-1)return Q=j[fe],delete j[fe],le.pssh=new Uint8Array(f),le.keyId=b,Q=j[H]=Q.then(function(){return s.generateRequestWithPreferredKeySession(ce,y,f,"encrypted-event-key-match")}),"break"},ne=0;ne<Y.length;ne++){var te=q(ne);if(te!=="continue"&&te==="break")break}Q||(Q=j[H]=this.getKeySystemSelectionPromise([R]).then(function(ae){var ue,ce=ae.keySystem,le=ae.mediaKeys;s.throwIfDestroyed();var fe=new D.LevelKey("ISO-23001-7",H,(ue=(0,P.keySystemDomainToKeySystemFormat)(ce))!=null?ue:"");return fe.pssh=new Uint8Array(f),fe.keyId=b,s.attemptSetMediaKeys(ce,le).then(function(){s.throwIfDestroyed();var de=s.createMediaKeySessionContext({decryptdata:fe,keySystem:ce,mediaKeys:le});return s.generateRequestWithPreferredKeySession(de,y,f,"encrypted-event-no-match")})})),Q.catch(function(ae){return s.handleError(ae)})}}},e._onWaitingForKey=function(t){this.log('"'+t.type+'" event')},e.attemptSetMediaKeys=function(t,s){var y=this,f=this.setMediaKeysQueue.slice();this.log('Setting media-keys for "'+t+'"');var b=Promise.all(f).then(function(){if(!y.media)throw new Error("Attempted to set mediaKeys without media element attached");return y.media.setMediaKeys(s)});return this.setMediaKeysQueue.push(b),b.then(function(){y.log('Media-keys set for "'+t+'"'),f.push(b),y.setMediaKeysQueue=y.setMediaKeysQueue.filter(function(R){return f.indexOf(R)===-1})})},e.generateRequestWithPreferredKeySession=function(t,s,y,f){var b,R,I=this,k=(b=this.config.drmSystems)===null||b===void 0||(R=b[t.keySystem])===null||R===void 0?void 0:R.generateRequest;if(k)try{var F=k.call(this.hls,s,y,t);if(!F)throw new Error("Invalid response from configured generateRequest filter");s=F.initDataType,y=t.decryptdata.pssh=F.initData?new Uint8Array(F.initData):null}catch(Q){var K;if(this.warn(Q.message),(K=this.hls)!==null&&K!==void 0&&K.config.debug)throw Q}if(y===null)return this.log('Skipping key-session request for "'+f+'" (no initData)'),Promise.resolve(t);var H=this.getKeyIdString(t.decryptdata);this.log('Generating key-session request for "'+f+'": '+H+" (init data type: "+s+" length: "+(y?y.byteLength:null)+")");var j=new(d());t.mediaKeysSession.onmessage=function(Q){var q=t.mediaKeysSession;if(!q){j.emit("error",new Error("invalid state"));return}var ne=Q.messageType,te=Q.message;I.log('"'+ne+'" message event for session "'+q.sessionId+'" message size: '+te.byteLength),ne==="license-request"||ne==="license-renewal"?I.renewLicense(t,te).catch(function(ae){I.handleError(ae),j.emit("error",ae)}):ne==="license-release"?t.keySystem===P.KeySystems.FAIRPLAY&&(I.updateKeySession(t,(0,B.strToUtf8array)("acknowledged")),I.removeSession(t)):I.warn('unhandled media key message type "'+ne+'"')},t.mediaKeysSession.onkeystatuseschange=function(Q){var q=t.mediaKeysSession;if(!q){j.emit("error",new Error("invalid state"));return}I.onKeyStatusChange(t);var ne=t.keyStatus;j.emit("keyStatus",ne),ne==="expired"&&(I.warn(t.keySystem+" expired for key "+H),I.renewKeySession(t))};var Y=new Promise(function(Q,q){j.on("error",q),j.on("keyStatus",function(ne){ne.startsWith("usable")?Q():ne==="output-restricted"?q(new g({type:L.ErrorTypes.KEY_SYSTEM_ERROR,details:L.ErrorDetails.KEY_SYSTEM_STATUS_OUTPUT_RESTRICTED,fatal:!1},"HDCP level output restricted")):ne==="internal-error"?q(new g({type:L.ErrorTypes.KEY_SYSTEM_ERROR,details:L.ErrorDetails.KEY_SYSTEM_STATUS_INTERNAL_ERROR,fatal:!0},'key status changed to "'+ne+'"')):ne==="expired"?q(new Error("key expired while generating request")):I.warn('unhandled key status change "'+ne+'"')})});return t.mediaKeysSession.generateRequest(s,y).then(function(){var Q;I.log('Request generated for key-session "'+((Q=t.mediaKeysSession)===null||Q===void 0?void 0:Q.sessionId)+'" keyId: '+H)}).catch(function(Q){throw new g({type:L.ErrorTypes.KEY_SYSTEM_ERROR,details:L.ErrorDetails.KEY_SYSTEM_NO_SESSION,error:Q,fatal:!1},"Error generating key-session request: "+Q)}).then(function(){return Y}).catch(function(Q){throw j.removeAllListeners(),I.removeSession(t),Q}).then(function(){return j.removeAllListeners(),t})},e.onKeyStatusChange=function(t){var s=this;t.mediaKeysSession.keyStatuses.forEach(function(y,f){s.log('key status change "'+y+'" for keyStatuses keyId: '+x.default.hexDump("buffer"in f?new Uint8Array(f.buffer,f.byteOffset,f.byteLength):new Uint8Array(f))+" session keyId: "+x.default.hexDump(new Uint8Array(t.decryptdata.keyId||[]))+" uri: "+t.decryptdata.uri),t.keyStatus=y})},e.fetchServerCertificate=function(t){var s=this;return new Promise(function(y,f){var b=s.getServerCertificateUrl(t);if(!b)return y();s.log('Fetching serverCertificate for "'+t+'"');var R=new XMLHttpRequest;R.open("GET",b,!0),R.responseType="arraybuffer",R.onreadystatechange=function(){R.readyState===XMLHttpRequest.DONE&&(R.status===200?y(R.response):f(new g({type:L.ErrorTypes.KEY_SYSTEM_ERROR,details:L.ErrorDetails.KEY_SYSTEM_SERVER_CERTIFICATE_REQUEST_FAILED,fatal:!0,networkDetails:R},'"'+t+'" certificate request XHR failed ('+b+"). Status: "+R.status+" ("+R.statusText+")")))},R.send()})},e.setMediaKeysServerCertificate=function(t,s,y){var f=this;return new Promise(function(b,R){t.setServerCertificate(y).then(function(I){f.log("setServerCertificate "+(I?"success":"not supported by CDM")+" ("+(y==null?void 0:y.byteLength)+') on "'+s+'"'),b(t)}).catch(function(I){R(new g({type:L.ErrorTypes.KEY_SYSTEM_ERROR,details:L.ErrorDetails.KEY_SYSTEM_SERVER_CERTIFICATE_UPDATE_FAILED,error:I,fatal:!0},I.message))})})},e.renewLicense=function(t,s){var y=this;return this.requestLicense(t,new Uint8Array(s)).then(function(f){return y.updateKeySession(t,new Uint8Array(f)).catch(function(b){throw new g({type:L.ErrorTypes.KEY_SYSTEM_ERROR,details:L.ErrorDetails.KEY_SYSTEM_SESSION_UPDATE_FAILED,error:b,fatal:!0},b.message)})})},e.setupLicenseXHR=function(t,s,y,f){var b=this,R=this.config.licenseXhrSetup;return R?Promise.resolve().then(function(){if(!y.decryptdata)throw new Error("Key removed");return R.call(b.hls,t,s,y,f)}).catch(function(I){if(!y.decryptdata)throw I;return t.open("POST",s,!0),R.call(b.hls,t,s,y,f)}).then(function(I){t.readyState||t.open("POST",s,!0);var k=I||f;return{xhr:t,licenseChallenge:k}}):(t.open("POST",s,!0),Promise.resolve({xhr:t,licenseChallenge:f}))},e.requestLicense=function(t,s){var y=this;return new Promise(function(f,b){var R=y.getLicenseServerUrl(t.keySystem);y.log("Sending license request to URL: "+R);var I=new XMLHttpRequest;I.responseType="arraybuffer",I.onreadystatechange=function(){if(!y.hls||!t.mediaKeysSession)return b(new Error("invalid state"));if(I.readyState===4)if(I.status===200){y._requestLicenseFailureCount=0;var k=I.response;y.log("License received "+(k instanceof ArrayBuffer?k.byteLength:k));var F=y.config.licenseResponseCallback;if(F)try{k=F.call(y.hls,I,R,t)}catch(H){y.error(H)}f(k)}else if(y._requestLicenseFailureCount++,y._requestLicenseFailureCount>l||I.status>=400&&I.status<500)b(new g({type:L.ErrorTypes.KEY_SYSTEM_ERROR,details:L.ErrorDetails.KEY_SYSTEM_LICENSE_REQUEST_FAILED,fatal:!0,networkDetails:I},"License Request XHR failed ("+R+"). Status: "+I.status+" ("+I.statusText+")"));else{var K=l-y._requestLicenseFailureCount+1;y.warn("Retrying license request, "+K+" attempts left"),y.requestLicense(t,s).then(f,b)}},t.licenseXhr&&t.licenseXhr.readyState!==XMLHttpRequest.DONE&&t.licenseXhr.abort(),t.licenseXhr=I,y.setupLicenseXHR(I,R,t,s).then(function(k){var F=k.xhr,K=k.licenseChallenge;F.send(K)})})},e.onMediaAttached=function(t,s){if(!!this.config.emeEnabled){var y=s.media;this.media=y,y.addEventListener("encrypted",this.onMediaEncrypted),y.addEventListener("waitingforkey",this.onWaitingForKey)}},e.onMediaDetached=function(){var t=this,s=this.media,y=this.mediaKeySessions;s&&(s.removeEventListener("encrypted",this.onMediaEncrypted),s.removeEventListener("waitingforkey",this.onWaitingForKey),this.media=null),this._requestLicenseFailureCount=0,this.setMediaKeysQueue=[],this.mediaKeySessions=[],this.keyIdToKeySessionPromise={},D.LevelKey.clearKeyUriToKeyIdMap();var f=y.length;m.CDMCleanupPromise=Promise.all(y.map(function(b){return t.removeSession(b)}).concat(s==null?void 0:s.setMediaKeys(null).catch(function(b){t.log("Could not clear media keys: "+b+". media.src: "+(s==null?void 0:s.src))}))).then(function(){f&&(t.log("finished closing key sessions and clearing media keys"),y.length=0)}).catch(function(b){t.log("Could not close sessions and clear media keys: "+b+". media.src: "+(s==null?void 0:s.src))})},e.onManifestLoaded=function(t,s){var y=s.sessionKeys;if(!(!y||!this.config.emeEnabled)&&!this.keyFormatPromise){var f=y.reduce(function(b,R){return b.indexOf(R.keyFormat)===-1&&b.push(R.keyFormat),b},[]);this.log("Selecting key-system from session-keys "+f.join(", ")),this.keyFormatPromise=this.getKeyFormatPromise(f)}},e.removeSession=function(t){var s=this,y=t.mediaKeysSession,f=t.licenseXhr;if(y){this.log("Remove licenses and keys and close session "+y.sessionId),y.onmessage=null,y.onkeystatuseschange=null,f&&f.readyState!==XMLHttpRequest.DONE&&f.abort(),t.mediaKeysSession=t.decryptdata=t.licenseXhr=void 0;var b=this.mediaKeySessions.indexOf(t);return b>-1&&this.mediaKeySessions.splice(b,1),y.remove().catch(function(R){s.log("Could not remove session: "+R)}).then(function(){return y.close()}).catch(function(R){s.log("Could not close session: "+R)})}},m}();u.CDMCleanupPromise=void 0;var g=function(m){E(e,m);function e(r,t){var s;return s=m.call(this,t)||this,s.data=void 0,s.data=r,r.err=r.error,s}return e}(p(Error));let c=u},"./src/controller/fps-controller.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>P});var C=T("./src/events.ts"),L=T("./src/utils/logger.ts"),M=function(){function B(D){this.hls=void 0,this.isVideoPlaybackQualityAvailable=!1,this.timer=void 0,this.media=null,this.lastTime=void 0,this.lastDroppedFrames=0,this.lastDecodedFrames=0,this.streamController=void 0,this.hls=D,this.registerListeners()}var A=B.prototype;return A.setStreamController=function(x){this.streamController=x},A.registerListeners=function(){this.hls.on(C.Events.MEDIA_ATTACHING,this.onMediaAttaching,this)},A.unregisterListeners=function(){this.hls.off(C.Events.MEDIA_ATTACHING,this.onMediaAttaching)},A.destroy=function(){this.timer&&clearInterval(this.timer),this.unregisterListeners(),this.isVideoPlaybackQualityAvailable=!1,this.media=null},A.onMediaAttaching=function(x,_){var S=this.hls.config;if(S.capLevelOnFPSDrop){var d=_.media instanceof self.HTMLVideoElement?_.media:null;this.media=d,d&&typeof d.getVideoPlaybackQuality=="function"&&(this.isVideoPlaybackQualityAvailable=!0),self.clearInterval(this.timer),this.timer=self.setInterval(this.checkFPSInterval.bind(this),S.fpsDroppedMonitoringPeriod)}},A.checkFPS=function(x,_,S){var d=performance.now();if(_){if(this.lastTime){var E=d-this.lastTime,p=S-this.lastDroppedFrames,h=_-this.lastDecodedFrames,a=1e3*p/E,o=this.hls;if(o.trigger(C.Events.FPS_DROP,{currentDropped:p,currentDecoded:h,totalDroppedFrames:S}),a>0&&p>o.config.fpsDroppedMonitoringThreshold*h){var n=o.currentLevel;L.logger.warn("drop FPS ratio greater than max allowed value for currentLevel: "+n),n>0&&(o.autoLevelCapping===-1||o.autoLevelCapping>=n)&&(n=n-1,o.trigger(C.Events.FPS_DROP_LEVEL_CAPPING,{level:n,droppedLevel:o.currentLevel}),o.autoLevelCapping=n,this.streamController.nextLevelSwitch())}}this.lastTime=d,this.lastDroppedFrames=S,this.lastDecodedFrames=_}},A.checkFPSInterval=function(){var x=this.media;if(x)if(this.isVideoPlaybackQualityAvailable){var _=x.getVideoPlaybackQuality();this.checkFPS(x,_.totalVideoFrames,_.droppedVideoFrames)}else this.checkFPS(x,x.webkitDecodedFrameCount,x.webkitDroppedFrameCount)},B}();let P=M},"./src/controller/fragment-finders.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{findFragWithCC:()=>D,findFragmentByPDT:()=>M,findFragmentByPTS:()=>P,fragmentWithinToleranceTest:()=>B,pdtWithinToleranceTest:()=>A});var C=T("./src/polyfills/number.ts"),L=T("./src/utils/binary-search.ts");function M(x,_,S){if(_===null||!Array.isArray(x)||!x.length||!(0,C.isFiniteNumber)(_))return null;var d=x[0].programDateTime;if(_<(d||0))return null;var E=x[x.length-1].endProgramDateTime;if(_>=(E||0))return null;S=S||0;for(var p=0;p<x.length;++p){var h=x[p];if(A(_,S,h))return h}return null}function P(x,_,S,d){S===void 0&&(S=0),d===void 0&&(d=0);var E=null;if(x?E=_[x.sn-_[0].sn+1]||null:S===0&&_[0].start===0&&(E=_[0]),E&&B(S,d,E)===0)return E;var p=L.default.search(_,B.bind(null,S,d));return p&&(p!==x||!E)?p:E}function B(x,_,S){if(x===void 0&&(x=0),_===void 0&&(_=0),S.start<=x&&S.start+S.duration>x)return 0;var d=Math.min(_,S.duration+(S.deltaPTS?S.deltaPTS:0));return S.start+S.duration-d<=x?1:S.start-d>x&&S.start?-1:0}function A(x,_,S){var d=Math.min(_,S.duration+(S.deltaPTS?S.deltaPTS:0))*1e3,E=S.endProgramDateTime||0;return E-d>x}function D(x,_){return L.default.search(x,function(S){return S.cc<_?1:S.cc>_?-1:0})}},"./src/controller/fragment-tracker.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{FragmentState:()=>M,FragmentTracker:()=>P});var C=T("./src/events.ts"),L=T("./src/types/loader.ts"),M;(function(D){D.NOT_LOADED="NOT_LOADED",D.APPENDING="APPENDING",D.PARTIAL="PARTIAL",D.OK="OK"})(M||(M={}));var P=function(){function D(_){this.activeFragment=null,this.activeParts=null,this.endListFragments=Object.create(null),this.fragments=Object.create(null),this.timeRanges=Object.create(null),this.bufferPadding=.2,this.hls=void 0,this.hls=_,this._registerListeners()}var x=D.prototype;return x._registerListeners=function(){var S=this.hls;S.on(C.Events.BUFFER_APPENDED,this.onBufferAppended,this),S.on(C.Events.FRAG_BUFFERED,this.onFragBuffered,this),S.on(C.Events.FRAG_LOADED,this.onFragLoaded,this)},x._unregisterListeners=function(){var S=this.hls;S.off(C.Events.BUFFER_APPENDED,this.onBufferAppended,this),S.off(C.Events.FRAG_BUFFERED,this.onFragBuffered,this),S.off(C.Events.FRAG_LOADED,this.onFragLoaded,this)},x.destroy=function(){this._unregisterListeners(),this.fragments=this.endListFragments=this.timeRanges=this.activeFragment=this.activeParts=null},x.getAppendedFrag=function(S,d){if(d===L.PlaylistLevelType.MAIN){var E=this.activeFragment,p=this.activeParts;if(!E)return null;if(p)for(var h=p.length;h--;){var a=p[h],o=a?a.end:E.appendedPTS;if(a.start<=S&&o!==void 0&&S<=o)return h>9&&(this.activeParts=p.slice(h-9)),a}else if(E.start<=S&&E.appendedPTS!==void 0&&S<=E.appendedPTS)return E}return this.getBufferedFrag(S,d)},x.getBufferedFrag=function(S,d){for(var E=this.fragments,p=Object.keys(E),h=p.length;h--;){var a=E[p[h]];if((a==null?void 0:a.body.type)===d&&a.buffered){var o=a.body;if(o.start<=S&&S<=o.end)return o}}return null},x.detectEvictedFragments=function(S,d,E){var p=this;this.timeRanges&&(this.timeRanges[S]=d),Object.keys(this.fragments).forEach(function(h){var a=p.fragments[h];if(!!a){if(!a.buffered&&!a.loaded){a.body.type===E&&p.removeFragment(a.body);return}var o=a.range[S];!o||o.time.some(function(n){var v=!p.isTimeBuffered(n.startPTS,n.endPTS,d);return v&&p.removeFragment(a.body),v})}})},x.detectPartialFragments=function(S){var d=this,E=this.timeRanges,p=S.frag,h=S.part;if(!(!E||p.sn==="initSegment")){var a=A(p),o=this.fragments[a];!o||(Object.keys(E).forEach(function(n){var v=p.elementaryStreams[n];if(!!v){var l=E[n],i=h!==null||v.partial===!0;o.range[n]=d.getBufferedTimes(p,h,i,l)}}),o.loaded=null,Object.keys(o.range).length?(o.buffered=!0,o.body.endList&&(this.endListFragments[o.body.type]=o)):this.removeFragment(o.body))}},x.fragBuffered=function(S){var d=A(S),E=this.fragments[d];E&&(E.loaded=null,E.buffered=!0)},x.getBufferedTimes=function(S,d,E,p){for(var h={time:[],partial:E},a=d?d.start:S.start,o=d?d.end:S.end,n=S.minEndPTS||o,v=S.maxStartPTS||a,l=0;l<p.length;l++){var i=p.start(l)-this.bufferPadding,u=p.end(l)+this.bufferPadding;if(v>=i&&n<=u){h.time.push({startPTS:Math.max(a,p.start(l)),endPTS:Math.min(o,p.end(l))});break}else if(a<u&&o>i)h.partial=!0,h.time.push({startPTS:Math.max(a,p.start(l)),endPTS:Math.min(o,p.end(l))});else if(o<=i)break}return h},x.getPartialFragment=function(S){var d=null,E,p,h,a=0,o=this.bufferPadding,n=this.fragments;return Object.keys(n).forEach(function(v){var l=n[v];!l||B(l)&&(p=l.body.start-o,h=l.body.end+o,S>=p&&S<=h&&(E=Math.min(S-p,h-S),a<=E&&(d=l.body,a=E)))}),d},x.isEndListAppended=function(S){var d=this.endListFragments[S];return d!==void 0&&(d.buffered||B(d))},x.getState=function(S){var d=A(S),E=this.fragments[d];return E?E.buffered?B(E)?M.PARTIAL:M.OK:M.APPENDING:M.NOT_LOADED},x.isTimeBuffered=function(S,d,E){for(var p,h,a=0;a<E.length;a++){if(p=E.start(a)-this.bufferPadding,h=E.end(a)+this.bufferPadding,S>=p&&d<=h)return!0;if(d<=p)return!1}return!1},x.onFragLoaded=function(S,d){var E=d.frag,p=d.part;if(!(E.sn==="initSegment"||E.bitrateTest||p)){var h=A(E);this.fragments[h]={body:E,loaded:d,buffered:!1,range:Object.create(null)}}},x.onBufferAppended=function(S,d){var E=this,p=d.frag,h=d.part,a=d.timeRanges;if(p.type===L.PlaylistLevelType.MAIN)if(this.activeFragment!==p&&(this.activeFragment=p,p.appendedPTS=void 0),h){var o=this.activeParts;o||(this.activeParts=o=[]),o.push(h)}else this.activeParts=null;this.timeRanges=a,Object.keys(a).forEach(function(n){var v=a[n];if(E.detectEvictedFragments(n,v),!h&&p.type===L.PlaylistLevelType.MAIN){var l=p.elementaryStreams[n];if(!l)return;for(var i=0;i<v.length;i++){var u=v.end(i);u<=l.endPTS&&u>l.startPTS?p.appendedPTS=Math.max(u,p.appendedPTS||0):p.appendedPTS=l.endPTS}}})},x.onFragBuffered=function(S,d){this.detectPartialFragments(d)},x.hasFragment=function(S){var d=A(S);return!!this.fragments[d]},x.removeFragmentsInRange=function(S,d,E){var p=this;Object.keys(this.fragments).forEach(function(h){var a=p.fragments[h];if(!!a&&a.buffered){var o=a.body;o.type===E&&o.start<d&&o.end>S&&p.removeFragment(o)}})},x.removeFragment=function(S){var d=A(S);S.stats.loaded=0,S.clearElementaryStreamInfo(),S.appendedPTS=void 0,delete this.fragments[d],S.endList&&delete this.endListFragments[S.type]},x.removeAllFragments=function(){this.fragments=Object.create(null),this.endListFragments=Object.create(null),this.activeFragment=null,this.activeParts=null},D}();function B(D){var x,_;return D.buffered&&(((x=D.range.video)===null||x===void 0?void 0:x.partial)||((_=D.range.audio)===null||_===void 0?void 0:_.partial))}function A(D){return D.type+"_"+D.level+"_"+D.urlId+"_"+D.sn}},"./src/controller/gap-controller.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{MAX_START_GAP_JUMP:()=>A,SKIP_BUFFER_HOLE_STEP_SECONDS:()=>D,SKIP_BUFFER_RANGE_START:()=>x,STALL_MINIMUM_DURATION_MS:()=>B,default:()=>_});var C=T("./src/utils/buffer-helper.ts"),L=T("./src/errors.ts"),M=T("./src/events.ts"),P=T("./src/utils/logger.ts"),B=250,A=2,D=.1,x=.05,_=function(){function S(E,p,h,a){this.config=void 0,this.media=null,this.fragmentTracker=void 0,this.hls=void 0,this.nudgeRetry=0,this.stallReported=!1,this.stalled=null,this.moved=!1,this.seeking=!1,this.config=E,this.media=p,this.fragmentTracker=h,this.hls=a}var d=S.prototype;return d.destroy=function(){this.media=null,this.hls=this.fragmentTracker=null},d.poll=function(p,h){var a=this.config,o=this.media,n=this.stalled;if(o!==null){var v=o.currentTime,l=o.seeking,i=this.seeking&&!l,u=!this.seeking&&l;if(this.seeking=l,v!==p){if(this.moved=!0,n!==null){if(this.stallReported){var g=self.performance.now()-n;P.logger.warn("playback not stuck anymore @"+v+", after "+Math.round(g)+"ms"),this.stallReported=!1}this.stalled=null,this.nudgeRetry=0}return}if((u||i)&&(this.stalled=null),!(o.paused&&!l||o.ended||o.playbackRate===0||!C.BufferHelper.getBuffered(o).length)){var c=C.BufferHelper.bufferInfo(o,v,0),m=c.len>0,e=c.nextStart||0;if(!(!m&&!e)){if(l){var r=c.len>A,t=!e||h&&h.start<=v||e-v>A&&!this.fragmentTracker.getPartialFragment(v);if(r||t)return;this.moved=!1}if(!this.moved&&this.stalled!==null){var s,y=Math.max(e,c.start||0)-v,f=this.hls.levels?this.hls.levels[this.hls.currentLevel]:null,b=f==null||(s=f.details)===null||s===void 0?void 0:s.live,R=b?f.details.targetduration*2:A;if(y>0&&y<=R){this._trySkipBufferHole(null);return}}var I=self.performance.now();if(n===null){this.stalled=I;return}var k=I-n;if(!(!l&&k>=B&&(this._reportStall(c),!this.media))){var F=C.BufferHelper.bufferInfo(o,v,a.maxBufferHole);this._tryFixBufferStall(F,k)}}}}},d._tryFixBufferStall=function(p,h){var a=this.config,o=this.fragmentTracker,n=this.media;if(n!==null){var v=n.currentTime,l=o.getPartialFragment(v);if(l){var i=this._trySkipBufferHole(l);if(i||!this.media)return}p.len>a.maxBufferHole&&h>a.highBufferWatchdogPeriod*1e3&&(P.logger.warn("Trying to nudge playhead over buffer-hole"),this.stalled=null,this._tryNudgeBuffer())}},d._reportStall=function(p){var h=this.hls,a=this.media,o=this.stallReported;!o&&a&&(this.stallReported=!0,P.logger.warn("Playback stalling at @"+a.currentTime+" due to low buffer ("+JSON.stringify(p)+")"),h.trigger(M.Events.ERROR,{type:L.ErrorTypes.MEDIA_ERROR,details:L.ErrorDetails.BUFFER_STALLED_ERROR,fatal:!1,buffer:p.len}))},d._trySkipBufferHole=function(p){var h=this.config,a=this.hls,o=this.media;if(o===null)return 0;for(var n=o.currentTime,v=0,l=C.BufferHelper.getBuffered(o),i=0;i<l.length;i++){var u=l.start(i);if(n+h.maxBufferHole>=v&&n<u){var g=Math.max(u+x,o.currentTime+D);return P.logger.warn("skipping hole, adjusting currentTime from "+n+" to "+g),this.moved=!0,this.stalled=null,o.currentTime=g,p&&a.trigger(M.Events.ERROR,{type:L.ErrorTypes.MEDIA_ERROR,details:L.ErrorDetails.BUFFER_SEEK_OVER_HOLE,fatal:!1,reason:"fragment loaded with buffer holes, seeking from "+n+" to "+g,frag:p}),g}v=l.end(i)}return 0},d._tryNudgeBuffer=function(){var p=this.config,h=this.hls,a=this.media,o=this.nudgeRetry;if(a!==null){var n=a.currentTime;if(this.nudgeRetry++,o<p.nudgeMaxRetry){var v=n+(o+1)*p.nudgeOffset;P.logger.warn("Nudging 'currentTime' from "+n+" to "+v),a.currentTime=v,h.trigger(M.Events.ERROR,{type:L.ErrorTypes.MEDIA_ERROR,details:L.ErrorDetails.BUFFER_NUDGE_ON_STALL,fatal:!1})}else P.logger.error("Playhead still not moving while enough data buffered @"+n+" after "+p.nudgeMaxRetry+" nudges"),h.trigger(M.Events.ERROR,{type:L.ErrorTypes.MEDIA_ERROR,details:L.ErrorDetails.BUFFER_STALLED_ERROR,fatal:!0})}},S}()},"./src/controller/id3-track-controller.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>p});var C=T("./src/polyfills/number.ts"),L=T("./src/events.ts"),M=T("./src/utils/texttrack-utils.ts"),P=T("./src/demux/id3.ts"),B=T("./src/loader/date-range.ts"),A=T("./src/types/demuxer.ts"),D=.25;function x(){return self.WebKitDataCue||self.VTTCue||self.TextTrackCue}var _=function(){var h=x();try{new h(0,Number.POSITIVE_INFINITY,"")}catch{return Number.MAX_VALUE}return Number.POSITIVE_INFINITY}();function S(h,a){return h.getTime()/1e3-a}function d(h){return Uint8Array.from(h.replace(/^0x/,"").replace(/([\da-fA-F]{2}) ?/g,"0x$1 ").replace(/ +$/,"").split(" ")).buffer}var E=function(){function h(o){this.hls=void 0,this.id3Track=null,this.media=null,this.dateRangeCuesAppended={},this.hls=o,this._registerListeners()}var a=h.prototype;return a.destroy=function(){this._unregisterListeners(),this.id3Track=null,this.media=null,this.dateRangeCuesAppended={},this.hls=null},a._registerListeners=function(){var n=this.hls;n.on(L.Events.MEDIA_ATTACHED,this.onMediaAttached,this),n.on(L.Events.MEDIA_DETACHING,this.onMediaDetaching,this),n.on(L.Events.MANIFEST_LOADING,this.onManifestLoading,this),n.on(L.Events.FRAG_PARSING_METADATA,this.onFragParsingMetadata,this),n.on(L.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),n.on(L.Events.LEVEL_UPDATED,this.onLevelUpdated,this)},a._unregisterListeners=function(){var n=this.hls;n.off(L.Events.MEDIA_ATTACHED,this.onMediaAttached,this),n.off(L.Events.MEDIA_DETACHING,this.onMediaDetaching,this),n.off(L.Events.MANIFEST_LOADING,this.onManifestLoading,this),n.off(L.Events.FRAG_PARSING_METADATA,this.onFragParsingMetadata,this),n.off(L.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),n.off(L.Events.LEVEL_UPDATED,this.onLevelUpdated,this)},a.onMediaAttached=function(n,v){this.media=v.media},a.onMediaDetaching=function(){!this.id3Track||((0,M.clearCurrentCues)(this.id3Track),this.id3Track=null,this.media=null,this.dateRangeCuesAppended={})},a.onManifestLoading=function(){this.dateRangeCuesAppended={}},a.createTrack=function(n){var v=this.getID3Track(n.textTracks);return v.mode="hidden",v},a.getID3Track=function(n){if(!!this.media){for(var v=0;v<n.length;v++){var l=n[v];if(l.kind==="metadata"&&l.label==="id3")return(0,M.sendAddTrackEvent)(l,this.media),l}return this.media.addTextTrack("metadata","id3")}},a.onFragParsingMetadata=function(n,v){if(!!this.media){var l=this.hls.config,i=l.enableEmsgMetadataCues,u=l.enableID3MetadataCues;if(!(!i&&!u)){var g=v.samples;this.id3Track||(this.id3Track=this.createTrack(this.media));for(var c=x(),m=0;m<g.length;m++){var e=g[m].type;if(!(e===A.MetadataSchema.emsg&&!i||!u)){var r=P.getID3Frames(g[m].data);if(r){var t=g[m].pts,s=t+g[m].duration;s>_&&(s=_);var y=s-t;y<=0&&(s=t+D);for(var f=0;f<r.length;f++){var b=r[f];if(!P.isTimeStampFrame(b)){this.updateId3CueEnds(t);var R=new c(t,s,"");R.value=b,e&&(R.type=e),this.id3Track.addCue(R)}}}}}}}},a.updateId3CueEnds=function(n){var v,l=(v=this.id3Track)===null||v===void 0?void 0:v.cues;if(l)for(var i=l.length;i--;){var u=l[i];u.startTime<n&&u.endTime===_&&(u.endTime=n)}},a.onBufferFlushing=function(n,v){var l=v.startOffset,i=v.endOffset,u=v.type,g=this.id3Track,c=this.hls;if(!!c){var m=c.config,e=m.enableEmsgMetadataCues,r=m.enableID3MetadataCues;if(g&&(e||r)){var t;u==="audio"?t=function(y){return y.type===A.MetadataSchema.audioId3&&r}:u==="video"?t=function(y){return y.type===A.MetadataSchema.emsg&&e}:t=function(y){return y.type===A.MetadataSchema.audioId3&&r||y.type===A.MetadataSchema.emsg&&e},(0,M.removeCuesInRange)(g,l,i,t)}}},a.onLevelUpdated=function(n,v){var l=this,i=v.details;if(!(!this.media||!i.hasProgramDateTime||!this.hls.config.enableDateRangeMetadataCues)){var u=this.dateRangeCuesAppended,g=this.id3Track,c=i.dateRanges,m=Object.keys(c);if(g)for(var e=Object.keys(u).filter(function(I){return!m.includes(I)}),r=function(k){var F=e[k];Object.keys(u[F].cues).forEach(function(K){g.removeCue(u[F].cues[K])}),delete u[F]},t=e.length;t--;)r(t);var s=i.fragments[i.fragments.length-1];if(!(m.length===0||!(0,C.isFiniteNumber)(s==null?void 0:s.programDateTime))){this.id3Track||(this.id3Track=this.createTrack(this.media));for(var y=s.programDateTime/1e3-s.start,f=x(),b=function(k){var F=m[k],K=c[F],H=u[F],j=(H==null?void 0:H.cues)||{},Y=(H==null?void 0:H.durationKnown)||!1,Q=S(K.startDate,y),q=_,ne=K.endDate;if(ne)q=S(ne,y),Y=!0;else if(K.endOnNext&&!Y){var te=m.reduce(function(de,xe){var Ae=c[xe];return Ae.class===K.class&&Ae.id!==xe&&Ae.startDate>K.startDate&&de.push(Ae),de},[]).sort(function(de,xe){return de.startDate.getTime()-xe.startDate.getTime()})[0];te&&(q=S(te.startDate,y),Y=!0)}for(var ae=Object.keys(K.attr),ue=0;ue<ae.length;ue++){var ce=ae[ue];if(!(ce===B.DateRangeAttribute.ID||ce===B.DateRangeAttribute.CLASS||ce===B.DateRangeAttribute.START_DATE||ce===B.DateRangeAttribute.DURATION||ce===B.DateRangeAttribute.END_DATE||ce===B.DateRangeAttribute.END_ON_NEXT)){var le=j[ce];if(le)Y&&!H.durationKnown&&(le.endTime=q);else{var fe=K.attr[ce];le=new f(Q,q,""),(ce===B.DateRangeAttribute.SCTE35_OUT||ce===B.DateRangeAttribute.SCTE35_IN)&&(fe=d(fe)),le.value={key:ce,data:fe},le.type=A.MetadataSchema.dateRange,l.id3Track.addCue(le),j[ce]=le}}}u[F]={cues:j,dateRange:K,durationKnown:Y}},R=0;R<m.length;R++)b(R)}}},h}();let p=E},"./src/controller/latency-controller.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>x});var C=T("./src/errors.ts"),L=T("./src/events.ts"),M=T("./src/utils/logger.ts");function P(_,S){for(var d=0;d<S.length;d++){var E=S[d];E.enumerable=E.enumerable||!1,E.configurable=!0,"value"in E&&(E.writable=!0),Object.defineProperty(_,A(E.key),E)}}function B(_,S,d){return S&&P(_.prototype,S),d&&P(_,d),Object.defineProperty(_,"prototype",{writable:!1}),_}function A(_){var S=D(_,"string");return typeof S=="symbol"?S:String(S)}function D(_,S){if(typeof _!="object"||_===null)return _;var d=_[Symbol.toPrimitive];if(d!==void 0){var E=d.call(_,S||"default");if(typeof E!="object")return E;throw new TypeError("@@toPrimitive must return a primitive value.")}return(S==="string"?String:Number)(_)}var x=function(){function _(d){var E=this;this.hls=void 0,this.config=void 0,this.media=null,this.levelDetails=null,this.currentTime=0,this.stallCount=0,this._latency=null,this.timeupdateHandler=function(){return E.timeupdate()},this.hls=d,this.config=d.config,this.registerListeners()}var S=_.prototype;return S.destroy=function(){this.unregisterListeners(),this.onMediaDetaching(),this.levelDetails=null,this.hls=this.timeupdateHandler=null},S.registerListeners=function(){this.hls.on(L.Events.MEDIA_ATTACHED,this.onMediaAttached,this),this.hls.on(L.Events.MEDIA_DETACHING,this.onMediaDetaching,this),this.hls.on(L.Events.MANIFEST_LOADING,this.onManifestLoading,this),this.hls.on(L.Events.LEVEL_UPDATED,this.onLevelUpdated,this),this.hls.on(L.Events.ERROR,this.onError,this)},S.unregisterListeners=function(){this.hls.off(L.Events.MEDIA_ATTACHED,this.onMediaAttached),this.hls.off(L.Events.MEDIA_DETACHING,this.onMediaDetaching),this.hls.off(L.Events.MANIFEST_LOADING,this.onManifestLoading),this.hls.off(L.Events.LEVEL_UPDATED,this.onLevelUpdated),this.hls.off(L.Events.ERROR,this.onError)},S.onMediaAttached=function(E,p){this.media=p.media,this.media.addEventListener("timeupdate",this.timeupdateHandler)},S.onMediaDetaching=function(){this.media&&(this.media.removeEventListener("timeupdate",this.timeupdateHandler),this.media=null)},S.onManifestLoading=function(){this.levelDetails=null,this._latency=null,this.stallCount=0},S.onLevelUpdated=function(E,p){var h=p.details;this.levelDetails=h,h.advanced&&this.timeupdate(),!h.live&&this.media&&this.media.removeEventListener("timeupdate",this.timeupdateHandler)},S.onError=function(E,p){p.details===C.ErrorDetails.BUFFER_STALLED_ERROR&&(this.stallCount++,M.logger.warn("[playback-rate-controller]: Stall detected, adjusting target latency"))},S.timeupdate=function(){var E=this.media,p=this.levelDetails;if(!(!E||!p)){this.currentTime=E.currentTime;var h=this.computeLatency();if(h!==null){this._latency=h;var a=this.config,o=a.lowLatencyMode,n=a.maxLiveSyncPlaybackRate;if(!(!o||n===1)){var v=this.targetLatency;if(v!==null){var l=h-v,i=Math.min(this.maxLatency,v+p.targetduration),u=l<i;if(p.live&&u&&l>.05&&this.forwardBufferLength>1){var g=Math.min(2,Math.max(1,n)),c=Math.round(2/(1+Math.exp(-.75*l-this.edgeStalled))*20)/20;E.playbackRate=Math.min(g,Math.max(1,c))}else E.playbackRate!==1&&E.playbackRate!==0&&(E.playbackRate=1)}}}}},S.estimateLiveEdge=function(){var E=this.levelDetails;return E===null?null:E.edge+E.age},S.computeLatency=function(){var E=this.estimateLiveEdge();return E===null?null:E-this.currentTime},B(_,[{key:"latency",get:function(){return this._latency||0}},{key:"maxLatency",get:function(){var E=this.config,p=this.levelDetails;return E.liveMaxLatencyDuration!==void 0?E.liveMaxLatencyDuration:p?E.liveMaxLatencyDurationCount*p.targetduration:0}},{key:"targetLatency",get:function(){var E=this.levelDetails;if(E===null)return null;var p=E.holdBack,h=E.partHoldBack,a=E.targetduration,o=this.config,n=o.liveSyncDuration,v=o.liveSyncDurationCount,l=o.lowLatencyMode,i=this.hls.userConfig,u=l&&h||p;(i.liveSyncDuration||i.liveSyncDurationCount||u===0)&&(u=n!==void 0?n:v*a);var g=a,c=1;return u+Math.min(this.stallCount*c,g)}},{key:"liveSyncPosition",get:function(){var E=this.estimateLiveEdge(),p=this.targetLatency,h=this.levelDetails;if(E===null||p===null||h===null)return null;var a=h.edge,o=E-p-this.edgeStalled,n=a-h.totalduration,v=a-(this.config.lowLatencyMode&&h.partTarget||h.targetduration);return Math.min(Math.max(n,o),v)}},{key:"drift",get:function(){var E=this.levelDetails;return E===null?1:E.drift}},{key:"edgeStalled",get:function(){var E=this.levelDetails;if(E===null)return 0;var p=(this.config.lowLatencyMode&&E.partTarget||E.targetduration)*3;return Math.max(E.age-p,0)}},{key:"forwardBufferLength",get:function(){var E=this.media,p=this.levelDetails;if(!E||!p)return 0;var h=E.buffered.length;return(h?E.buffered.end(h-1):p.edge)-this.currentTime}}]),_}()},"./src/controller/level-controller.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>o});var C=T("./src/types/level.ts"),L=T("./src/events.ts"),M=T("./src/errors.ts"),P=T("./src/utils/codecs.ts"),B=T("./src/controller/level-helper.ts"),A=T("./src/controller/base-playlist-controller.ts"),D=T("./src/types/loader.ts");function x(){return x=Object.assign?Object.assign.bind():function(n){for(var v=1;v<arguments.length;v++){var l=arguments[v];for(var i in l)Object.prototype.hasOwnProperty.call(l,i)&&(n[i]=l[i])}return n},x.apply(this,arguments)}function _(n,v){for(var l=0;l<v.length;l++){var i=v[l];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,d(i.key),i)}}function S(n,v,l){return v&&_(n.prototype,v),l&&_(n,l),Object.defineProperty(n,"prototype",{writable:!1}),n}function d(n){var v=E(n,"string");return typeof v=="symbol"?v:String(v)}function E(n,v){if(typeof n!="object"||n===null)return n;var l=n[Symbol.toPrimitive];if(l!==void 0){var i=l.call(n,v||"default");if(typeof i!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(v==="string"?String:Number)(n)}function p(n,v){n.prototype=Object.create(v.prototype),n.prototype.constructor=n,h(n,v)}function h(n,v){return h=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(i,u){return i.__proto__=u,i},h(n,v)}var a=/chrome|firefox/.test(navigator.userAgent.toLowerCase()),o=function(n){p(v,n);function v(i){var u;return u=n.call(this,i,"[level-controller]")||this,u._levels=[],u._firstLevel=-1,u._startLevel=void 0,u.currentLevelIndex=-1,u.manualLevelIndex=-1,u.onParsedComplete=void 0,u._registerListeners(),u}var l=v.prototype;return l._registerListeners=function(){var u=this.hls;u.on(L.Events.MANIFEST_LOADED,this.onManifestLoaded,this),u.on(L.Events.LEVEL_LOADED,this.onLevelLoaded,this),u.on(L.Events.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),u.on(L.Events.FRAG_LOADED,this.onFragLoaded,this),u.on(L.Events.ERROR,this.onError,this)},l._unregisterListeners=function(){var u=this.hls;u.off(L.Events.MANIFEST_LOADED,this.onManifestLoaded,this),u.off(L.Events.LEVEL_LOADED,this.onLevelLoaded,this),u.off(L.Events.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),u.off(L.Events.FRAG_LOADED,this.onFragLoaded,this),u.off(L.Events.ERROR,this.onError,this)},l.destroy=function(){this._unregisterListeners(),this.manualLevelIndex=-1,this._levels.length=0,n.prototype.destroy.call(this)},l.startLoad=function(){var u=this._levels;u.forEach(function(g){g.loadError=0}),n.prototype.startLoad.call(this)},l.onManifestLoaded=function(u,g){var c=[],m=[],e=[],r,t={},s,y=!1,f=!1,b=!1;if(g.levels.forEach(function(F){var K=F.attrs;y=y||!!(F.width&&F.height),f=f||!!F.videoCodec,b=b||!!F.audioCodec,a&&F.audioCodec&&F.audioCodec.indexOf("mp4a.40.34")!==-1&&(F.audioCodec=void 0);var H=F.bitrate+"-"+F.attrs.RESOLUTION+"-"+F.attrs.CODECS;s=t[H],s?s.url.push(F.url):(s=new C.Level(F),t[H]=s,c.push(s)),K&&(K.AUDIO&&(0,B.addGroupId)(s,"audio",K.AUDIO),K.SUBTITLES&&(0,B.addGroupId)(s,"text",K.SUBTITLES))}),(y||f)&&b&&(c=c.filter(function(F){var K=F.videoCodec,H=F.width,j=F.height;return!!K||!!(H&&j)})),c=c.filter(function(F){var K=F.audioCodec,H=F.videoCodec;return(!K||(0,P.isCodecSupportedInMp4)(K,"audio"))&&(!H||(0,P.isCodecSupportedInMp4)(H,"video"))}),g.audioTracks&&(m=g.audioTracks.filter(function(F){return!F.audioCodec||(0,P.isCodecSupportedInMp4)(F.audioCodec,"audio")}),(0,B.assignTrackIdsByGroup)(m)),g.subtitles&&(e=g.subtitles,(0,B.assignTrackIdsByGroup)(e)),c.length>0){r=c[0].bitrate,c.sort(function(F,K){return F.attrs["HDCP-LEVEL"]!==K.attrs["HDCP-LEVEL"]?(F.attrs["HDCP-LEVEL"]||"")>(K.attrs["HDCP-LEVEL"]||"")?1:-1:F.bitrate!==K.bitrate?F.bitrate-K.bitrate:F.attrs.SCORE!==K.attrs.SCORE?F.attrs.decimalFloatingPoint("SCORE")-K.attrs.decimalFloatingPoint("SCORE"):y&&F.height!==K.height?F.height-K.height:0}),this._levels=c;for(var R=0;R<c.length;R++)if(c[R].bitrate===r){this._firstLevel=R,this.log("manifest loaded, "+c.length+" level(s) found, first bitrate: "+r);break}var I=b&&!f,k={levels:c,audioTracks:m,subtitleTracks:e,sessionData:g.sessionData,sessionKeys:g.sessionKeys,firstLevel:this._firstLevel,stats:g.stats,audio:b,video:f,altAudio:!I&&m.some(function(F){return!!F.url})};this.hls.trigger(L.Events.MANIFEST_PARSED,k),(this.hls.config.autoStartLoad||this.hls.forceStartLoad)&&this.hls.startLoad(this.hls.config.startPosition)}else this.hls.trigger(L.Events.ERROR,{type:M.ErrorTypes.MEDIA_ERROR,details:M.ErrorDetails.MANIFEST_INCOMPATIBLE_CODECS_ERROR,fatal:!0,url:g.url,reason:"no level with compatible codecs found in manifest"})},l.onError=function(u,g){var c,m;if(n.prototype.onError.call(this,u,g),!g.fatal){var e=g.context,r=this._levels[this.currentLevelIndex];if(e&&(e.type===D.PlaylistContextType.AUDIO_TRACK&&r.audioGroupIds&&e.groupId===r.audioGroupIds[r.urlId]||e.type===D.PlaylistContextType.SUBTITLE_TRACK&&r.textGroupIds&&e.groupId===r.textGroupIds[r.urlId])){this.redundantFailover(this.currentLevelIndex);return}var t=!1,s=!0,y;switch(g.details){case M.ErrorDetails.FRAG_LOAD_ERROR:case M.ErrorDetails.FRAG_LOAD_TIMEOUT:case M.ErrorDetails.KEY_LOAD_ERROR:case M.ErrorDetails.KEY_LOAD_TIMEOUT:if(g.frag){var f=g.frag.type===D.PlaylistLevelType.MAIN?g.frag.level:this.currentLevelIndex,b=this._levels[f];b?(b.fragmentError++,b.fragmentError>this.hls.config.fragLoadingMaxRetry&&(y=f)):y=f}break;case M.ErrorDetails.KEY_SYSTEM_STATUS_OUTPUT_RESTRICTED:{var R=r.attrs["HDCP-LEVEL"];R&&(this.hls.maxHdcpLevel=C.HdcpLevels[C.HdcpLevels.indexOf(R)-1],this.warn('Restricting playback to HDCP-LEVEL of "'+this.hls.maxHdcpLevel+'" or lower'))}case M.ErrorDetails.FRAG_PARSING_ERROR:case M.ErrorDetails.KEY_SYSTEM_NO_SESSION:y=((c=g.frag)===null||c===void 0?void 0:c.type)===D.PlaylistLevelType.MAIN?g.frag.level:this.currentLevelIndex,g.levelRetry=!1;break;case M.ErrorDetails.LEVEL_LOAD_ERROR:case M.ErrorDetails.LEVEL_LOAD_TIMEOUT:e&&(e.deliveryDirectives&&(s=!1),y=e.level),t=!0;break;case M.ErrorDetails.REMUX_ALLOC_ERROR:y=(m=g.level)!=null?m:this.currentLevelIndex,t=!0;break}y!==void 0&&this.recoverLevel(g,y,t,s)}},l.recoverLevel=function(u,g,c,m){var e=u.details,r=this._levels[g];if(r.loadError++,c){var t=this.retryLoadingOrFail(u);if(t)u.levelRetry=!0;else{this.currentLevelIndex=-1;return}}if(m){var s=r.url.length;if(s>1&&r.loadError<s)u.levelRetry=!0,this.redundantFailover(g);else if(this.manualLevelIndex===-1){for(var y=-1,f=this._levels,b=f.length;b--;){var R=(b+this.currentLevelIndex)%f.length;if(R!==this.currentLevelIndex&&f[R].loadError===0){y=R;break}}y>-1&&this.currentLevelIndex!==y?(this.warn(e+": switch to "+y),u.levelRetry=!0,this.hls.nextAutoLevel=y):u.levelRetry===!1&&(u.fatal=!0)}}},l.redundantFailover=function(u){var g=this._levels[u],c=g.url.length;if(c>1){var m=(g.urlId+1)%c;this.warn("Switching to redundant URL-id "+m),this._levels.forEach(function(e){e.urlId=m}),this.level=u}},l.onFragLoaded=function(u,g){var c=g.frag;if(c!==void 0&&c.type===D.PlaylistLevelType.MAIN){var m=this._levels[c.level];m!==void 0&&(m.fragmentError=0,m.loadError=0)}},l.onLevelLoaded=function(u,g){var c,m=g.level,e=g.details,r=this._levels[m];if(!r){var t;this.warn("Invalid level index "+m),(t=g.deliveryDirectives)!==null&&t!==void 0&&t.skip&&(e.deltaUpdateFailed=!0);return}m===this.currentLevelIndex?(r.fragmentError===0&&(r.loadError=0,this.retryCount=0),this.playlistLoaded(m,g,r.details)):(c=g.deliveryDirectives)!==null&&c!==void 0&&c.skip&&(e.deltaUpdateFailed=!0)},l.onAudioTrackSwitched=function(u,g){var c=this.hls.levels[this.currentLevelIndex];if(!!c&&c.audioGroupIds){for(var m=-1,e=this.hls.audioTracks[g.id].groupId,r=0;r<c.audioGroupIds.length;r++)if(c.audioGroupIds[r]===e){m=r;break}m!==c.urlId&&(c.urlId=m,this.startLoad())}},l.loadPlaylist=function(u){n.prototype.loadPlaylist.call(this);var g=this.currentLevelIndex,c=this._levels[g];if(this.canLoad&&c&&c.url.length>0){var m=c.urlId,e=c.url[m];if(u)try{e=u.addDirectives(e)}catch(r){this.warn("Could not construct new URL with HLS Delivery Directives: "+r)}this.log("Attempt loading level index "+g+(u?" at sn "+u.msn+" part "+u.part:"")+" with URL-id "+m+" "+e),this.clearTimer(),this.hls.trigger(L.Events.LEVEL_LOADING,{url:e,level:g,id:m,deliveryDirectives:u||null})}},l.removeLevel=function(u,g){var c=function(r,t){return t!==g},m=this._levels.filter(function(e,r){return r!==u?!0:e.url.length>1&&g!==void 0?(e.url=e.url.filter(c),e.audioGroupIds&&(e.audioGroupIds=e.audioGroupIds.filter(c)),e.textGroupIds&&(e.textGroupIds=e.textGroupIds.filter(c)),e.urlId=0,!0):!1}).map(function(e,r){var t=e.details;return t!=null&&t.fragments&&t.fragments.forEach(function(s){s.level=r}),e});this._levels=m,this.hls.trigger(L.Events.LEVELS_UPDATED,{levels:m})},S(v,[{key:"levels",get:function(){return this._levels.length===0?null:this._levels}},{key:"level",get:function(){return this.currentLevelIndex},set:function(u){var g,c=this._levels;if(c.length!==0&&!(this.currentLevelIndex===u&&(g=c[u])!==null&&g!==void 0&&g.details)){if(u<0||u>=c.length){var m=u<0;if(this.hls.trigger(L.Events.ERROR,{type:M.ErrorTypes.OTHER_ERROR,details:M.ErrorDetails.LEVEL_SWITCH_ERROR,level:u,fatal:m,reason:"invalid level idx"}),m)return;u=Math.min(u,c.length-1)}this.clearTimer();var e=this.currentLevelIndex,r=c[e],t=c[u];this.log("switching to level "+u+" from "+e),this.currentLevelIndex=u;var s=x({},t,{level:u,maxBitrate:t.maxBitrate,uri:t.uri,urlId:t.urlId});delete s._urlId,this.hls.trigger(L.Events.LEVEL_SWITCHING,s);var y=t.details;if(!y||y.live){var f=this.switchParams(t.uri,r==null?void 0:r.details);this.loadPlaylist(f)}}}},{key:"manualLevel",get:function(){return this.manualLevelIndex},set:function(u){this.manualLevelIndex=u,this._startLevel===void 0&&(this._startLevel=u),u!==-1&&(this.level=u)}},{key:"firstLevel",get:function(){return this._firstLevel},set:function(u){this._firstLevel=u}},{key:"startLevel",get:function(){if(this._startLevel===void 0){var u=this.hls.config.startLevel;return u!==void 0?u:this._firstLevel}else return this._startLevel},set:function(u){this._startLevel=u}},{key:"nextLoadLevel",get:function(){return this.manualLevelIndex!==-1?this.manualLevelIndex:this.hls.nextAutoLevel},set:function(u){this.level=u,this.manualLevelIndex===-1&&(this.hls.nextAutoLevel=u)}}]),v}(A.default)},"./src/controller/level-helper.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{addGroupId:()=>B,addSliding:()=>a,adjustSliding:()=>h,assignTrackIdsByGroup:()=>A,computeReloadInterval:()=>o,getFragmentWithSN:()=>n,getPartWith:()=>v,mapFragmentIntersection:()=>p,mapPartIntersection:()=>E,mergeDetails:()=>S,updateFragPTSDTS:()=>_,updatePTS:()=>D});var C=T("./src/polyfills/number.ts"),L=T("./src/utils/logger.ts"),M=T("./src/loader/date-range.ts");function P(){return P=Object.assign?Object.assign.bind():function(l){for(var i=1;i<arguments.length;i++){var u=arguments[i];for(var g in u)Object.prototype.hasOwnProperty.call(u,g)&&(l[g]=u[g])}return l},P.apply(this,arguments)}function B(l,i,u){switch(i){case"audio":l.audioGroupIds||(l.audioGroupIds=[]),l.audioGroupIds.push(u);break;case"text":l.textGroupIds||(l.textGroupIds=[]),l.textGroupIds.push(u);break}}function A(l){var i={};l.forEach(function(u){var g=u.groupId||"";u.id=i[g]=i[g]||0,i[g]++})}function D(l,i,u){var g=l[i],c=l[u];x(g,c)}function x(l,i){var u=i.startPTS;if((0,C.isFiniteNumber)(u)){var g=0,c;i.sn>l.sn?(g=u-l.start,c=l):(g=l.start-u,c=i),c.duration!==g&&(c.duration=g)}else if(i.sn>l.sn){var m=l.cc===i.cc;m&&l.minEndPTS?i.start=l.start+(l.minEndPTS-l.start):i.start=l.start+l.duration}else i.start=Math.max(l.start-i.duration,0)}function _(l,i,u,g,c,m){var e=g-u;e<=0&&(L.logger.warn("Fragment should have a positive duration",i),g=u+i.duration,m=c+i.duration);var r=u,t=g,s=i.startPTS,y=i.endPTS;if((0,C.isFiniteNumber)(s)){var f=Math.abs(s-u);(0,C.isFiniteNumber)(i.deltaPTS)?i.deltaPTS=Math.max(f,i.deltaPTS):i.deltaPTS=f,r=Math.max(u,s),u=Math.min(u,s),c=Math.min(c,i.startDTS),t=Math.min(g,y),g=Math.max(g,y),m=Math.max(m,i.endDTS)}i.duration=g-u;var b=u-i.start;i.start=i.startPTS=u,i.maxStartPTS=r,i.startDTS=c,i.endPTS=g,i.minEndPTS=t,i.endDTS=m;var R=i.sn;if(!l||R<l.startSN||R>l.endSN)return 0;var I,k=R-l.startSN,F=l.fragments;for(F[k]=i,I=k;I>0;I--)x(F[I],F[I-1]);for(I=k;I<F.length-1;I++)x(F[I],F[I+1]);return l.fragmentHint&&x(F[F.length-1],l.fragmentHint),l.PTSKnown=l.alignedSliding=!0,b}function S(l,i){for(var u=null,g=l.fragments,c=g.length-1;c>=0;c--){var m=g[c].initSegment;if(m){u=m;break}}l.fragmentHint&&delete l.fragmentHint.endPTS;var e=0,r;if(p(l,i,function(I,k){I.relurl&&(e=I.cc-k.cc),(0,C.isFiniteNumber)(I.startPTS)&&(0,C.isFiniteNumber)(I.endPTS)&&(k.start=k.startPTS=I.startPTS,k.startDTS=I.startDTS,k.appendedPTS=I.appendedPTS,k.maxStartPTS=I.maxStartPTS,k.endPTS=I.endPTS,k.endDTS=I.endDTS,k.minEndPTS=I.minEndPTS,k.duration=I.endPTS-I.startPTS,k.duration&&(r=k),i.PTSKnown=i.alignedSliding=!0),k.elementaryStreams=I.elementaryStreams,k.loader=I.loader,k.stats=I.stats,k.urlId=I.urlId,I.initSegment&&(k.initSegment=I.initSegment,u=I.initSegment)}),u){var t=i.fragmentHint?i.fragments.concat(i.fragmentHint):i.fragments;t.forEach(function(I){var k;(!I.initSegment||I.initSegment.relurl===((k=u)===null||k===void 0?void 0:k.relurl))&&(I.initSegment=u)})}if(i.skippedSegments)if(i.deltaUpdateFailed=i.fragments.some(function(I){return!I}),i.deltaUpdateFailed){L.logger.warn("[level-helper] Previous playlist missing segments skipped in delta playlist");for(var s=i.skippedSegments;s--;)i.fragments.shift();i.startSN=i.fragments[0].sn,i.startCC=i.fragments[0].cc}else i.canSkipDateRanges&&(i.dateRanges=d(l.dateRanges,i.dateRanges,i.recentlyRemovedDateranges));var y=i.fragments;if(e){L.logger.warn("discontinuity sliding from playlist, take drift into account");for(var f=0;f<y.length;f++)y[f].cc+=e}i.skippedSegments&&(i.startCC=i.fragments[0].cc),E(l.partList,i.partList,function(I,k){k.elementaryStreams=I.elementaryStreams,k.stats=I.stats}),r?_(i,r,r.startPTS,r.endPTS,r.startDTS,r.endDTS):h(l,i),y.length&&(i.totalduration=i.edge-y[0].start),i.driftStartTime=l.driftStartTime,i.driftStart=l.driftStart;var b=i.advancedDateTime;if(i.advanced&&b){var R=i.edge;i.driftStart||(i.driftStartTime=b,i.driftStart=R),i.driftEndTime=b,i.driftEnd=R}else i.driftEndTime=l.driftEndTime,i.driftEnd=l.driftEnd,i.advancedDateTime=l.advancedDateTime}function d(l,i,u){var g=P({},l);return u&&u.forEach(function(c){delete g[c]}),Object.keys(i).forEach(function(c){var m=new M.DateRange(i[c].attr,g[c]);m.isValid?g[c]=m:L.logger.warn('Ignoring invalid Playlist Delta Update DATERANGE tag: "'+JSON.stringify(i[c].attr)+'"')}),g}function E(l,i,u){if(l&&i)for(var g=0,c=0,m=l.length;c<=m;c++){var e=l[c],r=i[c+g];e&&r&&e.index===r.index&&e.fragment.sn===r.fragment.sn?u(e,r):g--}}function p(l,i,u){for(var g=i.skippedSegments,c=Math.max(l.startSN,i.startSN)-i.startSN,m=(l.fragmentHint?1:0)+(g?i.endSN:Math.min(l.endSN,i.endSN))-i.startSN,e=i.startSN-l.startSN,r=i.fragmentHint?i.fragments.concat(i.fragmentHint):i.fragments,t=l.fragmentHint?l.fragments.concat(l.fragmentHint):l.fragments,s=c;s<=m;s++){var y=t[e+s],f=r[s];g&&!f&&s<g&&(f=i.fragments[s]=y),y&&f&&u(y,f)}}function h(l,i){var u=i.startSN+i.skippedSegments-l.startSN,g=l.fragments;u<0||u>=g.length||a(i,g[u].start)}function a(l,i){if(i){for(var u=l.fragments,g=l.skippedSegments;g<u.length;g++)u[g].start+=i;l.fragmentHint&&(l.fragmentHint.start+=i)}}function o(l,i){i===void 0&&(i=1/0);var u=1e3*l.targetduration;if(l.updated){var g=l.fragments,c=4;if(g.length&&u*c>i){var m=g[g.length-1].duration*1e3;m<u&&(u=m)}}else u/=2;return Math.round(u)}function n(l,i,u){if(!l||!l.details)return null;var g=l.details,c=g.fragments[i-g.startSN];return c||(c=g.fragmentHint,c&&c.sn===i)?c:i<g.startSN&&u&&u.sn===i?u:null}function v(l,i,u){if(!l||!l.details)return null;var g=l.details.partList;if(g)for(var c=g.length;c--;){var m=g[c];if(m.index===u&&m.fragment.sn===i)return m}return null}},"./src/controller/stream-controller.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>i});var C=T("./src/polyfills/number.ts"),L=T("./src/controller/base-stream-controller.ts"),M=T("./src/is-supported.ts"),P=T("./src/events.ts"),B=T("./src/utils/buffer-helper.ts"),A=T("./src/controller/fragment-tracker.ts"),D=T("./src/types/loader.ts"),x=T("./src/loader/fragment.ts"),_=T("./src/demux/transmuxer-interface.ts"),S=T("./src/types/transmuxer.ts"),d=T("./src/controller/gap-controller.ts"),E=T("./src/errors.ts");function p(u,g){for(var c=0;c<g.length;c++){var m=g[c];m.enumerable=m.enumerable||!1,m.configurable=!0,"value"in m&&(m.writable=!0),Object.defineProperty(u,a(m.key),m)}}function h(u,g,c){return g&&p(u.prototype,g),c&&p(u,c),Object.defineProperty(u,"prototype",{writable:!1}),u}function a(u){var g=o(u,"string");return typeof g=="symbol"?g:String(g)}function o(u,g){if(typeof u!="object"||u===null)return u;var c=u[Symbol.toPrimitive];if(c!==void 0){var m=c.call(u,g||"default");if(typeof m!="object")return m;throw new TypeError("@@toPrimitive must return a primitive value.")}return(g==="string"?String:Number)(u)}function n(u,g){u.prototype=Object.create(g.prototype),u.prototype.constructor=u,v(u,g)}function v(u,g){return v=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(m,e){return m.__proto__=e,m},v(u,g)}var l=100,i=function(u){n(g,u);function g(m,e,r){var t;return t=u.call(this,m,e,r,"[stream-controller]")||this,t.audioCodecSwap=!1,t.gapController=null,t.level=-1,t._forceStartLoad=!1,t.altAudio=!1,t.audioOnly=!1,t.fragPlaying=null,t.onvplaying=null,t.onvseeked=null,t.fragLastKbps=0,t.couldBacktrack=!1,t.backtrackFragment=null,t.audioCodecSwitch=!1,t.videoBuffer=null,t._registerListeners(),t}var c=g.prototype;return c._registerListeners=function(){var e=this.hls;e.on(P.Events.MEDIA_ATTACHED,this.onMediaAttached,this),e.on(P.Events.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(P.Events.MANIFEST_LOADING,this.onManifestLoading,this),e.on(P.Events.MANIFEST_PARSED,this.onManifestParsed,this),e.on(P.Events.LEVEL_LOADING,this.onLevelLoading,this),e.on(P.Events.LEVEL_LOADED,this.onLevelLoaded,this),e.on(P.Events.FRAG_LOAD_EMERGENCY_ABORTED,this.onFragLoadEmergencyAborted,this),e.on(P.Events.ERROR,this.onError,this),e.on(P.Events.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),e.on(P.Events.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),e.on(P.Events.BUFFER_CREATED,this.onBufferCreated,this),e.on(P.Events.BUFFER_FLUSHED,this.onBufferFlushed,this),e.on(P.Events.LEVELS_UPDATED,this.onLevelsUpdated,this),e.on(P.Events.FRAG_BUFFERED,this.onFragBuffered,this)},c._unregisterListeners=function(){var e=this.hls;e.off(P.Events.MEDIA_ATTACHED,this.onMediaAttached,this),e.off(P.Events.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(P.Events.MANIFEST_LOADING,this.onManifestLoading,this),e.off(P.Events.MANIFEST_PARSED,this.onManifestParsed,this),e.off(P.Events.LEVEL_LOADED,this.onLevelLoaded,this),e.off(P.Events.FRAG_LOAD_EMERGENCY_ABORTED,this.onFragLoadEmergencyAborted,this),e.off(P.Events.ERROR,this.onError,this),e.off(P.Events.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),e.off(P.Events.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),e.off(P.Events.BUFFER_CREATED,this.onBufferCreated,this),e.off(P.Events.BUFFER_FLUSHED,this.onBufferFlushed,this),e.off(P.Events.LEVELS_UPDATED,this.onLevelsUpdated,this),e.off(P.Events.FRAG_BUFFERED,this.onFragBuffered,this)},c.onHandlerDestroying=function(){this._unregisterListeners(),this.onMediaDetaching()},c.startLoad=function(e){if(this.levels){var r=this.lastCurrentTime,t=this.hls;if(this.stopLoad(),this.setInterval(l),this.level=-1,this.fragLoadError=0,!this.startFragRequested){var s=t.startLevel;s===-1&&(t.config.testBandwidth&&this.levels.length>1?(s=0,this.bitrateTest=!0):s=t.nextAutoLevel),this.level=t.nextLoadLevel=s,this.loadedmetadata=!1}r>0&&e===-1&&(this.log("Override startPosition with lastCurrentTime @"+r.toFixed(3)),e=r),this.state=L.State.IDLE,this.nextLoadPosition=this.startPosition=this.lastCurrentTime=e,this.tick()}else this._forceStartLoad=!0,this.state=L.State.STOPPED},c.stopLoad=function(){this._forceStartLoad=!1,u.prototype.stopLoad.call(this)},c.doTick=function(){switch(this.state){case L.State.IDLE:this.doTickIdle();break;case L.State.WAITING_LEVEL:{var e,r=this.levels,t=this.level,s=r==null||(e=r[t])===null||e===void 0?void 0:e.details;if(s&&(!s.live||this.levelLastLoaded===this.level)){if(this.waitForCdnTuneIn(s))break;this.state=L.State.IDLE;break}break}case L.State.FRAG_LOADING_WAITING_RETRY:{var y,f=self.performance.now(),b=this.retryDate;(!b||f>=b||(y=this.media)!==null&&y!==void 0&&y.seeking)&&(this.log("retryDate reached, switch back to IDLE state"),this.resetStartWhenNotLoaded(this.level),this.state=L.State.IDLE)}break;default:break}this.onTickEnd()},c.onTickEnd=function(){u.prototype.onTickEnd.call(this),this.checkBuffer(),this.checkFragmentChanged()},c.doTickIdle=function(){var e=this.hls,r=this.levelLastLoaded,t=this.levels,s=this.media,y=e.config,f=e.nextLoadLevel;if(!(r===null||!s&&(this.startFragRequested||!y.startFragPrefetch))&&!(this.altAudio&&this.audioOnly)&&!(!t||!t[f])){var b=t[f],R=this.getMainFwdBufferInfo();if(R!==null){var I=this.getLevelDetails();if(I&&this._streamEnded(R,I)){var k={};this.altAudio&&(k.type="video"),this.hls.trigger(P.Events.BUFFER_EOS,k),this.state=L.State.ENDED;return}this.level=e.nextLoadLevel=f;var F=b.details;if(!F||this.state===L.State.WAITING_LEVEL||F.live&&this.levelLastLoaded!==f){this.level=f,this.state=L.State.WAITING_LEVEL;return}var K=R.len,H=this.getMaxBufferLength(b.maxBitrate);if(!(K>=H)){this.backtrackFragment&&this.backtrackFragment.start>R.end&&(this.backtrackFragment=null);var j=this.backtrackFragment?this.backtrackFragment.start:R.end,Y=this.getNextFragment(j,F);if(this.couldBacktrack&&!this.fragPrevious&&Y&&Y.sn!=="initSegment"&&this.fragmentTracker.getState(Y)!==A.FragmentState.OK){var Q,q=((Q=this.backtrackFragment)!=null?Q:Y).sn,ne=q-F.startSN,te=F.fragments[ne-1];te&&Y.cc===te.cc&&(Y=te,this.fragmentTracker.removeFragment(te))}else this.backtrackFragment&&R.len&&(this.backtrackFragment=null);if(Y&&this.fragmentTracker.getState(Y)===A.FragmentState.OK&&this.nextLoadPosition>j){var ae=this.audioOnly&&!this.altAudio?x.ElementaryStreamTypes.AUDIO:x.ElementaryStreamTypes.VIDEO,ue=(ae===x.ElementaryStreamTypes.VIDEO?this.videoBuffer:this.mediaBuffer)||this.media;ue&&this.afterBufferFlushed(ue,ae,D.PlaylistLevelType.MAIN),Y=this.getNextFragment(this.nextLoadPosition,F)}!Y||(Y.initSegment&&!Y.initSegment.data&&!this.bitrateTest&&(Y=Y.initSegment),this.loadFragment(Y,F,j))}}}},c.loadFragment=function(e,r,t){var s,y=this.fragmentTracker.getState(e);this.fragCurrent=e,y===A.FragmentState.NOT_LOADED?e.sn==="initSegment"?this._loadInitSegment(e,r):this.bitrateTest?(this.log("Fragment "+e.sn+" of level "+e.level+" is being downloaded to test bitrate and will not be buffered"),this._loadBitrateTestFrag(e,r)):(this.startFragRequested=!0,u.prototype.loadFragment.call(this,e,r,t)):y===A.FragmentState.APPENDING?this.reduceMaxBufferLength(e.duration)&&this.fragmentTracker.removeFragment(e):((s=this.media)===null||s===void 0?void 0:s.buffered.length)===0&&this.fragmentTracker.removeAllFragments()},c.getAppendedFrag=function(e){var r=this.fragmentTracker.getAppendedFrag(e,D.PlaylistLevelType.MAIN);return r&&"fragment"in r?r.fragment:r},c.getBufferedFrag=function(e){return this.fragmentTracker.getBufferedFrag(e,D.PlaylistLevelType.MAIN)},c.followingBufferedFrag=function(e){return e?this.getBufferedFrag(e.end+.5):null},c.immediateLevelSwitch=function(){this.abortCurrentFrag(),this.flushMainBuffer(0,Number.POSITIVE_INFINITY)},c.nextLevelSwitch=function(){var e=this.levels,r=this.media;if(r!=null&&r.readyState){var t,s=this.getAppendedFrag(r.currentTime);if(s&&s.start>1&&this.flushMainBuffer(0,s.start-1),!r.paused&&e){var y=this.hls.nextLoadLevel,f=e[y],b=this.fragLastKbps;b&&this.fragCurrent?t=this.fragCurrent.duration*f.maxBitrate/(1e3*b)+1:t=0}else t=0;var R=this.getBufferedFrag(r.currentTime+t);if(R){var I=this.followingBufferedFrag(R);if(I){this.abortCurrentFrag();var k=I.maxStartPTS?I.maxStartPTS:I.start,F=I.duration,K=Math.max(R.end,k+Math.min(Math.max(F-this.config.maxFragLookUpTolerance,F*.5),F*.75));this.flushMainBuffer(K,Number.POSITIVE_INFINITY)}}}},c.abortCurrentFrag=function(){var e=this.fragCurrent;switch(this.fragCurrent=null,this.backtrackFragment=null,e&&e.abortRequests(),this.state){case L.State.KEY_LOADING:case L.State.FRAG_LOADING:case L.State.FRAG_LOADING_WAITING_RETRY:case L.State.PARSING:case L.State.PARSED:this.state=L.State.IDLE;break}this.nextLoadPosition=this.getLoadPosition()},c.flushMainBuffer=function(e,r){u.prototype.flushMainBuffer.call(this,e,r,this.altAudio?"video":null)},c.onMediaAttached=function(e,r){u.prototype.onMediaAttached.call(this,e,r);var t=r.media;this.onvplaying=this.onMediaPlaying.bind(this),this.onvseeked=this.onMediaSeeked.bind(this),t.addEventListener("playing",this.onvplaying),t.addEventListener("seeked",this.onvseeked),this.gapController=new d.default(this.config,t,this.fragmentTracker,this.hls)},c.onMediaDetaching=function(){var e=this.media;e&&this.onvplaying&&this.onvseeked&&(e.removeEventListener("playing",this.onvplaying),e.removeEventListener("seeked",this.onvseeked),this.onvplaying=this.onvseeked=null,this.videoBuffer=null),this.fragPlaying=null,this.gapController&&(this.gapController.destroy(),this.gapController=null),u.prototype.onMediaDetaching.call(this)},c.onMediaPlaying=function(){this.tick()},c.onMediaSeeked=function(){var e=this.media,r=e?e.currentTime:null;(0,C.isFiniteNumber)(r)&&this.log("Media seeked to "+r.toFixed(3)),this.tick()},c.onManifestLoading=function(){this.log("Trigger BUFFER_RESET"),this.hls.trigger(P.Events.BUFFER_RESET,void 0),this.fragmentTracker.removeAllFragments(),this.couldBacktrack=!1,this.startPosition=this.lastCurrentTime=0,this.fragPlaying=null,this.backtrackFragment=null},c.onManifestParsed=function(e,r){var t=!1,s=!1,y;r.levels.forEach(function(f){y=f.audioCodec,y&&(y.indexOf("mp4a.40.2")!==-1&&(t=!0),y.indexOf("mp4a.40.5")!==-1&&(s=!0))}),this.audioCodecSwitch=t&&s&&!(0,M.changeTypeSupported)(),this.audioCodecSwitch&&this.log("Both AAC/HE-AAC audio found in levels; declaring level codec as HE-AAC"),this.levels=r.levels,this.startFragRequested=!1},c.onLevelLoading=function(e,r){var t=this.levels;if(!(!t||this.state!==L.State.IDLE)){var s=t[r.level];(!s.details||s.details.live&&this.levelLastLoaded!==r.level||this.waitForCdnTuneIn(s.details))&&(this.state=L.State.WAITING_LEVEL)}},c.onLevelLoaded=function(e,r){var t,s=this.levels,y=r.level,f=r.details,b=f.totalduration;if(!s){this.warn("Levels were reset while loading level "+y);return}this.log("Level "+y+" loaded ["+f.startSN+","+f.endSN+"], cc ["+f.startCC+", "+f.endCC+"] duration:"+b);var R=this.fragCurrent;R&&(this.state===L.State.FRAG_LOADING||this.state===L.State.FRAG_LOADING_WAITING_RETRY)&&R.level!==r.level&&R.loader&&(this.state=L.State.IDLE,this.backtrackFragment=null,R.abortRequests());var I=s[y],k=0;if(f.live||(t=I.details)!==null&&t!==void 0&&t.live){if(f.fragments[0]||(f.deltaUpdateFailed=!0),f.deltaUpdateFailed)return;k=this.alignPlaylists(f,I.details)}if(I.details=f,this.levelLastLoaded=y,this.hls.trigger(P.Events.LEVEL_UPDATED,{details:f,level:y}),this.state===L.State.WAITING_LEVEL){if(this.waitForCdnTuneIn(f))return;this.state=L.State.IDLE}this.startFragRequested?f.live&&this.synchronizeToLiveEdge(f):this.setStartPosition(f,k),this.tick()},c._handleFragmentLoadProgress=function(e){var r,t=e.frag,s=e.part,y=e.payload,f=this.levels;if(!f){this.warn("Levels were reset while fragment load was in progress. Fragment "+t.sn+" of level "+t.level+" will not be buffered");return}var b=f[t.level],R=b.details;if(!R){this.warn("Dropping fragment "+t.sn+" of level "+t.level+" after level details were reset");return}var I=b.videoCodec,k=R.PTSKnown||!R.live,F=(r=t.initSegment)===null||r===void 0?void 0:r.data,K=this._getAudioCodec(b),H=this.transmuxer=this.transmuxer||new _.default(this.hls,D.PlaylistLevelType.MAIN,this._handleTransmuxComplete.bind(this),this._handleTransmuxerFlush.bind(this)),j=s?s.index:-1,Y=j!==-1,Q=new S.ChunkMetadata(t.level,t.sn,t.stats.chunkCount,y.byteLength,j,Y),q=this.initPTS[t.cc];H.push(y,F,K,I,t,s,R.totalduration,k,Q,q)},c.onAudioTrackSwitching=function(e,r){var t=this.altAudio,s=!!r.url,y=r.id;if(!s){if(this.mediaBuffer!==this.media){this.log("Switching on main audio, use media.buffered to schedule main fragment loading"),this.mediaBuffer=this.media;var f=this.fragCurrent;f&&(this.log("Switching to main audio track, cancel main fragment load"),f.abortRequests()),this.resetTransmuxer(),this.resetLoadingState()}else this.audioOnly&&this.resetTransmuxer();var b=this.hls;t&&b.trigger(P.Events.BUFFER_FLUSHING,{startOffset:0,endOffset:Number.POSITIVE_INFINITY,type:"audio"}),b.trigger(P.Events.AUDIO_TRACK_SWITCHED,{id:y})}},c.onAudioTrackSwitched=function(e,r){var t=r.id,s=!!this.hls.audioTracks[t].url;if(s){var y=this.videoBuffer;y&&this.mediaBuffer!==y&&(this.log("Switching on alternate audio, use video.buffered to schedule main fragment loading"),this.mediaBuffer=y)}this.altAudio=s,this.tick()},c.onBufferCreated=function(e,r){var t=r.tracks,s,y,f=!1;for(var b in t){var R=t[b];if(R.id==="main"){if(y=b,s=R,b==="video"){var I=t[b];I&&(this.videoBuffer=I.buffer)}}else f=!0}f&&s?(this.log("Alternate track found, use "+y+".buffered to schedule main fragment loading"),this.mediaBuffer=s.buffer):this.mediaBuffer=this.media},c.onFragBuffered=function(e,r){var t=r.frag,s=r.part;if(!(t&&t.type!==D.PlaylistLevelType.MAIN)){if(this.fragContextChanged(t)){this.warn("Fragment "+t.sn+(s?" p: "+s.index:"")+" of level "+t.level+" finished buffering, but was aborted. state: "+this.state),this.state===L.State.PARSED&&(this.state=L.State.IDLE);return}var y=s?s.stats:t.stats;this.fragLastKbps=Math.round(8*y.total/(y.buffering.end-y.loading.first)),t.sn!=="initSegment"&&(this.fragPrevious=t),this.fragBufferedComplete(t,s)}},c.onError=function(e,r){if(r.type===E.ErrorTypes.KEY_SYSTEM_ERROR){this.onFragmentOrKeyLoadError(D.PlaylistLevelType.MAIN,r);return}switch(r.details){case E.ErrorDetails.FRAG_LOAD_ERROR:case E.ErrorDetails.FRAG_LOAD_TIMEOUT:case E.ErrorDetails.FRAG_PARSING_ERROR:case E.ErrorDetails.KEY_LOAD_ERROR:case E.ErrorDetails.KEY_LOAD_TIMEOUT:this.onFragmentOrKeyLoadError(D.PlaylistLevelType.MAIN,r);break;case E.ErrorDetails.LEVEL_LOAD_ERROR:case E.ErrorDetails.LEVEL_LOAD_TIMEOUT:this.state!==L.State.ERROR&&(r.fatal?(this.warn(""+r.details),this.state=L.State.ERROR):!r.levelRetry&&this.state===L.State.WAITING_LEVEL&&(this.state=L.State.IDLE));break;case E.ErrorDetails.BUFFER_FULL_ERROR:if(r.parent==="main"&&(this.state===L.State.PARSING||this.state===L.State.PARSED)){var t=!0,s=this.getFwdBufferInfo(this.media,D.PlaylistLevelType.MAIN);s&&s.len>.5&&(t=!this.reduceMaxBufferLength(s.len)),t&&(this.warn("buffer full error also media.currentTime is not buffered, flush main"),this.immediateLevelSwitch()),this.resetLoadingState()}break;default:break}},c.checkBuffer=function(){var e=this.media,r=this.gapController;if(!(!e||!r||!e.readyState)){if(this.loadedmetadata||!B.BufferHelper.getBuffered(e).length){var t=this.state!==L.State.IDLE?this.fragCurrent:null;r.poll(this.lastCurrentTime,t)}this.lastCurrentTime=e.currentTime}},c.onFragLoadEmergencyAborted=function(){this.state=L.State.IDLE,this.loadedmetadata||(this.startFragRequested=!1,this.nextLoadPosition=this.startPosition),this.tickImmediate()},c.onBufferFlushed=function(e,r){var t=r.type;if(t!==x.ElementaryStreamTypes.AUDIO||this.audioOnly&&!this.altAudio){var s=(t===x.ElementaryStreamTypes.VIDEO?this.videoBuffer:this.mediaBuffer)||this.media;this.afterBufferFlushed(s,t,D.PlaylistLevelType.MAIN)}},c.onLevelsUpdated=function(e,r){this.levels=r.levels},c.swapAudioCodec=function(){this.audioCodecSwap=!this.audioCodecSwap},c.seekToStartPos=function(){var e=this.media;if(!!e){var r=e.currentTime,t=this.startPosition;if(t>=0&&r<t){if(e.seeking){this.log("could not seek to "+t+", already seeking at "+r);return}var s=B.BufferHelper.getBuffered(e),y=s.length?s.start(0):0,f=y-t;f>0&&(f<this.config.maxBufferHole||f<this.config.maxFragLookUpTolerance)&&(this.log("adjusting start position by "+f+" to match buffer start"),t+=f,this.startPosition=t),this.log("seek to target start position "+t+" from current time "+r),e.currentTime=t}}},c._getAudioCodec=function(e){var r=this.config.defaultAudioCodec||e.audioCodec;return this.audioCodecSwap&&r&&(this.log("Swapping audio codec"),r.indexOf("mp4a.40.5")!==-1?r="mp4a.40.2":r="mp4a.40.5"),r},c._loadBitrateTestFrag=function(e,r){var t=this;e.bitrateTest=!0,this._doFragLoad(e,r).then(function(s){var y=t.hls;if(!(!s||y.nextLoadLevel||t.fragContextChanged(e))){t.fragLoadError=0,t.state=L.State.IDLE,t.startFragRequested=!1,t.bitrateTest=!1;var f=e.stats;f.parsing.start=f.parsing.end=f.buffering.start=f.buffering.end=self.performance.now(),y.trigger(P.Events.FRAG_LOADED,s),e.bitrateTest=!1}})},c._handleTransmuxComplete=function(e){var r,t="main",s=this.hls,y=e.remuxResult,f=e.chunkMeta,b=this.getCurrentContext(f);if(!b){this.warn("The loading context changed while buffering fragment "+f.sn+" of level "+f.level+". This chunk will not be buffered."),this.resetStartWhenNotLoaded(f.level);return}var R=b.frag,I=b.part,k=b.level,F=y.video,K=y.text,H=y.id3,j=y.initSegment,Y=k.details,Q=this.altAudio?void 0:y.audio;if(!this.fragContextChanged(R)){if(this.state=L.State.PARSING,j){j.tracks&&(this._bufferInitSegment(k,j.tracks,R,f),s.trigger(P.Events.FRAG_PARSING_INIT_SEGMENT,{frag:R,id:t,tracks:j.tracks}));var q=j.initPTS,ne=j.timescale;(0,C.isFiniteNumber)(q)&&(this.initPTS[R.cc]=q,s.trigger(P.Events.INIT_PTS_FOUND,{frag:R,id:t,initPTS:q,timescale:ne}))}if(F&&y.independent!==!1){if(Y){var te=F.startPTS,ae=F.endPTS,ue=F.startDTS,ce=F.endDTS;if(I)I.elementaryStreams[F.type]={startPTS:te,endPTS:ae,startDTS:ue,endDTS:ce};else if(F.firstKeyFrame&&F.independent&&f.id===1&&(this.couldBacktrack=!0),F.dropped&&F.independent){var le=this.getMainFwdBufferInfo(),fe=(le?le.end:this.getLoadPosition())+this.config.maxBufferHole,de=F.firstKeyFramePTS?F.firstKeyFramePTS:te;if(fe<de-this.config.maxBufferHole){this.backtrack(R);return}R.setElementaryStreamInfo(F.type,R.start,ae,R.start,ce,!0)}R.setElementaryStreamInfo(F.type,te,ae,ue,ce),this.backtrackFragment&&(this.backtrackFragment=R),this.bufferFragmentData(F,R,I,f)}}else if(y.independent===!1){this.backtrack(R);return}if(Q){var xe=Q.startPTS,Ae=Q.endPTS,Ie=Q.startDTS,Re=Q.endDTS;I&&(I.elementaryStreams[x.ElementaryStreamTypes.AUDIO]={startPTS:xe,endPTS:Ae,startDTS:Ie,endDTS:Re}),R.setElementaryStreamInfo(x.ElementaryStreamTypes.AUDIO,xe,Ae,Ie,Re),this.bufferFragmentData(Q,R,I,f)}if(Y&&H!==null&&H!==void 0&&(r=H.samples)!==null&&r!==void 0&&r.length){var Oe={id:t,frag:R,details:Y,samples:H.samples};s.trigger(P.Events.FRAG_PARSING_METADATA,Oe)}if(Y&&K){var Pe={id:t,frag:R,details:Y,samples:K.samples};s.trigger(P.Events.FRAG_PARSING_USERDATA,Pe)}}},c._bufferInitSegment=function(e,r,t,s){var y=this;if(this.state===L.State.PARSING){this.audioOnly=!!r.audio&&!r.video,this.altAudio&&!this.audioOnly&&delete r.audio;var f=r.audio,b=r.video,R=r.audiovideo;if(f){var I=e.audioCodec,k=navigator.userAgent.toLowerCase();this.audioCodecSwitch&&(I&&(I.indexOf("mp4a.40.5")!==-1?I="mp4a.40.2":I="mp4a.40.5"),f.metadata.channelCount!==1&&k.indexOf("firefox")===-1&&(I="mp4a.40.5")),k.indexOf("android")!==-1&&f.container!=="audio/mpeg"&&(I="mp4a.40.2",this.log("Android: force audio codec to "+I)),e.audioCodec&&e.audioCodec!==I&&this.log('Swapping manifest audio codec "'+e.audioCodec+'" for "'+I+'"'),f.levelCodec=I,f.id="main",this.log("Init audio buffer, container:"+f.container+", codecs[selected/level/parsed]=["+(I||"")+"/"+(e.audioCodec||"")+"/"+f.codec+"]")}b&&(b.levelCodec=e.videoCodec,b.id="main",this.log("Init video buffer, container:"+b.container+", codecs[level/parsed]=["+(e.videoCodec||"")+"/"+b.codec+"]")),R&&this.log("Init audiovideo buffer, container:"+R.container+", codecs[level/parsed]=["+(e.attrs.CODECS||"")+"/"+R.codec+"]"),this.hls.trigger(P.Events.BUFFER_CODECS,r),Object.keys(r).forEach(function(F){var K=r[F],H=K.initSegment;H!=null&&H.byteLength&&y.hls.trigger(P.Events.BUFFER_APPENDING,{type:F,data:H,frag:t,part:null,chunkMeta:s,parent:t.type})}),this.tick()}},c.getMainFwdBufferInfo=function(){return this.getFwdBufferInfo(this.mediaBuffer?this.mediaBuffer:this.media,D.PlaylistLevelType.MAIN)},c.backtrack=function(e){this.couldBacktrack=!0,this.backtrackFragment=e,this.resetTransmuxer(),this.flushBufferGap(e),this.fragmentTracker.removeFragment(e),this.fragPrevious=null,this.nextLoadPosition=e.start,this.state=L.State.IDLE},c.checkFragmentChanged=function(){var e=this.media,r=null;if(e&&e.readyState>1&&e.seeking===!1){var t=e.currentTime;if(B.BufferHelper.isBuffered(e,t)?r=this.getAppendedFrag(t):B.BufferHelper.isBuffered(e,t+.1)&&(r=this.getAppendedFrag(t+.1)),r){this.backtrackFragment=null;var s=this.fragPlaying,y=r.level;(!s||r.sn!==s.sn||s.level!==y||r.urlId!==s.urlId)&&(this.fragPlaying=r,this.hls.trigger(P.Events.FRAG_CHANGED,{frag:r}),(!s||s.level!==y)&&this.hls.trigger(P.Events.LEVEL_SWITCHED,{level:y}))}}},h(g,[{key:"nextLevel",get:function(){var e=this.nextBufferedFrag;return e?e.level:-1}},{key:"currentFrag",get:function(){var e=this.media;return e?this.fragPlaying||this.getAppendedFrag(e.currentTime):null}},{key:"currentProgramDateTime",get:function(){var e=this.media;if(e){var r=e.currentTime,t=this.currentFrag;if(t&&(0,C.isFiniteNumber)(r)&&(0,C.isFiniteNumber)(t.programDateTime)){var s=t.programDateTime+(r-t.start)*1e3;return new Date(s)}}return null}},{key:"currentLevel",get:function(){var e=this.currentFrag;return e?e.level:-1}},{key:"nextBufferedFrag",get:function(){var e=this.currentFrag;return e?this.followingBufferedFrag(e):null}},{key:"forceStartLoad",get:function(){return this._forceStartLoad}}]),g}(L.default)},"./src/controller/subtitle-stream-controller.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{SubtitleStreamController:()=>n});var C=T("./src/events.ts"),L=T("./src/utils/buffer-helper.ts"),M=T("./src/controller/fragment-finders.ts"),P=T("./src/utils/discontinuities.ts"),B=T("./src/controller/level-helper.ts"),A=T("./src/controller/fragment-tracker.ts"),D=T("./src/controller/base-stream-controller.ts"),x=T("./src/types/loader.ts"),_=T("./src/types/level.ts");function S(l,i){for(var u=0;u<i.length;u++){var g=i[u];g.enumerable=g.enumerable||!1,g.configurable=!0,"value"in g&&(g.writable=!0),Object.defineProperty(l,E(g.key),g)}}function d(l,i,u){return i&&S(l.prototype,i),u&&S(l,u),Object.defineProperty(l,"prototype",{writable:!1}),l}function E(l){var i=p(l,"string");return typeof i=="symbol"?i:String(i)}function p(l,i){if(typeof l!="object"||l===null)return l;var u=l[Symbol.toPrimitive];if(u!==void 0){var g=u.call(l,i||"default");if(typeof g!="object")return g;throw new TypeError("@@toPrimitive must return a primitive value.")}return(i==="string"?String:Number)(l)}function h(l,i){l.prototype=Object.create(i.prototype),l.prototype.constructor=l,a(l,i)}function a(l,i){return a=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(g,c){return g.__proto__=c,g},a(l,i)}var o=500,n=function(l){h(i,l);function i(g,c,m){var e;return e=l.call(this,g,c,m,"[subtitle-stream-controller]")||this,e.levels=[],e.currentTrackId=-1,e.tracksBuffered=[],e.mainDetails=null,e._registerListeners(),e}var u=i.prototype;return u.onHandlerDestroying=function(){this._unregisterListeners(),this.mainDetails=null},u._registerListeners=function(){var c=this.hls;c.on(C.Events.MEDIA_ATTACHED,this.onMediaAttached,this),c.on(C.Events.MEDIA_DETACHING,this.onMediaDetaching,this),c.on(C.Events.MANIFEST_LOADING,this.onManifestLoading,this),c.on(C.Events.LEVEL_LOADED,this.onLevelLoaded,this),c.on(C.Events.ERROR,this.onError,this),c.on(C.Events.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),c.on(C.Events.SUBTITLE_TRACK_SWITCH,this.onSubtitleTrackSwitch,this),c.on(C.Events.SUBTITLE_TRACK_LOADED,this.onSubtitleTrackLoaded,this),c.on(C.Events.SUBTITLE_FRAG_PROCESSED,this.onSubtitleFragProcessed,this),c.on(C.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),c.on(C.Events.FRAG_BUFFERED,this.onFragBuffered,this)},u._unregisterListeners=function(){var c=this.hls;c.off(C.Events.MEDIA_ATTACHED,this.onMediaAttached,this),c.off(C.Events.MEDIA_DETACHING,this.onMediaDetaching,this),c.off(C.Events.MANIFEST_LOADING,this.onManifestLoading,this),c.off(C.Events.LEVEL_LOADED,this.onLevelLoaded,this),c.off(C.Events.ERROR,this.onError,this),c.off(C.Events.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),c.off(C.Events.SUBTITLE_TRACK_SWITCH,this.onSubtitleTrackSwitch,this),c.off(C.Events.SUBTITLE_TRACK_LOADED,this.onSubtitleTrackLoaded,this),c.off(C.Events.SUBTITLE_FRAG_PROCESSED,this.onSubtitleFragProcessed,this),c.off(C.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),c.off(C.Events.FRAG_BUFFERED,this.onFragBuffered,this)},u.startLoad=function(c){this.stopLoad(),this.state=D.State.IDLE,this.setInterval(o),this.nextLoadPosition=this.startPosition=this.lastCurrentTime=c,this.tick()},u.onManifestLoading=function(){this.mainDetails=null,this.fragmentTracker.removeAllFragments()},u.onLevelLoaded=function(c,m){this.mainDetails=m.details},u.onSubtitleFragProcessed=function(c,m){var e=m.frag,r=m.success;if(this.fragPrevious=e,this.state=D.State.IDLE,!!r){var t=this.tracksBuffered[this.currentTrackId];if(!!t){for(var s,y=e.start,f=0;f<t.length;f++)if(y>=t[f].start&&y<=t[f].end){s=t[f];break}var b=e.start+e.duration;s?s.end=b:(s={start:y,end:b},t.push(s)),this.fragmentTracker.fragBuffered(e)}}},u.onBufferFlushing=function(c,m){var e=m.startOffset,r=m.endOffset;if(e===0&&r!==Number.POSITIVE_INFINITY){var t=this.currentTrackId,s=this.levels;if(!s.length||!s[t]||!s[t].details)return;var y=s[t].details,f=y.targetduration,b=r-f;if(b<=0)return;m.endOffsetSubtitles=Math.max(0,b),this.tracksBuffered.forEach(function(R){for(var I=0;I<R.length;){if(R[I].end<=b){R.shift();continue}else if(R[I].start<b)R[I].start=b;else break;I++}}),this.fragmentTracker.removeFragmentsInRange(e,b,x.PlaylistLevelType.SUBTITLE)}},u.onFragBuffered=function(c,m){if(!this.loadedmetadata&&m.frag.type===x.PlaylistLevelType.MAIN){var e;(e=this.media)!==null&&e!==void 0&&e.buffered.length&&(this.loadedmetadata=!0)}},u.onError=function(c,m){var e=m.frag;!e||e.type!==x.PlaylistLevelType.SUBTITLE||(this.fragCurrent&&this.fragCurrent.abortRequests(),this.state=D.State.IDLE)},u.onSubtitleTracksUpdated=function(c,m){var e=this,r=m.subtitleTracks;this.tracksBuffered=[],this.levels=r.map(function(t){return new _.Level(t)}),this.fragmentTracker.removeAllFragments(),this.fragPrevious=null,this.levels.forEach(function(t){e.tracksBuffered[t.id]=[]}),this.mediaBuffer=null},u.onSubtitleTrackSwitch=function(c,m){if(this.currentTrackId=m.id,!this.levels.length||this.currentTrackId===-1){this.clearInterval();return}var e=this.levels[this.currentTrackId];e!=null&&e.details?this.mediaBuffer=this.mediaBufferTimeRanges:this.mediaBuffer=null,e&&this.setInterval(o)},u.onSubtitleTrackLoaded=function(c,m){var e,r=m.details,t=m.id,s=this.currentTrackId,y=this.levels;if(!!y.length){var f=y[s];if(!(t>=y.length||t!==s||!f)){this.mediaBuffer=this.mediaBufferTimeRanges;var b=0;if(r.live||(e=f.details)!==null&&e!==void 0&&e.live){var R=this.mainDetails;if(r.deltaUpdateFailed||!R)return;var I=R.fragments[0];f.details?(b=this.alignPlaylists(r,f.details),b===0&&I&&(b=I.start,(0,B.addSliding)(r,b))):r.hasProgramDateTime&&R.hasProgramDateTime?((0,P.alignMediaPlaylistByPDT)(r,R),b=r.fragments[0].start):I&&(b=I.start,(0,B.addSliding)(r,b))}if(f.details=r,this.levelLastLoaded=t,!this.startFragRequested&&(this.mainDetails||!r.live)&&this.setStartPosition(f.details,b),this.tick(),r.live&&!this.fragCurrent&&this.media&&this.state===D.State.IDLE){var k=(0,M.findFragmentByPTS)(null,r.fragments,this.media.currentTime,0);k||(this.warn("Subtitle playlist not aligned with playback"),f.details=void 0)}}}},u._handleFragmentLoadComplete=function(c){var m=this,e=c.frag,r=c.payload,t=e.decryptdata,s=this.hls;if(!this.fragContextChanged(e)&&r&&r.byteLength>0&&t&&t.key&&t.iv&&t.method==="AES-128"){var y=performance.now();this.decrypter.decrypt(new Uint8Array(r),t.key.buffer,t.iv.buffer).then(function(f){var b=performance.now();s.trigger(C.Events.FRAG_DECRYPTED,{frag:e,payload:f,stats:{tstart:y,tdecrypt:b}})}).catch(function(f){m.warn(f.name+": "+f.message),m.state=D.State.IDLE})}},u.doTick=function(){if(!this.media){this.state=D.State.IDLE;return}if(this.state===D.State.IDLE){var c=this.currentTrackId,m=this.levels;if(!m.length||!m[c]||!m[c].details)return;var e=m[c].details,r=e.targetduration,t=this.config,s=this.getLoadPosition(),y=L.BufferHelper.bufferedInfo(this.tracksBuffered[this.currentTrackId]||[],s-r,t.maxBufferHole),f=y.end,b=y.len,R=this.getFwdBufferInfo(this.media,x.PlaylistLevelType.MAIN),I=this.getMaxBufferLength(R==null?void 0:R.len)+r;if(b>I)return;console.assert(e,"Subtitle track details are defined on idle subtitle stream controller tick");var k=e.fragments,F=k.length,K=e.edge,H=null,j=this.fragPrevious;if(f<K){var Y=t.maxFragLookUpTolerance;H=(0,M.findFragmentByPTS)(j,k,Math.max(k[0].start,f),Y),!H&&j&&j.start<k[0].start&&(H=k[0])}else H=k[F-1];if(!H)return;H=this.mapToInitFragWhenRequired(H),this.fragmentTracker.getState(H)===A.FragmentState.NOT_LOADED&&this.loadFragment(H,e,f)}},u.getMaxBufferLength=function(c){var m=l.prototype.getMaxBufferLength.call(this);return c?Math.max(m,c):m},u.loadFragment=function(c,m,e){this.fragCurrent=c,c.sn==="initSegment"?this._loadInitSegment(c,m):(this.startFragRequested=!0,l.prototype.loadFragment.call(this,c,m,e))},d(i,[{key:"mediaBufferTimeRanges",get:function(){return new v(this.tracksBuffered[this.currentTrackId]||[])}}]),i}(D.default),v=function(i){this.buffered=void 0;var u=function(c,m,e){if(m=m>>>0,m>e-1)throw new DOMException("Failed to execute '"+c+"' on 'TimeRanges': The index provided ("+m+") is greater than the maximum bound ("+e+")");return i[m][c]};this.buffered={get length(){return i.length},end:function(c){return u("end",c,i.length)},start:function(c){return u("start",c,i.length)}}}},"./src/controller/subtitle-track-controller.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>p});var C=T("./src/events.ts"),L=T("./src/utils/texttrack-utils.ts"),M=T("./src/controller/base-playlist-controller.ts"),P=T("./src/types/loader.ts");function B(h,a){for(var o=0;o<a.length;o++){var n=a[o];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(h,D(n.key),n)}}function A(h,a,o){return a&&B(h.prototype,a),o&&B(h,o),Object.defineProperty(h,"prototype",{writable:!1}),h}function D(h){var a=x(h,"string");return typeof a=="symbol"?a:String(a)}function x(h,a){if(typeof h!="object"||h===null)return h;var o=h[Symbol.toPrimitive];if(o!==void 0){var n=o.call(h,a||"default");if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(a==="string"?String:Number)(h)}function _(h,a){h.prototype=Object.create(a.prototype),h.prototype.constructor=h,S(h,a)}function S(h,a){return S=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(n,v){return n.__proto__=v,n},S(h,a)}var d=function(h){_(a,h);function a(n){var v;return v=h.call(this,n,"[subtitle-track-controller]")||this,v.media=null,v.tracks=[],v.groupId=null,v.tracksInGroup=[],v.trackId=-1,v.selectDefaultTrack=!0,v.queuedDefaultTrack=-1,v.trackChangeListener=function(){return v.onTextTracksChanged()},v.asyncPollTrackChange=function(){return v.pollTrackChange(0)},v.useTextTrackPolling=!1,v.subtitlePollingInterval=-1,v._subtitleDisplay=!0,v.registerListeners(),v}var o=a.prototype;return o.destroy=function(){this.unregisterListeners(),this.tracks.length=0,this.tracksInGroup.length=0,this.trackChangeListener=this.asyncPollTrackChange=null,h.prototype.destroy.call(this)},o.registerListeners=function(){var v=this.hls;v.on(C.Events.MEDIA_ATTACHED,this.onMediaAttached,this),v.on(C.Events.MEDIA_DETACHING,this.onMediaDetaching,this),v.on(C.Events.MANIFEST_LOADING,this.onManifestLoading,this),v.on(C.Events.MANIFEST_PARSED,this.onManifestParsed,this),v.on(C.Events.LEVEL_LOADING,this.onLevelLoading,this),v.on(C.Events.LEVEL_SWITCHING,this.onLevelSwitching,this),v.on(C.Events.SUBTITLE_TRACK_LOADED,this.onSubtitleTrackLoaded,this),v.on(C.Events.ERROR,this.onError,this)},o.unregisterListeners=function(){var v=this.hls;v.off(C.Events.MEDIA_ATTACHED,this.onMediaAttached,this),v.off(C.Events.MEDIA_DETACHING,this.onMediaDetaching,this),v.off(C.Events.MANIFEST_LOADING,this.onManifestLoading,this),v.off(C.Events.MANIFEST_PARSED,this.onManifestParsed,this),v.off(C.Events.LEVEL_LOADING,this.onLevelLoading,this),v.off(C.Events.LEVEL_SWITCHING,this.onLevelSwitching,this),v.off(C.Events.SUBTITLE_TRACK_LOADED,this.onSubtitleTrackLoaded,this),v.off(C.Events.ERROR,this.onError,this)},o.onMediaAttached=function(v,l){this.media=l.media,this.media&&(this.queuedDefaultTrack>-1&&(this.subtitleTrack=this.queuedDefaultTrack,this.queuedDefaultTrack=-1),this.useTextTrackPolling=!(this.media.textTracks&&"onchange"in this.media.textTracks),this.useTextTrackPolling?this.pollTrackChange(500):this.media.textTracks.addEventListener("change",this.asyncPollTrackChange))},o.pollTrackChange=function(v){self.clearInterval(this.subtitlePollingInterval),this.subtitlePollingInterval=self.setInterval(this.trackChangeListener,v)},o.onMediaDetaching=function(){if(!!this.media){self.clearInterval(this.subtitlePollingInterval),this.useTextTrackPolling||this.media.textTracks.removeEventListener("change",this.asyncPollTrackChange),this.trackId>-1&&(this.queuedDefaultTrack=this.trackId);var v=E(this.media.textTracks);v.forEach(function(l){(0,L.clearCurrentCues)(l)}),this.subtitleTrack=-1,this.media=null}},o.onManifestLoading=function(){this.tracks=[],this.groupId=null,this.tracksInGroup=[],this.trackId=-1,this.selectDefaultTrack=!0},o.onManifestParsed=function(v,l){this.tracks=l.subtitleTracks},o.onSubtitleTrackLoaded=function(v,l){var i=l.id,u=l.details,g=this.trackId,c=this.tracksInGroup[g];if(!c){this.warn("Invalid subtitle track id "+i);return}var m=c.details;c.details=l.details,this.log("subtitle track "+i+" loaded ["+u.startSN+"-"+u.endSN+"]"),i===this.trackId&&(this.retryCount=0,this.playlistLoaded(i,l,m))},o.onLevelLoading=function(v,l){this.switchLevel(l.level)},o.onLevelSwitching=function(v,l){this.switchLevel(l.level)},o.switchLevel=function(v){var l=this.hls.levels[v];if(!!(l!=null&&l.textGroupIds)){var i=l.textGroupIds[l.urlId];if(this.groupId!==i){var u=this.tracksInGroup?this.tracksInGroup[this.trackId]:void 0,g=this.tracks.filter(function(e){return!i||e.groupId===i});this.tracksInGroup=g;var c=this.findTrackId(u==null?void 0:u.name)||this.findTrackId();this.groupId=i;var m={subtitleTracks:g};this.log("Updating subtitle tracks, "+g.length+' track(s) found in "'+i+'" group-id'),this.hls.trigger(C.Events.SUBTITLE_TRACKS_UPDATED,m),c!==-1&&this.setSubtitleTrack(c,u)}}},o.findTrackId=function(v){for(var l=this.tracksInGroup,i=0;i<l.length;i++){var u=l[i];if((!this.selectDefaultTrack||u.default)&&(!v||v===u.name))return u.id}return-1},o.onError=function(v,l){h.prototype.onError.call(this,v,l),!(l.fatal||!l.context)&&l.context.type===P.PlaylistContextType.SUBTITLE_TRACK&&l.context.id===this.trackId&&l.context.groupId===this.groupId&&this.retryLoadingOrFail(l)},o.loadPlaylist=function(v){h.prototype.loadPlaylist.call(this);var l=this.tracksInGroup[this.trackId];if(this.shouldLoadTrack(l)){var i=l.id,u=l.groupId,g=l.url;if(v)try{g=v.addDirectives(g)}catch(c){this.warn("Could not construct new URL with HLS Delivery Directives: "+c)}this.log("Loading subtitle playlist for id "+i),this.hls.trigger(C.Events.SUBTITLE_TRACK_LOADING,{url:g,id:i,groupId:u,deliveryDirectives:v||null})}},o.toggleTrackModes=function(v){var l=this,i=this.media,u=this.trackId;if(!!i){var g=E(i.textTracks),c=g.filter(function(r){return r.groupId===l.groupId});if(v===-1)[].slice.call(g).forEach(function(r){r.mode="disabled"});else{var m=c[u];m&&(m.mode="disabled")}var e=c[v];e&&(e.mode=this.subtitleDisplay?"showing":"hidden")}},o.setSubtitleTrack=function(v,l){var i,u=this.tracksInGroup;if(!this.media){this.queuedDefaultTrack=v;return}if(this.trackId!==v&&this.toggleTrackModes(v),!(this.trackId===v&&(v===-1||(i=u[v])!==null&&i!==void 0&&i.details)||v<-1||v>=u.length)){this.clearTimer();var g=u[v];if(this.log("Switching to subtitle track "+v),this.trackId=v,g){var c=g.id,m=g.groupId,e=m===void 0?"":m,r=g.name,t=g.type,s=g.url;this.hls.trigger(C.Events.SUBTITLE_TRACK_SWITCH,{id:c,groupId:e,name:r,type:t,url:s});var y=this.switchParams(g.url,l==null?void 0:l.details);this.loadPlaylist(y)}else this.hls.trigger(C.Events.SUBTITLE_TRACK_SWITCH,{id:v})}},o.onTextTracksChanged=function(){if(this.useTextTrackPolling||self.clearInterval(this.subtitlePollingInterval),!(!this.media||!this.hls.config.renderTextTracksNatively)){for(var v=-1,l=E(this.media.textTracks),i=0;i<l.length;i++)if(l[i].mode==="hidden")v=i;else if(l[i].mode==="showing"){v=i;break}this.subtitleTrack!==v&&(this.subtitleTrack=v)}},A(a,[{key:"subtitleDisplay",get:function(){return this._subtitleDisplay},set:function(v){this._subtitleDisplay=v,this.trackId>-1&&this.toggleTrackModes(this.trackId)}},{key:"subtitleTracks",get:function(){return this.tracksInGroup}},{key:"subtitleTrack",get:function(){return this.trackId},set:function(v){this.selectDefaultTrack=!1;var l=this.tracksInGroup?this.tracksInGroup[this.trackId]:void 0;this.setSubtitleTrack(v,l)}}]),a}(M.default);function E(h){for(var a=[],o=0;o<h.length;o++){var n=h[o];n.kind==="subtitles"&&n.label&&a.push(h[o])}return a}let p=d},"./src/controller/timeline-controller.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{TimelineController:()=>d});var C=T("./src/polyfills/number.ts"),L=T("./src/events.ts"),M=T("./src/utils/cea-608-parser.ts"),P=T("./src/utils/output-filter.ts"),B=T("./src/utils/webvtt-parser.ts"),A=T("./src/utils/texttrack-utils.ts"),D=T("./src/utils/imsc1-ttml-parser.ts"),x=T("./src/utils/mp4-tools.ts"),_=T("./src/types/loader.ts"),S=T("./src/utils/logger.ts"),d=function(){function a(n){if(this.hls=void 0,this.media=null,this.config=void 0,this.enabled=!0,this.Cues=void 0,this.textTracks=[],this.tracks=[],this.initPTS=[],this.timescale=[],this.unparsedVttFrags=[],this.captionsTracks={},this.nonNativeCaptionsTracks={},this.cea608Parser1=void 0,this.cea608Parser2=void 0,this.lastSn=-1,this.lastPartIndex=-1,this.prevCC=-1,this.vttCCs=h(),this.captionsProperties=void 0,this.hls=n,this.config=n.config,this.Cues=n.config.cueHandler,this.captionsProperties={textTrack1:{label:this.config.captionsTextTrack1Label,languageCode:this.config.captionsTextTrack1LanguageCode},textTrack2:{label:this.config.captionsTextTrack2Label,languageCode:this.config.captionsTextTrack2LanguageCode},textTrack3:{label:this.config.captionsTextTrack3Label,languageCode:this.config.captionsTextTrack3LanguageCode},textTrack4:{label:this.config.captionsTextTrack4Label,languageCode:this.config.captionsTextTrack4LanguageCode}},this.config.enableCEA708Captions){var v=new P.default(this,"textTrack1"),l=new P.default(this,"textTrack2"),i=new P.default(this,"textTrack3"),u=new P.default(this,"textTrack4");this.cea608Parser1=new M.default(1,v,l),this.cea608Parser2=new M.default(3,i,u)}n.on(L.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),n.on(L.Events.MEDIA_DETACHING,this.onMediaDetaching,this),n.on(L.Events.MANIFEST_LOADING,this.onManifestLoading,this),n.on(L.Events.MANIFEST_LOADED,this.onManifestLoaded,this),n.on(L.Events.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),n.on(L.Events.FRAG_LOADING,this.onFragLoading,this),n.on(L.Events.FRAG_LOADED,this.onFragLoaded,this),n.on(L.Events.FRAG_PARSING_USERDATA,this.onFragParsingUserdata,this),n.on(L.Events.FRAG_DECRYPTED,this.onFragDecrypted,this),n.on(L.Events.INIT_PTS_FOUND,this.onInitPtsFound,this),n.on(L.Events.SUBTITLE_TRACKS_CLEARED,this.onSubtitleTracksCleared,this),n.on(L.Events.BUFFER_FLUSHING,this.onBufferFlushing,this)}var o=a.prototype;return o.destroy=function(){var v=this.hls;v.off(L.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),v.off(L.Events.MEDIA_DETACHING,this.onMediaDetaching,this),v.off(L.Events.MANIFEST_LOADING,this.onManifestLoading,this),v.off(L.Events.MANIFEST_LOADED,this.onManifestLoaded,this),v.off(L.Events.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),v.off(L.Events.FRAG_LOADING,this.onFragLoading,this),v.off(L.Events.FRAG_LOADED,this.onFragLoaded,this),v.off(L.Events.FRAG_PARSING_USERDATA,this.onFragParsingUserdata,this),v.off(L.Events.FRAG_DECRYPTED,this.onFragDecrypted,this),v.off(L.Events.INIT_PTS_FOUND,this.onInitPtsFound,this),v.off(L.Events.SUBTITLE_TRACKS_CLEARED,this.onSubtitleTracksCleared,this),v.off(L.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),this.hls=this.config=this.cea608Parser1=this.cea608Parser2=null},o.addCues=function(v,l,i,u,g){for(var c=!1,m=g.length;m--;){var e=g[m],r=p(e[0],e[1],l,i);if(r>=0&&(e[0]=Math.min(e[0],l),e[1]=Math.max(e[1],i),c=!0,r/(i-l)>.5))return}if(c||g.push([l,i]),this.config.renderTextTracksNatively){var t=this.captionsTracks[v];this.Cues.newCue(t,l,i,u)}else{var s=this.Cues.newCue(null,l,i,u);this.hls.trigger(L.Events.CUES_PARSED,{type:"captions",cues:s,track:v})}},o.onInitPtsFound=function(v,l){var i=this,u=l.frag,g=l.id,c=l.initPTS,m=l.timescale,e=this.unparsedVttFrags;g==="main"&&(this.initPTS[u.cc]=c,this.timescale[u.cc]=m),e.length&&(this.unparsedVttFrags=[],e.forEach(function(r){i.onFragLoaded(L.Events.FRAG_LOADED,r)}))},o.getExistingTrack=function(v){var l=this.media;if(l)for(var i=0;i<l.textTracks.length;i++){var u=l.textTracks[i];if(u[v])return u}return null},o.createCaptionsTrack=function(v){this.config.renderTextTracksNatively?this.createNativeTrack(v):this.createNonNativeTrack(v)},o.createNativeTrack=function(v){if(!this.captionsTracks[v]){var l=this.captionsProperties,i=this.captionsTracks,u=this.media,g=l[v],c=g.label,m=g.languageCode,e=this.getExistingTrack(v);if(e)i[v]=e,(0,A.clearCurrentCues)(i[v]),(0,A.sendAddTrackEvent)(i[v],u);else{var r=this.createTextTrack("captions",c,m);r&&(r[v]=!0,i[v]=r)}}},o.createNonNativeTrack=function(v){if(!this.nonNativeCaptionsTracks[v]){var l=this.captionsProperties[v];if(!!l){var i=l.label,u={_id:v,label:i,kind:"captions",default:l.media?!!l.media.default:!1,closedCaptions:l.media};this.nonNativeCaptionsTracks[v]=u,this.hls.trigger(L.Events.NON_NATIVE_TEXT_TRACKS_FOUND,{tracks:[u]})}}},o.createTextTrack=function(v,l,i){var u=this.media;if(!!u)return u.addTextTrack(v,l,i)},o.onMediaAttaching=function(v,l){this.media=l.media,this._cleanTracks()},o.onMediaDetaching=function(){var v=this.captionsTracks;Object.keys(v).forEach(function(l){(0,A.clearCurrentCues)(v[l]),delete v[l]}),this.nonNativeCaptionsTracks={}},o.onManifestLoading=function(){this.lastSn=-1,this.lastPartIndex=-1,this.prevCC=-1,this.vttCCs=h(),this._cleanTracks(),this.tracks=[],this.captionsTracks={},this.nonNativeCaptionsTracks={},this.textTracks=[],this.unparsedVttFrags=this.unparsedVttFrags||[],this.initPTS=[],this.timescale=[],this.cea608Parser1&&this.cea608Parser2&&(this.cea608Parser1.reset(),this.cea608Parser2.reset())},o._cleanTracks=function(){var v=this.media;if(!!v){var l=v.textTracks;if(l)for(var i=0;i<l.length;i++)(0,A.clearCurrentCues)(l[i])}},o.onSubtitleTracksUpdated=function(v,l){var i=this;this.textTracks=[];var u=l.subtitleTracks||[],g=u.some(function(r){return r.textCodec===D.IMSC1_CODEC});if(this.config.enableWebVTT||g&&this.config.enableIMSC1){var c=this.tracks&&u&&this.tracks.length===u.length;if(this.tracks=u||[],this.config.renderTextTracksNatively){var m=this.media?this.media.textTracks:[];this.tracks.forEach(function(r,t){var s;if(t<m.length){for(var y=null,f=0;f<m.length;f++)if(E(m[f],r)){y=m[f];break}y&&(s=y)}if(s)(0,A.clearCurrentCues)(s);else{var b=i._captionsOrSubtitlesFromCharacteristics(r);s=i.createTextTrack(b,r.name,r.lang),s&&(s.mode="disabled")}s&&(s.groupId=r.groupId,i.textTracks.push(s))})}else if(!c&&this.tracks&&this.tracks.length){var e=this.tracks.map(function(r){return{label:r.name,kind:r.type.toLowerCase(),default:r.default,subtitleTrack:r}});this.hls.trigger(L.Events.NON_NATIVE_TEXT_TRACKS_FOUND,{tracks:e})}}},o._captionsOrSubtitlesFromCharacteristics=function(v){var l;if((l=v.attrs)!==null&&l!==void 0&&l.CHARACTERISTICS){var i=/transcribes-spoken-dialog/gi.test(v.attrs.CHARACTERISTICS),u=/describes-music-and-sound/gi.test(v.attrs.CHARACTERISTICS);if(i&&u)return"captions"}return"subtitles"},o.onManifestLoaded=function(v,l){var i=this;this.config.enableCEA708Captions&&l.captions&&l.captions.forEach(function(u){var g=/(?:CC|SERVICE)([1-4])/.exec(u.instreamId);if(!!g){var c="textTrack"+g[1],m=i.captionsProperties[c];!m||(m.label=u.name,u.lang&&(m.languageCode=u.lang),m.media=u)}})},o.closedCaptionsForLevel=function(v){var l=this.hls.levels[v.level];return l==null?void 0:l.attrs["CLOSED-CAPTIONS"]},o.onFragLoading=function(v,l){var i=this.cea608Parser1,u=this.cea608Parser2,g=this.lastSn,c=this.lastPartIndex;if(!(!this.enabled||!(i&&u))&&l.frag.type===_.PlaylistLevelType.MAIN){var m,e,r=l.frag.sn,t=(m=l==null||(e=l.part)===null||e===void 0?void 0:e.index)!=null?m:-1;r===g+1||r===g&&t===c+1||(i.reset(),u.reset()),this.lastSn=r,this.lastPartIndex=t}},o.onFragLoaded=function(v,l){var i=l.frag,u=l.payload,g=this.initPTS,c=this.unparsedVttFrags;if(i.type===_.PlaylistLevelType.SUBTITLE)if(u.byteLength){if(!(0,C.isFiniteNumber)(g[i.cc])){c.push(l),g.length&&this.hls.trigger(L.Events.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:i,error:new Error("Missing initial subtitle PTS")});return}var m=i.decryptdata,e="stats"in l;if(m==null||!m.encrypted||e){var r=this.tracks[i.level],t=this.vttCCs;t[i.cc]||(t[i.cc]={start:i.start,prevCC:this.prevCC,new:!0},this.prevCC=i.cc),r&&r.textCodec===D.IMSC1_CODEC?this._parseIMSC1(i,u):this._parseVTTs(i,u,t)}}else this.hls.trigger(L.Events.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:i,error:new Error("Empty subtitle payload")})},o._parseIMSC1=function(v,l){var i=this,u=this.hls;(0,D.parseIMSC1)(l,this.initPTS[v.cc],this.timescale[v.cc],function(g){i._appendCues(g,v.level),u.trigger(L.Events.SUBTITLE_FRAG_PROCESSED,{success:!0,frag:v})},function(g){S.logger.log("Failed to parse IMSC1: "+g),u.trigger(L.Events.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:v,error:g})})},o._parseVTTs=function(v,l,i){var u,g=this,c=this.hls,m=(u=v.initSegment)!==null&&u!==void 0&&u.data?(0,x.appendUint8Array)(v.initSegment.data,new Uint8Array(l)):l;(0,B.parseWebVTT)(m,this.initPTS[v.cc],this.timescale[v.cc],i,v.cc,v.start,function(e){g._appendCues(e,v.level),c.trigger(L.Events.SUBTITLE_FRAG_PROCESSED,{success:!0,frag:v})},function(e){g._fallbackToIMSC1(v,l),S.logger.log("Failed to parse VTT cue: "+e),c.trigger(L.Events.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:v,error:e})})},o._fallbackToIMSC1=function(v,l){var i=this,u=this.tracks[v.level];u.textCodec||(0,D.parseIMSC1)(l,this.initPTS[v.cc],this.timescale[v.cc],function(){u.textCodec=D.IMSC1_CODEC,i._parseIMSC1(v,l)},function(){u.textCodec="wvtt"})},o._appendCues=function(v,l){var i=this.hls;if(this.config.renderTextTracksNatively){var u=this.textTracks[l];if(!u||u.mode==="disabled")return;v.forEach(function(m){return(0,A.addCueToTrack)(u,m)})}else{var g=this.tracks[l];if(!g)return;var c=g.default?"default":"subtitles"+l;i.trigger(L.Events.CUES_PARSED,{type:"subtitles",cues:v,track:c})}},o.onFragDecrypted=function(v,l){var i=l.frag;if(i.type===_.PlaylistLevelType.SUBTITLE){if(!(0,C.isFiniteNumber)(this.initPTS[i.cc])){this.unparsedVttFrags.push(l);return}this.onFragLoaded(L.Events.FRAG_LOADED,l)}},o.onSubtitleTracksCleared=function(){this.tracks=[],this.captionsTracks={}},o.onFragParsingUserdata=function(v,l){var i=this.cea608Parser1,u=this.cea608Parser2;if(!(!this.enabled||!(i&&u))){var g=l.frag,c=l.samples;if(!(g.type===_.PlaylistLevelType.MAIN&&this.closedCaptionsForLevel(g)==="NONE"))for(var m=0;m<c.length;m++){var e=c[m].bytes;if(e){var r=this.extractCea608Data(e);i.addData(c[m].pts,r[0]),u.addData(c[m].pts,r[1])}}}},o.onBufferFlushing=function(v,l){var i=l.startOffset,u=l.endOffset,g=l.endOffsetSubtitles,c=l.type,m=this.media;if(!(!m||m.currentTime<u)){if(!c||c==="video"){var e=this.captionsTracks;Object.keys(e).forEach(function(t){return(0,A.removeCuesInRange)(e[t],i,u)})}if(this.config.renderTextTracksNatively&&i===0&&g!==void 0){var r=this.textTracks;Object.keys(r).forEach(function(t){return(0,A.removeCuesInRange)(r[t],i,g)})}}},o.extractCea608Data=function(v){for(var l=[[],[]],i=v[0]&31,u=2,g=0;g<i;g++){var c=v[u++],m=127&v[u++],e=127&v[u++];if(!(m===0&&e===0)){var r=(4&c)!==0;if(r){var t=3&c;(t===0||t===1)&&(l[t].push(m),l[t].push(e))}}}return l},a}();function E(a,o){return a&&a.label===o.name&&!(a.textTrack1||a.textTrack2)}function p(a,o,n,v){return Math.min(o,v)-Math.max(a,n)}function h(){return{ccOffset:0,presentationOffset:0,0:{start:0,prevCC:-1,new:!0}}}},"./src/crypt/aes-crypto.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>C});var C=function(){function L(P,B){this.subtle=void 0,this.aesIV=void 0,this.subtle=P,this.aesIV=B}var M=L.prototype;return M.decrypt=function(B,A){return this.subtle.decrypt({name:"AES-CBC",iv:this.aesIV},A,B)},L}()},"./src/crypt/aes-decryptor.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>M,removePadding:()=>L});var C=T("./src/utils/typed-array.ts");function L(P){var B=P.byteLength,A=B&&new DataView(P.buffer).getUint8(B-1);return A?(0,C.sliceUint8)(P,0,B-A):P}var M=function(){function P(){this.rcon=[0,1,2,4,8,16,32,64,128,27,54],this.subMix=[new Uint32Array(256),new Uint32Array(256),new Uint32Array(256),new Uint32Array(256)],this.invSubMix=[new Uint32Array(256),new Uint32Array(256),new Uint32Array(256),new Uint32Array(256)],this.sBox=new Uint32Array(256),this.invSBox=new Uint32Array(256),this.key=new Uint32Array(0),this.ksRows=0,this.keySize=0,this.keySchedule=void 0,this.invKeySchedule=void 0,this.initTable()}var B=P.prototype;return B.uint8ArrayToUint32Array_=function(D){for(var x=new DataView(D),_=new Uint32Array(4),S=0;S<4;S++)_[S]=x.getUint32(S*4);return _},B.initTable=function(){var D=this.sBox,x=this.invSBox,_=this.subMix,S=_[0],d=_[1],E=_[2],p=_[3],h=this.invSubMix,a=h[0],o=h[1],n=h[2],v=h[3],l=new Uint32Array(256),i=0,u=0,g=0;for(g=0;g<256;g++)g<128?l[g]=g<<1:l[g]=g<<1^283;for(g=0;g<256;g++){var c=u^u<<1^u<<2^u<<3^u<<4;c=c>>>8^c&255^99,D[i]=c,x[c]=i;var m=l[i],e=l[m],r=l[e],t=l[c]*257^c*16843008;S[i]=t<<24|t>>>8,d[i]=t<<16|t>>>16,E[i]=t<<8|t>>>24,p[i]=t,t=r*16843009^e*65537^m*257^i*16843008,a[c]=t<<24|t>>>8,o[c]=t<<16|t>>>16,n[c]=t<<8|t>>>24,v[c]=t,i?(i=m^l[l[l[r^m]]],u^=l[l[u]]):i=u=1}},B.expandKey=function(D){for(var x=this.uint8ArrayToUint32Array_(D),_=!0,S=0;S<x.length&&_;)_=x[S]===this.key[S],S++;if(!_){this.key=x;var d=this.keySize=x.length;if(d!==4&&d!==6&&d!==8)throw new Error("Invalid aes key size="+d);var E=this.ksRows=(d+6+1)*4,p,h,a=this.keySchedule=new Uint32Array(E),o=this.invKeySchedule=new Uint32Array(E),n=this.sBox,v=this.rcon,l=this.invSubMix,i=l[0],u=l[1],g=l[2],c=l[3],m,e;for(p=0;p<E;p++){if(p<d){m=a[p]=x[p];continue}e=m,p%d===0?(e=e<<8|e>>>24,e=n[e>>>24]<<24|n[e>>>16&255]<<16|n[e>>>8&255]<<8|n[e&255],e^=v[p/d|0]<<24):d>6&&p%d===4&&(e=n[e>>>24]<<24|n[e>>>16&255]<<16|n[e>>>8&255]<<8|n[e&255]),a[p]=m=(a[p-d]^e)>>>0}for(h=0;h<E;h++)p=E-h,h&3?e=a[p]:e=a[p-4],h<4||p<=4?o[h]=e:o[h]=i[n[e>>>24]]^u[n[e>>>16&255]]^g[n[e>>>8&255]]^c[n[e&255]],o[h]=o[h]>>>0}},B.networkToHostOrderSwap=function(D){return D<<24|(D&65280)<<8|(D&16711680)>>8|D>>>24},B.decrypt=function(D,x,_){for(var S=this.keySize+6,d=this.invKeySchedule,E=this.invSBox,p=this.invSubMix,h=p[0],a=p[1],o=p[2],n=p[3],v=this.uint8ArrayToUint32Array_(_),l=v[0],i=v[1],u=v[2],g=v[3],c=new Int32Array(D),m=new Int32Array(c.length),e,r,t,s,y,f,b,R,I,k,F,K,H,j,Y=this.networkToHostOrderSwap;x<c.length;){for(I=Y(c[x]),k=Y(c[x+1]),F=Y(c[x+2]),K=Y(c[x+3]),y=I^d[0],f=K^d[1],b=F^d[2],R=k^d[3],H=4,j=1;j<S;j++)e=h[y>>>24]^a[f>>16&255]^o[b>>8&255]^n[R&255]^d[H],r=h[f>>>24]^a[b>>16&255]^o[R>>8&255]^n[y&255]^d[H+1],t=h[b>>>24]^a[R>>16&255]^o[y>>8&255]^n[f&255]^d[H+2],s=h[R>>>24]^a[y>>16&255]^o[f>>8&255]^n[b&255]^d[H+3],y=e,f=r,b=t,R=s,H=H+4;e=E[y>>>24]<<24^E[f>>16&255]<<16^E[b>>8&255]<<8^E[R&255]^d[H],r=E[f>>>24]<<24^E[b>>16&255]<<16^E[R>>8&255]<<8^E[y&255]^d[H+1],t=E[b>>>24]<<24^E[R>>16&255]<<16^E[y>>8&255]<<8^E[f&255]^d[H+2],s=E[R>>>24]<<24^E[y>>16&255]<<16^E[f>>8&255]<<8^E[b&255]^d[H+3],m[x]=Y(e^l),m[x+1]=Y(s^i),m[x+2]=Y(t^u),m[x+3]=Y(r^g),l=I,i=k,u=F,g=K,x=x+4}return m.buffer},P}()},"./src/crypt/decrypter.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>x});var C=T("./src/crypt/aes-crypto.ts"),L=T("./src/crypt/fast-aes-key.ts"),M=T("./src/crypt/aes-decryptor.ts"),P=T("./src/utils/logger.ts"),B=T("./src/utils/mp4-tools.ts"),A=T("./src/utils/typed-array.ts"),D=16,x=function(){function _(d,E){var p=E===void 0?{}:E,h=p.removePKCS7Padding,a=h===void 0?!0:h;if(this.logEnabled=!0,this.removePKCS7Padding=void 0,this.subtle=null,this.softwareDecrypter=null,this.key=null,this.fastAesKey=null,this.remainderData=null,this.currentIV=null,this.currentResult=null,this.useSoftware=void 0,this.useSoftware=d.enableSoftwareAES,this.removePKCS7Padding=a,a)try{var o=self.crypto;o&&(this.subtle=o.subtle||o.webkitSubtle)}catch{}this.subtle===null&&(this.useSoftware=!0)}var S=_.prototype;return S.destroy=function(){this.subtle=null,this.softwareDecrypter=null,this.key=null,this.fastAesKey=null,this.remainderData=null,this.currentIV=null,this.currentResult=null},S.isSync=function(){return this.useSoftware},S.flush=function(){var E=this.currentResult,p=this.remainderData;if(!E||p)return P.logger.error("[softwareDecrypt] "+(p?"overflow bytes: "+p.byteLength:"no result")),this.reset(),null;var h=new Uint8Array(E);return this.reset(),this.removePKCS7Padding?(0,M.removePadding)(h):h},S.reset=function(){this.currentResult=null,this.currentIV=null,this.remainderData=null,this.softwareDecrypter&&(this.softwareDecrypter=null)},S.decrypt=function(E,p,h){var a=this;return this.useSoftware?new Promise(function(o,n){a.softwareDecrypt(new Uint8Array(E),p,h);var v=a.flush();v?o(v.buffer):n(new Error("[softwareDecrypt] Failed to decrypt data"))}):this.webCryptoDecrypt(new Uint8Array(E),p,h)},S.softwareDecrypt=function(E,p,h){var a=this.currentIV,o=this.currentResult,n=this.remainderData;this.logOnce("JS AES decrypt"),n&&(E=(0,B.appendUint8Array)(n,E),this.remainderData=null);var v=this.getValidChunk(E);if(!v.length)return null;a&&(h=a);var l=this.softwareDecrypter;l||(l=this.softwareDecrypter=new M.default),l.expandKey(p);var i=o;return this.currentResult=l.decrypt(v.buffer,0,h),this.currentIV=(0,A.sliceUint8)(v,-16).buffer,i||null},S.webCryptoDecrypt=function(E,p,h){var a=this,o=this.subtle;return(this.key!==p||!this.fastAesKey)&&(this.key=p,this.fastAesKey=new L.default(o,p)),this.fastAesKey.expandKey().then(function(n){if(!o)return Promise.reject(new Error("web crypto not initialized"));a.logOnce("WebCrypto AES decrypt");var v=new C.default(o,new Uint8Array(h));return v.decrypt(E.buffer,n)}).catch(function(n){return P.logger.warn("[decrypter]: WebCrypto Error, disable WebCrypto API, "+n.name+": "+n.message),a.onWebCryptoError(E,p,h)})},S.onWebCryptoError=function(E,p,h){this.useSoftware=!0,this.logEnabled=!0,this.softwareDecrypt(E,p,h);var a=this.flush();if(a)return a.buffer;throw new Error("WebCrypto and softwareDecrypt: failed to decrypt data")},S.getValidChunk=function(E){var p=E,h=E.length-E.length%D;return h!==E.length&&(p=(0,A.sliceUint8)(E,0,h),this.remainderData=(0,A.sliceUint8)(E,h)),p},S.logOnce=function(E){!this.logEnabled||(P.logger.log("[decrypter]: "+E),this.logEnabled=!1)},_}()},"./src/crypt/fast-aes-key.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>C});var C=function(){function L(P,B){this.subtle=void 0,this.key=void 0,this.subtle=P,this.key=B}var M=L.prototype;return M.expandKey=function(){return this.subtle.importKey("raw",this.key,{name:"AES-CBC"},!1,["encrypt","decrypt"])},L}()},"./src/demux/aacdemuxer.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>x});var C=T("./src/demux/base-audio-demuxer.ts"),L=T("./src/demux/adts.ts"),M=T("./src/utils/logger.ts"),P=T("./src/demux/id3.ts");function B(_,S){_.prototype=Object.create(S.prototype),_.prototype.constructor=_,A(_,S)}function A(_,S){return A=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(E,p){return E.__proto__=p,E},A(_,S)}var D=function(_){B(S,_);function S(E,p){var h;return h=_.call(this)||this,h.observer=void 0,h.config=void 0,h.observer=E,h.config=p,h}var d=S.prototype;return d.resetInitSegment=function(p,h,a,o){_.prototype.resetInitSegment.call(this,p,h,a,o),this._audioTrack={container:"audio/adts",type:"audio",id:2,pid:-1,sequenceNumber:0,segmentCodec:"aac",samples:[],manifestCodec:h,duration:o,inputTimeScale:9e4,dropped:0}},S.probe=function(p){if(!p)return!1;for(var h=P.getID3Data(p,0)||[],a=h.length,o=p.length;a<o;a++)if(L.probe(p,a))return M.logger.log("ADTS sync word found !"),!0;return!1},d.canParse=function(p,h){return L.canParse(p,h)},d.appendFrame=function(p,h,a){L.initTrackConfig(p,this.observer,h,a,p.manifestCodec);var o=L.appendFrame(p,h,a,this.basePTS,this.frameIndex);if(o&&o.missing===0)return o},S}(C.default);let x=D},"./src/demux/adts.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{appendFrame:()=>a,canGetFrameLength:()=>x,canParse:()=>S,getAudioConfig:()=>P,getFrameDuration:()=>p,getFullFrameLength:()=>D,getHeaderLength:()=>A,initTrackConfig:()=>E,isHeader:()=>_,isHeaderPattern:()=>B,parseFrameHeader:()=>h,probe:()=>d});var C=T("./src/utils/logger.ts"),L=T("./src/errors.ts"),M=T("./src/events.ts");function P(o,n,v,l){var i,u,g,c,m=navigator.userAgent.toLowerCase(),e=l,r=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350];i=((n[v+2]&192)>>>6)+1;var t=(n[v+2]&60)>>>2;if(t>r.length-1){o.trigger(M.Events.ERROR,{type:L.ErrorTypes.MEDIA_ERROR,details:L.ErrorDetails.FRAG_PARSING_ERROR,fatal:!0,reason:"invalid ADTS sampling index:"+t});return}return g=(n[v+2]&1)<<2,g|=(n[v+3]&192)>>>6,C.logger.log("manifest codec:"+l+", ADTS type:"+i+", samplingIndex:"+t),/firefox/i.test(m)?t>=6?(i=5,c=new Array(4),u=t-3):(i=2,c=new Array(2),u=t):m.indexOf("android")!==-1?(i=2,c=new Array(2),u=t):(i=5,c=new Array(4),l&&(l.indexOf("mp4a.40.29")!==-1||l.indexOf("mp4a.40.5")!==-1)||!l&&t>=6?u=t-3:((l&&l.indexOf("mp4a.40.2")!==-1&&(t>=6&&g===1||/vivaldi/i.test(m))||!l&&g===1)&&(i=2,c=new Array(2)),u=t)),c[0]=i<<3,c[0]|=(t&14)>>1,c[1]|=(t&1)<<7,c[1]|=g<<3,i===5&&(c[1]|=(u&14)>>1,c[2]=(u&1)<<7,c[2]|=8,c[3]=0),{config:c,samplerate:r[t],channelCount:g,codec:"mp4a.40."+i,manifestCodec:e}}function B(o,n){return o[n]===255&&(o[n+1]&246)===240}function A(o,n){return o[n+1]&1?7:9}function D(o,n){return(o[n+3]&3)<<11|o[n+4]<<3|(o[n+5]&224)>>>5}function x(o,n){return n+5<o.length}function _(o,n){return n+1<o.length&&B(o,n)}function S(o,n){return x(o,n)&&B(o,n)&&D(o,n)<=o.length-n}function d(o,n){if(_(o,n)){var v=A(o,n);if(n+v>=o.length)return!1;var l=D(o,n);if(l<=v)return!1;var i=n+l;return i===o.length||_(o,i)}return!1}function E(o,n,v,l,i){if(!o.samplerate){var u=P(n,v,l,i);if(!u)return;o.config=u.config,o.samplerate=u.samplerate,o.channelCount=u.channelCount,o.codec=u.codec,o.manifestCodec=u.manifestCodec,C.logger.log("parsed codec:"+o.codec+", rate:"+u.samplerate+", channels:"+u.channelCount)}}function p(o){return 9216e4/o}function h(o,n){var v=A(o,n);if(n+v<=o.length){var l=D(o,n)-v;if(l>0)return{headerLength:v,frameLength:l}}}function a(o,n,v,l,i){var u=p(o.samplerate),g=l+i*u,c=h(n,v),m;if(c){var e=c.frameLength,r=c.headerLength,t=r+e,s=Math.max(0,v+t-n.length);s?(m=new Uint8Array(t-r),m.set(n.subarray(v+r,n.length),0)):m=n.subarray(v+r,v+t);var y={unit:m,pts:g};return s||o.samples.push(y),{sample:y,length:t,missing:s}}var f=n.length-v;m=new Uint8Array(f),m.set(n.subarray(v,n.length),0);var b={unit:m,pts:g};return{sample:b,length:f,missing:-1}}},"./src/demux/base-audio-demuxer.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>_,initPTSFn:()=>x});var C=T("./src/polyfills/number.ts"),L=T("./src/demux/id3.ts"),M=T("./src/types/demuxer.ts"),P=T("./src/demux/dummy-demuxed-track.ts"),B=T("./src/utils/mp4-tools.ts"),A=T("./src/utils/typed-array.ts"),D=function(){function S(){this._audioTrack=void 0,this._id3Track=void 0,this.frameIndex=0,this.cachedData=null,this.basePTS=null,this.initPTS=null,this.lastPTS=null}var d=S.prototype;return d.resetInitSegment=function(p,h,a,o){this._id3Track={type:"id3",id:3,pid:-1,inputTimeScale:9e4,sequenceNumber:0,samples:[],dropped:0}},d.resetTimeStamp=function(p){this.initPTS=p,this.resetContiguity()},d.resetContiguity=function(){this.basePTS=null,this.lastPTS=null,this.frameIndex=0},d.canParse=function(p,h){return!1},d.appendFrame=function(p,h,a){},d.demux=function(p,h){this.cachedData&&(p=(0,B.appendUint8Array)(this.cachedData,p),this.cachedData=null);var a=L.getID3Data(p,0),o=a?a.length:0,n,v=this._audioTrack,l=this._id3Track,i=a?L.getTimeStamp(a):void 0,u=p.length;for((this.basePTS===null||this.frameIndex===0&&(0,C.isFiniteNumber)(i))&&(this.basePTS=x(i,h,this.initPTS),this.lastPTS=this.basePTS),this.lastPTS===null&&(this.lastPTS=this.basePTS),a&&a.length>0&&l.samples.push({pts:this.lastPTS,dts:this.lastPTS,data:a,type:M.MetadataSchema.audioId3,duration:Number.POSITIVE_INFINITY});o<u;){if(this.canParse(p,o)){var g=this.appendFrame(v,p,o);g?(this.frameIndex++,this.lastPTS=g.sample.pts,o+=g.length,n=o):o=u}else L.canParse(p,o)?(a=L.getID3Data(p,o),l.samples.push({pts:this.lastPTS,dts:this.lastPTS,data:a,type:M.MetadataSchema.audioId3,duration:Number.POSITIVE_INFINITY}),o+=a.length,n=o):o++;if(o===u&&n!==u){var c=(0,A.sliceUint8)(p,n);this.cachedData?this.cachedData=(0,B.appendUint8Array)(this.cachedData,c):this.cachedData=c}}return{audioTrack:v,videoTrack:(0,P.dummyTrack)(),id3Track:l,textTrack:(0,P.dummyTrack)()}},d.demuxSampleAes=function(p,h,a){return Promise.reject(new Error("["+this+"] This demuxer does not support Sample-AES decryption"))},d.flush=function(p){var h=this.cachedData;return h&&(this.cachedData=null,this.demux(h,0)),{audioTrack:this._audioTrack,videoTrack:(0,P.dummyTrack)(),id3Track:this._id3Track,textTrack:(0,P.dummyTrack)()}},d.destroy=function(){},S}(),x=function(d,E,p){return(0,C.isFiniteNumber)(d)?d*90:E*9e4+(p||0)};let _=D},"./src/demux/chunk-cache.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>C});var C=function(){function M(){this.chunks=[],this.dataLength=0}var P=M.prototype;return P.push=function(A){this.chunks.push(A),this.dataLength+=A.length},P.flush=function(){var A=this.chunks,D=this.dataLength,x;if(A.length)A.length===1?x=A[0]:x=L(A,D);else return new Uint8Array(0);return this.reset(),x},P.reset=function(){this.chunks.length=0,this.dataLength=0},M}();function L(M,P){for(var B=new Uint8Array(P),A=0,D=0;D<M.length;D++){var x=M[D];B.set(x,A),A+=x.length}return B}},"./src/demux/dummy-demuxed-track.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{dummyTrack:()=>C});function C(L,M){return L===void 0&&(L=""),M===void 0&&(M=9e4),{type:L,id:-1,pid:-1,inputTimeScale:M,sequenceNumber:-1,samples:[],dropped:0}}},"./src/demux/exp-golomb.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>M});var C=T("./src/utils/logger.ts"),L=function(){function P(A){this.data=void 0,this.bytesAvailable=void 0,this.word=void 0,this.bitsAvailable=void 0,this.data=A,this.bytesAvailable=A.byteLength,this.word=0,this.bitsAvailable=0}var B=P.prototype;return B.loadWord=function(){var D=this.data,x=this.bytesAvailable,_=D.byteLength-x,S=new Uint8Array(4),d=Math.min(4,x);if(d===0)throw new Error("no bytes available");S.set(D.subarray(_,_+d)),this.word=new DataView(S.buffer).getUint32(0),this.bitsAvailable=d*8,this.bytesAvailable-=d},B.skipBits=function(D){var x;D=Math.min(D,this.bytesAvailable*8+this.bitsAvailable),this.bitsAvailable>D?(this.word<<=D,this.bitsAvailable-=D):(D-=this.bitsAvailable,x=D>>3,D-=x<<3,this.bytesAvailable-=x,this.loadWord(),this.word<<=D,this.bitsAvailable-=D)},B.readBits=function(D){var x=Math.min(this.bitsAvailable,D),_=this.word>>>32-x;if(D>32&&C.logger.error("Cannot read more than 32 bits at a time"),this.bitsAvailable-=x,this.bitsAvailable>0)this.word<<=x;else if(this.bytesAvailable>0)this.loadWord();else throw new Error("no bits available");return x=D-x,x>0&&this.bitsAvailable?_<<x|this.readBits(x):_},B.skipLZ=function(){var D;for(D=0;D<this.bitsAvailable;++D)if((this.word&2147483648>>>D)!==0)return this.word<<=D,this.bitsAvailable-=D,D;return this.loadWord(),D+this.skipLZ()},B.skipUEG=function(){this.skipBits(1+this.skipLZ())},B.skipEG=function(){this.skipBits(1+this.skipLZ())},B.readUEG=function(){var D=this.skipLZ();return this.readBits(D+1)-1},B.readEG=function(){var D=this.readUEG();return 1&D?1+D>>>1:-1*(D>>>1)},B.readBoolean=function(){return this.readBits(1)===1},B.readUByte=function(){return this.readBits(8)},B.readUShort=function(){return this.readBits(16)},B.readUInt=function(){return this.readBits(32)},B.skipScalingList=function(D){for(var x=8,_=8,S,d=0;d<D;d++)_!==0&&(S=this.readEG(),_=(x+S+256)%256),x=_===0?x:_},B.readSPS=function(){var D=0,x=0,_=0,S=0,d,E,p,h=this.readUByte.bind(this),a=this.readBits.bind(this),o=this.readUEG.bind(this),n=this.readBoolean.bind(this),v=this.skipBits.bind(this),l=this.skipEG.bind(this),i=this.skipUEG.bind(this),u=this.skipScalingList.bind(this);h();var g=h();if(a(5),v(3),h(),i(),g===100||g===110||g===122||g===244||g===44||g===83||g===86||g===118||g===128){var c=o();if(c===3&&v(1),i(),i(),v(1),n())for(E=c!==3?8:12,p=0;p<E;p++)n()&&(p<6?u(16):u(64))}i();var m=o();if(m===0)o();else if(m===1)for(v(1),l(),l(),d=o(),p=0;p<d;p++)l();i(),v(1);var e=o(),r=o(),t=a(1);t===0&&v(1),v(1),n()&&(D=o(),x=o(),_=o(),S=o());var s=[1,1];if(n()&&n()){var y=h();switch(y){case 1:s=[1,1];break;case 2:s=[12,11];break;case 3:s=[10,11];break;case 4:s=[16,11];break;case 5:s=[40,33];break;case 6:s=[24,11];break;case 7:s=[20,11];break;case 8:s=[32,11];break;case 9:s=[80,33];break;case 10:s=[18,11];break;case 11:s=[15,11];break;case 12:s=[64,33];break;case 13:s=[160,99];break;case 14:s=[4,3];break;case 15:s=[3,2];break;case 16:s=[2,1];break;case 255:{s=[h()<<8|h(),h()<<8|h()];break}}}return{width:Math.ceil((e+1)*16-D*2-x*2),height:(2-t)*(r+1)*16-(t?2:4)*(_+S),pixelRatio:s}},B.readSliceType=function(){return this.readUByte(),this.readUEG(),this.readUEG()},P}();let M=L},"./src/demux/id3.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{canParse:()=>B,decodeFrame:()=>S,getID3Data:()=>M,getID3Frames:()=>_,getTimeStamp:()=>A,isFooter:()=>L,isHeader:()=>C,isTimeStampFrame:()=>D,testables:()=>o,utf8ArrayToStr:()=>a});var C=function(i,u){return u+10<=i.length&&i[u]===73&&i[u+1]===68&&i[u+2]===51&&i[u+3]<255&&i[u+4]<255&&i[u+6]<128&&i[u+7]<128&&i[u+8]<128&&i[u+9]<128},L=function(i,u){return u+10<=i.length&&i[u]===51&&i[u+1]===68&&i[u+2]===73&&i[u+3]<255&&i[u+4]<255&&i[u+6]<128&&i[u+7]<128&&i[u+8]<128&&i[u+9]<128},M=function(i,u){for(var g=u,c=0;C(i,u);){c+=10;var m=P(i,u+6);c+=m,L(i,u+10)&&(c+=10),u+=c}if(c>0)return i.subarray(g,g+c)},P=function(i,u){var g=0;return g=(i[u]&127)<<21,g|=(i[u+1]&127)<<14,g|=(i[u+2]&127)<<7,g|=i[u+3]&127,g},B=function(i,u){return C(i,u)&&P(i,u+6)+10<=i.length-u},A=function(i){for(var u=_(i),g=0;g<u.length;g++){var c=u[g];if(D(c))return h(c)}},D=function(i){return i&&i.key==="PRIV"&&i.info==="com.apple.streaming.transportStreamTimestamp"},x=function(i){var u=String.fromCharCode(i[0],i[1],i[2],i[3]),g=P(i,4),c=10;return{type:u,size:g,data:i.subarray(c,c+g)}},_=function(i){for(var u=0,g=[];C(i,u);){var c=P(i,u+6);u+=10;for(var m=u+c;u+8<m;){var e=x(i.subarray(u)),r=S(e);r&&g.push(r),u+=e.size+10}L(i,u)&&(u+=10)}return g},S=function(i){return i.type==="PRIV"?d(i):i.type[0]==="W"?p(i):E(i)},d=function(i){if(!(i.size<2)){var u=a(i.data,!0),g=new Uint8Array(i.data.subarray(u.length+1));return{key:i.type,info:u,data:g.buffer}}},E=function(i){if(!(i.size<2)){if(i.type==="TXXX"){var u=1,g=a(i.data.subarray(u),!0);u+=g.length+1;var c=a(i.data.subarray(u));return{key:i.type,info:g,data:c}}var m=a(i.data.subarray(1));return{key:i.type,data:m}}},p=function(i){if(i.type==="WXXX"){if(i.size<2)return;var u=1,g=a(i.data.subarray(u),!0);u+=g.length+1;var c=a(i.data.subarray(u));return{key:i.type,info:g,data:c}}var m=a(i.data);return{key:i.type,data:m}},h=function(i){if(i.data.byteLength===8){var u=new Uint8Array(i.data),g=u[3]&1,c=(u[4]<<23)+(u[5]<<15)+(u[6]<<7)+u[7];return c/=45,g&&(c+=4772185884e-2),Math.round(c)}},a=function(i,u){u===void 0&&(u=!1);var g=v();if(g){var c=g.decode(i);if(u){var m=c.indexOf("\0");return m!==-1?c.substring(0,m):c}return c.replace(/\0/g,"")}for(var e=i.length,r,t,s,y="",f=0;f<e;){if(r=i[f++],r===0&&u)return y;if(r===0||r===3)continue;switch(r>>4){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:y+=String.fromCharCode(r);break;case 12:case 13:t=i[f++],y+=String.fromCharCode((r&31)<<6|t&63);break;case 14:t=i[f++],s=i[f++],y+=String.fromCharCode((r&15)<<12|(t&63)<<6|(s&63)<<0);break;default:}}return y},o={decodeTextFrame:E},n;function v(){return!n&&typeof self.TextDecoder!="undefined"&&(n=new self.TextDecoder("utf-8")),n}},"./src/demux/mp3demuxer.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>x});var C=T("./src/demux/base-audio-demuxer.ts"),L=T("./src/demux/id3.ts"),M=T("./src/utils/logger.ts"),P=T("./src/demux/mpegaudio.ts");function B(_,S){_.prototype=Object.create(S.prototype),_.prototype.constructor=_,A(_,S)}function A(_,S){return A=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(E,p){return E.__proto__=p,E},A(_,S)}var D=function(_){B(S,_);function S(){return _.apply(this,arguments)||this}var d=S.prototype;return d.resetInitSegment=function(p,h,a,o){_.prototype.resetInitSegment.call(this,p,h,a,o),this._audioTrack={container:"audio/mpeg",type:"audio",id:2,pid:-1,sequenceNumber:0,segmentCodec:"mp3",samples:[],manifestCodec:h,duration:o,inputTimeScale:9e4,dropped:0}},S.probe=function(p){if(!p)return!1;for(var h=L.getID3Data(p,0)||[],a=h.length,o=p.length;a<o;a++)if(P.probe(p,a))return M.logger.log("MPEG Audio sync word found !"),!0;return!1},d.canParse=function(p,h){return P.canParse(p,h)},d.appendFrame=function(p,h,a){if(this.basePTS!==null)return P.appendFrame(p,h,a,this.basePTS,this.frameIndex)},S}(C.default);let x=D},"./src/demux/mp4demuxer.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>D});var C=T("./src/polyfills/number.ts"),L=T("./src/types/demuxer.ts"),M=T("./src/utils/mp4-tools.ts"),P=T("./src/demux/dummy-demuxed-track.ts"),B=/\/emsg[-/]ID3/i,A=function(){function x(S,d){this.remainderData=null,this.timeOffset=0,this.config=void 0,this.videoTrack=void 0,this.audioTrack=void 0,this.id3Track=void 0,this.txtTrack=void 0,this.config=d}var _=x.prototype;return _.resetTimeStamp=function(){},_.resetInitSegment=function(d,E,p,h){var a=this.videoTrack=(0,P.dummyTrack)("video",1),o=this.audioTrack=(0,P.dummyTrack)("audio",1),n=this.txtTrack=(0,P.dummyTrack)("text",1);if(this.id3Track=(0,P.dummyTrack)("id3",1),this.timeOffset=0,!(!d||!d.byteLength)){var v=(0,M.parseInitSegment)(d);if(v.video){var l=v.video,i=l.id,u=l.timescale,g=l.codec;a.id=i,a.timescale=n.timescale=u,a.codec=g}if(v.audio){var c=v.audio,m=c.id,e=c.timescale,r=c.codec;o.id=m,o.timescale=e,o.codec=r}n.id=M.RemuxerTrackIdConfig.text,a.sampleDuration=0,a.duration=o.duration=h}},_.resetContiguity=function(){},x.probe=function(d){return d=d.length>16384?d.subarray(0,16384):d,(0,M.findBox)(d,["moof"]).length>0},_.demux=function(d,E){this.timeOffset=E;var p=d,h=this.videoTrack,a=this.txtTrack;if(this.config.progressive){this.remainderData&&(p=(0,M.appendUint8Array)(this.remainderData,d));var o=(0,M.segmentValidRange)(p);this.remainderData=o.remainder,h.samples=o.valid||new Uint8Array}else h.samples=p;var n=this.extractID3Track(h,E);return a.samples=(0,M.parseSamples)(E,h),{videoTrack:h,audioTrack:this.audioTrack,id3Track:n,textTrack:this.txtTrack}},_.flush=function(){var d=this.timeOffset,E=this.videoTrack,p=this.txtTrack;E.samples=this.remainderData||new Uint8Array,this.remainderData=null;var h=this.extractID3Track(E,this.timeOffset);return p.samples=(0,M.parseSamples)(d,E),{videoTrack:E,audioTrack:(0,P.dummyTrack)(),id3Track:h,textTrack:(0,P.dummyTrack)()}},_.extractID3Track=function(d,E){var p=this.id3Track;if(d.samples.length){var h=(0,M.findBox)(d.samples,["emsg"]);h&&h.forEach(function(a){var o=(0,M.parseEmsg)(a);if(B.test(o.schemeIdUri)){var n=(0,C.isFiniteNumber)(o.presentationTime)?o.presentationTime/o.timeScale:E+o.presentationTimeDelta/o.timeScale,v=o.eventDuration===4294967295?Number.POSITIVE_INFINITY:o.eventDuration/o.timeScale;v<=.001&&(v=Number.POSITIVE_INFINITY);var l=o.payload;p.samples.push({data:l,len:l.byteLength,dts:n,pts:n,type:L.MetadataSchema.emsg,duration:v})}})}return p},_.demuxSampleAes=function(d,E,p){return Promise.reject(new Error("The MP4 demuxer does not support SAMPLE-AES decryption"))},_.destroy=function(){},x}();let D=A},"./src/demux/mpegaudio.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{appendFrame:()=>A,canParse:()=>S,isHeader:()=>_,isHeaderPattern:()=>x,parseHeader:()=>D,probe:()=>d});var C=null,L=[32,64,96,128,160,192,224,256,288,320,352,384,416,448,32,48,56,64,80,96,112,128,160,192,224,256,320,384,32,40,48,56,64,80,96,112,128,160,192,224,256,320,32,48,56,64,80,96,112,128,144,160,176,192,224,256,8,16,24,32,40,48,56,64,80,96,112,128,144,160],M=[44100,48e3,32e3,22050,24e3,16e3,11025,12e3,8e3],P=[[0,72,144,12],[0,0,0,0],[0,72,144,12],[0,144,144,12]],B=[0,1,1,4];function A(E,p,h,a,o){if(!(h+24>p.length)){var n=D(p,h);if(n&&h+n.frameLength<=p.length){var v=n.samplesPerFrame*9e4/n.sampleRate,l=a+o*v,i={unit:p.subarray(h,h+n.frameLength),pts:l,dts:l};return E.config=[],E.channelCount=n.channelCount,E.samplerate=n.sampleRate,E.samples.push(i),{sample:i,length:n.frameLength,missing:0}}}}function D(E,p){var h=E[p+1]>>3&3,a=E[p+1]>>1&3,o=E[p+2]>>4&15,n=E[p+2]>>2&3;if(h!==1&&o!==0&&o!==15&&n!==3){var v=E[p+2]>>1&1,l=E[p+3]>>6,i=h===3?3-a:a===3?3:4,u=L[i*14+o-1]*1e3,g=h===3?0:h===2?1:2,c=M[g*3+n],m=l===3?1:2,e=P[h][a],r=B[a],t=e*8*r,s=Math.floor(e*u/c+v)*r;if(C===null){var y=navigator.userAgent||"",f=y.match(/Chrome\/(\d+)/i);C=f?parseInt(f[1]):0}var b=!!C&&C<=87;return b&&a===2&&u>=224e3&&l===0&&(E[p+3]=E[p+3]|128),{sampleRate:c,channelCount:m,frameLength:s,samplesPerFrame:t}}}function x(E,p){return E[p]===255&&(E[p+1]&224)===224&&(E[p+1]&6)!==0}function _(E,p){return p+1<E.length&&x(E,p)}function S(E,p){var h=4;return x(E,p)&&h<=E.length-p}function d(E,p){if(p+1<E.length&&x(E,p)){var h=4,a=D(E,p),o=h;a!=null&&a.frameLength&&(o=a.frameLength);var n=p+o;return n===E.length||_(E,n)}return!1}},"./src/demux/sample-aes.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>P});var C=T("./src/crypt/decrypter.ts"),L=T("./src/utils/mp4-tools.ts"),M=function(){function B(D,x,_){this.keyData=void 0,this.decrypter=void 0,this.keyData=_,this.decrypter=new C.default(x,{removePKCS7Padding:!1})}var A=B.prototype;return A.decryptBuffer=function(x){return this.decrypter.decrypt(x,this.keyData.key.buffer,this.keyData.iv.buffer)},A.decryptAacSample=function(x,_,S){var d=this,E=x[_].unit;if(!(E.length<=16)){var p=E.subarray(16,E.length-E.length%16),h=p.buffer.slice(p.byteOffset,p.byteOffset+p.length);this.decryptBuffer(h).then(function(a){var o=new Uint8Array(a);E.set(o,16),d.decrypter.isSync()||d.decryptAacSamples(x,_+1,S)})}},A.decryptAacSamples=function(x,_,S){for(;;_++){if(_>=x.length){S();return}if(!(x[_].unit.length<32)&&(this.decryptAacSample(x,_,S),!this.decrypter.isSync()))return}},A.getAvcEncryptedData=function(x){for(var _=Math.floor((x.length-48)/160)*16+16,S=new Int8Array(_),d=0,E=32;E<x.length-16;E+=160,d+=16)S.set(x.subarray(E,E+16),d);return S},A.getAvcDecryptedUnit=function(x,_){for(var S=new Uint8Array(_),d=0,E=32;E<x.length-16;E+=160,d+=16)x.set(S.subarray(d,d+16),E);return x},A.decryptAvcSample=function(x,_,S,d,E){var p=this,h=(0,L.discardEPB)(E.data),a=this.getAvcEncryptedData(h);this.decryptBuffer(a.buffer).then(function(o){E.data=p.getAvcDecryptedUnit(h,o),p.decrypter.isSync()||p.decryptAvcSamples(x,_,S+1,d)})},A.decryptAvcSamples=function(x,_,S,d){if(x instanceof Uint8Array)throw new Error("Cannot decrypt samples of type Uint8Array");for(;;_++,S=0){if(_>=x.length){d();return}for(var E=x[_].units;!(S>=E.length);S++){var p=E[S];if(!(p.data.length<=48||p.type!==1&&p.type!==5)&&(this.decryptAvcSample(x,_,S,d,p),!this.decrypter.isSync()))return}}},B}();let P=M},"./src/demux/transmuxer-interface.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>S});var C=T("./src/demux/webworkify-webpack.js"),L=T("./src/events.ts"),M=T("./src/demux/transmuxer.ts"),P=T("./src/utils/logger.ts"),B=T("./src/errors.ts"),A=T("./src/utils/mediasource-helper.ts"),D=T("./node_modules/eventemitter3/index.js"),x=T.n(D),_=(0,A.getMediaSource)()||{isTypeSupported:function(){return!1}},S=function(){function d(p,h,a,o){var n=this;this.hls=void 0,this.id=void 0,this.observer=void 0,this.frag=null,this.part=null,this.useWorker=void 0,this.worker=void 0,this.onwmsg=void 0,this.transmuxer=null,this.onTransmuxComplete=void 0,this.onFlush=void 0;var v=p.config;this.hls=p,this.id=h,this.useWorker=!!v.enableWorker,this.onTransmuxComplete=a,this.onFlush=o;var l=function(m,e){e=e||{},e.frag=n.frag,e.id=n.id,n.hls.trigger(m,e)};this.observer=new D.EventEmitter,this.observer.on(L.Events.FRAG_DECRYPTED,l),this.observer.on(L.Events.ERROR,l);var i={mp4:_.isTypeSupported("video/mp4"),mpeg:_.isTypeSupported("audio/mpeg"),mp3:_.isTypeSupported('audio/mp4; codecs="mp3"')},u=navigator.vendor;if(this.useWorker&&typeof Worker!="undefined"){P.logger.log("demuxing in webworker");var g;try{g=this.worker=(0,C.default)("./src/demux/transmuxer-worker.ts"),this.onwmsg=this.onWorkerMessage.bind(this),g.addEventListener("message",this.onwmsg),g.onerror=function(c){n.useWorker=!1,P.logger.warn("Exception in webworker, fallback to inline"),n.hls.trigger(L.Events.ERROR,{type:B.ErrorTypes.OTHER_ERROR,details:B.ErrorDetails.INTERNAL_EXCEPTION,fatal:!1,event:"demuxerWorker",error:new Error(c.message+" ("+c.filename+":"+c.lineno+")")})},g.postMessage({cmd:"init",typeSupported:i,vendor:u,id:h,config:JSON.stringify(v)})}catch(c){P.logger.warn("Error in worker:",c),P.logger.error("Error while initializing DemuxerWorker, fallback to inline"),g&&self.URL.revokeObjectURL(g.objectURL),this.transmuxer=new M.default(this.observer,i,v,u,h),this.worker=null}}else this.transmuxer=new M.default(this.observer,i,v,u,h)}var E=d.prototype;return E.destroy=function(){var h=this.worker;if(h)h.removeEventListener("message",this.onwmsg),h.terminate(),this.worker=null,this.onwmsg=void 0;else{var a=this.transmuxer;a&&(a.destroy(),this.transmuxer=null)}var o=this.observer;o&&o.removeAllListeners(),this.frag=null,this.observer=null,this.hls=null},E.push=function(h,a,o,n,v,l,i,u,g,c){var m,e,r=this;g.transmuxing.start=self.performance.now();var t=this.transmuxer,s=this.worker,y=l?l.start:v.start,f=v.decryptdata,b=this.frag,R=!(b&&v.cc===b.cc),I=!(b&&g.level===b.level),k=b?g.sn-b.sn:-1,F=this.part?g.part-this.part.index:-1,K=k===0&&g.id>1&&g.id===(b==null?void 0:b.stats.chunkCount),H=!I&&(k===1||k===0&&(F===1||K&&F<=0)),j=self.performance.now();(I||k||v.stats.parsing.start===0)&&(v.stats.parsing.start=j),l&&(F||!H)&&(l.stats.parsing.start=j);var Y=!(b&&((m=v.initSegment)===null||m===void 0?void 0:m.url)===((e=b.initSegment)===null||e===void 0?void 0:e.url)),Q=new M.TransmuxState(R,H,u,I,y,Y);if(!H||R||Y){P.logger.log("[transmuxer-interface, "+v.type+"]: Starting new transmux session for sn: "+g.sn+" p: "+g.part+" level: "+g.level+" id: "+g.id+`
|
|
15
|
-
discontinuity: `+R+`
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
timeOffset: `+y+`
|
|
20
|
-
initSegmentChange: `+Y);var q=new M.TransmuxConfig(o,n,a,i,c);this.configureTransmuxer(q)}if(this.frag=v,this.part=l,s)s.postMessage({cmd:"demux",data:h,decryptdata:f,chunkMeta:g,state:Q},h instanceof ArrayBuffer?[h]:[]);else if(t){var ne=t.push(h,f,g,Q);(0,M.isPromise)(ne)?(t.async=!0,ne.then(function(te){r.handleTransmuxComplete(te)}).catch(function(te){r.transmuxerError(te,g,"transmuxer-interface push error")})):(t.async=!1,this.handleTransmuxComplete(ne))}},E.flush=function(h){var a=this;h.transmuxing.start=self.performance.now();var o=this.transmuxer,n=this.worker;if(n)n.postMessage({cmd:"flush",chunkMeta:h});else if(o){var v=o.flush(h),l=(0,M.isPromise)(v);l||o.async?((0,M.isPromise)(v)||(v=Promise.resolve(v)),v.then(function(i){a.handleFlushResult(i,h)}).catch(function(i){a.transmuxerError(i,h,"transmuxer-interface flush error")})):this.handleFlushResult(v,h)}},E.transmuxerError=function(h,a,o){!this.hls||this.hls.trigger(L.Events.ERROR,{type:B.ErrorTypes.MEDIA_ERROR,details:B.ErrorDetails.FRAG_PARSING_ERROR,chunkMeta:a,fatal:!1,error:h,err:h,reason:o})},E.handleFlushResult=function(h,a){var o=this;h.forEach(function(n){o.handleTransmuxComplete(n)}),this.onFlush(a)},E.onWorkerMessage=function(h){var a=h.data,o=this.hls;switch(a.event){case"init":{self.URL.revokeObjectURL(this.worker.objectURL);break}case"transmuxComplete":{this.handleTransmuxComplete(a.data);break}case"flush":{this.onFlush(a.data);break}case"workerLog":P.logger[a.data.logType]&&P.logger[a.data.logType](a.data.message);break;default:{a.data=a.data||{},a.data.frag=this.frag,a.data.id=this.id,o.trigger(a.event,a.data);break}}},E.configureTransmuxer=function(h){var a=this.worker,o=this.transmuxer;a?a.postMessage({cmd:"configure",config:h}):o&&o.configure(h)},E.handleTransmuxComplete=function(h){h.chunkMeta.transmuxing.end=self.performance.now(),this.onTransmuxComplete(h)},d}()},"./src/demux/transmuxer-worker.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>D});var C=T("./src/demux/transmuxer.ts"),L=T("./src/events.ts"),M=T("./src/utils/logger.ts"),P=T("./node_modules/eventemitter3/index.js"),B=T.n(P),A=T("./src/errors.ts");function D(E){var p=new P.EventEmitter,h=function(n,v){E.postMessage({event:n,data:v})};p.on(L.Events.FRAG_DECRYPTED,h),p.on(L.Events.ERROR,h);var a=function(){var n=function(i){var u=function(c){h("workerLog",{logType:i,message:c})};M.logger[i]=u};for(var v in M.logger)n(v)};E.addEventListener("message",function(o){var n=o.data;switch(n.cmd){case"init":{var v=JSON.parse(n.config);E.transmuxer=new C.default(p,n.typeSupported,v,n.vendor,n.id),(0,M.enableLogs)(v.debug,n.id),a(),h("init",null);break}case"configure":{E.transmuxer.configure(n.config);break}case"demux":{var l=E.transmuxer.push(n.data,n.decryptdata,n.chunkMeta,n.state);(0,C.isPromise)(l)?(E.transmuxer.async=!0,l.then(function(c){x(E,c)}).catch(function(c){h(L.Events.ERROR,{type:A.ErrorTypes.MEDIA_ERROR,details:A.ErrorDetails.FRAG_PARSING_ERROR,chunkMeta:n.chunkMeta,fatal:!1,error:c,err:c,reason:"transmuxer-worker push error"})})):(E.transmuxer.async=!1,x(E,l));break}case"flush":{var i=n.chunkMeta,u=E.transmuxer.flush(i),g=(0,C.isPromise)(u);g||E.transmuxer.async?((0,C.isPromise)(u)||(u=Promise.resolve(u)),u.then(function(c){S(E,c,i)}).catch(function(c){h(L.Events.ERROR,{type:A.ErrorTypes.MEDIA_ERROR,details:A.ErrorDetails.FRAG_PARSING_ERROR,chunkMeta:n.chunkMeta,fatal:!1,error:c,err:c,reason:"transmuxer-worker flush error"})})):S(E,u,i);break}default:break}})}function x(E,p){if(d(p.remuxResult))return!1;var h=[],a=p.remuxResult,o=a.audio,n=a.video;return o&&_(h,o),n&&_(h,n),E.postMessage({event:"transmuxComplete",data:p},h),!0}function _(E,p){p.data1&&E.push(p.data1.buffer),p.data2&&E.push(p.data2.buffer)}function S(E,p,h){var a=p.reduce(function(o,n){return x(E,n)||o},!1);a||E.postMessage({event:"transmuxComplete",data:p[0]}),E.postMessage({event:"flush",data:h})}function d(E){return!E.audio&&!E.video&&!E.text&&!E.id3&&!E.initSegment}},"./src/demux/transmuxer.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{TransmuxConfig:()=>n,TransmuxState:()=>v,default:()=>p,isPromise:()=>o});var C=T("./src/events.ts"),L=T("./src/errors.ts"),M=T("./src/crypt/decrypter.ts"),P=T("./src/demux/aacdemuxer.ts"),B=T("./src/demux/mp4demuxer.ts"),A=T("./src/demux/tsdemuxer.ts"),D=T("./src/demux/mp3demuxer.ts"),x=T("./src/remux/mp4-remuxer.ts"),_=T("./src/remux/passthrough-remuxer.ts"),S=T("./src/utils/logger.ts"),d;try{d=self.performance.now.bind(self.performance)}catch{S.logger.debug("Unable to use Performance API on this environment"),d=self.Date.now}var E=[{demux:B.default,remux:_.default},{demux:A.default,remux:x.default},{demux:P.default,remux:x.default},{demux:D.default,remux:x.default}],p=function(){function l(u,g,c,m,e){this.async=!1,this.observer=void 0,this.typeSupported=void 0,this.config=void 0,this.vendor=void 0,this.id=void 0,this.demuxer=void 0,this.remuxer=void 0,this.decrypter=void 0,this.probe=void 0,this.decryptionPromise=null,this.transmuxConfig=void 0,this.currentTransmuxState=void 0,this.observer=u,this.typeSupported=g,this.config=c,this.vendor=m,this.id=e}var i=l.prototype;return i.configure=function(g){this.transmuxConfig=g,this.decrypter&&this.decrypter.reset()},i.push=function(g,c,m,e){var r=this,t=m.transmuxing;t.executeStart=d();var s=new Uint8Array(g),y=this.currentTransmuxState,f=this.transmuxConfig;e&&(this.currentTransmuxState=e);var b=e||y,R=b.contiguous,I=b.discontinuity,k=b.trackSwitch,F=b.accurateTimeOffset,K=b.timeOffset,H=b.initSegmentChange,j=f.audioCodec,Y=f.videoCodec,Q=f.defaultInitPts,q=f.duration,ne=f.initSegmentData,te=h(s,c);if(te&&te.method==="AES-128"){var ae=this.getDecrypter();if(ae.isSync()){var ue=ae.softwareDecrypt(s,te.key.buffer,te.iv.buffer);if(!ue)return t.executeEnd=d(),a(m);s=new Uint8Array(ue)}else return this.decryptionPromise=ae.webCryptoDecrypt(s,te.key.buffer,te.iv.buffer).then(function(de){var xe=r.push(de,null,m);return r.decryptionPromise=null,xe}),this.decryptionPromise}var ce=this.needsProbing(I,k);ce&&this.configureTransmuxer(s),(I||k||H||ce)&&this.resetInitSegment(ne,j,Y,q,c),(I||H||ce)&&this.resetInitialTimestamp(Q),R||this.resetContiguity();var le=this.transmux(s,te,K,F,m),fe=this.currentTransmuxState;return fe.contiguous=!0,fe.discontinuity=!1,fe.trackSwitch=!1,t.executeEnd=d(),le},i.flush=function(g){var c=this,m=g.transmuxing;m.executeStart=d();var e=this.decrypter,r=this.currentTransmuxState,t=this.decryptionPromise;if(t)return t.then(function(){return c.flush(g)});var s=[],y=r.timeOffset;if(e){var f=e.flush();f&&s.push(this.push(f,null,g))}var b=this.demuxer,R=this.remuxer;if(!b||!R)return this.observer.emit(C.Events.ERROR,C.Events.ERROR,{type:L.ErrorTypes.MEDIA_ERROR,details:L.ErrorDetails.FRAG_PARSING_ERROR,fatal:!0,reason:"no demux matching with content found"}),m.executeEnd=d(),[a(g)];var I=b.flush(y);return o(I)?I.then(function(k){return c.flushRemux(s,k,g),s}):(this.flushRemux(s,I,g),s)},i.flushRemux=function(g,c,m){var e=c.audioTrack,r=c.videoTrack,t=c.id3Track,s=c.textTrack,y=this.currentTransmuxState,f=y.accurateTimeOffset,b=y.timeOffset;S.logger.log("[transmuxer.ts]: Flushed fragment "+m.sn+(m.part>-1?" p: "+m.part:"")+" of level "+m.level);var R=this.remuxer.remux(e,r,t,s,b,f,!0,this.id);g.push({remuxResult:R,chunkMeta:m}),m.transmuxing.executeEnd=d()},i.resetInitialTimestamp=function(g){var c=this.demuxer,m=this.remuxer;!c||!m||(c.resetTimeStamp(g),m.resetTimeStamp(g))},i.resetContiguity=function(){var g=this.demuxer,c=this.remuxer;!g||!c||(g.resetContiguity(),c.resetNextTimestamp())},i.resetInitSegment=function(g,c,m,e,r){var t=this.demuxer,s=this.remuxer;!t||!s||(t.resetInitSegment(g,c,m,e),s.resetInitSegment(g,c,m,r))},i.destroy=function(){this.demuxer&&(this.demuxer.destroy(),this.demuxer=void 0),this.remuxer&&(this.remuxer.destroy(),this.remuxer=void 0)},i.transmux=function(g,c,m,e,r){var t;return c&&c.method==="SAMPLE-AES"?t=this.transmuxSampleAes(g,c,m,e,r):t=this.transmuxUnencrypted(g,m,e,r),t},i.transmuxUnencrypted=function(g,c,m,e){var r=this.demuxer.demux(g,c,!1,!this.config.progressive),t=r.audioTrack,s=r.videoTrack,y=r.id3Track,f=r.textTrack,b=this.remuxer.remux(t,s,y,f,c,m,!1,this.id);return{remuxResult:b,chunkMeta:e}},i.transmuxSampleAes=function(g,c,m,e,r){var t=this;return this.demuxer.demuxSampleAes(g,c,m).then(function(s){var y=t.remuxer.remux(s.audioTrack,s.videoTrack,s.id3Track,s.textTrack,m,e,!1,t.id);return{remuxResult:y,chunkMeta:r}})},i.configureTransmuxer=function(g){for(var c=this.config,m=this.observer,e=this.typeSupported,r=this.vendor,t,s=0,y=E.length;s<y;s++)if(E[s].demux.probe(g)){t=E[s];break}t||(S.logger.warn("Failed to find demuxer by probing frag, treating as mp4 passthrough"),t={demux:B.default,remux:_.default});var f=this.demuxer,b=this.remuxer,R=t.remux,I=t.demux;(!b||!(b instanceof R))&&(this.remuxer=new R(m,c,e,r)),(!f||!(f instanceof I))&&(this.demuxer=new I(m,c,e),this.probe=I.probe)},i.needsProbing=function(g,c){return!this.demuxer||!this.remuxer||g||c},i.getDecrypter=function(){var g=this.decrypter;return g||(g=this.decrypter=new M.default(this.config)),g},l}();function h(l,i){var u=null;return l.byteLength>0&&i!=null&&i.key!=null&&i.iv!==null&&i.method!=null&&(u=i),u}var a=function(i){return{remuxResult:{},chunkMeta:i}};function o(l){return"then"in l&&l.then instanceof Function}var n=function(i,u,g,c,m){this.audioCodec=void 0,this.videoCodec=void 0,this.initSegmentData=void 0,this.duration=void 0,this.defaultInitPts=void 0,this.audioCodec=i,this.videoCodec=u,this.initSegmentData=g,this.duration=c,this.defaultInitPts=m},v=function(i,u,g,c,m,e){this.discontinuity=void 0,this.contiguous=void 0,this.accurateTimeOffset=void 0,this.trackSwitch=void 0,this.timeOffset=void 0,this.initSegmentChange=void 0,this.discontinuity=i,this.contiguous=u,this.accurateTimeOffset=g,this.trackSwitch=c,this.timeOffset=m,this.initSegmentChange=e}},"./src/demux/tsdemuxer.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>v});var C=T("./src/demux/adts.ts"),L=T("./src/demux/mpegaudio.ts"),M=T("./src/demux/exp-golomb.ts"),P=T("./src/demux/sample-aes.ts"),B=T("./src/events.ts"),A=T("./src/utils/mp4-tools.ts"),D=T("./src/utils/logger.ts"),x=T("./src/errors.ts"),_=T("./src/types/demuxer.ts");function S(){return S=Object.assign?Object.assign.bind():function(l){for(var i=1;i<arguments.length;i++){var u=arguments[i];for(var g in u)Object.prototype.hasOwnProperty.call(u,g)&&(l[g]=u[g])}return l},S.apply(this,arguments)}var d=188,E=function(){function l(u,g,c){this.observer=void 0,this.config=void 0,this.typeSupported=void 0,this.sampleAes=null,this.pmtParsed=!1,this.audioCodec=void 0,this.videoCodec=void 0,this._duration=0,this._pmtId=-1,this._avcTrack=void 0,this._audioTrack=void 0,this._id3Track=void 0,this._txtTrack=void 0,this.aacOverFlow=null,this.avcSample=null,this.remainderData=null,this.observer=u,this.config=g,this.typeSupported=c}l.probe=function(g){var c=l.syncOffset(g);return c>0&&D.logger.warn("MPEG2-TS detected but first sync word found @ offset "+c),c!==-1},l.syncOffset=function(g){for(var c=Math.min(d*5,g.length-d*2)+1,m=0;m<c;){if(g[m]===71&&g[m+d]===71)return m;m++}return-1},l.createTrack=function(g,c){return{container:g==="video"||g==="audio"?"video/mp2t":void 0,type:g,id:A.RemuxerTrackIdConfig[g],pid:-1,inputTimeScale:9e4,sequenceNumber:0,samples:[],dropped:0,duration:g==="audio"?c:void 0}};var i=l.prototype;return i.resetInitSegment=function(g,c,m,e){this.pmtParsed=!1,this._pmtId=-1,this._avcTrack=l.createTrack("video"),this._audioTrack=l.createTrack("audio",e),this._id3Track=l.createTrack("id3"),this._txtTrack=l.createTrack("text"),this._audioTrack.segmentCodec="aac",this.aacOverFlow=null,this.avcSample=null,this.remainderData=null,this.audioCodec=c,this.videoCodec=m,this._duration=e},i.resetTimeStamp=function(){},i.resetContiguity=function(){var g=this._audioTrack,c=this._avcTrack,m=this._id3Track;g&&(g.pesData=null),c&&(c.pesData=null),m&&(m.pesData=null),this.aacOverFlow=null,this.avcSample=null,this.remainderData=null},i.demux=function(g,c,m,e){m===void 0&&(m=!1),e===void 0&&(e=!1),m||(this.sampleAes=null);var r,t=this._avcTrack,s=this._audioTrack,y=this._id3Track,f=this._txtTrack,b=t.pid,R=t.pesData,I=s.pid,k=y.pid,F=s.pesData,K=y.pesData,H=null,j=this.pmtParsed,Y=this._pmtId,Q=g.length;if(this.remainderData&&(g=(0,A.appendUint8Array)(this.remainderData,g),Q=g.length,this.remainderData=null),Q<d&&!e)return this.remainderData=g,{audioTrack:s,videoTrack:t,id3Track:y,textTrack:f};var q=Math.max(0,l.syncOffset(g));Q-=(Q-q)%d,Q<g.byteLength&&!e&&(this.remainderData=new Uint8Array(g.buffer,Q,g.buffer.byteLength-Q));for(var ne=0,te=q;te<Q;te+=d)if(g[te]===71){var ae=!!(g[te+1]&64),ue=((g[te+1]&31)<<8)+g[te+2],ce=(g[te+3]&48)>>4,le=void 0;if(ce>1){if(le=te+5+g[te+4],le===te+d)continue}else le=te+4;switch(ue){case b:ae&&(R&&(r=o(R))&&this.parseAVCPES(t,f,r,!1),R={data:[],size:0}),R&&(R.data.push(g.subarray(le,te+d)),R.size+=te+d-le);break;case I:if(ae){if(F&&(r=o(F)))switch(s.segmentCodec){case"aac":this.parseAACPES(s,r);break;case"mp3":this.parseMPEGPES(s,r);break}F={data:[],size:0}}F&&(F.data.push(g.subarray(le,te+d)),F.size+=te+d-le);break;case k:ae&&(K&&(r=o(K))&&this.parseID3PES(y,r),K={data:[],size:0}),K&&(K.data.push(g.subarray(le,te+d)),K.size+=te+d-le);break;case 0:ae&&(le+=g[le]+1),Y=this._pmtId=h(g,le);break;case Y:{ae&&(le+=g[le]+1);var fe=a(g,le,this.typeSupported,m);b=fe.avc,b>0&&(t.pid=b),I=fe.audio,I>0&&(s.pid=I,s.segmentCodec=fe.segmentCodec),k=fe.id3,k>0&&(y.pid=k),H!==null&&!j&&(D.logger.log("unknown PID '"+H+"' in TS found"),H=null,te=q-188),j=this.pmtParsed=!0;break}case 17:case 8191:break;default:H=ue;break}}else ne++;ne>0&&this.observer.emit(B.Events.ERROR,B.Events.ERROR,{type:x.ErrorTypes.MEDIA_ERROR,details:x.ErrorDetails.FRAG_PARSING_ERROR,fatal:!1,reason:"Found "+ne+" TS packet/s that do not start with 0x47"}),t.pesData=R,s.pesData=F,y.pesData=K;var de={audioTrack:s,videoTrack:t,id3Track:y,textTrack:f};return e&&this.extractRemainingSamples(de),de},i.flush=function(){var g=this.remainderData;this.remainderData=null;var c;return g?c=this.demux(g,-1,!1,!0):c={videoTrack:this._avcTrack,audioTrack:this._audioTrack,id3Track:this._id3Track,textTrack:this._txtTrack},this.extractRemainingSamples(c),this.sampleAes?this.decrypt(c,this.sampleAes):c},i.extractRemainingSamples=function(g){var c=g.audioTrack,m=g.videoTrack,e=g.id3Track,r=g.textTrack,t=m.pesData,s=c.pesData,y=e.pesData,f;if(t&&(f=o(t))?(this.parseAVCPES(m,r,f,!0),m.pesData=null):m.pesData=t,s&&(f=o(s))){switch(c.segmentCodec){case"aac":this.parseAACPES(c,f);break;case"mp3":this.parseMPEGPES(c,f);break}c.pesData=null}else s!=null&&s.size&&D.logger.log("last AAC PES packet truncated,might overlap between fragments"),c.pesData=s;y&&(f=o(y))?(this.parseID3PES(e,f),e.pesData=null):e.pesData=y},i.demuxSampleAes=function(g,c,m){var e=this.demux(g,m,!0,!this.config.progressive),r=this.sampleAes=new P.default(this.observer,this.config,c);return this.decrypt(e,r)},i.decrypt=function(g,c){return new Promise(function(m){var e=g.audioTrack,r=g.videoTrack;e.samples&&e.segmentCodec==="aac"?c.decryptAacSamples(e.samples,0,function(){r.samples?c.decryptAvcSamples(r.samples,0,0,function(){m(g)}):m(g)}):r.samples&&c.decryptAvcSamples(r.samples,0,0,function(){m(g)})})},i.destroy=function(){this._duration=0},i.parseAVCPES=function(g,c,m,e){var r=this,t=this.parseAVCNALu(g,m.data),s=!1,y=this.avcSample,f,b=!1;m.data=null,y&&t.length&&!g.audFound&&(n(y,g),y=this.avcSample=p(!1,m.pts,m.dts,"")),t.forEach(function(R){switch(R.type){case 1:{f=!0,y||(y=r.avcSample=p(!0,m.pts,m.dts,"")),s&&(y.debug+="NDR "),y.frame=!0;var I=R.data;if(b&&I.length>4){var k=new M.default(I).readSliceType();(k===2||k===4||k===7||k===9)&&(y.key=!0)}break}case 5:f=!0,y||(y=r.avcSample=p(!0,m.pts,m.dts,"")),s&&(y.debug+="IDR "),y.key=!0,y.frame=!0;break;case 6:{f=!0,s&&y&&(y.debug+="SEI "),(0,A.parseSEIMessageFromNALu)(R.data,1,m.pts,c.samples);break}case 7:if(f=!0,b=!0,s&&y&&(y.debug+="SPS "),!g.sps){var F=new M.default(R.data),K=F.readSPS();g.width=K.width,g.height=K.height,g.pixelRatio=K.pixelRatio,g.sps=[R.data],g.duration=r._duration;for(var H=R.data.subarray(1,4),j="avc1.",Y=0;Y<3;Y++){var Q=H[Y].toString(16);Q.length<2&&(Q="0"+Q),j+=Q}g.codec=j}break;case 8:f=!0,s&&y&&(y.debug+="PPS "),g.pps||(g.pps=[R.data]);break;case 9:f=!1,g.audFound=!0,y&&n(y,g),y=r.avcSample=p(!1,m.pts,m.dts,s?"AUD ":"");break;case 12:f=!0;break;default:f=!1,y&&(y.debug+="unknown NAL "+R.type+" ");break}if(y&&f){var q=y.units;q.push(R)}}),e&&y&&(n(y,g),this.avcSample=null)},i.getLastNalUnit=function(g){var c,m=this.avcSample,e;if((!m||m.units.length===0)&&(m=g[g.length-1]),(c=m)!==null&&c!==void 0&&c.units){var r=m.units;e=r[r.length-1]}return e},i.parseAVCNALu=function(g,c){var m=c.byteLength,e=g.naluState||0,r=e,t=[],s=0,y,f,b,R=-1,I=0;for(e===-1&&(R=0,I=c[0]&31,e=0,s=1);s<m;){if(y=c[s++],!e){e=y?0:1;continue}if(e===1){e=y?0:2;continue}if(!y)e=3;else if(y===1){if(R>=0){var k={data:c.subarray(R,s-e-1),type:I};t.push(k)}else{var F=this.getLastNalUnit(g.samples);if(F&&(r&&s<=4-r&&F.state&&(F.data=F.data.subarray(0,F.data.byteLength-r)),f=s-e-1,f>0)){var K=new Uint8Array(F.data.byteLength+f);K.set(F.data,0),K.set(c.subarray(0,f),F.data.byteLength),F.data=K,F.state=0}}s<m?(b=c[s]&31,R=s,I=b,e=0):e=-1}else e=0}if(R>=0&&e>=0){var H={data:c.subarray(R,m),type:I,state:e};t.push(H)}if(t.length===0){var j=this.getLastNalUnit(g.samples);if(j){var Y=new Uint8Array(j.data.byteLength+c.byteLength);Y.set(j.data,0),Y.set(c,j.data.byteLength),j.data=Y}}return g.naluState=e,t},i.parseAACPES=function(g,c){var m=0,e=this.aacOverFlow,r=c.data;if(e){this.aacOverFlow=null;var t=e.missing,s=e.sample.unit.byteLength;if(t===-1){var y=new Uint8Array(s+r.byteLength);y.set(e.sample.unit,0),y.set(r,s),r=y}else{var f=s-t;e.sample.unit.set(r.subarray(0,t),f),g.samples.push(e.sample),m=e.missing}}var b,R;for(b=m,R=r.length;b<R-1&&!C.isHeader(r,b);b++);if(b!==m){var I,k;if(b<R-1?(I="AAC PES did not start with ADTS header,offset:"+b,k=!1):(I="no ADTS header found in AAC PES",k=!0),D.logger.warn("parsing error:"+I),this.observer.emit(B.Events.ERROR,B.Events.ERROR,{type:x.ErrorTypes.MEDIA_ERROR,details:x.ErrorDetails.FRAG_PARSING_ERROR,fatal:k,reason:I}),k)return}C.initTrackConfig(g,this.observer,r,b,this.audioCodec);var F;if(c.pts!==void 0)F=c.pts;else if(e){var K=C.getFrameDuration(g.samplerate);F=e.sample.pts+K}else{D.logger.warn("[tsdemuxer]: AAC PES unknown PTS");return}for(var H=0,j;b<R;)if(j=C.appendFrame(g,r,b,F,H),b+=j.length,j.missing){this.aacOverFlow=j;break}else for(H++;b<R-1&&!C.isHeader(r,b);b++);},i.parseMPEGPES=function(g,c){var m=c.data,e=m.length,r=0,t=0,s=c.pts;if(s===void 0){D.logger.warn("[tsdemuxer]: MPEG PES unknown PTS");return}for(;t<e;)if(L.isHeader(m,t)){var y=L.appendFrame(g,m,t,s,r);if(y)t+=y.length,r++;else break}else t++},i.parseID3PES=function(g,c){if(c.pts===void 0){D.logger.warn("[tsdemuxer]: ID3 PES unknown PTS");return}var m=S({},c,{type:this._avcTrack?_.MetadataSchema.emsg:_.MetadataSchema.audioId3,duration:Number.POSITIVE_INFINITY});g.samples.push(m)},l}();function p(l,i,u,g){return{key:l,frame:!1,pts:i,dts:u,units:[],debug:g,length:0}}function h(l,i){return(l[i+10]&31)<<8|l[i+11]}function a(l,i,u,g){var c={audio:-1,avc:-1,id3:-1,segmentCodec:"aac"},m=(l[i+1]&15)<<8|l[i+2],e=i+3+m-4,r=(l[i+10]&15)<<8|l[i+11];for(i+=12+r;i<e;){var t=(l[i+1]&31)<<8|l[i+2];switch(l[i]){case 207:if(!g){D.logger.log("ADTS AAC with AES-128-CBC frame encryption found in unencrypted stream");break}case 15:c.audio===-1&&(c.audio=t);break;case 21:c.id3===-1&&(c.id3=t);break;case 219:if(!g){D.logger.log("H.264 with AES-128-CBC slice encryption found in unencrypted stream");break}case 27:c.avc===-1&&(c.avc=t);break;case 3:case 4:u.mpeg!==!0&&u.mp3!==!0?D.logger.log("MPEG audio found, not supported in this browser"):c.audio===-1&&(c.audio=t,c.segmentCodec="mp3");break;case 36:D.logger.warn("Unsupported HEVC stream type found");break;default:break}i+=((l[i+3]&15)<<8|l[i+4])+5}return c}function o(l){var i=0,u,g,c,m,e,r=l.data;if(!l||l.size===0)return null;for(;r[0].length<19&&r.length>1;){var t=new Uint8Array(r[0].length+r[1].length);t.set(r[0]),t.set(r[1],r[0].length),r[0]=t,r.splice(1,1)}u=r[0];var s=(u[0]<<16)+(u[1]<<8)+u[2];if(s===1){if(g=(u[4]<<8)+u[5],g&&g>l.size-6)return null;var y=u[7];y&192&&(m=(u[9]&14)*536870912+(u[10]&255)*4194304+(u[11]&254)*16384+(u[12]&255)*128+(u[13]&254)/2,y&64?(e=(u[14]&14)*536870912+(u[15]&255)*4194304+(u[16]&254)*16384+(u[17]&255)*128+(u[18]&254)/2,m-e>54e5&&(D.logger.warn(Math.round((m-e)/9e4)+"s delta between PTS and DTS, align them"),m=e)):e=m),c=u[8];var f=c+9;if(l.size<=f)return null;l.size-=f;for(var b=new Uint8Array(l.size),R=0,I=r.length;R<I;R++){u=r[R];var k=u.byteLength;if(f)if(f>k){f-=k;continue}else u=u.subarray(f),k-=f,f=0;b.set(u,i),i+=k}return g&&(g-=c+3),{data:b,pts:m,dts:e,len:g}}return null}function n(l,i){if(l.units.length&&l.frame){if(l.pts===void 0){var u=i.samples,g=u.length;if(g){var c=u[g-1];l.pts=c.pts,l.dts=c.dts}else{i.dropped++;return}}i.samples.push(l)}l.debug.length&&D.logger.log(l.pts+"/"+l.dts+":"+l.debug)}let v=E},"./src/demux/webworkify-webpack.js":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>d});var C=function(){var p=ENTRY_MODULE,h={},a=function n(v){var l=h[v];if(l!==void 0)return l.exports;var i=h[v]={exports:{}};return p[v].call(i.exports,i,i.exports,n),i.exports};a.m=p,function(){a.n=function(n){var v=n&&n.__esModule?function(){return n.default}:function(){return n};return a.d(v,{a:v}),v}}(),function(){a.d=function(n,v){for(var l in v)a.o(v,l)&&!a.o(n,l)&&Object.defineProperty(n,l,{enumerable:!0,get:v[l]})}}(),function(){a.o=function(n,v){return Object.prototype.hasOwnProperty.call(n,v)}}(),function(){a.r=function(n){typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(n,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(n,"__esModule",{value:!0})}}();var o=a(ENTRY_MODULE);return o.default||o},L=C.toString().split("ENTRY_MODULE"),M="[\\.|\\-|\\+|\\w|/|@]+",P="\\(\\s*(/\\*.*?\\*/)?\\s*.*?("+M+").*?\\)";function B(E){return(E+"").replace(/[.?*+^$[\]\\(){}|-]/g,"\\$&")}function A(E){return!isNaN(1*E)}function D(E,p,h){var a={};a[h]=[];var o=p.toString().replace(/^"[^"]+"/,"function"),n=o.match(/^function\s?\w*\(\w+,\s*\w+,\s*(\w+)\)/)||o.match(/^\(\w+,\s*\w+,\s*(\w+)\)\s?\=\s?\>/);if(!n)return a;for(var v=n[1],l=new RegExp("(\\\\n|\\W)"+B(v)+P,"g"),i;i=l.exec(o);)i[3]!=="dll-reference"&&a[h].push(i[3]);for(l=new RegExp("\\("+B(v)+'\\("(dll-reference\\s('+M+'))"\\)\\)'+P,"g");i=l.exec(o);)E[i[2]]||(a[h].push(i[1]),E[i[2]]=T(i[1]).m),a[i[2]]=a[i[2]]||[],a[i[2]].push(i[4]);for(var u=Object.keys(a),g=0;g<u.length;g++)for(var c=0;c<a[u[g]].length;c++)A(a[u[g]][c])&&(a[u[g]][c]=1*a[u[g]][c]);return a}function x(E){var p=Object.keys(E);return p.reduce(function(h,a){return h||E[a].length>0},!1)}function _(E,p){for(var h={main:[p]},a={main:[]},o={main:{}};x(h);)for(var n=Object.keys(h),v=0;v<n.length;v++){var l=n[v],i=h[l],u=i.pop();if(o[l]=o[l]||{},!(o[l][u]||!E[l][u])){o[l][u]=!0,a[l]=a[l]||[],a[l].push(u);for(var g=D(E,E[l][u],l),c=Object.keys(g),m=0;m<c.length;m++)h[c[m]]=h[c[m]]||[],h[c[m]]=h[c[m]].concat(g[c[m]])}}return a}function S(E,p,h,a){var o=E[a].map(function(n){return'"'+n+'": '+p[a][n].toString().replace(/^"[^"]+"/,"function")}).join(",");return L[0]+"{"+o+"}"+L[1]+'"'+h+'"'+L[2]}function d(E,p){p=p||{};var h={main:T.m},a=p.all?{main:Object.keys(h.main)}:_(h,E),o="";Object.keys(a).filter(function(u){return u!=="main"}).forEach(function(u){for(var g=0;a[u][g];)g++;a[u].push(g),h[u][g]="(function(module, exports, __webpack_require__) { module.exports = __webpack_require__; })",o=o+("var "+u+" = ("+S(a,h,g,modules)+`)();
|
|
21
|
-
`)}),o=o+("new (("+S(a,h,E,"main")+")())(self);");var n=new window.Blob([o],{type:"text/javascript"}),v=window.URL||window.webkitURL||window.mozURL||window.msURL,l=v.createObjectURL(n),i=new window.Worker(l);return i.objectURL=l,i}},"./src/errors.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{ErrorDetails:()=>L,ErrorTypes:()=>C});var C;(function(M){M.NETWORK_ERROR="networkError",M.MEDIA_ERROR="mediaError",M.KEY_SYSTEM_ERROR="keySystemError",M.MUX_ERROR="muxError",M.OTHER_ERROR="otherError"})(C||(C={}));var L;(function(M){M.KEY_SYSTEM_NO_KEYS="keySystemNoKeys",M.KEY_SYSTEM_NO_ACCESS="keySystemNoAccess",M.KEY_SYSTEM_NO_SESSION="keySystemNoSession",M.KEY_SYSTEM_NO_CONFIGURED_LICENSE="keySystemNoConfiguredLicense",M.KEY_SYSTEM_LICENSE_REQUEST_FAILED="keySystemLicenseRequestFailed",M.KEY_SYSTEM_SERVER_CERTIFICATE_REQUEST_FAILED="keySystemServerCertificateRequestFailed",M.KEY_SYSTEM_SERVER_CERTIFICATE_UPDATE_FAILED="keySystemServerCertificateUpdateFailed",M.KEY_SYSTEM_SESSION_UPDATE_FAILED="keySystemSessionUpdateFailed",M.KEY_SYSTEM_STATUS_OUTPUT_RESTRICTED="keySystemStatusOutputRestricted",M.KEY_SYSTEM_STATUS_INTERNAL_ERROR="keySystemStatusInternalError",M.MANIFEST_LOAD_ERROR="manifestLoadError",M.MANIFEST_LOAD_TIMEOUT="manifestLoadTimeOut",M.MANIFEST_PARSING_ERROR="manifestParsingError",M.MANIFEST_INCOMPATIBLE_CODECS_ERROR="manifestIncompatibleCodecsError",M.LEVEL_EMPTY_ERROR="levelEmptyError",M.LEVEL_LOAD_ERROR="levelLoadError",M.LEVEL_LOAD_TIMEOUT="levelLoadTimeOut",M.LEVEL_SWITCH_ERROR="levelSwitchError",M.AUDIO_TRACK_LOAD_ERROR="audioTrackLoadError",M.AUDIO_TRACK_LOAD_TIMEOUT="audioTrackLoadTimeOut",M.SUBTITLE_LOAD_ERROR="subtitleTrackLoadError",M.SUBTITLE_TRACK_LOAD_TIMEOUT="subtitleTrackLoadTimeOut",M.FRAG_LOAD_ERROR="fragLoadError",M.FRAG_LOAD_TIMEOUT="fragLoadTimeOut",M.FRAG_DECRYPT_ERROR="fragDecryptError",M.FRAG_PARSING_ERROR="fragParsingError",M.REMUX_ALLOC_ERROR="remuxAllocError",M.KEY_LOAD_ERROR="keyLoadError",M.KEY_LOAD_TIMEOUT="keyLoadTimeOut",M.BUFFER_ADD_CODEC_ERROR="bufferAddCodecError",M.BUFFER_INCOMPATIBLE_CODECS_ERROR="bufferIncompatibleCodecsError",M.BUFFER_APPEND_ERROR="bufferAppendError",M.BUFFER_APPENDING_ERROR="bufferAppendingError",M.BUFFER_STALLED_ERROR="bufferStalledError",M.BUFFER_FULL_ERROR="bufferFullError",M.BUFFER_SEEK_OVER_HOLE="bufferSeekOverHole",M.BUFFER_NUDGE_ON_STALL="bufferNudgeOnStall",M.INTERNAL_EXCEPTION="internalException",M.INTERNAL_ABORTED="aborted",M.UNKNOWN="unknown"})(L||(L={}))},"./src/events.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{Events:()=>C});var C;(function(L){L.MEDIA_ATTACHING="hlsMediaAttaching",L.MEDIA_ATTACHED="hlsMediaAttached",L.MEDIA_DETACHING="hlsMediaDetaching",L.MEDIA_DETACHED="hlsMediaDetached",L.BUFFER_RESET="hlsBufferReset",L.BUFFER_CODECS="hlsBufferCodecs",L.BUFFER_CREATED="hlsBufferCreated",L.BUFFER_APPENDING="hlsBufferAppending",L.BUFFER_APPENDED="hlsBufferAppended",L.BUFFER_EOS="hlsBufferEos",L.BUFFER_FLUSHING="hlsBufferFlushing",L.BUFFER_FLUSHED="hlsBufferFlushed",L.MANIFEST_LOADING="hlsManifestLoading",L.MANIFEST_LOADED="hlsManifestLoaded",L.MANIFEST_PARSED="hlsManifestParsed",L.LEVEL_SWITCHING="hlsLevelSwitching",L.LEVEL_SWITCHED="hlsLevelSwitched",L.LEVEL_LOADING="hlsLevelLoading",L.LEVEL_LOADED="hlsLevelLoaded",L.LEVEL_UPDATED="hlsLevelUpdated",L.LEVEL_PTS_UPDATED="hlsLevelPtsUpdated",L.LEVELS_UPDATED="hlsLevelsUpdated",L.AUDIO_TRACKS_UPDATED="hlsAudioTracksUpdated",L.AUDIO_TRACK_SWITCHING="hlsAudioTrackSwitching",L.AUDIO_TRACK_SWITCHED="hlsAudioTrackSwitched",L.AUDIO_TRACK_LOADING="hlsAudioTrackLoading",L.AUDIO_TRACK_LOADED="hlsAudioTrackLoaded",L.SUBTITLE_TRACKS_UPDATED="hlsSubtitleTracksUpdated",L.SUBTITLE_TRACKS_CLEARED="hlsSubtitleTracksCleared",L.SUBTITLE_TRACK_SWITCH="hlsSubtitleTrackSwitch",L.SUBTITLE_TRACK_LOADING="hlsSubtitleTrackLoading",L.SUBTITLE_TRACK_LOADED="hlsSubtitleTrackLoaded",L.SUBTITLE_FRAG_PROCESSED="hlsSubtitleFragProcessed",L.CUES_PARSED="hlsCuesParsed",L.NON_NATIVE_TEXT_TRACKS_FOUND="hlsNonNativeTextTracksFound",L.INIT_PTS_FOUND="hlsInitPtsFound",L.FRAG_LOADING="hlsFragLoading",L.FRAG_LOAD_EMERGENCY_ABORTED="hlsFragLoadEmergencyAborted",L.FRAG_LOADED="hlsFragLoaded",L.FRAG_DECRYPTED="hlsFragDecrypted",L.FRAG_PARSING_INIT_SEGMENT="hlsFragParsingInitSegment",L.FRAG_PARSING_USERDATA="hlsFragParsingUserdata",L.FRAG_PARSING_METADATA="hlsFragParsingMetadata",L.FRAG_PARSED="hlsFragParsed",L.FRAG_BUFFERED="hlsFragBuffered",L.FRAG_CHANGED="hlsFragChanged",L.FPS_DROP="hlsFpsDrop",L.FPS_DROP_LEVEL_CAPPING="hlsFpsDropLevelCapping",L.ERROR="hlsError",L.DESTROYING="hlsDestroying",L.KEY_LOADING="hlsKeyLoading",L.KEY_LOADED="hlsKeyLoaded",L.LIVE_BACK_BUFFER_REACHED="hlsLiveBackBufferReached",L.BACK_BUFFER_REACHED="hlsBackBufferReached"})(C||(C={}))},"./src/hls.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>g});var C=T("./node_modules/url-toolkit/src/url-toolkit.js"),L=T.n(C),M=T("./src/loader/playlist-loader.ts"),P=T("./src/controller/id3-track-controller.ts"),B=T("./src/controller/latency-controller.ts"),A=T("./src/controller/level-controller.ts"),D=T("./src/controller/fragment-tracker.ts"),x=T("./src/loader/key-loader.ts"),_=T("./src/controller/stream-controller.ts"),S=T("./src/is-supported.ts"),d=T("./src/utils/logger.ts"),E=T("./src/config.ts"),p=T("./node_modules/eventemitter3/index.js"),h=T.n(p),a=T("./src/events.ts"),o=T("./src/errors.ts"),n=T("./src/types/level.ts");function v(c,m){for(var e=0;e<m.length;e++){var r=m[e];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(c,i(r.key),r)}}function l(c,m,e){return m&&v(c.prototype,m),e&&v(c,e),Object.defineProperty(c,"prototype",{writable:!1}),c}function i(c){var m=u(c,"string");return typeof m=="symbol"?m:String(m)}function u(c,m){if(typeof c!="object"||c===null)return c;var e=c[Symbol.toPrimitive];if(e!==void 0){var r=e.call(c,m||"default");if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(m==="string"?String:Number)(c)}var g=function(){c.isSupported=function(){return(0,S.isSupported)()};function c(e){e===void 0&&(e={}),this.config=void 0,this.userConfig=void 0,this.coreComponents=void 0,this.networkControllers=void 0,this._emitter=new p.EventEmitter,this._autoLevelCapping=void 0,this._maxHdcpLevel=null,this.abrController=void 0,this.bufferController=void 0,this.capLevelController=void 0,this.latencyController=void 0,this.levelController=void 0,this.streamController=void 0,this.audioTrackController=void 0,this.subtitleTrackController=void 0,this.emeController=void 0,this.cmcdController=void 0,this._media=null,this.url=null;var r=this.config=(0,E.mergeConfig)(c.DefaultConfig,e);this.userConfig=e,(0,d.enableLogs)(r.debug,"Hls instance"),this._autoLevelCapping=-1,r.progressive&&(0,E.enableStreamingMode)(r);var t=r.abrController,s=r.bufferController,y=r.capLevelController,f=r.fpsController,b=this.abrController=new t(this),R=this.bufferController=new s(this),I=this.capLevelController=new y(this),k=new f(this),F=new M.default(this),K=new P.default(this),H=this.levelController=new A.default(this),j=new D.FragmentTracker(this),Y=new x.default(this.config),Q=this.streamController=new _.default(this,j,Y);I.setStreamController(Q),k.setStreamController(Q);var q=[F,H,Q];this.networkControllers=q;var ne=[b,R,I,k,K,j];this.audioTrackController=this.createController(r.audioTrackController,q);var te=r.audioStreamController;te&&q.push(new te(this,j,Y)),this.subtitleTrackController=this.createController(r.subtitleTrackController,q);var ae=r.subtitleStreamController;ae&&q.push(new ae(this,j,Y)),this.createController(r.timelineController,ne),Y.emeController=this.emeController=this.createController(r.emeController,ne),this.cmcdController=this.createController(r.cmcdController,ne),this.latencyController=this.createController(B.default,ne),this.coreComponents=ne}var m=c.prototype;return m.createController=function(r,t){if(r){var s=new r(this);return t&&t.push(s),s}return null},m.on=function(r,t,s){s===void 0&&(s=this),this._emitter.on(r,t,s)},m.once=function(r,t,s){s===void 0&&(s=this),this._emitter.once(r,t,s)},m.removeAllListeners=function(r){this._emitter.removeAllListeners(r)},m.off=function(r,t,s,y){s===void 0&&(s=this),this._emitter.off(r,t,s,y)},m.listeners=function(r){return this._emitter.listeners(r)},m.emit=function(r,t,s){return this._emitter.emit(r,t,s)},m.trigger=function(r,t){if(this.config.debug)return this.emit(r,r,t);try{return this.emit(r,r,t)}catch(s){d.logger.error("An internal error happened while handling event "+r+'. Error message: "'+s.message+'". Here is a stacktrace:',s),this.trigger(a.Events.ERROR,{type:o.ErrorTypes.OTHER_ERROR,details:o.ErrorDetails.INTERNAL_EXCEPTION,fatal:!1,event:r,error:s})}return!1},m.listenerCount=function(r){return this._emitter.listenerCount(r)},m.destroy=function(){d.logger.log("destroy"),this.trigger(a.Events.DESTROYING,void 0),this.detachMedia(),this.removeAllListeners(),this._autoLevelCapping=-1,this.url=null,this.networkControllers.forEach(function(r){return r.destroy()}),this.networkControllers.length=0,this.coreComponents.forEach(function(r){return r.destroy()}),this.coreComponents.length=0},m.attachMedia=function(r){d.logger.log("attachMedia"),this._media=r,this.trigger(a.Events.MEDIA_ATTACHING,{media:r})},m.detachMedia=function(){d.logger.log("detachMedia"),this.trigger(a.Events.MEDIA_DETACHING,void 0),this._media=null},m.loadSource=function(r){this.stopLoad();var t=this.media,s=this.url,y=this.url=C.buildAbsoluteURL(self.location.href,r,{alwaysNormalize:!0});d.logger.log("loadSource:"+y),t&&s&&s!==y&&this.bufferController.hasSourceTypes()&&(this.detachMedia(),this.attachMedia(t)),this.trigger(a.Events.MANIFEST_LOADING,{url:r})},m.startLoad=function(r){r===void 0&&(r=-1),d.logger.log("startLoad("+r+")"),this.networkControllers.forEach(function(t){t.startLoad(r)})},m.stopLoad=function(){d.logger.log("stopLoad"),this.networkControllers.forEach(function(r){r.stopLoad()})},m.swapAudioCodec=function(){d.logger.log("swapAudioCodec"),this.streamController.swapAudioCodec()},m.recoverMediaError=function(){d.logger.log("recoverMediaError");var r=this._media;this.detachMedia(),r&&this.attachMedia(r)},m.removeLevel=function(r,t){t===void 0&&(t=0),this.levelController.removeLevel(r,t)},l(c,[{key:"levels",get:function(){var r=this.levelController.levels;return r||[]}},{key:"currentLevel",get:function(){return this.streamController.currentLevel},set:function(r){d.logger.log("set currentLevel:"+r),this.loadLevel=r,this.abrController.clearTimer(),this.streamController.immediateLevelSwitch()}},{key:"nextLevel",get:function(){return this.streamController.nextLevel},set:function(r){d.logger.log("set nextLevel:"+r),this.levelController.manualLevel=r,this.streamController.nextLevelSwitch()}},{key:"loadLevel",get:function(){return this.levelController.level},set:function(r){d.logger.log("set loadLevel:"+r),this.levelController.manualLevel=r}},{key:"nextLoadLevel",get:function(){return this.levelController.nextLoadLevel},set:function(r){this.levelController.nextLoadLevel=r}},{key:"firstLevel",get:function(){return Math.max(this.levelController.firstLevel,this.minAutoLevel)},set:function(r){d.logger.log("set firstLevel:"+r),this.levelController.firstLevel=r}},{key:"startLevel",get:function(){return this.levelController.startLevel},set:function(r){d.logger.log("set startLevel:"+r),r!==-1&&(r=Math.max(r,this.minAutoLevel)),this.levelController.startLevel=r}},{key:"capLevelToPlayerSize",get:function(){return this.config.capLevelToPlayerSize},set:function(r){var t=!!r;t!==this.config.capLevelToPlayerSize&&(t?this.capLevelController.startCapping():(this.capLevelController.stopCapping(),this.autoLevelCapping=-1,this.streamController.nextLevelSwitch()),this.config.capLevelToPlayerSize=t)}},{key:"autoLevelCapping",get:function(){return this._autoLevelCapping},set:function(r){this._autoLevelCapping!==r&&(d.logger.log("set autoLevelCapping:"+r),this._autoLevelCapping=r)}},{key:"bandwidthEstimate",get:function(){var r=this.abrController.bwEstimator;return r?r.getEstimate():NaN}},{key:"maxHdcpLevel",get:function(){return this._maxHdcpLevel},set:function(r){n.HdcpLevels.indexOf(r)>-1&&(this._maxHdcpLevel=r)}},{key:"autoLevelEnabled",get:function(){return this.levelController.manualLevel===-1}},{key:"manualLevel",get:function(){return this.levelController.manualLevel}},{key:"minAutoLevel",get:function(){var r=this.levels,t=this.config.minAutoBitrate;if(!r)return 0;for(var s=r.length,y=0;y<s;y++)if(r[y].maxBitrate>=t)return y;return 0}},{key:"maxAutoLevel",get:function(){var r=this.levels,t=this.autoLevelCapping,s=this.maxHdcpLevel,y;if(t===-1&&r&&r.length?y=r.length-1:y=t,s)for(var f=y;f--;){var b=r[f].attrs["HDCP-LEVEL"];if(b&&b<=s)return f}return y}},{key:"nextAutoLevel",get:function(){return Math.min(Math.max(this.abrController.nextAutoLevel,this.minAutoLevel),this.maxAutoLevel)},set:function(r){this.abrController.nextAutoLevel=Math.max(this.minAutoLevel,r)}},{key:"playingDate",get:function(){return this.streamController.currentProgramDateTime}},{key:"mainForwardBufferInfo",get:function(){return this.streamController.getMainFwdBufferInfo()}},{key:"audioTracks",get:function(){var r=this.audioTrackController;return r?r.audioTracks:[]}},{key:"audioTrack",get:function(){var r=this.audioTrackController;return r?r.audioTrack:-1},set:function(r){var t=this.audioTrackController;t&&(t.audioTrack=r)}},{key:"subtitleTracks",get:function(){var r=this.subtitleTrackController;return r?r.subtitleTracks:[]}},{key:"subtitleTrack",get:function(){var r=this.subtitleTrackController;return r?r.subtitleTrack:-1},set:function(r){var t=this.subtitleTrackController;t&&(t.subtitleTrack=r)}},{key:"media",get:function(){return this._media}},{key:"subtitleDisplay",get:function(){var r=this.subtitleTrackController;return r?r.subtitleDisplay:!1},set:function(r){var t=this.subtitleTrackController;t&&(t.subtitleDisplay=r)}},{key:"lowLatencyMode",get:function(){return this.config.lowLatencyMode},set:function(r){this.config.lowLatencyMode=r}},{key:"liveSyncPosition",get:function(){return this.latencyController.liveSyncPosition}},{key:"latency",get:function(){return this.latencyController.latency}},{key:"maxLatency",get:function(){return this.latencyController.maxLatency}},{key:"targetLatency",get:function(){return this.latencyController.targetLatency}},{key:"drift",get:function(){return this.latencyController.drift}},{key:"forceStartLoad",get:function(){return this.streamController.forceStartLoad}}],[{key:"version",get:function(){return"1.3.1"}},{key:"Events",get:function(){return a.Events}},{key:"ErrorTypes",get:function(){return o.ErrorTypes}},{key:"ErrorDetails",get:function(){return o.ErrorDetails}},{key:"DefaultConfig",get:function(){return c.defaultConfig?c.defaultConfig:E.hlsDefaultConfig},set:function(r){c.defaultConfig=r}}]),c}();g.defaultConfig=void 0},"./src/is-supported.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{changeTypeSupported:()=>P,isSupported:()=>M});var C=T("./src/utils/mediasource-helper.ts");function L(){return self.SourceBuffer||self.WebKitSourceBuffer}function M(){var B=(0,C.getMediaSource)();if(!B)return!1;var A=L(),D=B&&typeof B.isTypeSupported=="function"&&B.isTypeSupported('video/mp4; codecs="avc1.42E01E,mp4a.40.2"'),x=!A||A.prototype&&typeof A.prototype.appendBuffer=="function"&&typeof A.prototype.remove=="function";return!!D&&!!x}function P(){var B,A=L();return typeof(A==null||(B=A.prototype)===null||B===void 0?void 0:B.changeType)=="function"}},"./src/loader/date-range.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{DateRange:()=>S,DateRangeAttribute:()=>_});var C=T("./src/polyfills/number.ts"),L=T("./src/utils/attr-list.ts"),M=T("./src/utils/logger.ts");function P(){return P=Object.assign?Object.assign.bind():function(d){for(var E=1;E<arguments.length;E++){var p=arguments[E];for(var h in p)Object.prototype.hasOwnProperty.call(p,h)&&(d[h]=p[h])}return d},P.apply(this,arguments)}function B(d,E){for(var p=0;p<E.length;p++){var h=E[p];h.enumerable=h.enumerable||!1,h.configurable=!0,"value"in h&&(h.writable=!0),Object.defineProperty(d,D(h.key),h)}}function A(d,E,p){return E&&B(d.prototype,E),p&&B(d,p),Object.defineProperty(d,"prototype",{writable:!1}),d}function D(d){var E=x(d,"string");return typeof E=="symbol"?E:String(E)}function x(d,E){if(typeof d!="object"||d===null)return d;var p=d[Symbol.toPrimitive];if(p!==void 0){var h=p.call(d,E||"default");if(typeof h!="object")return h;throw new TypeError("@@toPrimitive must return a primitive value.")}return(E==="string"?String:Number)(d)}var _;(function(d){d.ID="ID",d.CLASS="CLASS",d.START_DATE="START-DATE",d.DURATION="DURATION",d.END_DATE="END-DATE",d.END_ON_NEXT="END-ON-NEXT",d.PLANNED_DURATION="PLANNED-DURATION",d.SCTE35_OUT="SCTE35-OUT",d.SCTE35_IN="SCTE35-IN"})(_||(_={}));var S=function(){function d(E,p){if(this.attr=void 0,this._startDate=void 0,this._endDate=void 0,this._badValueForSameId=void 0,p){var h=p.attr;for(var a in h)if(Object.prototype.hasOwnProperty.call(E,a)&&E[a]!==h[a]){M.logger.warn('DATERANGE tag attribute: "'+a+'" does not match for tags with ID: "'+E.ID+'"'),this._badValueForSameId=a;break}E=P(new L.AttrList({}),h,E)}if(this.attr=E,this._startDate=new Date(E[_.START_DATE]),_.END_DATE in this.attr){var o=new Date(this.attr[_.END_DATE]);(0,C.isFiniteNumber)(o.getTime())&&(this._endDate=o)}}return A(d,[{key:"id",get:function(){return this.attr.ID}},{key:"class",get:function(){return this.attr.CLASS}},{key:"startDate",get:function(){return this._startDate}},{key:"endDate",get:function(){if(this._endDate)return this._endDate;var p=this.duration;return p!==null?new Date(this._startDate.getTime()+p*1e3):null}},{key:"duration",get:function(){if(_.DURATION in this.attr){var p=this.attr.decimalFloatingPoint(_.DURATION);if((0,C.isFiniteNumber)(p))return p}else if(this._endDate)return(this._endDate.getTime()-this._startDate.getTime())/1e3;return null}},{key:"plannedDuration",get:function(){return _.PLANNED_DURATION in this.attr?this.attr.decimalFloatingPoint(_.PLANNED_DURATION):null}},{key:"endOnNext",get:function(){return this.attr.bool(_.END_ON_NEXT)}},{key:"isValid",get:function(){return!!this.id&&!this._badValueForSameId&&(0,C.isFiniteNumber)(this.startDate.getTime())&&(this.duration===null||this.duration>=0)&&(!this.endOnNext||!!this.class)}}]),d}()},"./src/loader/fragment-loader.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{LoadError:()=>p,default:()=>d});var C=T("./src/polyfills/number.ts"),L=T("./src/errors.ts");function M(h,a){h.prototype=Object.create(a.prototype),h.prototype.constructor=h,x(h,a)}function P(h){var a=typeof Map=="function"?new Map:void 0;return P=function(n){if(n===null||!D(n))return n;if(typeof n!="function")throw new TypeError("Super expression must either be null or a function");if(typeof a!="undefined"){if(a.has(n))return a.get(n);a.set(n,v)}function v(){return B(n,arguments,_(this).constructor)}return v.prototype=Object.create(n.prototype,{constructor:{value:v,enumerable:!1,writable:!0,configurable:!0}}),x(v,n)},P(h)}function B(h,a,o){return A()?B=Reflect.construct.bind():B=function(v,l,i){var u=[null];u.push.apply(u,l);var g=Function.bind.apply(v,u),c=new g;return i&&x(c,i.prototype),c},B.apply(null,arguments)}function A(){if(typeof Reflect=="undefined"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function D(h){return Function.toString.call(h).indexOf("[native code]")!==-1}function x(h,a){return x=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(n,v){return n.__proto__=v,n},x(h,a)}function _(h){return _=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(o){return o.__proto__||Object.getPrototypeOf(o)},_(h)}var S=Math.pow(2,17),d=function(){function h(o){this.config=void 0,this.loader=null,this.partLoadTimeout=-1,this.config=o}var a=h.prototype;return a.destroy=function(){this.loader&&(this.loader.destroy(),this.loader=null)},a.abort=function(){this.loader&&this.loader.abort()},a.load=function(n,v){var l=this,i=n.url;if(!i)return Promise.reject(new p({type:L.ErrorTypes.NETWORK_ERROR,details:L.ErrorDetails.FRAG_LOAD_ERROR,fatal:!1,frag:n,networkDetails:null},"Fragment does not have a "+(i?"part list":"url")));this.abort();var u=this.config,g=u.fLoader,c=u.loader;return new Promise(function(m,e){l.loader&&l.loader.destroy();var r=l.loader=n.loader=g?new g(u):new c(u),t=E(n),s={timeout:u.fragLoadingTimeOut,maxRetry:0,retryDelay:0,maxRetryDelay:u.fragLoadingMaxRetryTimeout,highWaterMark:n.sn==="initSegment"?1/0:S};n.stats=r.stats,r.load(t,s,{onSuccess:function(f,b,R,I){l.resetLoader(n,r);var k=f.data;R.resetIV&&n.decryptdata&&(n.decryptdata.iv=new Uint8Array(k.slice(0,16)),k=k.slice(16)),m({frag:n,part:null,payload:k,networkDetails:I})},onError:function(f,b,R){l.resetLoader(n,r),e(new p({type:L.ErrorTypes.NETWORK_ERROR,details:L.ErrorDetails.FRAG_LOAD_ERROR,fatal:!1,frag:n,response:f,networkDetails:R}))},onAbort:function(f,b,R){l.resetLoader(n,r),e(new p({type:L.ErrorTypes.NETWORK_ERROR,details:L.ErrorDetails.INTERNAL_ABORTED,fatal:!1,frag:n,networkDetails:R}))},onTimeout:function(f,b,R){l.resetLoader(n,r),e(new p({type:L.ErrorTypes.NETWORK_ERROR,details:L.ErrorDetails.FRAG_LOAD_TIMEOUT,fatal:!1,frag:n,networkDetails:R}))},onProgress:function(f,b,R,I){v&&v({frag:n,part:null,payload:R,networkDetails:I})}})})},a.loadPart=function(n,v,l){var i=this;this.abort();var u=this.config,g=u.fLoader,c=u.loader;return new Promise(function(m,e){i.loader&&i.loader.destroy();var r=i.loader=n.loader=g?new g(u):new c(u),t=E(n,v),s={timeout:u.fragLoadingTimeOut,maxRetry:0,retryDelay:0,maxRetryDelay:u.fragLoadingMaxRetryTimeout,highWaterMark:S};v.stats=r.stats,r.load(t,s,{onSuccess:function(f,b,R,I){i.resetLoader(n,r),i.updateStatsFromPart(n,v);var k={frag:n,part:v,payload:f.data,networkDetails:I};l(k),m(k)},onError:function(f,b,R){i.resetLoader(n,r),e(new p({type:L.ErrorTypes.NETWORK_ERROR,details:L.ErrorDetails.FRAG_LOAD_ERROR,fatal:!1,frag:n,part:v,response:f,networkDetails:R}))},onAbort:function(f,b,R){n.stats.aborted=v.stats.aborted,i.resetLoader(n,r),e(new p({type:L.ErrorTypes.NETWORK_ERROR,details:L.ErrorDetails.INTERNAL_ABORTED,fatal:!1,frag:n,part:v,networkDetails:R}))},onTimeout:function(f,b,R){i.resetLoader(n,r),e(new p({type:L.ErrorTypes.NETWORK_ERROR,details:L.ErrorDetails.FRAG_LOAD_TIMEOUT,fatal:!1,frag:n,part:v,networkDetails:R}))}})})},a.updateStatsFromPart=function(n,v){var l=n.stats,i=v.stats,u=i.total;if(l.loaded+=i.loaded,u){var g=Math.round(n.duration/v.duration),c=Math.min(Math.round(l.loaded/u),g),m=g-c,e=m*Math.round(l.loaded/c);l.total=l.loaded+e}else l.total=Math.max(l.loaded,l.total);var r=l.loading,t=i.loading;r.start?r.first+=t.first-t.start:(r.start=t.start,r.first=t.first),r.end=t.end},a.resetLoader=function(n,v){n.loader=null,this.loader===v&&(self.clearTimeout(this.partLoadTimeout),this.loader=null),v.destroy()},h}();function E(h,a){a===void 0&&(a=null);var o=a||h,n={frag:h,part:a,responseType:"arraybuffer",url:o.url,headers:{},rangeStart:0,rangeEnd:0},v=o.byteRangeStartOffset,l=o.byteRangeEndOffset;if((0,C.isFiniteNumber)(v)&&(0,C.isFiniteNumber)(l)){var i,u=v,g=l;if(h.sn==="initSegment"&&((i=h.decryptdata)===null||i===void 0?void 0:i.method)==="AES-128"){var c=l-v;c%16&&(g=l+(16-c%16)),v!==0&&(n.resetIV=!0,u=v-16)}n.rangeStart=u,n.rangeEnd=g}return n}var p=function(h){M(a,h);function a(o){for(var n,v=arguments.length,l=new Array(v>1?v-1:0),i=1;i<v;i++)l[i-1]=arguments[i];return n=h.call.apply(h,[this].concat(l))||this,n.data=void 0,n.data=o,n}return a}(P(Error))},"./src/loader/fragment.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{BaseSegment:()=>E,ElementaryStreamTypes:()=>d,Fragment:()=>p,Part:()=>h});var C=T("./src/polyfills/number.ts"),L=T("./node_modules/url-toolkit/src/url-toolkit.js"),M=T.n(L),P=T("./src/loader/load-stats.ts");function B(a,o){a.prototype=Object.create(o.prototype),a.prototype.constructor=a,A(a,o)}function A(a,o){return A=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(v,l){return v.__proto__=l,v},A(a,o)}function D(a,o){for(var n=0;n<o.length;n++){var v=o[n];v.enumerable=v.enumerable||!1,v.configurable=!0,"value"in v&&(v.writable=!0),Object.defineProperty(a,_(v.key),v)}}function x(a,o,n){return o&&D(a.prototype,o),n&&D(a,n),Object.defineProperty(a,"prototype",{writable:!1}),a}function _(a){var o=S(a,"string");return typeof o=="symbol"?o:String(o)}function S(a,o){if(typeof a!="object"||a===null)return a;var n=a[Symbol.toPrimitive];if(n!==void 0){var v=n.call(a,o||"default");if(typeof v!="object")return v;throw new TypeError("@@toPrimitive must return a primitive value.")}return(o==="string"?String:Number)(a)}var d;(function(a){a.AUDIO="audio",a.VIDEO="video",a.AUDIOVIDEO="audiovideo"})(d||(d={}));var E=function(){function a(n){var v;this._byteRange=null,this._url=null,this.baseurl=void 0,this.relurl=void 0,this.elementaryStreams=(v={},v[d.AUDIO]=null,v[d.VIDEO]=null,v[d.AUDIOVIDEO]=null,v),this.baseurl=n}var o=a.prototype;return o.setByteRange=function(v,l){var i=v.split("@",2),u=[];i.length===1?u[0]=l?l.byteRangeEndOffset:0:u[0]=parseInt(i[1]),u[1]=parseInt(i[0])+u[0],this._byteRange=u},x(a,[{key:"byteRange",get:function(){return this._byteRange?this._byteRange:[]}},{key:"byteRangeStartOffset",get:function(){return this.byteRange[0]}},{key:"byteRangeEndOffset",get:function(){return this.byteRange[1]}},{key:"url",get:function(){return!this._url&&this.baseurl&&this.relurl&&(this._url=(0,L.buildAbsoluteURL)(this.baseurl,this.relurl,{alwaysNormalize:!0})),this._url||""},set:function(v){this._url=v}}]),a}(),p=function(a){B(o,a);function o(v,l){var i;return i=a.call(this,l)||this,i._decryptdata=null,i.rawProgramDateTime=null,i.programDateTime=null,i.tagList=[],i.duration=0,i.sn=0,i.levelkeys=void 0,i.type=void 0,i.loader=null,i.keyLoader=null,i.level=-1,i.cc=0,i.startPTS=void 0,i.endPTS=void 0,i.appendedPTS=void 0,i.startDTS=void 0,i.endDTS=void 0,i.start=0,i.deltaPTS=void 0,i.maxStartPTS=void 0,i.minEndPTS=void 0,i.stats=new P.LoadStats,i.urlId=0,i.data=void 0,i.bitrateTest=!1,i.title=null,i.initSegment=null,i.endList=void 0,i.type=v,i}var n=o.prototype;return n.setKeyFormat=function(l){if(this.levelkeys){var i=this.levelkeys[l];i&&!this._decryptdata&&(this._decryptdata=i.getDecryptData(this.sn))}},n.abortRequests=function(){var l,i;(l=this.loader)===null||l===void 0||l.abort(),(i=this.keyLoader)===null||i===void 0||i.abort()},n.setElementaryStreamInfo=function(l,i,u,g,c,m){m===void 0&&(m=!1);var e=this.elementaryStreams,r=e[l];if(!r){e[l]={startPTS:i,endPTS:u,startDTS:g,endDTS:c,partial:m};return}r.startPTS=Math.min(r.startPTS,i),r.endPTS=Math.max(r.endPTS,u),r.startDTS=Math.min(r.startDTS,g),r.endDTS=Math.max(r.endDTS,c)},n.clearElementaryStreamInfo=function(){var l=this.elementaryStreams;l[d.AUDIO]=null,l[d.VIDEO]=null,l[d.AUDIOVIDEO]=null},x(o,[{key:"decryptdata",get:function(){var l=this.levelkeys;if(!l&&!this._decryptdata)return null;if(!this._decryptdata&&this.levelkeys&&!this.levelkeys.NONE){var i=this.levelkeys.identity;if(i)this._decryptdata=i.getDecryptData(this.sn);else{var u=Object.keys(this.levelkeys);if(u.length===1)return this._decryptdata=this.levelkeys[u[0]].getDecryptData(this.sn)}}return this._decryptdata}},{key:"end",get:function(){return this.start+this.duration}},{key:"endProgramDateTime",get:function(){if(this.programDateTime===null||!(0,C.isFiniteNumber)(this.programDateTime))return null;var l=(0,C.isFiniteNumber)(this.duration)?this.duration:0;return this.programDateTime+l*1e3}},{key:"encrypted",get:function(){var l;if((l=this._decryptdata)!==null&&l!==void 0&&l.encrypted)return!0;if(this.levelkeys){var i=Object.keys(this.levelkeys),u=i.length;if(u>1||u===1&&this.levelkeys[i[0]].encrypted)return!0}return!1}}]),o}(E),h=function(a){B(o,a);function o(n,v,l,i,u){var g;g=a.call(this,l)||this,g.fragOffset=0,g.duration=0,g.gap=!1,g.independent=!1,g.relurl=void 0,g.fragment=void 0,g.index=void 0,g.stats=new P.LoadStats,g.duration=n.decimalFloatingPoint("DURATION"),g.gap=n.bool("GAP"),g.independent=n.bool("INDEPENDENT"),g.relurl=n.enumeratedString("URI"),g.fragment=v,g.index=i;var c=n.enumeratedString("BYTERANGE");return c&&g.setByteRange(c,u),u&&(g.fragOffset=u.fragOffset+u.duration),g}return x(o,[{key:"start",get:function(){return this.fragment.start+this.fragOffset}},{key:"end",get:function(){return this.start+this.duration}},{key:"loaded",get:function(){var v=this.elementaryStreams;return!!(v.audio||v.video||v.audiovideo)}}]),o}(E)},"./src/loader/key-loader.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>M});var C=T("./src/errors.ts"),L=T("./src/loader/fragment-loader.ts"),M=function(){function P(A){this.config=void 0,this.keyUriToKeyInfo={},this.emeController=null,this.config=A}var B=P.prototype;return B.abort=function(){for(var D in this.keyUriToKeyInfo){var x=this.keyUriToKeyInfo[D].loader;x&&x.abort()}},B.detach=function(){for(var D in this.keyUriToKeyInfo){var x=this.keyUriToKeyInfo[D];(x.mediaKeySessionContext||x.decryptdata.isCommonEncryption)&&delete this.keyUriToKeyInfo[D]}},B.destroy=function(){this.detach();for(var D in this.keyUriToKeyInfo){var x=this.keyUriToKeyInfo[D].loader;x&&x.destroy()}this.keyUriToKeyInfo={}},B.createKeyLoadError=function(D,x,_,S){return x===void 0&&(x=C.ErrorDetails.KEY_LOAD_ERROR),new L.LoadError({type:C.ErrorTypes.NETWORK_ERROR,details:x,fatal:!1,frag:D,networkDetails:_})},B.loadClear=function(D,x){var _=this;if(this.emeController&&this.config.emeEnabled)for(var S=D.sn,d=D.cc,E=function(o){var n=x[o];if(d<=n.cc&&(S==="initSegment"||S<n.sn))return _.emeController.selectKeySystemFormat(n).then(function(v){n.setKeyFormat(v)}),"break"},p=0;p<x.length;p++){var h=E(p);if(h==="break")break}},B.load=function(D){var x=this;return!D.decryptdata&&D.encrypted&&this.emeController?this.emeController.selectKeySystemFormat(D).then(function(_){return x.loadInternal(D,_)}):this.loadInternal(D)},B.loadInternal=function(D,x){var _,S;x&&D.setKeyFormat(x);var d=D.decryptdata;if(!d){var E=x?"Expected frag.decryptdata to be defined after setting format "+x:"Missing decryption data on fragment in onKeyLoading";return Promise.reject(this.createKeyLoadError(D,C.ErrorDetails.KEY_LOAD_ERROR,null,E))}var p=d.uri;if(!p)return Promise.reject(this.createKeyLoadError(D,C.ErrorDetails.KEY_LOAD_ERROR,null,'Invalid key URI: "'+p+'"'));var h=this.keyUriToKeyInfo[p];if((_=h)!==null&&_!==void 0&&_.decryptdata.key)return d.key=h.decryptdata.key,Promise.resolve({frag:D,keyInfo:h});if((S=h)!==null&&S!==void 0&&S.keyLoadPromise){var a;switch((a=h.mediaKeySessionContext)===null||a===void 0?void 0:a.keyStatus){case void 0:case"status-pending":case"usable":case"usable-in-future":return h.keyLoadPromise}}switch(h=this.keyUriToKeyInfo[p]={decryptdata:d,keyLoadPromise:null,loader:null,mediaKeySessionContext:null},d.method){case"ISO-23001-7":case"SAMPLE-AES":case"SAMPLE-AES-CENC":case"SAMPLE-AES-CTR":return d.keyFormat==="identity"?this.loadKeyHTTP(h,D):this.loadKeyEME(h,D);case"AES-128":return this.loadKeyHTTP(h,D);default:return Promise.reject(this.createKeyLoadError(D,C.ErrorDetails.KEY_LOAD_ERROR,null,'Key supplied with unsupported METHOD: "'+d.method+'"'))}},B.loadKeyEME=function(D,x){var _={frag:x,keyInfo:D};if(this.emeController&&this.config.emeEnabled){var S=this.emeController.loadKey(_);if(S)return(D.keyLoadPromise=S.then(function(d){return D.mediaKeySessionContext=d,_})).catch(function(d){throw D.keyLoadPromise=null,d})}return Promise.resolve(_)},B.loadKeyHTTP=function(D,x){var _=this,S=this.config,d=S.loader,E=new d(S);return x.keyLoader=D.loader=E,D.keyLoadPromise=new Promise(function(p,h){var a={keyInfo:D,frag:x,responseType:"arraybuffer",url:D.decryptdata.uri},o={timeout:S.fragLoadingTimeOut,maxRetry:0,retryDelay:S.fragLoadingRetryDelay,maxRetryDelay:S.fragLoadingMaxRetryTimeout,highWaterMark:0},n={onSuccess:function(l,i,u,g){var c=u.frag,m=u.keyInfo,e=u.url;if(!c.decryptdata||m!==_.keyUriToKeyInfo[e])return h(_.createKeyLoadError(c,C.ErrorDetails.KEY_LOAD_ERROR,g,"after key load, decryptdata unset or changed"));m.decryptdata.key=c.decryptdata.key=new Uint8Array(l.data),c.keyLoader=null,m.loader=null,p({frag:c,keyInfo:m})},onError:function(l,i,u){_.resetLoader(i),h(_.createKeyLoadError(x,C.ErrorDetails.KEY_LOAD_ERROR,u))},onTimeout:function(l,i,u){_.resetLoader(i),h(_.createKeyLoadError(x,C.ErrorDetails.KEY_LOAD_TIMEOUT,u))},onAbort:function(l,i,u){_.resetLoader(i),h(_.createKeyLoadError(x,C.ErrorDetails.INTERNAL_ABORTED,u))}};E.load(a,o,n)})},B.resetLoader=function(D){var x=D.frag,_=D.keyInfo,S=D.url,d=_.loader;x.keyLoader===d&&(x.keyLoader=null,_.loader=null),delete this.keyUriToKeyInfo[S],d&&d.destroy()},P}()},"./src/loader/level-details.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{LevelDetails:()=>D});var C=T("./src/polyfills/number.ts");function L(x,_){for(var S=0;S<_.length;S++){var d=_[S];d.enumerable=d.enumerable||!1,d.configurable=!0,"value"in d&&(d.writable=!0),Object.defineProperty(x,P(d.key),d)}}function M(x,_,S){return _&&L(x.prototype,_),S&&L(x,S),Object.defineProperty(x,"prototype",{writable:!1}),x}function P(x){var _=B(x,"string");return typeof _=="symbol"?_:String(_)}function B(x,_){if(typeof x!="object"||x===null)return x;var S=x[Symbol.toPrimitive];if(S!==void 0){var d=S.call(x,_||"default");if(typeof d!="object")return d;throw new TypeError("@@toPrimitive must return a primitive value.")}return(_==="string"?String:Number)(x)}var A=10,D=function(){function x(S){this.PTSKnown=!1,this.alignedSliding=!1,this.averagetargetduration=void 0,this.endCC=0,this.endSN=0,this.fragments=void 0,this.fragmentHint=void 0,this.partList=null,this.dateRanges=void 0,this.live=!0,this.ageHeader=0,this.advancedDateTime=void 0,this.updated=!0,this.advanced=!0,this.availabilityDelay=void 0,this.misses=0,this.startCC=0,this.startSN=0,this.startTimeOffset=null,this.targetduration=0,this.totalduration=0,this.type=null,this.url=void 0,this.m3u8="",this.version=null,this.canBlockReload=!1,this.canSkipUntil=0,this.canSkipDateRanges=!1,this.skippedSegments=0,this.recentlyRemovedDateranges=void 0,this.partHoldBack=0,this.holdBack=0,this.partTarget=0,this.preloadHint=void 0,this.renditionReports=void 0,this.tuneInGoal=0,this.deltaUpdateFailed=void 0,this.driftStartTime=0,this.driftEndTime=0,this.driftStart=0,this.driftEnd=0,this.encryptedFragments=void 0,this.fragments=[],this.encryptedFragments=[],this.dateRanges={},this.url=S}var _=x.prototype;return _.reloaded=function(d){if(!d){this.advanced=!0,this.updated=!0;return}var E=this.lastPartSn-d.lastPartSn,p=this.lastPartIndex-d.lastPartIndex;this.updated=this.endSN!==d.endSN||!!p||!!E,this.advanced=this.endSN>d.endSN||E>0||E===0&&p>0,this.updated||this.advanced?this.misses=Math.floor(d.misses*.6):this.misses=d.misses+1,this.availabilityDelay=d.availabilityDelay},M(x,[{key:"hasProgramDateTime",get:function(){return this.fragments.length?(0,C.isFiniteNumber)(this.fragments[this.fragments.length-1].programDateTime):!1}},{key:"levelTargetDuration",get:function(){return this.averagetargetduration||this.targetduration||A}},{key:"drift",get:function(){var d=this.driftEndTime-this.driftStartTime;if(d>0){var E=this.driftEnd-this.driftStart;return E*1e3/d}return 1}},{key:"edge",get:function(){return this.partEnd||this.fragmentEnd}},{key:"partEnd",get:function(){var d;return(d=this.partList)!==null&&d!==void 0&&d.length?this.partList[this.partList.length-1].end:this.fragmentEnd}},{key:"fragmentEnd",get:function(){var d;return(d=this.fragments)!==null&&d!==void 0&&d.length?this.fragments[this.fragments.length-1].end:0}},{key:"age",get:function(){return this.advancedDateTime?Math.max(Date.now()-this.advancedDateTime,0)/1e3:0}},{key:"lastPartIndex",get:function(){var d;return(d=this.partList)!==null&&d!==void 0&&d.length?this.partList[this.partList.length-1].index:-1}},{key:"lastPartSn",get:function(){var d;return(d=this.partList)!==null&&d!==void 0&&d.length?this.partList[this.partList.length-1].fragment.sn:this.endSN}}]),x}()},"./src/loader/level-key.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{LevelKey:()=>D});var C=T("./src/utils/keysystem-util.ts"),L=T("./src/utils/mediakeys-helper.ts"),M=T("./src/utils/mp4-tools.ts"),P=T("./src/utils/logger.ts"),B=T("./src/utils/numeric-encoding-utils.ts"),A={},D=function(){_.clearKeyUriToKeyIdMap=function(){A={}};function _(d,E,p,h,a){h===void 0&&(h=[1]),a===void 0&&(a=null),this.uri=void 0,this.method=void 0,this.keyFormat=void 0,this.keyFormatVersions=void 0,this.encrypted=void 0,this.isCommonEncryption=void 0,this.iv=null,this.key=null,this.keyId=null,this.pssh=null,this.method=d,this.uri=E,this.keyFormat=p,this.keyFormatVersions=h,this.iv=a,this.encrypted=d?d!=="NONE":!1,this.isCommonEncryption=this.encrypted&&d!=="AES-128"}var S=_.prototype;return S.isSupported=function(){if(this.method){if(this.method==="AES-128"||this.method==="NONE")return!0;switch(this.keyFormat){case"identity":return this.method==="SAMPLE-AES";case L.KeySystemFormats.FAIRPLAY:case L.KeySystemFormats.WIDEVINE:case L.KeySystemFormats.PLAYREADY:case L.KeySystemFormats.CLEARKEY:return["ISO-23001-7","SAMPLE-AES","SAMPLE-AES-CENC","SAMPLE-AES-CTR"].indexOf(this.method)!==-1}}return!1},S.getDecryptData=function(E){if(!this.encrypted||!this.uri)return null;if(this.method==="AES-128"&&this.uri&&!this.iv){typeof E!="number"&&(this.method==="AES-128"&&!this.iv&&P.logger.warn('missing IV for initialization segment with method="'+this.method+'" - compliance issue'),E=0);var p=x(E),h=new _(this.method,this.uri,"identity",this.keyFormatVersions,p);return h}var a=(0,C.convertDataUriToArrayBytes)(this.uri);if(a)switch(this.keyFormat){case L.KeySystemFormats.WIDEVINE:this.pssh=a,a.length>=22&&(this.keyId=a.subarray(a.length-22,a.length-6));break;case L.KeySystemFormats.PLAYREADY:{var o=new Uint8Array([154,4,240,121,152,64,66,134,171,146,230,91,224,136,95,149]);this.pssh=(0,M.mp4pssh)(o,null,a);var n=new Uint16Array(a.buffer,a.byteOffset,a.byteLength/2),v=String.fromCharCode.apply(null,Array.from(n)),l=v.substring(v.indexOf("<"),v.length),i=new DOMParser,u=i.parseFromString(l,"text/xml"),g=u.getElementsByTagName("KID")[0];if(g){var c=g.childNodes[0]?g.childNodes[0].nodeValue:g.getAttribute("VALUE");if(c){var m=(0,B.base64Decode)(c).subarray(0,16);(0,C.changeEndianness)(m),this.keyId=m}}break}default:{var e=a.subarray(0,16);if(e.length!==16){var r=new Uint8Array(16);r.set(e,16-e.length),e=r}this.keyId=e;break}}if(!this.keyId||this.keyId.byteLength!==16){var t=A[this.uri];if(!t){var s=Object.keys(A).length%Number.MAX_SAFE_INTEGER;t=new Uint8Array(16);var y=new DataView(t.buffer,12,4);y.setUint32(0,s),A[this.uri]=t}this.keyId=t}return this},_}();function x(_){for(var S=new Uint8Array(16),d=12;d<16;d++)S[d]=_>>8*(15-d)&255;return S}},"./src/loader/load-stats.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{LoadStats:()=>C});var C=function(){this.aborted=!1,this.loaded=0,this.retry=0,this.total=0,this.chunkCount=0,this.bwEstimate=0,this.loading={start:0,first:0,end:0},this.parsing={start:0,end:0},this.buffering={start:0,first:0,end:0}}},"./src/loader/m3u8-parser.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>o});var C=T("./src/polyfills/number.ts"),L=T("./node_modules/url-toolkit/src/url-toolkit.js"),M=T.n(L),P=T("./src/loader/date-range.ts"),B=T("./src/loader/fragment.ts"),A=T("./src/loader/level-details.ts"),D=T("./src/loader/level-key.ts"),x=T("./src/utils/attr-list.ts"),_=T("./src/utils/logger.ts"),S=T("./src/utils/codecs.ts");function d(){return d=Object.assign?Object.assign.bind():function(c){for(var m=1;m<arguments.length;m++){var e=arguments[m];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(c[r]=e[r])}return c},d.apply(this,arguments)}var E=/#EXT-X-STREAM-INF:([^\r\n]*)(?:[\r\n](?:#[^\r\n]*)?)*([^\r\n]+)|#EXT-X-SESSION-DATA:([^\r\n]*)[\r\n]+|#EXT-X-SESSION-KEY:([^\n\r]*)[\r\n]+/g,p=/#EXT-X-MEDIA:(.*)/g,h=new RegExp([/#EXTINF:\s*(\d*(?:\.\d+)?)(?:,(.*)\s+)?/.source,/(?!#) *(\S[\S ]*)/.source,/#EXT-X-BYTERANGE:*(.+)/.source,/#EXT-X-PROGRAM-DATE-TIME:(.+)/.source,/#.*/.source].join("|"),"g"),a=new RegExp([/#(EXTM3U)/.source,/#EXT-X-(DATERANGE|KEY|MAP|PART|PART-INF|PLAYLIST-TYPE|PRELOAD-HINT|RENDITION-REPORT|SERVER-CONTROL|SKIP|START):(.+)/.source,/#EXT-X-(BITRATE|DISCONTINUITY-SEQUENCE|MEDIA-SEQUENCE|TARGETDURATION|VERSION): *(\d+)/.source,/#EXT-X-(DISCONTINUITY|ENDLIST|GAP)/.source,/(#)([^:]*):(.*)/.source,/(#)(.*)(?:.*)\r?\n?/.source].join("|")),o=function(){function c(){}return c.findGroup=function(e,r){for(var t=0;t<e.length;t++){var s=e[t];if(s.id===r)return s}},c.convertAVC1ToAVCOTI=function(e){var r=e.split(".");if(r.length>2){var t=r.shift()+".";return t+=parseInt(r.shift()).toString(16),t+=("000"+parseInt(r.shift()).toString(16)).slice(-4),t}return e},c.resolve=function(e,r){return(0,L.buildAbsoluteURL)(r,e,{alwaysNormalize:!0})},c.parseMasterPlaylist=function(e,r){var t=[],s=[],y={},f=[],b=!1;E.lastIndex=0;for(var R;(R=E.exec(e))!=null;)if(R[1]){var I,k=new x.AttrList(R[1]),F={attrs:k,bitrate:k.decimalInteger("AVERAGE-BANDWIDTH")||k.decimalInteger("BANDWIDTH"),name:k.NAME,url:c.resolve(R[2],r)},K=k.decimalResolution("RESOLUTION");K&&(F.width=K.width,F.height=K.height),v((k.CODECS||"").split(/[ ,]+/).filter(function(q){return q}),F),F.videoCodec&&F.videoCodec.indexOf("avc1")!==-1&&(F.videoCodec=c.convertAVC1ToAVCOTI(F.videoCodec)),(I=F.unknownCodecs)!==null&&I!==void 0&&I.length||s.push(F),t.push(F)}else if(R[3]){var H=new x.AttrList(R[3]);H["DATA-ID"]&&(b=!0,y[H["DATA-ID"]]=H)}else if(R[4]){var j=R[4],Y=n(j,r);Y.encrypted&&Y.isSupported()?f.push(Y):_.logger.warn('[Keys] Ignoring invalid EXT-X-SESSION-KEY tag: "'+j+'"')}var Q=s.length>0&&s.length<t.length;return{levels:Q?s:t,sessionData:b?y:null,sessionKeys:f.length?f:null}},c.parseMasterPlaylistMedia=function(e,r,t,s){s===void 0&&(s=[]);var y,f=[],b=0;for(p.lastIndex=0;(y=p.exec(e))!==null;){var R=new x.AttrList(y[1]);if(R.TYPE===t){var I={attrs:R,bitrate:0,id:b++,groupId:R["GROUP-ID"],instreamId:R["INSTREAM-ID"],name:R.NAME||R.LANGUAGE||"",type:t,default:R.bool("DEFAULT"),autoselect:R.bool("AUTOSELECT"),forced:R.bool("FORCED"),lang:R.LANGUAGE,url:R.URI?c.resolve(R.URI,r):""};if(s.length){var k=c.findGroup(s,I.groupId)||s[0];l(I,k,"audioCodec"),l(I,k,"textCodec")}f.push(I)}}return f},c.parseLevelPlaylist=function(e,r,t,s,y){var f=new A.LevelDetails(r),b=f.fragments,R=null,I=0,k=0,F=0,K=0,H=null,j=new B.Fragment(s,r),Y,Q,q,ne=-1,te=!1;for(h.lastIndex=0,f.m3u8=e;(Y=h.exec(e))!==null;){te&&(te=!1,j=new B.Fragment(s,r),j.start=F,j.sn=I,j.cc=K,j.level=t,R&&(j.initSegment=R,j.rawProgramDateTime=R.rawProgramDateTime,R.rawProgramDateTime=null));var ae=Y[1];if(ae){j.duration=parseFloat(ae);var ue=(" "+Y[2]).slice(1);j.title=ue||null,j.tagList.push(ue?["INF",ae,ue]:["INF",ae])}else if(Y[3]){if((0,C.isFiniteNumber)(j.duration)){if(j.start=F,q){j.levelkeys=q;var ce=f.encryptedFragments;j.levelkeys&&Object.keys(j.levelkeys).some(function(et){return j.levelkeys[et].isCommonEncryption})&&(!ce.length||ce[ce.length-1].levelkeys!==q)&&ce.push(j)}j.sn=I,j.level=t,j.cc=K,j.urlId=y,b.push(j),j.relurl=(" "+Y[3]).slice(1),u(j,H),H=j,F+=j.duration,I++,k=0,te=!0}}else if(Y[4]){var le=(" "+Y[4]).slice(1);H?j.setByteRange(le,H):j.setByteRange(le)}else if(Y[5])j.rawProgramDateTime=(" "+Y[5]).slice(1),j.tagList.push(["PROGRAM-DATE-TIME",j.rawProgramDateTime]),ne===-1&&(ne=b.length);else{if(Y=Y[0].match(a),!Y){_.logger.warn("No matches on slow regex match for level playlist!");continue}for(Q=1;Q<Y.length&&typeof Y[Q]=="undefined";Q++);var fe=(" "+Y[Q]).slice(1),de=(" "+Y[Q+1]).slice(1),xe=Y[Q+2]?(" "+Y[Q+2]).slice(1):"";switch(fe){case"PLAYLIST-TYPE":f.type=de.toUpperCase();break;case"MEDIA-SEQUENCE":I=f.startSN=parseInt(de);break;case"SKIP":{var Ae=new x.AttrList(de),Ie=Ae.decimalInteger("SKIPPED-SEGMENTS");if((0,C.isFiniteNumber)(Ie)){f.skippedSegments=Ie;for(var Re=Ie;Re--;)b.unshift(null);I+=Ie}var Oe=Ae.enumeratedString("RECENTLY-REMOVED-DATERANGES");Oe&&(f.recentlyRemovedDateranges=Oe.split(" "));break}case"TARGETDURATION":f.targetduration=parseFloat(de);break;case"VERSION":f.version=parseInt(de);break;case"EXTM3U":break;case"ENDLIST":f.live=!1;break;case"#":(de||xe)&&j.tagList.push(xe?[de,xe]:[de]);break;case"DISCONTINUITY":K++,j.tagList.push(["DIS"]);break;case"GAP":j.tagList.push([fe]);break;case"BITRATE":j.tagList.push([fe,de]);break;case"DATERANGE":{var Pe=new x.AttrList(de),Ce=new P.DateRange(Pe,f.dateRanges[Pe.ID]);Ce.isValid||f.skippedSegments?f.dateRanges[Ce.id]=Ce:_.logger.warn('Ignoring invalid DATERANGE tag: "'+de+'"'),j.tagList.push(["EXT-X-DATERANGE",de]);break}case"DISCONTINUITY-SEQUENCE":K=parseInt(de);break;case"KEY":{var Le=n(de,r);if(Le.isSupported()){if(Le.method==="NONE"){q=void 0;break}q||(q={}),q[Le.keyFormat]&&(q=d({},q)),q[Le.keyFormat]=Le}else _.logger.warn('[Keys] Ignoring invalid EXT-X-KEY tag: "'+de+'"');break}case"START":{var ke=new x.AttrList(de),Be=ke.decimalFloatingPoint("TIME-OFFSET");(0,C.isFiniteNumber)(Be)&&(f.startTimeOffset=Be);break}case"MAP":{var we=new x.AttrList(de);if(j.duration){var Ye=new B.Fragment(s,r);g(Ye,we,t,q),R=Ye,j.initSegment=R,R.rawProgramDateTime&&!j.rawProgramDateTime&&(j.rawProgramDateTime=R.rawProgramDateTime)}else g(j,we,t,q),R=j,te=!0;break}case"SERVER-CONTROL":{var Xe=new x.AttrList(de);f.canBlockReload=Xe.bool("CAN-BLOCK-RELOAD"),f.canSkipUntil=Xe.optionalFloat("CAN-SKIP-UNTIL",0),f.canSkipDateRanges=f.canSkipUntil>0&&Xe.bool("CAN-SKIP-DATERANGES"),f.partHoldBack=Xe.optionalFloat("PART-HOLD-BACK",0),f.holdBack=Xe.optionalFloat("HOLD-BACK",0);break}case"PART-INF":{var rt=new x.AttrList(de);f.partTarget=rt.decimalFloatingPoint("PART-TARGET");break}case"PART":{var ze=f.partList;ze||(ze=f.partList=[]);var it=k>0?ze[ze.length-1]:void 0,nt=k++,Je=new B.Part(new x.AttrList(de),j,r,nt,it);ze.push(Je),j.duration+=Je.duration;break}case"PRELOAD-HINT":{var Ne=new x.AttrList(de);f.preloadHint=Ne;break}case"RENDITION-REPORT":{var Ke=new x.AttrList(de);f.renditionReports=f.renditionReports||[],f.renditionReports.push(Ke);break}default:_.logger.warn("line parsed but not handled: "+Y);break}}}H&&!H.relurl?(b.pop(),F-=H.duration,f.partList&&(f.fragmentHint=H)):f.partList&&(u(j,H),j.cc=K,f.fragmentHint=j);var Ze=b.length,ft=b[0],Me=b[Ze-1];if(F+=f.skippedSegments*f.targetduration,F>0&&Ze&&Me){f.averagetargetduration=F/Ze;var qe=Me.sn;f.endSN=qe!=="initSegment"?qe:0,f.live||(Me.endList=!0),ft&&(f.startCC=ft.cc)}else f.endSN=0,f.startCC=0;return f.fragmentHint&&(F+=f.fragmentHint.duration),f.totalduration=F,f.endCC=K,ne>0&&i(b,ne),f},c}();function n(c,m){var e,r,t=new x.AttrList(c),s=(e=t.enumeratedString("METHOD"))!=null?e:"",y=t.URI,f=t.hexadecimalInteger("IV"),b=t.enumeratedString("KEYFORMATVERSIONS"),R=(r=t.enumeratedString("KEYFORMAT"))!=null?r:"identity";y&&t.IV&&!f&&_.logger.error("Invalid IV: "+t.IV);var I=y?o.resolve(y,m):"",k=(b||"1").split("/").map(Number).filter(Number.isFinite);return new D.LevelKey(s,I,R,k,f)}function v(c,m){["video","audio","text"].forEach(function(e){var r=c.filter(function(s){return(0,S.isCodecType)(s,e)});if(r.length){var t=r.filter(function(s){return s.lastIndexOf("avc1",0)===0||s.lastIndexOf("mp4a",0)===0});m[e+"Codec"]=t.length>0?t[0]:r[0],c=c.filter(function(s){return r.indexOf(s)===-1})}}),m.unknownCodecs=c}function l(c,m,e){var r=m[e];r&&(c[e]=r)}function i(c,m){for(var e=c[m],r=m;r--;){var t=c[r];if(!t)return;t.programDateTime=e.programDateTime-t.duration*1e3,e=t}}function u(c,m){c.rawProgramDateTime?c.programDateTime=Date.parse(c.rawProgramDateTime):m!=null&&m.programDateTime&&(c.programDateTime=m.endProgramDateTime),(0,C.isFiniteNumber)(c.programDateTime)||(c.programDateTime=null,c.rawProgramDateTime=null)}function g(c,m,e,r){c.relurl=m.URI,m.BYTERANGE&&c.setByteRange(m.BYTERANGE),c.level=e,c.sn="initSegment",r&&(c.levelkeys=r),c.initSegment=null}},"./src/loader/playlist-loader.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>d});var C=T("./src/polyfills/number.ts"),L=T("./src/events.ts"),M=T("./src/errors.ts"),P=T("./src/utils/logger.ts"),B=T("./src/loader/m3u8-parser.ts"),A=T("./src/types/loader.ts"),D=T("./src/utils/attr-list.ts");function x(E){var p=E.type;switch(p){case A.PlaylistContextType.AUDIO_TRACK:return A.PlaylistLevelType.AUDIO;case A.PlaylistContextType.SUBTITLE_TRACK:return A.PlaylistLevelType.SUBTITLE;default:return A.PlaylistLevelType.MAIN}}function _(E,p){var h=E.url;return(h===void 0||h.indexOf("data:")===0)&&(h=p.url),h}var S=function(){function E(h){this.hls=void 0,this.loaders=Object.create(null),this.hls=h,this.registerListeners()}var p=E.prototype;return p.startLoad=function(a){},p.stopLoad=function(){this.destroyInternalLoaders()},p.registerListeners=function(){var a=this.hls;a.on(L.Events.MANIFEST_LOADING,this.onManifestLoading,this),a.on(L.Events.LEVEL_LOADING,this.onLevelLoading,this),a.on(L.Events.AUDIO_TRACK_LOADING,this.onAudioTrackLoading,this),a.on(L.Events.SUBTITLE_TRACK_LOADING,this.onSubtitleTrackLoading,this)},p.unregisterListeners=function(){var a=this.hls;a.off(L.Events.MANIFEST_LOADING,this.onManifestLoading,this),a.off(L.Events.LEVEL_LOADING,this.onLevelLoading,this),a.off(L.Events.AUDIO_TRACK_LOADING,this.onAudioTrackLoading,this),a.off(L.Events.SUBTITLE_TRACK_LOADING,this.onSubtitleTrackLoading,this)},p.createInternalLoader=function(a){var o=this.hls.config,n=o.pLoader,v=o.loader,l=n||v,i=new l(o);return a.loader=i,this.loaders[a.type]=i,i},p.getInternalLoader=function(a){return this.loaders[a.type]},p.resetInternalLoader=function(a){this.loaders[a]&&delete this.loaders[a]},p.destroyInternalLoaders=function(){for(var a in this.loaders){var o=this.loaders[a];o&&o.destroy(),this.resetInternalLoader(a)}},p.destroy=function(){this.unregisterListeners(),this.destroyInternalLoaders()},p.onManifestLoading=function(a,o){var n=o.url;this.load({id:null,groupId:null,level:0,responseType:"text",type:A.PlaylistContextType.MANIFEST,url:n,deliveryDirectives:null})},p.onLevelLoading=function(a,o){var n=o.id,v=o.level,l=o.url,i=o.deliveryDirectives;this.load({id:n,groupId:null,level:v,responseType:"text",type:A.PlaylistContextType.LEVEL,url:l,deliveryDirectives:i})},p.onAudioTrackLoading=function(a,o){var n=o.id,v=o.groupId,l=o.url,i=o.deliveryDirectives;this.load({id:n,groupId:v,level:null,responseType:"text",type:A.PlaylistContextType.AUDIO_TRACK,url:l,deliveryDirectives:i})},p.onSubtitleTrackLoading=function(a,o){var n=o.id,v=o.groupId,l=o.url,i=o.deliveryDirectives;this.load({id:n,groupId:v,level:null,responseType:"text",type:A.PlaylistContextType.SUBTITLE_TRACK,url:l,deliveryDirectives:i})},p.load=function(a){var o,n=this.hls.config,v=this.getInternalLoader(a);if(v){var l=v.context;if(l&&l.url===a.url){P.logger.trace("[playlist-loader]: playlist request ongoing");return}P.logger.log("[playlist-loader]: aborting previous loader for type: "+a.type),v.abort()}var i,u,g,c;switch(a.type){case A.PlaylistContextType.MANIFEST:i=n.manifestLoadingMaxRetry,u=n.manifestLoadingTimeOut,g=n.manifestLoadingRetryDelay,c=n.manifestLoadingMaxRetryTimeout;break;case A.PlaylistContextType.LEVEL:case A.PlaylistContextType.AUDIO_TRACK:case A.PlaylistContextType.SUBTITLE_TRACK:i=0,u=n.levelLoadingTimeOut;break;default:i=n.levelLoadingMaxRetry,u=n.levelLoadingTimeOut,g=n.levelLoadingRetryDelay,c=n.levelLoadingMaxRetryTimeout;break}if(v=this.createInternalLoader(a),(o=a.deliveryDirectives)!==null&&o!==void 0&&o.part){var m;if(a.type===A.PlaylistContextType.LEVEL&&a.level!==null?m=this.hls.levels[a.level].details:a.type===A.PlaylistContextType.AUDIO_TRACK&&a.id!==null?m=this.hls.audioTracks[a.id].details:a.type===A.PlaylistContextType.SUBTITLE_TRACK&&a.id!==null&&(m=this.hls.subtitleTracks[a.id].details),m){var e=m.partTarget,r=m.targetduration;e&&r&&(u=Math.min(Math.max(e*3,r*.8)*1e3,u))}}var t={timeout:u,maxRetry:i,retryDelay:g,maxRetryDelay:c,highWaterMark:0},s={onSuccess:this.loadsuccess.bind(this),onError:this.loaderror.bind(this),onTimeout:this.loadtimeout.bind(this)};v.load(a,t,s)},p.loadsuccess=function(a,o,n,v){v===void 0&&(v=null),this.resetInternalLoader(n.type);var l=a.data;if(l.indexOf("#EXTM3U")!==0){this.handleManifestParsingError(a,n,"no EXTM3U delimiter",v);return}o.parsing.start=performance.now(),l.indexOf("#EXTINF:")>0||l.indexOf("#EXT-X-TARGETDURATION:")>0?this.handleTrackOrLevelPlaylist(a,o,n,v):this.handleMasterPlaylist(a,o,n,v)},p.loaderror=function(a,o,n){n===void 0&&(n=null),this.handleNetworkError(o,n,!1,a)},p.loadtimeout=function(a,o,n){n===void 0&&(n=null),this.handleNetworkError(o,n,!0)},p.handleMasterPlaylist=function(a,o,n,v){var l=this.hls,i=a.data,u=_(a,n),g=B.default.parseMasterPlaylist(i,u),c=g.levels,m=g.sessionData,e=g.sessionKeys;if(!c.length){this.handleManifestParsingError(a,n,"no level found in manifest",v);return}var r=c.map(function(R){return{id:R.attrs.AUDIO,audioCodec:R.audioCodec}}),t=c.map(function(R){return{id:R.attrs.SUBTITLES,textCodec:R.textCodec}}),s=B.default.parseMasterPlaylistMedia(i,u,"AUDIO",r),y=B.default.parseMasterPlaylistMedia(i,u,"SUBTITLES",t),f=B.default.parseMasterPlaylistMedia(i,u,"CLOSED-CAPTIONS");if(s.length){var b=s.some(function(R){return!R.url});!b&&c[0].audioCodec&&!c[0].attrs.AUDIO&&(P.logger.log("[playlist-loader]: audio codec signaled in quality level, but no embedded audio track signaled, create one"),s.unshift({type:"main",name:"main",default:!1,autoselect:!1,forced:!1,id:-1,attrs:new D.AttrList({}),bitrate:0,url:""}))}l.trigger(L.Events.MANIFEST_LOADED,{levels:c,audioTracks:s,subtitles:y,captions:f,url:u,stats:o,networkDetails:v,sessionData:m,sessionKeys:e})},p.handleTrackOrLevelPlaylist=function(a,o,n,v){var l=this.hls,i=n.id,u=n.level,g=n.type,c=_(a,n),m=(0,C.isFiniteNumber)(i)?i:0,e=(0,C.isFiniteNumber)(u)?u:m,r=x(n),t=B.default.parseLevelPlaylist(a.data,c,e,r,m);if(!t.fragments.length){l.trigger(L.Events.ERROR,{type:M.ErrorTypes.NETWORK_ERROR,details:M.ErrorDetails.LEVEL_EMPTY_ERROR,fatal:!1,url:c,reason:"no fragments found in level",level:typeof n.level=="number"?n.level:void 0});return}if(g===A.PlaylistContextType.MANIFEST){var s={attrs:new D.AttrList({}),bitrate:0,details:t,name:"",url:c};l.trigger(L.Events.MANIFEST_LOADED,{levels:[s],audioTracks:[],url:c,stats:o,networkDetails:v,sessionData:null,sessionKeys:null})}o.parsing.end=performance.now(),n.levelDetails=t,this.handlePlaylistLoaded(a,o,n,v)},p.handleManifestParsingError=function(a,o,n,v){this.hls.trigger(L.Events.ERROR,{type:M.ErrorTypes.NETWORK_ERROR,details:M.ErrorDetails.MANIFEST_PARSING_ERROR,fatal:o.type===A.PlaylistContextType.MANIFEST,url:a.url,reason:n,response:a,context:o,networkDetails:v})},p.handleNetworkError=function(a,o,n,v){n===void 0&&(n=!1),P.logger.warn("[playlist-loader]: A network "+(n?"timeout":"error")+" occurred while loading "+a.type+" level: "+a.level+" id: "+a.id+' group-id: "'+a.groupId+'"');var l=M.ErrorDetails.UNKNOWN,i=!1,u=this.getInternalLoader(a);switch(a.type){case A.PlaylistContextType.MANIFEST:l=n?M.ErrorDetails.MANIFEST_LOAD_TIMEOUT:M.ErrorDetails.MANIFEST_LOAD_ERROR,i=!0;break;case A.PlaylistContextType.LEVEL:l=n?M.ErrorDetails.LEVEL_LOAD_TIMEOUT:M.ErrorDetails.LEVEL_LOAD_ERROR,i=!1;break;case A.PlaylistContextType.AUDIO_TRACK:l=n?M.ErrorDetails.AUDIO_TRACK_LOAD_TIMEOUT:M.ErrorDetails.AUDIO_TRACK_LOAD_ERROR,i=!1;break;case A.PlaylistContextType.SUBTITLE_TRACK:l=n?M.ErrorDetails.SUBTITLE_TRACK_LOAD_TIMEOUT:M.ErrorDetails.SUBTITLE_LOAD_ERROR,i=!1;break}u&&this.resetInternalLoader(a.type);var g={type:M.ErrorTypes.NETWORK_ERROR,details:l,fatal:i,url:a.url,loader:u,context:a,networkDetails:o};v&&(g.response=v),this.hls.trigger(L.Events.ERROR,g)},p.handlePlaylistLoaded=function(a,o,n,v){var l=n.type,i=n.level,u=n.id,g=n.groupId,c=n.loader,m=n.levelDetails,e=n.deliveryDirectives;if(!(m!=null&&m.targetduration)){this.handleManifestParsingError(a,n,"invalid target duration",v);return}if(!!c)switch(m.live&&(c.getCacheAge&&(m.ageHeader=c.getCacheAge()||0),(!c.getCacheAge||isNaN(m.ageHeader))&&(m.ageHeader=0)),l){case A.PlaylistContextType.MANIFEST:case A.PlaylistContextType.LEVEL:this.hls.trigger(L.Events.LEVEL_LOADED,{details:m,level:i||0,id:u||0,stats:o,networkDetails:v,deliveryDirectives:e});break;case A.PlaylistContextType.AUDIO_TRACK:this.hls.trigger(L.Events.AUDIO_TRACK_LOADED,{details:m,id:u||0,groupId:g||"",stats:o,networkDetails:v,deliveryDirectives:e});break;case A.PlaylistContextType.SUBTITLE_TRACK:this.hls.trigger(L.Events.SUBTITLE_TRACK_LOADED,{details:m,id:u||0,groupId:g||"",stats:o,networkDetails:v,deliveryDirectives:e});break}},E}();let d=S},"./src/polyfills/number.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{MAX_SAFE_INTEGER:()=>L,isFiniteNumber:()=>C});var C=Number.isFinite||function(M){return typeof M=="number"&&isFinite(M)},L=Number.MAX_SAFE_INTEGER||9007199254740991},"./src/remux/aac-helper.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>L});var C=function(){function M(){}return M.getSilentFrame=function(B,A){switch(B){case"mp4a.40.2":if(A===1)return new Uint8Array([0,200,0,128,35,128]);if(A===2)return new Uint8Array([33,0,73,144,2,25,0,35,128]);if(A===3)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,142]);if(A===4)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,128,44,128,8,2,56]);if(A===5)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,56]);if(A===6)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,0,178,0,32,8,224]);break;default:if(A===1)return new Uint8Array([1,64,34,128,163,78,230,128,186,8,0,0,0,28,6,241,193,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(A===2)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(A===3)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);break}},M}();let L=C},"./src/remux/mp4-generator.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>M});var C=Math.pow(2,32)-1,L=function(){function P(){}return P.init=function(){P.types={avc1:[],avcC:[],btrt:[],dinf:[],dref:[],esds:[],ftyp:[],hdlr:[],mdat:[],mdhd:[],mdia:[],mfhd:[],minf:[],moof:[],moov:[],mp4a:[],".mp3":[],mvex:[],mvhd:[],pasp:[],sdtp:[],stbl:[],stco:[],stsc:[],stsd:[],stsz:[],stts:[],tfdt:[],tfhd:[],traf:[],trak:[],trun:[],trex:[],tkhd:[],vmhd:[],smhd:[]};var A;for(A in P.types)P.types.hasOwnProperty(A)&&(P.types[A]=[A.charCodeAt(0),A.charCodeAt(1),A.charCodeAt(2),A.charCodeAt(3)]);var D=new Uint8Array([0,0,0,0,0,0,0,0,118,105,100,101,0,0,0,0,0,0,0,0,0,0,0,0,86,105,100,101,111,72,97,110,100,108,101,114,0]),x=new Uint8Array([0,0,0,0,0,0,0,0,115,111,117,110,0,0,0,0,0,0,0,0,0,0,0,0,83,111,117,110,100,72,97,110,100,108,101,114,0]);P.HDLR_TYPES={video:D,audio:x};var _=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1]),S=new Uint8Array([0,0,0,0,0,0,0,0]);P.STTS=P.STSC=P.STCO=S,P.STSZ=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]),P.VMHD=new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0]),P.SMHD=new Uint8Array([0,0,0,0,0,0,0,0]),P.STSD=new Uint8Array([0,0,0,0,0,0,0,1]);var d=new Uint8Array([105,115,111,109]),E=new Uint8Array([97,118,99,49]),p=new Uint8Array([0,0,0,1]);P.FTYP=P.box(P.types.ftyp,d,p,d,E),P.DINF=P.box(P.types.dinf,P.box(P.types.dref,_))},P.box=function(A){for(var D=8,x=arguments.length,_=new Array(x>1?x-1:0),S=1;S<x;S++)_[S-1]=arguments[S];for(var d=_.length,E=d;d--;)D+=_[d].byteLength;var p=new Uint8Array(D);for(p[0]=D>>24&255,p[1]=D>>16&255,p[2]=D>>8&255,p[3]=D&255,p.set(A,4),d=0,D=8;d<E;d++)p.set(_[d],D),D+=_[d].byteLength;return p},P.hdlr=function(A){return P.box(P.types.hdlr,P.HDLR_TYPES[A])},P.mdat=function(A){return P.box(P.types.mdat,A)},P.mdhd=function(A,D){D*=A;var x=Math.floor(D/(C+1)),_=Math.floor(D%(C+1));return P.box(P.types.mdhd,new Uint8Array([1,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,A>>24&255,A>>16&255,A>>8&255,A&255,x>>24,x>>16&255,x>>8&255,x&255,_>>24,_>>16&255,_>>8&255,_&255,85,196,0,0]))},P.mdia=function(A){return P.box(P.types.mdia,P.mdhd(A.timescale,A.duration),P.hdlr(A.type),P.minf(A))},P.mfhd=function(A){return P.box(P.types.mfhd,new Uint8Array([0,0,0,0,A>>24,A>>16&255,A>>8&255,A&255]))},P.minf=function(A){return A.type==="audio"?P.box(P.types.minf,P.box(P.types.smhd,P.SMHD),P.DINF,P.stbl(A)):P.box(P.types.minf,P.box(P.types.vmhd,P.VMHD),P.DINF,P.stbl(A))},P.moof=function(A,D,x){return P.box(P.types.moof,P.mfhd(A),P.traf(x,D))},P.moov=function(A){for(var D=A.length,x=[];D--;)x[D]=P.trak(A[D]);return P.box.apply(null,[P.types.moov,P.mvhd(A[0].timescale,A[0].duration)].concat(x).concat(P.mvex(A)))},P.mvex=function(A){for(var D=A.length,x=[];D--;)x[D]=P.trex(A[D]);return P.box.apply(null,[P.types.mvex].concat(x))},P.mvhd=function(A,D){D*=A;var x=Math.floor(D/(C+1)),_=Math.floor(D%(C+1)),S=new Uint8Array([1,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,A>>24&255,A>>16&255,A>>8&255,A&255,x>>24,x>>16&255,x>>8&255,x&255,_>>24,_>>16&255,_>>8&255,_&255,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255]);return P.box(P.types.mvhd,S)},P.sdtp=function(A){var D=A.samples||[],x=new Uint8Array(4+D.length),_,S;for(_=0;_<D.length;_++)S=D[_].flags,x[_+4]=S.dependsOn<<4|S.isDependedOn<<2|S.hasRedundancy;return P.box(P.types.sdtp,x)},P.stbl=function(A){return P.box(P.types.stbl,P.stsd(A),P.box(P.types.stts,P.STTS),P.box(P.types.stsc,P.STSC),P.box(P.types.stsz,P.STSZ),P.box(P.types.stco,P.STCO))},P.avc1=function(A){var D=[],x=[],_,S,d;for(_=0;_<A.sps.length;_++)S=A.sps[_],d=S.byteLength,D.push(d>>>8&255),D.push(d&255),D=D.concat(Array.prototype.slice.call(S));for(_=0;_<A.pps.length;_++)S=A.pps[_],d=S.byteLength,x.push(d>>>8&255),x.push(d&255),x=x.concat(Array.prototype.slice.call(S));var E=P.box(P.types.avcC,new Uint8Array([1,D[3],D[4],D[5],255,224|A.sps.length].concat(D).concat([A.pps.length]).concat(x))),p=A.width,h=A.height,a=A.pixelRatio[0],o=A.pixelRatio[1];return P.box(P.types.avc1,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,p>>8&255,p&255,h>>8&255,h&255,0,72,0,0,0,72,0,0,0,0,0,0,0,1,18,100,97,105,108,121,109,111,116,105,111,110,47,104,108,115,46,106,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,17,17]),E,P.box(P.types.btrt,new Uint8Array([0,28,156,128,0,45,198,192,0,45,198,192])),P.box(P.types.pasp,new Uint8Array([a>>24,a>>16&255,a>>8&255,a&255,o>>24,o>>16&255,o>>8&255,o&255])))},P.esds=function(A){var D=A.config.length;return new Uint8Array([0,0,0,0,3,23+D,0,1,0,4,15+D,64,21,0,0,0,0,0,0,0,0,0,0,0,5].concat([D]).concat(A.config).concat([6,1,2]))},P.mp4a=function(A){var D=A.samplerate;return P.box(P.types.mp4a,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,A.channelCount,0,16,0,0,0,0,D>>8&255,D&255,0,0]),P.box(P.types.esds,P.esds(A)))},P.mp3=function(A){var D=A.samplerate;return P.box(P.types[".mp3"],new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,A.channelCount,0,16,0,0,0,0,D>>8&255,D&255,0,0]))},P.stsd=function(A){return A.type==="audio"?A.segmentCodec==="mp3"&&A.codec==="mp3"?P.box(P.types.stsd,P.STSD,P.mp3(A)):P.box(P.types.stsd,P.STSD,P.mp4a(A)):P.box(P.types.stsd,P.STSD,P.avc1(A))},P.tkhd=function(A){var D=A.id,x=A.duration*A.timescale,_=A.width,S=A.height,d=Math.floor(x/(C+1)),E=Math.floor(x%(C+1));return P.box(P.types.tkhd,new Uint8Array([1,0,0,7,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,D>>24&255,D>>16&255,D>>8&255,D&255,0,0,0,0,d>>24,d>>16&255,d>>8&255,d&255,E>>24,E>>16&255,E>>8&255,E&255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,_>>8&255,_&255,0,0,S>>8&255,S&255,0,0]))},P.traf=function(A,D){var x=P.sdtp(A),_=A.id,S=Math.floor(D/(C+1)),d=Math.floor(D%(C+1));return P.box(P.types.traf,P.box(P.types.tfhd,new Uint8Array([0,0,0,0,_>>24,_>>16&255,_>>8&255,_&255])),P.box(P.types.tfdt,new Uint8Array([1,0,0,0,S>>24,S>>16&255,S>>8&255,S&255,d>>24,d>>16&255,d>>8&255,d&255])),P.trun(A,x.length+16+20+8+16+8+8),x)},P.trak=function(A){return A.duration=A.duration||4294967295,P.box(P.types.trak,P.tkhd(A),P.mdia(A))},P.trex=function(A){var D=A.id;return P.box(P.types.trex,new Uint8Array([0,0,0,0,D>>24,D>>16&255,D>>8&255,D&255,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]))},P.trun=function(A,D){var x=A.samples||[],_=x.length,S=12+16*_,d=new Uint8Array(S),E,p,h,a,o,n;for(D+=8+S,d.set([A.type==="video"?1:0,0,15,1,_>>>24&255,_>>>16&255,_>>>8&255,_&255,D>>>24&255,D>>>16&255,D>>>8&255,D&255],0),E=0;E<_;E++)p=x[E],h=p.duration,a=p.size,o=p.flags,n=p.cts,d.set([h>>>24&255,h>>>16&255,h>>>8&255,h&255,a>>>24&255,a>>>16&255,a>>>8&255,a&255,o.isLeading<<2|o.dependsOn,o.isDependedOn<<6|o.hasRedundancy<<4|o.paddingValue<<1|o.isNonSync,o.degradPrio&240<<8,o.degradPrio&15,n>>>24&255,n>>>16&255,n>>>8&255,n&255],12+16*E);return P.box(P.types.trun,d)},P.initSegment=function(A){P.types||P.init();var D=P.moov(A),x=new Uint8Array(P.FTYP.byteLength+D.byteLength);return x.set(P.FTYP),x.set(D,P.FTYP.byteLength),x},P}();L.types=void 0,L.HDLR_TYPES=void 0,L.STTS=void 0,L.STSC=void 0,L.STCO=void 0,L.STSZ=void 0,L.VMHD=void 0,L.SMHD=void 0,L.STSD=void 0,L.FTYP=void 0,L.DINF=void 0;let M=L},"./src/remux/mp4-remuxer.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>a,flushTextTrackMetadataCueSamples:()=>v,flushTextTrackUserdataCueSamples:()=>l,normalizePts:()=>o});var C=T("./src/polyfills/number.ts"),L=T("./src/remux/aac-helper.ts"),M=T("./src/remux/mp4-generator.ts"),P=T("./src/events.ts"),B=T("./src/errors.ts"),A=T("./src/utils/logger.ts"),D=T("./src/types/loader.ts"),x=T("./src/utils/timescale-conversion.ts");function _(){return _=Object.assign?Object.assign.bind():function(g){for(var c=1;c<arguments.length;c++){var m=arguments[c];for(var e in m)Object.prototype.hasOwnProperty.call(m,e)&&(g[e]=m[e])}return g},_.apply(this,arguments)}var S=10*1e3,d=1024,E=1152,p=null,h=null,a=function(){function g(m,e,r,t){if(t===void 0&&(t=""),this.observer=void 0,this.config=void 0,this.typeSupported=void 0,this.ISGenerated=!1,this._initPTS=void 0,this._initDTS=void 0,this.nextAvcDts=null,this.nextAudioPts=null,this.videoSampleDuration=null,this.isAudioContiguous=!1,this.isVideoContiguous=!1,this.observer=m,this.config=e,this.typeSupported=r,this.ISGenerated=!1,p===null){var s=navigator.userAgent||"",y=s.match(/Chrome\/(\d+)/i);p=y?parseInt(y[1]):0}if(h===null){var f=navigator.userAgent.match(/Safari\/(\d+)/i);h=f?parseInt(f[1]):0}}var c=g.prototype;return c.destroy=function(){},c.resetTimeStamp=function(e){A.logger.log("[mp4-remuxer]: initPTS & initDTS reset"),this._initPTS=this._initDTS=e},c.resetNextTimestamp=function(){A.logger.log("[mp4-remuxer]: reset next timestamp"),this.isVideoContiguous=!1,this.isAudioContiguous=!1},c.resetInitSegment=function(){A.logger.log("[mp4-remuxer]: ISGenerated flag reset"),this.ISGenerated=!1},c.getVideoStartPts=function(e){var r=!1,t=e.reduce(function(s,y){var f=y.pts-s;return f<-4294967296?(r=!0,o(s,y.pts)):f>0?s:y.pts},e[0].pts);return r&&A.logger.debug("PTS rollover detected"),t},c.remux=function(e,r,t,s,y,f,b,R){var I,k,F,K,H,j,Y=y,Q=y,q=e.pid>-1,ne=r.pid>-1,te=r.samples.length,ae=e.samples.length>0,ue=b&&te>0||te>1,ce=(!q||ae)&&(!ne||ue)||this.ISGenerated||b;if(ce){this.ISGenerated||(F=this.generateIS(e,r,y));var le=this.isVideoContiguous,fe=-1,de;if(ue&&(fe=n(r.samples),!le&&this.config.forceKeyFrameOnDiscontinuity))if(j=!0,fe>0){A.logger.warn("[mp4-remuxer]: Dropped "+fe+" out of "+te+" video samples due to a missing keyframe");var xe=this.getVideoStartPts(r.samples);r.samples=r.samples.slice(fe),r.dropped+=fe,Q+=(r.samples[0].pts-xe)/r.inputTimeScale,de=Q}else fe===-1&&(A.logger.warn("[mp4-remuxer]: No keyframe found out of "+te+" video samples"),j=!1);if(this.ISGenerated){if(ae&&ue){var Ae=this.getVideoStartPts(r.samples),Ie=o(e.samples[0].pts,Ae)-Ae,Re=Ie/r.inputTimeScale;Y+=Math.max(0,Re),Q+=Math.max(0,-Re)}if(ae){if(e.samplerate||(A.logger.warn("[mp4-remuxer]: regenerate InitSegment as audio detected"),F=this.generateIS(e,r,y)),k=this.remuxAudio(e,Y,this.isAudioContiguous,f,ne||ue||R===D.PlaylistLevelType.AUDIO?Q:void 0),ue){var Oe=k?k.endPTS-k.startPTS:0;r.inputTimeScale||(A.logger.warn("[mp4-remuxer]: regenerate InitSegment as video detected"),F=this.generateIS(e,r,y)),I=this.remuxVideo(r,Q,le,Oe)}}else ue&&(I=this.remuxVideo(r,Q,le,0));I&&(I.firstKeyFrame=fe,I.independent=fe!==-1,I.firstKeyFramePTS=de)}}return this.ISGenerated&&(t.samples.length&&(H=v(t,y,this._initPTS,this._initDTS)),s.samples.length&&(K=l(s,y,this._initPTS))),{audio:k,video:I,initSegment:F,independent:j,text:K,id3:H}},c.generateIS=function(e,r,t){var s=e.samples,y=r.samples,f=this.typeSupported,b={},R=!(0,C.isFiniteNumber)(this._initPTS),I="audio/mp4",k,F,K;if(R&&(k=F=1/0),e.config&&s.length){switch(e.timescale=e.samplerate,e.segmentCodec){case"mp3":f.mpeg?(I="audio/mpeg",e.codec=""):f.mp3&&(e.codec="mp3");break}b.audio={id:"audio",container:I,codec:e.codec,initSegment:e.segmentCodec==="mp3"&&f.mpeg?new Uint8Array(0):M.default.initSegment([e]),metadata:{channelCount:e.channelCount}},R&&(K=e.inputTimeScale,k=F=s[0].pts-Math.round(K*t))}if(r.sps&&r.pps&&y.length&&(r.timescale=r.inputTimeScale,b.video={id:"main",container:"video/mp4",codec:r.codec,initSegment:M.default.initSegment([r]),metadata:{width:r.width,height:r.height}},R)){K=r.inputTimeScale;var H=this.getVideoStartPts(y),j=Math.round(K*t);F=Math.min(F,o(y[0].dts,H)-j),k=Math.min(k,H-j)}if(Object.keys(b).length)return this.ISGenerated=!0,R&&(this._initPTS=k,this._initDTS=F),{tracks:b,initPTS:k,timescale:K}},c.remuxVideo=function(e,r,t,s){var y=e.inputTimeScale,f=e.samples,b=[],R=f.length,I=this._initPTS,k=this.nextAvcDts,F=8,K=this.videoSampleDuration,H,j,Y=Number.POSITIVE_INFINITY,Q=Number.NEGATIVE_INFINITY,q=!1;if(!t||k===null){var ne=r*y,te=f[0].pts-o(f[0].dts,f[0].pts);k=ne-te}for(var ae=0;ae<R;ae++){var ue=f[ae];ue.pts=o(ue.pts-I,k),ue.dts=o(ue.dts-I,k),ue.dts<f[ae>0?ae-1:ae].dts&&(q=!0)}q&&f.sort(function(ut,wt){var sr=ut.dts-wt.dts,or=ut.pts-wt.pts;return sr||or}),H=f[0].dts,j=f[f.length-1].dts;var ce=j-H,le=ce?Math.round(ce/(R-1)):K||e.inputTimeScale/30;if(t){var fe=H-k,de=fe>le,xe=fe<-1;if((de||xe)&&(de?A.logger.warn("AVC: "+(0,x.toMsFromMpegTsClock)(fe,!0)+" ms ("+fe+"dts) hole between fragments detected, filling it"):A.logger.warn("AVC: "+(0,x.toMsFromMpegTsClock)(-fe,!0)+" ms ("+fe+"dts) overlapping between fragments detected"),!xe||k>f[0].pts)){H=k;var Ae=f[0].pts-fe;f[0].dts=H,f[0].pts=Ae,A.logger.log("Video: First PTS/DTS adjusted: "+(0,x.toMsFromMpegTsClock)(Ae,!0)+"/"+(0,x.toMsFromMpegTsClock)(H,!0)+", delta: "+(0,x.toMsFromMpegTsClock)(fe,!0)+" ms")}}H=Math.max(0,H);for(var Ie=0,Re=0,Oe=0;Oe<R;Oe++){for(var Pe=f[Oe],Ce=Pe.units,Le=Ce.length,ke=0,Be=0;Be<Le;Be++)ke+=Ce[Be].data.length;Re+=ke,Ie+=Le,Pe.length=ke,Pe.dts=Math.max(Pe.dts,H),Y=Math.min(Pe.pts,Y),Q=Math.max(Pe.pts,Q)}j=f[R-1].dts;var we=Re+4*Ie+8,Ye;try{Ye=new Uint8Array(we)}catch{this.observer.emit(P.Events.ERROR,P.Events.ERROR,{type:B.ErrorTypes.MUX_ERROR,details:B.ErrorDetails.REMUX_ALLOC_ERROR,fatal:!1,bytes:we,reason:"fail allocating video mdat "+we});return}var Xe=new DataView(Ye.buffer);Xe.setUint32(0,we),Ye.set(M.default.types.mdat,4);for(var rt=!1,ze=Number.POSITIVE_INFINITY,it=Number.POSITIVE_INFINITY,nt=Number.NEGATIVE_INFINITY,Je=Number.NEGATIVE_INFINITY,Ne=0;Ne<R;Ne++){for(var Ke=f[Ne],Ze=Ke.units,ft=0,Me=0,qe=Ze.length;Me<qe;Me++){var et=Ze[Me],_t=et.data,mt=et.data.byteLength;Xe.setUint32(F,mt),F+=4,Ye.set(_t,F),F+=mt,ft+=4+mt}var pt=void 0;if(Ne<R-1)K=f[Ne+1].dts-Ke.dts,pt=f[Ne+1].pts-Ke.pts;else{var Rt=this.config,Tt=Ne>0?Ke.dts-f[Ne-1].dts:le;if(pt=Ne>0?Ke.pts-f[Ne-1].pts:le,Rt.stretchShortVideoTrack&&this.nextAudioPts!==null){var Gt=Math.floor(Rt.maxBufferHole*y),It=(s?Y+s*y:this.nextAudioPts)-Ke.pts;It>Gt?(K=It-Tt,K<0?K=Tt:rt=!0,A.logger.log("[mp4-remuxer]: It is approximately "+It/90+" ms to the next segment; using duration "+K/90+" ms for the last video frame.")):K=Tt}else K=Tt}var rr=Math.round(Ke.pts-Ke.dts);ze=Math.min(ze,K),nt=Math.max(nt,K),it=Math.min(it,pt),Je=Math.max(Je,pt),b.push(new i(Ke.key,K,ft,rr))}if(b.length){if(p){if(p<70){var Ot=b[0].flags;Ot.dependsOn=2,Ot.isNonSync=0}}else if(h&&Je-it<nt-ze&&le/nt<.025&&b[0].cts===0){A.logger.warn("Found irregular gaps in sample duration. Using PTS instead of DTS to determine MP4 sample duration.");for(var St=H,lt=0,Ht=b.length;lt<Ht;lt++){var Ct=St+b[lt].duration,jt=St+b[lt].cts;if(lt<Ht-1){var Mt=Ct+b[lt+1].cts;b[lt].duration=Mt-jt}else b[lt].duration=lt?b[lt-1].duration:le;b[lt].cts=0,St=Ct}}}console.assert(K!==null,"mp4SampleDuration must be computed"),K=rt||!K?le:K,this.nextAvcDts=k=j+K,this.videoSampleDuration=K,this.isVideoContiguous=!0;var ir=M.default.moof(e.sequenceNumber++,H,_({},e,{samples:b})),nr="video",ar={data1:ir,data2:Ye,startPTS:Y/y,endPTS:(Q+K)/y,startDTS:H/y,endDTS:k/y,type:nr,hasAudio:!1,hasVideo:!0,nb:b.length,dropped:e.dropped};return e.samples=[],e.dropped=0,console.assert(Ye.length,"MDAT length must not be zero"),ar},c.remuxAudio=function(e,r,t,s,y){var f=e.inputTimeScale,b=e.samplerate?e.samplerate:f,R=f/b,I=e.segmentCodec==="aac"?d:E,k=I*R,F=this._initPTS,K=e.segmentCodec==="mp3"&&this.typeSupported.mpeg,H=[],j=y!==void 0,Y=e.samples,Q=K?0:8,q=this.nextAudioPts||-1,ne=r*f;if(this.isAudioContiguous=t=t||Y.length&&q>0&&(s&&Math.abs(ne-q)<9e3||Math.abs(o(Y[0].pts-F,ne)-q)<20*k),Y.forEach(function(et){et.pts=o(et.pts-F,ne)}),!t||q<0){if(Y=Y.filter(function(et){return et.pts>=0}),!Y.length)return;y===0?q=0:s&&!j?q=Math.max(0,ne):q=Y[0].pts}if(e.segmentCodec==="aac")for(var te=this.config.maxAudioFramesDrift,ae=0,ue=q;ae<Y.length;ae++){var ce=Y[ae],le=ce.pts,fe=le-ue,de=Math.abs(1e3*fe/f);if(fe<=-te*k&&j)ae===0&&(A.logger.warn("Audio frame @ "+(le/f).toFixed(3)+"s overlaps nextAudioPts by "+Math.round(1e3*fe/f)+" ms."),this.nextAudioPts=q=ue=le);else if(fe>=te*k&&de<S&&j){var xe=Math.round(fe/k);ue=le-xe*k,ue<0&&(xe--,ue+=k),ae===0&&(this.nextAudioPts=q=ue),A.logger.warn("[mp4-remuxer]: Injecting "+xe+" audio frame @ "+(ue/f).toFixed(3)+"s due to "+Math.round(1e3*fe/f)+" ms gap.");for(var Ae=0;Ae<xe;Ae++){var Ie=Math.max(ue,0),Re=L.default.getSilentFrame(e.manifestCodec||e.codec,e.channelCount);Re||(A.logger.log("[mp4-remuxer]: Unable to get silent frame for given audio codec; duplicating last frame instead."),Re=ce.unit.subarray()),Y.splice(ae,0,{unit:Re,pts:Ie}),ue+=k,ae++}}ce.pts=ue,ue+=k}for(var Oe=null,Pe=null,Ce,Le=0,ke=Y.length;ke--;)Le+=Y[ke].unit.byteLength;for(var Be=0,we=Y.length;Be<we;Be++){var Ye=Y[Be],Xe=Ye.unit,rt=Ye.pts;if(Pe!==null){var ze=H[Be-1];ze.duration=Math.round((rt-Pe)/R)}else if(t&&e.segmentCodec==="aac"&&(rt=q),Oe=rt,Le>0){Le+=Q;try{Ce=new Uint8Array(Le)}catch{this.observer.emit(P.Events.ERROR,P.Events.ERROR,{type:B.ErrorTypes.MUX_ERROR,details:B.ErrorDetails.REMUX_ALLOC_ERROR,fatal:!1,bytes:Le,reason:"fail allocating audio mdat "+Le});return}if(!K){var it=new DataView(Ce.buffer);it.setUint32(0,Le),Ce.set(M.default.types.mdat,4)}}else return;Ce.set(Xe,Q);var nt=Xe.byteLength;Q+=nt,H.push(new i(!0,I,nt,0)),Pe=rt}var Je=H.length;if(!!Je){var Ne=H[H.length-1];this.nextAudioPts=q=Pe+R*Ne.duration;var Ke=K?new Uint8Array(0):M.default.moof(e.sequenceNumber++,Oe/R,_({},e,{samples:H}));e.samples=[];var Ze=Oe/f,ft=q/f,Me="audio",qe={data1:Ke,data2:Ce,startPTS:Ze,endPTS:ft,startDTS:Ze,endDTS:ft,type:Me,hasAudio:!0,hasVideo:!1,nb:Je};return this.isAudioContiguous=!0,console.assert(Ce.length,"MDAT length must not be zero"),qe}},c.remuxEmptyAudio=function(e,r,t,s){var y=e.inputTimeScale,f=e.samplerate?e.samplerate:y,b=y/f,R=this.nextAudioPts,I=(R!==null?R:s.startDTS*y)+this._initDTS,k=s.endDTS*y+this._initDTS,F=b*d,K=Math.ceil((k-I)/F),H=L.default.getSilentFrame(e.manifestCodec||e.codec,e.channelCount);if(A.logger.warn("[mp4-remuxer]: remux empty Audio"),!H){A.logger.trace("[mp4-remuxer]: Unable to remuxEmptyAudio since we were unable to get a silent frame for given audio codec");return}for(var j=[],Y=0;Y<K;Y++){var Q=I+Y*F;j.push({unit:H,pts:Q,dts:Q})}return e.samples=j,this.remuxAudio(e,r,t,!1)},g}();function o(g,c){var m;if(c===null)return g;for(c<g?m=-8589934592:m=8589934592;Math.abs(g-c)>4294967296;)g+=m;return g}function n(g){for(var c=0;c<g.length;c++)if(g[c].key)return c;return-1}function v(g,c,m,e){var r=g.samples.length;if(!!r){for(var t=g.inputTimeScale,s=0;s<r;s++){var y=g.samples[s];y.pts=o(y.pts-m,c*t)/t,y.dts=o(y.dts-e,c*t)/t}var f=g.samples;return g.samples=[],{samples:f}}}function l(g,c,m){var e=g.samples.length;if(!!e){for(var r=g.inputTimeScale,t=0;t<e;t++){var s=g.samples[t];s.pts=o(s.pts-m,c*r)/r}g.samples.sort(function(f,b){return f.pts-b.pts});var y=g.samples;return g.samples=[],{samples:y}}}var i=function(c,m,e,r){this.size=void 0,this.duration=void 0,this.cts=void 0,this.flags=void 0,this.duration=m,this.size=e,this.cts=r,this.flags=new u(c)},u=function(c){this.isLeading=0,this.isDependedOn=0,this.hasRedundancy=0,this.degradPrio=0,this.dependsOn=1,this.isNonSync=1,this.dependsOn=c?2:1,this.isNonSync=c?0:1}},"./src/remux/passthrough-remuxer.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>x});var C=T("./src/polyfills/number.ts"),L=T("./src/remux/mp4-remuxer.ts"),M=T("./src/utils/mp4-tools.ts"),P=T("./src/loader/fragment.ts"),B=T("./src/utils/logger.ts"),A=function(){function _(){this.emitInitSegment=!1,this.audioCodec=void 0,this.videoCodec=void 0,this.initData=void 0,this.initPTS=void 0,this.initTracks=void 0,this.lastEndTime=null}var S=_.prototype;return S.destroy=function(){},S.resetTimeStamp=function(E){this.initPTS=E,this.lastEndTime=null},S.resetNextTimestamp=function(){this.lastEndTime=null},S.resetInitSegment=function(E,p,h,a){this.audioCodec=p,this.videoCodec=h,this.generateInitSegment((0,M.patchEncyptionData)(E,a)),this.emitInitSegment=!0},S.generateInitSegment=function(E){var p=this.audioCodec,h=this.videoCodec;if(!E||!E.byteLength){this.initTracks=void 0,this.initData=void 0;return}var a=this.initData=(0,M.parseInitSegment)(E);p||(p=D(a.audio,P.ElementaryStreamTypes.AUDIO)),h||(h=D(a.video,P.ElementaryStreamTypes.VIDEO));var o={};a.audio&&a.video?o.audiovideo={container:"video/mp4",codec:p+","+h,initSegment:E,id:"main"}:a.audio?o.audio={container:"audio/mp4",codec:p,initSegment:E,id:"audio"}:a.video?o.video={container:"video/mp4",codec:h,initSegment:E,id:"main"}:B.logger.warn("[passthrough-remuxer.ts]: initSegment does not contain moov or trak boxes."),this.initTracks=o},S.remux=function(E,p,h,a,o){var n,v=this.initPTS,l=this.lastEndTime,i={audio:void 0,video:void 0,text:a,id3:h,initSegment:void 0};(0,C.isFiniteNumber)(l)||(l=this.lastEndTime=o||0);var u=p.samples;if(!u||!u.length)return i;var g={initPTS:void 0,timescale:1},c=this.initData;if((!c||!c.length)&&(this.generateInitSegment(u),c=this.initData),!c||!c.length)return B.logger.warn("[passthrough-remuxer.ts]: Failed to generate initSegment."),i;this.emitInitSegment&&(g.tracks=this.initTracks,this.emitInitSegment=!1);var m=(0,M.getStartDTS)(c,u);(0,C.isFiniteNumber)(v)||(this.initPTS=g.initPTS=v=m-o);var e=(0,M.getDuration)(u,c),r=E?m-v:l,t=r+e;(0,M.offsetStartDTS)(c,u,v),e>0?this.lastEndTime=t:(B.logger.warn("Duration parsed from mp4 should be greater than zero"),this.resetNextTimestamp());var s=!!c.audio,y=!!c.video,f="";s&&(f+="audio"),y&&(f+="video");var b={data1:u,startPTS:r,startDTS:r,endPTS:t,endDTS:t,type:f,hasAudio:s,hasVideo:y,nb:1,dropped:0};i.audio=b.type==="audio"?b:void 0,i.video=b.type!=="audio"?b:void 0,i.initSegment=g;var R=(n=this.initPTS)!=null?n:0;return i.id3=(0,L.flushTextTrackMetadataCueSamples)(h,o,R,R),a.samples.length&&(i.text=(0,L.flushTextTrackUserdataCueSamples)(a,o,R)),i},_}();function D(_,S){var d=_==null?void 0:_.codec;return d&&d.length>4?d:d==="hvc1"||d==="hev1"?"hvc1.1.c.L120.90":d==="av01"?"av01.0.04M.08":d==="avc1"||S===P.ElementaryStreamTypes.VIDEO?"avc1.42e01e":"mp4a.40.5"}let x=A},"./src/task-loop.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>C});var C=function(){function L(){this._boundTick=void 0,this._tickTimer=null,this._tickInterval=null,this._tickCallCount=0,this._boundTick=this.tick.bind(this)}var M=L.prototype;return M.destroy=function(){this.onHandlerDestroying(),this.onHandlerDestroyed()},M.onHandlerDestroying=function(){this.clearNextTick(),this.clearInterval()},M.onHandlerDestroyed=function(){},M.hasInterval=function(){return!!this._tickInterval},M.hasNextTick=function(){return!!this._tickTimer},M.setInterval=function(B){return this._tickInterval?!1:(this._tickInterval=self.setInterval(this._boundTick,B),!0)},M.clearInterval=function(){return this._tickInterval?(self.clearInterval(this._tickInterval),this._tickInterval=null,!0):!1},M.clearNextTick=function(){return this._tickTimer?(self.clearTimeout(this._tickTimer),this._tickTimer=null,!0):!1},M.tick=function(){this._tickCallCount++,this._tickCallCount===1&&(this.doTick(),this._tickCallCount>1&&this.tickImmediate(),this._tickCallCount=0)},M.tickImmediate=function(){this.clearNextTick(),this._tickTimer=self.setTimeout(this._boundTick,0)},M.doTick=function(){},L}()},"./src/types/cmcd.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{CMCDObjectType:()=>L,CMCDStreamType:()=>P,CMCDStreamingFormat:()=>M,CMCDVersion:()=>C});var C=1,L;(function(B){B.MANIFEST="m",B.AUDIO="a",B.VIDEO="v",B.MUXED="av",B.INIT="i",B.CAPTION="c",B.TIMED_TEXT="tt",B.KEY="k",B.OTHER="o"})(L||(L={}));var M;(function(B){B.DASH="d",B.HLS="h",B.SMOOTH="s",B.OTHER="o"})(M||(M={}));var P;(function(B){B.VOD="v",B.LIVE="l"})(P||(P={}))},"./src/types/demuxer.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{MetadataSchema:()=>C});var C;(function(L){L.audioId3="org.id3",L.dateRange="com.apple.quicktime.HLS",L.emsg="https://aomedia.org/emsg/ID3"})(C||(C={}))},"./src/types/level.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{HdcpLevels:()=>B,HlsSkip:()=>A,HlsUrlParameters:()=>x,Level:()=>_,getSkipValue:()=>D});function C(S,d){for(var E=0;E<d.length;E++){var p=d[E];p.enumerable=p.enumerable||!1,p.configurable=!0,"value"in p&&(p.writable=!0),Object.defineProperty(S,M(p.key),p)}}function L(S,d,E){return d&&C(S.prototype,d),E&&C(S,E),Object.defineProperty(S,"prototype",{writable:!1}),S}function M(S){var d=P(S,"string");return typeof d=="symbol"?d:String(d)}function P(S,d){if(typeof S!="object"||S===null)return S;var E=S[Symbol.toPrimitive];if(E!==void 0){var p=E.call(S,d||"default");if(typeof p!="object")return p;throw new TypeError("@@toPrimitive must return a primitive value.")}return(d==="string"?String:Number)(S)}var B=["NONE","TYPE-0","TYPE-1","TYPE-2",null],A;(function(S){S.No="",S.Yes="YES",S.v2="v2"})(A||(A={}));function D(S,d){var E=S.canSkipUntil,p=S.canSkipDateRanges,h=S.endSN,a=d!==void 0?d-h:0;return E&&a<E?p?A.v2:A.Yes:A.No}var x=function(){function S(E,p,h){this.msn=void 0,this.part=void 0,this.skip=void 0,this.msn=E,this.part=p,this.skip=h}var d=S.prototype;return d.addDirectives=function(p){var h=new self.URL(p);return this.msn!==void 0&&h.searchParams.set("_HLS_msn",this.msn.toString()),this.part!==void 0&&h.searchParams.set("_HLS_part",this.part.toString()),this.skip&&h.searchParams.set("_HLS_skip",this.skip),h.href},S}(),_=function(){function S(d){this.attrs=void 0,this.audioCodec=void 0,this.bitrate=void 0,this.codecSet=void 0,this.height=void 0,this.id=void 0,this.name=void 0,this.videoCodec=void 0,this.width=void 0,this.unknownCodecs=void 0,this.audioGroupIds=void 0,this.details=void 0,this.fragmentError=0,this.loadError=0,this.loaded=void 0,this.realBitrate=0,this.textGroupIds=void 0,this.url=void 0,this._urlId=0,this.url=[d.url],this.attrs=d.attrs,this.bitrate=d.bitrate,d.details&&(this.details=d.details),this.id=d.id||0,this.name=d.name,this.width=d.width||0,this.height=d.height||0,this.audioCodec=d.audioCodec,this.videoCodec=d.videoCodec,this.unknownCodecs=d.unknownCodecs,this.codecSet=[d.videoCodec,d.audioCodec].filter(function(E){return E}).join(",").replace(/\.[^.,]+/g,"")}return L(S,[{key:"maxBitrate",get:function(){return Math.max(this.realBitrate,this.bitrate)}},{key:"uri",get:function(){return this.url[this._urlId]||""}},{key:"urlId",get:function(){return this._urlId},set:function(E){var p=E%this.url.length;this._urlId!==p&&(this.details=void 0,this._urlId=p)}}]),S}()},"./src/types/loader.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{PlaylistContextType:()=>C,PlaylistLevelType:()=>L});var C;(function(M){M.MANIFEST="manifest",M.LEVEL="level",M.AUDIO_TRACK="audioTrack",M.SUBTITLE_TRACK="subtitleTrack"})(C||(C={}));var L;(function(M){M.MAIN="main",M.AUDIO="audio",M.SUBTITLE="subtitle"})(L||(L={}))},"./src/types/transmuxer.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{ChunkMetadata:()=>C});var C=function(P,B,A,D,x,_){D===void 0&&(D=0),x===void 0&&(x=-1),_===void 0&&(_=!1),this.level=void 0,this.sn=void 0,this.part=void 0,this.id=void 0,this.size=void 0,this.partial=void 0,this.transmuxing=L(),this.buffering={audio:L(),video:L(),audiovideo:L()},this.level=P,this.sn=B,this.id=A,this.size=D,this.part=x,this.partial=_};function L(){return{start:0,executeStart:0,executeEnd:0,end:0}}},"./src/utils/attr-list.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{AttrList:()=>M});var C=/^(\d+)x(\d+)$/,L=/\s*(.+?)\s*=((?:\".*?\")|.*?)(?:,|$)/g,M=function(){function P(A){typeof A=="string"&&(A=P.parseAttrList(A));for(var D in A)A.hasOwnProperty(D)&&(this[D]=A[D])}var B=P.prototype;return B.decimalInteger=function(D){var x=parseInt(this[D],10);return x>Number.MAX_SAFE_INTEGER?1/0:x},B.hexadecimalInteger=function(D){if(this[D]){var x=(this[D]||"0x").slice(2);x=(x.length&1?"0":"")+x;for(var _=new Uint8Array(x.length/2),S=0;S<x.length/2;S++)_[S]=parseInt(x.slice(S*2,S*2+2),16);return _}else return null},B.hexadecimalIntegerAsNumber=function(D){var x=parseInt(this[D],16);return x>Number.MAX_SAFE_INTEGER?1/0:x},B.decimalFloatingPoint=function(D){return parseFloat(this[D])},B.optionalFloat=function(D,x){var _=this[D];return _?parseFloat(_):x},B.enumeratedString=function(D){return this[D]},B.bool=function(D){return this[D]==="YES"},B.decimalResolution=function(D){var x=C.exec(this[D]);if(x!==null)return{width:parseInt(x[1],10),height:parseInt(x[2],10)}},P.parseAttrList=function(D){var x,_={},S='"';for(L.lastIndex=0;(x=L.exec(D))!==null;){var d=x[2];d.indexOf(S)===0&&d.lastIndexOf(S)===d.length-1&&(d=d.slice(1,-1)),_[x[1]]=d}return _},P}()},"./src/utils/binary-search.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>L});var C={search:function(P,B){for(var A=0,D=P.length-1,x=null,_=null;A<=D;){x=(A+D)/2|0,_=P[x];var S=B(_);if(S>0)A=x+1;else if(S<0)D=x-1;else return _}return null}};let L=C},"./src/utils/buffer-helper.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{BufferHelper:()=>M});var C=T("./src/utils/logger.ts"),L={length:0,start:function(){return 0},end:function(){return 0}},M=function(){function P(){}return P.isBuffered=function(A,D){try{if(A){for(var x=P.getBuffered(A),_=0;_<x.length;_++)if(D>=x.start(_)&&D<=x.end(_))return!0}}catch{}return!1},P.bufferInfo=function(A,D,x){try{if(A){var _=P.getBuffered(A),S=[],d;for(d=0;d<_.length;d++)S.push({start:_.start(d),end:_.end(d)});return this.bufferedInfo(S,D,x)}}catch{}return{len:0,start:D,end:D,nextStart:void 0}},P.bufferedInfo=function(A,D,x){D=Math.max(0,D),A.sort(function(i,u){var g=i.start-u.start;return g||u.end-i.end});var _=[];if(x)for(var S=0;S<A.length;S++){var d=_.length;if(d){var E=_[d-1].end;A[S].start-E<x?A[S].end>E&&(_[d-1].end=A[S].end):_.push(A[S])}else _.push(A[S])}else _=A;for(var p=0,h,a=D,o=D,n=0;n<_.length;n++){var v=_[n].start,l=_[n].end;if(D+x>=v&&D<l)a=v,o=l,p=o-D;else if(D+x<v){h=v;break}}return{len:p,start:a||0,end:o||0,nextStart:h}},P.getBuffered=function(A){try{return A.buffered}catch(D){return C.logger.log("failed to get media.buffered",D),L}},P}()},"./src/utils/cea-608-parser.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{CaptionScreen:()=>n,Row:()=>o,default:()=>c});var C=T("./src/utils/logger.ts"),L={42:225,92:233,94:237,95:243,96:250,123:231,124:247,125:209,126:241,127:9608,128:174,129:176,130:189,131:191,132:8482,133:162,134:163,135:9834,136:224,137:32,138:232,139:226,140:234,141:238,142:244,143:251,144:193,145:201,146:211,147:218,148:220,149:252,150:8216,151:161,152:42,153:8217,154:9473,155:169,156:8480,157:8226,158:8220,159:8221,160:192,161:194,162:199,163:200,164:202,165:203,166:235,167:206,168:207,169:239,170:212,171:217,172:249,173:219,174:171,175:187,176:195,177:227,178:205,179:204,180:236,181:210,182:242,183:213,184:245,185:123,186:125,187:92,188:94,189:95,190:124,191:8764,192:196,193:228,194:214,195:246,196:223,197:165,198:164,199:9475,200:197,201:229,202:216,203:248,204:9487,205:9491,206:9495,207:9499},M=function(e){var r=e;return L.hasOwnProperty(e)&&(r=L[e]),String.fromCharCode(r)},P=15,B=100,A={17:1,18:3,21:5,22:7,23:9,16:11,19:12,20:14},D={17:2,18:4,21:6,22:8,23:10,19:13,20:15},x={25:1,26:3,29:5,30:7,31:9,24:11,27:12,28:14},_={25:2,26:4,29:6,30:8,31:10,27:13,28:15},S=["white","green","blue","cyan","red","yellow","magenta","black","transparent"],d;(function(m){m[m.ERROR=0]="ERROR",m[m.TEXT=1]="TEXT",m[m.WARNING=2]="WARNING",m[m.INFO=2]="INFO",m[m.DEBUG=3]="DEBUG",m[m.DATA=3]="DATA"})(d||(d={}));var E=function(){function m(){this.time=null,this.verboseLevel=d.ERROR}var e=m.prototype;return e.log=function(t,s){if(this.verboseLevel>=t){var y=typeof s=="function"?s():s;C.logger.log(this.time+" ["+t+"] "+y)}},m}(),p=function(e){for(var r=[],t=0;t<e.length;t++)r.push(e[t].toString(16));return r},h=function(){function m(r,t,s,y,f){this.foreground=void 0,this.underline=void 0,this.italics=void 0,this.background=void 0,this.flash=void 0,this.foreground=r||"white",this.underline=t||!1,this.italics=s||!1,this.background=y||"black",this.flash=f||!1}var e=m.prototype;return e.reset=function(){this.foreground="white",this.underline=!1,this.italics=!1,this.background="black",this.flash=!1},e.setStyles=function(t){for(var s=["foreground","underline","italics","background","flash"],y=0;y<s.length;y++){var f=s[y];t.hasOwnProperty(f)&&(this[f]=t[f])}},e.isDefault=function(){return this.foreground==="white"&&!this.underline&&!this.italics&&this.background==="black"&&!this.flash},e.equals=function(t){return this.foreground===t.foreground&&this.underline===t.underline&&this.italics===t.italics&&this.background===t.background&&this.flash===t.flash},e.copy=function(t){this.foreground=t.foreground,this.underline=t.underline,this.italics=t.italics,this.background=t.background,this.flash=t.flash},e.toString=function(){return"color="+this.foreground+", underline="+this.underline+", italics="+this.italics+", background="+this.background+", flash="+this.flash},m}(),a=function(){function m(r,t,s,y,f,b){this.uchar=void 0,this.penState=void 0,this.uchar=r||" ",this.penState=new h(t,s,y,f,b)}var e=m.prototype;return e.reset=function(){this.uchar=" ",this.penState.reset()},e.setChar=function(t,s){this.uchar=t,this.penState.copy(s)},e.setPenState=function(t){this.penState.copy(t)},e.equals=function(t){return this.uchar===t.uchar&&this.penState.equals(t.penState)},e.copy=function(t){this.uchar=t.uchar,this.penState.copy(t.penState)},e.isEmpty=function(){return this.uchar===" "&&this.penState.isDefault()},m}(),o=function(){function m(r){this.chars=void 0,this.pos=void 0,this.currPenState=void 0,this.cueStartTime=void 0,this.logger=void 0,this.chars=[];for(var t=0;t<B;t++)this.chars.push(new a);this.logger=r,this.pos=0,this.currPenState=new h}var e=m.prototype;return e.equals=function(t){for(var s=!0,y=0;y<B;y++)if(!this.chars[y].equals(t.chars[y])){s=!1;break}return s},e.copy=function(t){for(var s=0;s<B;s++)this.chars[s].copy(t.chars[s])},e.isEmpty=function(){for(var t=!0,s=0;s<B;s++)if(!this.chars[s].isEmpty()){t=!1;break}return t},e.setCursor=function(t){this.pos!==t&&(this.pos=t),this.pos<0?(this.logger.log(d.DEBUG,"Negative cursor position "+this.pos),this.pos=0):this.pos>B&&(this.logger.log(d.DEBUG,"Too large cursor position "+this.pos),this.pos=B)},e.moveCursor=function(t){var s=this.pos+t;if(t>1)for(var y=this.pos+1;y<s+1;y++)this.chars[y].setPenState(this.currPenState);this.setCursor(s)},e.backSpace=function(){this.moveCursor(-1),this.chars[this.pos].setChar(" ",this.currPenState)},e.insertChar=function(t){var s=this;t>=144&&this.backSpace();var y=M(t);if(this.pos>=B){this.logger.log(d.ERROR,function(){return"Cannot insert "+t.toString(16)+" ("+y+") at position "+s.pos+". Skipping it!"});return}this.chars[this.pos].setChar(y,this.currPenState),this.moveCursor(1)},e.clearFromPos=function(t){var s;for(s=t;s<B;s++)this.chars[s].reset()},e.clear=function(){this.clearFromPos(0),this.pos=0,this.currPenState.reset()},e.clearToEndOfRow=function(){this.clearFromPos(this.pos)},e.getTextString=function(){for(var t=[],s=!0,y=0;y<B;y++){var f=this.chars[y].uchar;f!==" "&&(s=!1),t.push(f)}return s?"":t.join("")},e.setPenStyles=function(t){this.currPenState.setStyles(t);var s=this.chars[this.pos];s.setPenState(this.currPenState)},m}(),n=function(){function m(r){this.rows=void 0,this.currRow=void 0,this.nrRollUpRows=void 0,this.lastOutputScreen=void 0,this.logger=void 0,this.rows=[];for(var t=0;t<P;t++)this.rows.push(new o(r));this.logger=r,this.currRow=P-1,this.nrRollUpRows=null,this.lastOutputScreen=null,this.reset()}var e=m.prototype;return e.reset=function(){for(var t=0;t<P;t++)this.rows[t].clear();this.currRow=P-1},e.equals=function(t){for(var s=!0,y=0;y<P;y++)if(!this.rows[y].equals(t.rows[y])){s=!1;break}return s},e.copy=function(t){for(var s=0;s<P;s++)this.rows[s].copy(t.rows[s])},e.isEmpty=function(){for(var t=!0,s=0;s<P;s++)if(!this.rows[s].isEmpty()){t=!1;break}return t},e.backSpace=function(){var t=this.rows[this.currRow];t.backSpace()},e.clearToEndOfRow=function(){var t=this.rows[this.currRow];t.clearToEndOfRow()},e.insertChar=function(t){var s=this.rows[this.currRow];s.insertChar(t)},e.setPen=function(t){var s=this.rows[this.currRow];s.setPenStyles(t)},e.moveCursor=function(t){var s=this.rows[this.currRow];s.moveCursor(t)},e.setCursor=function(t){this.logger.log(d.INFO,"setCursor: "+t);var s=this.rows[this.currRow];s.setCursor(t)},e.setPAC=function(t){this.logger.log(d.INFO,function(){return"pacData = "+JSON.stringify(t)});var s=t.row-1;if(this.nrRollUpRows&&s<this.nrRollUpRows-1&&(s=this.nrRollUpRows-1),this.nrRollUpRows&&this.currRow!==s){for(var y=0;y<P;y++)this.rows[y].clear();var f=this.currRow+1-this.nrRollUpRows,b=this.lastOutputScreen;if(b){var R=b.rows[f].cueStartTime,I=this.logger.time;if(R&&I!==null&&R<I)for(var k=0;k<this.nrRollUpRows;k++)this.rows[s-this.nrRollUpRows+k+1].copy(b.rows[f+k])}}this.currRow=s;var F=this.rows[this.currRow];if(t.indent!==null){var K=t.indent,H=Math.max(K-1,0);F.setCursor(t.indent),t.color=F.chars[H].penState.foreground}var j={foreground:t.color,underline:t.underline,italics:t.italics,background:"black",flash:!1};this.setPen(j)},e.setBkgData=function(t){this.logger.log(d.INFO,function(){return"bkgData = "+JSON.stringify(t)}),this.backSpace(),this.setPen(t),this.insertChar(32)},e.setRollUpRows=function(t){this.nrRollUpRows=t},e.rollUp=function(){var t=this;if(this.nrRollUpRows===null){this.logger.log(d.DEBUG,"roll_up but nrRollUpRows not set yet");return}this.logger.log(d.TEXT,function(){return t.getDisplayText()});var s=this.currRow+1-this.nrRollUpRows,y=this.rows.splice(s,1)[0];y.clear(),this.rows.splice(this.currRow,0,y),this.logger.log(d.INFO,"Rolling up")},e.getDisplayText=function(t){t=t||!1;for(var s=[],y="",f=-1,b=0;b<P;b++){var R=this.rows[b].getTextString();R&&(f=b+1,t?s.push("Row "+f+": '"+R+"'"):s.push(R.trim()))}return s.length>0&&(t?y="["+s.join(" | ")+"]":y=s.join(`
|
|
22
|
-
`)),y},e.getTextAndFormat=function(){return this.rows},m}(),v=function(){function m(r,t,s){this.chNr=void 0,this.outputFilter=void 0,this.mode=void 0,this.verbose=void 0,this.displayedMemory=void 0,this.nonDisplayedMemory=void 0,this.lastOutputScreen=void 0,this.currRollUpRow=void 0,this.writeScreen=void 0,this.cueStartTime=void 0,this.logger=void 0,this.chNr=r,this.outputFilter=t,this.mode=null,this.verbose=0,this.displayedMemory=new n(s),this.nonDisplayedMemory=new n(s),this.lastOutputScreen=new n(s),this.currRollUpRow=this.displayedMemory.rows[P-1],this.writeScreen=this.displayedMemory,this.mode=null,this.cueStartTime=null,this.logger=s}var e=m.prototype;return e.reset=function(){this.mode=null,this.displayedMemory.reset(),this.nonDisplayedMemory.reset(),this.lastOutputScreen.reset(),this.outputFilter.reset(),this.currRollUpRow=this.displayedMemory.rows[P-1],this.writeScreen=this.displayedMemory,this.mode=null,this.cueStartTime=null},e.getHandler=function(){return this.outputFilter},e.setHandler=function(t){this.outputFilter=t},e.setPAC=function(t){this.writeScreen.setPAC(t)},e.setBkgData=function(t){this.writeScreen.setBkgData(t)},e.setMode=function(t){t!==this.mode&&(this.mode=t,this.logger.log(d.INFO,function(){return"MODE="+t}),this.mode==="MODE_POP-ON"?this.writeScreen=this.nonDisplayedMemory:(this.writeScreen=this.displayedMemory,this.writeScreen.reset()),this.mode!=="MODE_ROLL-UP"&&(this.displayedMemory.nrRollUpRows=null,this.nonDisplayedMemory.nrRollUpRows=null),this.mode=t)},e.insertChars=function(t){for(var s=this,y=0;y<t.length;y++)this.writeScreen.insertChar(t[y]);var f=this.writeScreen===this.displayedMemory?"DISP":"NON_DISP";this.logger.log(d.INFO,function(){return f+": "+s.writeScreen.getDisplayText(!0)}),(this.mode==="MODE_PAINT-ON"||this.mode==="MODE_ROLL-UP")&&(this.logger.log(d.TEXT,function(){return"DISPLAYED: "+s.displayedMemory.getDisplayText(!0)}),this.outputDataUpdate())},e.ccRCL=function(){this.logger.log(d.INFO,"RCL - Resume Caption Loading"),this.setMode("MODE_POP-ON")},e.ccBS=function(){this.logger.log(d.INFO,"BS - BackSpace"),this.mode!=="MODE_TEXT"&&(this.writeScreen.backSpace(),this.writeScreen===this.displayedMemory&&this.outputDataUpdate())},e.ccAOF=function(){},e.ccAON=function(){},e.ccDER=function(){this.logger.log(d.INFO,"DER- Delete to End of Row"),this.writeScreen.clearToEndOfRow(),this.outputDataUpdate()},e.ccRU=function(t){this.logger.log(d.INFO,"RU("+t+") - Roll Up"),this.writeScreen=this.displayedMemory,this.setMode("MODE_ROLL-UP"),this.writeScreen.setRollUpRows(t)},e.ccFON=function(){this.logger.log(d.INFO,"FON - Flash On"),this.writeScreen.setPen({flash:!0})},e.ccRDC=function(){this.logger.log(d.INFO,"RDC - Resume Direct Captioning"),this.setMode("MODE_PAINT-ON")},e.ccTR=function(){this.logger.log(d.INFO,"TR"),this.setMode("MODE_TEXT")},e.ccRTD=function(){this.logger.log(d.INFO,"RTD"),this.setMode("MODE_TEXT")},e.ccEDM=function(){this.logger.log(d.INFO,"EDM - Erase Displayed Memory"),this.displayedMemory.reset(),this.outputDataUpdate(!0)},e.ccCR=function(){this.logger.log(d.INFO,"CR - Carriage Return"),this.writeScreen.rollUp(),this.outputDataUpdate(!0)},e.ccENM=function(){this.logger.log(d.INFO,"ENM - Erase Non-displayed Memory"),this.nonDisplayedMemory.reset()},e.ccEOC=function(){var t=this;if(this.logger.log(d.INFO,"EOC - End Of Caption"),this.mode==="MODE_POP-ON"){var s=this.displayedMemory;this.displayedMemory=this.nonDisplayedMemory,this.nonDisplayedMemory=s,this.writeScreen=this.nonDisplayedMemory,this.logger.log(d.TEXT,function(){return"DISP: "+t.displayedMemory.getDisplayText()})}this.outputDataUpdate(!0)},e.ccTO=function(t){this.logger.log(d.INFO,"TO("+t+") - Tab Offset"),this.writeScreen.moveCursor(t)},e.ccMIDROW=function(t){var s={flash:!1};if(s.underline=t%2===1,s.italics=t>=46,s.italics)s.foreground="white";else{var y=Math.floor(t/2)-16,f=["white","green","blue","cyan","red","yellow","magenta"];s.foreground=f[y]}this.logger.log(d.INFO,"MIDROW: "+JSON.stringify(s)),this.writeScreen.setPen(s)},e.outputDataUpdate=function(t){t===void 0&&(t=!1);var s=this.logger.time;s!==null&&this.outputFilter&&(this.cueStartTime===null&&!this.displayedMemory.isEmpty()?this.cueStartTime=s:this.displayedMemory.equals(this.lastOutputScreen)||(this.outputFilter.newCue(this.cueStartTime,s,this.lastOutputScreen),t&&this.outputFilter.dispatchCue&&this.outputFilter.dispatchCue(),this.cueStartTime=this.displayedMemory.isEmpty()?null:s),this.lastOutputScreen.copy(this.displayedMemory))},e.cueSplitAtTime=function(t){this.outputFilter&&(this.displayedMemory.isEmpty()||(this.outputFilter.newCue&&this.outputFilter.newCue(this.cueStartTime,t,this.displayedMemory),this.cueStartTime=t))},m}(),l=function(){function m(r,t,s){this.channels=void 0,this.currentChannel=0,this.cmdHistory=void 0,this.logger=void 0;var y=new E;this.channels=[null,new v(r,t,y),new v(r+1,s,y)],this.cmdHistory=g(),this.logger=y}var e=m.prototype;return e.getHandler=function(t){return this.channels[t].getHandler()},e.setHandler=function(t,s){this.channels[t].setHandler(s)},e.addData=function(t,s){var y,f,b,R=!1;this.logger.time=t;for(var I=0;I<s.length;I+=2)if(f=s[I]&127,b=s[I+1]&127,!(f===0&&b===0)){if(this.logger.log(d.DATA,"["+p([s[I],s[I+1]])+"] -> ("+p([f,b])+")"),y=this.parseCmd(f,b),y||(y=this.parseMidrow(f,b)),y||(y=this.parsePAC(f,b)),y||(y=this.parseBackgroundAttributes(f,b)),!y&&(R=this.parseChars(f,b),R)){var k=this.currentChannel;if(k&&k>0){var F=this.channels[k];F.insertChars(R)}else this.logger.log(d.WARNING,"No channel found yet. TEXT-MODE?")}!y&&!R&&this.logger.log(d.WARNING,"Couldn't parse cleaned data "+p([f,b])+" orig: "+p([s[I],s[I+1]]))}},e.parseCmd=function(t,s){var y=this.cmdHistory,f=(t===20||t===28||t===21||t===29)&&s>=32&&s<=47,b=(t===23||t===31)&&s>=33&&s<=35;if(!(f||b))return!1;if(u(t,s,y))return i(null,null,y),this.logger.log(d.DEBUG,"Repeated command ("+p([t,s])+") is dropped"),!0;var R=t===20||t===21||t===23?1:2,I=this.channels[R];return t===20||t===21||t===28||t===29?s===32?I.ccRCL():s===33?I.ccBS():s===34?I.ccAOF():s===35?I.ccAON():s===36?I.ccDER():s===37?I.ccRU(2):s===38?I.ccRU(3):s===39?I.ccRU(4):s===40?I.ccFON():s===41?I.ccRDC():s===42?I.ccTR():s===43?I.ccRTD():s===44?I.ccEDM():s===45?I.ccCR():s===46?I.ccENM():s===47&&I.ccEOC():I.ccTO(s-32),i(t,s,y),this.currentChannel=R,!0},e.parseMidrow=function(t,s){var y=0;if((t===17||t===25)&&s>=32&&s<=47){if(t===17?y=1:y=2,y!==this.currentChannel)return this.logger.log(d.ERROR,"Mismatch channel in midrow parsing"),!1;var f=this.channels[y];return f?(f.ccMIDROW(s),this.logger.log(d.DEBUG,"MIDROW ("+p([t,s])+")"),!0):!1}return!1},e.parsePAC=function(t,s){var y,f=this.cmdHistory,b=(t>=17&&t<=23||t>=25&&t<=31)&&s>=64&&s<=127,R=(t===16||t===24)&&s>=64&&s<=95;if(!(b||R))return!1;if(u(t,s,f))return i(null,null,f),!0;var I=t<=23?1:2;s>=64&&s<=95?y=I===1?A[t]:x[t]:y=I===1?D[t]:_[t];var k=this.channels[I];return k?(k.setPAC(this.interpretPAC(y,s)),i(t,s,f),this.currentChannel=I,!0):!1},e.interpretPAC=function(t,s){var y,f={color:null,italics:!1,indent:null,underline:!1,row:t};return s>95?y=s-96:y=s-64,f.underline=(y&1)===1,y<=13?f.color=["white","green","blue","cyan","red","yellow","magenta","white"][Math.floor(y/2)]:y<=15?(f.italics=!0,f.color="white"):f.indent=Math.floor((y-16)/2)*4,f},e.parseChars=function(t,s){var y,f=null,b=null;if(t>=25?(y=2,b=t-8):(y=1,b=t),b>=17&&b<=19){var R;b===17?R=s+80:b===18?R=s+112:R=s+144,this.logger.log(d.INFO,"Special char '"+M(R)+"' in channel "+y),f=[R]}else t>=32&&t<=127&&(f=s===0?[t]:[t,s]);if(f){var I=p(f);this.logger.log(d.DEBUG,"Char codes = "+I.join(",")),i(t,s,this.cmdHistory)}return f},e.parseBackgroundAttributes=function(t,s){var y=(t===16||t===24)&&s>=32&&s<=47,f=(t===23||t===31)&&s>=45&&s<=47;if(!(y||f))return!1;var b,R={};t===16||t===24?(b=Math.floor((s-32)/2),R.background=S[b],s%2===1&&(R.background=R.background+"_semi")):s===45?R.background="transparent":(R.foreground="black",s===47&&(R.underline=!0));var I=t<=23?1:2,k=this.channels[I];return k.setBkgData(R),i(t,s,this.cmdHistory),!0},e.reset=function(){for(var t=0;t<Object.keys(this.channels).length;t++){var s=this.channels[t];s&&s.reset()}this.cmdHistory=g()},e.cueSplitAtTime=function(t){for(var s=0;s<this.channels.length;s++){var y=this.channels[s];y&&y.cueSplitAtTime(t)}},m}();function i(m,e,r){r.a=m,r.b=e}function u(m,e,r){return r.a===m&&r.b===e}function g(){return{a:null,b:null}}let c=l},"./src/utils/codecs.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{isCodecSupportedInMp4:()=>M,isCodecType:()=>L});var C={audio:{a3ds:!0,"ac-3":!0,"ac-4":!0,alac:!0,alaw:!0,dra1:!0,"dts+":!0,"dts-":!0,dtsc:!0,dtse:!0,dtsh:!0,"ec-3":!0,enca:!0,g719:!0,g726:!0,m4ae:!0,mha1:!0,mha2:!0,mhm1:!0,mhm2:!0,mlpa:!0,mp4a:!0,"raw ":!0,Opus:!0,opus:!0,samr:!0,sawb:!0,sawp:!0,sevc:!0,sqcp:!0,ssmv:!0,twos:!0,ulaw:!0},video:{avc1:!0,avc2:!0,avc3:!0,avc4:!0,avcp:!0,av01:!0,drac:!0,dva1:!0,dvav:!0,dvh1:!0,dvhe:!0,encv:!0,hev1:!0,hvc1:!0,mjp2:!0,mp4v:!0,mvc1:!0,mvc2:!0,mvc3:!0,mvc4:!0,resv:!0,rv60:!0,s263:!0,svc1:!0,svc2:!0,"vc-1":!0,vp08:!0,vp09:!0},text:{stpp:!0,wvtt:!0}};function L(P,B){var A=C[B];return!!A&&A[P.slice(0,4)]===!0}function M(P,B){return MediaSource.isTypeSupported((B||"video")+'/mp4;codecs="'+P+'"')}},"./src/utils/cues.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>A});var C=T("./src/utils/vttparser.ts"),L=T("./src/utils/webvtt-parser.ts"),M=T("./src/utils/texttrack-utils.ts"),P=/\s/,B={newCue:function(x,_,S,d){for(var E=[],p,h,a,o,n,v=self.VTTCue||self.TextTrackCue,l=0;l<d.rows.length;l++)if(p=d.rows[l],a=!0,o=0,n="",!p.isEmpty()){for(var i=0;i<p.chars.length;i++)P.test(p.chars[i].uchar)&&a?o++:(n+=p.chars[i].uchar,a=!1);p.cueStartTime=_,_===S&&(S+=1e-4),o>=16?o--:o++;var u=(0,C.fixLineBreaks)(n.trim()),g=(0,L.generateCueId)(_,S,u);(!x||!x.cues||!x.cues.getCueById(g))&&(h=new v(_,S,u),h.id=g,h.line=l+1,h.align="left",h.position=10+Math.min(80,Math.floor(o*8/32)*10),E.push(h))}return x&&E.length&&(E.sort(function(c,m){return c.line==="auto"||m.line==="auto"?0:c.line>8&&m.line>8?m.line-c.line:c.line-m.line}),E.forEach(function(c){return(0,M.addCueToTrack)(x,c)})),E}};let A=B},"./src/utils/discontinuities.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{adjustSlidingStart:()=>x,alignMediaPlaylistByPDT:()=>E,alignPDT:()=>d,alignStream:()=>_,findDiscontinuousReferenceFrag:()=>A,findFirstFragWithCC:()=>P,shouldAlignOnDiscontinuities:()=>B});var C=T("./src/polyfills/number.ts"),L=T("./src/utils/logger.ts"),M=T("./src/controller/level-helper.ts");function P(p,h){for(var a=null,o=0,n=p.length;o<n;o++){var v=p[o];if(v&&v.cc===h){a=v;break}}return a}function B(p,h,a){return!!(h.details&&(a.endCC>a.startCC||p&&p.cc<a.startCC))}function A(p,h,a){a===void 0&&(a=0);var o=p.fragments,n=h.fragments;if(!n.length||!o.length){L.logger.log("No fragments to align");return}var v=P(o,n[0].cc);if(!v||v&&!v.startPTS){L.logger.log("No frag in previous level to align on");return}return v}function D(p,h){if(p){var a=p.start+h;p.start=p.startPTS=a,p.endPTS=a+p.duration}}function x(p,h){for(var a=h.fragments,o=0,n=a.length;o<n;o++)D(a[o],p);h.fragmentHint&&D(h.fragmentHint,p),h.alignedSliding=!0}function _(p,h,a){!h||(S(p,a,h),!a.alignedSliding&&h.details&&d(a,h.details),!a.alignedSliding&&h.details&&!a.skippedSegments&&(0,M.adjustSliding)(h.details,a))}function S(p,h,a){if(B(p,a,h)){var o=A(a.details,h);o&&(0,C.isFiniteNumber)(o.start)&&(L.logger.log("Adjusting PTS using last level due to CC increase within current level "+h.url),x(o.start,h))}}function d(p,h){if(!(!h.fragments.length||!p.hasProgramDateTime||!h.hasProgramDateTime)){var a=h.fragments[0].programDateTime,o=p.fragments[0].programDateTime,n=(o-a)/1e3+h.fragments[0].start;n&&(0,C.isFiniteNumber)(n)&&(L.logger.log("Adjusting PTS using programDateTime delta "+(o-a)+"ms, sliding:"+n.toFixed(3)+" "+p.url+" "),x(n,p))}}function E(p,h){if(!(!p.hasProgramDateTime||!h.hasProgramDateTime)){var a=p.fragments,o=h.fragments;if(!(!a.length||!o.length)){var n=Math.round(o.length/2)-1,v=o[n],l=P(a,v.cc)||a[Math.round(a.length/2)-1],i=v.programDateTime,u=l.programDateTime;if(!(i===null||u===null)){var g=(u-i)/1e3-(l.start-v.start);x(g,p)}}}}},"./src/utils/ewma-bandwidth-estimator.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>M});var C=T("./src/utils/ewma.ts"),L=function(){function P(A,D,x){this.defaultEstimate_=void 0,this.minWeight_=void 0,this.minDelayMs_=void 0,this.slow_=void 0,this.fast_=void 0,this.defaultEstimate_=x,this.minWeight_=.001,this.minDelayMs_=50,this.slow_=new C.default(A),this.fast_=new C.default(D)}var B=P.prototype;return B.update=function(D,x){var _=this.slow_,S=this.fast_;this.slow_.halfLife!==D&&(this.slow_=new C.default(D,_.getEstimate(),_.getTotalWeight())),this.fast_.halfLife!==x&&(this.fast_=new C.default(x,S.getEstimate(),S.getTotalWeight()))},B.sample=function(D,x){D=Math.max(D,this.minDelayMs_);var _=8*x,S=D/1e3,d=_/S;this.fast_.sample(S,d),this.slow_.sample(S,d)},B.canEstimate=function(){var D=this.fast_;return D&&D.getTotalWeight()>=this.minWeight_},B.getEstimate=function(){return this.canEstimate()?Math.min(this.fast_.getEstimate(),this.slow_.getEstimate()):this.defaultEstimate_},B.destroy=function(){},P}();let M=L},"./src/utils/ewma.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>L});var C=function(){function M(B,A,D){A===void 0&&(A=0),D===void 0&&(D=0),this.halfLife=void 0,this.alpha_=void 0,this.estimate_=void 0,this.totalWeight_=void 0,this.halfLife=B,this.alpha_=B?Math.exp(Math.log(.5)/B):0,this.estimate_=A,this.totalWeight_=D}var P=M.prototype;return P.sample=function(A,D){var x=Math.pow(this.alpha_,A);this.estimate_=D*(1-x)+x*this.estimate_,this.totalWeight_+=A},P.getTotalWeight=function(){return this.totalWeight_},P.getEstimate=function(){if(this.alpha_){var A=1-Math.pow(this.alpha_,this.totalWeight_);if(A)return this.estimate_/A}return this.estimate_},M}();let L=C},"./src/utils/fetch-loader.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>n,fetchSupported:()=>E});var C=T("./src/polyfills/number.ts"),L=T("./src/loader/load-stats.ts"),M=T("./src/demux/chunk-cache.ts");function P(v,l){v.prototype=Object.create(l.prototype),v.prototype.constructor=v,_(v,l)}function B(v){var l=typeof Map=="function"?new Map:void 0;return B=function(u){if(u===null||!x(u))return u;if(typeof u!="function")throw new TypeError("Super expression must either be null or a function");if(typeof l!="undefined"){if(l.has(u))return l.get(u);l.set(u,g)}function g(){return A(u,arguments,S(this).constructor)}return g.prototype=Object.create(u.prototype,{constructor:{value:g,enumerable:!1,writable:!0,configurable:!0}}),_(g,u)},B(v)}function A(v,l,i){return D()?A=Reflect.construct.bind():A=function(g,c,m){var e=[null];e.push.apply(e,c);var r=Function.bind.apply(g,e),t=new r;return m&&_(t,m.prototype),t},A.apply(null,arguments)}function D(){if(typeof Reflect=="undefined"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function x(v){return Function.toString.call(v).indexOf("[native code]")!==-1}function _(v,l){return _=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(u,g){return u.__proto__=g,u},_(v,l)}function S(v){return S=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(i){return i.__proto__||Object.getPrototypeOf(i)},S(v)}function d(){return d=Object.assign?Object.assign.bind():function(v){for(var l=1;l<arguments.length;l++){var i=arguments[l];for(var u in i)Object.prototype.hasOwnProperty.call(i,u)&&(v[u]=i[u])}return v},d.apply(this,arguments)}function E(){if(self.fetch&&self.AbortController&&self.ReadableStream&&self.Request)try{return new self.ReadableStream({}),!0}catch{}return!1}var p=function(){function v(i){this.fetchSetup=void 0,this.requestTimeout=void 0,this.request=void 0,this.response=void 0,this.controller=void 0,this.context=void 0,this.config=null,this.callbacks=null,this.stats=void 0,this.loader=null,this.fetchSetup=i.fetchSetup||a,this.controller=new self.AbortController,this.stats=new L.LoadStats}var l=v.prototype;return l.destroy=function(){this.loader=this.callbacks=null,this.abortInternal()},l.abortInternal=function(){var u=this.response;(!u||!u.ok)&&(this.stats.aborted=!0,this.controller.abort())},l.abort=function(){var u;this.abortInternal(),(u=this.callbacks)!==null&&u!==void 0&&u.onAbort&&this.callbacks.onAbort(this.stats,this.context,this.response)},l.load=function(u,g,c){var m=this,e=this.stats;if(e.loading.start)throw new Error("Loader can only be used once.");e.loading.start=self.performance.now();var r=h(u,this.controller.signal),t=c.onProgress,s=u.responseType==="arraybuffer",y=s?"byteLength":"length";this.context=u,this.config=g,this.callbacks=c,this.request=this.fetchSetup(u,r),self.clearTimeout(this.requestTimeout),this.requestTimeout=self.setTimeout(function(){m.abortInternal(),c.onTimeout(e,u,m.response)},g.timeout),self.fetch(this.request).then(function(f){if(m.response=m.loader=f,!f.ok){var b=f.status,R=f.statusText;throw new o(R||"fetch, bad network response",b,f)}return e.loading.first=Math.max(self.performance.now(),e.loading.start),e.total=parseInt(f.headers.get("Content-Length")||"0"),t&&(0,C.isFiniteNumber)(g.highWaterMark)?m.loadProgressively(f,e,u,g.highWaterMark,t):s?f.arrayBuffer():f.text()}).then(function(f){var b=m.response;self.clearTimeout(m.requestTimeout),e.loading.end=Math.max(self.performance.now(),e.loading.first);var R=f[y];R&&(e.loaded=e.total=R);var I={url:b.url,data:f};t&&!(0,C.isFiniteNumber)(g.highWaterMark)&&t(e,u,f,b),c.onSuccess(I,e,u,b)}).catch(function(f){if(self.clearTimeout(m.requestTimeout),!e.aborted){var b=f&&f.code||0,R=f?f.message:null;c.onError({code:b,text:R},u,f?f.details:null)}})},l.getCacheAge=function(){var u=null;if(this.response){var g=this.response.headers.get("age");u=g?parseFloat(g):null}return u},l.loadProgressively=function(u,g,c,m,e){m===void 0&&(m=0);var r=new M.default,t=u.body.getReader(),s=function y(){return t.read().then(function(f){if(f.done)return r.dataLength&&e(g,c,r.flush(),u),Promise.resolve(new ArrayBuffer(0));var b=f.value,R=b.length;return g.loaded+=R,R<m||r.dataLength?(r.push(b),r.dataLength>=m&&e(g,c,r.flush(),u)):e(g,c,b,u),y()}).catch(function(){return Promise.reject()})};return s()},v}();function h(v,l){var i={method:"GET",mode:"cors",credentials:"same-origin",signal:l,headers:new self.Headers(d({},v.headers))};return v.rangeEnd&&i.headers.set("Range","bytes="+v.rangeStart+"-"+String(v.rangeEnd-1)),i}function a(v,l){return new self.Request(v.url,l)}var o=function(v){P(l,v);function l(i,u,g){var c;return c=v.call(this,i)||this,c.code=void 0,c.details=void 0,c.code=u,c.details=g,c}return l}(B(Error));let n=p},"./src/utils/hex.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>L});var C={hexDump:function(P){for(var B="",A=0;A<P.length;A++){var D=P[A].toString(16);D.length<2&&(D="0"+D),B+=D}return B}};let L=C},"./src/utils/imsc1-ttml-parser.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{IMSC1_CODEC:()=>x,parseIMSC1:()=>E});var C=T("./src/utils/mp4-tools.ts"),L=T("./src/utils/vttparser.ts"),M=T("./src/utils/vttcue.ts"),P=T("./src/demux/id3.ts"),B=T("./src/utils/timescale-conversion.ts"),A=T("./src/utils/webvtt-parser.ts");function D(){return D=Object.assign?Object.assign.bind():function(c){for(var m=1;m<arguments.length;m++){var e=arguments[m];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(c[r]=e[r])}return c},D.apply(this,arguments)}var x="stpp.ttml.im1t",_=/^(\d{2,}):(\d{2}):(\d{2}):(\d{2})\.?(\d+)?$/,S=/^(\d*(?:\.\d*)?)(h|m|s|ms|f|t)$/,d={left:"start",center:"center",right:"end",start:"start",end:"end"};function E(c,m,e,r,t){var s=(0,C.findBox)(new Uint8Array(c),["mdat"]);if(s.length===0){t(new Error("Could not parse IMSC1 mdat"));return}var y=s.map(function(b){return(0,P.utf8ArrayToStr)(b)}),f=(0,B.toTimescaleFromScale)(m,1,e);try{y.forEach(function(b){return r(p(b,f))})}catch(b){t(b)}}function p(c,m){var e=new DOMParser,r=e.parseFromString(c,"text/xml"),t=r.getElementsByTagName("tt")[0];if(!t)throw new Error("Invalid ttml");var s={frameRate:30,subFrameRate:1,frameRateMultiplier:0,tickRate:0},y=Object.keys(s).reduce(function(k,F){return k[F]=t.getAttribute("ttp:"+F)||s[F],k},{}),f=t.getAttribute("xml:space")!=="preserve",b=a(h(t,"styling","style")),R=a(h(t,"layout","region")),I=h(t,"body","[begin]");return[].map.call(I,function(k){var F=o(k,f);if(!F||!k.hasAttribute("begin"))return null;var K=i(k.getAttribute("begin"),y),H=i(k.getAttribute("dur"),y),j=i(k.getAttribute("end"),y);if(K===null)throw l(k);if(j===null){if(H===null)throw l(k);j=K+H}var Y=new M.default(K-m,j-m,F);Y.id=(0,A.generateCueId)(Y.startTime,Y.endTime,Y.text);var Q=R[k.getAttribute("region")],q=b[k.getAttribute("style")],ne=n(Q,q,b),te=ne.textAlign;if(te){var ae=d[te];ae&&(Y.lineAlign=ae),Y.align=te}return D(Y,ne),Y}).filter(function(k){return k!==null})}function h(c,m,e){var r=c.getElementsByTagName(m)[0];return r?[].slice.call(r.querySelectorAll(e)):[]}function a(c){return c.reduce(function(m,e){var r=e.getAttribute("xml:id");return r&&(m[r]=e),m},{})}function o(c,m){return[].slice.call(c.childNodes).reduce(function(e,r,t){var s;return r.nodeName==="br"&&t?e+`
|
|
23
|
-
`:(s=r.childNodes)!==null&&s!==void 0&&s.length?o(r,m):m?e+r.textContent.trim().replace(/\s+/g," "):e+r.textContent},"")}function n(c,m,e){var r="http://www.w3.org/ns/ttml#styling",t=null,s=["displayAlign","textAlign","color","backgroundColor","fontSize","fontFamily"],y=c!=null&&c.hasAttribute("style")?c.getAttribute("style"):null;return y&&e.hasOwnProperty(y)&&(t=e[y]),s.reduce(function(f,b){var R=v(m,r,b)||v(c,r,b)||v(t,r,b);return R&&(f[b]=R),f},{})}function v(c,m,e){return c&&c.hasAttributeNS(m,e)?c.getAttributeNS(m,e):null}function l(c){return new Error("Could not parse ttml timestamp "+c)}function i(c,m){if(!c)return null;var e=(0,L.parseTimeStamp)(c);return e===null&&(_.test(c)?e=u(c,m):S.test(c)&&(e=g(c,m))),e}function u(c,m){var e=_.exec(c),r=(e[4]|0)+(e[5]|0)/m.subFrameRate;return(e[1]|0)*3600+(e[2]|0)*60+(e[3]|0)+r/m.frameRate}function g(c,m){var e=S.exec(c),r=Number(e[1]),t=e[2];switch(t){case"h":return r*3600;case"m":return r*60;case"ms":return r*1e3;case"f":return r/m.frameRate;case"t":return r/m.tickRate}return r}},"./src/utils/keysystem-util.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{changeEndianness:()=>M,convertDataUriToArrayBytes:()=>P,strToUtf8array:()=>B});var C=T("./src/utils/numeric-encoding-utils.ts");function L(A){var D=B(A).subarray(0,16),x=new Uint8Array(16);return x.set(D,16-D.length),x}function M(A){var D=function(_,S,d){var E=_[S];_[S]=_[d],_[d]=E};D(A,0,3),D(A,1,2),D(A,4,5),D(A,6,7)}function P(A){var D=A.split(":"),x=null;if(D[0]==="data"&&D.length===2){var _=D[1].split(";"),S=_[_.length-1].split(",");if(S.length===2){var d=S[0]==="base64",E=S[1];d?(_.splice(-1,1),x=(0,C.base64Decode)(E)):x=L(E)}}return x}function B(A){return Uint8Array.from(unescape(encodeURIComponent(A)),function(D){return D.charCodeAt(0)})}},"./src/utils/logger.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{enableLogs:()=>A,logger:()=>D});var C=function(){},L={trace:C,debug:C,log:C,warn:C,info:C,error:C},M=L;function P(x){var _=self.console[x];return _?_.bind(self.console,"["+x+"] >"):C}function B(x){for(var _=arguments.length,S=new Array(_>1?_-1:0),d=1;d<_;d++)S[d-1]=arguments[d];S.forEach(function(E){M[E]=x[E]?x[E].bind(x):P(E)})}function A(x,_){if(self.console&&x===!0||typeof x=="object"){B(x,"debug","log","info","warn","error");try{M.log('Debug logs enabled for "'+_+'"')}catch{M=L}}else M=L}var D=M},"./src/utils/mediakeys-helper.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{KeySystemFormats:()=>L,KeySystemIds:()=>P,KeySystems:()=>C,getKeySystemsForConfig:()=>D,getSupportedMediaKeySystemConfigurations:()=>_,keySystemDomainToKeySystemFormat:()=>A,keySystemFormatToKeySystemDomain:()=>M,keySystemIdToKeySystemDomain:()=>B,requestMediaKeySystemAccess:()=>x});var C;(function(d){d.CLEARKEY="org.w3.clearkey",d.FAIRPLAY="com.apple.fps",d.PLAYREADY="com.microsoft.playready",d.WIDEVINE="com.widevine.alpha"})(C||(C={}));var L;(function(d){d.CLEARKEY="org.w3.clearkey",d.FAIRPLAY="com.apple.streamingkeydelivery",d.PLAYREADY="com.microsoft.playready",d.WIDEVINE="urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed"})(L||(L={}));function M(d){switch(d){case L.FAIRPLAY:return C.FAIRPLAY;case L.PLAYREADY:return C.PLAYREADY;case L.WIDEVINE:return C.WIDEVINE;case L.CLEARKEY:return C.CLEARKEY}}var P;(function(d){d.WIDEVINE="edef8ba979d64acea3c827dcd51d21ed"})(P||(P={}));function B(d){if(d===P.WIDEVINE)return C.WIDEVINE}function A(d){switch(d){case C.FAIRPLAY:return L.FAIRPLAY;case C.PLAYREADY:return L.PLAYREADY;case C.WIDEVINE:return L.WIDEVINE;case C.CLEARKEY:return L.CLEARKEY}}function D(d){var E=d.drmSystems,p=d.widevineLicenseUrl,h=E?[C.FAIRPLAY,C.WIDEVINE,C.PLAYREADY,C.CLEARKEY].filter(function(a){return!!E[a]}):[];return!h[C.WIDEVINE]&&p&&h.push(C.WIDEVINE),h}var x=function(){return typeof self!="undefined"&&self.navigator&&self.navigator.requestMediaKeySystemAccess?self.navigator.requestMediaKeySystemAccess.bind(self.navigator):null}();function _(d,E,p,h){var a;switch(d){case C.FAIRPLAY:a=["cenc","sinf"];break;case C.WIDEVINE:case C.PLAYREADY:a=["cenc"];break;case C.CLEARKEY:a=["cenc","keyids"];break;default:throw new Error("Unknown key-system: "+d)}return S(a,E,p,h)}function S(d,E,p,h){var a={initDataTypes:d,persistentState:h.persistentState||"not-allowed",distinctiveIdentifier:h.distinctiveIdentifier||"not-allowed",sessionTypes:h.sessionTypes||[h.sessionType||"temporary"],audioCapabilities:E.map(function(o){return{contentType:'audio/mp4; codecs="'+o+'"',robustness:h.audioRobustness||"",encryptionScheme:h.audioEncryptionScheme||null}}),videoCapabilities:p.map(function(o){return{contentType:'video/mp4; codecs="'+o+'"',robustness:h.videoRobustness||"",encryptionScheme:h.videoEncryptionScheme||null}})};return[a]}},"./src/utils/mediasource-helper.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{getMediaSource:()=>C});function C(){return self.MediaSource||self.WebKitMediaSource}},"./src/utils/mp4-tools.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{RemuxerTrackIdConfig:()=>x,appendUint8Array:()=>m,bin2str:()=>_,computeRawDurationFromSamples:()=>u,discardEPB:()=>y,findBox:()=>h,getDuration:()=>i,getStartDTS:()=>l,mp4Box:()=>b,mp4pssh:()=>R,offsetStartDTS:()=>g,parseEmsg:()=>f,parseInitSegment:()=>o,parsePssh:()=>I,parseSEIMessageFromNALu:()=>s,parseSamples:()=>e,parseSegmentIndex:()=>a,parseSinf:()=>v,patchEncyptionData:()=>n,readSint32:()=>E,readUint16:()=>S,readUint32:()=>d,segmentValidRange:()=>c,writeUint32:()=>p});var C=T("./src/loader/fragment.ts"),L=T("./src/utils/typed-array.ts"),M=T("./src/demux/id3.ts"),P=T("./src/utils/logger.ts"),B=T("./src/utils/hex.ts"),A=Math.pow(2,32)-1,D=[].push,x={video:1,audio:2,id3:3,text:4};function _(k){return String.fromCharCode.apply(null,k)}function S(k,F){var K=k[F]<<8|k[F+1];return K<0?65536+K:K}function d(k,F){var K=E(k,F);return K<0?4294967296+K:K}function E(k,F){return k[F]<<24|k[F+1]<<16|k[F+2]<<8|k[F+3]}function p(k,F,K){k[F]=K>>24,k[F+1]=K>>16&255,k[F+2]=K>>8&255,k[F+3]=K&255}function h(k,F){var K=[];if(!F.length)return K;for(var H=k.byteLength,j=0;j<H;){var Y=d(k,j),Q=_(k.subarray(j+4,j+8)),q=Y>1?j+Y:H;if(Q===F[0])if(F.length===1)K.push(k.subarray(j+8,q));else{var ne=h(k.subarray(j+8,q),F.slice(1));ne.length&&D.apply(K,ne)}j=q}return K}function a(k){var F=[],K=k[0],H=8,j=d(k,H);H+=4;var Y=0,Q=0;K===0?H+=8:H+=16,H+=2;var q=k.length+Q,ne=S(k,H);H+=2;for(var te=0;te<ne;te++){var ae=H,ue=d(k,ae);ae+=4;var ce=ue&2147483647,le=(ue&2147483648)>>>31;if(le===1)return console.warn("SIDX has hierarchical references (not supported)"),null;var fe=d(k,ae);ae+=4,F.push({referenceSize:ce,subsegmentDuration:fe,info:{duration:fe/j,start:q,end:q+ce-1}}),q+=ce,ae+=4,H=ae}return{earliestPresentationTime:Y,timescale:j,version:K,referencesCount:ne,references:F}}function o(k){for(var F=[],K=h(k,["moov","trak"]),H=0;H<K.length;H++){var j=K[H],Y=h(j,["tkhd"])[0];if(Y){var Q=Y[0],q=Q===0?12:20,ne=d(Y,q),te=h(j,["mdia","mdhd"])[0];if(te){Q=te[0],q=Q===0?12:20;var ae=d(te,q),ue=h(j,["mdia","hdlr"])[0];if(ue){var ce=_(ue.subarray(8,12)),le={soun:C.ElementaryStreamTypes.AUDIO,vide:C.ElementaryStreamTypes.VIDEO}[ce];if(le){var fe=h(j,["mdia","minf","stbl","stsd"])[0],de=void 0;fe&&(de=_(fe.subarray(12,16))),F[ne]={timescale:ae,type:le},F[le]={timescale:ae,id:ne,codec:de}}}}}}var xe=h(k,["moov","mvex","trex"]);return xe.forEach(function(Ae){var Ie=d(Ae,4),Re=F[Ie];Re&&(Re.default={duration:d(Ae,12),flags:d(Ae,20)})}),F}function n(k,F){if(!k||!F)return k;var K=F.keyId;if(K&&F.isCommonEncryption){var H=h(k,["moov","trak"]);H.forEach(function(j){var Y=h(j,["mdia","minf","stbl","stsd"])[0],Q=Y.subarray(8),q=h(Q,["enca"]),ne=q.length>0;ne||(q=h(Q,["encv"])),q.forEach(function(te){var ae=ne?te.subarray(28):te.subarray(78),ue=h(ae,["sinf"]);ue.forEach(function(ce){var le=v(ce);if(le){var fe=le.subarray(8,24);fe.some(function(de){return de!==0})||(P.logger.log("[eme] Patching keyId in 'enc"+(ne?"a":"v")+">sinf>>tenc' box: "+B.default.hexDump(fe)+" -> "+B.default.hexDump(K)),le.set(K,8))}})})})}return k}function v(k){var F=h(k,["schm"])[0];if(F){var K=_(F.subarray(4,8));if(K==="cbcs"||K==="cenc")return h(k,["schi","tenc"])[0]}return P.logger.error("[eme] missing 'schm' box"),null}function l(k,F){return h(F,["moof","traf"]).reduce(function(K,H){var j=h(H,["tfdt"])[0],Y=j[0],Q=h(H,["tfhd"]).reduce(function(q,ne){var te=d(ne,4),ae=k[te];if(ae){var ue=d(j,4);Y===1&&(ue*=Math.pow(2,32),ue+=d(j,8));var ce=ae.timescale||9e4,le=ue/ce;if(isFinite(le)&&(q===null||le<q))return le}return q},null);return Q!==null&&isFinite(Q)&&(K===null||Q<K)?Q:K},null)||0}function i(k,F){for(var K=0,H=0,j=0,Y=h(k,["moof","traf"]),Q=0;Q<Y.length;Q++){var q=Y[Q],ne=h(q,["tfhd"])[0],te=d(ne,4),ae=F[te];if(!!ae){var ue=ae.default,ce=d(ne,0)|(ue==null?void 0:ue.flags),le=ue==null?void 0:ue.duration;ce&8&&(ce&2?le=d(ne,12):le=d(ne,8));for(var fe=ae.timescale||9e4,de=h(q,["trun"]),xe=0;xe<de.length;xe++){if(K=u(de[xe]),!K&&le){var Ae=d(de[xe],4);K=le*Ae}ae.type===C.ElementaryStreamTypes.VIDEO?H+=K/fe:ae.type===C.ElementaryStreamTypes.AUDIO&&(j+=K/fe)}}}if(H===0&&j===0){for(var Ie=0,Re=h(k,["sidx"]),Oe=0;Oe<Re.length;Oe++){var Pe=a(Re[Oe]);Pe!=null&&Pe.references&&(Ie+=Pe.references.reduce(function(Ce,Le){return Ce+Le.info.duration||0},0))}return Ie}return H||j}function u(k){var F=d(k,0),K=8;F&1&&(K+=4),F&4&&(K+=4);for(var H=0,j=d(k,4),Y=0;Y<j;Y++){if(F&256){var Q=d(k,K);H+=Q,K+=4}F&512&&(K+=4),F&1024&&(K+=4),F&2048&&(K+=4)}return H}function g(k,F,K){h(F,["moof","traf"]).forEach(function(H){h(H,["tfhd"]).forEach(function(j){var Y=d(j,4),Q=k[Y];if(!!Q){var q=Q.timescale||9e4;h(H,["tfdt"]).forEach(function(ne){var te=ne[0],ae=d(ne,4);if(te===0)ae-=K*q,ae=Math.max(ae,0),p(ne,4,ae);else{ae*=Math.pow(2,32),ae+=d(ne,8),ae-=K*q,ae=Math.max(ae,0);var ue=Math.floor(ae/(A+1)),ce=Math.floor(ae%(A+1));p(ne,4,ue),p(ne,8,ce)}})}})})}function c(k){var F={valid:null,remainder:null},K=h(k,["moof"]);if(K){if(K.length<2)return F.remainder=k,F}else return F;var H=K[K.length-1];return F.valid=(0,L.sliceUint8)(k,0,H.byteOffset-8),F.remainder=(0,L.sliceUint8)(k,H.byteOffset-8),F}function m(k,F){var K=new Uint8Array(k.length+F.length);return K.set(k),K.set(F,k.length),K}function e(k,F){var K=[],H=F.samples,j=F.timescale,Y=F.id,Q=!1,q=h(H,["moof"]);return q.map(function(ne){var te=ne.byteOffset-8,ae=h(ne,["traf"]);ae.map(function(ue){var ce=h(ue,["tfdt"]).map(function(le){var fe=le[0],de=d(le,4);return fe===1&&(de*=Math.pow(2,32),de+=d(le,8)),de/j})[0];return ce!==void 0&&(k=ce),h(ue,["tfhd"]).map(function(le){var fe=d(le,4),de=d(le,0)&16777215,xe=(de&1)!==0,Ae=(de&2)!==0,Ie=(de&8)!==0,Re=0,Oe=(de&16)!==0,Pe=0,Ce=(de&32)!==0,Le=8;fe===Y&&(xe&&(Le+=8),Ae&&(Le+=4),Ie&&(Re=d(le,Le),Le+=4),Oe&&(Pe=d(le,Le),Le+=4),Ce&&(Le+=4),F.type==="video"&&(Q=r(F.codec)),h(ue,["trun"]).map(function(ke){var Be=ke[0],we=d(ke,0)&16777215,Ye=(we&1)!==0,Xe=0,rt=(we&4)!==0,ze=(we&256)!==0,it=0,nt=(we&512)!==0,Je=0,Ne=(we&1024)!==0,Ke=(we&2048)!==0,Ze=0,ft=d(ke,4),Me=8;Ye&&(Xe=d(ke,Me),Me+=4),rt&&(Me+=4);for(var qe=Xe+te,et=0;et<ft;et++){if(ze?(it=d(ke,Me),Me+=4):it=Re,nt?(Je=d(ke,Me),Me+=4):Je=Pe,Ne&&(Me+=4),Ke&&(Be===0?Ze=d(ke,Me):Ze=E(ke,Me),Me+=4),F.type===C.ElementaryStreamTypes.VIDEO)for(var _t=0;_t<Je;){var mt=d(H,qe);if(qe+=4,t(Q,H[qe])){var pt=H.subarray(qe,qe+mt);s(pt,Q?2:1,k+Ze/j,K)}qe+=mt,_t+=mt+4}k+=it/j}}))})})}),K}function r(k){if(!k)return!1;var F=k.indexOf("."),K=F<0?k:k.substring(0,F);return K==="hvc1"||K==="hev1"||K==="dvh1"||K==="dvhe"}function t(k,F){if(k){var K=F>>1&63;return K===39||K===40}else{var H=F&31;return H===6}}function s(k,F,K,H){var j=y(k),Y=0;Y+=F;for(var Q=0,q=0,ne=!1,te=0;Y<j.length;){Q=0;do{if(Y>=j.length)break;te=j[Y++],Q+=te}while(te===255);q=0;do{if(Y>=j.length)break;te=j[Y++],q+=te}while(te===255);var ae=j.length-Y;if(!ne&&Q===4&&Y<j.length){ne=!0;var ue=j[Y++];if(ue===181){var ce=S(j,Y);if(Y+=2,ce===49){var le=d(j,Y);if(Y+=4,le===1195456820){var fe=j[Y++];if(fe===3){var de=j[Y++],xe=31&de,Ae=64&de,Ie=Ae?2+xe*3:0,Re=new Uint8Array(Ie);if(Ae){Re[0]=de;for(var Oe=1;Oe<Ie;Oe++)Re[Oe]=j[Y++]}H.push({type:fe,payloadType:Q,pts:K,bytes:Re})}}}}}else if(Q===5&&q<ae){if(ne=!0,q>16){for(var Pe=[],Ce=0;Ce<16;Ce++){var Le=j[Y++].toString(16);Pe.push(Le.length==1?"0"+Le:Le),(Ce===3||Ce===5||Ce===7||Ce===9)&&Pe.push("-")}for(var ke=q-16,Be=new Uint8Array(ke),we=0;we<ke;we++)Be[we]=j[Y++];H.push({payloadType:Q,pts:K,uuid:Pe.join(""),userData:(0,M.utf8ArrayToStr)(Be),userDataBytes:Be})}}else if(q<ae)Y+=q;else if(q>ae)break}}function y(k){for(var F=k.byteLength,K=[],H=1;H<F-2;)k[H]===0&&k[H+1]===0&&k[H+2]===3?(K.push(H+2),H+=2):H++;if(K.length===0)return k;var j=F-K.length,Y=new Uint8Array(j),Q=0;for(H=0;H<j;Q++,H++)Q===K[0]&&(Q++,K.shift()),Y[H]=k[Q];return Y}function f(k){var F=k[0],K="",H="",j=0,Y=0,Q=0,q=0,ne=0,te=0;if(F===0){for(;_(k.subarray(te,te+1))!=="\0";)K+=_(k.subarray(te,te+1)),te+=1;for(K+=_(k.subarray(te,te+1)),te+=1;_(k.subarray(te,te+1))!=="\0";)H+=_(k.subarray(te,te+1)),te+=1;H+=_(k.subarray(te,te+1)),te+=1,j=d(k,12),Y=d(k,16),q=d(k,20),ne=d(k,24),te=28}else if(F===1){te+=4,j=d(k,te),te+=4;var ae=d(k,te);te+=4;var ue=d(k,te);for(te+=4,Q=Math.pow(2,32)*ae+ue,Number.isSafeInteger(Q)||(Q=Number.MAX_SAFE_INTEGER,console.warn("Presentation time exceeds safe integer limit and wrapped to max safe integer in parsing emsg box")),q=d(k,te),te+=4,ne=d(k,te),te+=4;_(k.subarray(te,te+1))!=="\0";)K+=_(k.subarray(te,te+1)),te+=1;for(K+=_(k.subarray(te,te+1)),te+=1;_(k.subarray(te,te+1))!=="\0";)H+=_(k.subarray(te,te+1)),te+=1;H+=_(k.subarray(te,te+1)),te+=1}var ce=k.subarray(te,k.byteLength);return{schemeIdUri:K,value:H,timeScale:j,presentationTime:Q,presentationTimeDelta:Y,eventDuration:q,id:ne,payload:ce}}function b(k){for(var F=arguments.length,K=new Array(F>1?F-1:0),H=1;H<F;H++)K[H-1]=arguments[H];for(var j=K.length,Y=8,Q=j;Q--;)Y+=K[Q].byteLength;var q=new Uint8Array(Y);for(q[0]=Y>>24&255,q[1]=Y>>16&255,q[2]=Y>>8&255,q[3]=Y&255,q.set(k,4),Q=0,Y=8;Q<j;Q++)q.set(K[Q],Y),Y+=K[Q].byteLength;return q}function R(k,F,K){if(k.byteLength!==16)throw new RangeError("Invalid system id");var H,j;if(F){H=1,j=new Uint8Array(F.length*16);for(var Y=0;Y<F.length;Y++){var Q=F[Y];if(Q.byteLength!==16)throw new RangeError("Invalid key");j.set(Q,Y*16)}}else H=0,j=new Uint8Array;var q;H>0?(q=new Uint8Array(4),F.length>0&&new DataView(q.buffer).setUint32(0,F.length,!1)):q=new Uint8Array;var ne=new Uint8Array(4);return K&&K.byteLength>0&&new DataView(ne.buffer).setUint32(0,K.byteLength,!1),b([112,115,115,104],new Uint8Array([H,0,0,0]),k,q,j,ne,K||new Uint8Array)}function I(k){if(!(k instanceof ArrayBuffer)||k.byteLength<32)return null;var F={version:0,systemId:"",kids:null,data:null},K=new DataView(k),H=K.getUint32(0);if(k.byteLength!==H&&H>44)return null;var j=K.getUint32(4);if(j!==1886614376||(F.version=K.getUint32(8)>>>24,F.version>1))return null;F.systemId=B.default.hexDump(new Uint8Array(k,12,16));var Y=K.getUint32(28);if(F.version===0){if(H-32<Y)return null;F.data=new Uint8Array(k,32,Y)}else if(F.version===1){F.kids=[];for(var Q=0;Q<Y;Q++)F.kids.push(new Uint8Array(k,32+Q*16,16))}return F}},"./src/utils/numeric-encoding-utils.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{base64Decode:()=>A,base64DecodeToStr:()=>M,base64Encode:()=>P,base64ToBase64Url:()=>C,base64UrlEncode:()=>B,strToBase64Encode:()=>L});function C(D){return D.replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}function L(D){return btoa(D)}function M(D){return atob(D)}function P(D){return btoa(String.fromCharCode.apply(String,D))}function B(D){return C(P(D))}function A(D){return Uint8Array.from(atob(D),function(x){return x.charCodeAt(0)})}},"./src/utils/output-filter.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>C});var C=function(){function L(P,B){this.timelineController=void 0,this.cueRanges=[],this.trackName=void 0,this.startTime=null,this.endTime=null,this.screen=null,this.timelineController=P,this.trackName=B}var M=L.prototype;return M.dispatchCue=function(){this.startTime!==null&&(this.timelineController.addCues(this.trackName,this.startTime,this.endTime,this.screen,this.cueRanges),this.startTime=null)},M.newCue=function(B,A,D){(this.startTime===null||this.startTime>B)&&(this.startTime=B),this.endTime=A,this.screen=D,this.timelineController.createCaptionsTrack(this.trackName)},M.reset=function(){this.cueRanges=[],this.startTime=null},L}()},"./src/utils/texttrack-utils.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{addCueToTrack:()=>M,clearCurrentCues:()=>P,getCuesInRange:()=>D,removeCuesInRange:()=>B,sendAddTrackEvent:()=>L});var C=T("./src/utils/logger.ts");function L(x,_){var S;try{S=new Event("addtrack")}catch{S=document.createEvent("Event"),S.initEvent("addtrack",!1,!1)}S.track=x,_.dispatchEvent(S)}function M(x,_){var S=x.mode;if(S==="disabled"&&(x.mode="hidden"),x.cues&&!x.cues.getCueById(_.id))try{if(x.addCue(_),!x.cues.getCueById(_.id))throw new Error("addCue is failed for: "+_)}catch(E){C.logger.debug("[texttrack-utils]: "+E);var d=new self.TextTrackCue(_.startTime,_.endTime,_.text);d.id=_.id,x.addCue(d)}S==="disabled"&&(x.mode=S)}function P(x){var _=x.mode;if(_==="disabled"&&(x.mode="hidden"),x.cues)for(var S=x.cues.length;S--;)x.removeCue(x.cues[S]);_==="disabled"&&(x.mode=_)}function B(x,_,S,d){var E=x.mode;if(E==="disabled"&&(x.mode="hidden"),x.cues&&x.cues.length>0)for(var p=D(x.cues,_,S),h=0;h<p.length;h++)(!d||d(p[h]))&&x.removeCue(p[h]);E==="disabled"&&(x.mode=E)}function A(x,_){if(_<x[0].startTime)return 0;var S=x.length-1;if(_>x[S].endTime)return-1;for(var d=0,E=S;d<=E;){var p=Math.floor((E+d)/2);if(_<x[p].startTime)E=p-1;else if(_>x[p].startTime&&d<S)d=p+1;else return p}return x[d].startTime-_<_-x[E].startTime?d:E}function D(x,_,S){var d=[],E=A(x,_);if(E>-1)for(var p=E,h=x.length;p<h;p++){var a=x[p];if(a.startTime>=_&&a.endTime<=S)d.push(a);else if(a.startTime>S)return d}return d}},"./src/utils/time-ranges.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>L});var C={toString:function(P){for(var B="",A=P.length,D=0;D<A;D++)B+="["+P.start(D).toFixed(3)+","+P.end(D).toFixed(3)+"]";return B}};let L=C},"./src/utils/timescale-conversion.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{toMpegTsClockFromTimescale:()=>B,toMsFromMpegTsClock:()=>P,toTimescaleFromBase:()=>L,toTimescaleFromScale:()=>M});var C=9e4;function L(A,D,x,_){x===void 0&&(x=1),_===void 0&&(_=!1);var S=A*D*x;return _?Math.round(S):S}function M(A,D,x,_){return x===void 0&&(x=1),_===void 0&&(_=!1),L(A,D,1/x,_)}function P(A,D){return D===void 0&&(D=!1),L(A,1e3,1/C,D)}function B(A,D){return D===void 0&&(D=1),L(A,C,1/D)}},"./src/utils/typed-array.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{sliceUint8:()=>C});function C(L,M,P){return Uint8Array.prototype.slice?L.slice(M,P):new Uint8Array(Array.prototype.slice.call(L,M,P))}},"./src/utils/vttcue.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>C});let C=function(){if(typeof self!="undefined"&&self.VTTCue)return self.VTTCue;var L=["","lr","rl"],M=["start","middle","end","left","right"];function P(_,S){if(typeof S!="string"||!Array.isArray(_))return!1;var d=S.toLowerCase();return~_.indexOf(d)?d:!1}function B(_){return P(L,_)}function A(_){return P(M,_)}function D(_){for(var S=arguments.length,d=new Array(S>1?S-1:0),E=1;E<S;E++)d[E-1]=arguments[E];for(var p=1;p<arguments.length;p++){var h=arguments[p];for(var a in h)_[a]=h[a]}return _}function x(_,S,d){var E=this,p={enumerable:!0};E.hasBeenReset=!1;var h="",a=!1,o=_,n=S,v=d,l=null,i="",u=!0,g="auto",c="start",m=50,e="middle",r=50,t="middle";Object.defineProperty(E,"id",D({},p,{get:function(){return h},set:function(y){h=""+y}})),Object.defineProperty(E,"pauseOnExit",D({},p,{get:function(){return a},set:function(y){a=!!y}})),Object.defineProperty(E,"startTime",D({},p,{get:function(){return o},set:function(y){if(typeof y!="number")throw new TypeError("Start time must be set to a number.");o=y,this.hasBeenReset=!0}})),Object.defineProperty(E,"endTime",D({},p,{get:function(){return n},set:function(y){if(typeof y!="number")throw new TypeError("End time must be set to a number.");n=y,this.hasBeenReset=!0}})),Object.defineProperty(E,"text",D({},p,{get:function(){return v},set:function(y){v=""+y,this.hasBeenReset=!0}})),Object.defineProperty(E,"region",D({},p,{get:function(){return l},set:function(y){l=y,this.hasBeenReset=!0}})),Object.defineProperty(E,"vertical",D({},p,{get:function(){return i},set:function(y){var f=B(y);if(f===!1)throw new SyntaxError("An invalid or illegal string was specified.");i=f,this.hasBeenReset=!0}})),Object.defineProperty(E,"snapToLines",D({},p,{get:function(){return u},set:function(y){u=!!y,this.hasBeenReset=!0}})),Object.defineProperty(E,"line",D({},p,{get:function(){return g},set:function(y){if(typeof y!="number"&&y!=="auto")throw new SyntaxError("An invalid number or illegal string was specified.");g=y,this.hasBeenReset=!0}})),Object.defineProperty(E,"lineAlign",D({},p,{get:function(){return c},set:function(y){var f=A(y);if(!f)throw new SyntaxError("An invalid or illegal string was specified.");c=f,this.hasBeenReset=!0}})),Object.defineProperty(E,"position",D({},p,{get:function(){return m},set:function(y){if(y<0||y>100)throw new Error("Position must be between 0 and 100.");m=y,this.hasBeenReset=!0}})),Object.defineProperty(E,"positionAlign",D({},p,{get:function(){return e},set:function(y){var f=A(y);if(!f)throw new SyntaxError("An invalid or illegal string was specified.");e=f,this.hasBeenReset=!0}})),Object.defineProperty(E,"size",D({},p,{get:function(){return r},set:function(y){if(y<0||y>100)throw new Error("Size must be between 0 and 100.");r=y,this.hasBeenReset=!0}})),Object.defineProperty(E,"align",D({},p,{get:function(){return t},set:function(y){var f=A(y);if(!f)throw new SyntaxError("An invalid or illegal string was specified.");t=f,this.hasBeenReset=!0}})),E.displayState=void 0}return x.prototype.getCueAsHTML=function(){var _=self.WebVTT;return _.convertCueToDOMTree(self,this.text)},x}()},"./src/utils/vttparser.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{VTTParser:()=>S,fixLineBreaks:()=>_,parseTimeStamp:()=>M});var C=T("./src/utils/vttcue.ts"),L=function(){function d(){}var E=d.prototype;return E.decode=function(h,a){if(!h)return"";if(typeof h!="string")throw new Error("Error - expected string data.");return decodeURIComponent(encodeURIComponent(h))},d}();function M(d){function E(h,a,o,n){return(h|0)*3600+(a|0)*60+(o|0)+parseFloat(n||0)}var p=d.match(/^(?:(\d+):)?(\d{2}):(\d{2})(\.\d+)?/);return p?parseFloat(p[2])>59?E(p[2],p[3],0,p[4]):E(p[1],p[2],p[3],p[4]):null}var P=function(){function d(){this.values=Object.create(null)}var E=d.prototype;return E.set=function(h,a){!this.get(h)&&a!==""&&(this.values[h]=a)},E.get=function(h,a,o){return o?this.has(h)?this.values[h]:a[o]:this.has(h)?this.values[h]:a},E.has=function(h){return h in this.values},E.alt=function(h,a,o){for(var n=0;n<o.length;++n)if(a===o[n]){this.set(h,a);break}},E.integer=function(h,a){/^-?\d+$/.test(a)&&this.set(h,parseInt(a,10))},E.percent=function(h,a){if(/^([\d]{1,3})(\.[\d]*)?%$/.test(a)){var o=parseFloat(a);if(o>=0&&o<=100)return this.set(h,o),!0}return!1},d}();function B(d,E,p,h){var a=h?d.split(h):[d];for(var o in a)if(typeof a[o]=="string"){var n=a[o].split(p);if(n.length===2){var v=n[0],l=n[1];E(v,l)}}}var A=new C.default(0,0,""),D=A.align==="middle"?"middle":"center";function x(d,E,p){var h=d;function a(){var v=M(d);if(v===null)throw new Error("Malformed timestamp: "+h);return d=d.replace(/^[^\sa-zA-Z-]+/,""),v}function o(v,l){var i=new P;B(v,function(c,m){var e;switch(c){case"region":for(var r=p.length-1;r>=0;r--)if(p[r].id===m){i.set(c,p[r].region);break}break;case"vertical":i.alt(c,m,["rl","lr"]);break;case"line":e=m.split(","),i.integer(c,e[0]),i.percent(c,e[0])&&i.set("snapToLines",!1),i.alt(c,e[0],["auto"]),e.length===2&&i.alt("lineAlign",e[1],["start",D,"end"]);break;case"position":e=m.split(","),i.percent(c,e[0]),e.length===2&&i.alt("positionAlign",e[1],["start",D,"end","line-left","line-right","auto"]);break;case"size":i.percent(c,m);break;case"align":i.alt(c,m,["start",D,"end","left","right"]);break}},/:/,/\s/),l.region=i.get("region",null),l.vertical=i.get("vertical","");var u=i.get("line","auto");u==="auto"&&A.line===-1&&(u=-1),l.line=u,l.lineAlign=i.get("lineAlign","start"),l.snapToLines=i.get("snapToLines",!0),l.size=i.get("size",100),l.align=i.get("align",D);var g=i.get("position","auto");g==="auto"&&A.position===50&&(g=l.align==="start"||l.align==="left"?0:l.align==="end"||l.align==="right"?100:50),l.position=g}function n(){d=d.replace(/^\s+/,"")}if(n(),E.startTime=a(),n(),d.slice(0,3)!=="-->")throw new Error("Malformed time stamp (time stamps must be separated by '-->'): "+h);d=d.slice(3),n(),E.endTime=a(),n(),o(d,E)}function _(d){return d.replace(/<br(?: \/)?>/gi,`
|
|
24
|
-
`)
|
|
25
|
-
`;)++c;var m=g.slice(0,c);return g[c]==="\r"&&++c,g[c]===`
|
|
26
|
-
`&&++c,a.buffer=g.slice(c),m}function n(g){B(g,function(c,m){},/:/)}try{var v="";if(a.state==="INITIAL"){if(!/\r\n|\n/.test(a.buffer))return this;v=o();var l=v.match(/^()?WEBVTT([ \t].*)?$/);if(!l||!l[0])throw new Error("Malformed WebVTT signature.");a.state="HEADER"}for(var i=!1;a.buffer;){if(!/\r\n|\n/.test(a.buffer))return this;switch(i?i=!1:v=o(),a.state){case"HEADER":/:/.test(v)?n(v):v||(a.state="ID");continue;case"NOTE":v||(a.state="ID");continue;case"ID":if(/^NOTE($|[ \t])/.test(v)){a.state="NOTE";break}if(!v)continue;if(a.cue=new C.default(0,0,""),a.state="CUE",v.indexOf("-->")===-1){a.cue.id=v;continue}case"CUE":if(!a.cue){a.state="BADCUE";continue}try{x(v,a.cue,a.regionList)}catch{a.cue=null,a.state="BADCUE";continue}a.state="CUETEXT";continue;case"CUETEXT":{var u=v.indexOf("-->")!==-1;if(!v||u&&(i=!0)){a.oncue&&a.cue&&a.oncue(a.cue),a.cue=null,a.state="ID";continue}if(a.cue===null)continue;a.cue.text&&(a.cue.text+=`
|
|
27
|
-
`),a.cue.text+=v}continue;case"BADCUE":v||(a.state="ID")}}}catch{a.state==="CUETEXT"&&a.cue&&a.oncue&&a.oncue(a.cue),a.cue=null,a.state=a.state==="INITIAL"?"BADWEBVTT":"BADCUE"}return this},E.flush=function(){var h=this;try{if((h.cue||h.state==="HEADER")&&(h.buffer+=`
|
|
1
|
+
var Ga=Object.create;var $n=Object.defineProperty;var ja=Object.getOwnPropertyDescriptor;var Ka=Object.getOwnPropertyNames;var qa=Object.getPrototypeOf,Va=Object.prototype.hasOwnProperty;var Zn=(X,te)=>()=>(te||X((te={exports:{}}).exports,te),te.exports);var Ya=(X,te,Se,De)=>{if(te&&typeof te=="object"||typeof te=="function")for(let fe of Ka(te))!Va.call(X,fe)&&fe!==Se&&$n(X,fe,{get:()=>te[fe],enumerable:!(De=ja(te,fe))||De.enumerable});return X};var ea=(X,te,Se)=>(Se=X!=null?Ga(qa(X)):{},Ya(te||!X||!X.__esModule?$n(Se,"default",{value:X,enumerable:!0}):Se,X));var ta=Zn((Wi,wn)=>{(function(){var X,te;X=this,te=function(){return function(){var Se={80:function(re,N,B){re.exports=B(728).default},728:function(re,N,B){"use strict";B.d(N,{default:function(){return hn}});var $=B(48),R=B.n($),p=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(g){var h=16*Math.random()|0;return(g==="x"?h:3&h|8).toString(16)})},w=function(){return("000000"+(Math.random()*Math.pow(36,6)<<0).toString(36)).slice(-6)},k=function(g){return g&&g.nodeName!==void 0?(g.muxId||(g.muxId=g.id||w()),g.muxId):g},ve=function(g){var h;g&&g.nodeName!==void 0?g=k(h=g):h=document.querySelector(g);var f=h&&h.nodeName?h.nodeName.toLowerCase():"";return[h,g,f]},Z=B(640),le=B.n(Z),Te=le().methodFactory;le().methodFactory=function(g,h,f){var y=Te(g,h,f);return function(){for(var b=["[mux]"],C=0;C<arguments.length;C++)b.push(arguments[C]);y.apply(void 0,b)}},le().setLevel(le().getLevel());var H=le();function ce(){return(R().doNotTrack||R().navigator&&R().navigator.doNotTrack)==="1"}var z={now:function(){var g=R().performance,h=g&&g.timing,f=h&&h.navigationStart,y=typeof f=="number"&&typeof g.now=="function"?f+g.now():Date.now();return Math.round(y)}},ne=B(678),U=B.n(ne),be=function(g){return ke(g)[0]},ke=function(g){if(typeof g!="string"||g==="")return["localhost"];var h,f=(g.match(/^(([^:\/?#]+):)?(\/\/([^\/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/)||[])[4];return f&&(h=(f.match(/[^\.]+\.[^\.]+$/)||[])[0]),[f,h]},He={exists:function(){var g=R().performance;return(g&&g.timing)!==void 0},domContentLoadedEventEnd:function(){var g=R().performance,h=g&&g.timing;return h&&h.domContentLoadedEventEnd},navigationStart:function(){var g=R().performance,h=g&&g.timing;return h&&h.navigationStart}};function K(g,h,f){f=f===void 0?1:f,g[h]=g[h]||0,g[h]+=f}var E=["x-cdn","content-type","x-request-id"];function M(g){var h={};return(g=g||"").trim().split(/[\r\n]+/).forEach(function(f){if(f){var y=f.split(": "),b=y.shift();b&&(E.indexOf(b.toLowerCase())>=0||b.toLowerCase().indexOf("x-litix-")===0)&&(h[b]=y.join(": "))}}),h}var L=function(g){var h={};for(var f in g){var y=g[f];y["DATA-ID"].search("io.litix.data.")!==-1&&(h[y["DATA-ID"].replace("io.litix.data.","")]=y.VALUE)}return h};function oe(g,h){var f=Object.keys(g);if(Object.getOwnPropertySymbols){var y=Object.getOwnPropertySymbols(g);h&&(y=y.filter(function(b){return Object.getOwnPropertyDescriptor(g,b).enumerable})),f.push.apply(f,y)}return f}function ye(g){for(var h=1;h<arguments.length;h++){var f=arguments[h]!=null?arguments[h]:{};h%2?oe(Object(f),!0).forEach(function(y){W(g,y,f[y])}):Object.getOwnPropertyDescriptors?Object.defineProperties(g,Object.getOwnPropertyDescriptors(f)):oe(Object(f)).forEach(function(y){Object.defineProperty(g,y,Object.getOwnPropertyDescriptor(f,y))})}return g}function W(g,h,f){return h in g?Object.defineProperty(g,h,{value:f,enumerable:!0,configurable:!0,writable:!0}):g[h]=f,g}var V=function(g){if(!g)return{};var h=He.navigationStart(),f=g.loading,y=f?f.start:g.trequest,b=f?f.first:g.tfirst,C=f?f.end:g.tload;return{bytesLoaded:g.total,requestStart:Math.round(h+y),responseStart:Math.round(h+b),responseEnd:Math.round(h+C)}},we=function(g){if(g&&typeof g.getAllResponseHeaders=="function")return M(g.getAllResponseHeaders())};function Re(g,h){var f=Object.keys(g);if(Object.getOwnPropertySymbols){var y=Object.getOwnPropertySymbols(g);h&&(y=y.filter(function(b){return Object.getOwnPropertyDescriptor(g,b).enumerable})),f.push.apply(f,y)}return f}function Ce(g){for(var h=1;h<arguments.length;h++){var f=arguments[h]!=null?arguments[h]:{};h%2?Re(Object(f),!0).forEach(function(y){ge(g,y,f[y])}):Object.getOwnPropertyDescriptors?Object.defineProperties(g,Object.getOwnPropertyDescriptors(f)):Re(Object(f)).forEach(function(y){Object.defineProperty(g,y,Object.getOwnPropertyDescriptor(f,y))})}return g}function ge(g,h,f){return h in g?Object.defineProperty(g,h,{value:f,enumerable:!0,configurable:!0,writable:!0}):g[h]=f,g}var qe=function(g,h){if(!g||typeof g.getRequests!="function")return{};var f=g.getRequests({state:"executed"});if(f.length===0)return{};var y,b=f[f.length-1],C=be(b.url),A=b.url,G=b.bytesLoaded,se=new Date(b.requestStartDate).getTime(),Q=new Date(b.firstByteDate).getTime(),Pe=new Date(b.requestEndDate).getTime(),at=isNaN(b.duration)?0:b.duration,Je=typeof h.getMetricsFor=="function"?h.getMetricsFor(b.mediaType).HttpList:h.getDashMetrics().getHttpRequests(b.mediaType);return Je.length>0&&(y=M(Je[Je.length-1]._responseHeaders||"")),{requestStart:se,requestResponseStart:Q,requestResponseEnd:Pe,requestBytesLoaded:G,requestResponseHeaders:y,requestMediaDuration:at,requestHostname:C,requestUrl:A}},tt=function(g,h){var f=h.getQualityFor(g),y=h.getCurrentTrackFor(g).bitrateList;return y?{currentLevel:f,renditionWidth:y[f].width||null,renditionHeight:y[f].height||null,renditionBitrate:y[f].bandwidth}:{}},ee=function(g){var h;return(h=g.match(/.*codecs\*?="(.*)"/))===null||h===void 0?void 0:h[1]};function ue(g,h){for(var f=0;f<h.length;f++){var y=h[f];y.enumerable=y.enumerable||!1,y.configurable=!0,"value"in y&&(y.writable=!0),Object.defineProperty(g,y.key,y)}}var ie=0,Oe=function(){function g(){(function(b,C){if(!(b instanceof C))throw new TypeError("Cannot call a class as a function")})(this,g)}var h,f,y;return h=g,f=[{key:"on",value:function(b,C,A){return C._eventEmitterGuid=C._eventEmitterGuid||++ie,this._listeners=this._listeners||{},this._listeners[b]=this._listeners[b]||[],A&&(C=C.bind(A)),this._listeners[b].push(C),C}},{key:"off",value:function(b,C){var A=this._listeners&&this._listeners[b];A&&A.forEach(function(G,se){G._eventEmitterGuid===C._eventEmitterGuid&&A.splice(se,1)})}},{key:"one",value:function(b,C,A){var G=this;C._eventEmitterGuid=C._eventEmitterGuid||++ie;var se=function Q(){G.off(b,Q),C.apply(A||this,arguments)};se._eventEmitterGuid=C._eventEmitterGuid,this.on(b,se)}},{key:"emit",value:function(b,C){var A=this;if(this._listeners){C=C||{};var G=this._listeners["before*"]||[],se=this._listeners[b]||[],Q=this._listeners["after"+b]||[],Pe=function(at,Je){(at=at.slice()).forEach(function(it){it.call(A,{type:b},Je)})};Pe(G,C),Pe(se,C),Pe(Q,C)}}}],f&&ue(h.prototype,f),y&&ue(h,y),Object.defineProperty(h,"prototype",{writable:!1}),g}(),xe=Oe;function Ne(g,h){for(var f=0;f<h.length;f++){var y=h[f];y.enumerable=y.enumerable||!1,y.configurable=!0,"value"in y&&(y.writable=!0),Object.defineProperty(g,y.key,y)}}var Be=function(){function g(b){var C=this;(function(A,G){if(!(A instanceof G))throw new TypeError("Cannot call a class as a function")})(this,g),this.pm=b,this._playbackHeartbeatInterval=null,this._playheadShouldBeProgressing=!1,b.on("playing",function(){C._playheadShouldBeProgressing=!0}),b.on("play",this._startPlaybackHeartbeatInterval.bind(this)),b.on("playing",this._startPlaybackHeartbeatInterval.bind(this)),b.on("adbreakstart",this._startPlaybackHeartbeatInterval.bind(this)),b.on("adplay",this._startPlaybackHeartbeatInterval.bind(this)),b.on("adplaying",this._startPlaybackHeartbeatInterval.bind(this)),b.on("seeking",this._startPlaybackHeartbeatInterval.bind(this)),b.on("devicewake",this._startPlaybackHeartbeatInterval.bind(this)),b.on("viewstart",this._startPlaybackHeartbeatInterval.bind(this)),b.on("rebufferstart",this._startPlaybackHeartbeatInterval.bind(this)),b.on("pause",this._stopPlaybackHeartbeatInterval.bind(this)),b.on("ended",this._stopPlaybackHeartbeatInterval.bind(this)),b.on("viewend",this._stopPlaybackHeartbeatInterval.bind(this)),b.on("error",this._stopPlaybackHeartbeatInterval.bind(this)),b.on("aderror",this._stopPlaybackHeartbeatInterval.bind(this)),b.on("adpause",this._stopPlaybackHeartbeatInterval.bind(this)),b.on("adended",this._stopPlaybackHeartbeatInterval.bind(this)),b.on("adbreakend",this._stopPlaybackHeartbeatInterval.bind(this)),b.on("seeked",function(){b.data.player_is_paused?C._stopPlaybackHeartbeatInterval():C._startPlaybackHeartbeatInterval()}),b.on("timeupdate",function(){C._playbackHeartbeatInterval!==null&&b.emit("playbackheartbeat")}),b.on("devicesleep",function(A,G){C._playbackHeartbeatInterval!==null&&(R().clearInterval(C._playbackHeartbeatInterval),b.emit("playbackheartbeatend",{viewer_time:G.viewer_time}),C._playbackHeartbeatInterval=null)})}var h,f,y;return h=g,(f=[{key:"_startPlaybackHeartbeatInterval",value:function(){var b=this;this._playbackHeartbeatInterval===null&&(this.pm.emit("playbackheartbeat"),this._playbackHeartbeatInterval=R().setInterval(function(){b.pm.emit("playbackheartbeat")},this.pm.playbackHeartbeatTime))}},{key:"_stopPlaybackHeartbeatInterval",value:function(){this._playheadShouldBeProgressing=!1,this._playbackHeartbeatInterval!==null&&(R().clearInterval(this._playbackHeartbeatInterval),this.pm.emit("playbackheartbeatend"),this._playbackHeartbeatInterval=null)}}])&&Ne(h.prototype,f),y&&Ne(h,y),Object.defineProperty(h,"prototype",{writable:!1}),g}();function je(g,h){for(var f=0;f<h.length;f++){var y=h[f];y.enumerable=y.enumerable||!1,y.configurable=!0,"value"in y&&(y.writable=!0),Object.defineProperty(g,y.key,y)}}function pe(g,h,f){return h&&je(g.prototype,h),f&&je(g,f),Object.defineProperty(g,"prototype",{writable:!1}),g}var Ie=pe(function g(h){var f=this;(function(y,b){if(!(y instanceof b))throw new TypeError("Cannot call a class as a function")})(this,g),h.on("viewinit",function(){f.viewErrored=!1}),h.on("error",function(y,b){try{var C=h.errorTranslator({player_error_code:b.player_error_code,player_error_message:b.player_error_message,player_error_context:b.player_error_context});C?(h.data.player_error_code=C.player_error_code||b.player_error_code,h.data.player_error_message=C.player_error_message||b.player_error_message,h.data.player_error_context=C.player_error_context||b.player_error_context,f.viewErrored=!0):(delete h.data.player_error_code,delete h.data.player_error_message,delete h.data.player_error_context)}catch(A){h.mux.log.warn("Exception in error translator callback.",A),f.viewErrored=!0}})});function Ye(g,h){for(var f=0;f<h.length;f++){var y=h[f];y.enumerable=y.enumerable||!1,y.configurable=!0,"value"in y&&(y.writable=!0),Object.defineProperty(g,y.key,y)}}var rt=function(){function g(b){(function(C,A){if(!(C instanceof A))throw new TypeError("Cannot call a class as a function")})(this,g),this.pm=b,this._watchTimeTrackerLastCheckedTime=null,b.on("playbackheartbeat",this._updateWatchTime.bind(this)),b.on("playbackheartbeatend",this._clearWatchTimeState.bind(this))}var h,f,y;return h=g,(f=[{key:"_updateWatchTime",value:function(b,C){var A=C.viewer_time;this._watchTimeTrackerLastCheckedTime===null&&(this._watchTimeTrackerLastCheckedTime=A),K(this.pm.data,"view_watch_time",A-this._watchTimeTrackerLastCheckedTime),this._watchTimeTrackerLastCheckedTime=A}},{key:"_clearWatchTimeState",value:function(b,C){this._updateWatchTime(b,C),this._watchTimeTrackerLastCheckedTime=null}}])&&Ye(h.prototype,f),y&&Ye(h,y),Object.defineProperty(h,"prototype",{writable:!1}),g}();function yt(g,h){for(var f=0;f<h.length;f++){var y=h[f];y.enumerable=y.enumerable||!1,y.configurable=!0,"value"in y&&(y.writable=!0),Object.defineProperty(g,y.key,y)}}var ht=function(){function g(b){(function(C,A){if(!(C instanceof A))throw new TypeError("Cannot call a class as a function")})(this,g),this.pm=b,this._playbackTimeTrackerLastPlayheadPosition=-1,b.on("playbackheartbeat",this._updatePlaybackTime.bind(this)),b.on("playbackheartbeatend",this._clearPlaybackTimeState.bind(this)),b.on("seeking",this._clearPlaybackTimeState.bind(this))}var h,f,y;return h=g,(f=[{key:"_updatePlaybackTime",value:function(){var b=this.pm.data.player_playhead_time;if(this._playbackTimeTrackerLastPlayheadPosition>=0&&b>this._playbackTimeTrackerLastPlayheadPosition){var C=b-this._playbackTimeTrackerLastPlayheadPosition;C<=1e3&&K(this.pm.data,"view_content_playback_time",C)}this._playbackTimeTrackerLastPlayheadPosition=b}},{key:"_clearPlaybackTimeState",value:function(){this._updatePlaybackTime(),this._playbackTimeTrackerLastPlayheadPosition=-1}}])&&yt(h.prototype,f),y&&yt(h,y),Object.defineProperty(h,"prototype",{writable:!1}),g}();function It(g,h){for(var f=0;f<h.length;f++){var y=h[f];y.enumerable=y.enumerable||!1,y.configurable=!0,"value"in y&&(y.writable=!0),Object.defineProperty(g,y.key,y)}}var Dt=function(){function g(b){(function(A,G){if(!(A instanceof G))throw new TypeError("Cannot call a class as a function")})(this,g),this.pm=b;var C=this._updatePlayheadTime.bind(this);b.on("playbackheartbeat",C),b.on("playbackheartbeatend",C),b.on("timeupdate",C),b.on("destroy",function(){b.off("timeupdate",C)})}var h,f,y;return h=g,(f=[{key:"_updateMaxPlayheadPosition",value:function(){this.pm.data.view_max_playhead_position=this.pm.data.view_max_playhead_position===void 0?this.pm.data.player_playhead_time:Math.max(this.pm.data.view_max_playhead_position,this.pm.data.player_playhead_time)}},{key:"_updatePlayheadTime",value:function(b,C){var A=this,G=function(){A.pm.currentFragmentPDT&&A.pm.currentFragmentStart&&(A.pm.data.player_program_time=A.pm.currentFragmentPDT+A.pm.data.player_playhead_time-A.pm.currentFragmentStart)};if(C&&C.player_playhead_time)this.pm.data.player_playhead_time=C.player_playhead_time,G(),this._updateMaxPlayheadPosition();else if(this.pm.getPlayheadTime){var se=this.pm.getPlayheadTime();se!==void 0&&(this.pm.data.player_playhead_time=se,G(),this._updateMaxPlayheadPosition())}}}])&&It(h.prototype,f),y&&It(h,y),Object.defineProperty(h,"prototype",{writable:!1}),g}();function St(g,h){for(var f=0;f<h.length;f++){var y=h[f];y.enumerable=y.enumerable||!1,y.configurable=!0,"value"in y&&(y.writable=!0),Object.defineProperty(g,y.key,y)}}function kt(g,h,f){return h&&St(g.prototype,h),f&&St(g,f),Object.defineProperty(g,"prototype",{writable:!1}),g}var gt=kt(function g(h){if(function(C,A){if(!(C instanceof A))throw new TypeError("Cannot call a class as a function")}(this,g),!h.disableRebufferTracking){var f,y=function(C,A){b(A),f=void 0},b=function(C){if(f){var A=C.viewer_time-f;K(h.data,"view_rebuffer_duration",A),f=C.viewer_time}h.data.view_watch_time>=0&&h.data.view_rebuffer_count>0&&(h.data.view_rebuffer_frequency=h.data.view_rebuffer_count/h.data.view_watch_time,h.data.view_rebuffer_percentage=h.data.view_rebuffer_duration/h.data.view_watch_time)};h.on("playbackheartbeat",function(C,A){return b(A)}),h.on("rebufferstart",function(C,A){f||(K(h.data,"view_rebuffer_count",1),f=A.viewer_time,h.one("rebufferend",y))}),h.on("viewinit",function(){f=void 0,h.off("rebufferend",y)})}});function ut(g,h){for(var f=0;f<h.length;f++){var y=h[f];y.enumerable=y.enumerable||!1,y.configurable=!0,"value"in y&&(y.writable=!0),Object.defineProperty(g,y.key,y)}}var Rt=function(){function g(b){var C=this;(function(A,G){if(!(A instanceof G))throw new TypeError("Cannot call a class as a function")})(this,g),this.pm=b,b.disableRebufferTracking||b.disablePlayheadRebufferTracking||(this._lastCheckedTime=null,this._lastPlayheadTime=null,this._lastPlayheadTimeUpdatedTime=null,b.on("playbackheartbeat",this._checkIfRebuffering.bind(this)),b.on("playbackheartbeatend",this._cleanupRebufferTracker.bind(this)),b.on("seeking",function(){C._cleanupRebufferTracker(null,{viewer_time:z.now()})}))}var h,f,y;return h=g,f=[{key:"_checkIfRebuffering",value:function(b,C){if(this.pm.seekingTracker.isSeeking||this.pm.adTracker.isAdBreak||!this.pm.playbackHeartbeat._playheadShouldBeProgressing)this._cleanupRebufferTracker(b,C);else if(this._lastCheckedTime!==null)if(this._lastPlayheadTime===this.pm.data.player_playhead_time){var A=C.viewer_time-this._lastPlayheadTimeUpdatedTime;typeof this.pm.sustainedRebufferThreshold=="number"&&A>=this.pm.sustainedRebufferThreshold&&(this._rebuffering||(this._rebuffering=!0,this.pm.emit("rebufferstart",{viewer_time:this._lastPlayheadTimeUpdatedTime}))),this._lastCheckedTime=C.viewer_time}else this._cleanupRebufferTracker(b,C,!0);else this._prepareRebufferTrackerState(C.viewer_time)}},{key:"_clearRebufferTrackerState",value:function(){this._lastCheckedTime=null,this._lastPlayheadTime=null,this._lastPlayheadTimeUpdatedTime=null}},{key:"_prepareRebufferTrackerState",value:function(b){this._lastCheckedTime=b,this._lastPlayheadTime=this.pm.data.player_playhead_time,this._lastPlayheadTimeUpdatedTime=b}},{key:"_cleanupRebufferTracker",value:function(b,C){var A=arguments.length>2&&arguments[2]!==void 0&&arguments[2];if(this._rebuffering)this._rebuffering=!1,this.pm.emit("rebufferend",{viewer_time:C.viewer_time});else{if(this._lastCheckedTime===null)return;var G=this.pm.data.player_playhead_time-this._lastPlayheadTime,se=C.viewer_time-this._lastPlayheadTimeUpdatedTime;typeof this.pm.minimumRebufferDuration=="number"&&G>0&&se-G>this.pm.minimumRebufferDuration&&(this.pm.emit("rebufferstart",{viewer_time:this._lastPlayheadTimeUpdatedTime}),this.pm.emit("rebufferend",{viewer_time:this._lastPlayheadTimeUpdatedTime+se-G}))}A?this._prepareRebufferTrackerState(C.viewer_time):this._clearRebufferTrackerState()}}],f&&ut(h.prototype,f),y&&ut(h,y),Object.defineProperty(h,"prototype",{writable:!1}),g}(),Pt=Rt;function jt(g,h){for(var f=0;f<h.length;f++){var y=h[f];y.enumerable=y.enumerable||!1,y.configurable=!0,"value"in y&&(y.writable=!0),Object.defineProperty(g,y.key,y)}}var zt=function(){function g(b){var C=this;(function(A,G){if(!(A instanceof G))throw new TypeError("Cannot call a class as a function")})(this,g),this.pm=b,b.on("viewinit",function(){var A=b.data,G=A.view_id;if(!A.view_program_changed){var se=function(Q,Pe){var at=Pe.viewer_time;Q.type==="playing"&&b.data.view_time_to_first_frame===void 0?C.calculateTimeToFirstFrame(at||z.now(),G):Q.type!=="adplaying"||b.data.view_time_to_first_frame!==void 0&&!C._inPrerollPosition()||C.calculateTimeToFirstFrame(at||z.now(),G)};b.one("playing",se),b.one("adplaying",se),b.one("viewend",function(){b.off("playing",se),b.off("adplaying",se)})}})}var h,f,y;return h=g,(f=[{key:"_inPrerollPosition",value:function(){return this.pm.data.view_content_playback_time===void 0||this.pm.data.view_content_playback_time<=1e3}},{key:"calculateTimeToFirstFrame",value:function(b,C){C===this.pm.data.view_id&&(this.pm.watchTimeTracker._updateWatchTime(null,{viewer_time:b}),this.pm.data.view_time_to_first_frame=this.pm.data.view_watch_time,(this.pm.data.player_autoplay_on||this.pm.data.video_is_autoplay)&&this.NAVIGATION_START&&(this.pm.data.view_aggregate_startup_time=this.pm.data.view_start+this.pm.data.view_watch_time-this.NAVIGATION_START))}}])&&jt(h.prototype,f),y&&jt(h,y),Object.defineProperty(h,"prototype",{writable:!1}),g}();function Nt(g,h){for(var f=0;f<h.length;f++){var y=h[f];y.enumerable=y.enumerable||!1,y.configurable=!0,"value"in y&&(y.writable=!0),Object.defineProperty(g,y.key,y)}}function dr(g,h,f){return h&&Nt(g.prototype,h),f&&Nt(g,f),Object.defineProperty(g,"prototype",{writable:!1}),g}var J=dr(function g(h){var f=this;(function(y,b){if(!(y instanceof b))throw new TypeError("Cannot call a class as a function")})(this,g),h.on("viewinit",function(){f._lastPlayheadPosition=-1}),["pause","rebufferstart","seeking","error","adbreakstart","hb"].forEach(function(y){h.on(y,function(){if(f._lastPlayheadPosition>=0&&h.data.player_playhead_time>=0&&f._lastPlayerWidth>=0&&f._lastSourceWidth>0&&f._lastPlayerHeight>=0&&f._lastSourceHeight>0){var b=h.data.player_playhead_time-f._lastPlayheadPosition;if(b<0)return void(f._lastPlayheadPosition=-1);var C=Math.min(f._lastPlayerWidth/f._lastSourceWidth,f._lastPlayerHeight/f._lastSourceHeight),A=Math.max(0,C-1),G=Math.max(0,1-C);h.data.view_max_upscale_percentage=Math.max(h.data.view_max_upscale_percentage||0,A),h.data.view_max_downscale_percentage=Math.max(h.data.view_max_downscale_percentage||0,G),K(h.data,"view_total_content_playback_time",b),K(h.data,"view_total_upscaling",A*b),K(h.data,"view_total_downscaling",G*b)}f._lastPlayheadPosition=-1})}),["playing","hb"].forEach(function(y){h.on(y,function(){f._lastPlayheadPosition=h.data.player_playhead_time,f._lastPlayerWidth=h.data.player_width,f._lastPlayerHeight=h.data.player_height,f._lastSourceWidth=h.data.video_source_width,f._lastSourceHeight=h.data.video_source_height})})});function O(g,h){for(var f=0;f<h.length;f++){var y=h[f];y.enumerable=y.enumerable||!1,y.configurable=!0,"value"in y&&(y.writable=!0),Object.defineProperty(g,y.key,y)}}function T(g,h,f){return h&&O(g.prototype,h),f&&O(g,f),Object.defineProperty(g,"prototype",{writable:!1}),g}var P=T(function g(h){var f=this;(function(y,b){if(!(y instanceof b))throw new TypeError("Cannot call a class as a function")})(this,g),this.isSeeking=!1,h.on("seeking",function(y,b){U()(h.data,b),f._lastSeekingTime=z.now(),f.isSeeking===!1&&(f.isSeeking=!0,h.send("seeking"))}),h.on("seeked",function(){f.isSeeking=!1;var y=f._lastSeekingTime||z.now(),b=z.now()-y;K(h.data,"view_seek_count",1),K(h.data,"view_seek_duration",b);var C=h.data.view_max_seek_time||0;h.data.view_max_seek_time=Math.max(C,b)}),h.on("viewend",function(){f.isSeeking=!1})});function D(g,h){return function(f){if(Array.isArray(f))return f}(g)||function(f,y){var b=f==null?null:typeof Symbol!="undefined"&&f[Symbol.iterator]||f["@@iterator"];if(b!=null){var C,A,G=[],se=!0,Q=!1;try{for(b=b.call(f);!(se=(C=b.next()).done)&&(G.push(C.value),!y||G.length!==y);se=!0);}catch(Pe){Q=!0,A=Pe}finally{try{se||b.return==null||b.return()}finally{if(Q)throw A}}return G}}(g,h)||function(f,y){if(f){if(typeof f=="string")return F(f,y);var b=Object.prototype.toString.call(f).slice(8,-1);return b==="Object"&&f.constructor&&(b=f.constructor.name),b==="Map"||b==="Set"?Array.from(f):b==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(b)?F(f,y):void 0}}(g,h)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
2
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function F(g,h){(h==null||h>g.length)&&(h=g.length);for(var f=0,y=new Array(h);f<h;f++)y[f]=g[f];return y}function q(g,h){for(var f=0;f<h.length;f++){var y=h[f];y.enumerable=y.enumerable||!1,y.configurable=!0,"value"in y&&(y.writable=!0),Object.defineProperty(g,y.key,y)}}var Y=function(g,h){g.push(h),g.sort(function(f,y){return f.viewer_time-y.viewer_time})},he=["adbreakstart","adrequest","adresponse","adplay","adplaying","adpause","adended","adbreakend","aderror"],Le=function(){function g(b){var C=this;(function(G,se){if(!(G instanceof se))throw new TypeError("Cannot call a class as a function")})(this,g),this.pm=b,b.on("viewinit",function(){C.isAdBreak=!1,C._currentAdRequestNumber=0,C._currentAdResponseNumber=0,C._adRequests=[],C._adResponses=[],C._adHasPlayed=!1,C._wouldBeNewAdPlay=!0,C._prerollPlayTime=void 0}),he.forEach(function(G){return b.on(G,C._updateAdData.bind(C))});var A=function(){C.isAdBreak=!1};b.on("adbreakstart",function(){C.isAdBreak=!0}),b.on("play",A),b.on("playing",A),b.on("viewend",A),b.on("adrequest",function(G,se){se=U()({ad_request_id:"generatedAdRequestId"+C._currentAdRequestNumber++},se),Y(C._adRequests,se),K(b.data,"view_ad_request_count"),C.inPrerollPosition()&&(b.data.view_preroll_requested=!0,C._adHasPlayed||K(b.data,"view_preroll_request_count"))}),b.on("adresponse",function(G,se){se=U()({ad_request_id:"generatedAdRequestId"+C._currentAdResponseNumber++},se),Y(C._adResponses,se);var Q=C.findAdRequest(se.ad_request_id);Q&&K(b.data,"view_ad_request_time",Math.max(0,se.viewer_time-Q.viewer_time))}),b.on("adplay",function(G,se){C._adHasPlayed=!0,C._wouldBeNewAdPlay&&(C._wouldBeNewAdPlay=!1,K(b.data,"view_ad_played_count")),C.inPrerollPosition()&&!b.data.view_preroll_played&&(b.data.view_preroll_played=!0,C._adRequests.length>0&&(b.data.view_preroll_request_time=Math.max(0,se.viewer_time-C._adRequests[0].viewer_time)),b.data.view_start&&(b.data.view_startup_preroll_request_time=Math.max(0,se.viewer_time-b.data.view_start)),C._prerollPlayTime=se.viewer_time)}),b.on("adplaying",function(G,se){C.inPrerollPosition()&&b.data.view_preroll_load_time===void 0&&C._prerollPlayTime!==void 0&&(b.data.view_preroll_load_time=se.viewer_time-C._prerollPlayTime,b.data.view_startup_preroll_load_time=se.viewer_time-C._prerollPlayTime)}),b.on("adended",function(){C._wouldBeNewAdPlay=!0}),b.on("aderror",function(){C._wouldBeNewAdPlay=!0})}var h,f,y;return h=g,(f=[{key:"inPrerollPosition",value:function(){return this.pm.data.view_content_playback_time===void 0||this.pm.data.view_content_playback_time<=1e3}},{key:"findAdRequest",value:function(b){for(var C=0;C<this._adRequests.length;C++)if(this._adRequests[C].ad_request_id===b)return this._adRequests[C]}},{key:"_updateAdData",value:function(b,C){if(this.inPrerollPosition()){if(!this.pm.data.view_preroll_ad_tag_hostname&&C.ad_tag_url){var A=D(ke(C.ad_tag_url),2),G=A[0],se=A[1];this.pm.data.view_preroll_ad_tag_domain=se,this.pm.data.view_preroll_ad_tag_hostname=G}if(!this.pm.data.view_preroll_ad_asset_hostname&&C.ad_asset_url){var Q=D(ke(C.ad_asset_url),2),Pe=Q[0],at=Q[1];this.pm.data.view_preroll_ad_asset_domain=at,this.pm.data.view_preroll_ad_asset_hostname=Pe}}}}])&&q(h.prototype,f),y&&q(h,y),Object.defineProperty(h,"prototype",{writable:!1}),g}();function Ae(g,h){for(var f=0;f<h.length;f++){var y=h[f];y.enumerable=y.enumerable||!1,y.configurable=!0,"value"in y&&(y.writable=!0),Object.defineProperty(g,y.key,y)}}function Me(g,h,f){return h&&Ae(g.prototype,h),f&&Ae(g,f),Object.defineProperty(g,"prototype",{writable:!1}),g}var Ve=Me(function g(h){var f,y;(function(G,se){if(!(G instanceof se))throw new TypeError("Cannot call a class as a function")})(this,g);var b=function(){h.disableRebufferTracking||f&&(K(h.data,"view_waiting_rebuffer_duration",z.now()-f),f=!1,R().clearInterval(y))},C=!1,A=function(){C=!1,b()};h.on("waiting",function(){C&&(h.disableRebufferTracking||(K(h.data,"view_waiting_rebuffer_count",1),f=z.now(),y=R().setInterval(function(){if(f){var G=z.now();K(h.data,"view_waiting_rebuffer_duration",G-f),f=G}},250)))}),h.on("playing",function(){b(),C=!0}),h.on("pause",A),h.on("seeking",A)});function Ue(g,h){for(var f=0;f<h.length;f++){var y=h[f];y.enumerable=y.enumerable||!1,y.configurable=!0,"value"in y&&(y.writable=!0),Object.defineProperty(g,y.key,y)}}function Qe(g,h,f){return h&&Ue(g.prototype,h),f&&Ue(g,f),Object.defineProperty(g,"prototype",{writable:!1}),g}var ot=Qe(function g(h){var f=this;(function(C,A){if(!(C instanceof A))throw new TypeError("Cannot call a class as a function")})(this,g);var y=function(){f.lastWallClockTime=z.now(),h.on("before*",b)},b=function(C){var A=z.now(),G=f.lastWallClockTime;f.lastWallClockTime=A,A-G>3e4&&(h.emit("devicesleep",{viewer_time:G}),U()(h.data,{viewer_time:G}),h.send("devicesleep"),h.emit("devicewake",{viewer_time:A}),U()(h.data,{viewer_time:A}),h.send("devicewake"))};h.one("playbackheartbeat",y),h.on("playbackheartbeatend",function(){h.off("before*",b),h.one("playbackheartbeat",y)})}),bt=B(375),We=B(655),Lt=B.n(We),Qt="muxData",Ot=function(){var g;try{g=bt.parse(Lt().get(Qt)||"")}catch{g={}}return g},xt=function(g){try{Lt().set(Qt,bt.stringify(g),{expires:7300})}catch{}},Ut=function(){var g=Ot();return g.mux_viewer_id=g.mux_viewer_id||p(),g.msn=g.msn||Math.random(),xt(g),{mux_viewer_id:g.mux_viewer_id,mux_sample_number:g.msn}};function Ze(g,h){var f=h.beaconCollectionDomain,y=h.beaconDomain;if(f)return"https://"+f;var b=y||"litix.io";return(g=g||"inferred").match(/^[a-z0-9]+$/)?"https://"+g+"."+b:"https://img.litix.io/a.gif"}var rr=function(){var g;switch(Er()){case"cellular":g="cellular";break;case"ethernet":g="wired";break;case"wifi":g="wifi";break;case void 0:break;default:g="other"}return g},Er=function(){var g=R().navigator,h=g&&(g.connection||g.mozConnection||g.webkitConnection);return h&&h.type};rr.getConnectionFromAPI=Er;var Ft=rr,Vt=wr({a:"env",b:"beacon",c:"custom",d:"ad",e:"event",f:"experiment",i:"internal",m:"mux",n:"response",p:"player",q:"request",r:"retry",s:"session",t:"timestamp",u:"viewer",v:"video",w:"page",x:"view",y:"sub"}),hr=wr({ad:"ad",ag:"aggregate",ap:"api",al:"application",ar:"architecture",as:"asset",au:"autoplay",av:"average",bi:"bitrate",br:"break",bw:"browser",by:"bytes",ca:"cached",cb:"cancel",cc:"codec",cd:"code",cg:"category",ch:"changed",cn:"config",co:"count",ce:"counter",cp:"complete",cr:"creative",ct:"content",cu:"current",cx:"connection",cz:"context",dg:"downscaling",dm:"domain",dn:"cdn",do:"downscale",dr:"drm",dp:"dropped",du:"duration",dv:"device",ec:"encoding",ed:"edge",en:"end",eg:"engine",em:"embed",er:"error",es:"errorcode",et:"errortext",ee:"event",ev:"events",ex:"expires",ep:"experiments",fi:"first",fm:"family",ft:"format",fp:"fps",fq:"frequency",fr:"frame",fs:"fullscreen",hb:"holdback",he:"headers",ho:"host",hn:"hostname",ht:"height",id:"id",ii:"init",in:"instance",ip:"ip",is:"is",ke:"key",la:"language",lb:"labeled",le:"level",li:"live",ld:"loaded",lo:"load",ls:"lists",lt:"latency",ma:"max",md:"media",me:"message",mf:"manifest",mi:"mime",ml:"midroll",mm:"min",mn:"manufacturer",mo:"model",mx:"mux",ne:"newest",nm:"name",no:"number",on:"on",os:"os",pa:"paused",pb:"playback",pd:"producer",pe:"percentage",pf:"played",pg:"program",ph:"playhead",pi:"plugin",pl:"preroll",pn:"playing",po:"poster",pr:"preload",ps:"position",pt:"part",py:"property",ra:"rate",rd:"requested",re:"rebuffer",rf:"rendition",rm:"remote",ro:"ratio",rp:"response",rq:"request",rs:"requests",sa:"sample",se:"session",sk:"seek",sm:"stream",so:"source",sq:"sequence",sr:"series",st:"start",su:"startup",sv:"server",sw:"software",ta:"tag",tc:"tech",te:"text",tg:"target",th:"throughput",ti:"time",tl:"total",to:"to",tt:"title",ty:"type",ug:"upscaling",un:"universal",up:"upscale",ur:"url",us:"user",va:"variant",vd:"viewed",vi:"video",ve:"version",vw:"view",vr:"viewer",wd:"width",wa:"watch",wt:"waiting"});function wr(g){var h={};for(var f in g)g.hasOwnProperty(f)&&(h[g[f]]=f);return h}function cr(g){var h={},f={};return Object.keys(g).forEach(function(y){var b=!1;if(g.hasOwnProperty(y)&&g[y]!==void 0){var C=y.split("_"),A=C[0],G=Vt[A];G||(H.info("Data key word `"+C[0]+"` not expected in "+y),G=A+"_"),C.splice(1).forEach(function(se){se==="url"&&(b=!0),hr[se]?G+=hr[se]:Number(se)&&Math.floor(Number(se))===Number(se)?G+=se:(H.info("Data key word `"+se+"` not expected in "+y),G+="_"+se+"_")}),b?f[G]=g[y]:h[G]=g[y]}}),U()(h,f)}var Mt={maxBeaconSize:300,maxQueueLength:3600,baseTimeBetweenBeacons:1e4,maxPayloadKBSize:500},vi=["hb","requestcompleted","requestfailed","requestcanceled"],Ci="https://img.litix.io",Tr=function(g){var h=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this._beaconUrl=g||Ci,this._eventQueue=[],this._postInFlight=!1,this._failureCount=0,this._sendTimeout=!1,this._options=U()({},Mt,h)};Tr.prototype.queueEvent=function(g,h){var f=U()({},h);return(this._eventQueue.length<=this._options.maxQueueLength||g==="eventrateexceeded")&&(this._eventQueue.push(f),this._sendTimeout||this._startBeaconSending(),this._eventQueue.length<=this._options.maxQueueLength)},Tr.prototype.flushEvents=function(){var g=arguments.length>0&&arguments[0]!==void 0&&arguments[0];g&&this._eventQueue.length===1?this._eventQueue.pop():(this._eventQueue.length&&this._sendBeaconQueue(),this._startBeaconSending())},Tr.prototype.destroy=function(){var g=arguments.length>0&&arguments[0]!==void 0&&arguments[0];this.destroyed=!0,g?this._clearBeaconQueue():this.flushEvents(),R().clearTimeout(this._sendTimeout)},Tr.prototype._clearBeaconQueue=function(){var g=this._eventQueue.length>this._options.maxBeaconSize?this._eventQueue.length-this._options.maxBeaconSize:0,h=this._eventQueue.slice(g);g>0&&U()(h[h.length-1],cr({mux_view_message:"event queue truncated"}));var f=this._createPayload(h);Zr(this._beaconUrl,f,!0,function(){})},Tr.prototype._sendBeaconQueue=function(){var g=this;if(!this._postInFlight){var h=this._eventQueue.slice(0,this._options.maxBeaconSize);this._eventQueue=this._eventQueue.slice(this._options.maxBeaconSize),this._postInFlight=!0;var f=this._createPayload(h),y=z.now();Zr(this._beaconUrl,f,!1,function(b,C){C?(g._eventQueue=h.concat(g._eventQueue),g._failureCount+=1,H.info("Error sending beacon: "+C)):g._failureCount=0,g._roundTripTime=z.now()-y,g._postInFlight=!1})}},Tr.prototype._getNextBeaconTime=function(){if(!this._failureCount)return this._options.baseTimeBetweenBeacons;var g=Math.pow(2,this._failureCount-1);return(1+(g*=Math.random()))*this._options.baseTimeBetweenBeacons},Tr.prototype._startBeaconSending=function(){var g=this;R().clearTimeout(this._sendTimeout),this.destroyed||(this._sendTimeout=R().setTimeout(function(){g._eventQueue.length&&g._sendBeaconQueue(),g._startBeaconSending()},this._getNextBeaconTime()))},Tr.prototype._createPayload=function(g){var h,f,y,b=this,C={transmission_timestamp:Math.round(z.now())};this._roundTripTime&&(C.rtt_ms=Math.round(this._roundTripTime));var A=function(){h=JSON.stringify({metadata:C,events:f||g}),y=h.length/1024},G=function(){return y<=b._options.maxPayloadKBSize};return A(),G()||(H.info("Payload size is too big ("+y+" kb). Removing unnecessary events."),f=g.filter(function(se){return vi.indexOf(se.e)===-1}),A()),G()||(H.info("Payload size still too big ("+y+" kb). Cropping fields.."),f.forEach(function(se){for(var Q in se){var Pe=se[Q];typeof Pe=="string"&&Pe.length>51200&&(se[Q]=Pe.substring(0,51200))}}),A()),h};var Zr=function(g,h,f,y){if(f&&navigator&&navigator.sendBeacon&&navigator.sendBeacon(g,h))y();else if(R().fetch)R().fetch(g,{method:"POST",body:h,headers:{"Content-Type":"text/plain"},keepalive:!0}).then(function(C){return y(null,C.ok?null:"Error")}).catch(function(C){return y(null,C)});else{if(R().XMLHttpRequest){var b=new(R()).XMLHttpRequest;return b.onreadystatechange=function(){if(b.readyState===4)return y(null,b.status!==200?"error":void 0)},b.open("POST",g),b.setRequestHeader("Content-Type","text/plain"),void b.send(h)}y()}},xi=Tr;function Oi(g,h){return function(f){if(Array.isArray(f))return f}(g)||function(f,y){var b=f==null?null:typeof Symbol!="undefined"&&f[Symbol.iterator]||f["@@iterator"];if(b!=null){var C,A,G=[],se=!0,Q=!1;try{for(b=b.call(f);!(se=(C=b.next()).done)&&(G.push(C.value),!y||G.length!==y);se=!0);}catch(Pe){Q=!0,A=Pe}finally{try{se||b.return==null||b.return()}finally{if(Q)throw A}}return G}}(g,h)||function(f,y){if(f){if(typeof f=="string")return ei(f,y);var b=Object.prototype.toString.call(f).slice(8,-1);return b==="Object"&&f.constructor&&(b=f.constructor.name),b==="Map"||b==="Set"?Array.from(f):b==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(b)?ei(f,y):void 0}}(g,h)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
3
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function ei(g,h){(h==null||h>g.length)&&(h=g.length);for(var f=0,y=new Array(h);f<h;f++)y[f]=g[f];return y}function ti(g,h){var f=Object.keys(g);if(Object.getOwnPropertySymbols){var y=Object.getOwnPropertySymbols(g);h&&(y=y.filter(function(b){return Object.getOwnPropertyDescriptor(g,b).enumerable})),f.push.apply(f,y)}return f}function Mr(g){for(var h=1;h<arguments.length;h++){var f=arguments[h]!=null?arguments[h]:{};h%2?ti(Object(f),!0).forEach(function(y){Fr(g,y,f[y])}):Object.getOwnPropertyDescriptors?Object.defineProperties(g,Object.getOwnPropertyDescriptors(f)):ti(Object(f)).forEach(function(y){Object.defineProperty(g,y,Object.getOwnPropertyDescriptor(f,y))})}return g}function Yr(g){return Yr=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(h){return typeof h}:function(h){return h&&typeof Symbol=="function"&&h.constructor===Symbol&&h!==Symbol.prototype?"symbol":typeof h},Yr(g)}function Zi(g,h){if(!(g instanceof h))throw new TypeError("Cannot call a class as a function")}function Mi(g,h){for(var f=0;f<h.length;f++){var y=h[f];y.enumerable=y.enumerable||!1,y.configurable=!0,"value"in y&&(y.writable=!0),Object.defineProperty(g,y.key,y)}}function Fr(g,h,f){return h in g?Object.defineProperty(g,h,{value:f,enumerable:!0,configurable:!0,writable:!0}):g[h]=f,g}var mr=["env_key","view_id","view_sequence_number","player_sequence_number","beacon_domain","player_playhead_time","viewer_time","mux_api_version","event","video_id","player_instance_id"],Et=["adplay","adplaying","adpause","adfirstquartile","admidpoint","adthirdquartile","adended"],Fi=["viewstart","error","ended","viewend"],Nr=function(){function g(b,C){var A,G,se,Q,Pe,at,Je,it,Xe,nt,wt,Bt,Jt,ir,mt,Wt=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};Zi(this,g),Fr(this,"previousBeaconData",null),Fr(this,"lastEventTime",0),Fr(this,"rateLimited",!1),this.mux=b,this.envKey=C,this.options=Wt,this.eventQueue=new xi(Ze(this.envKey,this.options)),this.sampleRate=(A=this.options.sampleRate)!==null&&A!==void 0?A:1,this.disableCookies=(G=this.options.disableCookies)!==null&&G!==void 0&&G,this.respectDoNotTrack=(se=this.options.respectDoNotTrack)!==null&&se!==void 0&&se,this.previousBeaconData=null,this.lastEventTime=0,this.rateLimited=!1,this.pageLevelData={mux_api_version:this.mux.API_VERSION,mux_embed:this.mux.NAME,mux_embed_version:this.mux.VERSION,viewer_application_name:(Q=this.options.platform)===null||Q===void 0?void 0:Q.name,viewer_application_version:(Pe=this.options.platform)===null||Pe===void 0?void 0:Pe.version,viewer_application_engine:(at=this.options.platform)===null||at===void 0?void 0:at.layout,viewer_device_name:(Je=this.options.platform)===null||Je===void 0?void 0:Je.product,viewer_device_category:"",viewer_device_manufacturer:(it=this.options.platform)===null||it===void 0?void 0:it.manufacturer,viewer_os_family:(Xe=this.options.platform)===null||Xe===void 0||(nt=Xe.os)===null||nt===void 0?void 0:nt.family,viewer_os_architecture:(wt=this.options.platform)===null||wt===void 0||(Bt=wt.os)===null||Bt===void 0?void 0:Bt.architecture,viewer_os_version:(Jt=this.options.platform)===null||Jt===void 0||(ir=Jt.os)===null||ir===void 0?void 0:ir.version,viewer_connection_type:Ft(),page_url:R()===null||R()===void 0||(mt=R().location)===null||mt===void 0?void 0:mt.href},this.viewerData=this.disableCookies?{}:Ut()}var h,f,y;return h=g,(f=[{key:"send",value:function(b,C){var A;if(b){if(this.respectDoNotTrack&&ce())return H.info("Not sending `"+b+"` because Do Not Track is enabled");if(!C||Yr(C)!=="object")return H.error("A data object was expected in send() but was not provided");var G,se,Q=this.disableCookies?{}:(G=Ot(),se=z.now(),G.session_start&&(G.sst=G.session_start,delete G.session_start),G.session_id&&(G.sid=G.session_id,delete G.session_id),G.session_expires&&(G.sex=G.session_expires,delete G.session_expires),(!G.sex||G.sex<se)&&(G.sid=p(),G.sst=se),G.sex=se+15e5,xt(G),{session_id:G.sid,session_start:G.sst,session_expires:G.sex}),Pe=Mr(Mr(Mr(Mr(Mr({},this.pageLevelData),C),Q),this.viewerData),{},{event:b,env_key:this.envKey});Pe.user_id&&(Pe.viewer_user_id=Pe.user_id,delete Pe.user_id);var at=((A=Pe.mux_sample_number)!==null&&A!==void 0?A:0)>=this.sampleRate,Je=cr(this._deduplicateBeaconData(b,Pe));if(this.lastEventTime=this.mux.utils.now(),at)return H.info("Not sending event due to sample rate restriction",b,Pe,Je);if(this.envKey||H.info("Missing environment key (envKey) - beacons will be dropped if the video source is not a valid mux video URL",b,Pe,Je),!this.rateLimited){if(H.info("Sending event",b,Pe,Je),this.rateLimited=!this.eventQueue.queueEvent(b,Je),this.mux.WINDOW_UNLOADING&&b==="viewend")this.eventQueue.destroy(!0);else if(this.mux.WINDOW_HIDDEN&&b==="hb"?this.eventQueue.flushEvents(!0):Fi.indexOf(b)>=0&&this.eventQueue.flushEvents(),this.rateLimited)return Pe.event="eventrateexceeded",Je=cr(Pe),this.eventQueue.queueEvent(Pe.event,Je),H.error("Beaconing disabled due to rate limit.")}}}},{key:"destroy",value:function(){this.eventQueue.destroy(!1)}},{key:"_deduplicateBeaconData",value:function(b,C){var A=this,G={},se=C.view_id;if(!se||b==="viewstart"||b==="viewend"||!this.previousBeaconData||this.mux.utils.now()-this.lastEventTime>=6e5)G=Mr({},C),se&&(this.previousBeaconData=G),se&&b==="viewend"&&(this.previousBeaconData=null);else{var Q=b.indexOf("request")===0;Object.entries(C).forEach(function(Pe){var at=Oi(Pe,2),Je=at[0],it=at[1];A.previousBeaconData&&(it!==A.previousBeaconData[Je]||mr.indexOf(Je)>-1||A.objectHasChanged(Q,Je,it,A.previousBeaconData[Je])||A.eventRequiresKey(b,Je))&&(G[Je]=it,A.previousBeaconData[Je]=it)})}return G}},{key:"objectHasChanged",value:function(b,C,A,G){return!(!b||C.indexOf("request_")!==0||C!=="request_response_headers"&&Yr(A)==="object"&&Yr(G)==="object"&&Object.keys(A||{}).length===Object.keys(G||{}).length)}},{key:"eventRequiresKey",value:function(b,C){return b==="renditionchange"&&C.indexOf("video_source_")===0||!(C.indexOf("ad_")!==0||!Et.includes(b))}}])&&Mi(h.prototype,f),y&&Mi(h,y),Object.defineProperty(h,"prototype",{writable:!1}),g}();function Ir(g,h){for(var f=0;f<h.length;f++){var y=h[f];y.enumerable=y.enumerable||!1,y.configurable=!0,"value"in y&&(y.writable=!0),Object.defineProperty(g,y.key,y)}}function ri(g,h,f){return h&&Ir(g.prototype,h),f&&Ir(g,f),Object.defineProperty(g,"prototype",{writable:!1}),g}var br=ri(function g(h){(function(Q,Pe){if(!(Q instanceof Pe))throw new TypeError("Cannot call a class as a function")})(this,g);var f=0,y=0,b=0,C=0,A=0,G=0,se=0;h.on("requestcompleted",function(Q,Pe){var at,Je,it=Pe.request_start,Xe=Pe.request_response_start,nt=Pe.request_response_end,wt=Pe.request_bytes_loaded;if(C++,Xe?(at=Xe-it,Je=nt-Xe):Je=nt-it,Je>0&&wt>0){var Bt=wt/Je*8e3;A++,y+=wt,b+=Je,h.data.view_min_request_throughput=Math.min(h.data.view_min_request_throughput||1/0,Bt),h.data.view_average_request_throughput=y/b*8e3,h.data.view_request_count=C,at>0&&(f+=at,h.data.view_max_request_latency=Math.max(h.data.view_max_request_latency||0,at),h.data.view_average_request_latency=f/A)}}),h.on("requestfailed",function(Q,Pe){C++,G++,h.data.view_request_count=C,h.data.view_request_failed_count=G}),h.on("requestcanceled",function(Q,Pe){C++,se++,h.data.view_request_count=C,h.data.view_request_canceled_count=se})});function Ur(g,h){for(var f=0;f<h.length;f++){var y=h[f];y.enumerable=y.enumerable||!1,y.configurable=!0,"value"in y&&(y.writable=!0),Object.defineProperty(g,y.key,y)}}function Wr(g,h,f){return h&&Ur(g.prototype,h),f&&Ur(g,f),Object.defineProperty(g,"prototype",{writable:!1}),g}var Sr=Wr(function g(h){var f=this;(function(y,b){if(!(y instanceof b))throw new TypeError("Cannot call a class as a function")})(this,g),h.on("before*",function(y,b){var C=b.viewer_time,A=z.now(),G=f._lastEventTime;if(f._lastEventTime=A,G&&A-G>36e5){var se=Object.keys(h.data).reduce(function(Q,Pe){return Pe.indexOf("video_")===0?U()(Q,function(at,Je,it){return Je in at?Object.defineProperty(at,Je,{value:it,enumerable:!0,configurable:!0,writable:!0}):at[Je]=it,at}({},Pe,h.data[Pe])):Q},{});h.mux.log.info("Received event after at least an hour inactivity, creating a new view"),h.emit("viewinit",U()({viewer_time:C},se)),h.playbackHeartbeat._playheadShouldBeProgressing&&y.type!=="play"&&y.type!=="adbreakstart"&&(h.emit("play",{viewer_time:C}),y.type!=="playing"&&h.emit("playing",{viewer_time:C}))}})});function Pr(g){return Pr=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(h){return typeof h}:function(h){return h&&typeof Symbol=="function"&&h.constructor===Symbol&&h!==Symbol.prototype?"symbol":typeof h},Pr(g)}function Br(g,h){return function(f){if(Array.isArray(f))return f}(g)||function(f,y){var b=f==null?null:typeof Symbol!="undefined"&&f[Symbol.iterator]||f["@@iterator"];if(b!=null){var C,A,G=[],se=!0,Q=!1;try{for(b=b.call(f);!(se=(C=b.next()).done)&&(G.push(C.value),!y||G.length!==y);se=!0);}catch(Pe){Q=!0,A=Pe}finally{try{se||b.return==null||b.return()}finally{if(Q)throw A}}return G}}(g,h)||function(f,y){if(f){if(typeof f=="string")return ii(f,y);var b=Object.prototype.toString.call(f).slice(8,-1);return b==="Object"&&f.constructor&&(b=f.constructor.name),b==="Map"||b==="Set"?Array.from(f):b==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(b)?ii(f,y):void 0}}(g,h)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
4
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function ii(g,h){(h==null||h>g.length)&&(h=g.length);for(var f=0,y=new Array(h);f<h;f++)y[f]=g[f];return y}function ni(g,h){for(var f=0;f<h.length;f++){var y=h[f];y.enumerable=y.enumerable||!1,y.configurable=!0,"value"in y&&(y.writable=!0),Object.defineProperty(g,y.key,y)}}function ai(g,h){return ai=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(f,y){return f.__proto__=y,f},ai(g,h)}function pi(g){var h=function(){if(typeof Reflect=="undefined"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}();return function(){var f,y=si(g);if(h){var b=si(this).constructor;f=Reflect.construct(y,arguments,b)}else f=y.apply(this,arguments);return Ni(this,f)}}function Ni(g,h){if(h&&(Pr(h)==="object"||typeof h=="function"))return h;if(h!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Yt(g)}function Yt(g){if(g===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return g}function si(g){return si=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(h){return h.__proto__||Object.getPrototypeOf(h)},si(g)}var en=["viewstart","ended","loadstart","pause","play","playing","ratechange","waiting","adplay","adpause","adended","aderror","adplaying","adrequest","adresponse","adbreakstart","adbreakend","adfirstquartile","admidpoint","adthirdquartile","rebufferstart","rebufferend","seeked","error","hb","requestcompleted","requestfailed","requestcanceled","renditionchange"],Ui=function(g){(function(A,G){if(typeof G!="function"&&G!==null)throw new TypeError("Super expression must either be null or a function");A.prototype=Object.create(G&&G.prototype,{constructor:{value:A,writable:!0,configurable:!0}}),Object.defineProperty(A,"prototype",{writable:!1}),G&&ai(A,G)})(C,g);var h,f,y,b=pi(C);function C(A,G,se){var Q;(function(Xe,nt){if(!(Xe instanceof nt))throw new TypeError("Cannot call a class as a function")})(this,C),(Q=b.call(this)).DOM_CONTENT_LOADED_EVENT_END=He.domContentLoadedEventEnd(),Q.NAVIGATION_START=He.navigationStart(),Q.mux=A,Q.id=G,(se=U()({debug:!1,minimumRebufferDuration:250,sustainedRebufferThreshold:1e3,playbackHeartbeatTime:25,beaconDomain:"litix.io",sampleRate:1,disableCookies:!1,respectDoNotTrack:!1,disableRebufferTracking:!1,disablePlayheadRebufferTracking:!1,errorTranslator:function(Xe){return Xe}},se)).data=se.data||{},se.data.property_key&&(se.data.env_key=se.data.property_key,delete se.data.property_key),H.setLevel(se.debug?"debug":"warn"),Q.getPlayheadTime=se.getPlayheadTime,Q.getStateData=se.getStateData||function(){return{}},Q.getAdData=se.getAdData||function(){},Q.minimumRebufferDuration=se.minimumRebufferDuration,Q.sustainedRebufferThreshold=se.sustainedRebufferThreshold,Q.playbackHeartbeatTime=se.playbackHeartbeatTime,Q.disableRebufferTracking=se.disableRebufferTracking,Q.disableRebufferTracking&&Q.mux.log.warn("Disabling rebuffer tracking. This should only be used in specific circumstances as a last resort when your player is known to unreliably track rebuffering."),Q.disablePlayheadRebufferTracking=se.disablePlayheadRebufferTracking,Q.errorTranslator=se.errorTranslator,Q.playbackEventDispatcher=new Nr(A,se.data.env_key,se),Q.data={player_instance_id:p(),mux_sample_rate:se.sampleRate,beacon_domain:se.beaconCollectionDomain?se.beaconCollectionDomain:se.beaconDomain},Q.data.view_sequence_number=1,Q.data.player_sequence_number=1,Q.oldEmit=Q.emit,Q.emit=function(Xe,nt){nt=U()({viewer_time:this.mux.utils.now()},nt),this.oldEmit(Xe,nt)};var Pe=function(){this.data.view_start===void 0&&(this.data.view_start=this.mux.utils.now(),this.emit("viewstart"))}.bind(Yt(Q));Q.on("viewinit",function(Xe,nt){this._resetVideoData(),this._resetViewData(),this._resetErrorData(),this._updateStateData(),U()(this.data,nt),this._initializeViewData(),this.one("play",Pe),this.one("adbreakstart",Pe)});var at=function(Xe){this.emit("viewend"),this.send("viewend"),this.emit("viewinit",Xe)}.bind(Yt(Q));if(Q.on("videochange",function(Xe,nt){at(nt)}),Q.on("programchange",function(Xe,nt){this.data.player_is_paused&&this.mux.log.warn("The `programchange` event is intended to be used when the content changes mid playback without the video source changing, however the video is not currently playing. If the video source is changing please use the videochange event otherwise you will lose startup time information."),at(U()(nt,{view_program_changed:!0})),Pe(),this.emit("play"),this.emit("playing")}),Q.on("fragmentchange",function(Xe,nt){this.currentFragmentPDT=nt.currentFragmentPDT,this.currentFragmentStart=nt.currentFragmentStart}),Q.on("destroy",Q.destroy),typeof window!="undefined"&&typeof window.addEventListener=="function"&&typeof window.removeEventListener=="function"){var Je=function(){var Xe=Q.data.view_start!==void 0;Q.mux.WINDOW_HIDDEN=document.visibilityState==="hidden",Xe&&Q.mux.WINDOW_HIDDEN&&(Q.data.player_is_paused||Q.emit("hb"))};window.addEventListener("visibilitychange",Je,!1);var it=function(Xe){Xe.persisted||Q.destroy()};window.addEventListener("pagehide",it,!1),Q.on("destroy",function(){window.removeEventListener("visibilitychange",Je),window.removeEventListener("pagehide",it)})}return Q.on("playerready",function(Xe,nt){U()(this.data,nt)}),en.forEach(function(Xe){Q.on(Xe,function(nt,wt){Xe.indexOf("ad")!==0&&this._updateStateData(),U()(this.data,wt),this._sanitizeData()}),Q.on("after"+Xe,function(){(Xe!=="error"||this.errorTracker.viewErrored)&&this.send(Xe)})}),Q.on("viewend",function(Xe,nt){U()(Q.data,nt)}),Q.one("playerready",function(Xe){var nt=this.mux.utils.now();this.data.player_init_time&&(this.data.player_startup_time=nt-this.data.player_init_time),!this.mux.PLAYER_TRACKED&&this.NAVIGATION_START&&(this.mux.PLAYER_TRACKED=!0,(this.data.player_init_time||this.DOM_CONTENT_LOADED_EVENT_END)&&(this.data.page_load_time=Math.min(this.data.player_init_time||1/0,this.DOM_CONTENT_LOADED_EVENT_END||1/0)-this.NAVIGATION_START)),this.send("playerready"),delete this.data.player_startup_time,delete this.data.page_load_time}),Q.longResumeTracker=new Sr(Yt(Q)),Q.errorTracker=new Ie(Yt(Q)),new ot(Yt(Q)),Q.seekingTracker=new P(Yt(Q)),Q.playheadTime=new Dt(Yt(Q)),Q.playbackHeartbeat=new Be(Yt(Q)),new J(Yt(Q)),Q.watchTimeTracker=new rt(Yt(Q)),new ht(Yt(Q)),Q.adTracker=new Le(Yt(Q)),new Pt(Yt(Q)),new gt(Yt(Q)),new zt(Yt(Q)),new Ve(Yt(Q)),new br(Yt(Q)),se.hlsjs&&Q.addHLSJS(se),se.dashjs&&Q.addDashJS(se),Q.emit("viewinit",se.data),Q}return h=C,f=[{key:"destroy",value:function(){this._destroyed||(this._destroyed=!0,this.data.view_start!==void 0&&(this.emit("viewend"),this.send("viewend")),this.playbackEventDispatcher.destroy(),this.removeHLSJS(),this.removeDashJS(),window.clearTimeout(this._heartBeatTimeout))}},{key:"send",value:function(A){var G=U()({},this.data);if(G.video_source_is_live===void 0&&(G.player_source_duration===1/0||G.video_source_duration===1/0?G.video_source_is_live=!0:(G.player_source_duration>0||G.video_source_duration>0)&&(G.video_source_is_live=!1)),G.video_source_is_live||["player_program_time","player_manifest_newest_program_time","player_live_edge_program_time","player_program_time","video_holdback","video_part_holdback","video_target_duration","video_part_target_duration"].forEach(function(at){G[at]=void 0}),G.video_source_url=G.video_source_url||G.player_source_url,G.video_source_url){var se=Br(ke(G.video_source_url),2),Q=se[0],Pe=se[1];G.video_source_domain=Pe,G.video_source_hostname=Q}delete G.ad_request_id,this.playbackEventDispatcher.send(A,G),this.data.view_sequence_number++,this.data.player_sequence_number++,this._restartHeartBeat()}},{key:"_updateStateData",value:function(){U()(this.data,this.getStateData()),this.playheadTime._updatePlayheadTime(),this._sanitizeData()}},{key:"_sanitizeData",value:function(){var A=this;["player_width","player_height","video_source_width","video_source_height","player_playhead_time","video_source_bitrate"].forEach(function(G){var se=parseInt(A.data[G],10);A.data[G]=isNaN(se)?void 0:se}),["player_source_url","video_source_url"].forEach(function(G){if(A.data[G]){var se=A.data[G].toLowerCase();se.indexOf("data:")!==0&&se.indexOf("blob:")!==0||(A.data[G]="MSE style URL")}})}},{key:"_resetVideoData",value:function(A,G){var se=this;Object.keys(this.data).forEach(function(Q){Q.indexOf("video_")===0&&delete se.data[Q]})}},{key:"_resetViewData",value:function(){var A=this;Object.keys(this.data).forEach(function(G){G.indexOf("view_")===0&&delete A.data[G]}),this.data.view_sequence_number=1}},{key:"_resetErrorData",value:function(A,G){delete this.data.player_error_code,delete this.data.player_error_message}},{key:"_initializeViewData",value:function(){var A=this,G=this.data.view_id=p(),se=function(){G===A.data.view_id&&K(A.data,"player_view_count",1)};this.data.player_is_paused?this.one("play",se):se()}},{key:"_restartHeartBeat",value:function(){var A=this;window.clearTimeout(this._heartBeatTimeout),this.errorTracker.viewErrored||(this._heartBeatTimeout=window.setTimeout(function(){A.data.player_is_paused||A.emit("hb")},1e4))}},{key:"addHLSJS",value:function(A){A.hlsjs?this.hlsjs?this.mux.log.warn("An instance of HLS.js is already being monitored for this player."):(this.hlsjs=A.hlsjs,function(G,se,Q){var Pe=arguments.length>4?arguments[4]:void 0,at=G.log,Je=G.utils.secondsToMs,it=function(_t){var et,dt=parseInt(Pe.version);return dt===1&&_t.programDateTime!==null&&(et=_t.programDateTime),dt===0&&_t.pdt!==null&&(et=_t.pdt),et};if(He.exists()){var Xe=function(_t,et){return G.emit(se,_t,et)},nt=function(_t,et){var dt=et.levels,$e=et.audioTracks,lt=et.url,Ht=et.stats,Kt=et.networkDetails,nr=et.sessionData,tr={},vr={};dt.forEach(function(gr,jr){tr[jr]={width:gr.width,height:gr.height,bitrate:gr.bitrate,attrs:gr.attrs}}),$e.forEach(function(gr,jr){vr[jr]={name:gr.name,language:gr.lang,bitrate:gr.bitrate}});var ar=V(Ht),pr=ar.bytesLoaded,qt=ar.requestStart,sr=ar.responseStart,Jr=ar.responseEnd;Xe("requestcompleted",ye(ye({},L(nr)),{},{request_event_type:_t,request_bytes_loaded:pr,request_start:qt,request_response_start:sr,request_response_end:Jr,request_type:"manifest",request_hostname:be(lt),request_response_headers:we(Kt),request_rendition_lists:{media:tr,audio:vr,video:{}}}))};Q.on(Pe.Events.MANIFEST_LOADED,nt);var wt=function(_t,et){var dt=et.details,$e=et.level,lt=et.networkDetails,Ht=et.stats,Kt=V(Ht),nr=Kt.bytesLoaded,tr=Kt.requestStart,vr=Kt.responseStart,ar=Kt.responseEnd,pr=dt.fragments[dt.fragments.length-1],qt=it(pr)+Je(pr.duration);Xe("requestcompleted",{request_event_type:_t,request_bytes_loaded:nr,request_start:tr,request_response_start:vr,request_response_end:ar,request_current_level:$e,request_type:"manifest",request_hostname:be(dt.url),request_response_headers:we(lt),video_holdback:dt.holdBack&&Je(dt.holdBack),video_part_holdback:dt.partHoldBack&&Je(dt.partHoldBack),video_part_target_duration:dt.partTarget&&Je(dt.partTarget),video_target_duration:dt.targetduration&&Je(dt.targetduration),video_source_is_live:dt.live,player_manifest_newest_program_time:isNaN(qt)?void 0:qt})};Q.on(Pe.Events.LEVEL_LOADED,wt);var Bt=function(_t,et){var dt=et.details,$e=et.networkDetails,lt=et.stats,Ht=V(lt),Kt=Ht.bytesLoaded,nr=Ht.requestStart,tr=Ht.responseStart,vr=Ht.responseEnd;Xe("requestcompleted",{request_event_type:_t,request_bytes_loaded:Kt,request_start:nr,request_response_start:tr,request_response_end:vr,request_type:"manifest",request_hostname:be(dt.url),request_response_headers:we($e)})};Q.on(Pe.Events.AUDIO_TRACK_LOADED,Bt);var Jt=function(_t,et){var dt=et.stats,$e=et.networkDetails,lt=et.frag;dt=dt||lt.stats;var Ht=V(dt),Kt=Ht.bytesLoaded,nr=Ht.requestStart,tr=Ht.responseStart,vr=Ht.responseEnd,ar=we($e),pr=ar==null?void 0:ar["x-request-id"],qt={request_event_type:_t,request_bytes_loaded:Kt,request_start:nr,request_response_start:tr,request_response_end:vr,request_hostname:$e?be($e.responseURL):void 0,request_id:pr,request_response_headers:ar,request_media_duration:lt.duration,request_url:$e==null?void 0:$e.responseURL};lt.type==="main"?(qt.request_type="media",qt.request_current_level=lt.level,qt.request_video_width=(Q.levels[lt.level]||{}).width,qt.request_video_height=(Q.levels[lt.level]||{}).height,qt.request_labeled_bitrate=(Q.levels[lt.level]||{}).bitrate):qt.request_type=lt.type,Xe("requestcompleted",qt)};Q.on(Pe.Events.FRAG_LOADED,Jt);var ir=function(_t,et){var dt=et.frag,$e=dt.start,lt={currentFragmentPDT:it(dt),currentFragmentStart:Je($e)};Xe("fragmentchange",lt)};Q.on(Pe.Events.FRAG_CHANGED,ir);var mt=function(_t,et){var dt=et.type,$e=et.details,lt=et.response,Ht=et.fatal,Kt=et.context,nr=et.frag;if($e===Pe.ErrorDetails.MANIFEST_LOAD_ERROR||$e===Pe.ErrorDetails.MANIFEST_LOAD_TIMEOUT||$e===Pe.ErrorDetails.FRAG_LOAD_ERROR||$e===Pe.ErrorDetails.FRAG_LOAD_TIMEOUT||$e===Pe.ErrorDetails.LEVEL_LOAD_ERROR||$e===Pe.ErrorDetails.LEVEL_LOAD_TIMEOUT){var tr=nr&&nr.url||Kt&&Kt.url||"";Xe("requestfailed",{request_error:$e,request_url:tr,request_hostname:be(tr),request_type:$e===Pe.ErrorDetails.FRAG_LOAD_ERROR||$e===Pe.ErrorDetails.FRAG_LOAD_TIMEOUT?"media":"manifest",request_error_code:lt&<.code,request_error_text:lt&<.text})}Ht&&Xe("error",{player_error_code:dt,player_error_message:$e})};Q.on(Pe.Events.ERROR,mt);var Wt=function(_t,et){var dt=et.frag,$e=dt&&dt._url||"";Xe("requestcanceled",{request_event_type:_t,request_url:$e,request_type:"media",request_hostname:be($e)})};Q.on(Pe.Events.FRAG_LOAD_EMERGENCY_ABORTED,Wt);var er=function(_t,et){var dt=et.level,$e=Q.levels[dt];if($e&&$e.attrs&&$e.attrs.BANDWIDTH){var lt,Ht=$e.attrs.BANDWIDTH,Kt=parseFloat($e.attrs["FRAME-RATE"]);isNaN(Kt)||(lt=Kt),Ht?Xe("renditionchange",{video_source_fps:lt,video_source_bitrate:Ht,video_source_width:$e.width,video_source_height:$e.height,video_source_rendition_name:$e.name,video_source_codec:$e==null?void 0:$e.videoCodec}):at.warn("missing BANDWIDTH from HLS manifest parsed by HLS.js")}};Q.on(Pe.Events.LEVEL_SWITCHED,er),Q._stopMuxMonitor=function(){Q.off(Pe.Events.MANIFEST_LOADED,nt),Q.off(Pe.Events.LEVEL_LOADED,wt),Q.off(Pe.Events.AUDIO_TRACK_LOADED,Bt),Q.off(Pe.Events.FRAG_LOADED,Jt),Q.off(Pe.Events.FRAG_CHANGED,ir),Q.off(Pe.Events.ERROR,mt),Q.off(Pe.Events.FRAG_LOAD_EMERGENCY_ABORTED,Wt),Q.off(Pe.Events.LEVEL_SWITCHED,er),Q.off(Pe.Events.DESTROYING,Q._stopMuxMonitor),delete Q._stopMuxMonitor},Q.on(Pe.Events.DESTROYING,Q._stopMuxMonitor)}else at.warn("performance timing not supported. Not tracking HLS.js.")}(this.mux,this.id,A.hlsjs,{},A.Hls||window.Hls)):this.mux.log.warn("You must pass a valid hlsjs instance in order to track it.")}},{key:"removeHLSJS",value:function(){var A;this.hlsjs&&((A=this.hlsjs)&&typeof A._stopMuxMonitor=="function"&&A._stopMuxMonitor(),this.hlsjs=void 0)}},{key:"addDashJS",value:function(A){A.dashjs?this.dashjs?this.mux.log.warn("An instance of Dash.js is already being monitored for this player."):(this.dashjs=A.dashjs,function(G,se,Q){var Pe=G.log;if(Q&&Q.on){var at=function(mt,Wt){return G.emit(se,mt,Wt)},Je=function(mt){var Wt=mt.type,er=(mt.data||{}).url;at("requestcompleted",{request_event_type:Wt,request_start:0,request_response_start:0,request_response_end:0,request_bytes_loaded:-1,request_type:"manifest",request_hostname:be(er),request_url:er})};Q.on("manifestLoaded",Je);var it={},Xe=function(mt){var Wt=mt.type,er=mt.fragmentModel,_t=(mt.chunk||{}).mediaInfo||{},et=_t.type,dt=_t.bitrateList,$e={};(dt=dt||[]).forEach(function(qt,sr){$e[sr]={},$e[sr].width=qt.width,$e[sr].height=qt.height,$e[sr].bitrate=qt.bandwidth,$e[sr].attrs={}}),et==="video"?it.video=$e:et==="audio"?it.audio=$e:it.media=$e;var lt=qe(er,Q),Ht=lt.requestStart,Kt=lt.requestResponseStart,nr=lt.requestResponseEnd,tr=lt.requestResponseHeaders,vr=lt.requestMediaDuration,ar=lt.requestHostname,pr=lt.requestUrl;at("requestcompleted",{request_event_type:Wt,request_start:Ht,request_response_start:Kt,request_response_end:nr,request_bytes_loaded:-1,request_type:et+"_init",request_response_headers:tr,request_hostname:ar,request_url:pr,request_media_duration:vr,request_rendition_lists:it})};Q.on("initFragmentLoaded",Xe);var nt=function(mt){var Wt=mt.type,er=mt.fragmentModel,_t=mt.chunk||{},et=_t.mediaInfo,dt=_t.start,$e=(et||{}).type,lt=qe(er,Q),Ht=lt.requestStart,Kt=lt.requestResponseStart,nr=lt.requestResponseEnd,tr=lt.requestBytesLoaded,vr=lt.requestResponseHeaders,ar=lt.requestMediaDuration,pr=lt.requestHostname,qt=lt.requestUrl,sr=tt($e,Q),Jr=sr.currentLevel,gr=sr.renditionWidth,jr=sr.renditionHeight,Ki=sr.renditionBitrate;at("requestcompleted",{request_event_type:Wt,request_start:Ht,request_response_start:Kt,request_response_end:nr,request_bytes_loaded:tr,request_type:$e,request_response_headers:vr,request_hostname:pr,request_url:qt,request_media_start_time:dt,request_media_duration:ar,request_current_level:Jr,request_labeled_bitrate:Ki,request_video_width:gr,request_video_height:jr})};Q.on("mediaFragmentLoaded",nt);var wt={video:void 0,audio:void 0,totalBitrate:void 0},Bt=function(){if(wt.video&&typeof wt.video.bitrate=="number"){if(wt.video.width&&wt.video.height){var mt=wt.video.bitrate;return wt.audio&&typeof wt.audio.bitrate=="number"&&(mt+=wt.audio.bitrate),mt!==wt.totalBitrate?(wt.totalBitrate=mt,{video_source_bitrate:mt,video_source_height:wt.video.height,video_source_width:wt.video.width,video_source_codec:ee(wt.video.codec)}):void 0}Pe.warn("have bitrate info for video but missing width/height")}},Jt=function(mt,Wt,er){if(typeof mt.newQuality=="number"){var _t=mt.mediaType;if(_t==="audio"||_t==="video"){var et=Q.getBitrateInfoListFor(_t).find(function($e){return $e.qualityIndex===mt.newQuality});if(et&&typeof et.bitrate=="number"){wt[_t]=Ce(Ce({},et),{},{codec:Q.getCurrentTrackFor(_t).codec});var dt=Bt();dt&&at("renditionchange",dt)}else Pe.warn("missing bitrate info for ".concat(_t))}}else Pe.warn("missing evt.newQuality in qualityChangeRendered event",mt)};Q.on("qualityChangeRendered",Jt);var ir=function(mt){var Wt=mt.error,er=mt.event,_t=(er=er||{}).request||{},et=R().event&&R().event.currentTarget||{};at("requestfailed",{request_error:Wt+"_"+er.id+"_"+_t.type,request_url:er.url,request_hostname:be(er.url),request_type:_t.mediaType,request_error_code:et.status,request_error_type:et.statusText})};Q.on("error",ir),Q._stopMuxMonitor=function(){Q.off("manifestLoaded",Je),Q.off("initFragmentLoaded",Xe),Q.off("mediaFragmentLoaded",nt),Q.off("qualityChangeRendered",Jt),Q.off("error",ir),delete Q._stopMuxMonitor}}else Pe.warn("Invalid dash.js player reference. Monitoring blocked.")}(this.mux,this.id,A.dashjs)):this.mux.log.warn("You must pass a valid dashjs instance in order to track it.")}},{key:"removeDashJS",value:function(){var A;this.dashjs&&((A=this.dashjs)&&typeof A._stopMuxMonitor=="function"&&A._stopMuxMonitor(),this.dashjs=void 0)}}],f&&ni(h.prototype,f),y&&ni(h,y),Object.defineProperty(h,"prototype",{writable:!1}),C}(xe),Cr=Ui,gi=B(153),Xr=B.n(gi);function zr(g){return zr=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(h){return typeof h}:function(h){return h&&typeof Symbol=="function"&&h.constructor===Symbol&&h!==Symbol.prototype?"symbol":typeof h},zr(g)}function mi(g,h){return function(f){if(Array.isArray(f))return f}(g)||function(f,y){var b=f==null?null:typeof Symbol!="undefined"&&f[Symbol.iterator]||f["@@iterator"];if(b!=null){var C,A,G=[],se=!0,Q=!1;try{for(b=b.call(f);!(se=(C=b.next()).done)&&(G.push(C.value),!y||G.length!==y);se=!0);}catch(Pe){Q=!0,A=Pe}finally{try{se||b.return==null||b.return()}finally{if(Q)throw A}}return G}}(g,h)||function(f,y){if(f){if(typeof f=="string")return Bi(f,y);var b=Object.prototype.toString.call(f).slice(8,-1);return b==="Object"&&f.constructor&&(b=f.constructor.name),b==="Map"||b==="Set"?Array.from(f):b==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(b)?Bi(f,y):void 0}}(g,h)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
5
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function Bi(g,h){(h==null||h>g.length)&&(h=g.length);for(var f=0,y=new Array(h);f<h;f++)y[f]=g[f];return y}var Hr,yi=["loadstart","pause","play","playing","seeking","seeked","timeupdate","ratechange","stalled","waiting","error","ended"],tn={1:"MEDIA_ERR_ABORTED",2:"MEDIA_ERR_NETWORK",3:"MEDIA_ERR_DECODE",4:"MEDIA_ERR_SRC_NOT_SUPPORTED"};R()&&R().WeakMap&&(Hr=new WeakMap);var oi="#EXT-X-TARGETDURATION",rn="#EXT-X-PART-INF",nn="#EXT-X-SERVER-CONTROL",an="#EXTINF",Hi="#EXT-X-PROGRAM-DATE-TIME",li="#EXT-X-VERSION",Ei="#EXT-X-SESSION-DATA",ui=function(g){return this.buffer="",this.manifest={segments:[],serverControl:{},sessionData:{}},this.currentUri={},this.process(g),this.manifest};ui.prototype.process=function(g){var h;for(this.buffer+=g,h=this.buffer.indexOf(`
|
|
6
|
+
`);h>-1;h=this.buffer.indexOf(`
|
|
7
|
+
`))this.processLine(this.buffer.substring(0,h)),this.buffer=this.buffer.substring(h+1)},ui.prototype.processLine=function(g){var h=g.indexOf(":"),f=ln(g,h),y=f[0],b=f.length===2?Qr(f[1]):void 0;if(y[0]!=="#")this.currentUri.uri=y,this.manifest.segments.push(this.currentUri),this.manifest.targetDuration&&!("duration"in this.currentUri)&&(this.currentUri.duration=this.manifest.targetDuration),this.currentUri={};else switch(y){case oi:if(!isFinite(b)||b<0)return;this.manifest.targetDuration=b,this.setHoldBack();break;case rn:Ti(this.manifest,f),this.manifest.partInf.partTarget&&(this.manifest.partTargetDuration=this.manifest.partInf.partTarget),this.setHoldBack();break;case nn:Ti(this.manifest,f),this.setHoldBack();break;case an:b===0?this.currentUri.duration=.01:b>0&&(this.currentUri.duration=b);break;case Hi:var C=b,A=new Date(C);this.manifest.dateTimeString||(this.manifest.dateTimeString=C,this.manifest.dateTimeObject=A),this.currentUri.dateTimeString=C,this.currentUri.dateTimeObject=A;break;case li:Ti(this.manifest,f);break;case Ei:var G=un(f[1]),se=L(G);U()(this.manifest.sessionData,se)}},ui.prototype.setHoldBack=function(){var g=this.manifest,h=g.serverControl,f=g.targetDuration,y=g.partTargetDuration;if(h){var b="holdBack",C="partHoldBack",A=f&&3*f,G=y&&2*y;f&&!h.hasOwnProperty(b)&&(h[b]=A),A&&h[b]<A&&(h[b]=A),y&&!h.hasOwnProperty(C)&&(h[C]=3*y),y&&h[C]<G&&(h[C]=G)}};var Ti=function(g,h){var f,y=Gi(h[0].replace("#EXT-X-",""));bi(h[1])?(f={},f=U()(on(h[1]),f)):f=Qr(h[1]),g[y]=f},Gi=function(g){return g.toLowerCase().replace(/-(\w)/g,function(h){return h[1].toUpperCase()})},Qr=function(g){if(g.toLowerCase()==="yes"||g.toLowerCase()==="no")return g.toLowerCase()==="yes";var h=g.indexOf(":")!==-1?g:parseFloat(g);return isNaN(h)?g:h},sn=function(g){var h={},f=g.split("=");return f.length>1&&(h[Gi(f[0])]=Qr(f[1])),h},on=function(g){for(var h=g.split(","),f={},y=0;h.length>y;y++){var b=h[y],C=sn(b);f=U()(C,f)}return f},bi=function(g){return g.indexOf("=")>-1},ln=function(g,h){return h===-1?[g]:[g.substring(0,h),g.substring(h+1)]},un=function(g){var h={};if(g){var f=g.search(",");return[g.slice(0,f),g.slice(f+1)].forEach(function(y,b){for(var C=y.replace(/['"]+/g,"").split("="),A=0;A<C.length;A++)C[A]==="DATA-ID"&&(h["DATA-ID"]=C[1-A]),C[A]==="VALUE"&&(h.VALUE=C[1-A])}),{data:h}}},dn=ui,_i={safeCall:function(g,h,f,y){var b=y;if(g&&typeof g[h]=="function")try{b=g[h].apply(g,f)}catch(C){H.info("safeCall error",C)}return b},safeIncrement:K,getComputedStyle:function(g,h){var f;if(g&&h&&R()&&typeof R().getComputedStyle=="function")return Hr&&Hr.has(g)&&(f=Hr.get(g)),f||(f=R().getComputedStyle(g,null),Hr&&Hr.set(g,f)),f.getPropertyValue(h)},secondsToMs:function(g){return Math.floor(1e3*g)},assign:U(),headersStringToObject:M,extractHostnameAndDomain:ke,extractHostname:be,manifestParser:dn,generateShortID:w,generateUUID:p,now:z.now},Si={PLAYER_READY:"playerready",VIEW_INIT:"viewinit",VIDEO_CHANGE:"videochange",PLAY:"play",PAUSE:"pause",PLAYING:"playing",TIME_UPDATE:"timeupdate",SEEKING:"seeking",SEEKED:"seeked",REBUFFER_START:"rebufferstart",REBUFFER_END:"rebufferend",ERROR:"error",ENDED:"ended",RENDITION_CHANGE:"renditionchange",ORIENTATION_CHANGE:"orientationchange",AD_REQUEST:"adrequest",AD_RESPONSE:"adresponse",AD_BREAK_START:"adbreakstart",AD_PLAY:"adplay",AD_PLAYING:"adplaying",AD_PAUSE:"adpause",AD_FIRST_QUARTILE:"adfirstquartile",AD_MID_POINT:"admidpoint",AD_THIRD_QUARTILE:"adthirdquartile",AD_ENDED:"adended",AD_BREAK_END:"adbreakend",AD_ERROR:"aderror",REQUEST_COMPLETED:"requestcompleted",REQUEST_FAILED:"requestfailed",REQUEST_CANCELLED:"requestcanceled"};function cn(g,h){return function(f){if(Array.isArray(f))return f}(g)||function(f,y){var b=f==null?null:typeof Symbol!="undefined"&&f[Symbol.iterator]||f["@@iterator"];if(b!=null){var C,A,G=[],se=!0,Q=!1;try{for(b=b.call(f);!(se=(C=b.next()).done)&&(G.push(C.value),!y||G.length!==y);se=!0);}catch(Pe){Q=!0,A=Pe}finally{try{se||b.return==null||b.return()}finally{if(Q)throw A}}return G}}(g,h)||function(f,y){if(f){if(typeof f=="string")return pt(f,y);var b=Object.prototype.toString.call(f).slice(8,-1);return b==="Object"&&f.constructor&&(b=f.constructor.name),b==="Map"||b==="Set"?Array.from(f):b==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(b)?pt(f,y):void 0}}(g,h)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
8
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function pt(g,h){(h==null||h>g.length)&&(h=g.length);for(var f=0,y=new Array(h);f<h;f++)y[f]=g[f];return y}var fr={},Gr=function g(h){var f=arguments;typeof h=="string"?g.hasOwnProperty(h)?R().setTimeout(function(){f=Array.prototype.splice.call(f,1),g[h].apply(null,f)},0):H.warn("`"+h+"` is an unknown task"):typeof h=="function"?R().setTimeout(function(){h(g)},0):H.warn("`"+h+"` is invalid.")},ji={loaded:z.now(),NAME:"mux-embed",VERSION:"4.17.0",API_VERSION:"2.1",PLAYER_TRACKED:!1,monitor:function(g,h){return function(f,y,b){var C=mi(ve(y),3),A=C[0],G=C[1],se=C[2],Q=f.log,Pe=f.utils.getComputedStyle,at=f.utils.secondsToMs;if(!A)return Q.error("No element was found with the `"+G+"` query selector.");if(se!=="video"&&se!=="audio")return Q.error("The element of `"+G+"` was not a media element.");A.mux&&(A.mux.destroy(),delete A.mux,Q.warn("Already monitoring this video element, replacing existing event listeners")),(b=U()({automaticErrorTracking:!0},b)).data=U()({player_software:"HTML5 Video Element",player_mux_plugin_name:"VideoElementMonitor",player_mux_plugin_version:f.VERSION},b.data),b.getPlayheadTime=function(){return at(A.currentTime)},b.getStateData=function(){var it,Xe,nt=this.hlsjs&&this.hlsjs.url,wt=this.dashjs&&zr(this.dashjs.getSource==="function")&&this.dashjs.getSource(),Bt={player_is_paused:A.paused,player_playhead_time:at(A.currentTime),player_width:parseInt(Pe(A,"width")),player_height:parseInt(Pe(A,"height")),player_autoplay_on:A.autoplay,player_preload_on:A.preload,player_language_code:A.lang,player_is_fullscreen:Xr()&&!!(Xr().fullscreenElement||Xr().webkitFullscreenElement||Xr().mozFullScreenElement||Xr().msFullscreenElement),video_poster_url:A.poster,video_source_url:nt||wt||A.currentSrc,video_source_duration:at(A.duration),video_source_height:A.videoHeight,video_source_width:A.videoWidth,view_dropped_frame_count:(it=A)===null||it===void 0||(Xe=it.getVideoPlaybackQuality)===null||Xe===void 0?void 0:Xe.call(it).droppedVideoFrames},Jt=b.getPlayheadTime();if(A.getStartDate&&Jt>0){var ir=A.getStartDate();if(ir&&typeof ir.getTime=="function"&&ir.getTime()){var mt=ir.getTime();if(Bt.player_program_time=mt+Jt,A.seekable.length>0){var Wt=mt+A.seekable.end(A.seekable.length-1);Bt.player_live_edge_program_time=Wt}}}return Bt},A.mux=A.mux||{},A.mux.deleted=!1,A.mux.emit=function(it,Xe){f.emit(G,it,Xe)};var Je=function(){Q.error("The monitor for this video element has already been destroyed.")};A.mux.destroy=function(){Object.keys(A.mux.listeners).forEach(function(it){A.removeEventListener(it,A.mux.listeners[it],!1)}),delete A.mux.listeners,A.mux.destroy=Je,A.mux.swapElement=Je,A.mux.emit=Je,A.mux.addHLSJS=Je,A.mux.addDashJS=Je,A.mux.removeHLSJS=Je,A.mux.removeDashJS=Je,A.mux.deleted=!0,f.emit(G,"destroy")},A.mux.swapElement=function(it){var Xe=mi(ve(it),3),nt=Xe[0],wt=Xe[1],Bt=Xe[2];return nt?Bt!=="video"&&Bt!=="audio"?f.log.error("The element of `"+wt+"` was not a media element."):(nt.muxId=A.muxId,delete A.muxId,nt.mux=nt.mux||{},nt.mux.listeners=U()({},A.mux.listeners),delete A.mux.listeners,Object.keys(nt.mux.listeners).forEach(function(Jt){A.removeEventListener(Jt,nt.mux.listeners[Jt],!1),nt.addEventListener(Jt,nt.mux.listeners[Jt],!1)}),nt.mux.swapElement=A.mux.swapElement,nt.mux.destroy=A.mux.destroy,delete A.mux,void(A=nt)):f.log.error("No element was found with the `"+wt+"` query selector.")},A.mux.addHLSJS=function(it){f.addHLSJS(G,it)},A.mux.addDashJS=function(it){f.addDashJS(G,it)},A.mux.removeHLSJS=function(){f.removeHLSJS(G)},A.mux.removeDashJS=function(){f.removeDashJS(G)},f.init(G,b),f.emit(G,"playerready"),A.paused||(f.emit(G,"play"),A.readyState>2&&f.emit(G,"playing")),A.mux.listeners={},yi.forEach(function(it){(it!=="error"||b.automaticErrorTracking)&&(A.mux.listeners[it]=function(){var Xe={};if(it==="error"){if(!A.error||A.error.code===1)return;Xe.player_error_code=A.error.code,Xe.player_error_message=tn[A.error.code]||A.error.message}f.emit(G,it,Xe)},A.addEventListener(it,A.mux.listeners[it],!1))})}(Gr,g,h)},destroyMonitor:function(g){var h=cn(ve(g),1)[0];h&&h.mux&&typeof h.mux.destroy=="function"?h.mux.destroy():H.error("A video element monitor for `"+g+"` has not been initialized via `mux.monitor`.")},addHLSJS:function(g,h){var f=k(g);fr[f]?fr[f].addHLSJS(h):H.error("A monitor for `"+f+"` has not been initialized.")},addDashJS:function(g,h){var f=k(g);fr[f]?fr[f].addDashJS(h):H.error("A monitor for `"+f+"` has not been initialized.")},removeHLSJS:function(g){var h=k(g);fr[h]?fr[h].removeHLSJS():H.error("A monitor for `"+h+"` has not been initialized.")},removeDashJS:function(g){var h=k(g);fr[h]?fr[h].removeDashJS():H.error("A monitor for `"+h+"` has not been initialized.")},init:function(g,h){ce()&&h&&h.respectDoNotTrack&&H.info("The browser's Do Not Track flag is enabled - Mux beaconing is disabled.");var f=k(g);fr[f]=new Cr(Gr,f,h)},emit:function(g,h,f){var y=k(g);fr[y]?(fr[y].emit(h,f),h==="destroy"&&delete fr[y]):H.error("A monitor for `"+y+"` has not been initialized.")},checkDoNotTrack:ce,log:H,utils:_i,events:Si,WINDOW_HIDDEN:!1,WINDOW_UNLOADING:!1};Object.assign(Gr,ji),R()!==void 0&&typeof R().addEventListener=="function"&&R().addEventListener("pagehide",function(g){g.persisted||(Gr.WINDOW_UNLOADING=!0)},!1);var hn=Gr},655:function(re,N,B){var $,R;function p(w){return p=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(k){return typeof k}:function(k){return k&&typeof Symbol=="function"&&k.constructor===Symbol&&k!==Symbol.prototype?"symbol":typeof k},p(w);}(function(w){var k=!1;if((R=typeof($=w)=="function"?$.call(N,B,N,re):$)===void 0||(re.exports=R),k=!0,p(N)==="object"&&(re.exports=w(),k=!0),!k){var ve=window.Cookies,Z=window.Cookies=w();Z.noConflict=function(){return window.Cookies=ve,Z}}})(function(){var w=function(){for(var k=0,ve={};k<arguments.length;k++){var Z=arguments[k];for(var le in Z)ve[le]=Z[le]}return ve};return function k(ve){function Z(le,Te,H){var ce;if(typeof document!="undefined"){if(arguments.length>1){if(typeof(H=w({path:"/"},Z.defaults,H)).expires=="number"){var z=new Date;z.setMilliseconds(z.getMilliseconds()+864e5*H.expires),H.expires=z}try{ce=JSON.stringify(Te),/^[\{\[]/.test(ce)&&(Te=ce)}catch{}return Te=ve.write?ve.write(Te,le):encodeURIComponent(String(Te)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent),le=(le=(le=encodeURIComponent(String(le))).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent)).replace(/[\(\)]/g,escape),document.cookie=[le,"=",Te,H.expires?"; expires="+H.expires.toUTCString():"",H.path?"; path="+H.path:"",H.domain?"; domain="+H.domain:"",H.secure?"; secure":""].join("")}le||(ce={});for(var ne=document.cookie?document.cookie.split("; "):[],U=/(%[0-9A-Z]{2})+/g,be=0;be<ne.length;be++){var ke=ne[be].split("="),He=ke.slice(1).join("=");He.charAt(0)==='"'&&(He=He.slice(1,-1));try{var K=ke[0].replace(U,decodeURIComponent);if(He=ve.read?ve.read(He,K):ve(He,K)||He.replace(U,decodeURIComponent),this.json)try{He=JSON.parse(He)}catch{}if(le===K){ce=He;break}le||(ce[K]=He)}catch{}}return ce}}return Z.set=Z,Z.get=function(le){return Z.call(Z,le)},Z.getJSON=function(){return Z.apply({json:!0},[].slice.call(arguments))},Z.defaults={},Z.remove=function(le,Te){Z(le,"",w(Te,{expires:-1}))},Z.withConverter=k,Z}(function(){})})},153:function(re,N,B){var $,R=B.g!==void 0?B.g:typeof window!="undefined"?window:{},p=B(558);typeof document!="undefined"?$=document:($=R["__GLOBAL_DOCUMENT_CACHE@4"])||($=R["__GLOBAL_DOCUMENT_CACHE@4"]=p),re.exports=$},48:function(re,N,B){var $;$=typeof window!="undefined"?window:B.g!==void 0?B.g:typeof self!="undefined"?self:{},re.exports=$},678:function(re){var N=9007199254740991,B="[object Arguments]",$="[object Function]",R="[object GeneratorFunction]",p=/^(?:0|[1-9]\d*)$/;function w(W,V,we){switch(we.length){case 0:return W.call(V);case 1:return W.call(V,we[0]);case 2:return W.call(V,we[0],we[1]);case 3:return W.call(V,we[0],we[1],we[2])}return W.apply(V,we)}var k,ve,Z=Object.prototype,le=Z.hasOwnProperty,Te=Z.toString,H=Z.propertyIsEnumerable,ce=(k=Object.keys,ve=Object,function(W){return k(ve(W))}),z=Math.max,ne=!H.call({valueOf:1},"valueOf");function U(W,V){var we=E(W)||function(qe){return function(tt){return function(ee){return!!ee&&typeof ee=="object"}(tt)&&M(tt)}(qe)&&le.call(qe,"callee")&&(!H.call(qe,"callee")||Te.call(qe)==B)}(W)?function(qe,tt){for(var ee=-1,ue=Array(qe);++ee<qe;)ue[ee]=tt(ee);return ue}(W.length,String):[],Re=we.length,Ce=!!Re;for(var ge in W)!V&&!le.call(W,ge)||Ce&&(ge=="length"||ke(ge,Re))||we.push(ge);return we}function be(W,V,we){var Re=W[V];le.call(W,V)&&K(Re,we)&&(we!==void 0||V in W)||(W[V]=we)}function ke(W,V){return!!(V=V==null?N:V)&&(typeof W=="number"||p.test(W))&&W>-1&&W%1==0&&W<V}function He(W){var V=W&&W.constructor;return W===(typeof V=="function"&&V.prototype||Z)}function K(W,V){return W===V||W!=W&&V!=V}var E=Array.isArray;function M(W){return W!=null&&function(V){return typeof V=="number"&&V>-1&&V%1==0&&V<=N}(W.length)&&!function(V){var we=L(V)?Te.call(V):"";return we==$||we==R}(W)}function L(W){var V=typeof W;return!!W&&(V=="object"||V=="function")}var oe,ye=(oe=function(W,V){if(ne||He(V)||M(V))(function(Re,Ce,ge,qe){ge||(ge={});for(var tt=-1,ee=Ce.length;++tt<ee;){var ue=Ce[tt],ie=qe?qe(ge[ue],Re[ue],ue,ge,Re):void 0;be(ge,ue,ie===void 0?Re[ue]:ie)}})(V,function(Re){return M(Re)?U(Re):function(Ce){if(!He(Ce))return ce(Ce);var ge=[];for(var qe in Object(Ce))le.call(Ce,qe)&&qe!="constructor"&&ge.push(qe);return ge}(Re)}(V),W);else for(var we in V)le.call(V,we)&&be(W,we,V[we])},function(W,V){return V=z(V===void 0?W.length-1:V,0),function(){for(var we=arguments,Re=-1,Ce=z(we.length-V,0),ge=Array(Ce);++Re<Ce;)ge[Re]=we[V+Re];Re=-1;for(var qe=Array(V+1);++Re<V;)qe[Re]=we[Re];return qe[V]=ge,w(W,this,qe)}}(function(W,V){var we=-1,Re=V.length,Ce=Re>1?V[Re-1]:void 0,ge=Re>2?V[2]:void 0;for(Ce=oe.length>3&&typeof Ce=="function"?(Re--,Ce):void 0,ge&&function(tt,ee,ue){if(!L(ue))return!1;var ie=typeof ee;return!!(ie=="number"?M(ue)&&ke(ee,ue.length):ie=="string"&&ee in ue)&&K(ue[ee],tt)}(V[0],V[1],ge)&&(Ce=Re<3?void 0:Ce,Re=1),W=Object(W);++we<Re;){var qe=V[we];qe&&oe(W,qe,we,Ce)}return W}));re.exports=ye},640:function(re,N,B){var $,R;(function(p,w){"use strict";$=function(){var k=function(){},ve="undefined",Z=typeof window!==ve&&typeof window.navigator!==ve&&/Trident\/|MSIE /.test(window.navigator.userAgent),le=["trace","debug","info","warn","error"];function Te(E,M){var L=E[M];if(typeof L.bind=="function")return L.bind(E);try{return Function.prototype.bind.call(L,E)}catch{return function(){return Function.prototype.apply.apply(L,[E,arguments])}}}function H(){console.log&&(console.log.apply?console.log.apply(console,arguments):Function.prototype.apply.apply(console.log,[console,arguments])),console.trace&&console.trace()}function ce(E){return E==="debug"&&(E="log"),typeof console!==ve&&(E==="trace"&&Z?H:console[E]!==void 0?Te(console,E):console.log!==void 0?Te(console,"log"):k)}function z(E,M){for(var L=0;L<le.length;L++){var oe=le[L];this[oe]=L<E?k:this.methodFactory(oe,E,M)}this.log=this.debug}function ne(E,M,L){return function(){typeof console!==ve&&(z.call(this,M,L),this[E].apply(this,arguments))}}function U(E,M,L){return ce(E)||ne.apply(this,arguments)}function be(E,M,L){var oe,ye=this;M=M==null?"WARN":M;var W="loglevel";function V(ge){var qe=(le[ge]||"silent").toUpperCase();if(typeof window!==ve&&W){try{return void(window.localStorage[W]=qe)}catch{}try{window.document.cookie=encodeURIComponent(W)+"="+qe+";"}catch{}}}function we(){var ge;if(typeof window!==ve&&W){try{ge=window.localStorage[W]}catch{}if(typeof ge===ve)try{var qe=window.document.cookie,tt=qe.indexOf(encodeURIComponent(W)+"=");tt!==-1&&(ge=/^([^;]+)/.exec(qe.slice(tt))[1])}catch{}return ye.levels[ge]===void 0&&(ge=void 0),ge}}function Re(){if(typeof window!==ve&&W){try{return void window.localStorage.removeItem(W)}catch{}try{window.document.cookie=encodeURIComponent(W)+"=; expires=Thu, 01 Jan 1970 00:00:00 UTC"}catch{}}}typeof E=="string"?W+=":"+E:typeof E=="symbol"&&(W=void 0),ye.name=E,ye.levels={TRACE:0,DEBUG:1,INFO:2,WARN:3,ERROR:4,SILENT:5},ye.methodFactory=L||U,ye.getLevel=function(){return oe},ye.setLevel=function(ge,qe){if(typeof ge=="string"&&ye.levels[ge.toUpperCase()]!==void 0&&(ge=ye.levels[ge.toUpperCase()]),!(typeof ge=="number"&&ge>=0&&ge<=ye.levels.SILENT))throw"log.setLevel() called with invalid level: "+ge;if(oe=ge,qe!==!1&&V(ge),z.call(ye,ge,E),typeof console===ve&&ge<ye.levels.SILENT)return"No console available for logging"},ye.setDefaultLevel=function(ge){M=ge,we()||ye.setLevel(ge,!1)},ye.resetLevel=function(){ye.setLevel(M,!1),Re()},ye.enableAll=function(ge){ye.setLevel(ye.levels.TRACE,ge)},ye.disableAll=function(ge){ye.setLevel(ye.levels.SILENT,ge)};var Ce=we();Ce==null&&(Ce=M),ye.setLevel(Ce,!1)}var ke=new be,He={};ke.getLogger=function(E){if(typeof E!="symbol"&&typeof E!="string"||E==="")throw new TypeError("You must supply a name when creating a logger.");var M=He[E];return M||(M=He[E]=new be(E,ke.getLevel(),ke.methodFactory)),M};var K=typeof window!==ve?window.log:void 0;return ke.noConflict=function(){return typeof window!==ve&&window.log===ke&&(window.log=K),ke},ke.getLoggers=function(){return He},ke.default=ke,ke},(R=typeof $=="function"?$.call(N,B,N,re):$)===void 0||(re.exports=R)})()},375:function(re,N){"use strict";var B=Object.prototype.hasOwnProperty;function $(p){try{return decodeURIComponent(p.replace(/\+/g," "))}catch{return null}}function R(p){try{return encodeURIComponent(p)}catch{return null}}N.stringify=function(p,w){w=w||"";var k,ve,Z=[];for(ve in typeof w!="string"&&(w="?"),p)if(B.call(p,ve)){if((k=p[ve])||k!=null&&!isNaN(k)||(k=""),ve=R(ve),k=R(k),ve===null||k===null)continue;Z.push(ve+"="+k)}return Z.length?w+Z.join("&"):""},N.parse=function(p){for(var w,k=/([^=?#&]+)=?([^&]*)/g,ve={};w=k.exec(p);){var Z=$(w[1]),le=$(w[2]);Z===null||le===null||Z in ve||(ve[Z]=le)}return ve}},558:function(){}},De={};function fe(re){var N=De[re];if(N!==void 0)return N.exports;var B=De[re]={exports:{}};return Se[re].call(B.exports,B,B.exports,fe),B.exports}return fe.n=function(re){var N=re&&re.__esModule?function(){return re.default}:function(){return re};return fe.d(N,{a:N}),N},fe.d=function(re,N){for(var B in N)fe.o(N,B)&&!fe.o(re,B)&&Object.defineProperty(re,B,{enumerable:!0,get:N[B]})},fe.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch{if(typeof window=="object")return window}}(),fe.o=function(re,N){return Object.prototype.hasOwnProperty.call(re,N)},fe(80)}()},typeof Wi=="object"&&typeof wn=="object"?wn.exports=te():typeof Wi=="object"?Wi.mux=te():X.mux=te()})()});var ra=Zn((Ri,An)=>{typeof window!="undefined"&&function(X,te){typeof Ri=="object"&&typeof An=="object"?An.exports=te():typeof define=="function"&&define.amd?define([],te):typeof Ri=="object"?Ri.Hls=te():X.Hls=te()}(Ri,()=>(()=>{var X={21:(fe,re,N)=>{"use strict";N.r(re),N.d(re,{default:()=>ve});var B=function(){function Z(le,Te){this.subtle=void 0,this.aesIV=void 0,this.subtle=le,this.aesIV=Te}return Z.prototype.decrypt=function(le,Te){return this.subtle.decrypt({name:"AES-CBC",iv:this.aesIV},Te,le)},Z}(),$=function(){function Z(le,Te){this.subtle=void 0,this.key=void 0,this.subtle=le,this.key=Te}return Z.prototype.expandKey=function(){return this.subtle.importKey("raw",this.key,{name:"AES-CBC"},!1,["encrypt","decrypt"])},Z}(),R=N(145),p=function(){function Z(){this.rcon=[0,1,2,4,8,16,32,64,128,27,54],this.subMix=[new Uint32Array(256),new Uint32Array(256),new Uint32Array(256),new Uint32Array(256)],this.invSubMix=[new Uint32Array(256),new Uint32Array(256),new Uint32Array(256),new Uint32Array(256)],this.sBox=new Uint32Array(256),this.invSBox=new Uint32Array(256),this.key=new Uint32Array(0),this.ksRows=0,this.keySize=0,this.keySchedule=void 0,this.invKeySchedule=void 0,this.initTable()}var le=Z.prototype;return le.uint8ArrayToUint32Array_=function(Te){for(var H=new DataView(Te),ce=new Uint32Array(4),z=0;z<4;z++)ce[z]=H.getUint32(4*z);return ce},le.initTable=function(){var Te=this.sBox,H=this.invSBox,ce=this.subMix,z=ce[0],ne=ce[1],U=ce[2],be=ce[3],ke=this.invSubMix,He=ke[0],K=ke[1],E=ke[2],M=ke[3],L=new Uint32Array(256),oe=0,ye=0,W=0;for(W=0;W<256;W++)L[W]=W<128?W<<1:W<<1^283;for(W=0;W<256;W++){var V=ye^ye<<1^ye<<2^ye<<3^ye<<4;V=V>>>8^255&V^99,Te[oe]=V,H[V]=oe;var we=L[oe],Re=L[we],Ce=L[Re],ge=257*L[V]^16843008*V;z[oe]=ge<<24|ge>>>8,ne[oe]=ge<<16|ge>>>16,U[oe]=ge<<8|ge>>>24,be[oe]=ge,ge=16843009*Ce^65537*Re^257*we^16843008*oe,He[V]=ge<<24|ge>>>8,K[V]=ge<<16|ge>>>16,E[V]=ge<<8|ge>>>24,M[V]=ge,oe?(oe=we^L[L[L[Ce^we]]],ye^=L[L[ye]]):oe=ye=1}},le.expandKey=function(Te){for(var H=this.uint8ArrayToUint32Array_(Te),ce=!0,z=0;z<H.length&&ce;)ce=H[z]===this.key[z],z++;if(!ce){this.key=H;var ne=this.keySize=H.length;if(ne!==4&&ne!==6&&ne!==8)throw new Error("Invalid aes key size="+ne);var U,be,ke,He,K=this.ksRows=4*(ne+6+1),E=this.keySchedule=new Uint32Array(K),M=this.invKeySchedule=new Uint32Array(K),L=this.sBox,oe=this.rcon,ye=this.invSubMix,W=ye[0],V=ye[1],we=ye[2],Re=ye[3];for(U=0;U<K;U++)U<ne?ke=E[U]=H[U]:(He=ke,U%ne==0?(He=L[(He=He<<8|He>>>24)>>>24]<<24|L[He>>>16&255]<<16|L[He>>>8&255]<<8|L[255&He],He^=oe[U/ne|0]<<24):ne>6&&U%ne==4&&(He=L[He>>>24]<<24|L[He>>>16&255]<<16|L[He>>>8&255]<<8|L[255&He]),E[U]=ke=(E[U-ne]^He)>>>0);for(be=0;be<K;be++)U=K-be,He=3&be?E[U]:E[U-4],M[be]=be<4||U<=4?He:W[L[He>>>24]]^V[L[He>>>16&255]]^we[L[He>>>8&255]]^Re[L[255&He]],M[be]=M[be]>>>0}},le.networkToHostOrderSwap=function(Te){return Te<<24|(65280&Te)<<8|(16711680&Te)>>8|Te>>>24},le.decrypt=function(Te,H,ce){for(var z,ne,U,be,ke,He,K,E,M,L,oe,ye,W,V,we=this.keySize+6,Re=this.invKeySchedule,Ce=this.invSBox,ge=this.invSubMix,qe=ge[0],tt=ge[1],ee=ge[2],ue=ge[3],ie=this.uint8ArrayToUint32Array_(ce),Oe=ie[0],xe=ie[1],Ne=ie[2],Be=ie[3],je=new Int32Array(Te),pe=new Int32Array(je.length),Ie=this.networkToHostOrderSwap;H<je.length;){for(M=Ie(je[H]),L=Ie(je[H+1]),oe=Ie(je[H+2]),ye=Ie(je[H+3]),ke=M^Re[0],He=ye^Re[1],K=oe^Re[2],E=L^Re[3],W=4,V=1;V<we;V++)z=qe[ke>>>24]^tt[He>>16&255]^ee[K>>8&255]^ue[255&E]^Re[W],ne=qe[He>>>24]^tt[K>>16&255]^ee[E>>8&255]^ue[255&ke]^Re[W+1],U=qe[K>>>24]^tt[E>>16&255]^ee[ke>>8&255]^ue[255&He]^Re[W+2],be=qe[E>>>24]^tt[ke>>16&255]^ee[He>>8&255]^ue[255&K]^Re[W+3],ke=z,He=ne,K=U,E=be,W+=4;z=Ce[ke>>>24]<<24^Ce[He>>16&255]<<16^Ce[K>>8&255]<<8^Ce[255&E]^Re[W],ne=Ce[He>>>24]<<24^Ce[K>>16&255]<<16^Ce[E>>8&255]<<8^Ce[255&ke]^Re[W+1],U=Ce[K>>>24]<<24^Ce[E>>16&255]<<16^Ce[ke>>8&255]<<8^Ce[255&He]^Re[W+2],be=Ce[E>>>24]<<24^Ce[ke>>16&255]<<16^Ce[He>>8&255]<<8^Ce[255&K]^Re[W+3],pe[H]=Ie(z^Oe),pe[H+1]=Ie(be^xe),pe[H+2]=Ie(U^Ne),pe[H+3]=Ie(ne^Be),Oe=M,xe=L,Ne=oe,Be=ye,H+=4}return pe.buffer},Z}(),w=N(93),k=N(63),ve=function(){function Z(Te,H){var ce=(H===void 0?{}:H).removePKCS7Padding,z=ce===void 0||ce;if(this.logEnabled=!0,this.removePKCS7Padding=void 0,this.subtle=null,this.softwareDecrypter=null,this.key=null,this.fastAesKey=null,this.remainderData=null,this.currentIV=null,this.currentResult=null,this.useSoftware=void 0,this.useSoftware=Te.enableSoftwareAES,this.removePKCS7Padding=z,z)try{var ne=self.crypto;ne&&(this.subtle=ne.subtle||ne.webkitSubtle)}catch{}this.subtle===null&&(this.useSoftware=!0)}var le=Z.prototype;return le.destroy=function(){this.subtle=null,this.softwareDecrypter=null,this.key=null,this.fastAesKey=null,this.remainderData=null,this.currentIV=null,this.currentResult=null},le.isSync=function(){return this.useSoftware},le.flush=function(){var Te=this.currentResult,H=this.remainderData;if(!Te||H)return w.logger.error("[softwareDecrypt] "+(H?"overflow bytes: "+H.byteLength:"no result")),this.reset(),null;var ce,z,ne,U=new Uint8Array(Te);return this.reset(),this.removePKCS7Padding?(ne=(z=(ce=U).byteLength)&&new DataView(ce.buffer).getUint8(z-1))?(0,R.sliceUint8)(ce,0,z-ne):ce:U},le.reset=function(){this.currentResult=null,this.currentIV=null,this.remainderData=null,this.softwareDecrypter&&(this.softwareDecrypter=null)},le.decrypt=function(Te,H,ce){var z=this;return this.useSoftware?new Promise(function(ne,U){z.softwareDecrypt(new Uint8Array(Te),H,ce);var be=z.flush();be?ne(be.buffer):U(new Error("[softwareDecrypt] Failed to decrypt data"))}):this.webCryptoDecrypt(new Uint8Array(Te),H,ce)},le.softwareDecrypt=function(Te,H,ce){var z=this.currentIV,ne=this.currentResult,U=this.remainderData;this.logOnce("JS AES decrypt"),U&&(Te=(0,k.appendUint8Array)(U,Te),this.remainderData=null);var be=this.getValidChunk(Te);if(!be.length)return null;z&&(ce=z);var ke=this.softwareDecrypter;ke||(ke=this.softwareDecrypter=new p),ke.expandKey(H);var He=ne;return this.currentResult=ke.decrypt(be.buffer,0,ce),this.currentIV=(0,R.sliceUint8)(be,-16).buffer,He||null},le.webCryptoDecrypt=function(Te,H,ce){var z=this,ne=this.subtle;return this.key===H&&this.fastAesKey||(this.key=H,this.fastAesKey=new $(ne,H)),this.fastAesKey.expandKey().then(function(U){return ne?(z.logOnce("WebCrypto AES decrypt"),new B(ne,new Uint8Array(ce)).decrypt(Te.buffer,U)):Promise.reject(new Error("web crypto not initialized"))}).catch(function(U){return w.logger.warn("[decrypter]: WebCrypto Error, disable WebCrypto API, "+U.name+": "+U.message),z.onWebCryptoError(Te,H,ce)})},le.onWebCryptoError=function(Te,H,ce){this.useSoftware=!0,this.logEnabled=!0,this.softwareDecrypt(Te,H,ce);var z=this.flush();if(z)return z.buffer;throw new Error("WebCrypto and softwareDecrypt: failed to decrypt data")},le.getValidChunk=function(Te){var H=Te,ce=Te.length-Te.length%16;return ce!==Te.length&&(H=(0,R.sliceUint8)(Te,0,ce),this.remainderData=(0,R.sliceUint8)(Te,ce)),H},le.logOnce=function(Te){this.logEnabled&&(w.logger.log("[decrypter]: "+Te),this.logEnabled=!1)},Z}()},181:(fe,re,N)=>{"use strict";N.r(re),N.d(re,{canParse:()=>k,decodeFrame:()=>H,getID3Data:()=>p,getID3Frames:()=>Te,getTimeStamp:()=>ve,isFooter:()=>R,isHeader:()=>$,isTimeStampFrame:()=>Z,testables:()=>ke,utf8ArrayToStr:()=>be});var B,$=function(K,E){return E+10<=K.length&&K[E]===73&&K[E+1]===68&&K[E+2]===51&&K[E+3]<255&&K[E+4]<255&&K[E+6]<128&&K[E+7]<128&&K[E+8]<128&&K[E+9]<128},R=function(K,E){return E+10<=K.length&&K[E]===51&&K[E+1]===68&&K[E+2]===73&&K[E+3]<255&&K[E+4]<255&&K[E+6]<128&&K[E+7]<128&&K[E+8]<128&&K[E+9]<128},p=function(K,E){for(var M=E,L=0;$(K,E);)L+=10,L+=w(K,E+6),R(K,E+10)&&(L+=10),E+=L;if(L>0)return K.subarray(M,M+L)},w=function(K,E){var M=0;return M=(127&K[E])<<21,M|=(127&K[E+1])<<14,(M|=(127&K[E+2])<<7)|127&K[E+3]},k=function(K,E){return $(K,E)&&w(K,E+6)+10<=K.length-E},ve=function(K){for(var E=Te(K),M=0;M<E.length;M++){var L=E[M];if(Z(L))return U(L)}},Z=function(K){return K&&K.key==="PRIV"&&K.info==="com.apple.streaming.transportStreamTimestamp"},le=function(K){var E=String.fromCharCode(K[0],K[1],K[2],K[3]),M=w(K,4);return{type:E,size:M,data:K.subarray(10,10+M)}},Te=function(K){for(var E=0,M=[];$(K,E);){for(var L=w(K,E+6),oe=(E+=10)+L;E+8<oe;){var ye=le(K.subarray(E)),W=H(ye);W&&M.push(W),E+=ye.size+10}R(K,E)&&(E+=10)}return M},H=function(K){return K.type==="PRIV"?ce(K):K.type[0]==="W"?ne(K):z(K)},ce=function(K){if(!(K.size<2)){var E=be(K.data,!0),M=new Uint8Array(K.data.subarray(E.length+1));return{key:K.type,info:E,data:M.buffer}}},z=function(K){if(!(K.size<2)){if(K.type==="TXXX"){var E=1,M=be(K.data.subarray(E),!0);E+=M.length+1;var L=be(K.data.subarray(E));return{key:K.type,info:M,data:L}}var oe=be(K.data.subarray(1));return{key:K.type,data:oe}}},ne=function(K){if(K.type==="WXXX"){if(K.size<2)return;var E=1,M=be(K.data.subarray(E),!0);E+=M.length+1;var L=be(K.data.subarray(E));return{key:K.type,info:M,data:L}}var oe=be(K.data);return{key:K.type,data:oe}},U=function(K){if(K.data.byteLength===8){var E=new Uint8Array(K.data),M=1&E[3],L=(E[4]<<23)+(E[5]<<15)+(E[6]<<7)+E[7];return L/=45,M&&(L+=4772185884e-2),Math.round(L)}},be=function(K,E){E===void 0&&(E=!1);var M=He();if(M){var L=M.decode(K);if(E){var oe=L.indexOf("\0");return oe!==-1?L.substring(0,oe):L}return L.replace(/\0/g,"")}for(var ye,W,V,we=K.length,Re="",Ce=0;Ce<we;){if((ye=K[Ce++])===0&&E)return Re;if(ye!==0&&ye!==3)switch(ye>>4){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:Re+=String.fromCharCode(ye);break;case 12:case 13:W=K[Ce++],Re+=String.fromCharCode((31&ye)<<6|63&W);break;case 14:W=K[Ce++],V=K[Ce++],Re+=String.fromCharCode((15&ye)<<12|(63&W)<<6|(63&V)<<0)}}return Re},ke={decodeTextFrame:z};function He(){return B||self.TextDecoder===void 0||(B=new self.TextDecoder("utf-8")),B}},182:(fe,re,N)=>{"use strict";N.r(re),N.d(re,{default:()=>k});var B=N(544),$=N(851),R=N(93),p=N(729),w=N(973);function k(Te){var H=new p.EventEmitter,ce=function(z,ne){Te.postMessage({event:z,data:ne})};H.on($.Events.FRAG_DECRYPTED,ce),H.on($.Events.ERROR,ce),Te.addEventListener("message",function(z){var ne=z.data;switch(ne.cmd){case"init":var U=JSON.parse(ne.config);Te.transmuxer=new B.default(H,ne.typeSupported,U,ne.vendor,ne.id),(0,R.enableLogs)(U.debug,ne.id),function(){var K=function(M){R.logger[M]=function(L){ce("workerLog",{logType:M,message:L})}};for(var E in R.logger)K(E)}(),ce("init",null);break;case"configure":Te.transmuxer.configure(ne.config);break;case"demux":var be=Te.transmuxer.push(ne.data,ne.decryptdata,ne.chunkMeta,ne.state);(0,B.isPromise)(be)?(Te.transmuxer.async=!0,be.then(function(K){ve(Te,K)}).catch(function(K){ce($.Events.ERROR,{type:w.ErrorTypes.MEDIA_ERROR,details:w.ErrorDetails.FRAG_PARSING_ERROR,chunkMeta:ne.chunkMeta,fatal:!1,error:K,err:K,reason:"transmuxer-worker push error"})})):(Te.transmuxer.async=!1,ve(Te,be));break;case"flush":var ke=ne.chunkMeta,He=Te.transmuxer.flush(ke);(0,B.isPromise)(He)||Te.transmuxer.async?((0,B.isPromise)(He)||(He=Promise.resolve(He)),He.then(function(K){le(Te,K,ke)}).catch(function(K){ce($.Events.ERROR,{type:w.ErrorTypes.MEDIA_ERROR,details:w.ErrorDetails.FRAG_PARSING_ERROR,chunkMeta:ne.chunkMeta,fatal:!1,error:K,err:K,reason:"transmuxer-worker flush error"})})):le(Te,He,ke)}})}function ve(Te,H){if(!((ce=H.remuxResult).audio||ce.video||ce.text||ce.id3||ce.initSegment))return!1;var ce,z=[],ne=H.remuxResult,U=ne.audio,be=ne.video;return U&&Z(z,U),be&&Z(z,be),Te.postMessage({event:"transmuxComplete",data:H},z),!0}function Z(Te,H){H.data1&&Te.push(H.data1.buffer),H.data2&&Te.push(H.data2.buffer)}function le(Te,H,ce){H.reduce(function(z,ne){return ve(Te,ne)||z},!1)||Te.postMessage({event:"transmuxComplete",data:H[0]}),Te.postMessage({event:"flush",data:ce})}},544:(fe,re,N)=>{"use strict";N.r(re),N.d(re,{TransmuxConfig:()=>Nt,TransmuxState:()=>dr,default:()=>Pt,isPromise:()=>zt});var B=N(851),$=N(973),R=N(21),p=N(965),w=N(181),k=N(856);function ve(J,O){return J===void 0&&(J=""),O===void 0&&(O=9e4),{type:J,id:-1,pid:-1,inputTimeScale:O,sequenceNumber:-1,samples:[],dropped:0}}var Z=N(63),le=N(145),Te=function(){function J(){this._audioTrack=void 0,this._id3Track=void 0,this.frameIndex=0,this.cachedData=null,this.basePTS=null,this.initPTS=null,this.lastPTS=null}var O=J.prototype;return O.resetInitSegment=function(T,P,D,F){this._id3Track={type:"id3",id:3,pid:-1,inputTimeScale:9e4,sequenceNumber:0,samples:[],dropped:0}},O.resetTimeStamp=function(T){this.initPTS=T,this.resetContiguity()},O.resetContiguity=function(){this.basePTS=null,this.lastPTS=null,this.frameIndex=0},O.canParse=function(T,P){return!1},O.appendFrame=function(T,P,D){},O.demux=function(T,P){this.cachedData&&(T=(0,Z.appendUint8Array)(this.cachedData,T),this.cachedData=null);var D,F=w.getID3Data(T,0),q=F?F.length:0,Y=this._audioTrack,he=this._id3Track,Le=F?w.getTimeStamp(F):void 0,Ae=T.length;for((this.basePTS===null||this.frameIndex===0&&(0,p.isFiniteNumber)(Le))&&(this.basePTS=H(Le,P,this.initPTS),this.lastPTS=this.basePTS),this.lastPTS===null&&(this.lastPTS=this.basePTS),F&&F.length>0&&he.samples.push({pts:this.lastPTS,dts:this.lastPTS,data:F,type:k.MetadataSchema.audioId3,duration:Number.POSITIVE_INFINITY});q<Ae;){if(this.canParse(T,q)){var Me=this.appendFrame(Y,T,q);Me?(this.frameIndex++,this.lastPTS=Me.sample.pts,D=q+=Me.length):q=Ae}else w.canParse(T,q)?(F=w.getID3Data(T,q),he.samples.push({pts:this.lastPTS,dts:this.lastPTS,data:F,type:k.MetadataSchema.audioId3,duration:Number.POSITIVE_INFINITY}),D=q+=F.length):q++;if(q===Ae&&D!==Ae){var Ve=(0,le.sliceUint8)(T,D);this.cachedData?this.cachedData=(0,Z.appendUint8Array)(this.cachedData,Ve):this.cachedData=Ve}}return{audioTrack:Y,videoTrack:ve(),id3Track:he,textTrack:ve()}},O.demuxSampleAes=function(T,P,D){return Promise.reject(new Error("["+this+"] This demuxer does not support Sample-AES decryption"))},O.flush=function(T){var P=this.cachedData;return P&&(this.cachedData=null,this.demux(P,0)),{audioTrack:this._audioTrack,videoTrack:ve(),id3Track:this._id3Track,textTrack:ve()}},O.destroy=function(){},J}(),H=function(J,O,T){return(0,p.isFiniteNumber)(J)?90*J:9e4*O+(T||0)};let ce=Te;var z=N(93);function ne(J,O){return J[O]===255&&(246&J[O+1])==240}function U(J,O){return 1&J[O+1]?7:9}function be(J,O){return(3&J[O+3])<<11|J[O+4]<<3|(224&J[O+5])>>>5}function ke(J,O){return O+1<J.length&&ne(J,O)}function He(J,O){if(ke(J,O)){var T=U(J,O);if(O+T>=J.length)return!1;var P=be(J,O);if(P<=T)return!1;var D=O+P;return D===J.length||ke(J,D)}return!1}function K(J,O,T,P,D){if(!J.samplerate){var F=function(q,Y,he,Le){var Ae,Me,Ve,Ue,Qe=navigator.userAgent.toLowerCase(),ot=Le,bt=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350];Ae=1+((192&Y[he+2])>>>6);var We=(60&Y[he+2])>>>2;if(!(We>bt.length-1))return Ve=(1&Y[he+2])<<2,Ve|=(192&Y[he+3])>>>6,z.logger.log("manifest codec:"+Le+", ADTS type:"+Ae+", samplingIndex:"+We),/firefox/i.test(Qe)?We>=6?(Ae=5,Ue=new Array(4),Me=We-3):(Ae=2,Ue=new Array(2),Me=We):Qe.indexOf("android")!==-1?(Ae=2,Ue=new Array(2),Me=We):(Ae=5,Ue=new Array(4),Le&&(Le.indexOf("mp4a.40.29")!==-1||Le.indexOf("mp4a.40.5")!==-1)||!Le&&We>=6?Me=We-3:((Le&&Le.indexOf("mp4a.40.2")!==-1&&(We>=6&&Ve===1||/vivaldi/i.test(Qe))||!Le&&Ve===1)&&(Ae=2,Ue=new Array(2)),Me=We)),Ue[0]=Ae<<3,Ue[0]|=(14&We)>>1,Ue[1]|=(1&We)<<7,Ue[1]|=Ve<<3,Ae===5&&(Ue[1]|=(14&Me)>>1,Ue[2]=(1&Me)<<7,Ue[2]|=8,Ue[3]=0),{config:Ue,samplerate:bt[We],channelCount:Ve,codec:"mp4a.40."+Ae,manifestCodec:ot};q.trigger(B.Events.ERROR,{type:$.ErrorTypes.MEDIA_ERROR,details:$.ErrorDetails.FRAG_PARSING_ERROR,fatal:!0,reason:"invalid ADTS sampling index:"+We})}(O,T,P,D);if(!F)return;J.config=F.config,J.samplerate=F.samplerate,J.channelCount=F.channelCount,J.codec=F.codec,J.manifestCodec=F.manifestCodec,z.logger.log("parsed codec:"+J.codec+", rate:"+F.samplerate+", channels:"+F.channelCount)}}function E(J){return 9216e4/J}function M(J,O,T,P,D){var F,q=P+D*E(J.samplerate),Y=function(Qe,ot){var bt=U(Qe,ot);if(ot+bt<=Qe.length){var We=be(Qe,ot)-bt;if(We>0)return{headerLength:bt,frameLength:We}}}(O,T);if(Y){var he=Y.frameLength,Le=Y.headerLength,Ae=Le+he,Me=Math.max(0,T+Ae-O.length);Me?(F=new Uint8Array(Ae-Le)).set(O.subarray(T+Le,O.length),0):F=O.subarray(T+Le,T+Ae);var Ve={unit:F,pts:q};return Me||J.samples.push(Ve),{sample:Ve,length:Ae,missing:Me}}var Ue=O.length-T;return(F=new Uint8Array(Ue)).set(O.subarray(T,O.length),0),{sample:{unit:F,pts:q},length:Ue,missing:-1}}function L(J,O){return L=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(T,P){return T.__proto__=P,T},L(J,O)}let oe=function(J){var O,T;function P(F,q){var Y;return(Y=J.call(this)||this).observer=void 0,Y.config=void 0,Y.observer=F,Y.config=q,Y}T=J,(O=P).prototype=Object.create(T.prototype),O.prototype.constructor=O,L(O,T);var D=P.prototype;return D.resetInitSegment=function(F,q,Y,he){J.prototype.resetInitSegment.call(this,F,q,Y,he),this._audioTrack={container:"audio/adts",type:"audio",id:2,pid:-1,sequenceNumber:0,segmentCodec:"aac",samples:[],manifestCodec:q,duration:he,inputTimeScale:9e4,dropped:0}},P.probe=function(F){if(!F)return!1;for(var q=(w.getID3Data(F,0)||[]).length,Y=F.length;q<Y;q++)if(He(F,q))return z.logger.log("ADTS sync word found !"),!0;return!1},D.canParse=function(F,q){return function(Y,he){return function(Le,Ae){return Ae+5<Le.length}(Y,he)&&ne(Y,he)&&be(Y,he)<=Y.length-he}(F,q)},D.appendFrame=function(F,q,Y){K(F,this.observer,q,Y,F.manifestCodec);var he=M(F,q,Y,this.basePTS,this.frameIndex);if(he&&he.missing===0)return he},P}(ce);var ye=/\/emsg[-/]ID3/i;let W=function(){function J(T,P){this.remainderData=null,this.timeOffset=0,this.config=void 0,this.videoTrack=void 0,this.audioTrack=void 0,this.id3Track=void 0,this.txtTrack=void 0,this.config=P}var O=J.prototype;return O.resetTimeStamp=function(){},O.resetInitSegment=function(T,P,D,F){var q=this.videoTrack=ve("video",1),Y=this.audioTrack=ve("audio",1),he=this.txtTrack=ve("text",1);if(this.id3Track=ve("id3",1),this.timeOffset=0,T&&T.byteLength){var Le=(0,Z.parseInitSegment)(T);if(Le.video){var Ae=Le.video,Me=Ae.id,Ve=Ae.timescale,Ue=Ae.codec;q.id=Me,q.timescale=he.timescale=Ve,q.codec=Ue}if(Le.audio){var Qe=Le.audio,ot=Qe.id,bt=Qe.timescale,We=Qe.codec;Y.id=ot,Y.timescale=bt,Y.codec=We}he.id=Z.RemuxerTrackIdConfig.text,q.sampleDuration=0,q.duration=Y.duration=F}},O.resetContiguity=function(){},J.probe=function(T){return T=T.length>16384?T.subarray(0,16384):T,(0,Z.findBox)(T,["moof"]).length>0},O.demux=function(T,P){this.timeOffset=P;var D=T,F=this.videoTrack,q=this.txtTrack;if(this.config.progressive){this.remainderData&&(D=(0,Z.appendUint8Array)(this.remainderData,T));var Y=(0,Z.segmentValidRange)(D);this.remainderData=Y.remainder,F.samples=Y.valid||new Uint8Array}else F.samples=D;var he=this.extractID3Track(F,P);return q.samples=(0,Z.parseSamples)(P,F),{videoTrack:F,audioTrack:this.audioTrack,id3Track:he,textTrack:this.txtTrack}},O.flush=function(){var T=this.timeOffset,P=this.videoTrack,D=this.txtTrack;P.samples=this.remainderData||new Uint8Array,this.remainderData=null;var F=this.extractID3Track(P,this.timeOffset);return D.samples=(0,Z.parseSamples)(T,P),{videoTrack:P,audioTrack:ve(),id3Track:F,textTrack:ve()}},O.extractID3Track=function(T,P){var D=this.id3Track;if(T.samples.length){var F=(0,Z.findBox)(T.samples,["emsg"]);F&&F.forEach(function(q){var Y=(0,Z.parseEmsg)(q);if(ye.test(Y.schemeIdUri)){var he=(0,p.isFiniteNumber)(Y.presentationTime)?Y.presentationTime/Y.timeScale:P+Y.presentationTimeDelta/Y.timeScale,Le=Y.eventDuration===4294967295?Number.POSITIVE_INFINITY:Y.eventDuration/Y.timeScale;Le<=.001&&(Le=Number.POSITIVE_INFINITY);var Ae=Y.payload;D.samples.push({data:Ae,len:Ae.byteLength,dts:he,pts:he,type:k.MetadataSchema.emsg,duration:Le})}})}return D},O.demuxSampleAes=function(T,P,D){return Promise.reject(new Error("The MP4 demuxer does not support SAMPLE-AES decryption"))},O.destroy=function(){},J}();var V=null,we=[32,64,96,128,160,192,224,256,288,320,352,384,416,448,32,48,56,64,80,96,112,128,160,192,224,256,320,384,32,40,48,56,64,80,96,112,128,160,192,224,256,320,32,48,56,64,80,96,112,128,144,160,176,192,224,256,8,16,24,32,40,48,56,64,80,96,112,128,144,160],Re=[44100,48e3,32e3,22050,24e3,16e3,11025,12e3,8e3],Ce=[[0,72,144,12],[0,0,0,0],[0,72,144,12],[0,144,144,12]],ge=[0,1,1,4];function qe(J,O,T,P,D){if(!(T+24>O.length)){var F=tt(O,T);if(F&&T+F.frameLength<=O.length){var q=P+D*(9e4*F.samplesPerFrame/F.sampleRate),Y={unit:O.subarray(T,T+F.frameLength),pts:q,dts:q};return J.config=[],J.channelCount=F.channelCount,J.samplerate=F.sampleRate,J.samples.push(Y),{sample:Y,length:F.frameLength,missing:0}}}}function tt(J,O){var T=J[O+1]>>3&3,P=J[O+1]>>1&3,D=J[O+2]>>4&15,F=J[O+2]>>2&3;if(T!==1&&D!==0&&D!==15&&F!==3){var q=J[O+2]>>1&1,Y=J[O+3]>>6,he=1e3*we[14*(T===3?3-P:P===3?3:4)+D-1],Le=Re[3*(T===3?0:T===2?1:2)+F],Ae=Y===3?1:2,Me=Ce[T][P],Ve=ge[P],Ue=8*Me*Ve,Qe=Math.floor(Me*he/Le+q)*Ve;if(V===null){var ot=(navigator.userAgent||"").match(/Chrome\/(\d+)/i);V=ot?parseInt(ot[1]):0}return!!V&&V<=87&&P===2&&he>=224e3&&Y===0&&(J[O+3]=128|J[O+3]),{sampleRate:Le,channelCount:Ae,frameLength:Qe,samplesPerFrame:Ue}}}function ee(J,O){return J[O]===255&&(224&J[O+1])==224&&(6&J[O+1])!=0}function ue(J,O){return O+1<J.length&&ee(J,O)}function ie(J,O){if(O+1<J.length&&ee(J,O)){var T=tt(J,O),P=4;T!=null&&T.frameLength&&(P=T.frameLength);var D=O+P;return D===J.length||ue(J,D)}return!1}let Oe=function(){function J(T){this.data=void 0,this.bytesAvailable=void 0,this.word=void 0,this.bitsAvailable=void 0,this.data=T,this.bytesAvailable=T.byteLength,this.word=0,this.bitsAvailable=0}var O=J.prototype;return O.loadWord=function(){var T=this.data,P=this.bytesAvailable,D=T.byteLength-P,F=new Uint8Array(4),q=Math.min(4,P);if(q===0)throw new Error("no bytes available");F.set(T.subarray(D,D+q)),this.word=new DataView(F.buffer).getUint32(0),this.bitsAvailable=8*q,this.bytesAvailable-=q},O.skipBits=function(T){var P;T=Math.min(T,8*this.bytesAvailable+this.bitsAvailable),this.bitsAvailable>T?(this.word<<=T,this.bitsAvailable-=T):(T-=this.bitsAvailable,T-=(P=T>>3)<<3,this.bytesAvailable-=P,this.loadWord(),this.word<<=T,this.bitsAvailable-=T)},O.readBits=function(T){var P=Math.min(this.bitsAvailable,T),D=this.word>>>32-P;if(T>32&&z.logger.error("Cannot read more than 32 bits at a time"),this.bitsAvailable-=P,this.bitsAvailable>0)this.word<<=P;else{if(!(this.bytesAvailable>0))throw new Error("no bits available");this.loadWord()}return(P=T-P)>0&&this.bitsAvailable?D<<P|this.readBits(P):D},O.skipLZ=function(){var T;for(T=0;T<this.bitsAvailable;++T)if((this.word&2147483648>>>T)!=0)return this.word<<=T,this.bitsAvailable-=T,T;return this.loadWord(),T+this.skipLZ()},O.skipUEG=function(){this.skipBits(1+this.skipLZ())},O.skipEG=function(){this.skipBits(1+this.skipLZ())},O.readUEG=function(){var T=this.skipLZ();return this.readBits(T+1)-1},O.readEG=function(){var T=this.readUEG();return 1&T?1+T>>>1:-1*(T>>>1)},O.readBoolean=function(){return this.readBits(1)===1},O.readUByte=function(){return this.readBits(8)},O.readUShort=function(){return this.readBits(16)},O.readUInt=function(){return this.readBits(32)},O.skipScalingList=function(T){for(var P=8,D=8,F=0;F<T;F++)D!==0&&(D=(P+this.readEG()+256)%256),P=D===0?P:D},O.readSPS=function(){var T,P,D,F=0,q=0,Y=0,he=0,Le=this.readUByte.bind(this),Ae=this.readBits.bind(this),Me=this.readUEG.bind(this),Ve=this.readBoolean.bind(this),Ue=this.skipBits.bind(this),Qe=this.skipEG.bind(this),ot=this.skipUEG.bind(this),bt=this.skipScalingList.bind(this);Le();var We=Le();if(Ae(5),Ue(3),Le(),ot(),We===100||We===110||We===122||We===244||We===44||We===83||We===86||We===118||We===128){var Lt=Me();if(Lt===3&&Ue(1),ot(),ot(),Ue(1),Ve())for(P=Lt!==3?8:12,D=0;D<P;D++)Ve()&&bt(D<6?16:64)}ot();var Qt=Me();if(Qt===0)Me();else if(Qt===1)for(Ue(1),Qe(),Qe(),T=Me(),D=0;D<T;D++)Qe();ot(),Ue(1);var Ot=Me(),xt=Me(),Ut=Ae(1);Ut===0&&Ue(1),Ue(1),Ve()&&(F=Me(),q=Me(),Y=Me(),he=Me());var Ze=[1,1];if(Ve()&&Ve())switch(Le()){case 1:Ze=[1,1];break;case 2:Ze=[12,11];break;case 3:Ze=[10,11];break;case 4:Ze=[16,11];break;case 5:Ze=[40,33];break;case 6:Ze=[24,11];break;case 7:Ze=[20,11];break;case 8:Ze=[32,11];break;case 9:Ze=[80,33];break;case 10:Ze=[18,11];break;case 11:Ze=[15,11];break;case 12:Ze=[64,33];break;case 13:Ze=[160,99];break;case 14:Ze=[4,3];break;case 15:Ze=[3,2];break;case 16:Ze=[2,1];break;case 255:Ze=[Le()<<8|Le(),Le()<<8|Le()]}return{width:Math.ceil(16*(Ot+1)-2*F-2*q),height:(2-Ut)*(xt+1)*16-(Ut?2:4)*(Y+he),pixelRatio:Ze}},O.readSliceType=function(){return this.readUByte(),this.readUEG(),this.readUEG()},J}(),xe=function(){function J(T,P,D){this.keyData=void 0,this.decrypter=void 0,this.keyData=D,this.decrypter=new R.default(P,{removePKCS7Padding:!1})}var O=J.prototype;return O.decryptBuffer=function(T){return this.decrypter.decrypt(T,this.keyData.key.buffer,this.keyData.iv.buffer)},O.decryptAacSample=function(T,P,D){var F=this,q=T[P].unit;if(!(q.length<=16)){var Y=q.subarray(16,q.length-q.length%16),he=Y.buffer.slice(Y.byteOffset,Y.byteOffset+Y.length);this.decryptBuffer(he).then(function(Le){var Ae=new Uint8Array(Le);q.set(Ae,16),F.decrypter.isSync()||F.decryptAacSamples(T,P+1,D)})}},O.decryptAacSamples=function(T,P,D){for(;;P++){if(P>=T.length)return void D();if(!(T[P].unit.length<32||(this.decryptAacSample(T,P,D),this.decrypter.isSync())))return}},O.getAvcEncryptedData=function(T){for(var P=16*Math.floor((T.length-48)/160)+16,D=new Int8Array(P),F=0,q=32;q<T.length-16;q+=160,F+=16)D.set(T.subarray(q,q+16),F);return D},O.getAvcDecryptedUnit=function(T,P){for(var D=new Uint8Array(P),F=0,q=32;q<T.length-16;q+=160,F+=16)T.set(D.subarray(F,F+16),q);return T},O.decryptAvcSample=function(T,P,D,F,q){var Y=this,he=(0,Z.discardEPB)(q.data),Le=this.getAvcEncryptedData(he);this.decryptBuffer(Le.buffer).then(function(Ae){q.data=Y.getAvcDecryptedUnit(he,Ae),Y.decrypter.isSync()||Y.decryptAvcSamples(T,P,D+1,F)})},O.decryptAvcSamples=function(T,P,D,F){if(T instanceof Uint8Array)throw new Error("Cannot decrypt samples of type Uint8Array");for(;;P++,D=0){if(P>=T.length)return void F();for(var q=T[P].units;!(D>=q.length);D++){var Y=q[D];if(!(Y.data.length<=48||Y.type!==1&&Y.type!==5||(this.decryptAvcSample(T,P,D,F,Y),this.decrypter.isSync())))return}}},J}();function Ne(){return Ne=Object.assign?Object.assign.bind():function(J){for(var O=1;O<arguments.length;O++){var T=arguments[O];for(var P in T)Object.prototype.hasOwnProperty.call(T,P)&&(J[P]=T[P])}return J},Ne.apply(this,arguments)}var Be=188;function je(J,O,T,P){return{key:J,frame:!1,pts:O,dts:T,units:[],debug:P,length:0}}function pe(J,O){return(31&J[O+10])<<8|J[O+11]}function Ie(J,O,T,P){var D={audio:-1,avc:-1,id3:-1,segmentCodec:"aac"},F=O+3+((15&J[O+1])<<8|J[O+2])-4;for(O+=12+((15&J[O+10])<<8|J[O+11]);O<F;){var q=(31&J[O+1])<<8|J[O+2];switch(J[O]){case 207:if(!P){z.logger.log("ADTS AAC with AES-128-CBC frame encryption found in unencrypted stream");break}case 15:D.audio===-1&&(D.audio=q);break;case 21:D.id3===-1&&(D.id3=q);break;case 219:if(!P){z.logger.log("H.264 with AES-128-CBC slice encryption found in unencrypted stream");break}case 27:D.avc===-1&&(D.avc=q);break;case 3:case 4:T.mpeg!==!0&&T.mp3!==!0?z.logger.log("MPEG audio found, not supported in this browser"):D.audio===-1&&(D.audio=q,D.segmentCodec="mp3");break;case 36:z.logger.warn("Unsupported HEVC stream type found")}O+=5+((15&J[O+3])<<8|J[O+4])}return D}function Ye(J){var O,T,P,D,F,q=0,Y=J.data;if(!J||J.size===0)return null;for(;Y[0].length<19&&Y.length>1;){var he=new Uint8Array(Y[0].length+Y[1].length);he.set(Y[0]),he.set(Y[1],Y[0].length),Y[0]=he,Y.splice(1,1)}if(((O=Y[0])[0]<<16)+(O[1]<<8)+O[2]===1){if((T=(O[4]<<8)+O[5])&&T>J.size-6)return null;var Le=O[7];192&Le&&(D=536870912*(14&O[9])+4194304*(255&O[10])+16384*(254&O[11])+128*(255&O[12])+(254&O[13])/2,64&Le?D-(F=536870912*(14&O[14])+4194304*(255&O[15])+16384*(254&O[16])+128*(255&O[17])+(254&O[18])/2)>54e5&&(z.logger.warn(Math.round((D-F)/9e4)+"s delta between PTS and DTS, align them"),D=F):F=D);var Ae=(P=O[8])+9;if(J.size<=Ae)return null;J.size-=Ae;for(var Me=new Uint8Array(J.size),Ve=0,Ue=Y.length;Ve<Ue;Ve++){var Qe=(O=Y[Ve]).byteLength;if(Ae){if(Ae>Qe){Ae-=Qe;continue}O=O.subarray(Ae),Qe-=Ae,Ae=0}Me.set(O,q),q+=Qe}return T&&(T-=P+3),{data:Me,pts:D,dts:F,len:T}}return null}function rt(J,O){if(J.units.length&&J.frame){if(J.pts===void 0){var T=O.samples,P=T.length;if(!P)return void O.dropped++;var D=T[P-1];J.pts=D.pts,J.dts=D.dts}O.samples.push(J)}J.debug.length&&z.logger.log(J.pts+"/"+J.dts+":"+J.debug)}let yt=function(){function J(T,P,D){this.observer=void 0,this.config=void 0,this.typeSupported=void 0,this.sampleAes=null,this.pmtParsed=!1,this.audioCodec=void 0,this.videoCodec=void 0,this._duration=0,this._pmtId=-1,this._avcTrack=void 0,this._audioTrack=void 0,this._id3Track=void 0,this._txtTrack=void 0,this.aacOverFlow=null,this.avcSample=null,this.remainderData=null,this.observer=T,this.config=P,this.typeSupported=D}J.probe=function(T){var P=J.syncOffset(T);return P>0&&z.logger.warn("MPEG2-TS detected but first sync word found @ offset "+P),P!==-1},J.syncOffset=function(T){for(var P=Math.min(940,T.length-376)+1,D=0;D<P;){if(T[D]===71&&T[D+Be]===71)return D;D++}return-1},J.createTrack=function(T,P){return{container:T==="video"||T==="audio"?"video/mp2t":void 0,type:T,id:Z.RemuxerTrackIdConfig[T],pid:-1,inputTimeScale:9e4,sequenceNumber:0,samples:[],dropped:0,duration:T==="audio"?P:void 0}};var O=J.prototype;return O.resetInitSegment=function(T,P,D,F){this.pmtParsed=!1,this._pmtId=-1,this._avcTrack=J.createTrack("video"),this._audioTrack=J.createTrack("audio",F),this._id3Track=J.createTrack("id3"),this._txtTrack=J.createTrack("text"),this._audioTrack.segmentCodec="aac",this.aacOverFlow=null,this.avcSample=null,this.remainderData=null,this.audioCodec=P,this.videoCodec=D,this._duration=F},O.resetTimeStamp=function(){},O.resetContiguity=function(){var T=this._audioTrack,P=this._avcTrack,D=this._id3Track;T&&(T.pesData=null),P&&(P.pesData=null),D&&(D.pesData=null),this.aacOverFlow=null,this.avcSample=null,this.remainderData=null},O.demux=function(T,P,D,F){var q;D===void 0&&(D=!1),F===void 0&&(F=!1),D||(this.sampleAes=null);var Y=this._avcTrack,he=this._audioTrack,Le=this._id3Track,Ae=this._txtTrack,Me=Y.pid,Ve=Y.pesData,Ue=he.pid,Qe=Le.pid,ot=he.pesData,bt=Le.pesData,We=null,Lt=this.pmtParsed,Qt=this._pmtId,Ot=T.length;if(this.remainderData&&(Ot=(T=(0,Z.appendUint8Array)(this.remainderData,T)).length,this.remainderData=null),Ot<Be&&!F)return this.remainderData=T,{audioTrack:he,videoTrack:Y,id3Track:Le,textTrack:Ae};var xt=Math.max(0,J.syncOffset(T));(Ot-=(Ot-xt)%Be)<T.byteLength&&!F&&(this.remainderData=new Uint8Array(T.buffer,Ot,T.buffer.byteLength-Ot));for(var Ut=0,Ze=xt;Ze<Ot;Ze+=Be)if(T[Ze]===71){var rr=!!(64&T[Ze+1]),Er=((31&T[Ze+1])<<8)+T[Ze+2],Ft=void 0;if((48&T[Ze+3])>>4>1){if((Ft=Ze+5+T[Ze+4])===Ze+Be)continue}else Ft=Ze+4;switch(Er){case Me:rr&&(Ve&&(q=Ye(Ve))&&this.parseAVCPES(Y,Ae,q,!1),Ve={data:[],size:0}),Ve&&(Ve.data.push(T.subarray(Ft,Ze+Be)),Ve.size+=Ze+Be-Ft);break;case Ue:if(rr){if(ot&&(q=Ye(ot)))switch(he.segmentCodec){case"aac":this.parseAACPES(he,q);break;case"mp3":this.parseMPEGPES(he,q)}ot={data:[],size:0}}ot&&(ot.data.push(T.subarray(Ft,Ze+Be)),ot.size+=Ze+Be-Ft);break;case Qe:rr&&(bt&&(q=Ye(bt))&&this.parseID3PES(Le,q),bt={data:[],size:0}),bt&&(bt.data.push(T.subarray(Ft,Ze+Be)),bt.size+=Ze+Be-Ft);break;case 0:rr&&(Ft+=T[Ft]+1),Qt=this._pmtId=pe(T,Ft);break;case Qt:rr&&(Ft+=T[Ft]+1);var Vt=Ie(T,Ft,this.typeSupported,D);(Me=Vt.avc)>0&&(Y.pid=Me),(Ue=Vt.audio)>0&&(he.pid=Ue,he.segmentCodec=Vt.segmentCodec),(Qe=Vt.id3)>0&&(Le.pid=Qe),We===null||Lt||(z.logger.log("unknown PID '"+We+"' in TS found"),We=null,Ze=xt-188),Lt=this.pmtParsed=!0;break;case 17:case 8191:break;default:We=Er}}else Ut++;Ut>0&&this.observer.emit(B.Events.ERROR,B.Events.ERROR,{type:$.ErrorTypes.MEDIA_ERROR,details:$.ErrorDetails.FRAG_PARSING_ERROR,fatal:!1,reason:"Found "+Ut+" TS packet/s that do not start with 0x47"}),Y.pesData=Ve,he.pesData=ot,Le.pesData=bt;var hr={audioTrack:he,videoTrack:Y,id3Track:Le,textTrack:Ae};return F&&this.extractRemainingSamples(hr),hr},O.flush=function(){var T,P=this.remainderData;return this.remainderData=null,T=P?this.demux(P,-1,!1,!0):{videoTrack:this._avcTrack,audioTrack:this._audioTrack,id3Track:this._id3Track,textTrack:this._txtTrack},this.extractRemainingSamples(T),this.sampleAes?this.decrypt(T,this.sampleAes):T},O.extractRemainingSamples=function(T){var P,D=T.audioTrack,F=T.videoTrack,q=T.id3Track,Y=T.textTrack,he=F.pesData,Le=D.pesData,Ae=q.pesData;if(he&&(P=Ye(he))?(this.parseAVCPES(F,Y,P,!0),F.pesData=null):F.pesData=he,Le&&(P=Ye(Le))){switch(D.segmentCodec){case"aac":this.parseAACPES(D,P);break;case"mp3":this.parseMPEGPES(D,P)}D.pesData=null}else Le!=null&&Le.size&&z.logger.log("last AAC PES packet truncated,might overlap between fragments"),D.pesData=Le;Ae&&(P=Ye(Ae))?(this.parseID3PES(q,P),q.pesData=null):q.pesData=Ae},O.demuxSampleAes=function(T,P,D){var F=this.demux(T,D,!0,!this.config.progressive),q=this.sampleAes=new xe(this.observer,this.config,P);return this.decrypt(F,q)},O.decrypt=function(T,P){return new Promise(function(D){var F=T.audioTrack,q=T.videoTrack;F.samples&&F.segmentCodec==="aac"?P.decryptAacSamples(F.samples,0,function(){q.samples?P.decryptAvcSamples(q.samples,0,0,function(){D(T)}):D(T)}):q.samples&&P.decryptAvcSamples(q.samples,0,0,function(){D(T)})})},O.destroy=function(){this._duration=0},O.parseAVCPES=function(T,P,D,F){var q,Y=this,he=this.parseAVCNALu(T,D.data),Le=this.avcSample,Ae=!1;D.data=null,Le&&he.length&&!T.audFound&&(rt(Le,T),Le=this.avcSample=je(!1,D.pts,D.dts,"")),he.forEach(function(Me){switch(Me.type){case 1:q=!0,Le||(Le=Y.avcSample=je(!0,D.pts,D.dts,"")),Le.frame=!0;var Ve=Me.data;if(Ae&&Ve.length>4){var Ue=new Oe(Ve).readSliceType();Ue!==2&&Ue!==4&&Ue!==7&&Ue!==9||(Le.key=!0)}break;case 5:q=!0,Le||(Le=Y.avcSample=je(!0,D.pts,D.dts,"")),Le.key=!0,Le.frame=!0;break;case 6:q=!0,(0,Z.parseSEIMessageFromNALu)(Me.data,1,D.pts,P.samples);break;case 7:if(q=!0,Ae=!0,!T.sps){var Qe=new Oe(Me.data).readSPS();T.width=Qe.width,T.height=Qe.height,T.pixelRatio=Qe.pixelRatio,T.sps=[Me.data],T.duration=Y._duration;for(var ot=Me.data.subarray(1,4),bt="avc1.",We=0;We<3;We++){var Lt=ot[We].toString(16);Lt.length<2&&(Lt="0"+Lt),bt+=Lt}T.codec=bt}break;case 8:q=!0,T.pps||(T.pps=[Me.data]);break;case 9:q=!1,T.audFound=!0,Le&&rt(Le,T),Le=Y.avcSample=je(!1,D.pts,D.dts,"");break;case 12:q=!0;break;default:q=!1,Le&&(Le.debug+="unknown NAL "+Me.type+" ")}Le&&q&&Le.units.push(Me)}),F&&Le&&(rt(Le,T),this.avcSample=null)},O.getLastNalUnit=function(T){var P,D,F=this.avcSample;if(F&&F.units.length!==0||(F=T[T.length-1]),(P=F)!==null&&P!==void 0&&P.units){var q=F.units;D=q[q.length-1]}return D},O.parseAVCNALu=function(T,P){var D,F,q=P.byteLength,Y=T.naluState||0,he=Y,Le=[],Ae=0,Me=-1,Ve=0;for(Y===-1&&(Me=0,Ve=31&P[0],Y=0,Ae=1);Ae<q;)if(D=P[Ae++],Y)if(Y!==1)if(D)if(D===1){if(Me>=0){var Ue={data:P.subarray(Me,Ae-Y-1),type:Ve};Le.push(Ue)}else{var Qe=this.getLastNalUnit(T.samples);if(Qe&&(he&&Ae<=4-he&&Qe.state&&(Qe.data=Qe.data.subarray(0,Qe.data.byteLength-he)),(F=Ae-Y-1)>0)){var ot=new Uint8Array(Qe.data.byteLength+F);ot.set(Qe.data,0),ot.set(P.subarray(0,F),Qe.data.byteLength),Qe.data=ot,Qe.state=0}}Ae<q?(Me=Ae,Ve=31&P[Ae],Y=0):Y=-1}else Y=0;else Y=3;else Y=D?0:2;else Y=D?0:1;if(Me>=0&&Y>=0){var bt={data:P.subarray(Me,q),type:Ve,state:Y};Le.push(bt)}if(Le.length===0){var We=this.getLastNalUnit(T.samples);if(We){var Lt=new Uint8Array(We.data.byteLength+P.byteLength);Lt.set(We.data,0),Lt.set(P,We.data.byteLength),We.data=Lt}}return T.naluState=Y,Le},O.parseAACPES=function(T,P){var D,F,q,Y,he,Le=0,Ae=this.aacOverFlow,Me=P.data;if(Ae){this.aacOverFlow=null;var Ve=Ae.missing,Ue=Ae.sample.unit.byteLength;if(Ve===-1){var Qe=new Uint8Array(Ue+Me.byteLength);Qe.set(Ae.sample.unit,0),Qe.set(Me,Ue),Me=Qe}else{var ot=Ue-Ve;Ae.sample.unit.set(Me.subarray(0,Ve),ot),T.samples.push(Ae.sample),Le=Ae.missing}}for(D=Le,F=Me.length;D<F-1&&!ke(Me,D);D++);if(D===Le||(D<F-1?(q="AAC PES did not start with ADTS header,offset:"+D,Y=!1):(q="no ADTS header found in AAC PES",Y=!0),z.logger.warn("parsing error:"+q),this.observer.emit(B.Events.ERROR,B.Events.ERROR,{type:$.ErrorTypes.MEDIA_ERROR,details:$.ErrorDetails.FRAG_PARSING_ERROR,fatal:Y,reason:q}),!Y)){if(K(T,this.observer,Me,D,this.audioCodec),P.pts!==void 0)he=P.pts;else{if(!Ae)return void z.logger.warn("[tsdemuxer]: AAC PES unknown PTS");var bt=E(T.samplerate);he=Ae.sample.pts+bt}for(var We,Lt=0;D<F;){if(D+=(We=M(T,Me,D,he,Lt)).length,We.missing){this.aacOverFlow=We;break}for(Lt++;D<F-1&&!ke(Me,D);D++);}}},O.parseMPEGPES=function(T,P){var D=P.data,F=D.length,q=0,Y=0,he=P.pts;if(he!==void 0)for(;Y<F;)if(ue(D,Y)){var Le=qe(T,D,Y,he,q);if(!Le)break;Y+=Le.length,q++}else Y++;else z.logger.warn("[tsdemuxer]: MPEG PES unknown PTS")},O.parseID3PES=function(T,P){if(P.pts!==void 0){var D=Ne({},P,{type:this._avcTrack?k.MetadataSchema.emsg:k.MetadataSchema.audioId3,duration:Number.POSITIVE_INFINITY});T.samples.push(D)}else z.logger.warn("[tsdemuxer]: ID3 PES unknown PTS")},J}();function ht(J,O){return ht=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(T,P){return T.__proto__=P,T},ht(J,O)}let It=function(J){var O,T;function P(){return J.apply(this,arguments)||this}T=J,(O=P).prototype=Object.create(T.prototype),O.prototype.constructor=O,ht(O,T);var D=P.prototype;return D.resetInitSegment=function(F,q,Y,he){J.prototype.resetInitSegment.call(this,F,q,Y,he),this._audioTrack={container:"audio/mpeg",type:"audio",id:2,pid:-1,sequenceNumber:0,segmentCodec:"mp3",samples:[],manifestCodec:q,duration:he,inputTimeScale:9e4,dropped:0}},P.probe=function(F){if(!F)return!1;for(var q=(w.getID3Data(F,0)||[]).length,Y=F.length;q<Y;q++)if(ie(F,q))return z.logger.log("MPEG Audio sync word found !"),!0;return!1},D.canParse=function(F,q){return function(Y,he){return ee(Y,he)&&4<=Y.length-he}(F,q)},D.appendFrame=function(F,q,Y){if(this.basePTS!==null)return qe(F,q,Y,this.basePTS,this.frameIndex)},P}(ce);var Dt=N(524),St=N(923);function kt(J,O){var T=J==null?void 0:J.codec;return T&&T.length>4?T:T==="hvc1"||T==="hev1"?"hvc1.1.c.L120.90":T==="av01"?"av01.0.04M.08":T==="avc1"||O===St.ElementaryStreamTypes.VIDEO?"avc1.42e01e":"mp4a.40.5"}let gt=function(){function J(){this.emitInitSegment=!1,this.audioCodec=void 0,this.videoCodec=void 0,this.initData=void 0,this.initPTS=void 0,this.initTracks=void 0,this.lastEndTime=null}var O=J.prototype;return O.destroy=function(){},O.resetTimeStamp=function(T){this.initPTS=T,this.lastEndTime=null},O.resetNextTimestamp=function(){this.lastEndTime=null},O.resetInitSegment=function(T,P,D,F){this.audioCodec=P,this.videoCodec=D,this.generateInitSegment((0,Z.patchEncyptionData)(T,F)),this.emitInitSegment=!0},O.generateInitSegment=function(T){var P=this.audioCodec,D=this.videoCodec;if(!T||!T.byteLength)return this.initTracks=void 0,void(this.initData=void 0);var F=this.initData=(0,Z.parseInitSegment)(T);P||(P=kt(F.audio,St.ElementaryStreamTypes.AUDIO)),D||(D=kt(F.video,St.ElementaryStreamTypes.VIDEO));var q={};F.audio&&F.video?q.audiovideo={container:"video/mp4",codec:P+","+D,initSegment:T,id:"main"}:F.audio?q.audio={container:"audio/mp4",codec:P,initSegment:T,id:"audio"}:F.video?q.video={container:"video/mp4",codec:D,initSegment:T,id:"main"}:z.logger.warn("[passthrough-remuxer.ts]: initSegment does not contain moov or trak boxes."),this.initTracks=q},O.remux=function(T,P,D,F,q){var Y,he=this.initPTS,Le=this.lastEndTime,Ae={audio:void 0,video:void 0,text:F,id3:D,initSegment:void 0};(0,p.isFiniteNumber)(Le)||(Le=this.lastEndTime=q||0);var Me=P.samples;if(!Me||!Me.length)return Ae;var Ve={initPTS:void 0,timescale:1},Ue=this.initData;if(Ue&&Ue.length||(this.generateInitSegment(Me),Ue=this.initData),!Ue||!Ue.length)return z.logger.warn("[passthrough-remuxer.ts]: Failed to generate initSegment."),Ae;this.emitInitSegment&&(Ve.tracks=this.initTracks,this.emitInitSegment=!1);var Qe=(0,Z.getStartDTS)(Ue,Me);(0,p.isFiniteNumber)(he)||(this.initPTS=Ve.initPTS=he=Qe-q);var ot=(0,Z.getDuration)(Me,Ue),bt=T?Qe-he:Le,We=bt+ot;(0,Z.offsetStartDTS)(Ue,Me,he),ot>0?this.lastEndTime=We:(z.logger.warn("Duration parsed from mp4 should be greater than zero"),this.resetNextTimestamp());var Lt=!!Ue.audio,Qt=!!Ue.video,Ot="";Lt&&(Ot+="audio"),Qt&&(Ot+="video");var xt={data1:Me,startPTS:bt,startDTS:bt,endPTS:We,endDTS:We,type:Ot,hasAudio:Lt,hasVideo:Qt,nb:1,dropped:0};Ae.audio=xt.type==="audio"?xt:void 0,Ae.video=xt.type!=="audio"?xt:void 0,Ae.initSegment=Ve;var Ut=(Y=this.initPTS)!=null?Y:0;return Ae.id3=(0,Dt.flushTextTrackMetadataCueSamples)(D,q,Ut,Ut),F.samples.length&&(Ae.text=(0,Dt.flushTextTrackUserdataCueSamples)(F,q,Ut)),Ae},J}();var ut;try{ut=self.performance.now.bind(self.performance)}catch{z.logger.debug("Unable to use Performance API on this environment"),ut=self.Date.now}var Rt=[{demux:W,remux:gt},{demux:yt,remux:Dt.default},{demux:oe,remux:Dt.default},{demux:It,remux:Dt.default}],Pt=function(){function J(T,P,D,F,q){this.async=!1,this.observer=void 0,this.typeSupported=void 0,this.config=void 0,this.vendor=void 0,this.id=void 0,this.demuxer=void 0,this.remuxer=void 0,this.decrypter=void 0,this.probe=void 0,this.decryptionPromise=null,this.transmuxConfig=void 0,this.currentTransmuxState=void 0,this.observer=T,this.typeSupported=P,this.config=D,this.vendor=F,this.id=q}var O=J.prototype;return O.configure=function(T){this.transmuxConfig=T,this.decrypter&&this.decrypter.reset()},O.push=function(T,P,D,F){var q=this,Y=D.transmuxing;Y.executeStart=ut();var he=new Uint8Array(T),Le=this.currentTransmuxState,Ae=this.transmuxConfig;F&&(this.currentTransmuxState=F);var Me=F||Le,Ve=Me.contiguous,Ue=Me.discontinuity,Qe=Me.trackSwitch,ot=Me.accurateTimeOffset,bt=Me.timeOffset,We=Me.initSegmentChange,Lt=Ae.audioCodec,Qt=Ae.videoCodec,Ot=Ae.defaultInitPts,xt=Ae.duration,Ut=Ae.initSegmentData,Ze=function(wr,cr){var Mt=null;return wr.byteLength>0&&cr!=null&&cr.key!=null&&cr.iv!==null&&cr.method!=null&&(Mt=cr),Mt}(he,P);if(Ze&&Ze.method==="AES-128"){var rr=this.getDecrypter();if(!rr.isSync())return this.decryptionPromise=rr.webCryptoDecrypt(he,Ze.key.buffer,Ze.iv.buffer).then(function(wr){var cr=q.push(wr,null,D);return q.decryptionPromise=null,cr}),this.decryptionPromise;var Er=rr.softwareDecrypt(he,Ze.key.buffer,Ze.iv.buffer);if(!Er)return Y.executeEnd=ut(),jt(D);he=new Uint8Array(Er)}var Ft=this.needsProbing(Ue,Qe);Ft&&this.configureTransmuxer(he),(Ue||Qe||We||Ft)&&this.resetInitSegment(Ut,Lt,Qt,xt,P),(Ue||We||Ft)&&this.resetInitialTimestamp(Ot),Ve||this.resetContiguity();var Vt=this.transmux(he,Ze,bt,ot,D),hr=this.currentTransmuxState;return hr.contiguous=!0,hr.discontinuity=!1,hr.trackSwitch=!1,Y.executeEnd=ut(),Vt},O.flush=function(T){var P=this,D=T.transmuxing;D.executeStart=ut();var F=this.decrypter,q=this.currentTransmuxState,Y=this.decryptionPromise;if(Y)return Y.then(function(){return P.flush(T)});var he=[],Le=q.timeOffset;if(F){var Ae=F.flush();Ae&&he.push(this.push(Ae,null,T))}var Me=this.demuxer,Ve=this.remuxer;if(!Me||!Ve)return this.observer.emit(B.Events.ERROR,B.Events.ERROR,{type:$.ErrorTypes.MEDIA_ERROR,details:$.ErrorDetails.FRAG_PARSING_ERROR,fatal:!0,reason:"no demux matching with content found"}),D.executeEnd=ut(),[jt(T)];var Ue=Me.flush(Le);return zt(Ue)?Ue.then(function(Qe){return P.flushRemux(he,Qe,T),he}):(this.flushRemux(he,Ue,T),he)},O.flushRemux=function(T,P,D){var F=P.audioTrack,q=P.videoTrack,Y=P.id3Track,he=P.textTrack,Le=this.currentTransmuxState,Ae=Le.accurateTimeOffset,Me=Le.timeOffset;z.logger.log("[transmuxer.ts]: Flushed fragment "+D.sn+(D.part>-1?" p: "+D.part:"")+" of level "+D.level);var Ve=this.remuxer.remux(F,q,Y,he,Me,Ae,!0,this.id);T.push({remuxResult:Ve,chunkMeta:D}),D.transmuxing.executeEnd=ut()},O.resetInitialTimestamp=function(T){var P=this.demuxer,D=this.remuxer;P&&D&&(P.resetTimeStamp(T),D.resetTimeStamp(T))},O.resetContiguity=function(){var T=this.demuxer,P=this.remuxer;T&&P&&(T.resetContiguity(),P.resetNextTimestamp())},O.resetInitSegment=function(T,P,D,F,q){var Y=this.demuxer,he=this.remuxer;Y&&he&&(Y.resetInitSegment(T,P,D,F),he.resetInitSegment(T,P,D,q))},O.destroy=function(){this.demuxer&&(this.demuxer.destroy(),this.demuxer=void 0),this.remuxer&&(this.remuxer.destroy(),this.remuxer=void 0)},O.transmux=function(T,P,D,F,q){return P&&P.method==="SAMPLE-AES"?this.transmuxSampleAes(T,P,D,F,q):this.transmuxUnencrypted(T,D,F,q)},O.transmuxUnencrypted=function(T,P,D,F){var q=this.demuxer.demux(T,P,!1,!this.config.progressive),Y=q.audioTrack,he=q.videoTrack,Le=q.id3Track,Ae=q.textTrack;return{remuxResult:this.remuxer.remux(Y,he,Le,Ae,P,D,!1,this.id),chunkMeta:F}},O.transmuxSampleAes=function(T,P,D,F,q){var Y=this;return this.demuxer.demuxSampleAes(T,P,D).then(function(he){return{remuxResult:Y.remuxer.remux(he.audioTrack,he.videoTrack,he.id3Track,he.textTrack,D,F,!1,Y.id),chunkMeta:q}})},O.configureTransmuxer=function(T){for(var P,D=this.config,F=this.observer,q=this.typeSupported,Y=this.vendor,he=0,Le=Rt.length;he<Le;he++)if(Rt[he].demux.probe(T)){P=Rt[he];break}P||(z.logger.warn("Failed to find demuxer by probing frag, treating as mp4 passthrough"),P={demux:W,remux:gt});var Ae=this.demuxer,Me=this.remuxer,Ve=P.remux,Ue=P.demux;Me&&Me instanceof Ve||(this.remuxer=new Ve(F,D,q,Y)),Ae&&Ae instanceof Ue||(this.demuxer=new Ue(F,D,q),this.probe=Ue.probe)},O.needsProbing=function(T,P){return!this.demuxer||!this.remuxer||T||P},O.getDecrypter=function(){var T=this.decrypter;return T||(T=this.decrypter=new R.default(this.config)),T},J}(),jt=function(J){return{remuxResult:{},chunkMeta:J}};function zt(J){return"then"in J&&J.then instanceof Function}var Nt=function(J,O,T,P,D){this.audioCodec=void 0,this.videoCodec=void 0,this.initSegmentData=void 0,this.duration=void 0,this.defaultInitPts=void 0,this.audioCodec=J,this.videoCodec=O,this.initSegmentData=T,this.duration=P,this.defaultInitPts=D},dr=function(J,O,T,P,D,F){this.discontinuity=void 0,this.contiguous=void 0,this.accurateTimeOffset=void 0,this.trackSwitch=void 0,this.timeOffset=void 0,this.initSegmentChange=void 0,this.discontinuity=J,this.contiguous=O,this.accurateTimeOffset=T,this.trackSwitch=P,this.timeOffset=D,this.initSegmentChange=F}},973:(fe,re,N)=>{"use strict";var B,$;N.r(re),N.d(re,{ErrorDetails:()=>$,ErrorTypes:()=>B}),function(R){R.NETWORK_ERROR="networkError",R.MEDIA_ERROR="mediaError",R.KEY_SYSTEM_ERROR="keySystemError",R.MUX_ERROR="muxError",R.OTHER_ERROR="otherError"}(B||(B={})),function(R){R.KEY_SYSTEM_NO_KEYS="keySystemNoKeys",R.KEY_SYSTEM_NO_ACCESS="keySystemNoAccess",R.KEY_SYSTEM_NO_SESSION="keySystemNoSession",R.KEY_SYSTEM_NO_CONFIGURED_LICENSE="keySystemNoConfiguredLicense",R.KEY_SYSTEM_LICENSE_REQUEST_FAILED="keySystemLicenseRequestFailed",R.KEY_SYSTEM_SERVER_CERTIFICATE_REQUEST_FAILED="keySystemServerCertificateRequestFailed",R.KEY_SYSTEM_SERVER_CERTIFICATE_UPDATE_FAILED="keySystemServerCertificateUpdateFailed",R.KEY_SYSTEM_SESSION_UPDATE_FAILED="keySystemSessionUpdateFailed",R.KEY_SYSTEM_STATUS_OUTPUT_RESTRICTED="keySystemStatusOutputRestricted",R.KEY_SYSTEM_STATUS_INTERNAL_ERROR="keySystemStatusInternalError",R.MANIFEST_LOAD_ERROR="manifestLoadError",R.MANIFEST_LOAD_TIMEOUT="manifestLoadTimeOut",R.MANIFEST_PARSING_ERROR="manifestParsingError",R.MANIFEST_INCOMPATIBLE_CODECS_ERROR="manifestIncompatibleCodecsError",R.LEVEL_EMPTY_ERROR="levelEmptyError",R.LEVEL_LOAD_ERROR="levelLoadError",R.LEVEL_LOAD_TIMEOUT="levelLoadTimeOut",R.LEVEL_SWITCH_ERROR="levelSwitchError",R.AUDIO_TRACK_LOAD_ERROR="audioTrackLoadError",R.AUDIO_TRACK_LOAD_TIMEOUT="audioTrackLoadTimeOut",R.SUBTITLE_LOAD_ERROR="subtitleTrackLoadError",R.SUBTITLE_TRACK_LOAD_TIMEOUT="subtitleTrackLoadTimeOut",R.FRAG_LOAD_ERROR="fragLoadError",R.FRAG_LOAD_TIMEOUT="fragLoadTimeOut",R.FRAG_DECRYPT_ERROR="fragDecryptError",R.FRAG_PARSING_ERROR="fragParsingError",R.REMUX_ALLOC_ERROR="remuxAllocError",R.KEY_LOAD_ERROR="keyLoadError",R.KEY_LOAD_TIMEOUT="keyLoadTimeOut",R.BUFFER_ADD_CODEC_ERROR="bufferAddCodecError",R.BUFFER_INCOMPATIBLE_CODECS_ERROR="bufferIncompatibleCodecsError",R.BUFFER_APPEND_ERROR="bufferAppendError",R.BUFFER_APPENDING_ERROR="bufferAppendingError",R.BUFFER_STALLED_ERROR="bufferStalledError",R.BUFFER_FULL_ERROR="bufferFullError",R.BUFFER_SEEK_OVER_HOLE="bufferSeekOverHole",R.BUFFER_NUDGE_ON_STALL="bufferNudgeOnStall",R.INTERNAL_EXCEPTION="internalException",R.INTERNAL_ABORTED="aborted",R.UNKNOWN="unknown"}($||($={}))},851:(fe,re,N)=>{"use strict";var B;N.r(re),N.d(re,{Events:()=>B}),function($){$.MEDIA_ATTACHING="hlsMediaAttaching",$.MEDIA_ATTACHED="hlsMediaAttached",$.MEDIA_DETACHING="hlsMediaDetaching",$.MEDIA_DETACHED="hlsMediaDetached",$.BUFFER_RESET="hlsBufferReset",$.BUFFER_CODECS="hlsBufferCodecs",$.BUFFER_CREATED="hlsBufferCreated",$.BUFFER_APPENDING="hlsBufferAppending",$.BUFFER_APPENDED="hlsBufferAppended",$.BUFFER_EOS="hlsBufferEos",$.BUFFER_FLUSHING="hlsBufferFlushing",$.BUFFER_FLUSHED="hlsBufferFlushed",$.MANIFEST_LOADING="hlsManifestLoading",$.MANIFEST_LOADED="hlsManifestLoaded",$.MANIFEST_PARSED="hlsManifestParsed",$.LEVEL_SWITCHING="hlsLevelSwitching",$.LEVEL_SWITCHED="hlsLevelSwitched",$.LEVEL_LOADING="hlsLevelLoading",$.LEVEL_LOADED="hlsLevelLoaded",$.LEVEL_UPDATED="hlsLevelUpdated",$.LEVEL_PTS_UPDATED="hlsLevelPtsUpdated",$.LEVELS_UPDATED="hlsLevelsUpdated",$.AUDIO_TRACKS_UPDATED="hlsAudioTracksUpdated",$.AUDIO_TRACK_SWITCHING="hlsAudioTrackSwitching",$.AUDIO_TRACK_SWITCHED="hlsAudioTrackSwitched",$.AUDIO_TRACK_LOADING="hlsAudioTrackLoading",$.AUDIO_TRACK_LOADED="hlsAudioTrackLoaded",$.SUBTITLE_TRACKS_UPDATED="hlsSubtitleTracksUpdated",$.SUBTITLE_TRACKS_CLEARED="hlsSubtitleTracksCleared",$.SUBTITLE_TRACK_SWITCH="hlsSubtitleTrackSwitch",$.SUBTITLE_TRACK_LOADING="hlsSubtitleTrackLoading",$.SUBTITLE_TRACK_LOADED="hlsSubtitleTrackLoaded",$.SUBTITLE_FRAG_PROCESSED="hlsSubtitleFragProcessed",$.CUES_PARSED="hlsCuesParsed",$.NON_NATIVE_TEXT_TRACKS_FOUND="hlsNonNativeTextTracksFound",$.INIT_PTS_FOUND="hlsInitPtsFound",$.FRAG_LOADING="hlsFragLoading",$.FRAG_LOAD_EMERGENCY_ABORTED="hlsFragLoadEmergencyAborted",$.FRAG_LOADED="hlsFragLoaded",$.FRAG_DECRYPTED="hlsFragDecrypted",$.FRAG_PARSING_INIT_SEGMENT="hlsFragParsingInitSegment",$.FRAG_PARSING_USERDATA="hlsFragParsingUserdata",$.FRAG_PARSING_METADATA="hlsFragParsingMetadata",$.FRAG_PARSED="hlsFragParsed",$.FRAG_BUFFERED="hlsFragBuffered",$.FRAG_CHANGED="hlsFragChanged",$.FPS_DROP="hlsFpsDrop",$.FPS_DROP_LEVEL_CAPPING="hlsFpsDropLevelCapping",$.ERROR="hlsError",$.DESTROYING="hlsDestroying",$.KEY_LOADING="hlsKeyLoading",$.KEY_LOADED="hlsKeyLoaded",$.LIVE_BACK_BUFFER_REACHED="hlsLiveBackBufferReached",$.BACK_BUFFER_REACHED="hlsBackBufferReached"}(B||(B={}))},76:(fe,re,N)=>{"use strict";N.r(re),N.d(re,{default:()=>Jn});var B,$=N(945),R=N(965),p=N(851),w=N(973),k=N(93),ve=/^(\d+)x(\d+)$/,Z=/\s*(.+?)\s*=((?:\".*?\")|.*?)(?:,|$)/g,le=function(){function d(e){for(var t in typeof e=="string"&&(e=d.parseAttrList(e)),e)e.hasOwnProperty(t)&&(this[t]=e[t])}var o=d.prototype;return o.decimalInteger=function(e){var t=parseInt(this[e],10);return t>Number.MAX_SAFE_INTEGER?1/0:t},o.hexadecimalInteger=function(e){if(this[e]){var t=(this[e]||"0x").slice(2);t=(1&t.length?"0":"")+t;for(var i=new Uint8Array(t.length/2),n=0;n<t.length/2;n++)i[n]=parseInt(t.slice(2*n,2*n+2),16);return i}return null},o.hexadecimalIntegerAsNumber=function(e){var t=parseInt(this[e],16);return t>Number.MAX_SAFE_INTEGER?1/0:t},o.decimalFloatingPoint=function(e){return parseFloat(this[e])},o.optionalFloat=function(e,t){var i=this[e];return i?parseFloat(i):t},o.enumeratedString=function(e){return this[e]},o.bool=function(e){return this[e]==="YES"},o.decimalResolution=function(e){var t=ve.exec(this[e]);if(t!==null)return{width:parseInt(t[1],10),height:parseInt(t[2],10)}},d.parseAttrList=function(e){var t,i={};for(Z.lastIndex=0;(t=Z.exec(e))!==null;){var n=t[2];n.indexOf('"')===0&&n.lastIndexOf('"')===n.length-1&&(n=n.slice(1,-1)),i[t[1]]=n}return i},d}();function Te(){return Te=Object.assign?Object.assign.bind():function(d){for(var o=1;o<arguments.length;o++){var e=arguments[o];for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(d[t]=e[t])}return d},Te.apply(this,arguments)}function H(d,o){for(var e=0;e<o.length;e++){var t=o[e];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(d,typeof(i=function(n,a){if(typeof n!="object"||n===null)return n;var r=n[Symbol.toPrimitive];if(r!==void 0){var s=r.call(n,a);if(typeof s!="object")return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(t.key,"string"))=="symbol"?i:String(i),t)}var i}(function(d){d.ID="ID",d.CLASS="CLASS",d.START_DATE="START-DATE",d.DURATION="DURATION",d.END_DATE="END-DATE",d.END_ON_NEXT="END-ON-NEXT",d.PLANNED_DURATION="PLANNED-DURATION",d.SCTE35_OUT="SCTE35-OUT",d.SCTE35_IN="SCTE35-IN"})(B||(B={}));var ce=function(){function d(t,i){if(this.attr=void 0,this._startDate=void 0,this._endDate=void 0,this._badValueForSameId=void 0,i){var n=i.attr;for(var a in n)if(Object.prototype.hasOwnProperty.call(t,a)&&t[a]!==n[a]){k.logger.warn('DATERANGE tag attribute: "'+a+'" does not match for tags with ID: "'+t.ID+'"'),this._badValueForSameId=a;break}t=Te(new le({}),n,t)}if(this.attr=t,this._startDate=new Date(t[B.START_DATE]),B.END_DATE in this.attr){var r=new Date(this.attr[B.END_DATE]);(0,R.isFiniteNumber)(r.getTime())&&(this._endDate=r)}}var o,e;return o=d,(e=[{key:"id",get:function(){return this.attr.ID}},{key:"class",get:function(){return this.attr.CLASS}},{key:"startDate",get:function(){return this._startDate}},{key:"endDate",get:function(){if(this._endDate)return this._endDate;var t=this.duration;return t!==null?new Date(this._startDate.getTime()+1e3*t):null}},{key:"duration",get:function(){if(B.DURATION in this.attr){var t=this.attr.decimalFloatingPoint(B.DURATION);if((0,R.isFiniteNumber)(t))return t}else if(this._endDate)return(this._endDate.getTime()-this._startDate.getTime())/1e3;return null}},{key:"plannedDuration",get:function(){return B.PLANNED_DURATION in this.attr?this.attr.decimalFloatingPoint(B.PLANNED_DURATION):null}},{key:"endOnNext",get:function(){return this.attr.bool(B.END_ON_NEXT)}},{key:"isValid",get:function(){return!!this.id&&!this._badValueForSameId&&(0,R.isFiniteNumber)(this.startDate.getTime())&&(this.duration===null||this.duration>=0)&&(!this.endOnNext||!!this.class)}}])&&H(o.prototype,e),Object.defineProperty(o,"prototype",{writable:!1}),d}(),z=N(923);function ne(d,o){for(var e=0;e<o.length;e++){var t=o[e];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(d,typeof(i=function(n,a){if(typeof n!="object"||n===null)return n;var r=n[Symbol.toPrimitive];if(r!==void 0){var s=r.call(n,a);if(typeof s!="object")return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(t.key,"string"))=="symbol"?i:String(i),t)}var i}var U,be,ke,He=function(){function d(t){this.PTSKnown=!1,this.alignedSliding=!1,this.averagetargetduration=void 0,this.endCC=0,this.endSN=0,this.fragments=void 0,this.fragmentHint=void 0,this.partList=null,this.dateRanges=void 0,this.live=!0,this.ageHeader=0,this.advancedDateTime=void 0,this.updated=!0,this.advanced=!0,this.availabilityDelay=void 0,this.misses=0,this.startCC=0,this.startSN=0,this.startTimeOffset=null,this.targetduration=0,this.totalduration=0,this.type=null,this.url=void 0,this.m3u8="",this.version=null,this.canBlockReload=!1,this.canSkipUntil=0,this.canSkipDateRanges=!1,this.skippedSegments=0,this.recentlyRemovedDateranges=void 0,this.partHoldBack=0,this.holdBack=0,this.partTarget=0,this.preloadHint=void 0,this.renditionReports=void 0,this.tuneInGoal=0,this.deltaUpdateFailed=void 0,this.driftStartTime=0,this.driftEndTime=0,this.driftStart=0,this.driftEnd=0,this.encryptedFragments=void 0,this.fragments=[],this.encryptedFragments=[],this.dateRanges={},this.url=t}var o,e;return d.prototype.reloaded=function(t){if(!t)return this.advanced=!0,void(this.updated=!0);var i=this.lastPartSn-t.lastPartSn,n=this.lastPartIndex-t.lastPartIndex;this.updated=this.endSN!==t.endSN||!!n||!!i,this.advanced=this.endSN>t.endSN||i>0||i===0&&n>0,this.updated||this.advanced?this.misses=Math.floor(.6*t.misses):this.misses=t.misses+1,this.availabilityDelay=t.availabilityDelay},o=d,(e=[{key:"hasProgramDateTime",get:function(){return!!this.fragments.length&&(0,R.isFiniteNumber)(this.fragments[this.fragments.length-1].programDateTime)}},{key:"levelTargetDuration",get:function(){return this.averagetargetduration||this.targetduration||10}},{key:"drift",get:function(){var t=this.driftEndTime-this.driftStartTime;return t>0?1e3*(this.driftEnd-this.driftStart)/t:1}},{key:"edge",get:function(){return this.partEnd||this.fragmentEnd}},{key:"partEnd",get:function(){var t;return(t=this.partList)!==null&&t!==void 0&&t.length?this.partList[this.partList.length-1].end:this.fragmentEnd}},{key:"fragmentEnd",get:function(){var t;return(t=this.fragments)!==null&&t!==void 0&&t.length?this.fragments[this.fragments.length-1].end:0}},{key:"age",get:function(){return this.advancedDateTime?Math.max(Date.now()-this.advancedDateTime,0)/1e3:0}},{key:"lastPartIndex",get:function(){var t;return(t=this.partList)!==null&&t!==void 0&&t.length?this.partList[this.partList.length-1].index:-1}},{key:"lastPartSn",get:function(){var t;return(t=this.partList)!==null&&t!==void 0&&t.length?this.partList[this.partList.length-1].fragment.sn:this.endSN}}])&&ne(o.prototype,e),Object.defineProperty(o,"prototype",{writable:!1}),d}();function K(d){return Uint8Array.from(atob(d),function(o){return o.charCodeAt(0)})}function E(d){return Uint8Array.from(unescape(encodeURIComponent(d)),function(o){return o.charCodeAt(0)})}function M(d){switch(d){case be.FAIRPLAY:return U.FAIRPLAY;case be.PLAYREADY:return U.PLAYREADY;case be.WIDEVINE:return U.WIDEVINE;case be.CLEARKEY:return U.CLEARKEY}}function L(d){switch(d){case U.FAIRPLAY:return be.FAIRPLAY;case U.PLAYREADY:return be.PLAYREADY;case U.WIDEVINE:return be.WIDEVINE;case U.CLEARKEY:return be.CLEARKEY}}function oe(d){var o=d.drmSystems,e=d.widevineLicenseUrl,t=o?[U.FAIRPLAY,U.WIDEVINE,U.PLAYREADY,U.CLEARKEY].filter(function(i){return!!o[i]}):[];return!t[U.WIDEVINE]&&e&&t.push(U.WIDEVINE),t}(function(d){d.CLEARKEY="org.w3.clearkey",d.FAIRPLAY="com.apple.fps",d.PLAYREADY="com.microsoft.playready",d.WIDEVINE="com.widevine.alpha"})(U||(U={})),function(d){d.CLEARKEY="org.w3.clearkey",d.FAIRPLAY="com.apple.streamingkeydelivery",d.PLAYREADY="com.microsoft.playready",d.WIDEVINE="urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed"}(be||(be={})),function(d){d.WIDEVINE="edef8ba979d64acea3c827dcd51d21ed"}(ke||(ke={}));var ye=typeof self!="undefined"&&self.navigator&&self.navigator.requestMediaKeySystemAccess?self.navigator.requestMediaKeySystemAccess.bind(self.navigator):null,W=N(63),V={},we=function(){function d(e,t,i,n,a){n===void 0&&(n=[1]),a===void 0&&(a=null),this.uri=void 0,this.method=void 0,this.keyFormat=void 0,this.keyFormatVersions=void 0,this.encrypted=void 0,this.isCommonEncryption=void 0,this.iv=null,this.key=null,this.keyId=null,this.pssh=null,this.method=e,this.uri=t,this.keyFormat=i,this.keyFormatVersions=n,this.iv=a,this.encrypted=!!e&&e!=="NONE",this.isCommonEncryption=this.encrypted&&e!=="AES-128"}d.clearKeyUriToKeyIdMap=function(){V={}};var o=d.prototype;return o.isSupported=function(){if(this.method){if(this.method==="AES-128"||this.method==="NONE")return!0;switch(this.keyFormat){case"identity":return this.method==="SAMPLE-AES";case be.FAIRPLAY:case be.WIDEVINE:case be.PLAYREADY:case be.CLEARKEY:return["ISO-23001-7","SAMPLE-AES","SAMPLE-AES-CENC","SAMPLE-AES-CTR"].indexOf(this.method)!==-1}}return!1},o.getDecryptData=function(e){if(!this.encrypted||!this.uri)return null;if(this.method==="AES-128"&&this.uri&&!this.iv){typeof e!="number"&&(this.method!=="AES-128"||this.iv||k.logger.warn('missing IV for initialization segment with method="'+this.method+'" - compliance issue'),e=0);var t=function(x){for(var I=new Uint8Array(16),j=12;j<16;j++)I[j]=x>>8*(15-j)&255;return I}(e);return new d(this.method,this.uri,"identity",this.keyFormatVersions,t)}var i=function(x){var I,j,ae=x.split(":"),me=null;if(ae[0]==="data"&&ae.length===2){var de=ae[1].split(";"),_e=de[de.length-1].split(",");if(_e.length===2){var Ke=_e[0]==="base64",ze=_e[1];Ke?(de.splice(-1,1),me=K(ze)):(I=E(ze).subarray(0,16),(j=new Uint8Array(16)).set(I,16-I.length),me=j)}}return me}(this.uri);if(i)switch(this.keyFormat){case be.WIDEVINE:this.pssh=i,i.length>=22&&(this.keyId=i.subarray(i.length-22,i.length-6));break;case be.PLAYREADY:var n=new Uint8Array([154,4,240,121,152,64,66,134,171,146,230,91,224,136,95,149]);this.pssh=(0,W.mp4pssh)(n,null,i);var a=new Uint16Array(i.buffer,i.byteOffset,i.byteLength/2),r=String.fromCharCode.apply(null,Array.from(a)),s=r.substring(r.indexOf("<"),r.length),l=new DOMParser().parseFromString(s,"text/xml").getElementsByTagName("KID")[0];if(l){var u=l.childNodes[0]?l.childNodes[0].nodeValue:l.getAttribute("VALUE");if(u){var c=K(u).subarray(0,16);(function(x){var I=function(j,ae,me){var de=j[ae];j[ae]=j[me],j[me]=de};I(x,0,3),I(x,1,2),I(x,4,5),I(x,6,7)})(c),this.keyId=c}}break;default:var v=i.subarray(0,16);if(v.length!==16){var m=new Uint8Array(16);m.set(v,16-v.length),v=m}this.keyId=v}if(!this.keyId||this.keyId.byteLength!==16){var _=V[this.uri];if(!_){var S=Object.keys(V).length%Number.MAX_SAFE_INTEGER;_=new Uint8Array(16),new DataView(_.buffer,12,4).setUint32(0,S),V[this.uri]=_}this.keyId=_}return this},d}(),Re={audio:{a3ds:!0,"ac-3":!0,"ac-4":!0,alac:!0,alaw:!0,dra1:!0,"dts+":!0,"dts-":!0,dtsc:!0,dtse:!0,dtsh:!0,"ec-3":!0,enca:!0,g719:!0,g726:!0,m4ae:!0,mha1:!0,mha2:!0,mhm1:!0,mhm2:!0,mlpa:!0,mp4a:!0,"raw ":!0,Opus:!0,opus:!0,samr:!0,sawb:!0,sawp:!0,sevc:!0,sqcp:!0,ssmv:!0,twos:!0,ulaw:!0},video:{avc1:!0,avc2:!0,avc3:!0,avc4:!0,avcp:!0,av01:!0,drac:!0,dva1:!0,dvav:!0,dvh1:!0,dvhe:!0,encv:!0,hev1:!0,hvc1:!0,mjp2:!0,mp4v:!0,mvc1:!0,mvc2:!0,mvc3:!0,mvc4:!0,resv:!0,rv60:!0,s263:!0,svc1:!0,svc2:!0,"vc-1":!0,vp08:!0,vp09:!0},text:{stpp:!0,wvtt:!0}};function Ce(d,o){return MediaSource.isTypeSupported((o||"video")+'/mp4;codecs="'+d+'"')}function ge(){return ge=Object.assign?Object.assign.bind():function(d){for(var o=1;o<arguments.length;o++){var e=arguments[o];for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(d[t]=e[t])}return d},ge.apply(this,arguments)}var qe=/#EXT-X-STREAM-INF:([^\r\n]*)(?:[\r\n](?:#[^\r\n]*)?)*([^\r\n]+)|#EXT-X-SESSION-DATA:([^\r\n]*)[\r\n]+|#EXT-X-SESSION-KEY:([^\n\r]*)[\r\n]+/g,tt=/#EXT-X-MEDIA:(.*)/g,ee=new RegExp([/#EXTINF:\s*(\d*(?:\.\d+)?)(?:,(.*)\s+)?/.source,/(?!#) *(\S[\S ]*)/.source,/#EXT-X-BYTERANGE:*(.+)/.source,/#EXT-X-PROGRAM-DATE-TIME:(.+)/.source,/#.*/.source].join("|"),"g"),ue=new RegExp([/#(EXTM3U)/.source,/#EXT-X-(DATERANGE|KEY|MAP|PART|PART-INF|PLAYLIST-TYPE|PRELOAD-HINT|RENDITION-REPORT|SERVER-CONTROL|SKIP|START):(.+)/.source,/#EXT-X-(BITRATE|DISCONTINUITY-SEQUENCE|MEDIA-SEQUENCE|TARGETDURATION|VERSION): *(\d+)/.source,/#EXT-X-(DISCONTINUITY|ENDLIST|GAP)/.source,/(#)([^:]*):(.*)/.source,/(#)(.*)(?:.*)\r?\n?/.source].join("|")),ie=function(){function d(){}return d.findGroup=function(o,e){for(var t=0;t<o.length;t++){var i=o[t];if(i.id===e)return i}},d.convertAVC1ToAVCOTI=function(o){var e=o.split(".");if(e.length>2){var t=e.shift()+".";return(t+=parseInt(e.shift()).toString(16))+("000"+parseInt(e.shift()).toString(16)).slice(-4)}return o},d.resolve=function(o,e){return(0,$.buildAbsoluteURL)(e,o,{alwaysNormalize:!0})},d.parseMasterPlaylist=function(o,e){var t,i=[],n=[],a={},r=[],s=!1;for(qe.lastIndex=0;(t=qe.exec(o))!=null;)if(t[1]){var l,u=new le(t[1]),c={attrs:u,bitrate:u.decimalInteger("AVERAGE-BANDWIDTH")||u.decimalInteger("BANDWIDTH"),name:u.NAME,url:d.resolve(t[2],e)},v=u.decimalResolution("RESOLUTION");v&&(c.width=v.width,c.height=v.height),xe((u.CODECS||"").split(/[ ,]+/).filter(function(x){return x}),c),c.videoCodec&&c.videoCodec.indexOf("avc1")!==-1&&(c.videoCodec=d.convertAVC1ToAVCOTI(c.videoCodec)),(l=c.unknownCodecs)!==null&&l!==void 0&&l.length||n.push(c),i.push(c)}else if(t[3]){var m=new le(t[3]);m["DATA-ID"]&&(s=!0,a[m["DATA-ID"]]=m)}else if(t[4]){var _=t[4],S=Oe(_,e);S.encrypted&&S.isSupported()?r.push(S):k.logger.warn('[Keys] Ignoring invalid EXT-X-SESSION-KEY tag: "'+_+'"')}return{levels:n.length>0&&n.length<i.length?n:i,sessionData:s?a:null,sessionKeys:r.length?r:null}},d.parseMasterPlaylistMedia=function(o,e,t,i){var n;i===void 0&&(i=[]);var a=[],r=0;for(tt.lastIndex=0;(n=tt.exec(o))!==null;){var s=new le(n[1]);if(s.TYPE===t){var l={attrs:s,bitrate:0,id:r++,groupId:s["GROUP-ID"],instreamId:s["INSTREAM-ID"],name:s.NAME||s.LANGUAGE||"",type:t,default:s.bool("DEFAULT"),autoselect:s.bool("AUTOSELECT"),forced:s.bool("FORCED"),lang:s.LANGUAGE,url:s.URI?d.resolve(s.URI,e):""};if(i.length){var u=d.findGroup(i,l.groupId)||i[0];Ne(l,u,"audioCodec"),Ne(l,u,"textCodec")}a.push(l)}}return a},d.parseLevelPlaylist=function(o,e,t,i,n){var a,r,s,l=new He(e),u=l.fragments,c=null,v=0,m=0,_=0,S=0,x=null,I=new z.Fragment(i,e),j=-1,ae=!1;for(ee.lastIndex=0,l.m3u8=o;(a=ee.exec(o))!==null;){ae&&(ae=!1,(I=new z.Fragment(i,e)).start=_,I.sn=v,I.cc=S,I.level=t,c&&(I.initSegment=c,I.rawProgramDateTime=c.rawProgramDateTime,c.rawProgramDateTime=null));var me=a[1];if(me){I.duration=parseFloat(me);var de=(" "+a[2]).slice(1);I.title=de||null,I.tagList.push(de?["INF",me,de]:["INF",me])}else if(a[3]){if((0,R.isFiniteNumber)(I.duration)){if(I.start=_,s){I.levelkeys=s;var _e=l.encryptedFragments;!I.levelkeys||!Object.keys(I.levelkeys).some(function(Lr){return I.levelkeys[Lr].isCommonEncryption})||_e.length&&_e[_e.length-1].levelkeys===s||_e.push(I)}I.sn=v,I.level=t,I.cc=S,I.urlId=n,u.push(I),I.relurl=(" "+a[3]).slice(1),Be(I,x),x=I,_+=I.duration,v++,m=0,ae=!0}}else if(a[4]){var Ke=(" "+a[4]).slice(1);x?I.setByteRange(Ke,x):I.setByteRange(Ke)}else if(a[5])I.rawProgramDateTime=(" "+a[5]).slice(1),I.tagList.push(["PROGRAM-DATE-TIME",I.rawProgramDateTime]),j===-1&&(j=u.length);else{if(!(a=a[0].match(ue))){k.logger.warn("No matches on slow regex match for level playlist!");continue}for(r=1;r<a.length&&a[r]===void 0;r++);var ze=(" "+a[r]).slice(1),Ee=(" "+a[r+1]).slice(1),Ge=a[r+2]?(" "+a[r+2]).slice(1):"";switch(ze){case"PLAYLIST-TYPE":l.type=Ee.toUpperCase();break;case"MEDIA-SEQUENCE":v=l.startSN=parseInt(Ee);break;case"SKIP":var Fe=new le(Ee),ct=Fe.decimalInteger("SKIPPED-SEGMENTS");if((0,R.isFiniteNumber)(ct)){l.skippedSegments=ct;for(var Ct=ct;Ct--;)u.unshift(null);v+=ct}var ft=Fe.enumeratedString("RECENTLY-REMOVED-DATERANGES");ft&&(l.recentlyRemovedDateranges=ft.split(" "));break;case"TARGETDURATION":l.targetduration=parseFloat(Ee);break;case"VERSION":l.version=parseInt(Ee);break;case"EXTM3U":break;case"ENDLIST":l.live=!1;break;case"#":(Ee||Ge)&&I.tagList.push(Ge?[Ee,Ge]:[Ee]);break;case"DISCONTINUITY":S++,I.tagList.push(["DIS"]);break;case"GAP":I.tagList.push([ze]);break;case"BITRATE":I.tagList.push([ze,Ee]);break;case"DATERANGE":var Tt=new le(Ee),At=new ce(Tt,l.dateRanges[Tt.ID]);At.isValid||l.skippedSegments?l.dateRanges[At.id]=At:k.logger.warn('Ignoring invalid DATERANGE tag: "'+Ee+'"'),I.tagList.push(["EXT-X-DATERANGE",Ee]);break;case"DISCONTINUITY-SEQUENCE":S=parseInt(Ee);break;case"KEY":var $t=Oe(Ee,e);if($t.isSupported()){if($t.method==="NONE"){s=void 0;break}s||(s={}),s[$t.keyFormat]&&(s=ge({},s)),s[$t.keyFormat]=$t}else k.logger.warn('[Keys] Ignoring invalid EXT-X-KEY tag: "'+Ee+'"');break;case"START":var Xt=new le(Ee).decimalFloatingPoint("TIME-OFFSET");(0,R.isFiniteNumber)(Xt)&&(l.startTimeOffset=Xt);break;case"MAP":var Gt=new le(Ee);if(I.duration){var Zt=new z.Fragment(i,e);je(Zt,Gt,t,s),c=Zt,I.initSegment=c,c.rawProgramDateTime&&!I.rawProgramDateTime&&(I.rawProgramDateTime=c.rawProgramDateTime)}else je(I,Gt,t,s),c=I,ae=!0;break;case"SERVER-CONTROL":var yr=new le(Ee);l.canBlockReload=yr.bool("CAN-BLOCK-RELOAD"),l.canSkipUntil=yr.optionalFloat("CAN-SKIP-UNTIL",0),l.canSkipDateRanges=l.canSkipUntil>0&&yr.bool("CAN-SKIP-DATERANGES"),l.partHoldBack=yr.optionalFloat("PART-HOLD-BACK",0),l.holdBack=yr.optionalFloat("HOLD-BACK",0);break;case"PART-INF":var Ln=new le(Ee);l.partTarget=Ln.decimalFloatingPoint("PART-TARGET");break;case"PART":var Ar=l.partList;Ar||(Ar=l.partList=[]);var wi=m>0?Ar[Ar.length-1]:void 0,Ai=m++,Di=new z.Part(new le(Ee),I,e,Ai,wi);Ar.push(Di),I.duration+=Di.duration;break;case"PRELOAD-HINT":var st=new le(Ee);l.preloadHint=st;break;case"RENDITION-REPORT":var vt=new le(Ee);l.renditionReports=l.renditionReports||[],l.renditionReports.push(vt);break;default:k.logger.warn("line parsed but not handled: "+a)}}}x&&!x.relurl?(u.pop(),_-=x.duration,l.partList&&(l.fragmentHint=x)):l.partList&&(Be(I,x),I.cc=S,l.fragmentHint=I);var di=u.length,xr=u[0],Dr=u[di-1];if((_+=l.skippedSegments*l.targetduration)>0&&di&&Dr){l.averagetargetduration=_/di;var ci=Dr.sn;l.endSN=ci!=="initSegment"?ci:0,l.live||(Dr.endList=!0),xr&&(l.startCC=xr.cc)}else l.endSN=0,l.startCC=0;return l.fragmentHint&&(_+=l.fragmentHint.duration),l.totalduration=_,l.endCC=S,j>0&&function(Lr,Or){for(var Kr=Lr[Or],_r=Or;_r--;){var qr=Lr[_r];if(!qr)return;qr.programDateTime=Kr.programDateTime-1e3*qr.duration,Kr=qr}}(u,j),l},d}();function Oe(d,o){var e,t,i=new le(d),n=(e=i.enumeratedString("METHOD"))!=null?e:"",a=i.URI,r=i.hexadecimalInteger("IV"),s=i.enumeratedString("KEYFORMATVERSIONS"),l=(t=i.enumeratedString("KEYFORMAT"))!=null?t:"identity";a&&i.IV&&!r&&k.logger.error("Invalid IV: "+i.IV);var u=a?ie.resolve(a,o):"",c=(s||"1").split("/").map(Number).filter(Number.isFinite);return new we(n,u,l,c,r)}function xe(d,o){["video","audio","text"].forEach(function(e){var t=d.filter(function(n){return function(a,r){var s=Re[r];return!!s&&s[a.slice(0,4)]===!0}(n,e)});if(t.length){var i=t.filter(function(n){return n.lastIndexOf("avc1",0)===0||n.lastIndexOf("mp4a",0)===0});o[e+"Codec"]=i.length>0?i[0]:t[0],d=d.filter(function(n){return t.indexOf(n)===-1})}}),o.unknownCodecs=d}function Ne(d,o,e){var t=o[e];t&&(d[e]=t)}function Be(d,o){d.rawProgramDateTime?d.programDateTime=Date.parse(d.rawProgramDateTime):o!=null&&o.programDateTime&&(d.programDateTime=o.endProgramDateTime),(0,R.isFiniteNumber)(d.programDateTime)||(d.programDateTime=null,d.rawProgramDateTime=null)}function je(d,o,e,t){d.relurl=o.URI,o.BYTERANGE&&d.setByteRange(o.BYTERANGE),d.level=e,d.sn="initSegment",t&&(d.levelkeys=t),d.initSegment=null}var pe=N(308);function Ie(d,o){var e=d.url;return e!==void 0&&e.indexOf("data:")!==0||(e=o.url),e}let Ye=function(){function d(e){this.hls=void 0,this.loaders=Object.create(null),this.hls=e,this.registerListeners()}var o=d.prototype;return o.startLoad=function(e){},o.stopLoad=function(){this.destroyInternalLoaders()},o.registerListeners=function(){var e=this.hls;e.on(p.Events.MANIFEST_LOADING,this.onManifestLoading,this),e.on(p.Events.LEVEL_LOADING,this.onLevelLoading,this),e.on(p.Events.AUDIO_TRACK_LOADING,this.onAudioTrackLoading,this),e.on(p.Events.SUBTITLE_TRACK_LOADING,this.onSubtitleTrackLoading,this)},o.unregisterListeners=function(){var e=this.hls;e.off(p.Events.MANIFEST_LOADING,this.onManifestLoading,this),e.off(p.Events.LEVEL_LOADING,this.onLevelLoading,this),e.off(p.Events.AUDIO_TRACK_LOADING,this.onAudioTrackLoading,this),e.off(p.Events.SUBTITLE_TRACK_LOADING,this.onSubtitleTrackLoading,this)},o.createInternalLoader=function(e){var t=this.hls.config,i=t.pLoader,n=t.loader,a=new(i||n)(t);return e.loader=a,this.loaders[e.type]=a,a},o.getInternalLoader=function(e){return this.loaders[e.type]},o.resetInternalLoader=function(e){this.loaders[e]&&delete this.loaders[e]},o.destroyInternalLoaders=function(){for(var e in this.loaders){var t=this.loaders[e];t&&t.destroy(),this.resetInternalLoader(e)}},o.destroy=function(){this.unregisterListeners(),this.destroyInternalLoaders()},o.onManifestLoading=function(e,t){var i=t.url;this.load({id:null,groupId:null,level:0,responseType:"text",type:pe.PlaylistContextType.MANIFEST,url:i,deliveryDirectives:null})},o.onLevelLoading=function(e,t){var i=t.id,n=t.level,a=t.url,r=t.deliveryDirectives;this.load({id:i,groupId:null,level:n,responseType:"text",type:pe.PlaylistContextType.LEVEL,url:a,deliveryDirectives:r})},o.onAudioTrackLoading=function(e,t){var i=t.id,n=t.groupId,a=t.url,r=t.deliveryDirectives;this.load({id:i,groupId:n,level:null,responseType:"text",type:pe.PlaylistContextType.AUDIO_TRACK,url:a,deliveryDirectives:r})},o.onSubtitleTrackLoading=function(e,t){var i=t.id,n=t.groupId,a=t.url,r=t.deliveryDirectives;this.load({id:i,groupId:n,level:null,responseType:"text",type:pe.PlaylistContextType.SUBTITLE_TRACK,url:a,deliveryDirectives:r})},o.load=function(e){var t,i,n,a,r,s,l=this.hls.config,u=this.getInternalLoader(e);if(u){var c=u.context;if(c&&c.url===e.url)return void k.logger.trace("[playlist-loader]: playlist request ongoing");k.logger.log("[playlist-loader]: aborting previous loader for type: "+e.type),u.abort()}switch(e.type){case pe.PlaylistContextType.MANIFEST:i=l.manifestLoadingMaxRetry,n=l.manifestLoadingTimeOut,a=l.manifestLoadingRetryDelay,r=l.manifestLoadingMaxRetryTimeout;break;case pe.PlaylistContextType.LEVEL:case pe.PlaylistContextType.AUDIO_TRACK:case pe.PlaylistContextType.SUBTITLE_TRACK:i=0,n=l.levelLoadingTimeOut;break;default:i=l.levelLoadingMaxRetry,n=l.levelLoadingTimeOut,a=l.levelLoadingRetryDelay,r=l.levelLoadingMaxRetryTimeout}if(u=this.createInternalLoader(e),(t=e.deliveryDirectives)!==null&&t!==void 0&&t.part&&(e.type===pe.PlaylistContextType.LEVEL&&e.level!==null?s=this.hls.levels[e.level].details:e.type===pe.PlaylistContextType.AUDIO_TRACK&&e.id!==null?s=this.hls.audioTracks[e.id].details:e.type===pe.PlaylistContextType.SUBTITLE_TRACK&&e.id!==null&&(s=this.hls.subtitleTracks[e.id].details),s)){var v=s.partTarget,m=s.targetduration;v&&m&&(n=Math.min(1e3*Math.max(3*v,.8*m),n))}var _={timeout:n,maxRetry:i,retryDelay:a,maxRetryDelay:r,highWaterMark:0},S={onSuccess:this.loadsuccess.bind(this),onError:this.loaderror.bind(this),onTimeout:this.loadtimeout.bind(this)};u.load(e,_,S)},o.loadsuccess=function(e,t,i,n){n===void 0&&(n=null),this.resetInternalLoader(i.type);var a=e.data;a.indexOf("#EXTM3U")===0?(t.parsing.start=performance.now(),a.indexOf("#EXTINF:")>0||a.indexOf("#EXT-X-TARGETDURATION:")>0?this.handleTrackOrLevelPlaylist(e,t,i,n):this.handleMasterPlaylist(e,t,i,n)):this.handleManifestParsingError(e,i,"no EXTM3U delimiter",n)},o.loaderror=function(e,t,i){i===void 0&&(i=null),this.handleNetworkError(t,i,!1,e)},o.loadtimeout=function(e,t,i){i===void 0&&(i=null),this.handleNetworkError(t,i,!0)},o.handleMasterPlaylist=function(e,t,i,n){var a=this.hls,r=e.data,s=Ie(e,i),l=ie.parseMasterPlaylist(r,s),u=l.levels,c=l.sessionData,v=l.sessionKeys;if(u.length){var m=u.map(function(j){return{id:j.attrs.AUDIO,audioCodec:j.audioCodec}}),_=u.map(function(j){return{id:j.attrs.SUBTITLES,textCodec:j.textCodec}}),S=ie.parseMasterPlaylistMedia(r,s,"AUDIO",m),x=ie.parseMasterPlaylistMedia(r,s,"SUBTITLES",_),I=ie.parseMasterPlaylistMedia(r,s,"CLOSED-CAPTIONS");S.length&&(S.some(function(j){return!j.url})||!u[0].audioCodec||u[0].attrs.AUDIO||(k.logger.log("[playlist-loader]: audio codec signaled in quality level, but no embedded audio track signaled, create one"),S.unshift({type:"main",name:"main",default:!1,autoselect:!1,forced:!1,id:-1,attrs:new le({}),bitrate:0,url:""}))),a.trigger(p.Events.MANIFEST_LOADED,{levels:u,audioTracks:S,subtitles:x,captions:I,url:s,stats:t,networkDetails:n,sessionData:c,sessionKeys:v})}else this.handleManifestParsingError(e,i,"no level found in manifest",n)},o.handleTrackOrLevelPlaylist=function(e,t,i,n){var a=this.hls,r=i.id,s=i.level,l=i.type,u=Ie(e,i),c=(0,R.isFiniteNumber)(r)?r:0,v=(0,R.isFiniteNumber)(s)?s:c,m=function(x){switch(x.type){case pe.PlaylistContextType.AUDIO_TRACK:return pe.PlaylistLevelType.AUDIO;case pe.PlaylistContextType.SUBTITLE_TRACK:return pe.PlaylistLevelType.SUBTITLE;default:return pe.PlaylistLevelType.MAIN}}(i),_=ie.parseLevelPlaylist(e.data,u,v,m,c);if(_.fragments.length){if(l===pe.PlaylistContextType.MANIFEST){var S={attrs:new le({}),bitrate:0,details:_,name:"",url:u};a.trigger(p.Events.MANIFEST_LOADED,{levels:[S],audioTracks:[],url:u,stats:t,networkDetails:n,sessionData:null,sessionKeys:null})}t.parsing.end=performance.now(),i.levelDetails=_,this.handlePlaylistLoaded(e,t,i,n)}else a.trigger(p.Events.ERROR,{type:w.ErrorTypes.NETWORK_ERROR,details:w.ErrorDetails.LEVEL_EMPTY_ERROR,fatal:!1,url:u,reason:"no fragments found in level",level:typeof i.level=="number"?i.level:void 0})},o.handleManifestParsingError=function(e,t,i,n){this.hls.trigger(p.Events.ERROR,{type:w.ErrorTypes.NETWORK_ERROR,details:w.ErrorDetails.MANIFEST_PARSING_ERROR,fatal:t.type===pe.PlaylistContextType.MANIFEST,url:e.url,reason:i,response:e,context:t,networkDetails:n})},o.handleNetworkError=function(e,t,i,n){i===void 0&&(i=!1),k.logger.warn("[playlist-loader]: A network "+(i?"timeout":"error")+" occurred while loading "+e.type+" level: "+e.level+" id: "+e.id+' group-id: "'+e.groupId+'"');var a=w.ErrorDetails.UNKNOWN,r=!1,s=this.getInternalLoader(e);switch(e.type){case pe.PlaylistContextType.MANIFEST:a=i?w.ErrorDetails.MANIFEST_LOAD_TIMEOUT:w.ErrorDetails.MANIFEST_LOAD_ERROR,r=!0;break;case pe.PlaylistContextType.LEVEL:a=i?w.ErrorDetails.LEVEL_LOAD_TIMEOUT:w.ErrorDetails.LEVEL_LOAD_ERROR,r=!1;break;case pe.PlaylistContextType.AUDIO_TRACK:a=i?w.ErrorDetails.AUDIO_TRACK_LOAD_TIMEOUT:w.ErrorDetails.AUDIO_TRACK_LOAD_ERROR,r=!1;break;case pe.PlaylistContextType.SUBTITLE_TRACK:a=i?w.ErrorDetails.SUBTITLE_TRACK_LOAD_TIMEOUT:w.ErrorDetails.SUBTITLE_LOAD_ERROR,r=!1}s&&this.resetInternalLoader(e.type);var l={type:w.ErrorTypes.NETWORK_ERROR,details:a,fatal:r,url:e.url,loader:s,context:e,networkDetails:t};n&&(l.response=n),this.hls.trigger(p.Events.ERROR,l)},o.handlePlaylistLoaded=function(e,t,i,n){var a=i.type,r=i.level,s=i.id,l=i.groupId,u=i.loader,c=i.levelDetails,v=i.deliveryDirectives;if(c!=null&&c.targetduration){if(u)switch(c.live&&(u.getCacheAge&&(c.ageHeader=u.getCacheAge()||0),u.getCacheAge&&!isNaN(c.ageHeader)||(c.ageHeader=0)),a){case pe.PlaylistContextType.MANIFEST:case pe.PlaylistContextType.LEVEL:this.hls.trigger(p.Events.LEVEL_LOADED,{details:c,level:r||0,id:s||0,stats:t,networkDetails:n,deliveryDirectives:v});break;case pe.PlaylistContextType.AUDIO_TRACK:this.hls.trigger(p.Events.AUDIO_TRACK_LOADED,{details:c,id:s||0,groupId:l||"",stats:t,networkDetails:n,deliveryDirectives:v});break;case pe.PlaylistContextType.SUBTITLE_TRACK:this.hls.trigger(p.Events.SUBTITLE_TRACK_LOADED,{details:c,id:s||0,groupId:l||"",stats:t,networkDetails:n,deliveryDirectives:v})}}else this.handleManifestParsingError(e,i,"invalid target duration",n)},d}();function rt(d,o){var e;try{e=new Event("addtrack")}catch{(e=document.createEvent("Event")).initEvent("addtrack",!1,!1)}e.track=d,o.dispatchEvent(e)}function yt(d,o){var e=d.mode;if(e==="disabled"&&(d.mode="hidden"),d.cues&&!d.cues.getCueById(o.id))try{if(d.addCue(o),!d.cues.getCueById(o.id))throw new Error("addCue is failed for: "+o)}catch(i){k.logger.debug("[texttrack-utils]: "+i);var t=new self.TextTrackCue(o.startTime,o.endTime,o.text);t.id=o.id,d.addCue(t)}e==="disabled"&&(d.mode=e)}function ht(d){var o=d.mode;if(o==="disabled"&&(d.mode="hidden"),d.cues)for(var e=d.cues.length;e--;)d.removeCue(d.cues[e]);o==="disabled"&&(d.mode=o)}function It(d,o,e,t){var i=d.mode;if(i==="disabled"&&(d.mode="hidden"),d.cues&&d.cues.length>0)for(var n=function(r,s,l){var u=[],c=function(S,x){if(x<S[0].startTime)return 0;var I=S.length-1;if(x>S[I].endTime)return-1;for(var j=0,ae=I;j<=ae;){var me=Math.floor((ae+j)/2);if(x<S[me].startTime)ae=me-1;else{if(!(x>S[me].startTime&&j<I))return me;j=me+1}}return S[j].startTime-x<x-S[ae].startTime?j:ae}(r,s);if(c>-1)for(var v=c,m=r.length;v<m;v++){var _=r[v];if(_.startTime>=s&&_.endTime<=l)u.push(_);else if(_.startTime>l)return u}return u}(d.cues,o,e),a=0;a<n.length;a++)t&&!t(n[a])||d.removeCue(n[a]);i==="disabled"&&(d.mode=i)}var Dt=N(181),St=N(856);function kt(){return self.WebKitDataCue||self.VTTCue||self.TextTrackCue}var gt=function(){var d=kt();try{new d(0,Number.POSITIVE_INFINITY,"")}catch{return Number.MAX_VALUE}return Number.POSITIVE_INFINITY}();function ut(d,o){return d.getTime()/1e3-o}let Rt=function(){function d(e){this.hls=void 0,this.id3Track=null,this.media=null,this.dateRangeCuesAppended={},this.hls=e,this._registerListeners()}var o=d.prototype;return o.destroy=function(){this._unregisterListeners(),this.id3Track=null,this.media=null,this.dateRangeCuesAppended={},this.hls=null},o._registerListeners=function(){var e=this.hls;e.on(p.Events.MEDIA_ATTACHED,this.onMediaAttached,this),e.on(p.Events.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(p.Events.MANIFEST_LOADING,this.onManifestLoading,this),e.on(p.Events.FRAG_PARSING_METADATA,this.onFragParsingMetadata,this),e.on(p.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),e.on(p.Events.LEVEL_UPDATED,this.onLevelUpdated,this)},o._unregisterListeners=function(){var e=this.hls;e.off(p.Events.MEDIA_ATTACHED,this.onMediaAttached,this),e.off(p.Events.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(p.Events.MANIFEST_LOADING,this.onManifestLoading,this),e.off(p.Events.FRAG_PARSING_METADATA,this.onFragParsingMetadata,this),e.off(p.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),e.off(p.Events.LEVEL_UPDATED,this.onLevelUpdated,this)},o.onMediaAttached=function(e,t){this.media=t.media},o.onMediaDetaching=function(){this.id3Track&&(ht(this.id3Track),this.id3Track=null,this.media=null,this.dateRangeCuesAppended={})},o.onManifestLoading=function(){this.dateRangeCuesAppended={}},o.createTrack=function(e){var t=this.getID3Track(e.textTracks);return t.mode="hidden",t},o.getID3Track=function(e){if(this.media){for(var t=0;t<e.length;t++){var i=e[t];if(i.kind==="metadata"&&i.label==="id3")return rt(i,this.media),i}return this.media.addTextTrack("metadata","id3")}},o.onFragParsingMetadata=function(e,t){if(this.media){var i=this.hls.config,n=i.enableEmsgMetadataCues,a=i.enableID3MetadataCues;if(n||a){var r=t.samples;this.id3Track||(this.id3Track=this.createTrack(this.media));for(var s=kt(),l=0;l<r.length;l++){var u=r[l].type;if((u!==St.MetadataSchema.emsg||n)&&a){var c=Dt.getID3Frames(r[l].data);if(c){var v=r[l].pts,m=v+r[l].duration;m>gt&&(m=gt),m-v<=0&&(m=v+.25);for(var _=0;_<c.length;_++){var S=c[_];if(!Dt.isTimeStampFrame(S)){this.updateId3CueEnds(v);var x=new s(v,m,"");x.value=S,u&&(x.type=u),this.id3Track.addCue(x)}}}}}}}},o.updateId3CueEnds=function(e){var t,i=(t=this.id3Track)===null||t===void 0?void 0:t.cues;if(i)for(var n=i.length;n--;){var a=i[n];a.startTime<e&&a.endTime===gt&&(a.endTime=e)}},o.onBufferFlushing=function(e,t){var i=t.startOffset,n=t.endOffset,a=t.type,r=this.id3Track,s=this.hls;if(s){var l=s.config,u=l.enableEmsgMetadataCues,c=l.enableID3MetadataCues;r&&(u||c)&&It(r,i,n,a==="audio"?function(v){return v.type===St.MetadataSchema.audioId3&&c}:a==="video"?function(v){return v.type===St.MetadataSchema.emsg&&u}:function(v){return v.type===St.MetadataSchema.audioId3&&c||v.type===St.MetadataSchema.emsg&&u})}},o.onLevelUpdated=function(e,t){var i=this,n=t.details;if(this.media&&n.hasProgramDateTime&&this.hls.config.enableDateRangeMetadataCues){var a=this.dateRangeCuesAppended,r=this.id3Track,s=n.dateRanges,l=Object.keys(s);if(r)for(var u=Object.keys(a).filter(function(j){return!l.includes(j)}),c=function(j){var ae=u[j];Object.keys(a[ae].cues).forEach(function(me){r.removeCue(a[ae].cues[me])}),delete a[ae]},v=u.length;v--;)c(v);var m=n.fragments[n.fragments.length-1];if(l.length!==0&&(0,R.isFiniteNumber)(m==null?void 0:m.programDateTime)){this.id3Track||(this.id3Track=this.createTrack(this.media));for(var _=m.programDateTime/1e3-m.start,S=kt(),x=function(j){var ae=l[j],me=s[ae],de=a[ae],_e=(de==null?void 0:de.cues)||{},Ke=(de==null?void 0:de.durationKnown)||!1,ze=ut(me.startDate,_),Ee=gt,Ge=me.endDate;if(Ge)Ee=ut(Ge,_),Ke=!0;else if(me.endOnNext&&!Ke){var Fe=l.reduce(function(Xt,Gt){var Zt=s[Gt];return Zt.class===me.class&&Zt.id!==Gt&&Zt.startDate>me.startDate&&Xt.push(Zt),Xt},[]).sort(function(Xt,Gt){return Xt.startDate.getTime()-Gt.startDate.getTime()})[0];Fe&&(Ee=ut(Fe.startDate,_),Ke=!0)}for(var ct,Ct=Object.keys(me.attr),ft=0;ft<Ct.length;ft++){var Tt=Ct[ft];if(Tt!==B.ID&&Tt!==B.CLASS&&Tt!==B.START_DATE&&Tt!==B.DURATION&&Tt!==B.END_DATE&&Tt!==B.END_ON_NEXT){var At=_e[Tt];if(At)Ke&&!de.durationKnown&&(At.endTime=Ee);else{var $t=me.attr[Tt];At=new S(ze,Ee,""),Tt!==B.SCTE35_OUT&&Tt!==B.SCTE35_IN||(ct=$t,$t=Uint8Array.from(ct.replace(/^0x/,"").replace(/([\da-fA-F]{2}) ?/g,"0x$1 ").replace(/ +$/,"").split(" ")).buffer),At.value={key:Tt,data:$t},At.type=St.MetadataSchema.dateRange,i.id3Track.addCue(At),_e[Tt]=At}}}a[ae]={cues:_e,dateRange:me,durationKnown:Ke}},I=0;I<l.length;I++)x(I)}}},d}();function Pt(d,o){for(var e=0;e<o.length;e++){var t=o[e];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(d,typeof(i=function(n,a){if(typeof n!="object"||n===null)return n;var r=n[Symbol.toPrimitive];if(r!==void 0){var s=r.call(n,a);if(typeof s!="object")return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(t.key,"string"))=="symbol"?i:String(i),t)}var i}var jt=function(){function d(i){var n=this;this.hls=void 0,this.config=void 0,this.media=null,this.levelDetails=null,this.currentTime=0,this.stallCount=0,this._latency=null,this.timeupdateHandler=function(){return n.timeupdate()},this.hls=i,this.config=i.config,this.registerListeners()}var o,e,t=d.prototype;return t.destroy=function(){this.unregisterListeners(),this.onMediaDetaching(),this.levelDetails=null,this.hls=this.timeupdateHandler=null},t.registerListeners=function(){this.hls.on(p.Events.MEDIA_ATTACHED,this.onMediaAttached,this),this.hls.on(p.Events.MEDIA_DETACHING,this.onMediaDetaching,this),this.hls.on(p.Events.MANIFEST_LOADING,this.onManifestLoading,this),this.hls.on(p.Events.LEVEL_UPDATED,this.onLevelUpdated,this),this.hls.on(p.Events.ERROR,this.onError,this)},t.unregisterListeners=function(){this.hls.off(p.Events.MEDIA_ATTACHED,this.onMediaAttached),this.hls.off(p.Events.MEDIA_DETACHING,this.onMediaDetaching),this.hls.off(p.Events.MANIFEST_LOADING,this.onManifestLoading),this.hls.off(p.Events.LEVEL_UPDATED,this.onLevelUpdated),this.hls.off(p.Events.ERROR,this.onError)},t.onMediaAttached=function(i,n){this.media=n.media,this.media.addEventListener("timeupdate",this.timeupdateHandler)},t.onMediaDetaching=function(){this.media&&(this.media.removeEventListener("timeupdate",this.timeupdateHandler),this.media=null)},t.onManifestLoading=function(){this.levelDetails=null,this._latency=null,this.stallCount=0},t.onLevelUpdated=function(i,n){var a=n.details;this.levelDetails=a,a.advanced&&this.timeupdate(),!a.live&&this.media&&this.media.removeEventListener("timeupdate",this.timeupdateHandler)},t.onError=function(i,n){n.details===w.ErrorDetails.BUFFER_STALLED_ERROR&&(this.stallCount++,k.logger.warn("[playback-rate-controller]: Stall detected, adjusting target latency"))},t.timeupdate=function(){var i=this.media,n=this.levelDetails;if(i&&n){this.currentTime=i.currentTime;var a=this.computeLatency();if(a!==null){this._latency=a;var r=this.config,s=r.lowLatencyMode,l=r.maxLiveSyncPlaybackRate;if(s&&l!==1){var u=this.targetLatency;if(u!==null){var c=a-u,v=c<Math.min(this.maxLatency,u+n.targetduration);if(n.live&&v&&c>.05&&this.forwardBufferLength>1){var m=Math.min(2,Math.max(1,l)),_=Math.round(2/(1+Math.exp(-.75*c-this.edgeStalled))*20)/20;i.playbackRate=Math.min(m,Math.max(1,_))}else i.playbackRate!==1&&i.playbackRate!==0&&(i.playbackRate=1)}}}}},t.estimateLiveEdge=function(){var i=this.levelDetails;return i===null?null:i.edge+i.age},t.computeLatency=function(){var i=this.estimateLiveEdge();return i===null?null:i-this.currentTime},o=d,(e=[{key:"latency",get:function(){return this._latency||0}},{key:"maxLatency",get:function(){var i=this.config,n=this.levelDetails;return i.liveMaxLatencyDuration!==void 0?i.liveMaxLatencyDuration:n?i.liveMaxLatencyDurationCount*n.targetduration:0}},{key:"targetLatency",get:function(){var i=this.levelDetails;if(i===null)return null;var n=i.holdBack,a=i.partHoldBack,r=i.targetduration,s=this.config,l=s.liveSyncDuration,u=s.liveSyncDurationCount,c=s.lowLatencyMode,v=this.hls.userConfig,m=c&&a||n;(v.liveSyncDuration||v.liveSyncDurationCount||m===0)&&(m=l!==void 0?l:u*r);var _=r;return m+Math.min(1*this.stallCount,_)}},{key:"liveSyncPosition",get:function(){var i=this.estimateLiveEdge(),n=this.targetLatency,a=this.levelDetails;if(i===null||n===null||a===null)return null;var r=a.edge,s=i-n-this.edgeStalled,l=r-a.totalduration,u=r-(this.config.lowLatencyMode&&a.partTarget||a.targetduration);return Math.min(Math.max(l,s),u)}},{key:"drift",get:function(){var i=this.levelDetails;return i===null?1:i.drift}},{key:"edgeStalled",get:function(){var i=this.levelDetails;if(i===null)return 0;var n=3*(this.config.lowLatencyMode&&i.partTarget||i.targetduration);return Math.max(i.age-n,0)}},{key:"forwardBufferLength",get:function(){var i=this.media,n=this.levelDetails;if(!i||!n)return 0;var a=i.buffered.length;return(a?i.buffered.end(a-1):n.edge)-this.currentTime}}])&&Pt(o.prototype,e),Object.defineProperty(o,"prototype",{writable:!1}),d}();function zt(d,o){for(var e=0;e<o.length;e++){var t=o[e];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(d,typeof(i=function(n,a){if(typeof n!="object"||n===null)return n;var r=n[Symbol.toPrimitive];if(r!==void 0){var s=r.call(n,a);if(typeof s!="object")return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(t.key,"string"))=="symbol"?i:String(i),t)}var i}var Nt,dr=["NONE","TYPE-0","TYPE-1","TYPE-2",null];(function(d){d.No="",d.Yes="YES",d.v2="v2"})(Nt||(Nt={}));var J=function(){function d(o,e,t){this.msn=void 0,this.part=void 0,this.skip=void 0,this.msn=o,this.part=e,this.skip=t}return d.prototype.addDirectives=function(o){var e=new self.URL(o);return this.msn!==void 0&&e.searchParams.set("_HLS_msn",this.msn.toString()),this.part!==void 0&&e.searchParams.set("_HLS_part",this.part.toString()),this.skip&&e.searchParams.set("_HLS_skip",this.skip),e.href},d}(),O=function(){function d(t){this.attrs=void 0,this.audioCodec=void 0,this.bitrate=void 0,this.codecSet=void 0,this.height=void 0,this.id=void 0,this.name=void 0,this.videoCodec=void 0,this.width=void 0,this.unknownCodecs=void 0,this.audioGroupIds=void 0,this.details=void 0,this.fragmentError=0,this.loadError=0,this.loaded=void 0,this.realBitrate=0,this.textGroupIds=void 0,this.url=void 0,this._urlId=0,this.url=[t.url],this.attrs=t.attrs,this.bitrate=t.bitrate,t.details&&(this.details=t.details),this.id=t.id||0,this.name=t.name,this.width=t.width||0,this.height=t.height||0,this.audioCodec=t.audioCodec,this.videoCodec=t.videoCodec,this.unknownCodecs=t.unknownCodecs,this.codecSet=[t.videoCodec,t.audioCodec].filter(function(i){return i}).join(",").replace(/\.[^.,]+/g,"")}var o,e;return o=d,(e=[{key:"maxBitrate",get:function(){return Math.max(this.realBitrate,this.bitrate)}},{key:"uri",get:function(){return this.url[this._urlId]||""}},{key:"urlId",get:function(){return this._urlId},set:function(t){var i=t%this.url.length;this._urlId!==i&&(this.details=void 0,this._urlId=i)}}])&&zt(o.prototype,e),Object.defineProperty(o,"prototype",{writable:!1}),d}();function T(){return T=Object.assign?Object.assign.bind():function(d){for(var o=1;o<arguments.length;o++){var e=arguments[o];for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(d[t]=e[t])}return d},T.apply(this,arguments)}function P(d,o,e){switch(o){case"audio":d.audioGroupIds||(d.audioGroupIds=[]),d.audioGroupIds.push(e);break;case"text":d.textGroupIds||(d.textGroupIds=[]),d.textGroupIds.push(e)}}function D(d){var o={};d.forEach(function(e){var t=e.groupId||"";e.id=o[t]=o[t]||0,o[t]++})}function F(d,o){var e=o.startPTS;if((0,R.isFiniteNumber)(e)){var t,i=0;o.sn>d.sn?(i=e-d.start,t=d):(i=d.start-e,t=o),t.duration!==i&&(t.duration=i)}else o.sn>d.sn?d.cc===o.cc&&d.minEndPTS?o.start=d.start+(d.minEndPTS-d.start):o.start=d.start+d.duration:o.start=Math.max(d.start-o.duration,0)}function q(d,o,e,t,i,n){t-e<=0&&(k.logger.warn("Fragment should have a positive duration",o),t=e+o.duration,n=i+o.duration);var a=e,r=t,s=o.startPTS,l=o.endPTS;if((0,R.isFiniteNumber)(s)){var u=Math.abs(s-e);(0,R.isFiniteNumber)(o.deltaPTS)?o.deltaPTS=Math.max(u,o.deltaPTS):o.deltaPTS=u,a=Math.max(e,s),e=Math.min(e,s),i=Math.min(i,o.startDTS),r=Math.min(t,l),t=Math.max(t,l),n=Math.max(n,o.endDTS)}o.duration=t-e;var c=e-o.start;o.start=o.startPTS=e,o.maxStartPTS=a,o.startDTS=i,o.endPTS=t,o.minEndPTS=r,o.endDTS=n;var v,m=o.sn;if(!d||m<d.startSN||m>d.endSN)return 0;var _=m-d.startSN,S=d.fragments;for(S[_]=o,v=_;v>0;v--)F(S[v],S[v-1]);for(v=_;v<S.length-1;v++)F(S[v],S[v+1]);return d.fragmentHint&&F(S[S.length-1],d.fragmentHint),d.PTSKnown=d.alignedSliding=!0,c}function Y(d,o){var e=o.startSN+o.skippedSegments-d.startSN,t=d.fragments;e<0||e>=t.length||he(o,t[e].start)}function he(d,o){if(o){for(var e=d.fragments,t=d.skippedSegments;t<e.length;t++)e[t].start+=o;d.fragmentHint&&(d.fragmentHint.start+=o)}}var Le=function(){function d(e,t){this.hls=void 0,this.timer=-1,this.requestScheduled=-1,this.canLoad=!1,this.retryCount=0,this.log=void 0,this.warn=void 0,this.log=k.logger.log.bind(k.logger,t+":"),this.warn=k.logger.warn.bind(k.logger,t+":"),this.hls=e}var o=d.prototype;return o.destroy=function(){this.clearTimer(),this.hls=this.log=this.warn=null},o.onError=function(e,t){!t.fatal||t.type!==w.ErrorTypes.NETWORK_ERROR&&t.type!==w.ErrorTypes.KEY_SYSTEM_ERROR||this.stopLoad()},o.clearTimer=function(){clearTimeout(this.timer),this.timer=-1},o.startLoad=function(){this.canLoad=!0,this.retryCount=0,this.requestScheduled=-1,this.loadPlaylist()},o.stopLoad=function(){this.canLoad=!1,this.clearTimer()},o.switchParams=function(e,t){var i=t==null?void 0:t.renditionReports;if(i)for(var n=0;n<i.length;n++){var a=i[n],r=void 0;try{r=new self.URL(a.URI,t.url).href}catch(c){k.logger.warn("Could not construct new URL for Rendition Report: "+c),r=a.URI||""}if(r===e.slice(-r.length)){var s=parseInt(a["LAST-MSN"])||(t==null?void 0:t.lastPartSn),l=parseInt(a["LAST-PART"])||(t==null?void 0:t.lastPartIndex);if(this.hls.config.lowLatencyMode){var u=Math.min(t.age-t.partTarget,t.targetduration);l>=0&&u>t.partTarget&&(l+=1)}return new J(s,l>=0?l:void 0,Nt.No)}}},o.loadPlaylist=function(e){this.requestScheduled===-1&&(this.requestScheduled=self.performance.now())},o.shouldLoadTrack=function(e){return this.canLoad&&e&&!!e.url&&(!e.details||e.details.live)},o.playlistLoaded=function(e,t,i){var n=this,a=t.details,r=t.stats,s=self.performance.now(),l=r.loading.first?Math.max(0,s-r.loading.first):0;if(a.advancedDateTime=Date.now()-l,a.live||i!=null&&i.live){if(a.reloaded(i),i&&this.log("live playlist "+e+" "+(a.advanced?"REFRESHED "+a.lastPartSn+"-"+a.lastPartIndex:"MISSED")),i&&a.fragments.length>0&&function(Ge,Fe){for(var ct=null,Ct=Ge.fragments,ft=Ct.length-1;ft>=0;ft--){var Tt=Ct[ft].initSegment;if(Tt){ct=Tt;break}}Ge.fragmentHint&&delete Ge.fragmentHint.endPTS;var At,$t,Xt,Gt,Zt,yr=0;if(function(st,vt,di){for(var xr=vt.skippedSegments,Dr=Math.max(st.startSN,vt.startSN)-vt.startSN,ci=(st.fragmentHint?1:0)+(xr?vt.endSN:Math.min(st.endSN,vt.endSN))-vt.startSN,Lr=vt.startSN-st.startSN,Or=vt.fragmentHint?vt.fragments.concat(vt.fragmentHint):vt.fragments,Kr=st.fragmentHint?st.fragments.concat(st.fragmentHint):st.fragments,_r=Dr;_r<=ci;_r++){var qr=Kr[Lr+_r],Yi=Or[_r];xr&&!Yi&&_r<xr&&(Yi=vt.fragments[_r]=qr),qr&&Yi&&di(qr,Yi)}}(Ge,Fe,function(st,vt){st.relurl&&(yr=st.cc-vt.cc),(0,R.isFiniteNumber)(st.startPTS)&&(0,R.isFiniteNumber)(st.endPTS)&&(vt.start=vt.startPTS=st.startPTS,vt.startDTS=st.startDTS,vt.appendedPTS=st.appendedPTS,vt.maxStartPTS=st.maxStartPTS,vt.endPTS=st.endPTS,vt.endDTS=st.endDTS,vt.minEndPTS=st.minEndPTS,vt.duration=st.endPTS-st.startPTS,vt.duration&&(At=vt),Fe.PTSKnown=Fe.alignedSliding=!0),vt.elementaryStreams=st.elementaryStreams,vt.loader=st.loader,vt.stats=st.stats,vt.urlId=st.urlId,st.initSegment&&(vt.initSegment=st.initSegment,ct=st.initSegment)}),ct&&(Fe.fragmentHint?Fe.fragments.concat(Fe.fragmentHint):Fe.fragments).forEach(function(st){var vt;st.initSegment&&st.initSegment.relurl!==((vt=ct)===null||vt===void 0?void 0:vt.relurl)||(st.initSegment=ct)}),Fe.skippedSegments)if(Fe.deltaUpdateFailed=Fe.fragments.some(function(st){return!st}),Fe.deltaUpdateFailed){k.logger.warn("[level-helper] Previous playlist missing segments skipped in delta playlist");for(var Ln=Fe.skippedSegments;Ln--;)Fe.fragments.shift();Fe.startSN=Fe.fragments[0].sn,Fe.startCC=Fe.fragments[0].cc}else Fe.canSkipDateRanges&&(Fe.dateRanges=($t=Ge.dateRanges,Xt=Fe.dateRanges,Gt=Fe.recentlyRemovedDateranges,Zt=T({},$t),Gt&&Gt.forEach(function(st){delete Zt[st]}),Object.keys(Xt).forEach(function(st){var vt=new ce(Xt[st].attr,Zt[st]);vt.isValid?Zt[st]=vt:k.logger.warn('Ignoring invalid Playlist Delta Update DATERANGE tag: "'+JSON.stringify(Xt[st].attr)+'"')}),Zt));var Ar=Fe.fragments;if(yr){k.logger.warn("discontinuity sliding from playlist, take drift into account");for(var wi=0;wi<Ar.length;wi++)Ar[wi].cc+=yr}Fe.skippedSegments&&(Fe.startCC=Fe.fragments[0].cc),function(st,vt,di){if(st&&vt)for(var xr=0,Dr=0,ci=st.length;Dr<=ci;Dr++){var Lr=st[Dr],Or=vt[Dr+xr];Lr&&Or&&Lr.index===Or.index&&Lr.fragment.sn===Or.fragment.sn?(Kr=Lr,(_r=Or).elementaryStreams=Kr.elementaryStreams,_r.stats=Kr.stats):xr--}var Kr,_r}(Ge.partList,Fe.partList),At?q(Fe,At,At.startPTS,At.endPTS,At.startDTS,At.endDTS):Y(Ge,Fe),Ar.length&&(Fe.totalduration=Fe.edge-Ar[0].start),Fe.driftStartTime=Ge.driftStartTime,Fe.driftStart=Ge.driftStart;var Ai=Fe.advancedDateTime;if(Fe.advanced&&Ai){var Di=Fe.edge;Fe.driftStart||(Fe.driftStartTime=Ai,Fe.driftStart=Di),Fe.driftEndTime=Ai,Fe.driftEnd=Di}else Fe.driftEndTime=Ge.driftEndTime,Fe.driftEnd=Ge.driftEnd,Fe.advancedDateTime=Ge.advancedDateTime}(i,a),!this.canLoad||!a.live)return;var u,c=void 0,v=void 0;if(a.canBlockReload&&a.endSN&&a.advanced){var m=this.hls.config.lowLatencyMode,_=a.lastPartSn,S=a.endSN,x=a.lastPartIndex,I=_===S;x!==-1?(c=I?S+1:_,v=I?m?0:x:x+1):c=S+1;var j=a.age,ae=j+a.ageHeader,me=Math.min(ae-a.partTarget,1.5*a.targetduration);if(me>0){if(i&&me>i.tuneInGoal)this.warn("CDN Tune-in goal increased from: "+i.tuneInGoal+" to: "+me+" with playlist age: "+a.age),me=0;else{var de=Math.floor(me/a.targetduration);c+=de,v!==void 0&&(v+=Math.round(me%a.targetduration/a.partTarget)),this.log("CDN Tune-in age: "+a.ageHeader+"s last advanced "+j.toFixed(2)+"s goal: "+me+" skip sn "+de+" to part "+v)}a.tuneInGoal=me}if(u=this.getDeliveryDirectives(a,t.deliveryDirectives,c,v),m||!I)return void this.loadPlaylist(u)}else u=this.getDeliveryDirectives(a,t.deliveryDirectives,c,v);var _e=this.hls.mainForwardBufferInfo,Ke=_e?_e.end-_e.len:0,ze=function(Ge,Fe){Fe===void 0&&(Fe=1/0);var ct=1e3*Ge.targetduration;if(Ge.updated){var Ct=Ge.fragments;if(Ct.length&&4*ct>Fe){var ft=1e3*Ct[Ct.length-1].duration;ft<ct&&(ct=ft)}}else ct/=2;return Math.round(ct)}(a,1e3*(a.edge-Ke));a.updated?s>this.requestScheduled+ze&&(this.requestScheduled=r.loading.start):this.requestScheduled=-1,c!==void 0&&a.canBlockReload?this.requestScheduled=r.loading.first+ze-(1e3*a.partTarget||1e3):this.requestScheduled=(this.requestScheduled===-1?s:this.requestScheduled)+ze;var Ee=this.requestScheduled-s;Ee=Math.max(0,Ee),this.log("reload live playlist "+e+" in "+Math.round(Ee)+" ms"),this.timer=self.setTimeout(function(){return n.loadPlaylist(u)},Ee)}else this.clearTimer()},o.getDeliveryDirectives=function(e,t,i,n){var a=function(r,s){var l=r.canSkipUntil,u=r.canSkipDateRanges,c=r.endSN;return l&&(s!==void 0?s-c:0)<l?u?Nt.v2:Nt.Yes:Nt.No}(e,i);return t!=null&&t.skip&&e.deltaUpdateFailed&&(i=t.msn,n=t.part,a=Nt.No),new J(i,n,a)},o.retryLoadingOrFail=function(e){var t,i=this,n=this.hls.config,a=this.retryCount<n.levelLoadingMaxRetry;if(a)if(this.requestScheduled=-1,this.retryCount++,e.details.indexOf("LoadTimeOut")>-1&&(t=e.context)!==null&&t!==void 0&&t.deliveryDirectives)this.warn("retry playlist loading #"+this.retryCount+' after "'+e.details+'"'),this.loadPlaylist();else{var r=Math.min(Math.pow(2,this.retryCount)*n.levelLoadingRetryDelay,n.levelLoadingMaxRetryTimeout);this.timer=self.setTimeout(function(){return i.loadPlaylist()},r),this.warn("retry playlist loading #"+this.retryCount+" in "+r+' ms after "'+e.details+'"')}else this.warn('cannot recover from error "'+e.details+'"'),this.clearTimer(),e.fatal=!0;return a},d}();function Ae(){return Ae=Object.assign?Object.assign.bind():function(d){for(var o=1;o<arguments.length;o++){var e=arguments[o];for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(d[t]=e[t])}return d},Ae.apply(this,arguments)}function Me(d,o){for(var e=0;e<o.length;e++){var t=o[e];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(d,typeof(i=function(n,a){if(typeof n!="object"||n===null)return n;var r=n[Symbol.toPrimitive];if(r!==void 0){var s=r.call(n,a);if(typeof s!="object")return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(t.key,"string"))=="symbol"?i:String(i),t)}var i}function Ve(d,o){return Ve=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Ve(d,o)}var Ue,Qe=/chrome|firefox/.test(navigator.userAgent.toLowerCase()),ot=function(d){var o,e;function t(r){var s;return(s=d.call(this,r,"[level-controller]")||this)._levels=[],s._firstLevel=-1,s._startLevel=void 0,s.currentLevelIndex=-1,s.manualLevelIndex=-1,s.onParsedComplete=void 0,s._registerListeners(),s}e=d,(o=t).prototype=Object.create(e.prototype),o.prototype.constructor=o,Ve(o,e);var i,n,a=t.prototype;return a._registerListeners=function(){var r=this.hls;r.on(p.Events.MANIFEST_LOADED,this.onManifestLoaded,this),r.on(p.Events.LEVEL_LOADED,this.onLevelLoaded,this),r.on(p.Events.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),r.on(p.Events.FRAG_LOADED,this.onFragLoaded,this),r.on(p.Events.ERROR,this.onError,this)},a._unregisterListeners=function(){var r=this.hls;r.off(p.Events.MANIFEST_LOADED,this.onManifestLoaded,this),r.off(p.Events.LEVEL_LOADED,this.onLevelLoaded,this),r.off(p.Events.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),r.off(p.Events.FRAG_LOADED,this.onFragLoaded,this),r.off(p.Events.ERROR,this.onError,this)},a.destroy=function(){this._unregisterListeners(),this.manualLevelIndex=-1,this._levels.length=0,d.prototype.destroy.call(this)},a.startLoad=function(){this._levels.forEach(function(r){r.loadError=0}),d.prototype.startLoad.call(this)},a.onManifestLoaded=function(r,s){var l,u,c=[],v=[],m=[],_={},S=!1,x=!1,I=!1;if(s.levels.forEach(function(de){var _e=de.attrs;S=S||!(!de.width||!de.height),x=x||!!de.videoCodec,I=I||!!de.audioCodec,Qe&&de.audioCodec&&de.audioCodec.indexOf("mp4a.40.34")!==-1&&(de.audioCodec=void 0);var Ke=de.bitrate+"-"+de.attrs.RESOLUTION+"-"+de.attrs.CODECS;(u=_[Ke])?u.url.push(de.url):(u=new O(de),_[Ke]=u,c.push(u)),_e&&(_e.AUDIO&&P(u,"audio",_e.AUDIO),_e.SUBTITLES&&P(u,"text",_e.SUBTITLES))}),(S||x)&&I&&(c=c.filter(function(de){var _e=de.videoCodec,Ke=de.width,ze=de.height;return!!_e||!(!Ke||!ze)})),c=c.filter(function(de){var _e=de.audioCodec,Ke=de.videoCodec;return(!_e||Ce(_e,"audio"))&&(!Ke||Ce(Ke,"video"))}),s.audioTracks&&D(v=s.audioTracks.filter(function(de){return!de.audioCodec||Ce(de.audioCodec,"audio")})),s.subtitles&&D(m=s.subtitles),c.length>0){l=c[0].bitrate,c.sort(function(de,_e){return de.attrs["HDCP-LEVEL"]!==_e.attrs["HDCP-LEVEL"]?(de.attrs["HDCP-LEVEL"]||"")>(_e.attrs["HDCP-LEVEL"]||"")?1:-1:de.bitrate!==_e.bitrate?de.bitrate-_e.bitrate:de.attrs.SCORE!==_e.attrs.SCORE?de.attrs.decimalFloatingPoint("SCORE")-_e.attrs.decimalFloatingPoint("SCORE"):S&&de.height!==_e.height?de.height-_e.height:0}),this._levels=c;for(var j=0;j<c.length;j++)if(c[j].bitrate===l){this._firstLevel=j,this.log("manifest loaded, "+c.length+" level(s) found, first bitrate: "+l);break}var ae=I&&!x,me={levels:c,audioTracks:v,subtitleTracks:m,sessionData:s.sessionData,sessionKeys:s.sessionKeys,firstLevel:this._firstLevel,stats:s.stats,audio:I,video:x,altAudio:!ae&&v.some(function(de){return!!de.url})};this.hls.trigger(p.Events.MANIFEST_PARSED,me),(this.hls.config.autoStartLoad||this.hls.forceStartLoad)&&this.hls.startLoad(this.hls.config.startPosition)}else this.hls.trigger(p.Events.ERROR,{type:w.ErrorTypes.MEDIA_ERROR,details:w.ErrorDetails.MANIFEST_INCOMPATIBLE_CODECS_ERROR,fatal:!0,url:s.url,reason:"no level with compatible codecs found in manifest"})},a.onError=function(r,s){var l,u;if(d.prototype.onError.call(this,r,s),!s.fatal){var c=s.context,v=this._levels[this.currentLevelIndex];if(c&&(c.type===pe.PlaylistContextType.AUDIO_TRACK&&v.audioGroupIds&&c.groupId===v.audioGroupIds[v.urlId]||c.type===pe.PlaylistContextType.SUBTITLE_TRACK&&v.textGroupIds&&c.groupId===v.textGroupIds[v.urlId]))this.redundantFailover(this.currentLevelIndex);else{var m,_=!1,S=!0;switch(s.details){case w.ErrorDetails.FRAG_LOAD_ERROR:case w.ErrorDetails.FRAG_LOAD_TIMEOUT:case w.ErrorDetails.KEY_LOAD_ERROR:case w.ErrorDetails.KEY_LOAD_TIMEOUT:if(s.frag){var x=s.frag.type===pe.PlaylistLevelType.MAIN?s.frag.level:this.currentLevelIndex,I=this._levels[x];I?(I.fragmentError++,I.fragmentError>this.hls.config.fragLoadingMaxRetry&&(m=x)):m=x}break;case w.ErrorDetails.KEY_SYSTEM_STATUS_OUTPUT_RESTRICTED:var j=v.attrs["HDCP-LEVEL"];j&&(this.hls.maxHdcpLevel=dr[dr.indexOf(j)-1],this.warn('Restricting playback to HDCP-LEVEL of "'+this.hls.maxHdcpLevel+'" or lower'));case w.ErrorDetails.FRAG_PARSING_ERROR:case w.ErrorDetails.KEY_SYSTEM_NO_SESSION:m=((l=s.frag)===null||l===void 0?void 0:l.type)===pe.PlaylistLevelType.MAIN?s.frag.level:this.currentLevelIndex,s.levelRetry=!1;break;case w.ErrorDetails.LEVEL_LOAD_ERROR:case w.ErrorDetails.LEVEL_LOAD_TIMEOUT:c&&(c.deliveryDirectives&&(S=!1),m=c.level),_=!0;break;case w.ErrorDetails.REMUX_ALLOC_ERROR:m=(u=s.level)!=null?u:this.currentLevelIndex,_=!0}m!==void 0&&this.recoverLevel(s,m,_,S)}}},a.recoverLevel=function(r,s,l,u){var c=r.details,v=this._levels[s];if(v.loadError++,l){if(!this.retryLoadingOrFail(r))return void(this.currentLevelIndex=-1);r.levelRetry=!0}if(u){var m=v.url.length;if(m>1&&v.loadError<m)r.levelRetry=!0,this.redundantFailover(s);else if(this.manualLevelIndex===-1){for(var _=-1,S=this._levels,x=S.length;x--;){var I=(x+this.currentLevelIndex)%S.length;if(I!==this.currentLevelIndex&&S[I].loadError===0){_=I;break}}_>-1&&this.currentLevelIndex!==_?(this.warn(c+": switch to "+_),r.levelRetry=!0,this.hls.nextAutoLevel=_):r.levelRetry===!1&&(r.fatal=!0)}}},a.redundantFailover=function(r){var s=this._levels[r],l=s.url.length;if(l>1){var u=(s.urlId+1)%l;this.warn("Switching to redundant URL-id "+u),this._levels.forEach(function(c){c.urlId=u}),this.level=r}},a.onFragLoaded=function(r,s){var l=s.frag;if(l!==void 0&&l.type===pe.PlaylistLevelType.MAIN){var u=this._levels[l.level];u!==void 0&&(u.fragmentError=0,u.loadError=0)}},a.onLevelLoaded=function(r,s){var l,u,c=s.level,v=s.details,m=this._levels[c];if(!m)return this.warn("Invalid level index "+c),void((u=s.deliveryDirectives)!==null&&u!==void 0&&u.skip&&(v.deltaUpdateFailed=!0));c===this.currentLevelIndex?(m.fragmentError===0&&(m.loadError=0,this.retryCount=0),this.playlistLoaded(c,s,m.details)):(l=s.deliveryDirectives)!==null&&l!==void 0&&l.skip&&(v.deltaUpdateFailed=!0)},a.onAudioTrackSwitched=function(r,s){var l=this.hls.levels[this.currentLevelIndex];if(l&&l.audioGroupIds){for(var u=-1,c=this.hls.audioTracks[s.id].groupId,v=0;v<l.audioGroupIds.length;v++)if(l.audioGroupIds[v]===c){u=v;break}u!==l.urlId&&(l.urlId=u,this.startLoad())}},a.loadPlaylist=function(r){d.prototype.loadPlaylist.call(this);var s=this.currentLevelIndex,l=this._levels[s];if(this.canLoad&&l&&l.url.length>0){var u=l.urlId,c=l.url[u];if(r)try{c=r.addDirectives(c)}catch(v){this.warn("Could not construct new URL with HLS Delivery Directives: "+v)}this.log("Attempt loading level index "+s+(r?" at sn "+r.msn+" part "+r.part:"")+" with URL-id "+u+" "+c),this.clearTimer(),this.hls.trigger(p.Events.LEVEL_LOADING,{url:c,level:s,id:u,deliveryDirectives:r||null})}},a.removeLevel=function(r,s){var l=function(c,v){return v!==s},u=this._levels.filter(function(c,v){return v!==r||c.url.length>1&&s!==void 0&&(c.url=c.url.filter(l),c.audioGroupIds&&(c.audioGroupIds=c.audioGroupIds.filter(l)),c.textGroupIds&&(c.textGroupIds=c.textGroupIds.filter(l)),c.urlId=0,!0)}).map(function(c,v){var m=c.details;return m!=null&&m.fragments&&m.fragments.forEach(function(_){_.level=v}),c});this._levels=u,this.hls.trigger(p.Events.LEVELS_UPDATED,{levels:u})},i=t,(n=[{key:"levels",get:function(){return this._levels.length===0?null:this._levels}},{key:"level",get:function(){return this.currentLevelIndex},set:function(r){var s,l=this._levels;if(l.length!==0&&(this.currentLevelIndex!==r||(s=l[r])===null||s===void 0||!s.details)){if(r<0||r>=l.length){var u=r<0;if(this.hls.trigger(p.Events.ERROR,{type:w.ErrorTypes.OTHER_ERROR,details:w.ErrorDetails.LEVEL_SWITCH_ERROR,level:r,fatal:u,reason:"invalid level idx"}),u)return;r=Math.min(r,l.length-1)}this.clearTimer();var c=this.currentLevelIndex,v=l[c],m=l[r];this.log("switching to level "+r+" from "+c),this.currentLevelIndex=r;var _=Ae({},m,{level:r,maxBitrate:m.maxBitrate,uri:m.uri,urlId:m.urlId});delete _._urlId,this.hls.trigger(p.Events.LEVEL_SWITCHING,_);var S=m.details;if(!S||S.live){var x=this.switchParams(m.uri,v==null?void 0:v.details);this.loadPlaylist(x)}}}},{key:"manualLevel",get:function(){return this.manualLevelIndex},set:function(r){this.manualLevelIndex=r,this._startLevel===void 0&&(this._startLevel=r),r!==-1&&(this.level=r)}},{key:"firstLevel",get:function(){return this._firstLevel},set:function(r){this._firstLevel=r}},{key:"startLevel",get:function(){if(this._startLevel===void 0){var r=this.hls.config.startLevel;return r!==void 0?r:this._firstLevel}return this._startLevel},set:function(r){this._startLevel=r}},{key:"nextLoadLevel",get:function(){return this.manualLevelIndex!==-1?this.manualLevelIndex:this.hls.nextAutoLevel},set:function(r){this.level=r,this.manualLevelIndex===-1&&(this.hls.nextAutoLevel=r)}}])&&Me(i.prototype,n),Object.defineProperty(i,"prototype",{writable:!1}),t}(Le);(function(d){d.NOT_LOADED="NOT_LOADED",d.APPENDING="APPENDING",d.PARTIAL="PARTIAL",d.OK="OK"})(Ue||(Ue={}));var bt=function(){function d(e){this.activeFragment=null,this.activeParts=null,this.endListFragments=Object.create(null),this.fragments=Object.create(null),this.timeRanges=Object.create(null),this.bufferPadding=.2,this.hls=void 0,this.hls=e,this._registerListeners()}var o=d.prototype;return o._registerListeners=function(){var e=this.hls;e.on(p.Events.BUFFER_APPENDED,this.onBufferAppended,this),e.on(p.Events.FRAG_BUFFERED,this.onFragBuffered,this),e.on(p.Events.FRAG_LOADED,this.onFragLoaded,this)},o._unregisterListeners=function(){var e=this.hls;e.off(p.Events.BUFFER_APPENDED,this.onBufferAppended,this),e.off(p.Events.FRAG_BUFFERED,this.onFragBuffered,this),e.off(p.Events.FRAG_LOADED,this.onFragLoaded,this)},o.destroy=function(){this._unregisterListeners(),this.fragments=this.endListFragments=this.timeRanges=this.activeFragment=this.activeParts=null},o.getAppendedFrag=function(e,t){if(t===pe.PlaylistLevelType.MAIN){var i=this.activeFragment,n=this.activeParts;if(!i)return null;if(n)for(var a=n.length;a--;){var r=n[a],s=r?r.end:i.appendedPTS;if(r.start<=e&&s!==void 0&&e<=s)return a>9&&(this.activeParts=n.slice(a-9)),r}else if(i.start<=e&&i.appendedPTS!==void 0&&e<=i.appendedPTS)return i}return this.getBufferedFrag(e,t)},o.getBufferedFrag=function(e,t){for(var i=this.fragments,n=Object.keys(i),a=n.length;a--;){var r=i[n[a]];if((r==null?void 0:r.body.type)===t&&r.buffered){var s=r.body;if(s.start<=e&&e<=s.end)return s}}return null},o.detectEvictedFragments=function(e,t,i){var n=this;this.timeRanges&&(this.timeRanges[e]=t),Object.keys(this.fragments).forEach(function(a){var r=n.fragments[a];if(r)if(r.buffered||r.loaded){var s=r.range[e];s&&s.time.some(function(l){var u=!n.isTimeBuffered(l.startPTS,l.endPTS,t);return u&&n.removeFragment(r.body),u})}else r.body.type===i&&n.removeFragment(r.body)})},o.detectPartialFragments=function(e){var t=this,i=this.timeRanges,n=e.frag,a=e.part;if(i&&n.sn!=="initSegment"){var r=Lt(n),s=this.fragments[r];s&&(Object.keys(i).forEach(function(l){var u=n.elementaryStreams[l];if(u){var c=i[l],v=a!==null||u.partial===!0;s.range[l]=t.getBufferedTimes(n,a,v,c)}}),s.loaded=null,Object.keys(s.range).length?(s.buffered=!0,s.body.endList&&(this.endListFragments[s.body.type]=s)):this.removeFragment(s.body))}},o.fragBuffered=function(e){var t=Lt(e),i=this.fragments[t];i&&(i.loaded=null,i.buffered=!0)},o.getBufferedTimes=function(e,t,i,n){for(var a={time:[],partial:i},r=t?t.start:e.start,s=t?t.end:e.end,l=e.minEndPTS||s,u=e.maxStartPTS||r,c=0;c<n.length;c++){var v=n.start(c)-this.bufferPadding,m=n.end(c)+this.bufferPadding;if(u>=v&&l<=m){a.time.push({startPTS:Math.max(r,n.start(c)),endPTS:Math.min(s,n.end(c))});break}if(r<m&&s>v)a.partial=!0,a.time.push({startPTS:Math.max(r,n.start(c)),endPTS:Math.min(s,n.end(c))});else if(s<=v)break}return a},o.getPartialFragment=function(e){var t,i,n,a=null,r=0,s=this.bufferPadding,l=this.fragments;return Object.keys(l).forEach(function(u){var c=l[u];c&&We(c)&&(i=c.body.start-s,n=c.body.end+s,e>=i&&e<=n&&(t=Math.min(e-i,n-e),r<=t&&(a=c.body,r=t)))}),a},o.isEndListAppended=function(e){var t=this.endListFragments[e];return t!==void 0&&(t.buffered||We(t))},o.getState=function(e){var t=Lt(e),i=this.fragments[t];return i?i.buffered?We(i)?Ue.PARTIAL:Ue.OK:Ue.APPENDING:Ue.NOT_LOADED},o.isTimeBuffered=function(e,t,i){for(var n,a,r=0;r<i.length;r++){if(n=i.start(r)-this.bufferPadding,a=i.end(r)+this.bufferPadding,e>=n&&t<=a)return!0;if(t<=n)return!1}return!1},o.onFragLoaded=function(e,t){var i=t.frag,n=t.part;if(i.sn!=="initSegment"&&!i.bitrateTest&&!n){var a=Lt(i);this.fragments[a]={body:i,loaded:t,buffered:!1,range:Object.create(null)}}},o.onBufferAppended=function(e,t){var i=this,n=t.frag,a=t.part,r=t.timeRanges;if(n.type===pe.PlaylistLevelType.MAIN)if(this.activeFragment!==n&&(this.activeFragment=n,n.appendedPTS=void 0),a){var s=this.activeParts;s||(this.activeParts=s=[]),s.push(a)}else this.activeParts=null;this.timeRanges=r,Object.keys(r).forEach(function(l){var u=r[l];if(i.detectEvictedFragments(l,u),!a&&n.type===pe.PlaylistLevelType.MAIN){var c=n.elementaryStreams[l];if(!c)return;for(var v=0;v<u.length;v++){var m=u.end(v);m<=c.endPTS&&m>c.startPTS?n.appendedPTS=Math.max(m,n.appendedPTS||0):n.appendedPTS=c.endPTS}}})},o.onFragBuffered=function(e,t){this.detectPartialFragments(t)},o.hasFragment=function(e){var t=Lt(e);return!!this.fragments[t]},o.removeFragmentsInRange=function(e,t,i){var n=this;Object.keys(this.fragments).forEach(function(a){var r=n.fragments[a];if(r&&r.buffered){var s=r.body;s.type===i&&s.start<t&&s.end>e&&n.removeFragment(s)}})},o.removeFragment=function(e){var t=Lt(e);e.stats.loaded=0,e.clearElementaryStreamInfo(),e.appendedPTS=void 0,delete this.fragments[t],e.endList&&delete this.endListFragments[e.type]},o.removeAllFragments=function(){this.fragments=Object.create(null),this.endListFragments=Object.create(null),this.activeFragment=null,this.activeParts=null},d}();function We(d){var o,e;return d.buffered&&(((o=d.range.video)===null||o===void 0?void 0:o.partial)||((e=d.range.audio)===null||e===void 0?void 0:e.partial))}function Lt(d){return d.type+"_"+d.level+"_"+d.urlId+"_"+d.sn}function Qt(d){var o=typeof Map=="function"?new Map:void 0;return Qt=function(e){if(e===null||(t=e,Function.toString.call(t).indexOf("[native code]")===-1))return e;var t;if(typeof e!="function")throw new TypeError("Super expression must either be null or a function");if(o!==void 0){if(o.has(e))return o.get(e);o.set(e,i)}function i(){return Ot(e,arguments,Ze(this).constructor)}return i.prototype=Object.create(e.prototype,{constructor:{value:i,enumerable:!1,writable:!0,configurable:!0}}),Ut(i,e)},Qt(d)}function Ot(d,o,e){return Ot=xt()?Reflect.construct.bind():function(t,i,n){var a=[null];a.push.apply(a,i);var r=new(Function.bind.apply(t,a));return n&&Ut(r,n.prototype),r},Ot.apply(null,arguments)}function xt(){if(typeof Reflect=="undefined"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function Ut(d,o){return Ut=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Ut(d,o)}function Ze(d){return Ze=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(o){return o.__proto__||Object.getPrototypeOf(o)},Ze(d)}var rr=Math.pow(2,17),Er=function(){function d(e){this.config=void 0,this.loader=null,this.partLoadTimeout=-1,this.config=e}var o=d.prototype;return o.destroy=function(){this.loader&&(this.loader.destroy(),this.loader=null)},o.abort=function(){this.loader&&this.loader.abort()},o.load=function(e,t){var i=this,n=e.url;if(!n)return Promise.reject(new Vt({type:w.ErrorTypes.NETWORK_ERROR,details:w.ErrorDetails.FRAG_LOAD_ERROR,fatal:!1,frag:e,networkDetails:null},"Fragment does not have a "+(n?"part list":"url")));this.abort();var a=this.config,r=a.fLoader,s=a.loader;return new Promise(function(l,u){i.loader&&i.loader.destroy();var c=i.loader=e.loader=r?new r(a):new s(a),v=Ft(e),m={timeout:a.fragLoadingTimeOut,maxRetry:0,retryDelay:0,maxRetryDelay:a.fragLoadingMaxRetryTimeout,highWaterMark:e.sn==="initSegment"?1/0:rr};e.stats=c.stats,c.load(v,m,{onSuccess:function(_,S,x,I){i.resetLoader(e,c);var j=_.data;x.resetIV&&e.decryptdata&&(e.decryptdata.iv=new Uint8Array(j.slice(0,16)),j=j.slice(16)),l({frag:e,part:null,payload:j,networkDetails:I})},onError:function(_,S,x){i.resetLoader(e,c),u(new Vt({type:w.ErrorTypes.NETWORK_ERROR,details:w.ErrorDetails.FRAG_LOAD_ERROR,fatal:!1,frag:e,response:_,networkDetails:x}))},onAbort:function(_,S,x){i.resetLoader(e,c),u(new Vt({type:w.ErrorTypes.NETWORK_ERROR,details:w.ErrorDetails.INTERNAL_ABORTED,fatal:!1,frag:e,networkDetails:x}))},onTimeout:function(_,S,x){i.resetLoader(e,c),u(new Vt({type:w.ErrorTypes.NETWORK_ERROR,details:w.ErrorDetails.FRAG_LOAD_TIMEOUT,fatal:!1,frag:e,networkDetails:x}))},onProgress:function(_,S,x,I){t&&t({frag:e,part:null,payload:x,networkDetails:I})}})})},o.loadPart=function(e,t,i){var n=this;this.abort();var a=this.config,r=a.fLoader,s=a.loader;return new Promise(function(l,u){n.loader&&n.loader.destroy();var c=n.loader=e.loader=r?new r(a):new s(a),v=Ft(e,t),m={timeout:a.fragLoadingTimeOut,maxRetry:0,retryDelay:0,maxRetryDelay:a.fragLoadingMaxRetryTimeout,highWaterMark:rr};t.stats=c.stats,c.load(v,m,{onSuccess:function(_,S,x,I){n.resetLoader(e,c),n.updateStatsFromPart(e,t);var j={frag:e,part:t,payload:_.data,networkDetails:I};i(j),l(j)},onError:function(_,S,x){n.resetLoader(e,c),u(new Vt({type:w.ErrorTypes.NETWORK_ERROR,details:w.ErrorDetails.FRAG_LOAD_ERROR,fatal:!1,frag:e,part:t,response:_,networkDetails:x}))},onAbort:function(_,S,x){e.stats.aborted=t.stats.aborted,n.resetLoader(e,c),u(new Vt({type:w.ErrorTypes.NETWORK_ERROR,details:w.ErrorDetails.INTERNAL_ABORTED,fatal:!1,frag:e,part:t,networkDetails:x}))},onTimeout:function(_,S,x){n.resetLoader(e,c),u(new Vt({type:w.ErrorTypes.NETWORK_ERROR,details:w.ErrorDetails.FRAG_LOAD_TIMEOUT,fatal:!1,frag:e,part:t,networkDetails:x}))}})})},o.updateStatsFromPart=function(e,t){var i=e.stats,n=t.stats,a=n.total;if(i.loaded+=n.loaded,a){var r=Math.round(e.duration/t.duration),s=Math.min(Math.round(i.loaded/a),r),l=(r-s)*Math.round(i.loaded/s);i.total=i.loaded+l}else i.total=Math.max(i.loaded,i.total);var u=i.loading,c=n.loading;u.start?u.first+=c.first-c.start:(u.start=c.start,u.first=c.first),u.end=c.end},o.resetLoader=function(e,t){e.loader=null,this.loader===t&&(self.clearTimeout(this.partLoadTimeout),this.loader=null),t.destroy()},d}();function Ft(d,o){o===void 0&&(o=null);var e=o||d,t={frag:d,part:o,responseType:"arraybuffer",url:e.url,headers:{},rangeStart:0,rangeEnd:0},i=e.byteRangeStartOffset,n=e.byteRangeEndOffset;if((0,R.isFiniteNumber)(i)&&(0,R.isFiniteNumber)(n)){var a,r=i,s=n;if(d.sn==="initSegment"&&((a=d.decryptdata)===null||a===void 0?void 0:a.method)==="AES-128"){var l=n-i;l%16&&(s=n+(16-l%16)),i!==0&&(t.resetIV=!0,r=i-16)}t.rangeStart=r,t.rangeEnd=s}return t}var Vt=function(d){var o,e;function t(i){for(var n,a=arguments.length,r=new Array(a>1?a-1:0),s=1;s<a;s++)r[s-1]=arguments[s];return(n=d.call.apply(d,[this].concat(r))||this).data=void 0,n.data=i,n}return e=d,(o=t).prototype=Object.create(e.prototype),o.prototype.constructor=o,Ut(o,e),t}(Qt(Error)),hr=function(){function d(e){this.config=void 0,this.keyUriToKeyInfo={},this.emeController=null,this.config=e}var o=d.prototype;return o.abort=function(){for(var e in this.keyUriToKeyInfo){var t=this.keyUriToKeyInfo[e].loader;t&&t.abort()}},o.detach=function(){for(var e in this.keyUriToKeyInfo){var t=this.keyUriToKeyInfo[e];(t.mediaKeySessionContext||t.decryptdata.isCommonEncryption)&&delete this.keyUriToKeyInfo[e]}},o.destroy=function(){for(var e in this.detach(),this.keyUriToKeyInfo){var t=this.keyUriToKeyInfo[e].loader;t&&t.destroy()}this.keyUriToKeyInfo={}},o.createKeyLoadError=function(e,t,i,n){return t===void 0&&(t=w.ErrorDetails.KEY_LOAD_ERROR),new Vt({type:w.ErrorTypes.NETWORK_ERROR,details:t,fatal:!1,frag:e,networkDetails:i})},o.loadClear=function(e,t){var i=this;if(this.emeController&&this.config.emeEnabled)for(var n=e.sn,a=e.cc,r=function(l){var u=t[l];if(a<=u.cc&&(n==="initSegment"||n<u.sn))return i.emeController.selectKeySystemFormat(u).then(function(c){u.setKeyFormat(c)}),"break"},s=0;s<t.length&&r(s)!=="break";s++);},o.load=function(e){var t=this;return!e.decryptdata&&e.encrypted&&this.emeController?this.emeController.selectKeySystemFormat(e).then(function(i){return t.loadInternal(e,i)}):this.loadInternal(e)},o.loadInternal=function(e,t){var i,n;t&&e.setKeyFormat(t);var a=e.decryptdata;if(!a){var r=t?"Expected frag.decryptdata to be defined after setting format "+t:"Missing decryption data on fragment in onKeyLoading";return Promise.reject(this.createKeyLoadError(e,w.ErrorDetails.KEY_LOAD_ERROR,null,r))}var s=a.uri;if(!s)return Promise.reject(this.createKeyLoadError(e,w.ErrorDetails.KEY_LOAD_ERROR,null,'Invalid key URI: "'+s+'"'));var l,u=this.keyUriToKeyInfo[s];if((i=u)!==null&&i!==void 0&&i.decryptdata.key)return a.key=u.decryptdata.key,Promise.resolve({frag:e,keyInfo:u});if((n=u)!==null&&n!==void 0&&n.keyLoadPromise)switch((l=u.mediaKeySessionContext)===null||l===void 0?void 0:l.keyStatus){case void 0:case"status-pending":case"usable":case"usable-in-future":return u.keyLoadPromise}switch(u=this.keyUriToKeyInfo[s]={decryptdata:a,keyLoadPromise:null,loader:null,mediaKeySessionContext:null},a.method){case"ISO-23001-7":case"SAMPLE-AES":case"SAMPLE-AES-CENC":case"SAMPLE-AES-CTR":return a.keyFormat==="identity"?this.loadKeyHTTP(u,e):this.loadKeyEME(u,e);case"AES-128":return this.loadKeyHTTP(u,e);default:return Promise.reject(this.createKeyLoadError(e,w.ErrorDetails.KEY_LOAD_ERROR,null,'Key supplied with unsupported METHOD: "'+a.method+'"'))}},o.loadKeyEME=function(e,t){var i={frag:t,keyInfo:e};if(this.emeController&&this.config.emeEnabled){var n=this.emeController.loadKey(i);if(n)return(e.keyLoadPromise=n.then(function(a){return e.mediaKeySessionContext=a,i})).catch(function(a){throw e.keyLoadPromise=null,a})}return Promise.resolve(i)},o.loadKeyHTTP=function(e,t){var i=this,n=this.config,a=new n.loader(n);return t.keyLoader=e.loader=a,e.keyLoadPromise=new Promise(function(r,s){var l={keyInfo:e,frag:t,responseType:"arraybuffer",url:e.decryptdata.uri},u={timeout:n.fragLoadingTimeOut,maxRetry:0,retryDelay:n.fragLoadingRetryDelay,maxRetryDelay:n.fragLoadingMaxRetryTimeout,highWaterMark:0},c={onSuccess:function(v,m,_,S){var x=_.frag,I=_.keyInfo,j=_.url;if(!x.decryptdata||I!==i.keyUriToKeyInfo[j])return s(i.createKeyLoadError(x,w.ErrorDetails.KEY_LOAD_ERROR,S,"after key load, decryptdata unset or changed"));I.decryptdata.key=x.decryptdata.key=new Uint8Array(v.data),x.keyLoader=null,I.loader=null,r({frag:x,keyInfo:I})},onError:function(v,m,_){i.resetLoader(m),s(i.createKeyLoadError(t,w.ErrorDetails.KEY_LOAD_ERROR,_))},onTimeout:function(v,m,_){i.resetLoader(m),s(i.createKeyLoadError(t,w.ErrorDetails.KEY_LOAD_TIMEOUT,_))},onAbort:function(v,m,_){i.resetLoader(m),s(i.createKeyLoadError(t,w.ErrorDetails.INTERNAL_ABORTED,_))}};a.load(l,u,c)})},o.resetLoader=function(e){var t=e.frag,i=e.keyInfo,n=e.url,a=i.loader;t.keyLoader===a&&(t.keyLoader=null,i.loader=null),delete this.keyUriToKeyInfo[n],a&&a.destroy()},d}(),wr=function(){function d(){this._boundTick=void 0,this._tickTimer=null,this._tickInterval=null,this._tickCallCount=0,this._boundTick=this.tick.bind(this)}var o=d.prototype;return o.destroy=function(){this.onHandlerDestroying(),this.onHandlerDestroyed()},o.onHandlerDestroying=function(){this.clearNextTick(),this.clearInterval()},o.onHandlerDestroyed=function(){},o.hasInterval=function(){return!!this._tickInterval},o.hasNextTick=function(){return!!this._tickTimer},o.setInterval=function(e){return!this._tickInterval&&(this._tickInterval=self.setInterval(this._boundTick,e),!0)},o.clearInterval=function(){return!!this._tickInterval&&(self.clearInterval(this._tickInterval),this._tickInterval=null,!0)},o.clearNextTick=function(){return!!this._tickTimer&&(self.clearTimeout(this._tickTimer),this._tickTimer=null,!0)},o.tick=function(){this._tickCallCount++,this._tickCallCount===1&&(this.doTick(),this._tickCallCount>1&&this.tickImmediate(),this._tickCallCount=0)},o.tickImmediate=function(){this.clearNextTick(),this._tickTimer=self.setTimeout(this._boundTick,0)},o.doTick=function(){},d}(),cr={length:0,start:function(){return 0},end:function(){return 0}},Mt=function(){function d(){}return d.isBuffered=function(o,e){try{if(o){for(var t=d.getBuffered(o),i=0;i<t.length;i++)if(e>=t.start(i)&&e<=t.end(i))return!0}}catch{}return!1},d.bufferInfo=function(o,e,t){try{if(o){var i,n=d.getBuffered(o),a=[];for(i=0;i<n.length;i++)a.push({start:n.start(i),end:n.end(i)});return this.bufferedInfo(a,e,t)}}catch{}return{len:0,start:e,end:e,nextStart:void 0}},d.bufferedInfo=function(o,e,t){e=Math.max(0,e),o.sort(function(S,x){return S.start-x.start||x.end-S.end});var i=[];if(t)for(var n=0;n<o.length;n++){var a=i.length;if(a){var r=i[a-1].end;o[n].start-r<t?o[n].end>r&&(i[a-1].end=o[n].end):i.push(o[n])}else i.push(o[n])}else i=o;for(var s,l=0,u=e,c=e,v=0;v<i.length;v++){var m=i[v].start,_=i[v].end;if(e+t>=m&&e<_)u=m,l=(c=_)-e;else if(e+t<m){s=m;break}}return{len:l,start:u||0,end:c||0,nextStart:s}},d.getBuffered=function(o){try{return o.buffered}catch(e){return k.logger.log("failed to get media.buffered",e),cr}},d}(),vi=function(d,o,e,t,i,n){t===void 0&&(t=0),i===void 0&&(i=-1),n===void 0&&(n=!1),this.level=void 0,this.sn=void 0,this.part=void 0,this.id=void 0,this.size=void 0,this.partial=void 0,this.transmuxing={start:0,executeStart:0,executeEnd:0,end:0},this.buffering={audio:{start:0,executeStart:0,executeEnd:0,end:0},video:{start:0,executeStart:0,executeEnd:0,end:0},audiovideo:{start:0,executeStart:0,executeEnd:0,end:0}},this.level=d,this.sn=o,this.id=e,this.size=t,this.part=i,this.partial=n};function Ci(d,o){for(var e=null,t=0,i=d.length;t<i;t++){var n=d[t];if(n&&n.cc===o){e=n;break}}return e}function Tr(d,o){if(d){var e=d.start+o;d.start=d.startPTS=e,d.endPTS=e+d.duration}}function Zr(d,o){for(var e=o.fragments,t=0,i=e.length;t<i;t++)Tr(e[t],d);o.fragmentHint&&Tr(o.fragmentHint,d),o.alignedSliding=!0}function xi(d,o){if(d.hasProgramDateTime&&o.hasProgramDateTime){var e=d.fragments,t=o.fragments;if(e.length&&t.length){var i=t[Math.round(t.length/2)-1],n=Ci(e,i.cc)||e[Math.round(e.length/2)-1],a=i.programDateTime,r=n.programDateTime;a!==null&&r!==null&&Zr((r-a)/1e3-(n.start-i.start),d)}}}let Oi=function(d,o){for(var e=0,t=d.length-1,i=null,n=null;e<=t;){var a=o(n=d[i=(e+t)/2|0]);if(a>0)e=i+1;else{if(!(a<0))return n;t=i-1}}return null};function ei(d,o,e,t){e===void 0&&(e=0),t===void 0&&(t=0);var i=null;if(d?i=o[d.sn-o[0].sn+1]||null:e===0&&o[0].start===0&&(i=o[0]),i&&ti(e,t,i)===0)return i;var n=Oi(o,ti.bind(null,e,t));return!n||n===d&&i?i:n}function ti(d,o,e){if(d===void 0&&(d=0),o===void 0&&(o=0),e.start<=d&&e.start+e.duration>d)return 0;var t=Math.min(o,e.duration+(e.deltaPTS?e.deltaPTS:0));return e.start+e.duration-t<=d?1:e.start-t>d&&e.start?-1:0}function Mr(d,o,e){var t=1e3*Math.min(o,e.duration+(e.deltaPTS?e.deltaPTS:0));return(e.endProgramDateTime||0)-t>d}var Yr=N(21);let Zi=function(d){for(var o="",e=d.length,t=0;t<e;t++)o+="["+d.start(t).toFixed(3)+","+d.end(t).toFixed(3)+"]";return o};function Mi(d,o){for(var e=0;e<o.length;e++){var t=o[e];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(d,typeof(i=function(n,a){if(typeof n!="object"||n===null)return n;var r=n[Symbol.toPrimitive];if(r!==void 0){var s=r.call(n,a);if(typeof s!="object")return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(t.key,"string"))=="symbol"?i:String(i),t)}var i}function Fr(d,o){return Fr=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Fr(d,o)}var mr="STOPPED",Et="IDLE",Fi="KEY_LOADING",Nr="FRAG_LOADING",Ir="FRAG_LOADING_WAITING_RETRY",ri="WAITING_TRACK",br="PARSING",Ur="PARSED",Wr="ENDED",Sr="ERROR",Pr="WAITING_INIT_PTS",Br="WAITING_LEVEL",ii=function(d){var o,e;function t(r,s,l,u){var c;return(c=d.call(this)||this).hls=void 0,c.fragPrevious=null,c.fragCurrent=null,c.fragmentTracker=void 0,c.transmuxer=null,c._state=mr,c.media=null,c.mediaBuffer=null,c.config=void 0,c.bitrateTest=!1,c.lastCurrentTime=0,c.nextLoadPosition=0,c.startPosition=0,c.loadedmetadata=!1,c.fragLoadError=0,c.retryDate=0,c.levels=null,c.fragmentLoader=void 0,c.keyLoader=void 0,c.levelLastLoaded=null,c.startFragRequested=!1,c.decrypter=void 0,c.initPTS=[],c.onvseeking=null,c.onvended=null,c.logPrefix="",c.log=void 0,c.warn=void 0,c.logPrefix=u,c.log=k.logger.log.bind(k.logger,u+":"),c.warn=k.logger.warn.bind(k.logger,u+":"),c.hls=r,c.fragmentLoader=new Er(r.config),c.keyLoader=l,c.fragmentTracker=s,c.config=r.config,c.decrypter=new Yr.default(r.config),r.on(p.Events.LEVEL_SWITCHING,c.onLevelSwitching,function(v){if(v===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return v}(c)),c}e=d,(o=t).prototype=Object.create(e.prototype),o.prototype.constructor=o,Fr(o,e);var i,n,a=t.prototype;return a.doTick=function(){this.onTickEnd()},a.onTickEnd=function(){},a.startLoad=function(r){},a.stopLoad=function(){this.fragmentLoader.abort(),this.keyLoader.abort();var r=this.fragCurrent;r&&(r.abortRequests(),this.fragmentTracker.removeFragment(r)),this.resetTransmuxer(),this.fragCurrent=null,this.fragPrevious=null,this.clearInterval(),this.clearNextTick(),this.state=mr},a._streamEnded=function(r,s){if(s.live||r.nextStart||!r.end||!this.media)return!1;var l=s.partList;if(l!=null&&l.length){var u=l[l.length-1];return Mt.isBuffered(this.media,u.start+u.duration/2)}var c=s.fragments[s.fragments.length-1].type;return this.fragmentTracker.isEndListAppended(c)},a.getLevelDetails=function(){var r;if(this.levels&&this.levelLastLoaded!==null)return(r=this.levels[this.levelLastLoaded])===null||r===void 0?void 0:r.details},a.onMediaAttached=function(r,s){var l=this.media=this.mediaBuffer=s.media;this.onvseeking=this.onMediaSeeking.bind(this),this.onvended=this.onMediaEnded.bind(this),l.addEventListener("seeking",this.onvseeking),l.addEventListener("ended",this.onvended);var u=this.config;this.levels&&u.autoStartLoad&&this.state===mr&&this.startLoad(u.startPosition)},a.onMediaDetaching=function(){var r=this.media;r!=null&&r.ended&&(this.log("MSE detaching and video ended, reset startPosition"),this.startPosition=this.lastCurrentTime=0),r&&this.onvseeking&&this.onvended&&(r.removeEventListener("seeking",this.onvseeking),r.removeEventListener("ended",this.onvended),this.onvseeking=this.onvended=null),this.keyLoader&&this.keyLoader.detach(),this.media=this.mediaBuffer=null,this.loadedmetadata=!1,this.fragmentTracker.removeAllFragments(),this.stopLoad()},a.onMediaSeeking=function(){var r=this.config,s=this.fragCurrent,l=this.media,u=this.mediaBuffer,c=this.state,v=l?l.currentTime:0,m=Mt.bufferInfo(u||l,v,r.maxBufferHole);if(this.log("media seeking to "+((0,R.isFiniteNumber)(v)?v.toFixed(3):v)+", state: "+c),this.state===Wr)this.resetLoadingState();else if(s){var _=r.maxFragLookUpTolerance,S=s.start-_,x=s.start+s.duration+_;if(!m.len||x<m.start||S>m.end){var I=v>x;(v<S||I)&&(I&&s.loader&&(this.log("seeking outside of buffer while fragment load in progress, cancel fragment load"),s.abortRequests()),this.resetLoadingState())}}l&&(this.lastCurrentTime=v),this.loadedmetadata||m.len||(this.nextLoadPosition=this.startPosition=v),this.tickImmediate()},a.onMediaEnded=function(){this.startPosition=this.lastCurrentTime=0},a.onLevelSwitching=function(r,s){this.fragLoadError=0},a.onHandlerDestroying=function(){this.stopLoad(),d.prototype.onHandlerDestroying.call(this)},a.onHandlerDestroyed=function(){this.state=mr,this.hls.off(p.Events.LEVEL_SWITCHING,this.onLevelSwitching,this),this.fragmentLoader&&this.fragmentLoader.destroy(),this.keyLoader&&this.keyLoader.destroy(),this.decrypter&&this.decrypter.destroy(),this.hls=this.log=this.warn=this.decrypter=this.keyLoader=this.fragmentLoader=this.fragmentTracker=null,d.prototype.onHandlerDestroyed.call(this)},a.loadFragment=function(r,s,l){this._loadFragForPlayback(r,s,l)},a._loadFragForPlayback=function(r,s,l){var u=this;this._doFragLoad(r,s,l,function(c){if(u.fragContextChanged(r))return u.warn("Fragment "+r.sn+(c.part?" p: "+c.part.index:"")+" of level "+r.level+" was dropped during download."),void u.fragmentTracker.removeFragment(r);r.stats.chunkCount++,u._handleFragmentLoadProgress(c)}).then(function(c){if(c){u.fragLoadError=0;var v=u.state;u.fragContextChanged(r)?(v===Nr||!u.fragCurrent&&v===br)&&(u.fragmentTracker.removeFragment(r),u.state=Et):("payload"in c&&(u.log("Loaded fragment "+r.sn+" of level "+r.level),u.hls.trigger(p.Events.FRAG_LOADED,c)),u._handleFragmentLoadComplete(c))}}).catch(function(c){u.state!==mr&&u.state!==Sr&&(u.warn(c),u.resetFragmentLoading(r))})},a.flushMainBuffer=function(r,s,l){if(l===void 0&&(l=null),r-s){var u={startOffset:r,endOffset:s,type:l};this.fragLoadError=0,this.hls.trigger(p.Events.BUFFER_FLUSHING,u)}},a._loadInitSegment=function(r,s){var l=this;this._doFragLoad(r,s).then(function(u){if(!u||l.fragContextChanged(r)||!l.levels)throw new Error("init load aborted");return u}).then(function(u){var c=l.hls,v=u.payload,m=r.decryptdata;if(v&&v.byteLength>0&&m&&m.key&&m.iv&&m.method==="AES-128"){var _=self.performance.now();return l.decrypter.decrypt(new Uint8Array(v),m.key.buffer,m.iv.buffer).then(function(S){var x=self.performance.now();return c.trigger(p.Events.FRAG_DECRYPTED,{frag:r,payload:S,stats:{tstart:_,tdecrypt:x}}),u.payload=S,u})}return u}).then(function(u){var c=l.fragCurrent,v=l.hls,m=l.levels;if(!m)throw new Error("init load aborted, missing levels");m[r.level].details;var _=r.stats;l.state=Et,l.fragLoadError=0,r.data=new Uint8Array(u.payload),_.parsing.start=_.buffering.start=self.performance.now(),_.parsing.end=_.buffering.end=self.performance.now(),u.frag===c&&v.trigger(p.Events.FRAG_BUFFERED,{stats:_,frag:c,part:null,id:r.type}),l.tick()}).catch(function(u){l.state!==mr&&l.state!==Sr&&(l.warn(u),l.resetFragmentLoading(r))})},a.fragContextChanged=function(r){var s=this.fragCurrent;return!r||!s||r.level!==s.level||r.sn!==s.sn||r.urlId!==s.urlId},a.fragBufferedComplete=function(r,s){var l,u,c=this.mediaBuffer?this.mediaBuffer:this.media;this.log("Buffered "+r.type+" sn: "+r.sn+(s?" part: "+s.index:"")+" of "+(this.logPrefix==="[stream-controller]"?"level":"track")+" "+r.level+" "+(c?Zi(Mt.getBuffered(c)):"(detached)")),this.state=Et,c&&(!this.loadedmetadata&&r.type==pe.PlaylistLevelType.MAIN&&c.buffered.length&&((l=this.fragCurrent)===null||l===void 0?void 0:l.sn)===((u=this.fragPrevious)===null||u===void 0?void 0:u.sn)&&(this.loadedmetadata=!0,this.seekToStartPos()),this.tick())},a.seekToStartPos=function(){},a._handleFragmentLoadComplete=function(r){var s=this.transmuxer;if(s){var l=r.frag,u=r.part,c=r.partsLoaded,v=!c||c.length===0||c.some(function(_){return!_}),m=new vi(l.level,l.sn,l.stats.chunkCount+1,0,u?u.index:-1,!v);s.flush(m)}},a._handleFragmentLoadProgress=function(r){},a._doFragLoad=function(r,s,l,u){var c,v=this;if(l===void 0&&(l=null),!this.levels)throw new Error("frag load aborted, missing levels");var m=null;if(!r.encrypted||(c=r.decryptdata)!==null&&c!==void 0&&c.key?!r.encrypted&&s.encryptedFragments.length&&this.keyLoader.loadClear(r,s.encryptedFragments):(this.log("Loading key for "+r.sn+" of ["+s.startSN+"-"+s.endSN+"], "+(this.logPrefix==="[stream-controller]"?"level":"track")+" "+r.level),this.state=Fi,this.fragCurrent=r,m=this.keyLoader.load(r).then(function(j){if(!v.fragContextChanged(j.frag))return v.hls.trigger(p.Events.KEY_LOADED,j),j}),this.hls.trigger(p.Events.KEY_LOADING,{frag:r}),this.throwIfFragContextChanged("KEY_LOADING")),l=Math.max(r.start,l||0),this.config.lowLatencyMode&&s){var _=s.partList;if(_&&u){l>r.end&&s.fragmentHint&&(r=s.fragmentHint);var S=this.getNextPart(_,r,l);if(S>-1){var x=_[S];return this.log("Loading part sn: "+r.sn+" p: "+x.index+" cc: "+r.cc+" of playlist ["+s.startSN+"-"+s.endSN+"] parts [0-"+S+"-"+(_.length-1)+"] "+(this.logPrefix==="[stream-controller]"?"level":"track")+": "+r.level+", target: "+parseFloat(l.toFixed(3))),this.nextLoadPosition=x.start+x.duration,this.state=Nr,this.hls.trigger(p.Events.FRAG_LOADING,{frag:r,part:_[S],targetBufferTime:l}),this.throwIfFragContextChanged("FRAG_LOADING parts"),m?m.then(function(j){return!j||v.fragContextChanged(j.frag)?null:v.doFragPartsLoad(r,_,S,u)}).catch(function(j){return v.handleFragLoadError(j)}):this.doFragPartsLoad(r,_,S,u).catch(function(j){return v.handleFragLoadError(j)})}if(!r.url||this.loadedEndOfParts(_,l))return Promise.resolve(null)}}this.log("Loading fragment "+r.sn+" cc: "+r.cc+" "+(s?"of ["+s.startSN+"-"+s.endSN+"] ":"")+(this.logPrefix==="[stream-controller]"?"level":"track")+": "+r.level+", target: "+parseFloat(l.toFixed(3))),(0,R.isFiniteNumber)(r.sn)&&!this.bitrateTest&&(this.nextLoadPosition=r.start+r.duration),this.state=Nr,this.hls.trigger(p.Events.FRAG_LOADING,{frag:r,targetBufferTime:l}),this.throwIfFragContextChanged("FRAG_LOADING");var I=this.config.progressive;return I&&m?m.then(function(j){return!j||v.fragContextChanged(j==null?void 0:j.frag)?null:v.fragmentLoader.load(r,u)}).catch(function(j){return v.handleFragLoadError(j)}):Promise.all([this.fragmentLoader.load(r,I?u:void 0),m]).then(function(j){var ae=j[0];return!I&&ae&&u&&u(ae),ae}).catch(function(j){return v.handleFragLoadError(j)})},a.throwIfFragContextChanged=function(r){if(this.fragCurrent===null)throw new Error("frag load aborted, context changed in "+r)},a.doFragPartsLoad=function(r,s,l,u){var c=this;return new Promise(function(v,m){var _=[];(function S(x){var I=s[x];c.fragmentLoader.loadPart(r,I,u).then(function(j){_[I.index]=j;var ae=j.part;c.hls.trigger(p.Events.FRAG_LOADED,j);var me=s[x+1];if(!me||me.fragment!==r)return v({frag:r,part:ae,partsLoaded:_});S(x+1)}).catch(m)})(l)})},a.handleFragLoadError=function(r){if("data"in r){var s=r.data;r.data&&s.details===w.ErrorDetails.INTERNAL_ABORTED?this.handleFragLoadAborted(s.frag,s.part):this.hls.trigger(p.Events.ERROR,s)}else this.hls.trigger(p.Events.ERROR,{type:w.ErrorTypes.OTHER_ERROR,details:w.ErrorDetails.INTERNAL_EXCEPTION,err:r,fatal:!0});return null},a._handleTransmuxerFlush=function(r){var s=this.getCurrentContext(r);if(s&&this.state===br){var l=s.frag,u=s.part,c=s.level,v=self.performance.now();l.stats.parsing.end=v,u&&(u.stats.parsing.end=v),this.updateLevelTiming(l,u,c,r.partial)}else this.fragCurrent||this.state===mr||this.state===Sr||(this.state=Et)},a.getCurrentContext=function(r){var s=this.levels,l=r.level,u=r.sn,c=r.part;if(!s||!s[l])return this.warn("Levels object was unset while buffering fragment "+u+" of level "+l+". The current chunk will not be buffered."),null;var v=s[l],m=c>-1?function(S,x,I){if(!S||!S.details)return null;var j=S.details.partList;if(j)for(var ae=j.length;ae--;){var me=j[ae];if(me.index===I&&me.fragment.sn===x)return me}return null}(v,u,c):null,_=m?m.fragment:function(S,x,I){if(!S||!S.details)return null;var j=S.details,ae=j.fragments[x-j.startSN];return ae||((ae=j.fragmentHint)&&ae.sn===x?ae:x<j.startSN&&I&&I.sn===x?I:null)}(v,u,this.fragCurrent);return _?{frag:_,part:m,level:v}:null},a.bufferFragmentData=function(r,s,l,u){if(r&&this.state===br){var c=r.data1,v=r.data2,m=c;if(c&&v&&(m=(0,W.appendUint8Array)(c,v)),m&&m.length){var _={type:r.type,frag:s,part:l,chunkMeta:u,parent:s.type,data:m};this.hls.trigger(p.Events.BUFFER_APPENDING,_),r.dropped&&r.independent&&!l&&this.flushBufferGap(s)}}},a.flushBufferGap=function(r){var s=this.media;if(s)if(Mt.isBuffered(s,s.currentTime)){var l=s.currentTime,u=Mt.bufferInfo(s,l,0),c=r.duration,v=Math.min(2*this.config.maxFragLookUpTolerance,.25*c),m=Math.max(Math.min(r.start-v,u.end-v),l+v);r.start-m>v&&this.flushMainBuffer(m,r.start)}else this.flushMainBuffer(0,r.start)},a.getFwdBufferInfo=function(r,s){var l=this.config,u=this.getLoadPosition();if(!(0,R.isFiniteNumber)(u))return null;var c=Mt.bufferInfo(r,u,l.maxBufferHole);if(c.len===0&&c.nextStart!==void 0){var v=this.fragmentTracker.getBufferedFrag(u,s);if(v&&c.nextStart<v.end)return Mt.bufferInfo(r,u,Math.max(c.nextStart,l.maxBufferHole))}return c},a.getMaxBufferLength=function(r){var s,l=this.config;return s=r?Math.max(8*l.maxBufferSize/r,l.maxBufferLength):l.maxBufferLength,Math.min(s,l.maxMaxBufferLength)},a.reduceMaxBufferLength=function(r){var s=this.config,l=r||s.maxBufferLength;return s.maxMaxBufferLength>=l&&(s.maxMaxBufferLength/=2,this.warn("Reduce max buffer length to "+s.maxMaxBufferLength+"s"),!0)},a.getNextFragment=function(r,s){var l=s.fragments,u=l.length;if(!u)return null;var c,v=this.config,m=l[0].start;if(s.live){var _=v.initialLiveManifestSize;if(u<_)return this.warn("Not enough fragments to start playback (have: "+u+", need: "+_+")"),null;s.PTSKnown||this.startFragRequested||this.startPosition!==-1||(c=this.getInitialLiveFragment(s,l),this.startPosition=c?this.hls.liveSyncPosition||c.start:r)}else r<=m&&(c=l[0]);if(!c){var S=v.lowLatencyMode?s.partEnd:s.fragmentEnd;c=this.getFragmentAtPosition(r,S,s)}return this.mapToInitFragWhenRequired(c)},a.mapToInitFragWhenRequired=function(r){return r==null||!r.initSegment||r!=null&&r.initSegment.data||this.bitrateTest?r:r.initSegment},a.getNextPart=function(r,s,l){for(var u=-1,c=!1,v=!0,m=0,_=r.length;m<_;m++){var S=r[m];if(v=v&&!S.independent,u>-1&&l<S.start)break;var x=S.loaded;x?u=-1:(c||S.independent||v)&&S.fragment===s&&(u=m),c=x}return u},a.loadedEndOfParts=function(r,s){var l=r[r.length-1];return l&&s>l.start&&l.loaded},a.getInitialLiveFragment=function(r,s){var l=this.fragPrevious,u=null;if(l){if(r.hasProgramDateTime&&(this.log("Live playlist, switching playlist, load frag with same PDT: "+l.programDateTime),u=function(_,S,x){if(S===null||!Array.isArray(_)||!_.length||!(0,R.isFiniteNumber)(S)||S<(_[0].programDateTime||0)||S>=(_[_.length-1].endProgramDateTime||0))return null;x=x||0;for(var I=0;I<_.length;++I){var j=_[I];if(Mr(S,x,j))return j}return null}(s,l.endProgramDateTime,this.config.maxFragLookUpTolerance)),!u){var c=l.sn+1;if(c>=r.startSN&&c<=r.endSN){var v=s[c-r.startSN];l.cc===v.cc&&(u=v,this.log("Live playlist, switching playlist, load frag with next SN: "+u.sn))}u||(u=function(_,S){return Oi(_,function(x){return x.cc<S?1:x.cc>S?-1:0})}(s,l.cc),u&&this.log("Live playlist, switching playlist, load frag with same CC: "+u.sn))}}else{var m=this.hls.liveSyncPosition;m!==null&&(u=this.getFragmentAtPosition(m,this.bitrateTest?r.fragmentEnd:r.edge,r))}return u},a.getFragmentAtPosition=function(r,s,l){var u,c=this.config,v=this.fragPrevious,m=l.fragments,_=l.endSN,S=l.fragmentHint,x=c.maxFragLookUpTolerance,I=!!(c.lowLatencyMode&&l.partList&&S);if(I&&S&&!this.bitrateTest&&(m=m.concat(S),_=S.sn),u=r<s?ei(v,m,r,r>s-x?0:x):m[m.length-1]){var j=u.sn-l.startSN;if(this.fragmentTracker.getState(u)===Ue.OK&&(v=u),v&&u.sn===v.sn&&!I&&v&&u.level===v.level){var ae=m[j+1];u.sn<_&&this.fragmentTracker.getState(ae)!==Ue.OK?(this.log("SN "+u.sn+" just loaded, load next one: "+ae.sn),u=ae):u=null}}return u},a.synchronizeToLiveEdge=function(r){var s=this.config,l=this.media;if(l){var u=this.hls.liveSyncPosition,c=l.currentTime,v=r.fragments[0].start,m=r.edge,_=c>=v-s.maxFragLookUpTolerance&&c<=m;if(u!==null&&l.duration>u&&(c<u||!_)){var S=s.liveMaxLatencyDuration!==void 0?s.liveMaxLatencyDuration:s.liveMaxLatencyDurationCount*r.targetduration;(!_&&l.readyState<4||c<m-S)&&(this.loadedmetadata||(this.nextLoadPosition=u),l.readyState&&(this.warn("Playback: "+c.toFixed(3)+" is located too far from the end of live sliding playlist: "+m+", reset currentTime to : "+u.toFixed(3)),l.currentTime=u))}}},a.alignPlaylists=function(r,s){var l=this.levels,u=this.levelLastLoaded,c=this.fragPrevious,v=u!==null?l[u]:null,m=r.fragments.length;if(!m)return this.warn("No fragments in live playlist"),0;var _=r.fragments[0].start,S=!s,x=r.alignedSliding&&(0,R.isFiniteNumber)(_);if(S||!x&&!_){(function(j,ae,me){ae&&(function(de,_e,Ke){if(function(Ee,Ge,Fe){return!(!Ge.details||!(Fe.endCC>Fe.startCC||Ee&&Ee.cc<Fe.startCC))}(de,Ke,_e)){var ze=function(Ee,Ge,Fe){Fe===void 0&&(Fe=0);var ct=Ee.fragments,Ct=Ge.fragments;if(Ct.length&&ct.length){var ft=Ci(ct,Ct[0].cc);if(ft&&(!ft||ft.startPTS))return ft;k.logger.log("No frag in previous level to align on")}else k.logger.log("No fragments to align")}(Ke.details,_e);ze&&(0,R.isFiniteNumber)(ze.start)&&(k.logger.log("Adjusting PTS using last level due to CC increase within current level "+_e.url),Zr(ze.start,_e))}}(j,me,ae),!me.alignedSliding&&ae.details&&function(de,_e){if(_e.fragments.length&&de.hasProgramDateTime&&_e.hasProgramDateTime){var Ke=_e.fragments[0].programDateTime,ze=de.fragments[0].programDateTime,Ee=(ze-Ke)/1e3+_e.fragments[0].start;Ee&&(0,R.isFiniteNumber)(Ee)&&(k.logger.log("Adjusting PTS using programDateTime delta "+(ze-Ke)+"ms, sliding:"+Ee.toFixed(3)+" "+de.url+" "),Zr(Ee,de))}}(me,ae.details),me.alignedSliding||!ae.details||me.skippedSegments||Y(ae.details,me))})(c,v,r);var I=r.fragments[0].start;return this.log("Live playlist sliding: "+I.toFixed(2)+" start-sn: "+(s?s.startSN:"na")+"->"+r.startSN+" prev-sn: "+(c?c.sn:"na")+" fragments: "+m),I}return _},a.waitForCdnTuneIn=function(r){return r.live&&r.canBlockReload&&r.partTarget&&r.tuneInGoal>Math.max(r.partHoldBack,3*r.partTarget)},a.setStartPosition=function(r,s){var l=this.startPosition;if(l<s&&(l=-1),l===-1||this.lastCurrentTime===-1){var u=r.startTimeOffset;(0,R.isFiniteNumber)(u)?(l=s+u,u<0&&(l+=r.totalduration),l=Math.min(Math.max(s,l),s+r.totalduration),this.log("Start time offset "+u+" found in playlist, adjust startPosition to "+l),this.startPosition=l):r.live?l=this.hls.liveSyncPosition||s:this.startPosition=l=0,this.lastCurrentTime=l}this.nextLoadPosition=l},a.getLoadPosition=function(){var r=this.media,s=0;return this.loadedmetadata&&r?s=r.currentTime:this.nextLoadPosition&&(s=this.nextLoadPosition),s},a.handleFragLoadAborted=function(r,s){this.transmuxer&&r.sn!=="initSegment"&&r.stats.aborted&&(this.warn("Fragment "+r.sn+(s?" part"+s.index:"")+" of level "+r.level+" was aborted"),this.resetFragmentLoading(r))},a.resetFragmentLoading=function(r){this.fragCurrent&&(this.fragContextChanged(r)||this.state===Ir)||(this.state=Et)},a.onFragmentOrKeyLoadError=function(r,s){if(s.fatal)return this.stopLoad(),void(this.state=Sr);var l=this.config;if(s.chunkMeta){var u=this.getCurrentContext(s.chunkMeta);u&&(s.frag=u.frag,s.levelRetry=!0,this.fragLoadError=l.fragLoadingMaxRetry)}var c=s.frag;if(c&&c.type===r)if(this.fragCurrent,this.fragLoadError+1<=l.fragLoadingMaxRetry){this.loadedmetadata||(this.startFragRequested=!1,this.nextLoadPosition=this.startPosition);var v=Math.min(Math.pow(2,this.fragLoadError)*l.fragLoadingRetryDelay,l.fragLoadingMaxRetryTimeout);this.warn("Fragment "+c.sn+" of "+r+" "+c.level+" failed to load, retrying in "+v+"ms"),this.retryDate=self.performance.now()+v,this.fragLoadError++,this.state=Ir}else s.levelRetry?(r===pe.PlaylistLevelType.AUDIO&&(this.fragCurrent=null),this.fragLoadError=0,this.state=Et):(k.logger.error(s.details+" reaches max retry, redispatch as fatal ..."),s.fatal=!0,this.hls.stopLoad(),this.state=Sr)},a.afterBufferFlushed=function(r,s,l){if(r){var u=Mt.getBuffered(r);this.fragmentTracker.detectEvictedFragments(s,u,l),this.state===Wr&&this.resetLoadingState()}},a.resetLoadingState=function(){this.log("Reset loading state"),this.fragCurrent=null,this.fragPrevious=null,this.state=Et},a.resetStartWhenNotLoaded=function(r){if(!this.loadedmetadata){this.startFragRequested=!1;var s=this.levels?this.levels[r].details:null;s!=null&&s.live?(this.startPosition=-1,this.setStartPosition(s,0),this.resetLoadingState()):this.nextLoadPosition=this.startPosition}},a.updateLevelTiming=function(r,s,l,u){var c=this,v=l.details;Object.keys(r.elementaryStreams).reduce(function(m,_){var S=r.elementaryStreams[_];if(S){var x=S.endPTS-S.startPTS;if(x<=0)return c.warn("Could not parse fragment "+r.sn+" "+_+" duration reliably ("+x+")"),m||!1;var I=u?0:q(v,r,S.startPTS,S.endPTS,S.startDTS,S.endDTS);return c.hls.trigger(p.Events.LEVEL_PTS_UPDATED,{details:v,level:l,drift:I,type:_,frag:r,start:S.startPTS,end:S.endPTS}),!0}return m},!1)||(this.warn("Found no media in fragment "+r.sn+" of level "+l.id+" resetting transmuxer to fallback to playlist timing"),this.resetTransmuxer()),this.state=Ur,this.hls.trigger(p.Events.FRAG_PARSED,{frag:r,part:s})},a.resetTransmuxer=function(){this.transmuxer&&(this.transmuxer.destroy(),this.transmuxer=null)},i=t,(n=[{key:"state",get:function(){return this._state},set:function(r){var s=this._state;s!==r&&(this._state=r,this.log(s+"->"+r))}}])&&Mi(i.prototype,n),Object.defineProperty(i,"prototype",{writable:!1}),t}(wr);function ni(){return self.MediaSource||self.WebKitMediaSource}function ai(){return self.SourceBuffer||self.WebKitSourceBuffer}var pi=function(){var d=ENTRY_MODULE,o={},e=function i(n){var a=o[n];if(a!==void 0)return a.exports;var r=o[n]={exports:{}};return d[n].call(r.exports,r,r.exports,i),r.exports};e.m=d,e.n=function(i){var n=i&&i.__esModule?function(){return i.default}:function(){return i};return e.d(n,{a:n}),n},e.d=function(i,n){for(var a in n)e.o(n,a)&&!e.o(i,a)&&Object.defineProperty(i,a,{enumerable:!0,get:n[a]})},e.o=function(i,n){return Object.prototype.hasOwnProperty.call(i,n)},e.r=function(i){typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(i,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(i,"__esModule",{value:!0})};var t=e(ENTRY_MODULE);return t.default||t}.toString().split("ENTRY_MODULE"),Ni="\\(\\s*(/\\*.*?\\*/)?\\s*.*?([\\.|\\-|\\+|\\w|/|@]+).*?\\)";function Yt(d){return(d+"").replace(/[.?*+^$[\]\\(){}|-]/g,"\\$&")}function si(d,o,e){var t={};t[e]=[];var i=o.toString().replace(/^"[^"]+"/,"function"),n=i.match(/^function\s?\w*\(\w+,\s*\w+,\s*(\w+)\)/)||i.match(/^\(\w+,\s*\w+,\s*(\w+)\)\s?\=\s?\>/);if(!n)return t;for(var a,r=n[1],s=new RegExp("(\\\\n|\\W)"+Yt(r)+Ni,"g");a=s.exec(i);)a[3]!=="dll-reference"&&t[e].push(a[3]);for(s=new RegExp("\\("+Yt(r)+'\\("(dll-reference\\s([\\.|\\-|\\+|\\w|/|@]+))"\\)\\)'+Ni,"g");a=s.exec(i);)d[a[2]]||(t[e].push(a[1]),d[a[2]]=N(a[1]).m),t[a[2]]=t[a[2]]||[],t[a[2]].push(a[4]);for(var l,u=Object.keys(t),c=0;c<u.length;c++)for(var v=0;v<t[u[c]].length;v++)l=t[u[c]][v],isNaN(1*l)||(t[u[c]][v]=1*t[u[c]][v]);return t}function en(d){return Object.keys(d).reduce(function(o,e){return o||d[e].length>0},!1)}function Ui(d,o,e,t){var i=d[t].map(function(n){return'"'+n+'": '+o[t][n].toString().replace(/^"[^"]+"/,"function")}).join(",");return pi[0]+"{"+i+"}"+pi[1]+'"'+e+'"'+pi[2]}var Cr=N(544),gi=N(729),Xr=N.n(gi),zr=ni()||{isTypeSupported:function(){return!1}},mi=function(){function d(e,t,i,n){var a=this;this.hls=void 0,this.id=void 0,this.observer=void 0,this.frag=null,this.part=null,this.useWorker=void 0,this.worker=void 0,this.onwmsg=void 0,this.transmuxer=null,this.onTransmuxComplete=void 0,this.onFlush=void 0;var r=e.config;this.hls=e,this.id=t,this.useWorker=!!r.enableWorker,this.onTransmuxComplete=i,this.onFlush=n;var s=function(v,m){(m=m||{}).frag=a.frag,m.id=a.id,a.hls.trigger(v,m)};this.observer=new gi.EventEmitter,this.observer.on(p.Events.FRAG_DECRYPTED,s),this.observer.on(p.Events.ERROR,s);var l={mp4:zr.isTypeSupported("video/mp4"),mpeg:zr.isTypeSupported("audio/mpeg"),mp3:zr.isTypeSupported('audio/mp4; codecs="mp3"')},u=navigator.vendor;if(this.useWorker&&typeof Worker!="undefined"){var c;k.logger.log("demuxing in webworker");try{c=this.worker=function(v,m){m=m||{};var _={main:N.m},S=m.all?{main:Object.keys(_.main)}:function(me,de){for(var _e={main:[de]},Ke={main:[]},ze={main:{}};en(_e);)for(var Ee=Object.keys(_e),Ge=0;Ge<Ee.length;Ge++){var Fe=Ee[Ge],ct=_e[Fe].pop();if(ze[Fe]=ze[Fe]||{},!ze[Fe][ct]&&me[Fe][ct]){ze[Fe][ct]=!0,Ke[Fe]=Ke[Fe]||[],Ke[Fe].push(ct);for(var Ct=si(me,me[Fe][ct],Fe),ft=Object.keys(Ct),Tt=0;Tt<ft.length;Tt++)_e[ft[Tt]]=_e[ft[Tt]]||[],_e[ft[Tt]]=_e[ft[Tt]].concat(Ct[ft[Tt]])}}return Ke}(_,v),x="";Object.keys(S).filter(function(me){return me!=="main"}).forEach(function(me){for(var de=0;S[me][de];)de++;S[me].push(de),_[me][de]="(function(module, exports, __webpack_require__) { module.exports = __webpack_require__; })",x=x+"var "+me+" = ("+Ui(S,_,de,modules)+`)();
|
|
9
|
+
`}),x=x+"new (("+Ui(S,_,v,"main")+")())(self);";var I=new window.Blob([x],{type:"text/javascript"}),j=(window.URL||window.webkitURL||window.mozURL||window.msURL).createObjectURL(I),ae=new window.Worker(j);return ae.objectURL=j,ae}(182),this.onwmsg=this.onWorkerMessage.bind(this),c.addEventListener("message",this.onwmsg),c.onerror=function(v){a.useWorker=!1,k.logger.warn("Exception in webworker, fallback to inline"),a.hls.trigger(p.Events.ERROR,{type:w.ErrorTypes.OTHER_ERROR,details:w.ErrorDetails.INTERNAL_EXCEPTION,fatal:!1,event:"demuxerWorker",error:new Error(v.message+" ("+v.filename+":"+v.lineno+")")})},c.postMessage({cmd:"init",typeSupported:l,vendor:u,id:t,config:JSON.stringify(r)})}catch(v){k.logger.warn("Error in worker:",v),k.logger.error("Error while initializing DemuxerWorker, fallback to inline"),c&&self.URL.revokeObjectURL(c.objectURL),this.transmuxer=new Cr.default(this.observer,l,r,u,t),this.worker=null}}else this.transmuxer=new Cr.default(this.observer,l,r,u,t)}var o=d.prototype;return o.destroy=function(){var e=this.worker;if(e)e.removeEventListener("message",this.onwmsg),e.terminate(),this.worker=null,this.onwmsg=void 0;else{var t=this.transmuxer;t&&(t.destroy(),this.transmuxer=null)}var i=this.observer;i&&i.removeAllListeners(),this.frag=null,this.observer=null,this.hls=null},o.push=function(e,t,i,n,a,r,s,l,u,c){var v,m,_=this;u.transmuxing.start=self.performance.now();var S=this.transmuxer,x=this.worker,I=r?r.start:a.start,j=a.decryptdata,ae=this.frag,me=!(ae&&a.cc===ae.cc),de=!(ae&&u.level===ae.level),_e=ae?u.sn-ae.sn:-1,Ke=this.part?u.part-this.part.index:-1,ze=_e===0&&u.id>1&&u.id===(ae==null?void 0:ae.stats.chunkCount),Ee=!de&&(_e===1||_e===0&&(Ke===1||ze&&Ke<=0)),Ge=self.performance.now();(de||_e||a.stats.parsing.start===0)&&(a.stats.parsing.start=Ge),!r||!Ke&&Ee||(r.stats.parsing.start=Ge);var Fe=!(ae&&((v=a.initSegment)===null||v===void 0?void 0:v.url)===((m=ae.initSegment)===null||m===void 0?void 0:m.url)),ct=new Cr.TransmuxState(me,Ee,l,de,I,Fe);if(!Ee||me||Fe){k.logger.log("[transmuxer-interface, "+a.type+"]: Starting new transmux session for sn: "+u.sn+" p: "+u.part+" level: "+u.level+" id: "+u.id+`
|
|
10
|
+
discontinuity: `+me+`
|
|
11
|
+
trackSwitch: `+de+`
|
|
12
|
+
contiguous: `+Ee+`
|
|
13
|
+
accurateTimeOffset: `+l+`
|
|
14
|
+
timeOffset: `+I+`
|
|
15
|
+
initSegmentChange: `+Fe);var Ct=new Cr.TransmuxConfig(i,n,t,s,c);this.configureTransmuxer(Ct)}if(this.frag=a,this.part=r,x)x.postMessage({cmd:"demux",data:e,decryptdata:j,chunkMeta:u,state:ct},e instanceof ArrayBuffer?[e]:[]);else if(S){var ft=S.push(e,j,u,ct);(0,Cr.isPromise)(ft)?(S.async=!0,ft.then(function(Tt){_.handleTransmuxComplete(Tt)}).catch(function(Tt){_.transmuxerError(Tt,u,"transmuxer-interface push error")})):(S.async=!1,this.handleTransmuxComplete(ft))}},o.flush=function(e){var t=this;e.transmuxing.start=self.performance.now();var i=this.transmuxer,n=this.worker;if(n)n.postMessage({cmd:"flush",chunkMeta:e});else if(i){var a=i.flush(e);(0,Cr.isPromise)(a)||i.async?((0,Cr.isPromise)(a)||(a=Promise.resolve(a)),a.then(function(r){t.handleFlushResult(r,e)}).catch(function(r){t.transmuxerError(r,e,"transmuxer-interface flush error")})):this.handleFlushResult(a,e)}},o.transmuxerError=function(e,t,i){this.hls&&this.hls.trigger(p.Events.ERROR,{type:w.ErrorTypes.MEDIA_ERROR,details:w.ErrorDetails.FRAG_PARSING_ERROR,chunkMeta:t,fatal:!1,error:e,err:e,reason:i})},o.handleFlushResult=function(e,t){var i=this;e.forEach(function(n){i.handleTransmuxComplete(n)}),this.onFlush(t)},o.onWorkerMessage=function(e){var t=e.data,i=this.hls;switch(t.event){case"init":self.URL.revokeObjectURL(this.worker.objectURL);break;case"transmuxComplete":this.handleTransmuxComplete(t.data);break;case"flush":this.onFlush(t.data);break;case"workerLog":k.logger[t.data.logType]&&k.logger[t.data.logType](t.data.message);break;default:t.data=t.data||{},t.data.frag=this.frag,t.data.id=this.id,i.trigger(t.event,t.data)}},o.configureTransmuxer=function(e){var t=this.worker,i=this.transmuxer;t?t.postMessage({cmd:"configure",config:e}):i&&i.configure(e)},o.handleTransmuxComplete=function(e){e.chunkMeta.transmuxing.end=self.performance.now(),this.onTransmuxComplete(e)},d}(),Bi=function(){function d(e,t,i,n){this.config=void 0,this.media=null,this.fragmentTracker=void 0,this.hls=void 0,this.nudgeRetry=0,this.stallReported=!1,this.stalled=null,this.moved=!1,this.seeking=!1,this.config=e,this.media=t,this.fragmentTracker=i,this.hls=n}var o=d.prototype;return o.destroy=function(){this.media=null,this.hls=this.fragmentTracker=null},o.poll=function(e,t){var i=this.config,n=this.media,a=this.stalled;if(n!==null){var r=n.currentTime,s=n.seeking,l=this.seeking&&!s,u=!this.seeking&&s;if(this.seeking=s,r===e){if((u||l)&&(this.stalled=null),!(n.paused&&!s||n.ended||n.playbackRate===0)&&Mt.getBuffered(n).length){var c=Mt.bufferInfo(n,r,0),v=c.len>0,m=c.nextStart||0;if(v||m){if(s){var _=c.len>2,S=!m||t&&t.start<=r||m-r>2&&!this.fragmentTracker.getPartialFragment(r);if(_||S)return;this.moved=!1}if(!this.moved&&this.stalled!==null){var x,I=Math.max(m,c.start||0)-r,j=this.hls.levels?this.hls.levels[this.hls.currentLevel]:null,ae=!(j==null||(x=j.details)===null||x===void 0)&&x.live?2*j.details.targetduration:2;if(I>0&&I<=ae)return void this._trySkipBufferHole(null)}var me=self.performance.now();if(a!==null){var de=me-a;if(s||!(de>=250)||(this._reportStall(c),this.media)){var _e=Mt.bufferInfo(n,r,i.maxBufferHole);this._tryFixBufferStall(_e,de)}}else this.stalled=me}}}else if(this.moved=!0,a!==null){if(this.stallReported){var Ke=self.performance.now()-a;k.logger.warn("playback not stuck anymore @"+r+", after "+Math.round(Ke)+"ms"),this.stallReported=!1}this.stalled=null,this.nudgeRetry=0}}},o._tryFixBufferStall=function(e,t){var i=this.config,n=this.fragmentTracker,a=this.media;if(a!==null){var r=a.currentTime,s=n.getPartialFragment(r);if(s&&(this._trySkipBufferHole(s)||!this.media))return;e.len>i.maxBufferHole&&t>1e3*i.highBufferWatchdogPeriod&&(k.logger.warn("Trying to nudge playhead over buffer-hole"),this.stalled=null,this._tryNudgeBuffer())}},o._reportStall=function(e){var t=this.hls,i=this.media;!this.stallReported&&i&&(this.stallReported=!0,k.logger.warn("Playback stalling at @"+i.currentTime+" due to low buffer ("+JSON.stringify(e)+")"),t.trigger(p.Events.ERROR,{type:w.ErrorTypes.MEDIA_ERROR,details:w.ErrorDetails.BUFFER_STALLED_ERROR,fatal:!1,buffer:e.len}))},o._trySkipBufferHole=function(e){var t=this.config,i=this.hls,n=this.media;if(n===null)return 0;for(var a=n.currentTime,r=0,s=Mt.getBuffered(n),l=0;l<s.length;l++){var u=s.start(l);if(a+t.maxBufferHole>=r&&a<u){var c=Math.max(u+.05,n.currentTime+.1);return k.logger.warn("skipping hole, adjusting currentTime from "+a+" to "+c),this.moved=!0,this.stalled=null,n.currentTime=c,e&&i.trigger(p.Events.ERROR,{type:w.ErrorTypes.MEDIA_ERROR,details:w.ErrorDetails.BUFFER_SEEK_OVER_HOLE,fatal:!1,reason:"fragment loaded with buffer holes, seeking from "+a+" to "+c,frag:e}),c}r=s.end(l)}return 0},o._tryNudgeBuffer=function(){var e=this.config,t=this.hls,i=this.media,n=this.nudgeRetry;if(i!==null){var a=i.currentTime;if(this.nudgeRetry++,n<e.nudgeMaxRetry){var r=a+(n+1)*e.nudgeOffset;k.logger.warn("Nudging 'currentTime' from "+a+" to "+r),i.currentTime=r,t.trigger(p.Events.ERROR,{type:w.ErrorTypes.MEDIA_ERROR,details:w.ErrorDetails.BUFFER_NUDGE_ON_STALL,fatal:!1})}else k.logger.error("Playhead still not moving while enough data buffered @"+a+" after "+e.nudgeMaxRetry+" nudges"),t.trigger(p.Events.ERROR,{type:w.ErrorTypes.MEDIA_ERROR,details:w.ErrorDetails.BUFFER_STALLED_ERROR,fatal:!0})}},d}();function Hr(d,o){for(var e=0;e<o.length;e++){var t=o[e];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(d,typeof(i=function(n,a){if(typeof n!="object"||n===null)return n;var r=n[Symbol.toPrimitive];if(r!==void 0){var s=r.call(n,a);if(typeof s!="object")return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(t.key,"string"))=="symbol"?i:String(i),t)}var i}function yi(d,o){return yi=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},yi(d,o)}var tn=function(d){var o,e;function t(r,s,l){var u;return(u=d.call(this,r,s,l,"[stream-controller]")||this).audioCodecSwap=!1,u.gapController=null,u.level=-1,u._forceStartLoad=!1,u.altAudio=!1,u.audioOnly=!1,u.fragPlaying=null,u.onvplaying=null,u.onvseeked=null,u.fragLastKbps=0,u.couldBacktrack=!1,u.backtrackFragment=null,u.audioCodecSwitch=!1,u.videoBuffer=null,u._registerListeners(),u}e=d,(o=t).prototype=Object.create(e.prototype),o.prototype.constructor=o,yi(o,e);var i,n,a=t.prototype;return a._registerListeners=function(){var r=this.hls;r.on(p.Events.MEDIA_ATTACHED,this.onMediaAttached,this),r.on(p.Events.MEDIA_DETACHING,this.onMediaDetaching,this),r.on(p.Events.MANIFEST_LOADING,this.onManifestLoading,this),r.on(p.Events.MANIFEST_PARSED,this.onManifestParsed,this),r.on(p.Events.LEVEL_LOADING,this.onLevelLoading,this),r.on(p.Events.LEVEL_LOADED,this.onLevelLoaded,this),r.on(p.Events.FRAG_LOAD_EMERGENCY_ABORTED,this.onFragLoadEmergencyAborted,this),r.on(p.Events.ERROR,this.onError,this),r.on(p.Events.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),r.on(p.Events.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),r.on(p.Events.BUFFER_CREATED,this.onBufferCreated,this),r.on(p.Events.BUFFER_FLUSHED,this.onBufferFlushed,this),r.on(p.Events.LEVELS_UPDATED,this.onLevelsUpdated,this),r.on(p.Events.FRAG_BUFFERED,this.onFragBuffered,this)},a._unregisterListeners=function(){var r=this.hls;r.off(p.Events.MEDIA_ATTACHED,this.onMediaAttached,this),r.off(p.Events.MEDIA_DETACHING,this.onMediaDetaching,this),r.off(p.Events.MANIFEST_LOADING,this.onManifestLoading,this),r.off(p.Events.MANIFEST_PARSED,this.onManifestParsed,this),r.off(p.Events.LEVEL_LOADED,this.onLevelLoaded,this),r.off(p.Events.FRAG_LOAD_EMERGENCY_ABORTED,this.onFragLoadEmergencyAborted,this),r.off(p.Events.ERROR,this.onError,this),r.off(p.Events.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),r.off(p.Events.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),r.off(p.Events.BUFFER_CREATED,this.onBufferCreated,this),r.off(p.Events.BUFFER_FLUSHED,this.onBufferFlushed,this),r.off(p.Events.LEVELS_UPDATED,this.onLevelsUpdated,this),r.off(p.Events.FRAG_BUFFERED,this.onFragBuffered,this)},a.onHandlerDestroying=function(){this._unregisterListeners(),this.onMediaDetaching()},a.startLoad=function(r){if(this.levels){var s=this.lastCurrentTime,l=this.hls;if(this.stopLoad(),this.setInterval(100),this.level=-1,this.fragLoadError=0,!this.startFragRequested){var u=l.startLevel;u===-1&&(l.config.testBandwidth&&this.levels.length>1?(u=0,this.bitrateTest=!0):u=l.nextAutoLevel),this.level=l.nextLoadLevel=u,this.loadedmetadata=!1}s>0&&r===-1&&(this.log("Override startPosition with lastCurrentTime @"+s.toFixed(3)),r=s),this.state=Et,this.nextLoadPosition=this.startPosition=this.lastCurrentTime=r,this.tick()}else this._forceStartLoad=!0,this.state=mr},a.stopLoad=function(){this._forceStartLoad=!1,d.prototype.stopLoad.call(this)},a.doTick=function(){switch(this.state){case Et:this.doTickIdle();break;case Br:var r,s=this.levels,l=this.level,u=s==null||(r=s[l])===null||r===void 0?void 0:r.details;if(u&&(!u.live||this.levelLastLoaded===this.level)){if(this.waitForCdnTuneIn(u))break;this.state=Et;break}break;case Ir:var c,v=self.performance.now(),m=this.retryDate;(!m||v>=m||(c=this.media)!==null&&c!==void 0&&c.seeking)&&(this.log("retryDate reached, switch back to IDLE state"),this.resetStartWhenNotLoaded(this.level),this.state=Et)}this.onTickEnd()},a.onTickEnd=function(){d.prototype.onTickEnd.call(this),this.checkBuffer(),this.checkFragmentChanged()},a.doTickIdle=function(){var r=this.hls,s=this.levelLastLoaded,l=this.levels,u=this.media,c=r.config,v=r.nextLoadLevel;if(s!==null&&(u||!this.startFragRequested&&c.startFragPrefetch)&&(!this.altAudio||!this.audioOnly)&&l&&l[v]){var m=l[v],_=this.getMainFwdBufferInfo();if(_!==null){var S=this.getLevelDetails();if(S&&this._streamEnded(_,S)){var x={};return this.altAudio&&(x.type="video"),this.hls.trigger(p.Events.BUFFER_EOS,x),void(this.state=Wr)}this.level=r.nextLoadLevel=v;var I=m.details;if(!I||this.state===Br||I.live&&this.levelLastLoaded!==v)return this.level=v,void(this.state=Br);if(!(_.len>=this.getMaxBufferLength(m.maxBitrate))){this.backtrackFragment&&this.backtrackFragment.start>_.end&&(this.backtrackFragment=null);var j=this.backtrackFragment?this.backtrackFragment.start:_.end,ae=this.getNextFragment(j,I);if(this.couldBacktrack&&!this.fragPrevious&&ae&&ae.sn!=="initSegment"&&this.fragmentTracker.getState(ae)!==Ue.OK){var me,de=((me=this.backtrackFragment)!=null?me:ae).sn-I.startSN,_e=I.fragments[de-1];_e&&ae.cc===_e.cc&&(ae=_e,this.fragmentTracker.removeFragment(_e))}else this.backtrackFragment&&_.len&&(this.backtrackFragment=null);if(ae&&this.fragmentTracker.getState(ae)===Ue.OK&&this.nextLoadPosition>j){var Ke=this.audioOnly&&!this.altAudio?z.ElementaryStreamTypes.AUDIO:z.ElementaryStreamTypes.VIDEO,ze=(Ke===z.ElementaryStreamTypes.VIDEO?this.videoBuffer:this.mediaBuffer)||this.media;ze&&this.afterBufferFlushed(ze,Ke,pe.PlaylistLevelType.MAIN),ae=this.getNextFragment(this.nextLoadPosition,I)}ae&&(!ae.initSegment||ae.initSegment.data||this.bitrateTest||(ae=ae.initSegment),this.loadFragment(ae,I,j))}}}},a.loadFragment=function(r,s,l){var u,c=this.fragmentTracker.getState(r);this.fragCurrent=r,c===Ue.NOT_LOADED?r.sn==="initSegment"?this._loadInitSegment(r,s):this.bitrateTest?(this.log("Fragment "+r.sn+" of level "+r.level+" is being downloaded to test bitrate and will not be buffered"),this._loadBitrateTestFrag(r,s)):(this.startFragRequested=!0,d.prototype.loadFragment.call(this,r,s,l)):c===Ue.APPENDING?this.reduceMaxBufferLength(r.duration)&&this.fragmentTracker.removeFragment(r):((u=this.media)===null||u===void 0?void 0:u.buffered.length)===0&&this.fragmentTracker.removeAllFragments()},a.getAppendedFrag=function(r){var s=this.fragmentTracker.getAppendedFrag(r,pe.PlaylistLevelType.MAIN);return s&&"fragment"in s?s.fragment:s},a.getBufferedFrag=function(r){return this.fragmentTracker.getBufferedFrag(r,pe.PlaylistLevelType.MAIN)},a.followingBufferedFrag=function(r){return r?this.getBufferedFrag(r.end+.5):null},a.immediateLevelSwitch=function(){this.abortCurrentFrag(),this.flushMainBuffer(0,Number.POSITIVE_INFINITY)},a.nextLevelSwitch=function(){var r=this.levels,s=this.media;if(s!=null&&s.readyState){var l,u=this.getAppendedFrag(s.currentTime);if(u&&u.start>1&&this.flushMainBuffer(0,u.start-1),!s.paused&&r){var c=r[this.hls.nextLoadLevel],v=this.fragLastKbps;l=v&&this.fragCurrent?this.fragCurrent.duration*c.maxBitrate/(1e3*v)+1:0}else l=0;var m=this.getBufferedFrag(s.currentTime+l);if(m){var _=this.followingBufferedFrag(m);if(_){this.abortCurrentFrag();var S=_.maxStartPTS?_.maxStartPTS:_.start,x=_.duration,I=Math.max(m.end,S+Math.min(Math.max(x-this.config.maxFragLookUpTolerance,.5*x),.75*x));this.flushMainBuffer(I,Number.POSITIVE_INFINITY)}}}},a.abortCurrentFrag=function(){var r=this.fragCurrent;switch(this.fragCurrent=null,this.backtrackFragment=null,r&&r.abortRequests(),this.state){case Fi:case Nr:case Ir:case br:case Ur:this.state=Et}this.nextLoadPosition=this.getLoadPosition()},a.flushMainBuffer=function(r,s){d.prototype.flushMainBuffer.call(this,r,s,this.altAudio?"video":null)},a.onMediaAttached=function(r,s){d.prototype.onMediaAttached.call(this,r,s);var l=s.media;this.onvplaying=this.onMediaPlaying.bind(this),this.onvseeked=this.onMediaSeeked.bind(this),l.addEventListener("playing",this.onvplaying),l.addEventListener("seeked",this.onvseeked),this.gapController=new Bi(this.config,l,this.fragmentTracker,this.hls)},a.onMediaDetaching=function(){var r=this.media;r&&this.onvplaying&&this.onvseeked&&(r.removeEventListener("playing",this.onvplaying),r.removeEventListener("seeked",this.onvseeked),this.onvplaying=this.onvseeked=null,this.videoBuffer=null),this.fragPlaying=null,this.gapController&&(this.gapController.destroy(),this.gapController=null),d.prototype.onMediaDetaching.call(this)},a.onMediaPlaying=function(){this.tick()},a.onMediaSeeked=function(){var r=this.media,s=r?r.currentTime:null;(0,R.isFiniteNumber)(s)&&this.log("Media seeked to "+s.toFixed(3)),this.tick()},a.onManifestLoading=function(){this.log("Trigger BUFFER_RESET"),this.hls.trigger(p.Events.BUFFER_RESET,void 0),this.fragmentTracker.removeAllFragments(),this.couldBacktrack=!1,this.startPosition=this.lastCurrentTime=0,this.fragPlaying=null,this.backtrackFragment=null},a.onManifestParsed=function(r,s){var l,u,c,v=!1,m=!1;s.levels.forEach(function(_){(l=_.audioCodec)&&(l.indexOf("mp4a.40.2")!==-1&&(v=!0),l.indexOf("mp4a.40.5")!==-1&&(m=!0))}),this.audioCodecSwitch=v&&m&&typeof((c=ai())==null||(u=c.prototype)===null||u===void 0?void 0:u.changeType)!="function",this.audioCodecSwitch&&this.log("Both AAC/HE-AAC audio found in levels; declaring level codec as HE-AAC"),this.levels=s.levels,this.startFragRequested=!1},a.onLevelLoading=function(r,s){var l=this.levels;if(l&&this.state===Et){var u=l[s.level];(!u.details||u.details.live&&this.levelLastLoaded!==s.level||this.waitForCdnTuneIn(u.details))&&(this.state=Br)}},a.onLevelLoaded=function(r,s){var l,u=this.levels,c=s.level,v=s.details,m=v.totalduration;if(u){this.log("Level "+c+" loaded ["+v.startSN+","+v.endSN+"], cc ["+v.startCC+", "+v.endCC+"] duration:"+m);var _=this.fragCurrent;!_||this.state!==Nr&&this.state!==Ir||_.level!==s.level&&_.loader&&(this.state=Et,this.backtrackFragment=null,_.abortRequests());var S=u[c],x=0;if(v.live||(l=S.details)!==null&&l!==void 0&&l.live){if(v.fragments[0]||(v.deltaUpdateFailed=!0),v.deltaUpdateFailed)return;x=this.alignPlaylists(v,S.details)}if(S.details=v,this.levelLastLoaded=c,this.hls.trigger(p.Events.LEVEL_UPDATED,{details:v,level:c}),this.state===Br){if(this.waitForCdnTuneIn(v))return;this.state=Et}this.startFragRequested?v.live&&this.synchronizeToLiveEdge(v):this.setStartPosition(v,x),this.tick()}else this.warn("Levels were reset while loading level "+c)},a._handleFragmentLoadProgress=function(r){var s,l=r.frag,u=r.part,c=r.payload,v=this.levels;if(v){var m=v[l.level],_=m.details;if(_){var S=m.videoCodec,x=_.PTSKnown||!_.live,I=(s=l.initSegment)===null||s===void 0?void 0:s.data,j=this._getAudioCodec(m),ae=this.transmuxer=this.transmuxer||new mi(this.hls,pe.PlaylistLevelType.MAIN,this._handleTransmuxComplete.bind(this),this._handleTransmuxerFlush.bind(this)),me=u?u.index:-1,de=me!==-1,_e=new vi(l.level,l.sn,l.stats.chunkCount,c.byteLength,me,de),Ke=this.initPTS[l.cc];ae.push(c,I,j,S,l,u,_.totalduration,x,_e,Ke)}else this.warn("Dropping fragment "+l.sn+" of level "+l.level+" after level details were reset")}else this.warn("Levels were reset while fragment load was in progress. Fragment "+l.sn+" of level "+l.level+" will not be buffered")},a.onAudioTrackSwitching=function(r,s){var l=this.altAudio,u=!!s.url,c=s.id;if(!u){if(this.mediaBuffer!==this.media){this.log("Switching on main audio, use media.buffered to schedule main fragment loading"),this.mediaBuffer=this.media;var v=this.fragCurrent;v&&(this.log("Switching to main audio track, cancel main fragment load"),v.abortRequests()),this.resetTransmuxer(),this.resetLoadingState()}else this.audioOnly&&this.resetTransmuxer();var m=this.hls;l&&m.trigger(p.Events.BUFFER_FLUSHING,{startOffset:0,endOffset:Number.POSITIVE_INFINITY,type:"audio"}),m.trigger(p.Events.AUDIO_TRACK_SWITCHED,{id:c})}},a.onAudioTrackSwitched=function(r,s){var l=s.id,u=!!this.hls.audioTracks[l].url;if(u){var c=this.videoBuffer;c&&this.mediaBuffer!==c&&(this.log("Switching on alternate audio, use video.buffered to schedule main fragment loading"),this.mediaBuffer=c)}this.altAudio=u,this.tick()},a.onBufferCreated=function(r,s){var l,u,c=s.tracks,v=!1;for(var m in c){var _=c[m];if(_.id==="main"){if(u=m,l=_,m==="video"){var S=c[m];S&&(this.videoBuffer=S.buffer)}}else v=!0}v&&l?(this.log("Alternate track found, use "+u+".buffered to schedule main fragment loading"),this.mediaBuffer=l.buffer):this.mediaBuffer=this.media},a.onFragBuffered=function(r,s){var l=s.frag,u=s.part;if(!l||l.type===pe.PlaylistLevelType.MAIN){if(this.fragContextChanged(l))return this.warn("Fragment "+l.sn+(u?" p: "+u.index:"")+" of level "+l.level+" finished buffering, but was aborted. state: "+this.state),void(this.state===Ur&&(this.state=Et));var c=u?u.stats:l.stats;this.fragLastKbps=Math.round(8*c.total/(c.buffering.end-c.loading.first)),l.sn!=="initSegment"&&(this.fragPrevious=l),this.fragBufferedComplete(l,u)}},a.onError=function(r,s){if(s.type!==w.ErrorTypes.KEY_SYSTEM_ERROR)switch(s.details){case w.ErrorDetails.FRAG_LOAD_ERROR:case w.ErrorDetails.FRAG_LOAD_TIMEOUT:case w.ErrorDetails.FRAG_PARSING_ERROR:case w.ErrorDetails.KEY_LOAD_ERROR:case w.ErrorDetails.KEY_LOAD_TIMEOUT:this.onFragmentOrKeyLoadError(pe.PlaylistLevelType.MAIN,s);break;case w.ErrorDetails.LEVEL_LOAD_ERROR:case w.ErrorDetails.LEVEL_LOAD_TIMEOUT:this.state!==Sr&&(s.fatal?(this.warn(""+s.details),this.state=Sr):s.levelRetry||this.state!==Br||(this.state=Et));break;case w.ErrorDetails.BUFFER_FULL_ERROR:if(s.parent==="main"&&(this.state===br||this.state===Ur)){var l=!0,u=this.getFwdBufferInfo(this.media,pe.PlaylistLevelType.MAIN);u&&u.len>.5&&(l=!this.reduceMaxBufferLength(u.len)),l&&(this.warn("buffer full error also media.currentTime is not buffered, flush main"),this.immediateLevelSwitch()),this.resetLoadingState()}}else this.onFragmentOrKeyLoadError(pe.PlaylistLevelType.MAIN,s)},a.checkBuffer=function(){var r=this.media,s=this.gapController;if(r&&s&&r.readyState){if(this.loadedmetadata||!Mt.getBuffered(r).length){var l=this.state!==Et?this.fragCurrent:null;s.poll(this.lastCurrentTime,l)}this.lastCurrentTime=r.currentTime}},a.onFragLoadEmergencyAborted=function(){this.state=Et,this.loadedmetadata||(this.startFragRequested=!1,this.nextLoadPosition=this.startPosition),this.tickImmediate()},a.onBufferFlushed=function(r,s){var l=s.type;if(l!==z.ElementaryStreamTypes.AUDIO||this.audioOnly&&!this.altAudio){var u=(l===z.ElementaryStreamTypes.VIDEO?this.videoBuffer:this.mediaBuffer)||this.media;this.afterBufferFlushed(u,l,pe.PlaylistLevelType.MAIN)}},a.onLevelsUpdated=function(r,s){this.levels=s.levels},a.swapAudioCodec=function(){this.audioCodecSwap=!this.audioCodecSwap},a.seekToStartPos=function(){var r=this.media;if(r){var s=r.currentTime,l=this.startPosition;if(l>=0&&s<l){if(r.seeking)return void this.log("could not seek to "+l+", already seeking at "+s);var u=Mt.getBuffered(r),c=(u.length?u.start(0):0)-l;c>0&&(c<this.config.maxBufferHole||c<this.config.maxFragLookUpTolerance)&&(this.log("adjusting start position by "+c+" to match buffer start"),l+=c,this.startPosition=l),this.log("seek to target start position "+l+" from current time "+s),r.currentTime=l}}},a._getAudioCodec=function(r){var s=this.config.defaultAudioCodec||r.audioCodec;return this.audioCodecSwap&&s&&(this.log("Swapping audio codec"),s=s.indexOf("mp4a.40.5")!==-1?"mp4a.40.2":"mp4a.40.5"),s},a._loadBitrateTestFrag=function(r,s){var l=this;r.bitrateTest=!0,this._doFragLoad(r,s).then(function(u){var c=l.hls;if(u&&!c.nextLoadLevel&&!l.fragContextChanged(r)){l.fragLoadError=0,l.state=Et,l.startFragRequested=!1,l.bitrateTest=!1;var v=r.stats;v.parsing.start=v.parsing.end=v.buffering.start=v.buffering.end=self.performance.now(),c.trigger(p.Events.FRAG_LOADED,u),r.bitrateTest=!1}})},a._handleTransmuxComplete=function(r){var s,l="main",u=this.hls,c=r.remuxResult,v=r.chunkMeta,m=this.getCurrentContext(v);if(!m)return this.warn("The loading context changed while buffering fragment "+v.sn+" of level "+v.level+". This chunk will not be buffered."),void this.resetStartWhenNotLoaded(v.level);var _=m.frag,S=m.part,x=m.level,I=c.video,j=c.text,ae=c.id3,me=c.initSegment,de=x.details,_e=this.altAudio?void 0:c.audio;if(!this.fragContextChanged(_)){if(this.state=br,me){me.tracks&&(this._bufferInitSegment(x,me.tracks,_,v),u.trigger(p.Events.FRAG_PARSING_INIT_SEGMENT,{frag:_,id:l,tracks:me.tracks}));var Ke=me.initPTS,ze=me.timescale;(0,R.isFiniteNumber)(Ke)&&(this.initPTS[_.cc]=Ke,u.trigger(p.Events.INIT_PTS_FOUND,{frag:_,id:l,initPTS:Ke,timescale:ze}))}if(I&&c.independent!==!1){if(de){var Ee=I.startPTS,Ge=I.endPTS,Fe=I.startDTS,ct=I.endDTS;if(S)S.elementaryStreams[I.type]={startPTS:Ee,endPTS:Ge,startDTS:Fe,endDTS:ct};else if(I.firstKeyFrame&&I.independent&&v.id===1&&(this.couldBacktrack=!0),I.dropped&&I.independent){var Ct=this.getMainFwdBufferInfo();if((Ct?Ct.end:this.getLoadPosition())+this.config.maxBufferHole<(I.firstKeyFramePTS?I.firstKeyFramePTS:Ee)-this.config.maxBufferHole)return void this.backtrack(_);_.setElementaryStreamInfo(I.type,_.start,Ge,_.start,ct,!0)}_.setElementaryStreamInfo(I.type,Ee,Ge,Fe,ct),this.backtrackFragment&&(this.backtrackFragment=_),this.bufferFragmentData(I,_,S,v)}}else if(c.independent===!1)return void this.backtrack(_);if(_e){var ft=_e.startPTS,Tt=_e.endPTS,At=_e.startDTS,$t=_e.endDTS;S&&(S.elementaryStreams[z.ElementaryStreamTypes.AUDIO]={startPTS:ft,endPTS:Tt,startDTS:At,endDTS:$t}),_.setElementaryStreamInfo(z.ElementaryStreamTypes.AUDIO,ft,Tt,At,$t),this.bufferFragmentData(_e,_,S,v)}if(de&&ae!=null&&(s=ae.samples)!==null&&s!==void 0&&s.length){var Xt={id:l,frag:_,details:de,samples:ae.samples};u.trigger(p.Events.FRAG_PARSING_METADATA,Xt)}if(de&&j){var Gt={id:l,frag:_,details:de,samples:j.samples};u.trigger(p.Events.FRAG_PARSING_USERDATA,Gt)}}},a._bufferInitSegment=function(r,s,l,u){var c=this;if(this.state===br){this.audioOnly=!!s.audio&&!s.video,this.altAudio&&!this.audioOnly&&delete s.audio;var v=s.audio,m=s.video,_=s.audiovideo;if(v){var S=r.audioCodec,x=navigator.userAgent.toLowerCase();this.audioCodecSwitch&&(S&&(S=S.indexOf("mp4a.40.5")!==-1?"mp4a.40.2":"mp4a.40.5"),v.metadata.channelCount!==1&&x.indexOf("firefox")===-1&&(S="mp4a.40.5")),x.indexOf("android")!==-1&&v.container!=="audio/mpeg"&&(S="mp4a.40.2",this.log("Android: force audio codec to "+S)),r.audioCodec&&r.audioCodec!==S&&this.log('Swapping manifest audio codec "'+r.audioCodec+'" for "'+S+'"'),v.levelCodec=S,v.id="main",this.log("Init audio buffer, container:"+v.container+", codecs[selected/level/parsed]=["+(S||"")+"/"+(r.audioCodec||"")+"/"+v.codec+"]")}m&&(m.levelCodec=r.videoCodec,m.id="main",this.log("Init video buffer, container:"+m.container+", codecs[level/parsed]=["+(r.videoCodec||"")+"/"+m.codec+"]")),_&&this.log("Init audiovideo buffer, container:"+_.container+", codecs[level/parsed]=["+(r.attrs.CODECS||"")+"/"+_.codec+"]"),this.hls.trigger(p.Events.BUFFER_CODECS,s),Object.keys(s).forEach(function(I){var j=s[I].initSegment;j!=null&&j.byteLength&&c.hls.trigger(p.Events.BUFFER_APPENDING,{type:I,data:j,frag:l,part:null,chunkMeta:u,parent:l.type})}),this.tick()}},a.getMainFwdBufferInfo=function(){return this.getFwdBufferInfo(this.mediaBuffer?this.mediaBuffer:this.media,pe.PlaylistLevelType.MAIN)},a.backtrack=function(r){this.couldBacktrack=!0,this.backtrackFragment=r,this.resetTransmuxer(),this.flushBufferGap(r),this.fragmentTracker.removeFragment(r),this.fragPrevious=null,this.nextLoadPosition=r.start,this.state=Et},a.checkFragmentChanged=function(){var r=this.media,s=null;if(r&&r.readyState>1&&r.seeking===!1){var l=r.currentTime;if(Mt.isBuffered(r,l)?s=this.getAppendedFrag(l):Mt.isBuffered(r,l+.1)&&(s=this.getAppendedFrag(l+.1)),s){this.backtrackFragment=null;var u=this.fragPlaying,c=s.level;u&&s.sn===u.sn&&u.level===c&&s.urlId===u.urlId||(this.fragPlaying=s,this.hls.trigger(p.Events.FRAG_CHANGED,{frag:s}),u&&u.level===c||this.hls.trigger(p.Events.LEVEL_SWITCHED,{level:c}))}}},i=t,(n=[{key:"nextLevel",get:function(){var r=this.nextBufferedFrag;return r?r.level:-1}},{key:"currentFrag",get:function(){var r=this.media;return r?this.fragPlaying||this.getAppendedFrag(r.currentTime):null}},{key:"currentProgramDateTime",get:function(){var r=this.media;if(r){var s=r.currentTime,l=this.currentFrag;if(l&&(0,R.isFiniteNumber)(s)&&(0,R.isFiniteNumber)(l.programDateTime)){var u=l.programDateTime+1e3*(s-l.start);return new Date(u)}}return null}},{key:"currentLevel",get:function(){var r=this.currentFrag;return r?r.level:-1}},{key:"nextBufferedFrag",get:function(){var r=this.currentFrag;return r?this.followingBufferedFrag(r):null}},{key:"forceStartLoad",get:function(){return this._forceStartLoad}}])&&Hr(i.prototype,n),Object.defineProperty(i,"prototype",{writable:!1}),t}(ii);let oi=function(){function d(e,t,i){t===void 0&&(t=0),i===void 0&&(i=0),this.halfLife=void 0,this.alpha_=void 0,this.estimate_=void 0,this.totalWeight_=void 0,this.halfLife=e,this.alpha_=e?Math.exp(Math.log(.5)/e):0,this.estimate_=t,this.totalWeight_=i}var o=d.prototype;return o.sample=function(e,t){var i=Math.pow(this.alpha_,e);this.estimate_=t*(1-i)+i*this.estimate_,this.totalWeight_+=e},o.getTotalWeight=function(){return this.totalWeight_},o.getEstimate=function(){if(this.alpha_){var e=1-Math.pow(this.alpha_,this.totalWeight_);if(e)return this.estimate_/e}return this.estimate_},d}(),rn=function(){function d(e,t,i){this.defaultEstimate_=void 0,this.minWeight_=void 0,this.minDelayMs_=void 0,this.slow_=void 0,this.fast_=void 0,this.defaultEstimate_=i,this.minWeight_=.001,this.minDelayMs_=50,this.slow_=new oi(e),this.fast_=new oi(t)}var o=d.prototype;return o.update=function(e,t){var i=this.slow_,n=this.fast_;this.slow_.halfLife!==e&&(this.slow_=new oi(e,i.getEstimate(),i.getTotalWeight())),this.fast_.halfLife!==t&&(this.fast_=new oi(t,n.getEstimate(),n.getTotalWeight()))},o.sample=function(e,t){var i=(e=Math.max(e,this.minDelayMs_))/1e3,n=8*t/i;this.fast_.sample(i,n),this.slow_.sample(i,n)},o.canEstimate=function(){var e=this.fast_;return e&&e.getTotalWeight()>=this.minWeight_},o.getEstimate=function(){return this.canEstimate()?Math.min(this.fast_.getEstimate(),this.slow_.getEstimate()):this.defaultEstimate_},o.destroy=function(){},d}();function nn(d,o){for(var e=0;e<o.length;e++){var t=o[e];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(d,typeof(i=function(n,a){if(typeof n!="object"||n===null)return n;var r=n[Symbol.toPrimitive];if(r!==void 0){var s=r.call(n,a);if(typeof s!="object")return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(t.key,"string"))=="symbol"?i:String(i),t)}var i}let an=function(){function d(i){this.hls=void 0,this.lastLoadedFragLevel=0,this._nextAutoLevel=-1,this.timer=void 0,this.onCheck=this._abandonRulesCheck.bind(this),this.fragCurrent=null,this.partCurrent=null,this.bitrateTestDelay=0,this.bwEstimator=void 0,this.hls=i;var n=i.config;this.bwEstimator=new rn(n.abrEwmaSlowVoD,n.abrEwmaFastVoD,n.abrEwmaDefaultEstimate),this.registerListeners()}var o,e,t=d.prototype;return t.registerListeners=function(){var i=this.hls;i.on(p.Events.FRAG_LOADING,this.onFragLoading,this),i.on(p.Events.FRAG_LOADED,this.onFragLoaded,this),i.on(p.Events.FRAG_BUFFERED,this.onFragBuffered,this),i.on(p.Events.LEVEL_LOADED,this.onLevelLoaded,this),i.on(p.Events.ERROR,this.onError,this)},t.unregisterListeners=function(){var i=this.hls;i.off(p.Events.FRAG_LOADING,this.onFragLoading,this),i.off(p.Events.FRAG_LOADED,this.onFragLoaded,this),i.off(p.Events.FRAG_BUFFERED,this.onFragBuffered,this),i.off(p.Events.LEVEL_LOADED,this.onLevelLoaded,this),i.off(p.Events.ERROR,this.onError,this)},t.destroy=function(){this.unregisterListeners(),this.clearTimer(),this.hls=this.onCheck=null,this.fragCurrent=this.partCurrent=null},t.onFragLoading=function(i,n){var a,r=n.frag;r.type===pe.PlaylistLevelType.MAIN&&(this.timer||(this.fragCurrent=r,this.partCurrent=(a=n.part)!=null?a:null,this.timer=self.setInterval(this.onCheck,100)))},t.onLevelLoaded=function(i,n){var a=this.hls.config;n.details.live?this.bwEstimator.update(a.abrEwmaSlowLive,a.abrEwmaFastLive):this.bwEstimator.update(a.abrEwmaSlowVoD,a.abrEwmaFastVoD)},t._abandonRulesCheck=function(){var i=this.fragCurrent,n=this.partCurrent,a=this.hls,r=a.autoLevelEnabled,s=a.media;if(i&&s){var l=n?n.stats:i.stats,u=n?n.duration:i.duration;if(l.aborted||l.loaded&&l.loaded===l.total||i.level===0)return this.clearTimer(),void(this._nextAutoLevel=-1);if(r&&!s.paused&&s.playbackRate&&s.readyState){var c=a.mainForwardBufferInfo;if(c!==null){var v=performance.now()-l.loading.start,m=Math.abs(s.playbackRate);if(!(v<=500*u/m)){var _=l.loaded&&l.loading.first,S=this.bwEstimator.getEstimate(),x=a.levels,I=a.minAutoLevel,j=x[i.level],ae=l.total||Math.max(l.loaded,Math.round(u*j.maxBitrate/8)),me=_?1e3*l.loaded/v:0,de=me?(ae-l.loaded)/me:8*ae/S,_e=c.len/m;if(!(de<=_e)){var Ke,ze=Number.POSITIVE_INFINITY;for(Ke=i.level-1;Ke>I;Ke--){var Ee=x[Ke].maxBitrate;if((ze=me?u*Ee/(6.4*me):u*Ee/S)<_e)break}ze>=de||(k.logger.warn("Fragment "+i.sn+(n?" part "+n.index:"")+" of level "+i.level+" is loading too slowly and will cause an underbuffer; aborting and switching to level "+Ke+`
|
|
16
|
+
Current BW estimate: `+((0,R.isFiniteNumber)(S)?(S/1024).toFixed(3):"Unknown")+` Kb/s
|
|
17
|
+
Estimated load time for current fragment: `+de.toFixed(3)+` s
|
|
18
|
+
Estimated load time for the next fragment: `+ze.toFixed(3)+` s
|
|
19
|
+
Time to underbuffer: `+_e.toFixed(3)+" s"),a.nextLoadLevel=Ke,_&&this.bwEstimator.sample(v,l.loaded),this.clearTimer(),(i.loader||i.keyLoader)&&(this.fragCurrent=this.partCurrent=null,i.abortRequests()),a.trigger(p.Events.FRAG_LOAD_EMERGENCY_ABORTED,{frag:i,part:n,stats:l}))}}}}}},t.onFragLoaded=function(i,n){var a=n.frag,r=n.part;if(a.type===pe.PlaylistLevelType.MAIN&&(0,R.isFiniteNumber)(a.sn)){var s=r?r.stats:a.stats,l=r?r.duration:a.duration;if(this.clearTimer(),this.lastLoadedFragLevel=a.level,this._nextAutoLevel=-1,this.hls.config.abrMaxWithRealBitrate){var u=this.hls.levels[a.level],c=(u.loaded?u.loaded.bytes:0)+s.loaded,v=(u.loaded?u.loaded.duration:0)+l;u.loaded={bytes:c,duration:v},u.realBitrate=Math.round(8*c/v)}if(a.bitrateTest){var m={stats:s,frag:a,part:r,id:a.type};this.onFragBuffered(p.Events.FRAG_BUFFERED,m)}}},t.onFragBuffered=function(i,n){var a=n.frag,r=n.part,s=r?r.stats:a.stats;if(!s.aborted&&a.type===pe.PlaylistLevelType.MAIN&&a.sn!=="initSegment"){var l=s.parsing.end-s.loading.start;this.bwEstimator.sample(l,s.loaded),s.bwEstimate=this.bwEstimator.getEstimate(),a.bitrateTest?this.bitrateTestDelay=l/1e3:this.bitrateTestDelay=0}},t.onError=function(i,n){var a;if(((a=n.frag)===null||a===void 0?void 0:a.type)===pe.PlaylistLevelType.MAIN){if(n.type===w.ErrorTypes.KEY_SYSTEM_ERROR)return void this.clearTimer();switch(n.details){case w.ErrorDetails.FRAG_LOAD_ERROR:case w.ErrorDetails.FRAG_LOAD_TIMEOUT:case w.ErrorDetails.KEY_LOAD_ERROR:case w.ErrorDetails.KEY_LOAD_TIMEOUT:this.clearTimer()}}},t.clearTimer=function(){self.clearInterval(this.timer),this.timer=void 0},t.getNextABRAutoLevel=function(){var i=this.fragCurrent,n=this.partCurrent,a=this.hls,r=a.maxAutoLevel,s=a.config,l=a.minAutoLevel,u=a.media,c=n?n.duration:i?i.duration:0,v=u&&u.playbackRate!==0?Math.abs(u.playbackRate):1,m=this.bwEstimator?this.bwEstimator.getEstimate():s.abrEwmaDefaultEstimate,_=a.mainForwardBufferInfo,S=(_?_.len:0)/v,x=this.findBestLevel(m,l,r,S,s.abrBandWidthFactor,s.abrBandWidthUpFactor);if(x>=0)return x;k.logger.trace((S?"rebuffering expected":"buffer is empty")+", finding optimal quality level");var I=c?Math.min(c,s.maxStarvationDelay):s.maxStarvationDelay,j=s.abrBandWidthFactor,ae=s.abrBandWidthUpFactor;if(!S){var me=this.bitrateTestDelay;me&&(I=(c?Math.min(c,s.maxLoadingDelay):s.maxLoadingDelay)-me,k.logger.trace("bitrate test took "+Math.round(1e3*me)+"ms, set first fragment max fetchDuration to "+Math.round(1e3*I)+" ms"),j=ae=1)}return x=this.findBestLevel(m,l,r,S+I,j,ae),Math.max(x,0)},t.findBestLevel=function(i,n,a,r,s,l){for(var u,c=this.fragCurrent,v=this.partCurrent,m=this.lastLoadedFragLevel,_=this.hls.levels,S=_[m],x=!(S==null||(u=S.details)===null||u===void 0||!u.live),I=S==null?void 0:S.codecSet,j=v?v.duration:c?c.duration:0,ae=a;ae>=n;ae--){var me=_[ae];if(me&&(!I||me.codecSet===I)){var de,_e=me.details,Ke=(v?_e==null?void 0:_e.partTarget:_e==null?void 0:_e.averagetargetduration)||j;de=ae<=m?s*i:l*i;var ze=_[ae].maxBitrate,Ee=ze*Ke/de;if(k.logger.trace("level/adjustedbw/bitrate/avgDuration/maxFetchDuration/fetchDuration: "+ae+"/"+Math.round(de)+"/"+ze+"/"+Ke+"/"+r+"/"+Ee),de>ze&&(Ee===0||!(0,R.isFiniteNumber)(Ee)||x&&!this.bitrateTestDelay||Ee<r))return ae}}return-1},o=d,(e=[{key:"nextAutoLevel",get:function(){var i=this._nextAutoLevel,n=this.bwEstimator;if(i!==-1&&!n.canEstimate())return i;var a=this.getNextABRAutoLevel();return i!==-1&&this.hls.levels[a].loadError?i:(i!==-1&&(a=Math.min(i,a)),a)},set:function(i){this._nextAutoLevel=i}}])&&nn(o.prototype,e),Object.defineProperty(o,"prototype",{writable:!1}),d}();var Hi=function(){function d(){this.chunks=[],this.dataLength=0}var o=d.prototype;return o.push=function(e){this.chunks.push(e),this.dataLength+=e.length},o.flush=function(){var e,t=this.chunks,i=this.dataLength;return t.length?(e=t.length===1?t[0]:function(n,a){for(var r=new Uint8Array(a),s=0,l=0;l<n.length;l++){var u=n[l];r.set(u,s),s+=u.length}return r}(t,i),this.reset(),e):new Uint8Array(0)},o.reset=function(){this.chunks.length=0,this.dataLength=0},d}();function li(){return li=Object.assign?Object.assign.bind():function(d){for(var o=1;o<arguments.length;o++){var e=arguments[o];for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(d[t]=e[t])}return d},li.apply(this,arguments)}function Ei(d,o){return Ei=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Ei(d,o)}var ui=function(d){var o,e;function t(n,a,r){var s;return(s=d.call(this,n,a,r,"[audio-stream-controller]")||this).videoBuffer=null,s.videoTrackCC=-1,s.waitingVideoCC=-1,s.audioSwitch=!1,s.trackId=-1,s.waitingData=null,s.mainDetails=null,s.bufferFlushed=!1,s.cachedTrackLoadedData=null,s._registerListeners(),s}e=d,(o=t).prototype=Object.create(e.prototype),o.prototype.constructor=o,Ei(o,e);var i=t.prototype;return i.onHandlerDestroying=function(){this._unregisterListeners(),this.mainDetails=null},i._registerListeners=function(){var n=this.hls;n.on(p.Events.MEDIA_ATTACHED,this.onMediaAttached,this),n.on(p.Events.MEDIA_DETACHING,this.onMediaDetaching,this),n.on(p.Events.MANIFEST_LOADING,this.onManifestLoading,this),n.on(p.Events.LEVEL_LOADED,this.onLevelLoaded,this),n.on(p.Events.AUDIO_TRACKS_UPDATED,this.onAudioTracksUpdated,this),n.on(p.Events.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),n.on(p.Events.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),n.on(p.Events.ERROR,this.onError,this),n.on(p.Events.BUFFER_RESET,this.onBufferReset,this),n.on(p.Events.BUFFER_CREATED,this.onBufferCreated,this),n.on(p.Events.BUFFER_FLUSHED,this.onBufferFlushed,this),n.on(p.Events.INIT_PTS_FOUND,this.onInitPtsFound,this),n.on(p.Events.FRAG_BUFFERED,this.onFragBuffered,this)},i._unregisterListeners=function(){var n=this.hls;n.off(p.Events.MEDIA_ATTACHED,this.onMediaAttached,this),n.off(p.Events.MEDIA_DETACHING,this.onMediaDetaching,this),n.off(p.Events.MANIFEST_LOADING,this.onManifestLoading,this),n.off(p.Events.LEVEL_LOADED,this.onLevelLoaded,this),n.off(p.Events.AUDIO_TRACKS_UPDATED,this.onAudioTracksUpdated,this),n.off(p.Events.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),n.off(p.Events.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),n.off(p.Events.ERROR,this.onError,this),n.off(p.Events.BUFFER_RESET,this.onBufferReset,this),n.off(p.Events.BUFFER_CREATED,this.onBufferCreated,this),n.off(p.Events.BUFFER_FLUSHED,this.onBufferFlushed,this),n.off(p.Events.INIT_PTS_FOUND,this.onInitPtsFound,this),n.off(p.Events.FRAG_BUFFERED,this.onFragBuffered,this)},i.onInitPtsFound=function(n,a){var r=a.frag,s=a.id,l=a.initPTS;if(s==="main"){var u=r.cc;this.initPTS[r.cc]=l,this.log("InitPTS for cc: "+u+" found from main: "+l),this.videoTrackCC=u,this.state===Pr&&this.tick()}},i.startLoad=function(n){if(!this.levels)return this.startPosition=n,void(this.state=mr);var a=this.lastCurrentTime;this.stopLoad(),this.setInterval(100),this.fragLoadError=0,a>0&&n===-1?(this.log("Override startPosition with lastCurrentTime @"+a.toFixed(3)),n=a,this.state=Et):(this.loadedmetadata=!1,this.state=ri),this.nextLoadPosition=this.startPosition=this.lastCurrentTime=n,this.tick()},i.doTick=function(){switch(this.state){case Et:this.doTickIdle();break;case ri:var n,a=this.levels,r=this.trackId,s=a==null||(n=a[r])===null||n===void 0?void 0:n.details;if(s){if(this.waitForCdnTuneIn(s))break;this.state=Pr}break;case Ir:var l,u=performance.now(),c=this.retryDate;(!c||u>=c||(l=this.media)!==null&&l!==void 0&&l.seeking)&&(this.log("RetryDate reached, switch back to IDLE state"),this.resetStartWhenNotLoaded(this.trackId),this.state=Et);break;case Pr:var v=this.waitingData;if(v){var m=v.frag,_=v.part,S=v.cache,x=v.complete;if(this.initPTS[m.cc]!==void 0){this.waitingData=null,this.waitingVideoCC=-1,this.state=Nr;var I={frag:m,part:_,payload:S.flush(),networkDetails:null};this._handleFragmentLoadProgress(I),x&&d.prototype._handleFragmentLoadComplete.call(this,I)}else if(this.videoTrackCC!==this.waitingVideoCC)this.log("Waiting fragment cc ("+m.cc+") cancelled because video is at cc "+this.videoTrackCC),this.clearWaitingFragment();else{var j=this.getLoadPosition(),ae=Mt.bufferInfo(this.mediaBuffer,j,this.config.maxBufferHole);ti(ae.end,this.config.maxFragLookUpTolerance,m)<0&&(this.log("Waiting fragment cc ("+m.cc+") @ "+m.start+" cancelled because another fragment at "+ae.end+" is needed"),this.clearWaitingFragment())}}else this.state=Et}this.onTickEnd()},i.clearWaitingFragment=function(){var n=this.waitingData;n&&(this.fragmentTracker.removeFragment(n.frag),this.waitingData=null,this.waitingVideoCC=-1,this.state=Et)},i.resetLoadingState=function(){this.clearWaitingFragment(),d.prototype.resetLoadingState.call(this)},i.onTickEnd=function(){var n=this.media;n&&n.readyState&&(this.lastCurrentTime=n.currentTime)},i.doTickIdle=function(){var n=this.hls,a=this.levels,r=this.media,s=this.trackId,l=n.config;if(a&&a[s]&&(r||!this.startFragRequested&&l.startFragPrefetch)){var u=a[s].details;if(!u||u.live&&this.levelLastLoaded!==s||this.waitForCdnTuneIn(u))this.state=ri;else{var c=this.mediaBuffer?this.mediaBuffer:this.media;this.bufferFlushed&&c&&(this.bufferFlushed=!1,this.afterBufferFlushed(c,z.ElementaryStreamTypes.AUDIO,pe.PlaylistLevelType.AUDIO));var v=this.getFwdBufferInfo(c,pe.PlaylistLevelType.AUDIO);if(v!==null){var m=this.audioSwitch;if(!m&&this._streamEnded(v,u))return n.trigger(p.Events.BUFFER_EOS,{type:"audio"}),void(this.state=Wr);var _=this.getFwdBufferInfo(this.videoBuffer?this.videoBuffer:this.media,pe.PlaylistLevelType.MAIN);if(!(v.len>=this.getMaxBufferLength(_==null?void 0:_.len))||m){var S=u.fragments[0].start,x=v.end;if(m&&r){var I=this.getLoadPosition();x=I,u.PTSKnown&&I<S&&(v.end>S||v.nextStart)&&(this.log("Alt audio track ahead of main track, seek to start of alt audio track"),r.currentTime=S+.05)}if(!(_&&x>_.end+u.targetduration)&&(_&&_.len||!v.len)){var j=this.getNextFragment(x,u);j?this.loadFragment(j,u,x):this.bufferFlushed=!0}}}}}},i.getMaxBufferLength=function(n){var a=d.prototype.getMaxBufferLength.call(this);return n?Math.max(a,n):a},i.onMediaDetaching=function(){this.videoBuffer=null,d.prototype.onMediaDetaching.call(this)},i.onAudioTracksUpdated=function(n,a){var r=a.audioTracks;this.resetTransmuxer(),this.levels=r.map(function(s){return new O(s)})},i.onAudioTrackSwitching=function(n,a){var r=!!a.url;this.trackId=a.id;var s=this.fragCurrent;s&&s.abortRequests(),this.fragCurrent=null,this.clearWaitingFragment(),r?this.setInterval(100):this.resetTransmuxer(),r?(this.audioSwitch=!0,this.state=Et):this.state=mr,this.tick()},i.onManifestLoading=function(){this.mainDetails=null,this.fragmentTracker.removeAllFragments(),this.startPosition=this.lastCurrentTime=0,this.bufferFlushed=!1},i.onLevelLoaded=function(n,a){this.mainDetails=a.details,this.cachedTrackLoadedData!==null&&(this.hls.trigger(p.Events.AUDIO_TRACK_LOADED,this.cachedTrackLoadedData),this.cachedTrackLoadedData=null)},i.onAudioTrackLoaded=function(n,a){var r;if(this.mainDetails!=null){var s=this.levels,l=a.details,u=a.id;if(s){this.log("Track "+u+" loaded ["+l.startSN+","+l.endSN+"],duration:"+l.totalduration);var c=s[u],v=0;if(l.live||(r=c.details)!==null&&r!==void 0&&r.live){var m=this.mainDetails;if(l.fragments[0]||(l.deltaUpdateFailed=!0),l.deltaUpdateFailed||!m)return;!c.details&&l.hasProgramDateTime&&m.hasProgramDateTime?(xi(l,m),v=l.fragments[0].start):v=this.alignPlaylists(l,c.details)}c.details=l,this.levelLastLoaded=u,this.startFragRequested||!this.mainDetails&&l.live||this.setStartPosition(c.details,v),this.state!==ri||this.waitForCdnTuneIn(l)||(this.state=Et),this.tick()}else this.warn("Audio tracks were reset while loading level "+u)}else this.cachedTrackLoadedData=a},i._handleFragmentLoadProgress=function(n){var a,r=n.frag,s=n.part,l=n.payload,u=this.config,c=this.trackId,v=this.levels;if(v){var m=v[c],_=m.details,S=u.defaultAudioCodec||m.audioCodec||"mp4a.40.2",x=this.transmuxer;x||(x=this.transmuxer=new mi(this.hls,pe.PlaylistLevelType.AUDIO,this._handleTransmuxComplete.bind(this),this._handleTransmuxerFlush.bind(this)));var I=this.initPTS[r.cc],j=(a=r.initSegment)===null||a===void 0?void 0:a.data;if(I!==void 0){var ae=s?s.index:-1,me=ae!==-1,de=new vi(r.level,r.sn,r.stats.chunkCount,l.byteLength,ae,me);x.push(l,j,S,"",r,s,_.totalduration,!1,de,I)}else this.log("Unknown video PTS for cc "+r.cc+", waiting for video PTS before demuxing audio frag "+r.sn+" of ["+_.startSN+" ,"+_.endSN+"],track "+c),(this.waitingData=this.waitingData||{frag:r,part:s,cache:new Hi,complete:!1}).cache.push(new Uint8Array(l)),this.waitingVideoCC=this.videoTrackCC,this.state=Pr}else this.warn("Audio tracks were reset while fragment load was in progress. Fragment "+r.sn+" of level "+r.level+" will not be buffered")},i._handleFragmentLoadComplete=function(n){this.waitingData?this.waitingData.complete=!0:d.prototype._handleFragmentLoadComplete.call(this,n)},i.onBufferReset=function(){this.mediaBuffer=this.videoBuffer=null,this.loadedmetadata=!1},i.onBufferCreated=function(n,a){var r=a.tracks.audio;r&&(this.mediaBuffer=r.buffer||null),a.tracks.video&&(this.videoBuffer=a.tracks.video.buffer||null)},i.onFragBuffered=function(n,a){var r,s=a.frag,l=a.part;s.type===pe.PlaylistLevelType.AUDIO?this.fragContextChanged(s)?this.warn("Fragment "+s.sn+(l?" p: "+l.index:"")+" of level "+s.level+" finished buffering, but was aborted. state: "+this.state+", audioSwitch: "+this.audioSwitch):(s.sn!=="initSegment"&&(this.fragPrevious=s,this.audioSwitch&&(this.audioSwitch=!1,this.hls.trigger(p.Events.AUDIO_TRACK_SWITCHED,{id:this.trackId}))),this.fragBufferedComplete(s,l)):this.loadedmetadata||s.type!==pe.PlaylistLevelType.MAIN||(r=this.videoBuffer||this.media)!==null&&r!==void 0&&r.buffered.length&&(this.loadedmetadata=!0)},i.onError=function(n,a){if(a.type!==w.ErrorTypes.KEY_SYSTEM_ERROR)switch(a.details){case w.ErrorDetails.FRAG_LOAD_ERROR:case w.ErrorDetails.FRAG_LOAD_TIMEOUT:case w.ErrorDetails.FRAG_PARSING_ERROR:case w.ErrorDetails.KEY_LOAD_ERROR:case w.ErrorDetails.KEY_LOAD_TIMEOUT:this.onFragmentOrKeyLoadError(pe.PlaylistLevelType.AUDIO,a);break;case w.ErrorDetails.AUDIO_TRACK_LOAD_ERROR:case w.ErrorDetails.AUDIO_TRACK_LOAD_TIMEOUT:this.state!==Sr&&this.state!==mr&&(this.state=a.fatal?Sr:Et,this.warn(a.details+" while loading frag, switching to "+this.state+" state"));break;case w.ErrorDetails.BUFFER_FULL_ERROR:if(a.parent==="audio"&&(this.state===br||this.state===Ur)){var r=!0,s=this.getFwdBufferInfo(this.mediaBuffer,pe.PlaylistLevelType.AUDIO);s&&s.len>.5&&(r=!this.reduceMaxBufferLength(s.len)),r&&(this.warn("Buffer full error also media.currentTime is not buffered, flush audio buffer"),this.fragCurrent=null,d.prototype.flushMainBuffer.call(this,0,Number.POSITIVE_INFINITY,"audio")),this.resetLoadingState()}}else this.onFragmentOrKeyLoadError(pe.PlaylistLevelType.AUDIO,a)},i.onBufferFlushed=function(n,a){a.type===z.ElementaryStreamTypes.AUDIO&&(this.bufferFlushed=!0,this.state===Wr&&(this.state=Et))},i._handleTransmuxComplete=function(n){var a,r="audio",s=this.hls,l=n.remuxResult,u=n.chunkMeta,c=this.getCurrentContext(u);if(!c)return this.warn("The loading context changed while buffering fragment "+u.sn+" of level "+u.level+". This chunk will not be buffered."),void this.resetStartWhenNotLoaded(u.level);var v=c.frag,m=c.part,_=c.level.details,S=l.audio,x=l.text,I=l.id3,j=l.initSegment;if(!this.fragContextChanged(v)&&_){if(this.state=br,this.audioSwitch&&S&&this.completeAudioSwitch(),j!=null&&j.tracks&&(this._bufferInitSegment(j.tracks,v,u),s.trigger(p.Events.FRAG_PARSING_INIT_SEGMENT,{frag:v,id:r,tracks:j.tracks})),S){var ae=S.startPTS,me=S.endPTS,de=S.startDTS,_e=S.endDTS;m&&(m.elementaryStreams[z.ElementaryStreamTypes.AUDIO]={startPTS:ae,endPTS:me,startDTS:de,endDTS:_e}),v.setElementaryStreamInfo(z.ElementaryStreamTypes.AUDIO,ae,me,de,_e),this.bufferFragmentData(S,v,m,u)}if(I!=null&&(a=I.samples)!==null&&a!==void 0&&a.length){var Ke=li({id:r,frag:v,details:_},I);s.trigger(p.Events.FRAG_PARSING_METADATA,Ke)}if(x){var ze=li({id:r,frag:v,details:_},x);s.trigger(p.Events.FRAG_PARSING_USERDATA,ze)}}},i._bufferInitSegment=function(n,a,r){if(this.state===br){n.video&&delete n.video;var s=n.audio;if(s){s.levelCodec=s.codec,s.id="audio",this.log("Init audio buffer, container:"+s.container+", codecs[parsed]=["+s.codec+"]"),this.hls.trigger(p.Events.BUFFER_CODECS,n);var l=s.initSegment;if(l!=null&&l.byteLength){var u={type:"audio",frag:a,part:null,chunkMeta:r,parent:a.type,data:l};this.hls.trigger(p.Events.BUFFER_APPENDING,u)}this.tick()}}},i.loadFragment=function(n,a,r){var s=this.fragmentTracker.getState(n);this.fragCurrent=n,(this.audioSwitch||s===Ue.NOT_LOADED||s===Ue.PARTIAL)&&(n.sn==="initSegment"?this._loadInitSegment(n,a):a.live&&!(0,R.isFiniteNumber)(this.initPTS[n.cc])?(this.log("Waiting for video PTS in continuity counter "+n.cc+" of live stream before loading audio fragment "+n.sn+" of level "+this.trackId),this.state=Pr):(this.startFragRequested=!0,d.prototype.loadFragment.call(this,n,a,r)))},i.completeAudioSwitch=function(){var n=this.hls,a=this.media,r=this.trackId;a&&(this.log("Switching audio track : flushing all audio"),d.prototype.flushMainBuffer.call(this,0,Number.POSITIVE_INFINITY,"audio")),this.audioSwitch=!1,n.trigger(p.Events.AUDIO_TRACK_SWITCHED,{id:r})},t}(ii);let Ti=ui;function Gi(d,o){for(var e=0;e<o.length;e++){var t=o[e];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(d,typeof(i=function(n,a){if(typeof n!="object"||n===null)return n;var r=n[Symbol.toPrimitive];if(r!==void 0){var s=r.call(n,a);if(typeof s!="object")return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(t.key,"string"))=="symbol"?i:String(i),t)}var i}function Qr(d,o){return Qr=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Qr(d,o)}let sn=function(d){var o,e;function t(r){var s;return(s=d.call(this,r,"[audio-track-controller]")||this).tracks=[],s.groupId=null,s.tracksInGroup=[],s.trackId=-1,s.trackName="",s.selectDefaultTrack=!0,s.registerListeners(),s}e=d,(o=t).prototype=Object.create(e.prototype),o.prototype.constructor=o,Qr(o,e);var i,n,a=t.prototype;return a.registerListeners=function(){var r=this.hls;r.on(p.Events.MANIFEST_LOADING,this.onManifestLoading,this),r.on(p.Events.MANIFEST_PARSED,this.onManifestParsed,this),r.on(p.Events.LEVEL_LOADING,this.onLevelLoading,this),r.on(p.Events.LEVEL_SWITCHING,this.onLevelSwitching,this),r.on(p.Events.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),r.on(p.Events.ERROR,this.onError,this)},a.unregisterListeners=function(){var r=this.hls;r.off(p.Events.MANIFEST_LOADING,this.onManifestLoading,this),r.off(p.Events.MANIFEST_PARSED,this.onManifestParsed,this),r.off(p.Events.LEVEL_LOADING,this.onLevelLoading,this),r.off(p.Events.LEVEL_SWITCHING,this.onLevelSwitching,this),r.off(p.Events.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),r.off(p.Events.ERROR,this.onError,this)},a.destroy=function(){this.unregisterListeners(),this.tracks.length=0,this.tracksInGroup.length=0,d.prototype.destroy.call(this)},a.onManifestLoading=function(){this.tracks=[],this.groupId=null,this.tracksInGroup=[],this.trackId=-1,this.trackName="",this.selectDefaultTrack=!0},a.onManifestParsed=function(r,s){this.tracks=s.audioTracks||[]},a.onAudioTrackLoaded=function(r,s){var l=s.id,u=s.details,c=this.tracksInGroup[l];if(c){var v=c.details;c.details=s.details,this.log("audioTrack "+l+" loaded ["+u.startSN+"-"+u.endSN+"]"),l===this.trackId&&(this.retryCount=0,this.playlistLoaded(l,s,v))}else this.warn("Invalid audio track id "+l)},a.onLevelLoading=function(r,s){this.switchLevel(s.level)},a.onLevelSwitching=function(r,s){this.switchLevel(s.level)},a.switchLevel=function(r){var s=this.hls.levels[r];if(s!=null&&s.audioGroupIds){var l=s.audioGroupIds[s.urlId];if(this.groupId!==l){this.groupId=l;var u=this.tracks.filter(function(v){return!l||v.groupId===l});this.selectDefaultTrack&&!u.some(function(v){return v.default})&&(this.selectDefaultTrack=!1),this.tracksInGroup=u;var c={audioTracks:u};this.log("Updating audio tracks, "+u.length+' track(s) found in "'+l+'" group-id'),this.hls.trigger(p.Events.AUDIO_TRACKS_UPDATED,c),this.selectInitialTrack()}}},a.onError=function(r,s){d.prototype.onError.call(this,r,s),!s.fatal&&s.context&&s.context.type===pe.PlaylistContextType.AUDIO_TRACK&&s.context.id===this.trackId&&s.context.groupId===this.groupId&&this.retryLoadingOrFail(s)},a.setAudioTrack=function(r){var s=this.tracksInGroup;if(r<0||r>=s.length)this.warn("Invalid id passed to audio-track controller");else{this.clearTimer();var l=s[this.trackId];this.log("Now switching to audio-track index "+r);var u=s[r],c=u.id,v=u.groupId,m=v===void 0?"":v,_=u.name,S=u.type,x=u.url;if(this.trackId=r,this.trackName=_,this.selectDefaultTrack=!1,this.hls.trigger(p.Events.AUDIO_TRACK_SWITCHING,{id:c,groupId:m,name:_,type:S,url:x}),!u.details||u.details.live){var I=this.switchParams(u.url,l==null?void 0:l.details);this.loadPlaylist(I)}}},a.selectInitialTrack=function(){this.tracksInGroup;var r=this.trackName,s=this.findTrackId(r)||this.findTrackId();s!==-1?this.setAudioTrack(s):(this.warn("No track found for running audio group-ID: "+this.groupId),this.hls.trigger(p.Events.ERROR,{type:w.ErrorTypes.MEDIA_ERROR,details:w.ErrorDetails.AUDIO_TRACK_LOAD_ERROR,fatal:!0}))},a.findTrackId=function(r){for(var s=this.tracksInGroup,l=0;l<s.length;l++){var u=s[l];if((!this.selectDefaultTrack||u.default)&&(!r||r===u.name))return u.id}return-1},a.loadPlaylist=function(r){d.prototype.loadPlaylist.call(this);var s=this.tracksInGroup[this.trackId];if(this.shouldLoadTrack(s)){var l=s.id,u=s.groupId,c=s.url;if(r)try{c=r.addDirectives(c)}catch(v){this.warn("Could not construct new URL with HLS Delivery Directives: "+v)}this.log("loading audio-track playlist for id: "+l),this.clearTimer(),this.hls.trigger(p.Events.AUDIO_TRACK_LOADING,{url:c,id:l,groupId:u,deliveryDirectives:r||null})}},i=t,(n=[{key:"audioTracks",get:function(){return this.tracksInGroup}},{key:"audioTrack",get:function(){return this.trackId},set:function(r){this.selectDefaultTrack=!1,this.setAudioTrack(r)}}])&&Gi(i.prototype,n),Object.defineProperty(i,"prototype",{writable:!1}),t}(Le);function on(d,o){for(var e=0;e<o.length;e++){var t=o[e];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(d,typeof(i=function(n,a){if(typeof n!="object"||n===null)return n;var r=n[Symbol.toPrimitive];if(r!==void 0){var s=r.call(n,a);if(typeof s!="object")return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(t.key,"string"))=="symbol"?i:String(i),t)}var i}function bi(d,o){return bi=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},bi(d,o)}var ln=function(d){var o,e;function t(r,s,l){var u;return(u=d.call(this,r,s,l,"[subtitle-stream-controller]")||this).levels=[],u.currentTrackId=-1,u.tracksBuffered=[],u.mainDetails=null,u._registerListeners(),u}e=d,(o=t).prototype=Object.create(e.prototype),o.prototype.constructor=o,bi(o,e);var i,n,a=t.prototype;return a.onHandlerDestroying=function(){this._unregisterListeners(),this.mainDetails=null},a._registerListeners=function(){var r=this.hls;r.on(p.Events.MEDIA_ATTACHED,this.onMediaAttached,this),r.on(p.Events.MEDIA_DETACHING,this.onMediaDetaching,this),r.on(p.Events.MANIFEST_LOADING,this.onManifestLoading,this),r.on(p.Events.LEVEL_LOADED,this.onLevelLoaded,this),r.on(p.Events.ERROR,this.onError,this),r.on(p.Events.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),r.on(p.Events.SUBTITLE_TRACK_SWITCH,this.onSubtitleTrackSwitch,this),r.on(p.Events.SUBTITLE_TRACK_LOADED,this.onSubtitleTrackLoaded,this),r.on(p.Events.SUBTITLE_FRAG_PROCESSED,this.onSubtitleFragProcessed,this),r.on(p.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),r.on(p.Events.FRAG_BUFFERED,this.onFragBuffered,this)},a._unregisterListeners=function(){var r=this.hls;r.off(p.Events.MEDIA_ATTACHED,this.onMediaAttached,this),r.off(p.Events.MEDIA_DETACHING,this.onMediaDetaching,this),r.off(p.Events.MANIFEST_LOADING,this.onManifestLoading,this),r.off(p.Events.LEVEL_LOADED,this.onLevelLoaded,this),r.off(p.Events.ERROR,this.onError,this),r.off(p.Events.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),r.off(p.Events.SUBTITLE_TRACK_SWITCH,this.onSubtitleTrackSwitch,this),r.off(p.Events.SUBTITLE_TRACK_LOADED,this.onSubtitleTrackLoaded,this),r.off(p.Events.SUBTITLE_FRAG_PROCESSED,this.onSubtitleFragProcessed,this),r.off(p.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),r.off(p.Events.FRAG_BUFFERED,this.onFragBuffered,this)},a.startLoad=function(r){this.stopLoad(),this.state=Et,this.setInterval(500),this.nextLoadPosition=this.startPosition=this.lastCurrentTime=r,this.tick()},a.onManifestLoading=function(){this.mainDetails=null,this.fragmentTracker.removeAllFragments()},a.onLevelLoaded=function(r,s){this.mainDetails=s.details},a.onSubtitleFragProcessed=function(r,s){var l=s.frag,u=s.success;if(this.fragPrevious=l,this.state=Et,u){var c=this.tracksBuffered[this.currentTrackId];if(c){for(var v,m=l.start,_=0;_<c.length;_++)if(m>=c[_].start&&m<=c[_].end){v=c[_];break}var S=l.start+l.duration;v?v.end=S:(v={start:m,end:S},c.push(v)),this.fragmentTracker.fragBuffered(l)}}},a.onBufferFlushing=function(r,s){var l=s.startOffset,u=s.endOffset;if(l===0&&u!==Number.POSITIVE_INFINITY){var c=this.currentTrackId,v=this.levels;if(!v.length||!v[c]||!v[c].details)return;var m=u-v[c].details.targetduration;if(m<=0)return;s.endOffsetSubtitles=Math.max(0,m),this.tracksBuffered.forEach(function(_){for(var S=0;S<_.length;)if(_[S].end<=m)_.shift();else{if(!(_[S].start<m))break;_[S].start=m,S++}}),this.fragmentTracker.removeFragmentsInRange(l,m,pe.PlaylistLevelType.SUBTITLE)}},a.onFragBuffered=function(r,s){var l;this.loadedmetadata||s.frag.type!==pe.PlaylistLevelType.MAIN||(l=this.media)!==null&&l!==void 0&&l.buffered.length&&(this.loadedmetadata=!0)},a.onError=function(r,s){var l=s.frag;l&&l.type===pe.PlaylistLevelType.SUBTITLE&&(this.fragCurrent&&this.fragCurrent.abortRequests(),this.state=Et)},a.onSubtitleTracksUpdated=function(r,s){var l=this,u=s.subtitleTracks;this.tracksBuffered=[],this.levels=u.map(function(c){return new O(c)}),this.fragmentTracker.removeAllFragments(),this.fragPrevious=null,this.levels.forEach(function(c){l.tracksBuffered[c.id]=[]}),this.mediaBuffer=null},a.onSubtitleTrackSwitch=function(r,s){if(this.currentTrackId=s.id,this.levels.length&&this.currentTrackId!==-1){var l=this.levels[this.currentTrackId];l!=null&&l.details?this.mediaBuffer=this.mediaBufferTimeRanges:this.mediaBuffer=null,l&&this.setInterval(500)}else this.clearInterval()},a.onSubtitleTrackLoaded=function(r,s){var l,u=s.details,c=s.id,v=this.currentTrackId,m=this.levels;if(m.length){var _=m[v];if(!(c>=m.length||c!==v)&&_){this.mediaBuffer=this.mediaBufferTimeRanges;var S=0;if(u.live||(l=_.details)!==null&&l!==void 0&&l.live){var x=this.mainDetails;if(u.deltaUpdateFailed||!x)return;var I=x.fragments[0];_.details?(S=this.alignPlaylists(u,_.details))===0&&I&&he(u,S=I.start):u.hasProgramDateTime&&x.hasProgramDateTime?(xi(u,x),S=u.fragments[0].start):I&&he(u,S=I.start)}_.details=u,this.levelLastLoaded=c,this.startFragRequested||!this.mainDetails&&u.live||this.setStartPosition(_.details,S),this.tick(),u.live&&!this.fragCurrent&&this.media&&this.state===Et&&(ei(null,u.fragments,this.media.currentTime,0)||(this.warn("Subtitle playlist not aligned with playback"),_.details=void 0))}}},a._handleFragmentLoadComplete=function(r){var s=this,l=r.frag,u=r.payload,c=l.decryptdata,v=this.hls;if(!this.fragContextChanged(l)&&u&&u.byteLength>0&&c&&c.key&&c.iv&&c.method==="AES-128"){var m=performance.now();this.decrypter.decrypt(new Uint8Array(u),c.key.buffer,c.iv.buffer).then(function(_){var S=performance.now();v.trigger(p.Events.FRAG_DECRYPTED,{frag:l,payload:_,stats:{tstart:m,tdecrypt:S}})}).catch(function(_){s.warn(_.name+": "+_.message),s.state=Et})}},a.doTick=function(){if(this.media){if(this.state===Et){var r=this.currentTrackId,s=this.levels;if(!s.length||!s[r]||!s[r].details)return;var l=s[r].details,u=l.targetduration,c=this.config,v=this.getLoadPosition(),m=Mt.bufferedInfo(this.tracksBuffered[this.currentTrackId]||[],v-u,c.maxBufferHole),_=m.end,S=m.len,x=this.getFwdBufferInfo(this.media,pe.PlaylistLevelType.MAIN);if(S>this.getMaxBufferLength(x==null?void 0:x.len)+u)return;var I=l.fragments,j=I.length,ae=l.edge,me=null,de=this.fragPrevious;if(_<ae){var _e=c.maxFragLookUpTolerance;!(me=ei(de,I,Math.max(I[0].start,_),_e))&&de&&de.start<I[0].start&&(me=I[0])}else me=I[j-1];if(!me)return;me=this.mapToInitFragWhenRequired(me),this.fragmentTracker.getState(me)===Ue.NOT_LOADED&&this.loadFragment(me,l,_)}}else this.state=Et},a.getMaxBufferLength=function(r){var s=d.prototype.getMaxBufferLength.call(this);return r?Math.max(s,r):s},a.loadFragment=function(r,s,l){this.fragCurrent=r,r.sn==="initSegment"?this._loadInitSegment(r,s):(this.startFragRequested=!0,d.prototype.loadFragment.call(this,r,s,l))},i=t,(n=[{key:"mediaBufferTimeRanges",get:function(){return new un(this.tracksBuffered[this.currentTrackId]||[])}}])&&on(i.prototype,n),Object.defineProperty(i,"prototype",{writable:!1}),t}(ii),un=function(d){this.buffered=void 0;var o=function(e,t,i){if((t>>>=0)>i-1)throw new DOMException("Failed to execute '"+e+"' on 'TimeRanges': The index provided ("+t+") is greater than the maximum bound ("+i+")");return d[t][e]};this.buffered={get length(){return d.length},end:function(e){return o("end",e,d.length)},start:function(e){return o("start",e,d.length)}}};function dn(d,o){for(var e=0;e<o.length;e++){var t=o[e];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(d,typeof(i=function(n,a){if(typeof n!="object"||n===null)return n;var r=n[Symbol.toPrimitive];if(r!==void 0){var s=r.call(n,a);if(typeof s!="object")return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(t.key,"string"))=="symbol"?i:String(i),t)}var i}function _i(d,o){return _i=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},_i(d,o)}function Si(d){for(var o=[],e=0;e<d.length;e++){var t=d[e];t.kind==="subtitles"&&t.label&&o.push(d[e])}return o}let cn=function(d){var o,e;function t(r){var s;return(s=d.call(this,r,"[subtitle-track-controller]")||this).media=null,s.tracks=[],s.groupId=null,s.tracksInGroup=[],s.trackId=-1,s.selectDefaultTrack=!0,s.queuedDefaultTrack=-1,s.trackChangeListener=function(){return s.onTextTracksChanged()},s.asyncPollTrackChange=function(){return s.pollTrackChange(0)},s.useTextTrackPolling=!1,s.subtitlePollingInterval=-1,s._subtitleDisplay=!0,s.registerListeners(),s}e=d,(o=t).prototype=Object.create(e.prototype),o.prototype.constructor=o,_i(o,e);var i,n,a=t.prototype;return a.destroy=function(){this.unregisterListeners(),this.tracks.length=0,this.tracksInGroup.length=0,this.trackChangeListener=this.asyncPollTrackChange=null,d.prototype.destroy.call(this)},a.registerListeners=function(){var r=this.hls;r.on(p.Events.MEDIA_ATTACHED,this.onMediaAttached,this),r.on(p.Events.MEDIA_DETACHING,this.onMediaDetaching,this),r.on(p.Events.MANIFEST_LOADING,this.onManifestLoading,this),r.on(p.Events.MANIFEST_PARSED,this.onManifestParsed,this),r.on(p.Events.LEVEL_LOADING,this.onLevelLoading,this),r.on(p.Events.LEVEL_SWITCHING,this.onLevelSwitching,this),r.on(p.Events.SUBTITLE_TRACK_LOADED,this.onSubtitleTrackLoaded,this),r.on(p.Events.ERROR,this.onError,this)},a.unregisterListeners=function(){var r=this.hls;r.off(p.Events.MEDIA_ATTACHED,this.onMediaAttached,this),r.off(p.Events.MEDIA_DETACHING,this.onMediaDetaching,this),r.off(p.Events.MANIFEST_LOADING,this.onManifestLoading,this),r.off(p.Events.MANIFEST_PARSED,this.onManifestParsed,this),r.off(p.Events.LEVEL_LOADING,this.onLevelLoading,this),r.off(p.Events.LEVEL_SWITCHING,this.onLevelSwitching,this),r.off(p.Events.SUBTITLE_TRACK_LOADED,this.onSubtitleTrackLoaded,this),r.off(p.Events.ERROR,this.onError,this)},a.onMediaAttached=function(r,s){this.media=s.media,this.media&&(this.queuedDefaultTrack>-1&&(this.subtitleTrack=this.queuedDefaultTrack,this.queuedDefaultTrack=-1),this.useTextTrackPolling=!(this.media.textTracks&&"onchange"in this.media.textTracks),this.useTextTrackPolling?this.pollTrackChange(500):this.media.textTracks.addEventListener("change",this.asyncPollTrackChange))},a.pollTrackChange=function(r){self.clearInterval(this.subtitlePollingInterval),this.subtitlePollingInterval=self.setInterval(this.trackChangeListener,r)},a.onMediaDetaching=function(){this.media&&(self.clearInterval(this.subtitlePollingInterval),this.useTextTrackPolling||this.media.textTracks.removeEventListener("change",this.asyncPollTrackChange),this.trackId>-1&&(this.queuedDefaultTrack=this.trackId),Si(this.media.textTracks).forEach(function(r){ht(r)}),this.subtitleTrack=-1,this.media=null)},a.onManifestLoading=function(){this.tracks=[],this.groupId=null,this.tracksInGroup=[],this.trackId=-1,this.selectDefaultTrack=!0},a.onManifestParsed=function(r,s){this.tracks=s.subtitleTracks},a.onSubtitleTrackLoaded=function(r,s){var l=s.id,u=s.details,c=this.trackId,v=this.tracksInGroup[c];if(v){var m=v.details;v.details=s.details,this.log("subtitle track "+l+" loaded ["+u.startSN+"-"+u.endSN+"]"),l===this.trackId&&(this.retryCount=0,this.playlistLoaded(l,s,m))}else this.warn("Invalid subtitle track id "+l)},a.onLevelLoading=function(r,s){this.switchLevel(s.level)},a.onLevelSwitching=function(r,s){this.switchLevel(s.level)},a.switchLevel=function(r){var s=this.hls.levels[r];if(s!=null&&s.textGroupIds){var l=s.textGroupIds[s.urlId];if(this.groupId!==l){var u=this.tracksInGroup?this.tracksInGroup[this.trackId]:void 0,c=this.tracks.filter(function(_){return!l||_.groupId===l});this.tracksInGroup=c;var v=this.findTrackId(u==null?void 0:u.name)||this.findTrackId();this.groupId=l;var m={subtitleTracks:c};this.log("Updating subtitle tracks, "+c.length+' track(s) found in "'+l+'" group-id'),this.hls.trigger(p.Events.SUBTITLE_TRACKS_UPDATED,m),v!==-1&&this.setSubtitleTrack(v,u)}}},a.findTrackId=function(r){for(var s=this.tracksInGroup,l=0;l<s.length;l++){var u=s[l];if((!this.selectDefaultTrack||u.default)&&(!r||r===u.name))return u.id}return-1},a.onError=function(r,s){d.prototype.onError.call(this,r,s),!s.fatal&&s.context&&s.context.type===pe.PlaylistContextType.SUBTITLE_TRACK&&s.context.id===this.trackId&&s.context.groupId===this.groupId&&this.retryLoadingOrFail(s)},a.loadPlaylist=function(r){d.prototype.loadPlaylist.call(this);var s=this.tracksInGroup[this.trackId];if(this.shouldLoadTrack(s)){var l=s.id,u=s.groupId,c=s.url;if(r)try{c=r.addDirectives(c)}catch(v){this.warn("Could not construct new URL with HLS Delivery Directives: "+v)}this.log("Loading subtitle playlist for id "+l),this.hls.trigger(p.Events.SUBTITLE_TRACK_LOADING,{url:c,id:l,groupId:u,deliveryDirectives:r||null})}},a.toggleTrackModes=function(r){var s=this,l=this.media,u=this.trackId;if(l){var c=Si(l.textTracks),v=c.filter(function(S){return S.groupId===s.groupId});if(r===-1)[].slice.call(c).forEach(function(S){S.mode="disabled"});else{var m=v[u];m&&(m.mode="disabled")}var _=v[r];_&&(_.mode=this.subtitleDisplay?"showing":"hidden")}},a.setSubtitleTrack=function(r,s){var l,u=this.tracksInGroup;if(this.media){if(this.trackId!==r&&this.toggleTrackModes(r),!(this.trackId===r&&(r===-1||(l=u[r])!==null&&l!==void 0&&l.details)||r<-1||r>=u.length)){this.clearTimer();var c=u[r];if(this.log("Switching to subtitle track "+r),this.trackId=r,c){var v=c.id,m=c.groupId,_=m===void 0?"":m,S=c.name,x=c.type,I=c.url;this.hls.trigger(p.Events.SUBTITLE_TRACK_SWITCH,{id:v,groupId:_,name:S,type:x,url:I});var j=this.switchParams(c.url,s==null?void 0:s.details);this.loadPlaylist(j)}else this.hls.trigger(p.Events.SUBTITLE_TRACK_SWITCH,{id:r})}}else this.queuedDefaultTrack=r},a.onTextTracksChanged=function(){if(this.useTextTrackPolling||self.clearInterval(this.subtitlePollingInterval),this.media&&this.hls.config.renderTextTracksNatively){for(var r=-1,s=Si(this.media.textTracks),l=0;l<s.length;l++)if(s[l].mode==="hidden")r=l;else if(s[l].mode==="showing"){r=l;break}this.subtitleTrack!==r&&(this.subtitleTrack=r)}},i=t,(n=[{key:"subtitleDisplay",get:function(){return this._subtitleDisplay},set:function(r){this._subtitleDisplay=r,this.trackId>-1&&this.toggleTrackModes(this.trackId)}},{key:"subtitleTracks",get:function(){return this.tracksInGroup}},{key:"subtitleTrack",get:function(){return this.trackId},set:function(r){this.selectDefaultTrack=!1;var s=this.tracksInGroup?this.tracksInGroup[this.trackId]:void 0;this.setSubtitleTrack(r,s)}}])&&dn(i.prototype,n),Object.defineProperty(i,"prototype",{writable:!1}),t}(Le);var pt,fr=function(){function d(e){this.buffers=void 0,this.queues={video:[],audio:[],audiovideo:[]},this.buffers=e}var o=d.prototype;return o.append=function(e,t){var i=this.queues[t];i.push(e),i.length===1&&this.buffers[t]&&this.executeNext(t)},o.insertAbort=function(e,t){this.queues[t].unshift(e),this.executeNext(t)},o.appendBlocker=function(e){var t,i=new Promise(function(a){t=a}),n={execute:t,onStart:function(){},onComplete:function(){},onError:function(){}};return this.append(n,e),i},o.executeNext=function(e){var t=this.buffers,i=this.queues,n=t[e],a=i[e];if(a.length){var r=a[0];try{r.execute()}catch(s){k.logger.warn("[buffer-operation-queue]: Unhandled exception executing the current operation"),r.onError(s),n&&n.updating||(a.shift(),this.executeNext(e))}}},o.shiftAndExecuteNext=function(e){this.queues[e].shift(),this.executeNext(e)},o.current=function(e){return this.queues[e][0]},d}(),Gr=ni(),ji=/([ha]vc.)(?:\.[^.,]+)+/,hn=function(){function d(e){var t=this;this.details=null,this._objectUrl=null,this.operationQueue=void 0,this.listeners=void 0,this.hls=void 0,this.bufferCodecEventsExpected=0,this._bufferCodecEventsTotal=0,this.media=null,this.mediaSource=null,this.lastMpegAudioChunk=null,this.appendError=0,this.tracks={},this.pendingTracks={},this.sourceBuffer=void 0,this._onMediaSourceOpen=function(){var i=t.hls,n=t.media,a=t.mediaSource;k.logger.log("[buffer-controller]: Media source opened"),n&&(t.updateMediaElementDuration(),i.trigger(p.Events.MEDIA_ATTACHED,{media:n})),a&&a.removeEventListener("sourceopen",t._onMediaSourceOpen),t.checkPendingTracks()},this._onMediaSourceClose=function(){k.logger.log("[buffer-controller]: Media source closed")},this._onMediaSourceEnded=function(){k.logger.log("[buffer-controller]: Media source ended")},this.hls=e,this._initSourceBuffer(),this.registerListeners()}var o=d.prototype;return o.hasSourceTypes=function(){return this.getSourceBufferTypes().length>0||Object.keys(this.pendingTracks).length>0},o.destroy=function(){this.unregisterListeners(),this.details=null,this.lastMpegAudioChunk=null},o.registerListeners=function(){var e=this.hls;e.on(p.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),e.on(p.Events.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(p.Events.MANIFEST_PARSED,this.onManifestParsed,this),e.on(p.Events.BUFFER_RESET,this.onBufferReset,this),e.on(p.Events.BUFFER_APPENDING,this.onBufferAppending,this),e.on(p.Events.BUFFER_CODECS,this.onBufferCodecs,this),e.on(p.Events.BUFFER_EOS,this.onBufferEos,this),e.on(p.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),e.on(p.Events.LEVEL_UPDATED,this.onLevelUpdated,this),e.on(p.Events.FRAG_PARSED,this.onFragParsed,this),e.on(p.Events.FRAG_CHANGED,this.onFragChanged,this)},o.unregisterListeners=function(){var e=this.hls;e.off(p.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),e.off(p.Events.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(p.Events.MANIFEST_PARSED,this.onManifestParsed,this),e.off(p.Events.BUFFER_RESET,this.onBufferReset,this),e.off(p.Events.BUFFER_APPENDING,this.onBufferAppending,this),e.off(p.Events.BUFFER_CODECS,this.onBufferCodecs,this),e.off(p.Events.BUFFER_EOS,this.onBufferEos,this),e.off(p.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),e.off(p.Events.LEVEL_UPDATED,this.onLevelUpdated,this),e.off(p.Events.FRAG_PARSED,this.onFragParsed,this),e.off(p.Events.FRAG_CHANGED,this.onFragChanged,this)},o._initSourceBuffer=function(){this.sourceBuffer={},this.operationQueue=new fr(this.sourceBuffer),this.listeners={audio:[],video:[],audiovideo:[]},this.lastMpegAudioChunk=null},o.onManifestParsed=function(e,t){var i=2;(t.audio&&!t.video||!t.altAudio)&&(i=1),this.bufferCodecEventsExpected=this._bufferCodecEventsTotal=i,this.details=null,k.logger.log(this.bufferCodecEventsExpected+" bufferCodec event(s) expected")},o.onMediaAttaching=function(e,t){var i=this.media=t.media;if(i&&Gr){var n=this.mediaSource=new Gr;n.addEventListener("sourceopen",this._onMediaSourceOpen),n.addEventListener("sourceended",this._onMediaSourceEnded),n.addEventListener("sourceclose",this._onMediaSourceClose),i.src=self.URL.createObjectURL(n),this._objectUrl=i.src}},o.onMediaDetaching=function(){var e=this.media,t=this.mediaSource,i=this._objectUrl;if(t){if(k.logger.log("[buffer-controller]: media source detaching"),t.readyState==="open")try{t.endOfStream()}catch(n){k.logger.warn("[buffer-controller]: onMediaDetaching: "+n.message+" while calling endOfStream")}this.onBufferReset(),t.removeEventListener("sourceopen",this._onMediaSourceOpen),t.removeEventListener("sourceended",this._onMediaSourceEnded),t.removeEventListener("sourceclose",this._onMediaSourceClose),e&&(i&&self.URL.revokeObjectURL(i),e.src===i?(e.removeAttribute("src"),e.load()):k.logger.warn("[buffer-controller]: media.src was changed by a third party - skip cleanup")),this.mediaSource=null,this.media=null,this._objectUrl=null,this.bufferCodecEventsExpected=this._bufferCodecEventsTotal,this.pendingTracks={},this.tracks={}}this.hls.trigger(p.Events.MEDIA_DETACHED,void 0)},o.onBufferReset=function(){var e=this;this.getSourceBufferTypes().forEach(function(t){var i=e.sourceBuffer[t];try{i&&(e.removeBufferListeners(t),e.mediaSource&&e.mediaSource.removeSourceBuffer(i),e.sourceBuffer[t]=void 0)}catch(n){k.logger.warn("[buffer-controller]: Failed to reset the "+t+" buffer",n)}}),this._initSourceBuffer()},o.onBufferCodecs=function(e,t){var i=this,n=this.getSourceBufferTypes().length;Object.keys(t).forEach(function(a){if(n){var r=i.tracks[a];if(r&&typeof r.buffer.changeType=="function"){var s=t[a],l=s.id,u=s.codec,c=s.levelCodec,v=s.container,m=s.metadata,_=(r.levelCodec||r.codec).replace(ji,"$1"),S=(c||u).replace(ji,"$1");if(_!==S){var x=v+";codecs="+(c||u);i.appendChangeType(a,x),k.logger.log("[buffer-controller]: switching codec "+_+" to "+S),i.tracks[a]={buffer:r.buffer,codec:u,container:v,levelCodec:c,metadata:m,id:l}}}}else i.pendingTracks[a]=t[a]}),n||(this.bufferCodecEventsExpected=Math.max(this.bufferCodecEventsExpected-1,0),this.mediaSource&&this.mediaSource.readyState==="open"&&this.checkPendingTracks())},o.appendChangeType=function(e,t){var i=this,n=this.operationQueue,a={execute:function(){var r=i.sourceBuffer[e];r&&(k.logger.log("[buffer-controller]: changing "+e+" sourceBuffer type to "+t),r.changeType(t)),n.shiftAndExecuteNext(e)},onStart:function(){},onComplete:function(){},onError:function(r){k.logger.warn("[buffer-controller]: Failed to change "+e+" SourceBuffer type",r)}};n.append(a,e)},o.onBufferAppending=function(e,t){var i=this,n=this.hls,a=this.operationQueue,r=this.tracks,s=t.data,l=t.type,u=t.frag,c=t.part,v=t.chunkMeta,m=v.buffering[l],_=self.performance.now();m.start=_;var S=u.stats.buffering,x=c?c.stats.buffering:null;S.start===0&&(S.start=_),x&&x.start===0&&(x.start=_);var I=r.audio,j=!1;l==="audio"&&(I==null?void 0:I.container)==="audio/mpeg"&&(j=!this.lastMpegAudioChunk||v.id===1||this.lastMpegAudioChunk.sn!==v.sn,this.lastMpegAudioChunk=v);var ae=u.start,me={execute:function(){if(m.executeStart=self.performance.now(),j){var de=i.sourceBuffer[l];if(de){var _e=ae-de.timestampOffset;Math.abs(_e)>=.1&&(k.logger.log("[buffer-controller]: Updating audio SourceBuffer timestampOffset to "+ae+" (delta: "+_e+") sn: "+u.sn+")"),de.timestampOffset=ae)}}i.appendExecutor(s,l)},onStart:function(){},onComplete:function(){var de=self.performance.now();m.executeEnd=m.end=de,S.first===0&&(S.first=de),x&&x.first===0&&(x.first=de);var _e=i.sourceBuffer,Ke={};for(var ze in _e)Ke[ze]=Mt.getBuffered(_e[ze]);i.appendError=0,i.hls.trigger(p.Events.BUFFER_APPENDED,{type:l,frag:u,part:c,chunkMeta:v,parent:u.type,timeRanges:Ke})},onError:function(de){k.logger.error("[buffer-controller]: Error encountered while trying to append to the "+l+" SourceBuffer",de);var _e={type:w.ErrorTypes.MEDIA_ERROR,parent:u.type,details:w.ErrorDetails.BUFFER_APPEND_ERROR,err:de,fatal:!1};de.code===DOMException.QUOTA_EXCEEDED_ERR?_e.details=w.ErrorDetails.BUFFER_FULL_ERROR:(i.appendError++,_e.details=w.ErrorDetails.BUFFER_APPEND_ERROR,i.appendError>n.config.appendErrorMaxRetry&&(k.logger.error("[buffer-controller]: Failed "+n.config.appendErrorMaxRetry+" times to append segment in sourceBuffer"),_e.fatal=!0,n.stopLoad())),n.trigger(p.Events.ERROR,_e)}};a.append(me,l)},o.onBufferFlushing=function(e,t){var i=this,n=this.operationQueue,a=function(r){return{execute:i.removeExecutor.bind(i,r,t.startOffset,t.endOffset),onStart:function(){},onComplete:function(){i.hls.trigger(p.Events.BUFFER_FLUSHED,{type:r})},onError:function(s){k.logger.warn("[buffer-controller]: Failed to remove from "+r+" SourceBuffer",s)}}};t.type?n.append(a(t.type),t.type):this.getSourceBufferTypes().forEach(function(r){n.append(a(r),r)})},o.onFragParsed=function(e,t){var i=this,n=t.frag,a=t.part,r=[],s=a?a.elementaryStreams:n.elementaryStreams;s[z.ElementaryStreamTypes.AUDIOVIDEO]?r.push("audiovideo"):(s[z.ElementaryStreamTypes.AUDIO]&&r.push("audio"),s[z.ElementaryStreamTypes.VIDEO]&&r.push("video")),r.length===0&&k.logger.warn("Fragments must have at least one ElementaryStreamType set. type: "+n.type+" level: "+n.level+" sn: "+n.sn),this.blockBuffers(function(){var l=self.performance.now();n.stats.buffering.end=l,a&&(a.stats.buffering.end=l);var u=a?a.stats:n.stats;i.hls.trigger(p.Events.FRAG_BUFFERED,{frag:n,part:a,stats:u,id:n.type})},r)},o.onFragChanged=function(e,t){this.flushBackBuffer()},o.onBufferEos=function(e,t){var i=this;this.getSourceBufferTypes().reduce(function(n,a){var r=i.sourceBuffer[a];return!r||t.type&&t.type!==a||(r.ending=!0,r.ended||(r.ended=!0,k.logger.log("[buffer-controller]: "+a+" sourceBuffer now EOS"))),n&&!(r&&!r.ended)},!0)&&(k.logger.log("[buffer-controller]: Queueing mediaSource.endOfStream()"),this.blockBuffers(function(){i.getSourceBufferTypes().forEach(function(a){var r=i.sourceBuffer[a];r&&(r.ending=!1)});var n=i.mediaSource;n&&n.readyState==="open"?(k.logger.log("[buffer-controller]: Calling mediaSource.endOfStream()"),n.endOfStream()):n&&k.logger.info("[buffer-controller]: Could not call mediaSource.endOfStream(). mediaSource.readyState: "+n.readyState)}))},o.onLevelUpdated=function(e,t){var i=t.details;i.fragments.length&&(this.details=i,this.getSourceBufferTypes().length?this.blockBuffers(this.updateMediaElementDuration.bind(this)):this.updateMediaElementDuration())},o.flushBackBuffer=function(){var e=this.hls,t=this.details,i=this.media,n=this.sourceBuffer;if(i&&t!==null){var a=this.getSourceBufferTypes();if(a.length){var r=t.live&&e.config.liveBackBufferLength!==null?e.config.liveBackBufferLength:e.config.backBufferLength;if((0,R.isFiniteNumber)(r)&&!(r<0)){var s=i.currentTime,l=t.levelTargetDuration,u=Math.max(r,l),c=Math.floor(s/l)*l-u;a.forEach(function(v){var m=n[v];if(m){var _=Mt.getBuffered(m);if(_.length>0&&c>_.start(0)){if(e.trigger(p.Events.BACK_BUFFER_REACHED,{bufferEnd:c}),t.live)e.trigger(p.Events.LIVE_BACK_BUFFER_REACHED,{bufferEnd:c});else if(m.ended&&_.end(_.length-1)-s<2*l)return void k.logger.info("[buffer-controller]: Cannot flush "+v+" back buffer while SourceBuffer is in ended state");e.trigger(p.Events.BUFFER_FLUSHING,{startOffset:0,endOffset:c,type:v})}}})}}}},o.updateMediaElementDuration=function(){if(this.details&&this.media&&this.mediaSource&&this.mediaSource.readyState==="open"){var e=this.details,t=this.hls,i=this.media,n=this.mediaSource,a=e.fragments[0].start+e.totalduration,r=i.duration,s=(0,R.isFiniteNumber)(n.duration)?n.duration:0;e.live&&t.config.liveDurationInfinity?(k.logger.log("[buffer-controller]: Media Source duration is set to Infinity"),n.duration=1/0,this.updateSeekableRange(e)):(a>s&&a>r||!(0,R.isFiniteNumber)(r))&&(k.logger.log("[buffer-controller]: Updating Media Source duration to "+a.toFixed(3)),n.duration=a)}},o.updateSeekableRange=function(e){var t=this.mediaSource,i=e.fragments;if(i.length&&e.live&&t!=null&&t.setLiveSeekableRange){var n=Math.max(0,i[0].start),a=Math.max(n,n+e.totalduration);t.setLiveSeekableRange(n,a)}},o.checkPendingTracks=function(){var e=this.bufferCodecEventsExpected,t=this.operationQueue,i=this.pendingTracks,n=Object.keys(i).length;if(n&&!e||n===2){this.createSourceBuffers(i),this.pendingTracks={};var a=this.getSourceBufferTypes();if(a.length===0)return void this.hls.trigger(p.Events.ERROR,{type:w.ErrorTypes.MEDIA_ERROR,details:w.ErrorDetails.BUFFER_INCOMPATIBLE_CODECS_ERROR,fatal:!0,reason:"could not create source buffer for media codec(s)"});a.forEach(function(r){t.executeNext(r)})}},o.createSourceBuffers=function(e){var t=this.sourceBuffer,i=this.mediaSource;if(!i)throw Error("createSourceBuffers called when mediaSource was null");var n=0;for(var a in e)if(!t[a]){var r=e[a];if(!r)throw Error("source buffer exists for track "+a+", however track does not");var s=r.levelCodec||r.codec,l=r.container+";codecs="+s;k.logger.log("[buffer-controller]: creating sourceBuffer("+l+")");try{var u=t[a]=i.addSourceBuffer(l),c=a;this.addBufferListener(c,"updatestart",this._onSBUpdateStart),this.addBufferListener(c,"updateend",this._onSBUpdateEnd),this.addBufferListener(c,"error",this._onSBUpdateError),this.tracks[a]={buffer:u,codec:s,container:r.container,levelCodec:r.levelCodec,metadata:r.metadata,id:r.id},n++}catch(v){k.logger.error("[buffer-controller]: error while trying to add sourceBuffer: "+v.message),this.hls.trigger(p.Events.ERROR,{type:w.ErrorTypes.MEDIA_ERROR,details:w.ErrorDetails.BUFFER_ADD_CODEC_ERROR,fatal:!1,error:v,mimeType:l})}}n&&this.hls.trigger(p.Events.BUFFER_CREATED,{tracks:this.tracks})},o._onSBUpdateStart=function(e){this.operationQueue.current(e).onStart()},o._onSBUpdateEnd=function(e){var t=this.operationQueue;t.current(e).onComplete(),t.shiftAndExecuteNext(e)},o._onSBUpdateError=function(e,t){k.logger.error("[buffer-controller]: "+e+" SourceBuffer error",t),this.hls.trigger(p.Events.ERROR,{type:w.ErrorTypes.MEDIA_ERROR,details:w.ErrorDetails.BUFFER_APPENDING_ERROR,fatal:!1});var i=this.operationQueue.current(e);i&&i.onError(t)},o.removeExecutor=function(e,t,i){var n=this.media,a=this.mediaSource,r=this.operationQueue,s=this.sourceBuffer[e];if(!n||!a||!s)return k.logger.warn("[buffer-controller]: Attempting to remove from the "+e+" SourceBuffer, but it does not exist"),void r.shiftAndExecuteNext(e);var l=(0,R.isFiniteNumber)(n.duration)?n.duration:1/0,u=(0,R.isFiniteNumber)(a.duration)?a.duration:1/0,c=Math.max(0,t),v=Math.min(i,l,u);v>c&&!s.ending?(s.ended=!1,k.logger.log("[buffer-controller]: Removing ["+c+","+v+"] from the "+e+" SourceBuffer"),s.remove(c,v)):r.shiftAndExecuteNext(e)},o.appendExecutor=function(e,t){var i=this.operationQueue,n=this.sourceBuffer[t];if(!n)return k.logger.warn("[buffer-controller]: Attempting to append to the "+t+" SourceBuffer, but it does not exist"),void i.shiftAndExecuteNext(t);n.ended=!1,n.appendBuffer(e)},o.blockBuffers=function(e,t){var i=this;if(t===void 0&&(t=this.getSourceBufferTypes()),!t.length)return k.logger.log("[buffer-controller]: Blocking operation requested, but no SourceBuffers exist"),void Promise.resolve().then(e);var n=this.operationQueue,a=t.map(function(r){return n.appendBlocker(r)});Promise.all(a).then(function(){e(),t.forEach(function(r){var s=i.sourceBuffer[r];s&&s.updating||n.shiftAndExecuteNext(r)})})},o.getSourceBufferTypes=function(){return Object.keys(this.sourceBuffer)},o.addBufferListener=function(e,t,i){var n=this.sourceBuffer[e];if(n){var a=i.bind(this,e);this.listeners[e].push({event:t,listener:a}),n.addEventListener(t,a)}},o.removeBufferListeners=function(e){var t=this.sourceBuffer[e];t&&this.listeners[e].forEach(function(i){t.removeEventListener(i.event,i.listener)})},d}(),g={42:225,92:233,94:237,95:243,96:250,123:231,124:247,125:209,126:241,127:9608,128:174,129:176,130:189,131:191,132:8482,133:162,134:163,135:9834,136:224,137:32,138:232,139:226,140:234,141:238,142:244,143:251,144:193,145:201,146:211,147:218,148:220,149:252,150:8216,151:161,152:42,153:8217,154:9473,155:169,156:8480,157:8226,158:8220,159:8221,160:192,161:194,162:199,163:200,164:202,165:203,166:235,167:206,168:207,169:239,170:212,171:217,172:249,173:219,174:171,175:187,176:195,177:227,178:205,179:204,180:236,181:210,182:242,183:213,184:245,185:123,186:125,187:92,188:94,189:95,190:124,191:8764,192:196,193:228,194:214,195:246,196:223,197:165,198:164,199:9475,200:197,201:229,202:216,203:248,204:9487,205:9491,206:9495,207:9499},h=function(d){var o=d;return g.hasOwnProperty(d)&&(o=g[d]),String.fromCharCode(o)},f=15,y=100,b={17:1,18:3,21:5,22:7,23:9,16:11,19:12,20:14},C={17:2,18:4,21:6,22:8,23:10,19:13,20:15},A={25:1,26:3,29:5,30:7,31:9,24:11,27:12,28:14},G={25:2,26:4,29:6,30:8,31:10,27:13,28:15},se=["white","green","blue","cyan","red","yellow","magenta","black","transparent"];(function(d){d[d.ERROR=0]="ERROR",d[d.TEXT=1]="TEXT",d[d.WARNING=2]="WARNING",d[d.INFO=2]="INFO",d[d.DEBUG=3]="DEBUG",d[d.DATA=3]="DATA"})(pt||(pt={}));var Q=function(){function d(){this.time=null,this.verboseLevel=pt.ERROR}return d.prototype.log=function(o,e){if(this.verboseLevel>=o){var t=typeof e=="function"?e():e;k.logger.log(this.time+" ["+o+"] "+t)}},d}(),Pe=function(d){for(var o=[],e=0;e<d.length;e++)o.push(d[e].toString(16));return o},at=function(){function d(e,t,i,n,a){this.foreground=void 0,this.underline=void 0,this.italics=void 0,this.background=void 0,this.flash=void 0,this.foreground=e||"white",this.underline=t||!1,this.italics=i||!1,this.background=n||"black",this.flash=a||!1}var o=d.prototype;return o.reset=function(){this.foreground="white",this.underline=!1,this.italics=!1,this.background="black",this.flash=!1},o.setStyles=function(e){for(var t=["foreground","underline","italics","background","flash"],i=0;i<t.length;i++){var n=t[i];e.hasOwnProperty(n)&&(this[n]=e[n])}},o.isDefault=function(){return this.foreground==="white"&&!this.underline&&!this.italics&&this.background==="black"&&!this.flash},o.equals=function(e){return this.foreground===e.foreground&&this.underline===e.underline&&this.italics===e.italics&&this.background===e.background&&this.flash===e.flash},o.copy=function(e){this.foreground=e.foreground,this.underline=e.underline,this.italics=e.italics,this.background=e.background,this.flash=e.flash},o.toString=function(){return"color="+this.foreground+", underline="+this.underline+", italics="+this.italics+", background="+this.background+", flash="+this.flash},d}(),Je=function(){function d(e,t,i,n,a,r){this.uchar=void 0,this.penState=void 0,this.uchar=e||" ",this.penState=new at(t,i,n,a,r)}var o=d.prototype;return o.reset=function(){this.uchar=" ",this.penState.reset()},o.setChar=function(e,t){this.uchar=e,this.penState.copy(t)},o.setPenState=function(e){this.penState.copy(e)},o.equals=function(e){return this.uchar===e.uchar&&this.penState.equals(e.penState)},o.copy=function(e){this.uchar=e.uchar,this.penState.copy(e.penState)},o.isEmpty=function(){return this.uchar===" "&&this.penState.isDefault()},d}(),it=function(){function d(e){this.chars=void 0,this.pos=void 0,this.currPenState=void 0,this.cueStartTime=void 0,this.logger=void 0,this.chars=[];for(var t=0;t<y;t++)this.chars.push(new Je);this.logger=e,this.pos=0,this.currPenState=new at}var o=d.prototype;return o.equals=function(e){for(var t=!0,i=0;i<y;i++)if(!this.chars[i].equals(e.chars[i])){t=!1;break}return t},o.copy=function(e){for(var t=0;t<y;t++)this.chars[t].copy(e.chars[t])},o.isEmpty=function(){for(var e=!0,t=0;t<y;t++)if(!this.chars[t].isEmpty()){e=!1;break}return e},o.setCursor=function(e){this.pos!==e&&(this.pos=e),this.pos<0?(this.logger.log(pt.DEBUG,"Negative cursor position "+this.pos),this.pos=0):this.pos>y&&(this.logger.log(pt.DEBUG,"Too large cursor position "+this.pos),this.pos=y)},o.moveCursor=function(e){var t=this.pos+e;if(e>1)for(var i=this.pos+1;i<t+1;i++)this.chars[i].setPenState(this.currPenState);this.setCursor(t)},o.backSpace=function(){this.moveCursor(-1),this.chars[this.pos].setChar(" ",this.currPenState)},o.insertChar=function(e){var t=this;e>=144&&this.backSpace();var i=h(e);this.pos>=y?this.logger.log(pt.ERROR,function(){return"Cannot insert "+e.toString(16)+" ("+i+") at position "+t.pos+". Skipping it!"}):(this.chars[this.pos].setChar(i,this.currPenState),this.moveCursor(1))},o.clearFromPos=function(e){var t;for(t=e;t<y;t++)this.chars[t].reset()},o.clear=function(){this.clearFromPos(0),this.pos=0,this.currPenState.reset()},o.clearToEndOfRow=function(){this.clearFromPos(this.pos)},o.getTextString=function(){for(var e=[],t=!0,i=0;i<y;i++){var n=this.chars[i].uchar;n!==" "&&(t=!1),e.push(n)}return t?"":e.join("")},o.setPenStyles=function(e){this.currPenState.setStyles(e),this.chars[this.pos].setPenState(this.currPenState)},d}(),Xe=function(){function d(e){this.rows=void 0,this.currRow=void 0,this.nrRollUpRows=void 0,this.lastOutputScreen=void 0,this.logger=void 0,this.rows=[];for(var t=0;t<f;t++)this.rows.push(new it(e));this.logger=e,this.currRow=14,this.nrRollUpRows=null,this.lastOutputScreen=null,this.reset()}var o=d.prototype;return o.reset=function(){for(var e=0;e<f;e++)this.rows[e].clear();this.currRow=14},o.equals=function(e){for(var t=!0,i=0;i<f;i++)if(!this.rows[i].equals(e.rows[i])){t=!1;break}return t},o.copy=function(e){for(var t=0;t<f;t++)this.rows[t].copy(e.rows[t])},o.isEmpty=function(){for(var e=!0,t=0;t<f;t++)if(!this.rows[t].isEmpty()){e=!1;break}return e},o.backSpace=function(){this.rows[this.currRow].backSpace()},o.clearToEndOfRow=function(){this.rows[this.currRow].clearToEndOfRow()},o.insertChar=function(e){this.rows[this.currRow].insertChar(e)},o.setPen=function(e){this.rows[this.currRow].setPenStyles(e)},o.moveCursor=function(e){this.rows[this.currRow].moveCursor(e)},o.setCursor=function(e){this.logger.log(pt.INFO,"setCursor: "+e),this.rows[this.currRow].setCursor(e)},o.setPAC=function(e){this.logger.log(pt.INFO,function(){return"pacData = "+JSON.stringify(e)});var t=e.row-1;if(this.nrRollUpRows&&t<this.nrRollUpRows-1&&(t=this.nrRollUpRows-1),this.nrRollUpRows&&this.currRow!==t){for(var i=0;i<f;i++)this.rows[i].clear();var n=this.currRow+1-this.nrRollUpRows,a=this.lastOutputScreen;if(a){var r=a.rows[n].cueStartTime,s=this.logger.time;if(r&&s!==null&&r<s)for(var l=0;l<this.nrRollUpRows;l++)this.rows[t-this.nrRollUpRows+l+1].copy(a.rows[n+l])}}this.currRow=t;var u=this.rows[this.currRow];if(e.indent!==null){var c=e.indent,v=Math.max(c-1,0);u.setCursor(e.indent),e.color=u.chars[v].penState.foreground}var m={foreground:e.color,underline:e.underline,italics:e.italics,background:"black",flash:!1};this.setPen(m)},o.setBkgData=function(e){this.logger.log(pt.INFO,function(){return"bkgData = "+JSON.stringify(e)}),this.backSpace(),this.setPen(e),this.insertChar(32)},o.setRollUpRows=function(e){this.nrRollUpRows=e},o.rollUp=function(){var e=this;if(this.nrRollUpRows!==null){this.logger.log(pt.TEXT,function(){return e.getDisplayText()});var t=this.currRow+1-this.nrRollUpRows,i=this.rows.splice(t,1)[0];i.clear(),this.rows.splice(this.currRow,0,i),this.logger.log(pt.INFO,"Rolling up")}else this.logger.log(pt.DEBUG,"roll_up but nrRollUpRows not set yet")},o.getDisplayText=function(e){e=e||!1;for(var t=[],i="",n=-1,a=0;a<f;a++){var r=this.rows[a].getTextString();r&&(n=a+1,e?t.push("Row "+n+": '"+r+"'"):t.push(r.trim()))}return t.length>0&&(i=e?"["+t.join(" | ")+"]":t.join(`
|
|
20
|
+
`)),i},o.getTextAndFormat=function(){return this.rows},d}(),nt=function(){function d(e,t,i){this.chNr=void 0,this.outputFilter=void 0,this.mode=void 0,this.verbose=void 0,this.displayedMemory=void 0,this.nonDisplayedMemory=void 0,this.lastOutputScreen=void 0,this.currRollUpRow=void 0,this.writeScreen=void 0,this.cueStartTime=void 0,this.logger=void 0,this.chNr=e,this.outputFilter=t,this.mode=null,this.verbose=0,this.displayedMemory=new Xe(i),this.nonDisplayedMemory=new Xe(i),this.lastOutputScreen=new Xe(i),this.currRollUpRow=this.displayedMemory.rows[14],this.writeScreen=this.displayedMemory,this.mode=null,this.cueStartTime=null,this.logger=i}var o=d.prototype;return o.reset=function(){this.mode=null,this.displayedMemory.reset(),this.nonDisplayedMemory.reset(),this.lastOutputScreen.reset(),this.outputFilter.reset(),this.currRollUpRow=this.displayedMemory.rows[14],this.writeScreen=this.displayedMemory,this.mode=null,this.cueStartTime=null},o.getHandler=function(){return this.outputFilter},o.setHandler=function(e){this.outputFilter=e},o.setPAC=function(e){this.writeScreen.setPAC(e)},o.setBkgData=function(e){this.writeScreen.setBkgData(e)},o.setMode=function(e){e!==this.mode&&(this.mode=e,this.logger.log(pt.INFO,function(){return"MODE="+e}),this.mode==="MODE_POP-ON"?this.writeScreen=this.nonDisplayedMemory:(this.writeScreen=this.displayedMemory,this.writeScreen.reset()),this.mode!=="MODE_ROLL-UP"&&(this.displayedMemory.nrRollUpRows=null,this.nonDisplayedMemory.nrRollUpRows=null),this.mode=e)},o.insertChars=function(e){for(var t=this,i=0;i<e.length;i++)this.writeScreen.insertChar(e[i]);var n=this.writeScreen===this.displayedMemory?"DISP":"NON_DISP";this.logger.log(pt.INFO,function(){return n+": "+t.writeScreen.getDisplayText(!0)}),this.mode!=="MODE_PAINT-ON"&&this.mode!=="MODE_ROLL-UP"||(this.logger.log(pt.TEXT,function(){return"DISPLAYED: "+t.displayedMemory.getDisplayText(!0)}),this.outputDataUpdate())},o.ccRCL=function(){this.logger.log(pt.INFO,"RCL - Resume Caption Loading"),this.setMode("MODE_POP-ON")},o.ccBS=function(){this.logger.log(pt.INFO,"BS - BackSpace"),this.mode!=="MODE_TEXT"&&(this.writeScreen.backSpace(),this.writeScreen===this.displayedMemory&&this.outputDataUpdate())},o.ccAOF=function(){},o.ccAON=function(){},o.ccDER=function(){this.logger.log(pt.INFO,"DER- Delete to End of Row"),this.writeScreen.clearToEndOfRow(),this.outputDataUpdate()},o.ccRU=function(e){this.logger.log(pt.INFO,"RU("+e+") - Roll Up"),this.writeScreen=this.displayedMemory,this.setMode("MODE_ROLL-UP"),this.writeScreen.setRollUpRows(e)},o.ccFON=function(){this.logger.log(pt.INFO,"FON - Flash On"),this.writeScreen.setPen({flash:!0})},o.ccRDC=function(){this.logger.log(pt.INFO,"RDC - Resume Direct Captioning"),this.setMode("MODE_PAINT-ON")},o.ccTR=function(){this.logger.log(pt.INFO,"TR"),this.setMode("MODE_TEXT")},o.ccRTD=function(){this.logger.log(pt.INFO,"RTD"),this.setMode("MODE_TEXT")},o.ccEDM=function(){this.logger.log(pt.INFO,"EDM - Erase Displayed Memory"),this.displayedMemory.reset(),this.outputDataUpdate(!0)},o.ccCR=function(){this.logger.log(pt.INFO,"CR - Carriage Return"),this.writeScreen.rollUp(),this.outputDataUpdate(!0)},o.ccENM=function(){this.logger.log(pt.INFO,"ENM - Erase Non-displayed Memory"),this.nonDisplayedMemory.reset()},o.ccEOC=function(){var e=this;if(this.logger.log(pt.INFO,"EOC - End Of Caption"),this.mode==="MODE_POP-ON"){var t=this.displayedMemory;this.displayedMemory=this.nonDisplayedMemory,this.nonDisplayedMemory=t,this.writeScreen=this.nonDisplayedMemory,this.logger.log(pt.TEXT,function(){return"DISP: "+e.displayedMemory.getDisplayText()})}this.outputDataUpdate(!0)},o.ccTO=function(e){this.logger.log(pt.INFO,"TO("+e+") - Tab Offset"),this.writeScreen.moveCursor(e)},o.ccMIDROW=function(e){var t={flash:!1};if(t.underline=e%2==1,t.italics=e>=46,t.italics)t.foreground="white";else{var i=Math.floor(e/2)-16;t.foreground=["white","green","blue","cyan","red","yellow","magenta"][i]}this.logger.log(pt.INFO,"MIDROW: "+JSON.stringify(t)),this.writeScreen.setPen(t)},o.outputDataUpdate=function(e){e===void 0&&(e=!1);var t=this.logger.time;t!==null&&this.outputFilter&&(this.cueStartTime!==null||this.displayedMemory.isEmpty()?this.displayedMemory.equals(this.lastOutputScreen)||(this.outputFilter.newCue(this.cueStartTime,t,this.lastOutputScreen),e&&this.outputFilter.dispatchCue&&this.outputFilter.dispatchCue(),this.cueStartTime=this.displayedMemory.isEmpty()?null:t):this.cueStartTime=t,this.lastOutputScreen.copy(this.displayedMemory))},o.cueSplitAtTime=function(e){this.outputFilter&&(this.displayedMemory.isEmpty()||(this.outputFilter.newCue&&this.outputFilter.newCue(this.cueStartTime,e,this.displayedMemory),this.cueStartTime=e))},d}(),wt=function(){function d(e,t,i){this.channels=void 0,this.currentChannel=0,this.cmdHistory=void 0,this.logger=void 0;var n=new Q;this.channels=[null,new nt(e,t,n),new nt(e+1,i,n)],this.cmdHistory={a:null,b:null},this.logger=n}var o=d.prototype;return o.getHandler=function(e){return this.channels[e].getHandler()},o.setHandler=function(e,t){this.channels[e].setHandler(t)},o.addData=function(e,t){var i,n,a,r=!1;this.logger.time=e;for(var s=0;s<t.length;s+=2)if(n=127&t[s],a=127&t[s+1],n!==0||a!==0){if(this.logger.log(pt.DATA,"["+Pe([t[s],t[s+1]])+"] -> ("+Pe([n,a])+")"),(i=this.parseCmd(n,a))||(i=this.parseMidrow(n,a)),i||(i=this.parsePAC(n,a)),i||(i=this.parseBackgroundAttributes(n,a)),!i&&(r=this.parseChars(n,a))){var l=this.currentChannel;l&&l>0?this.channels[l].insertChars(r):this.logger.log(pt.WARNING,"No channel found yet. TEXT-MODE?")}i||r||this.logger.log(pt.WARNING,"Couldn't parse cleaned data "+Pe([n,a])+" orig: "+Pe([t[s],t[s+1]]))}},o.parseCmd=function(e,t){var i=this.cmdHistory;if(!((e===20||e===28||e===21||e===29)&&t>=32&&t<=47||(e===23||e===31)&&t>=33&&t<=35))return!1;if(Jt(e,t,i))return Bt(null,null,i),this.logger.log(pt.DEBUG,"Repeated command ("+Pe([e,t])+") is dropped"),!0;var n=e===20||e===21||e===23?1:2,a=this.channels[n];return e===20||e===21||e===28||e===29?t===32?a.ccRCL():t===33?a.ccBS():t===34?a.ccAOF():t===35?a.ccAON():t===36?a.ccDER():t===37?a.ccRU(2):t===38?a.ccRU(3):t===39?a.ccRU(4):t===40?a.ccFON():t===41?a.ccRDC():t===42?a.ccTR():t===43?a.ccRTD():t===44?a.ccEDM():t===45?a.ccCR():t===46?a.ccENM():t===47&&a.ccEOC():a.ccTO(t-32),Bt(e,t,i),this.currentChannel=n,!0},o.parseMidrow=function(e,t){var i=0;if((e===17||e===25)&&t>=32&&t<=47){if((i=e===17?1:2)!==this.currentChannel)return this.logger.log(pt.ERROR,"Mismatch channel in midrow parsing"),!1;var n=this.channels[i];return!!n&&(n.ccMIDROW(t),this.logger.log(pt.DEBUG,"MIDROW ("+Pe([e,t])+")"),!0)}return!1},o.parsePAC=function(e,t){var i,n=this.cmdHistory;if(!((e>=17&&e<=23||e>=25&&e<=31)&&t>=64&&t<=127||(e===16||e===24)&&t>=64&&t<=95))return!1;if(Jt(e,t,n))return Bt(null,null,n),!0;var a=e<=23?1:2;i=t>=64&&t<=95?a===1?b[e]:A[e]:a===1?C[e]:G[e];var r=this.channels[a];return!!r&&(r.setPAC(this.interpretPAC(i,t)),Bt(e,t,n),this.currentChannel=a,!0)},o.interpretPAC=function(e,t){var i,n={color:null,italics:!1,indent:null,underline:!1,row:e};return i=t>95?t-96:t-64,n.underline=(1&i)==1,i<=13?n.color=["white","green","blue","cyan","red","yellow","magenta","white"][Math.floor(i/2)]:i<=15?(n.italics=!0,n.color="white"):n.indent=4*Math.floor((i-16)/2),n},o.parseChars=function(e,t){var i,n,a=null,r=null;if(e>=25?(i=2,r=e-8):(i=1,r=e),r>=17&&r<=19?(n=r===17?t+80:r===18?t+112:t+144,this.logger.log(pt.INFO,"Special char '"+h(n)+"' in channel "+i),a=[n]):e>=32&&e<=127&&(a=t===0?[e]:[e,t]),a){var s=Pe(a);this.logger.log(pt.DEBUG,"Char codes = "+s.join(",")),Bt(e,t,this.cmdHistory)}return a},o.parseBackgroundAttributes=function(e,t){var i;if(!((e===16||e===24)&&t>=32&&t<=47||(e===23||e===31)&&t>=45&&t<=47))return!1;var n={};e===16||e===24?(i=Math.floor((t-32)/2),n.background=se[i],t%2==1&&(n.background=n.background+"_semi")):t===45?n.background="transparent":(n.foreground="black",t===47&&(n.underline=!0));var a=e<=23?1:2;return this.channels[a].setBkgData(n),Bt(e,t,this.cmdHistory),!0},o.reset=function(){for(var e=0;e<Object.keys(this.channels).length;e++){var t=this.channels[e];t&&t.reset()}this.cmdHistory={a:null,b:null}},o.cueSplitAtTime=function(e){for(var t=0;t<this.channels.length;t++){var i=this.channels[t];i&&i.cueSplitAtTime(e)}},d}();function Bt(d,o,e){e.a=d,e.b=o}function Jt(d,o,e){return e.a===d&&e.b===o}let ir=wt;var mt=function(){function d(e,t){this.timelineController=void 0,this.cueRanges=[],this.trackName=void 0,this.startTime=null,this.endTime=null,this.screen=null,this.timelineController=e,this.trackName=t}var o=d.prototype;return o.dispatchCue=function(){this.startTime!==null&&(this.timelineController.addCues(this.trackName,this.startTime,this.endTime,this.screen,this.cueRanges),this.startTime=null)},o.newCue=function(e,t,i){(this.startTime===null||this.startTime>e)&&(this.startTime=e),this.endTime=t,this.screen=i,this.timelineController.createCaptionsTrack(this.trackName)},o.reset=function(){this.cueRanges=[],this.startTime=null},d}();let Wt=function(){if(typeof self!="undefined"&&self.VTTCue)return self.VTTCue;var d=["","lr","rl"],o=["start","middle","end","left","right"];function e(a,r){if(typeof r!="string"||!Array.isArray(a))return!1;var s=r.toLowerCase();return!!~a.indexOf(s)&&s}function t(a){return e(o,a)}function i(a){for(var r=arguments.length,s=new Array(r>1?r-1:0),l=1;l<r;l++)s[l-1]=arguments[l];for(var u=1;u<arguments.length;u++){var c=arguments[u];for(var v in c)a[v]=c[v]}return a}function n(a,r,s){var l=this,u={enumerable:!0};l.hasBeenReset=!1;var c="",v=!1,m=a,_=r,S=s,x=null,I="",j=!0,ae="auto",me="start",de=50,_e="middle",Ke=50,ze="middle";Object.defineProperty(l,"id",i({},u,{get:function(){return c},set:function(Ee){c=""+Ee}})),Object.defineProperty(l,"pauseOnExit",i({},u,{get:function(){return v},set:function(Ee){v=!!Ee}})),Object.defineProperty(l,"startTime",i({},u,{get:function(){return m},set:function(Ee){if(typeof Ee!="number")throw new TypeError("Start time must be set to a number.");m=Ee,this.hasBeenReset=!0}})),Object.defineProperty(l,"endTime",i({},u,{get:function(){return _},set:function(Ee){if(typeof Ee!="number")throw new TypeError("End time must be set to a number.");_=Ee,this.hasBeenReset=!0}})),Object.defineProperty(l,"text",i({},u,{get:function(){return S},set:function(Ee){S=""+Ee,this.hasBeenReset=!0}})),Object.defineProperty(l,"region",i({},u,{get:function(){return x},set:function(Ee){x=Ee,this.hasBeenReset=!0}})),Object.defineProperty(l,"vertical",i({},u,{get:function(){return I},set:function(Ee){var Ge=function(Fe){return e(d,Fe)}(Ee);if(Ge===!1)throw new SyntaxError("An invalid or illegal string was specified.");I=Ge,this.hasBeenReset=!0}})),Object.defineProperty(l,"snapToLines",i({},u,{get:function(){return j},set:function(Ee){j=!!Ee,this.hasBeenReset=!0}})),Object.defineProperty(l,"line",i({},u,{get:function(){return ae},set:function(Ee){if(typeof Ee!="number"&&Ee!=="auto")throw new SyntaxError("An invalid number or illegal string was specified.");ae=Ee,this.hasBeenReset=!0}})),Object.defineProperty(l,"lineAlign",i({},u,{get:function(){return me},set:function(Ee){var Ge=t(Ee);if(!Ge)throw new SyntaxError("An invalid or illegal string was specified.");me=Ge,this.hasBeenReset=!0}})),Object.defineProperty(l,"position",i({},u,{get:function(){return de},set:function(Ee){if(Ee<0||Ee>100)throw new Error("Position must be between 0 and 100.");de=Ee,this.hasBeenReset=!0}})),Object.defineProperty(l,"positionAlign",i({},u,{get:function(){return _e},set:function(Ee){var Ge=t(Ee);if(!Ge)throw new SyntaxError("An invalid or illegal string was specified.");_e=Ge,this.hasBeenReset=!0}})),Object.defineProperty(l,"size",i({},u,{get:function(){return Ke},set:function(Ee){if(Ee<0||Ee>100)throw new Error("Size must be between 0 and 100.");Ke=Ee,this.hasBeenReset=!0}})),Object.defineProperty(l,"align",i({},u,{get:function(){return ze},set:function(Ee){var Ge=t(Ee);if(!Ge)throw new SyntaxError("An invalid or illegal string was specified.");ze=Ge,this.hasBeenReset=!0}})),l.displayState=void 0}return n.prototype.getCueAsHTML=function(){return self.WebVTT.convertCueToDOMTree(self,this.text)},n}();var er=function(){function d(){}return d.prototype.decode=function(o,e){if(!o)return"";if(typeof o!="string")throw new Error("Error - expected string data.");return decodeURIComponent(encodeURIComponent(o))},d}();function _t(d){function o(t,i,n,a){return 3600*(0|t)+60*(0|i)+(0|n)+parseFloat(a||0)}var e=d.match(/^(?:(\d+):)?(\d{2}):(\d{2})(\.\d+)?/);return e?parseFloat(e[2])>59?o(e[2],e[3],0,e[4]):o(e[1],e[2],e[3],e[4]):null}var et=function(){function d(){this.values=Object.create(null)}var o=d.prototype;return o.set=function(e,t){this.get(e)||t===""||(this.values[e]=t)},o.get=function(e,t,i){return i?this.has(e)?this.values[e]:t[i]:this.has(e)?this.values[e]:t},o.has=function(e){return e in this.values},o.alt=function(e,t,i){for(var n=0;n<i.length;++n)if(t===i[n]){this.set(e,t);break}},o.integer=function(e,t){/^-?\d+$/.test(t)&&this.set(e,parseInt(t,10))},o.percent=function(e,t){if(/^([\d]{1,3})(\.[\d]*)?%$/.test(t)){var i=parseFloat(t);if(i>=0&&i<=100)return this.set(e,i),!0}return!1},d}();function dt(d,o,e,t){var i=t?d.split(t):[d];for(var n in i)if(typeof i[n]=="string"){var a=i[n].split(e);a.length===2&&o(a[0],a[1])}}var $e=new Wt(0,0,""),lt=$e.align==="middle"?"middle":"center";function Ht(d,o,e){var t=d;function i(){var a=_t(d);if(a===null)throw new Error("Malformed timestamp: "+t);return d=d.replace(/^[^\sa-zA-Z-]+/,""),a}function n(){d=d.replace(/^\s+/,"")}if(n(),o.startTime=i(),n(),d.slice(0,3)!=="-->")throw new Error("Malformed time stamp (time stamps must be separated by '-->'): "+t);d=d.slice(3),n(),o.endTime=i(),n(),function(a,r){var s=new et;dt(a,function(c,v){var m;switch(c){case"region":for(var _=e.length-1;_>=0;_--)if(e[_].id===v){s.set(c,e[_].region);break}break;case"vertical":s.alt(c,v,["rl","lr"]);break;case"line":m=v.split(","),s.integer(c,m[0]),s.percent(c,m[0])&&s.set("snapToLines",!1),s.alt(c,m[0],["auto"]),m.length===2&&s.alt("lineAlign",m[1],["start",lt,"end"]);break;case"position":m=v.split(","),s.percent(c,m[0]),m.length===2&&s.alt("positionAlign",m[1],["start",lt,"end","line-left","line-right","auto"]);break;case"size":s.percent(c,v);break;case"align":s.alt(c,v,["start",lt,"end","left","right"])}},/:/,/\s/),r.region=s.get("region",null),r.vertical=s.get("vertical","");var l=s.get("line","auto");l==="auto"&&$e.line===-1&&(l=-1),r.line=l,r.lineAlign=s.get("lineAlign","start"),r.snapToLines=s.get("snapToLines",!0),r.size=s.get("size",100),r.align=s.get("align",lt);var u=s.get("position","auto");u==="auto"&&$e.position===50&&(u=r.align==="start"||r.align==="left"?0:r.align==="end"||r.align==="right"?100:50),r.position=u}(d,o)}function Kt(d){return d.replace(/<br(?: \/)?>/gi,`
|
|
21
|
+
`)}var nr=function(){function d(){this.state="INITIAL",this.buffer="",this.decoder=new er,this.regionList=[],this.cue=null,this.oncue=void 0,this.onparsingerror=void 0,this.onflush=void 0}var o=d.prototype;return o.parse=function(e){var t=this;function i(){var l=t.buffer,u=0;for(l=Kt(l);u<l.length&&l[u]!=="\r"&&l[u]!==`
|
|
22
|
+
`;)++u;var c=l.slice(0,u);return l[u]==="\r"&&++u,l[u]===`
|
|
23
|
+
`&&++u,t.buffer=l.slice(u),c}e&&(t.buffer+=t.decoder.decode(e,{stream:!0}));try{var n="";if(t.state==="INITIAL"){if(!/\r\n|\n/.test(t.buffer))return this;var a=(n=i()).match(/^()?WEBVTT([ \t].*)?$/);if(!a||!a[0])throw new Error("Malformed WebVTT signature.");t.state="HEADER"}for(var r=!1;t.buffer;){if(!/\r\n|\n/.test(t.buffer))return this;switch(r?r=!1:n=i(),t.state){case"HEADER":/:/.test(n)?dt(n,function(l,u){},/:/):n||(t.state="ID");continue;case"NOTE":n||(t.state="ID");continue;case"ID":if(/^NOTE($|[ \t])/.test(n)){t.state="NOTE";break}if(!n)continue;if(t.cue=new Wt(0,0,""),t.state="CUE",n.indexOf("-->")===-1){t.cue.id=n;continue}case"CUE":if(!t.cue){t.state="BADCUE";continue}try{Ht(n,t.cue,t.regionList)}catch{t.cue=null,t.state="BADCUE";continue}t.state="CUETEXT";continue;case"CUETEXT":var s=n.indexOf("-->")!==-1;if(!n||s&&(r=!0)){t.oncue&&t.cue&&t.oncue(t.cue),t.cue=null,t.state="ID";continue}if(t.cue===null)continue;t.cue.text&&(t.cue.text+=`
|
|
24
|
+
`),t.cue.text+=n;continue;case"BADCUE":n||(t.state="ID")}}}catch{t.state==="CUETEXT"&&t.cue&&t.oncue&&t.oncue(t.cue),t.cue=null,t.state=t.state==="INITIAL"?"BADWEBVTT":"BADCUE"}return this},o.flush=function(){var e=this;try{if((e.cue||e.state==="HEADER")&&(e.buffer+=`
|
|
28
25
|
|
|
29
|
-
`,
|
|
26
|
+
`,e.parse()),e.state==="INITIAL"||e.state==="BADWEBVTT")throw new Error("Malformed WebVTT signature.")}catch(t){e.onparsingerror&&e.onparsingerror(t)}return e.onflush&&e.onflush(),this},d}(),tr=N(673),vr=N(524),ar=/\r\n|\n\r|\n|\r/g,pr=function(d,o,e){return e===void 0&&(e=0),d.slice(e,e+o.length)===o},qt=function(d){for(var o=5381,e=d.length;e;)o=33*o^d.charCodeAt(--e);return(o>>>0).toString()};function sr(d,o,e){return qt(d.toString())+qt(o.toString())+qt(e)}function Jr(){return Jr=Object.assign?Object.assign.bind():function(d){for(var o=1;o<arguments.length;o++){var e=arguments[o];for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(d[t]=e[t])}return d},Jr.apply(this,arguments)}var gr="stpp.ttml.im1t",jr=/^(\d{2,}):(\d{2}):(\d{2}):(\d{2})\.?(\d+)?$/,Ki=/^(\d*(?:\.\d*)?)(h|m|s|ms|f|t)$/,ka={left:"start",center:"center",right:"end",start:"start",end:"end"};function Mn(d,o,e,t,i){var n=(0,W.findBox)(new Uint8Array(d),["mdat"]);if(n.length!==0){var a=n.map(function(s){return(0,Dt.utf8ArrayToStr)(s)}),r=(0,tr.toTimescaleFromScale)(o,1,e);try{a.forEach(function(s){return t(function(l,u){var c=new DOMParser().parseFromString(l,"text/xml").getElementsByTagName("tt")[0];if(!c)throw new Error("Invalid ttml");var v={frameRate:30,subFrameRate:1,frameRateMultiplier:0,tickRate:0},m=Object.keys(v).reduce(function(j,ae){return j[ae]=c.getAttribute("ttp:"+ae)||v[ae],j},{}),_=c.getAttribute("xml:space")!=="preserve",S=Fn(fn(c,"styling","style")),x=Fn(fn(c,"layout","region")),I=fn(c,"body","[begin]");return[].map.call(I,function(j){var ae=Nn(j,_);if(!ae||!j.hasAttribute("begin"))return null;var me=pn(j.getAttribute("begin"),m),de=pn(j.getAttribute("dur"),m),_e=pn(j.getAttribute("end"),m);if(me===null)throw Un(j);if(_e===null){if(de===null)throw Un(j);_e=me+de}var Ke=new Wt(me-u,_e-u,ae);Ke.id=sr(Ke.startTime,Ke.endTime,Ke.text);var ze=function(Fe,ct,Ct){var ft="http://www.w3.org/ns/ttml#styling",Tt=null,At=Fe!=null&&Fe.hasAttribute("style")?Fe.getAttribute("style"):null;return At&&Ct.hasOwnProperty(At)&&(Tt=Ct[At]),["displayAlign","textAlign","color","backgroundColor","fontSize","fontFamily"].reduce(function($t,Xt){var Gt=vn(ct,ft,Xt)||vn(Fe,ft,Xt)||vn(Tt,ft,Xt);return Gt&&($t[Xt]=Gt),$t},{})}(x[j.getAttribute("region")],S[j.getAttribute("style")],S),Ee=ze.textAlign;if(Ee){var Ge=ka[Ee];Ge&&(Ke.lineAlign=Ge),Ke.align=Ee}return Jr(Ke,ze),Ke}).filter(function(j){return j!==null})}(s,r))})}catch(s){i(s)}}else i(new Error("Could not parse IMSC1 mdat"))}function fn(d,o,e){var t=d.getElementsByTagName(o)[0];return t?[].slice.call(t.querySelectorAll(e)):[]}function Fn(d){return d.reduce(function(o,e){var t=e.getAttribute("xml:id");return t&&(o[t]=e),o},{})}function Nn(d,o){return[].slice.call(d.childNodes).reduce(function(e,t,i){var n;return t.nodeName==="br"&&i?e+`
|
|
27
|
+
`:(n=t.childNodes)!==null&&n!==void 0&&n.length?Nn(t,o):o?e+t.textContent.trim().replace(/\s+/g," "):e+t.textContent},"")}function vn(d,o,e){return d&&d.hasAttributeNS(o,e)?d.getAttributeNS(o,e):null}function Un(d){return new Error("Could not parse ttml timestamp "+d)}function pn(d,o){if(!d)return null;var e=_t(d);return e===null&&(jr.test(d)?e=function(t,i){var n=jr.exec(t),a=(0|n[4])+(0|n[5])/i.subFrameRate;return 3600*(0|n[1])+60*(0|n[2])+(0|n[3])+a/i.frameRate}(d,o):Ki.test(d)&&(e=function(t,i){var n=Ki.exec(t),a=Number(n[1]);switch(n[2]){case"h":return 3600*a;case"m":return 60*a;case"ms":return 1e3*a;case"f":return a/i.frameRate;case"t":return a/i.tickRate}return a}(d,o))),e}var La=function(){function d(e){if(this.hls=void 0,this.media=null,this.config=void 0,this.enabled=!0,this.Cues=void 0,this.textTracks=[],this.tracks=[],this.initPTS=[],this.timescale=[],this.unparsedVttFrags=[],this.captionsTracks={},this.nonNativeCaptionsTracks={},this.cea608Parser1=void 0,this.cea608Parser2=void 0,this.lastSn=-1,this.lastPartIndex=-1,this.prevCC=-1,this.vttCCs={ccOffset:0,presentationOffset:0,0:{start:0,prevCC:-1,new:!0}},this.captionsProperties=void 0,this.hls=e,this.config=e.config,this.Cues=e.config.cueHandler,this.captionsProperties={textTrack1:{label:this.config.captionsTextTrack1Label,languageCode:this.config.captionsTextTrack1LanguageCode},textTrack2:{label:this.config.captionsTextTrack2Label,languageCode:this.config.captionsTextTrack2LanguageCode},textTrack3:{label:this.config.captionsTextTrack3Label,languageCode:this.config.captionsTextTrack3LanguageCode},textTrack4:{label:this.config.captionsTextTrack4Label,languageCode:this.config.captionsTextTrack4LanguageCode}},this.config.enableCEA708Captions){var t=new mt(this,"textTrack1"),i=new mt(this,"textTrack2"),n=new mt(this,"textTrack3"),a=new mt(this,"textTrack4");this.cea608Parser1=new ir(1,t,i),this.cea608Parser2=new ir(3,n,a)}e.on(p.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),e.on(p.Events.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(p.Events.MANIFEST_LOADING,this.onManifestLoading,this),e.on(p.Events.MANIFEST_LOADED,this.onManifestLoaded,this),e.on(p.Events.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),e.on(p.Events.FRAG_LOADING,this.onFragLoading,this),e.on(p.Events.FRAG_LOADED,this.onFragLoaded,this),e.on(p.Events.FRAG_PARSING_USERDATA,this.onFragParsingUserdata,this),e.on(p.Events.FRAG_DECRYPTED,this.onFragDecrypted,this),e.on(p.Events.INIT_PTS_FOUND,this.onInitPtsFound,this),e.on(p.Events.SUBTITLE_TRACKS_CLEARED,this.onSubtitleTracksCleared,this),e.on(p.Events.BUFFER_FLUSHING,this.onBufferFlushing,this)}var o=d.prototype;return o.destroy=function(){var e=this.hls;e.off(p.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),e.off(p.Events.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(p.Events.MANIFEST_LOADING,this.onManifestLoading,this),e.off(p.Events.MANIFEST_LOADED,this.onManifestLoaded,this),e.off(p.Events.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),e.off(p.Events.FRAG_LOADING,this.onFragLoading,this),e.off(p.Events.FRAG_LOADED,this.onFragLoaded,this),e.off(p.Events.FRAG_PARSING_USERDATA,this.onFragParsingUserdata,this),e.off(p.Events.FRAG_DECRYPTED,this.onFragDecrypted,this),e.off(p.Events.INIT_PTS_FOUND,this.onInitPtsFound,this),e.off(p.Events.SUBTITLE_TRACKS_CLEARED,this.onSubtitleTracksCleared,this),e.off(p.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),this.hls=this.config=this.cea608Parser1=this.cea608Parser2=null},o.addCues=function(e,t,i,n,a){for(var r,s,l,u,c=!1,v=a.length;v--;){var m=a[v],_=(r=m[0],s=m[1],l=t,u=i,Math.min(s,u)-Math.max(r,l));if(_>=0&&(m[0]=Math.min(m[0],t),m[1]=Math.max(m[1],i),c=!0,_/(i-t)>.5))return}if(c||a.push([t,i]),this.config.renderTextTracksNatively){var S=this.captionsTracks[e];this.Cues.newCue(S,t,i,n)}else{var x=this.Cues.newCue(null,t,i,n);this.hls.trigger(p.Events.CUES_PARSED,{type:"captions",cues:x,track:e})}},o.onInitPtsFound=function(e,t){var i=this,n=t.frag,a=t.id,r=t.initPTS,s=t.timescale,l=this.unparsedVttFrags;a==="main"&&(this.initPTS[n.cc]=r,this.timescale[n.cc]=s),l.length&&(this.unparsedVttFrags=[],l.forEach(function(u){i.onFragLoaded(p.Events.FRAG_LOADED,u)}))},o.getExistingTrack=function(e){var t=this.media;if(t)for(var i=0;i<t.textTracks.length;i++){var n=t.textTracks[i];if(n[e])return n}return null},o.createCaptionsTrack=function(e){this.config.renderTextTracksNatively?this.createNativeTrack(e):this.createNonNativeTrack(e)},o.createNativeTrack=function(e){if(!this.captionsTracks[e]){var t=this.captionsProperties,i=this.captionsTracks,n=this.media,a=t[e],r=a.label,s=a.languageCode,l=this.getExistingTrack(e);if(l)i[e]=l,ht(i[e]),rt(i[e],n);else{var u=this.createTextTrack("captions",r,s);u&&(u[e]=!0,i[e]=u)}}},o.createNonNativeTrack=function(e){if(!this.nonNativeCaptionsTracks[e]){var t=this.captionsProperties[e];if(t){var i={_id:e,label:t.label,kind:"captions",default:!!t.media&&!!t.media.default,closedCaptions:t.media};this.nonNativeCaptionsTracks[e]=i,this.hls.trigger(p.Events.NON_NATIVE_TEXT_TRACKS_FOUND,{tracks:[i]})}}},o.createTextTrack=function(e,t,i){var n=this.media;if(n)return n.addTextTrack(e,t,i)},o.onMediaAttaching=function(e,t){this.media=t.media,this._cleanTracks()},o.onMediaDetaching=function(){var e=this.captionsTracks;Object.keys(e).forEach(function(t){ht(e[t]),delete e[t]}),this.nonNativeCaptionsTracks={}},o.onManifestLoading=function(){this.lastSn=-1,this.lastPartIndex=-1,this.prevCC=-1,this.vttCCs={ccOffset:0,presentationOffset:0,0:{start:0,prevCC:-1,new:!0}},this._cleanTracks(),this.tracks=[],this.captionsTracks={},this.nonNativeCaptionsTracks={},this.textTracks=[],this.unparsedVttFrags=this.unparsedVttFrags||[],this.initPTS=[],this.timescale=[],this.cea608Parser1&&this.cea608Parser2&&(this.cea608Parser1.reset(),this.cea608Parser2.reset())},o._cleanTracks=function(){var e=this.media;if(e){var t=e.textTracks;if(t)for(var i=0;i<t.length;i++)ht(t[i])}},o.onSubtitleTracksUpdated=function(e,t){var i=this;this.textTracks=[];var n=t.subtitleTracks||[],a=n.some(function(u){return u.textCodec===gr});if(this.config.enableWebVTT||a&&this.config.enableIMSC1){var r=this.tracks&&n&&this.tracks.length===n.length;if(this.tracks=n||[],this.config.renderTextTracksNatively){var s=this.media?this.media.textTracks:[];this.tracks.forEach(function(u,c){var v;if(c<s.length){for(var m=null,_=0;_<s.length;_++)if(wa(s[_],u)){m=s[_];break}m&&(v=m)}if(v)ht(v);else{var S=i._captionsOrSubtitlesFromCharacteristics(u);(v=i.createTextTrack(S,u.name,u.lang))&&(v.mode="disabled")}v&&(v.groupId=u.groupId,i.textTracks.push(v))})}else if(!r&&this.tracks&&this.tracks.length){var l=this.tracks.map(function(u){return{label:u.name,kind:u.type.toLowerCase(),default:u.default,subtitleTrack:u}});this.hls.trigger(p.Events.NON_NATIVE_TEXT_TRACKS_FOUND,{tracks:l})}}},o._captionsOrSubtitlesFromCharacteristics=function(e){var t;if((t=e.attrs)!==null&&t!==void 0&&t.CHARACTERISTICS){var i=/transcribes-spoken-dialog/gi.test(e.attrs.CHARACTERISTICS),n=/describes-music-and-sound/gi.test(e.attrs.CHARACTERISTICS);if(i&&n)return"captions"}return"subtitles"},o.onManifestLoaded=function(e,t){var i=this;this.config.enableCEA708Captions&&t.captions&&t.captions.forEach(function(n){var a=/(?:CC|SERVICE)([1-4])/.exec(n.instreamId);if(a){var r="textTrack"+a[1],s=i.captionsProperties[r];s&&(s.label=n.name,n.lang&&(s.languageCode=n.lang),s.media=n)}})},o.closedCaptionsForLevel=function(e){var t=this.hls.levels[e.level];return t==null?void 0:t.attrs["CLOSED-CAPTIONS"]},o.onFragLoading=function(e,t){var i=this.cea608Parser1,n=this.cea608Parser2,a=this.lastSn,r=this.lastPartIndex;if(this.enabled&&i&&n&&t.frag.type===pe.PlaylistLevelType.MAIN){var s,l,u=t.frag.sn,c=(s=t==null||(l=t.part)===null||l===void 0?void 0:l.index)!=null?s:-1;u===a+1||u===a&&c===r+1||(i.reset(),n.reset()),this.lastSn=u,this.lastPartIndex=c}},o.onFragLoaded=function(e,t){var i=t.frag,n=t.payload,a=this.initPTS,r=this.unparsedVttFrags;if(i.type===pe.PlaylistLevelType.SUBTITLE)if(n.byteLength){if(!(0,R.isFiniteNumber)(a[i.cc]))return r.push(t),void(a.length&&this.hls.trigger(p.Events.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:i,error:new Error("Missing initial subtitle PTS")}));var s=i.decryptdata,l="stats"in t;if(s==null||!s.encrypted||l){var u=this.tracks[i.level],c=this.vttCCs;c[i.cc]||(c[i.cc]={start:i.start,prevCC:this.prevCC,new:!0},this.prevCC=i.cc),u&&u.textCodec===gr?this._parseIMSC1(i,n):this._parseVTTs(i,n,c)}}else this.hls.trigger(p.Events.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:i,error:new Error("Empty subtitle payload")})},o._parseIMSC1=function(e,t){var i=this,n=this.hls;Mn(t,this.initPTS[e.cc],this.timescale[e.cc],function(a){i._appendCues(a,e.level),n.trigger(p.Events.SUBTITLE_FRAG_PROCESSED,{success:!0,frag:e})},function(a){k.logger.log("Failed to parse IMSC1: "+a),n.trigger(p.Events.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:e,error:a})})},o._parseVTTs=function(e,t,i){var n,a=this,r=this.hls;(function(s,l,u,c,v,m,_,S){var x,I=new nr,j=(0,Dt.utf8ArrayToStr)(new Uint8Array(s)).trim().replace(ar,`
|
|
30
28
|
`).split(`
|
|
31
|
-
`),
|
|
32
|
-
`)}),u.flush()}},"./src/utils/xhr-loader.ts":(z,N,T)=>{"use strict";T.r(N),T.d(N,{default:()=>B});var C=T("./src/utils/logger.ts"),L=T("./src/loader/load-stats.ts"),M=/^age:\s*[\d.]+\s*$/m,P=function(){function A(x){this.xhrSetup=void 0,this.requestTimeout=void 0,this.retryTimeout=void 0,this.retryDelay=void 0,this.config=null,this.callbacks=null,this.context=void 0,this.loader=null,this.stats=void 0,this.xhrSetup=x?x.xhrSetup:null,this.stats=new L.LoadStats,this.retryDelay=0}var D=A.prototype;return D.destroy=function(){this.callbacks=null,this.abortInternal(),this.loader=null,this.config=null},D.abortInternal=function(){var _=this.loader;self.clearTimeout(this.requestTimeout),self.clearTimeout(this.retryTimeout),_&&(_.onreadystatechange=null,_.onprogress=null,_.readyState!==4&&(this.stats.aborted=!0,_.abort()))},D.abort=function(){var _;this.abortInternal(),(_=this.callbacks)!==null&&_!==void 0&&_.onAbort&&this.callbacks.onAbort(this.stats,this.context,this.loader)},D.load=function(_,S,d){if(this.stats.loading.start)throw new Error("Loader can only be used once.");this.stats.loading.start=self.performance.now(),this.context=_,this.config=S,this.callbacks=d,this.retryDelay=S.retryDelay,this.loadInternal()},D.loadInternal=function(){var _=this.config,S=this.context;if(!!_){var d=this.loader=new self.XMLHttpRequest,E=this.stats;E.loading.first=0,E.loaded=0;var p=this.xhrSetup;try{if(p)try{p(d,S.url)}catch{d.open("GET",S.url,!0),p(d,S.url)}d.readyState||d.open("GET",S.url,!0);var h=this.context.headers;if(h)for(var a in h)d.setRequestHeader(a,h[a])}catch(o){this.callbacks.onError({code:d.status,text:o.message},S,d);return}S.rangeEnd&&d.setRequestHeader("Range","bytes="+S.rangeStart+"-"+(S.rangeEnd-1)),d.onreadystatechange=this.readystatechange.bind(this),d.onprogress=this.loadprogress.bind(this),d.responseType=S.responseType,self.clearTimeout(this.requestTimeout),this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),_.timeout),d.send()}},D.readystatechange=function(){var _=this.context,S=this.loader,d=this.stats;if(!(!_||!S)){var E=S.readyState,p=this.config;if(!d.aborted&&E>=2)if(self.clearTimeout(this.requestTimeout),d.loading.first===0&&(d.loading.first=Math.max(self.performance.now(),d.loading.start)),E===4){S.onreadystatechange=null,S.onprogress=null;var h=S.status,a=S.responseType==="arraybuffer";if(h>=200&&h<300&&(a&&S.response||S.responseText!==null)){d.loading.end=Math.max(self.performance.now(),d.loading.first);var o,n;if(a?(o=S.response,n=o.byteLength):(o=S.responseText,n=o.length),d.loaded=d.total=n,!this.callbacks)return;var v=this.callbacks.onProgress;if(v&&v(d,_,o,S),!this.callbacks)return;var l={url:S.responseURL,data:o};this.callbacks.onSuccess(l,d,_,S)}else d.retry>=p.maxRetry||h>=400&&h<499?(C.logger.error(h+" while loading "+_.url),this.callbacks.onError({code:h,text:S.statusText},_,S)):(C.logger.warn(h+" while loading "+_.url+", retrying in "+this.retryDelay+"..."),this.abortInternal(),this.loader=null,self.clearTimeout(this.retryTimeout),this.retryTimeout=self.setTimeout(this.loadInternal.bind(this),this.retryDelay),this.retryDelay=Math.min(2*this.retryDelay,p.maxRetryDelay),d.retry++)}else self.clearTimeout(this.requestTimeout),this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),p.timeout)}},D.loadtimeout=function(){C.logger.warn("timeout while loading "+this.context.url);var _=this.callbacks;_&&(this.abortInternal(),_.onTimeout(this.stats,this.context,this.loader))},D.loadprogress=function(_){var S=this.stats;S.loaded=_.loaded,_.lengthComputable&&(S.total=_.total)},D.getCacheAge=function(){var _=null;if(this.loader&&M.test(this.loader.getAllResponseHeaders())){var S=this.loader.getResponseHeader("age");_=S?parseFloat(S):null}return _},A}();let B=P},"./node_modules/eventemitter3/index.js":z=>{"use strict";var N=Object.prototype.hasOwnProperty,T="~";function C(){}Object.create&&(C.prototype=Object.create(null),new C().__proto__||(T=!1));function L(A,D,x){this.fn=A,this.context=D,this.once=x||!1}function M(A,D,x,_,S){if(typeof x!="function")throw new TypeError("The listener must be a function");var d=new L(x,_||A,S),E=T?T+D:D;return A._events[E]?A._events[E].fn?A._events[E]=[A._events[E],d]:A._events[E].push(d):(A._events[E]=d,A._eventsCount++),A}function P(A,D){--A._eventsCount===0?A._events=new C:delete A._events[D]}function B(){this._events=new C,this._eventsCount=0}B.prototype.eventNames=function(){var D=[],x,_;if(this._eventsCount===0)return D;for(_ in x=this._events)N.call(x,_)&&D.push(T?_.slice(1):_);return Object.getOwnPropertySymbols?D.concat(Object.getOwnPropertySymbols(x)):D},B.prototype.listeners=function(D){var x=T?T+D:D,_=this._events[x];if(!_)return[];if(_.fn)return[_.fn];for(var S=0,d=_.length,E=new Array(d);S<d;S++)E[S]=_[S].fn;return E},B.prototype.listenerCount=function(D){var x=T?T+D:D,_=this._events[x];return _?_.fn?1:_.length:0},B.prototype.emit=function(D,x,_,S,d,E){var p=T?T+D:D;if(!this._events[p])return!1;var h=this._events[p],a=arguments.length,o,n;if(h.fn){switch(h.once&&this.removeListener(D,h.fn,void 0,!0),a){case 1:return h.fn.call(h.context),!0;case 2:return h.fn.call(h.context,x),!0;case 3:return h.fn.call(h.context,x,_),!0;case 4:return h.fn.call(h.context,x,_,S),!0;case 5:return h.fn.call(h.context,x,_,S,d),!0;case 6:return h.fn.call(h.context,x,_,S,d,E),!0}for(n=1,o=new Array(a-1);n<a;n++)o[n-1]=arguments[n];h.fn.apply(h.context,o)}else{var v=h.length,l;for(n=0;n<v;n++)switch(h[n].once&&this.removeListener(D,h[n].fn,void 0,!0),a){case 1:h[n].fn.call(h[n].context);break;case 2:h[n].fn.call(h[n].context,x);break;case 3:h[n].fn.call(h[n].context,x,_);break;case 4:h[n].fn.call(h[n].context,x,_,S);break;default:if(!o)for(l=1,o=new Array(a-1);l<a;l++)o[l-1]=arguments[l];h[n].fn.apply(h[n].context,o)}}return!0},B.prototype.on=function(D,x,_){return M(this,D,x,_,!1)},B.prototype.once=function(D,x,_){return M(this,D,x,_,!0)},B.prototype.removeListener=function(D,x,_,S){var d=T?T+D:D;if(!this._events[d])return this;if(!x)return P(this,d),this;var E=this._events[d];if(E.fn)E.fn===x&&(!S||E.once)&&(!_||E.context===_)&&P(this,d);else{for(var p=0,h=[],a=E.length;p<a;p++)(E[p].fn!==x||S&&!E[p].once||_&&E[p].context!==_)&&h.push(E[p]);h.length?this._events[d]=h.length===1?h[0]:h:P(this,d)}return this},B.prototype.removeAllListeners=function(D){var x;return D?(x=T?T+D:D,this._events[x]&&P(this,x)):(this._events=new C,this._eventsCount=0),this},B.prototype.off=B.prototype.removeListener,B.prototype.addListener=B.prototype.on,B.prefixed=T,B.EventEmitter=B,z.exports=B},"./node_modules/url-toolkit/src/url-toolkit.js":function(z){(function(N){var T=/^(?=((?:[a-zA-Z0-9+\-.]+:)?))\1(?=((?:\/\/[^\/?#]*)?))\2(?=((?:(?:[^?#\/]*\/)*[^;?#\/]*)?))\3((?:;[^?#]*)?)(\?[^#]*)?(#[^]*)?$/,C=/^(?=([^\/?#]*))\1([^]*)$/,L=/(?:\/|^)\.(?=\/)/g,M=/(?:\/|^)\.\.\/(?!\.\.\/)[^\/]*(?=\/)/g,P={buildAbsoluteURL:function(B,A,D){if(D=D||{},B=B.trim(),A=A.trim(),!A){if(!D.alwaysNormalize)return B;var x=P.parseURL(B);if(!x)throw new Error("Error trying to parse base URL.");return x.path=P.normalizePath(x.path),P.buildURLFromParts(x)}var _=P.parseURL(A);if(!_)throw new Error("Error trying to parse relative URL.");if(_.scheme)return D.alwaysNormalize?(_.path=P.normalizePath(_.path),P.buildURLFromParts(_)):A;var S=P.parseURL(B);if(!S)throw new Error("Error trying to parse base URL.");if(!S.netLoc&&S.path&&S.path[0]!=="/"){var d=C.exec(S.path);S.netLoc=d[1],S.path=d[2]}S.netLoc&&!S.path&&(S.path="/");var E={scheme:S.scheme,netLoc:_.netLoc,path:null,params:_.params,query:_.query,fragment:_.fragment};if(!_.netLoc&&(E.netLoc=S.netLoc,_.path[0]!=="/"))if(!_.path)E.path=S.path,_.params||(E.params=S.params,_.query||(E.query=S.query));else{var p=S.path,h=p.substring(0,p.lastIndexOf("/")+1)+_.path;E.path=P.normalizePath(h)}return E.path===null&&(E.path=D.alwaysNormalize?P.normalizePath(_.path):_.path),P.buildURLFromParts(E)},parseURL:function(B){var A=T.exec(B);return A?{scheme:A[1]||"",netLoc:A[2]||"",path:A[3]||"",params:A[4]||"",query:A[5]||"",fragment:A[6]||""}:null},normalizePath:function(B){for(B=B.split("").reverse().join("").replace(L,"");B.length!==(B=B.replace(M,"")).length;);return B.split("").reverse().join("")},buildURLFromParts:function(B){return B.scheme+B.netLoc+B.path+B.params+B.query+B.fragment}};z.exports=P})(this)}},ee={};function ie(z){var N=ee[z];if(N!==void 0)return N.exports;var T=ee[z]={exports:{}};return J[z].call(T.exports,T,T.exports,ie),T.exports}ie.m=J,ie.n=z=>{var N=z&&z.__esModule?()=>z.default:()=>z;return ie.d(N,{a:N}),N},ie.d=(z,N)=>{for(var T in N)ie.o(N,T)&&!ie.o(z,T)&&Object.defineProperty(z,T,{enumerable:!0,get:N[T]})},ie.o=(z,N)=>Object.prototype.hasOwnProperty.call(z,N),ie.r=z=>{typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(z,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(z,"__esModule",{value:!0})};var se=ie("./src/hls.ts");return se=se.default,se})())});var tr=zt(Ur()),xt=zt($t());var At=class extends Error{constructor(ie,se=At.MEDIA_ERR_CUSTOM,z){var N;super(ie);this.name="MediaError",this.code=se,this.fatal=z!=null?z:se>=At.MEDIA_ERR_NETWORK&&se<=At.MEDIA_ERR_ENCRYPTED,this.message||(this.message=(N=At.defaultMessages[this.code])!=null?N:"")}},$e=At;$e.MEDIA_ERR_ABORTED=1,$e.MEDIA_ERR_NETWORK=2,$e.MEDIA_ERR_DECODE=3,$e.MEDIA_ERR_SRC_NOT_SUPPORTED=4,$e.MEDIA_ERR_ENCRYPTED=5,$e.MEDIA_ERR_CUSTOM=100,$e.defaultMessages={1:"You aborted the media playback",2:"A network error caused the media download to fail.",3:"A media error caused playback to be aborted. The media could be corrupt or your browser does not support this format.",4:"An unsupported error occurred. The server or network failed, or your browser does not support this format.",5:"The media is encrypted and there are no keys to decrypt it."};var _r=zt($t());var Xi=J=>J==null,mr=(J,ee)=>Xi(ee)?!1:J in ee,Jt={ANY:"any",MUTED:"muted"},Kt={VOD:"on-demand",ON_DEMAND:"on-demand",LIVE:"live",LL_LIVE:"ll-live",DVR:"live:dvr",LL_DVR:"ll-live:dvr"},pr={MSE:"mse",NATIVE:"native"},Zt={HEADER:"header",QUERY:"query",NONE:"none"},hn=Object.values(Zt),Et={M3U8:"application/vnd.apple.mpegurl",MP4:"video/mp4"},qt={HLS:Et.M3U8},vn=Object.keys(qt),gn=[...Object.values(Et),"hls","HLS"];var yt=(J,ee,ie,se,z=J)=>{z.addEventListener(ee,ie,se),J.addEventListener("teardown",()=>{z.removeEventListener(ee,ie)},{once:!0})};function Br(J,ee,ie){ee&&ie>ee&&(ie=ee);for(let se=0;se<J.length;se++)if(J.start(se)<=ie&&J.end(se)>=ie)return!0;return!1}var Nr=J=>{let ee=J.indexOf("?");if(ee<0)return[J];let ie=J.slice(0,ee),se=J.slice(ee);return[ie,se]},yr=J=>{let ee=J.type;if(ee){let se=ee.toUpperCase();return mr(se,qt)?qt[se]:ee}let{src:ie}=J;return ie?zi(ie):""},zi=J=>{let ee="";try{ee=new URL(J).pathname}catch{console.error("invalid url")}let ie=ee.lastIndexOf(".");if(ie<0)return"";let z=ee.slice(ie+1).toUpperCase();return mr(z,Et)?Et[z]:""};var Qi=Object.values(Jt),Kr=J=>typeof J=="boolean"||typeof J=="string"&&Qi.includes(J),Wr=({autoplay:J},ee,ie)=>{let se=!1,z=!1,N=Kr(J)?J:!!J,T=()=>{se||yt(ee,"playing",()=>{se=!0},{once:!0})};if(T(),yt(ee,"loadstart",()=>{se=!1,T(),Er(ee,N)},{once:!0}),yt(ee,"loadstart",()=>{ie||(z=!Number.isFinite(ee.duration)),Er(ee,N)},{once:!0}),ie&&ie.once(_r.default.Events.LEVEL_LOADED,(L,M)=>{var P;z=(P=M.details.live)!=null?P:!1}),!N){let L=()=>{!z||(ie!=null&&ie.liveSyncPosition?ee.currentTime=ie.liveSyncPosition:Number.isFinite(ee.seekable.end(0))&&(ee.currentTime=ee.seekable.end(0)))};ie&&yt(ee,"play",()=>{ee.preload==="metadata"?ie.once(_r.default.Events.LEVEL_UPDATED,L):L()},{once:!0})}return L=>{se||(N=Kr(L)?L:!!L,Er(ee,N))}},Er=(J,ee)=>{if(!ee)return;let ie=J.muted,se=()=>J.muted=ie;switch(ee){case Jt.ANY:J.play().catch(()=>{J.muted=!0,J.play().catch(se)});break;case Jt.MUTED:J.muted=!0,J.play().catch(se);break;default:J.play().catch(()=>{});break}};var Gr=({preload:J,src:ee},ie,se)=>{let z=B=>{B!=null&&["","none","metadata","auto"].includes(B)?ie.setAttribute("preload",B):ie.removeAttribute("preload")};if(!se)return z(J),z;let N=!1,T=!1,C=se.config.maxBufferLength,L=se.config.maxBufferSize,M=B=>{z(B);let A=B!=null?B:ie.preload;T||A==="none"||(A==="metadata"?(se.config.maxBufferLength=1,se.config.maxBufferSize=1):(se.config.maxBufferLength=C,se.config.maxBufferSize=L),P())},P=()=>{!N&&ee&&(N=!0,se.loadSource(ee))};return yt(ie,"play",()=>{T=!0,se.config.maxBufferLength=C,se.config.maxBufferSize=L,P()},{once:!0}),M(J),M};var bt=zt($t());function Hr(J,ee){ee.on(bt.default.Events.NON_NATIVE_TEXT_TRACKS_FOUND,(z,{tracks:N})=>{N.forEach(T=>{var M;let C=(M=T.subtitleTrack)!=null?M:T.closedCaptions,L=ee.subtitleTracks.findIndex(({lang:P,name:B,type:A})=>P==(C==null?void 0:C.lang)&&B===T.label&&A.toLowerCase()===T.kind);Tr(J,T.kind,T.label,C==null?void 0:C.lang,`${T.kind}${L}`)})});let ie=()=>{var T;if(!ee.subtitleTracks.length)return;let z=Array.from(J.textTracks).find(C=>C.id&&C.mode==="showing"&&["subtitles","captions"].includes(C.kind)),N=`${(T=ee.subtitleTracks[ee.subtitleTrack])==null?void 0:T.type.toLowerCase()}${ee.subtitleTrack}`;if(z&&(ee.subtitleTrack<0||(z==null?void 0:z.id)!==N)){let C=ee.subtitleTracks.findIndex(({lang:L,name:M,type:P})=>L==z.language&&M===z.label&&P.toLowerCase()===z.kind);ee.subtitleTrack=C}z&&(z==null?void 0:z.id)===N&&z.cues&&Array.from(z.cues).forEach(C=>{z.addCue(C)})};J.textTracks.addEventListener("change",ie),ee.on(bt.default.Events.CUES_PARSED,(z,{track:N,cues:T})=>{let C=J.textTracks.getTrackById(N);if(!C)return;let L=C.mode==="disabled";L&&(C.mode="hidden"),T.forEach(M=>{var P;(P=C.cues)!=null&&P.getCueById(M.id)||C.addCue(M)}),L&&(C.mode="disabled")}),ee.once(bt.default.Events.DESTROYING,()=>{J.textTracks.removeEventListener("change",ie),J.querySelectorAll("track[data-removeondestroy]").forEach(N=>{N.remove()})});let se=()=>{Array.from(J.textTracks).forEach(z=>{var N,T;if(!["subtitles","caption"].includes(z.kind)&&z.label==="thumbnails"){if(!((N=z.cues)!=null&&N.length)){let C=J.querySelector('track[label="thumbnails"]'),L=(T=C==null?void 0:C.getAttribute("src"))!=null?T:"";C==null||C.removeAttribute("src"),setTimeout(()=>{C==null||C.setAttribute("src",L)},0)}z.mode!=="hidden"&&(z.mode="hidden")}})};ee.once(bt.default.Events.MANIFEST_LOADED,se),ee.once(bt.default.Events.MEDIA_ATTACHED,se)}function Tr(J,ee,ie,se,z){let N=document.createElement("track");return N.kind=ee,N.label=ie,se&&(N.srclang=se),z&&(N.id=z),N.track.mode="disabled",N.setAttribute("data-removeondestroy",""),J.append(N),N.track}function $i(J,ee){let ie=Array.prototype.find.call(J.querySelectorAll("track"),se=>se.track===ee);ie==null||ie.remove()}var Wt="cuepoints",xr=Object.freeze({label:Wt}),er=(J,{label:ee=Wt}=xr)=>{var ie;return(ie=Array.from(J.querySelectorAll("track")).find(se=>se.track.label===ee&&se.track.kind==="metadata"))==null?void 0:ie.track};async function jr(J,ee,ie=xr){let se=er(J,ie);if(!se){let{label:z=Wt}=ie;se=Tr(J,"metadata",z),se.mode="hidden",await new Promise(N=>setTimeout(()=>N(void 0),0))}return[...ee].sort(({time:z},{time:N})=>N-z).forEach(({time:z,value:N})=>{var B,A;let T=Array.prototype.findIndex.call(se==null?void 0:se.cues,D=>D.startTime>=z),C=(B=se==null?void 0:se.cues)==null?void 0:B[T],L=C?C.startTime:Number.isFinite(J.duration)?J.duration:Number.MAX_SAFE_INTEGER,M=(A=se==null?void 0:se.cues)==null?void 0:A[T-1];M&&(M.endTime=z);let P=new VTTCue(z,L,JSON.stringify(N!=null?N:null));se.addCue(P)}),se}var Vr=J=>({time:J.startTime,value:JSON.parse(J.text)});function Ji(J,ee={label:Wt}){let ie=er(J,ee);return ie!=null&&ie.cues?Array.from(ie.cues,se=>Vr(se)):[]}function Yr(J,ee={label:Wt}){var se;let ie=er(J,ee);if(!!((se=ie==null?void 0:ie.activeCues)!=null&&se.length))return Vr(ie.activeCues[0])}async function Xr(J,ee=xr){let ie=await jr(J,[],ee);return yt(J,"cuechange",()=>{let se=Yr(J);if(se){let z=new CustomEvent("cuepointchange",{composed:!0,bubbles:!0,detail:se});J.dispatchEvent(z)}},{},ie),ie}var zr,Qr,Zi=(Qr=(zr=globalThis==null?void 0:globalThis.navigator)==null?void 0:zr.userAgent)!=null?Qr:"",qi=Zi.toLowerCase().indexOf("android")!==-1,Pt=new WeakMap,Zr="mux.com",$r,Jr,qr=(Jr=($r=xt.default).isSupported)==null?void 0:Jr.call($r),en=qi,Fn=()=>tr.default.utils.now(),tn=tr.default.utils.generateUUID,Un=(J,{domain:ee=Zr}={})=>{if(!J)return;let[ie,se=""]=Nr(J);return`https://stream.${ee}/${ie}.m3u8${se}`},rn=J=>{if(!J)return;let[ee]=J.split("?");return ee||void 0},nn=J=>{if(!J||!J.startsWith("https://stream."))return;let[ee]=new URL(J).pathname.slice(1).split(".m3u8");return ee||void 0},an=J=>{var ee,ie,se;return(ee=J==null?void 0:J.metadata)!=null&&ee.video_id?J.metadata.video_id:ti(J)&&(se=(ie=rn(J.playbackId))!=null?ie:nn(J.src))!=null?se:J.src},Bn=J=>{var ee;return(ee=Pt.get(J))==null?void 0:ee.error},Nn=(J,ee,ie)=>{sn(ee,ie);let{metadata:se={}}=J,{view_session_id:z=tn()}=se,N=an(J);se.view_session_id=z,se.video_id=N,J.metadata=se,Pt.set(ee,{});let T=on(J,ee);un(J,ee,T),fn(J,ee,T),T&&Xr(ee);let C=Wr(J,ee,T),L=Gr(J,ee,T);return{engine:T,setAutoplay:C,setPreload:L}},sn=(J,ee)=>{let ie=ee==null?void 0:ee.engine;ie&&(ie.detachMedia(),ie.destroy()),(J==null?void 0:J.mux)&&!J.mux.deleted&&(J.mux.destroy(),delete J.mux),J&&(J.removeAttribute("src"),J.load(),J.removeEventListener("error",ii),J.removeEventListener("error",Sr),J.removeEventListener("durationchange",ri),Pt.delete(J),J.dispatchEvent(new Event("teardown")))};function ei(J,ee){var M;let ie=yr(J);if(!(ie===Et.M3U8))return!0;let z=!ie||((M=ee.canPlayType(ie))!=null?M:!0),{preferPlayback:N}=J,T=N===pr.MSE,C=N===pr.NATIVE;return z&&(C||!(qr&&(T||en)))}var on=(J,ee)=>{let{debug:ie,streamType:se,startTime:z=-1,metadata:N,preferCmcd:T}=J,L=yr(J)===Et.M3U8,M=ei(J,ee);if(L&&!M&&qr){let P={backBufferLength:30,renderTextTracksNatively:!1,liveDurationInfinity:!0},B=ln(se),A=T!==Zt.NONE?{useHeaders:T===Zt.HEADER,sessionId:N.view_session_id,contentId:N.video_id}:void 0;return new xt.default({debug:ie,startPosition:z,cmcd:A,...P,...B})}},ln=J=>[Kt.LIVE,Kt.DVR].includes(J)?{backBufferLength:8}:[Kt.LL_LIVE,Kt.LL_DVR].includes(J)?{backBufferLength:4,maxFragLookUpTolerance:.001}:{},ti=({playbackId:J,src:ee,customDomain:ie})=>{if(J)return!0;if(typeof ee!="string")return!1;let se=window==null?void 0:window.location.href,z=new URL(ee,se).hostname.toLocaleLowerCase();return z.includes(Zr)||!!ie&&z.includes(ie.toLocaleLowerCase())},un=(J,ee,ie)=>{var N;let{envKey:se}=J,z=ti(J);if(se||z){let{playerInitTime:T,playerSoftwareName:C,playerSoftwareVersion:L,beaconCollectionDomain:M,debug:P,disableCookies:B}=J,A={...J.metadata,video_title:((N=J==null?void 0:J.metadata)==null?void 0:N.video_title)||void 0},D=x=>typeof x.player_error_code=="string"?!1:typeof J.errorTranslator=="function"?J.errorTranslator(x):x;tr.default.monitor(ee,{debug:P,beaconCollectionDomain:M,hlsjs:ie,Hls:ie?xt.default:void 0,automaticErrorTracking:!1,errorTranslator:D,disableCookies:B,data:{...se?{env_key:se}:{},player_software_name:C,player_software:C,player_software_version:L,player_init_time:T,...A}})}},fn=(J,ee,ie)=>{var N;let se=ei(J,ee),{src:z}=J;ee&&se?(typeof z=="string"?(ee.setAttribute("src",z),J.startTime&&(((N=Pt.get(ee))!=null?N:{}).startTime=J.startTime,ee.addEventListener("durationchange",ri,{once:!0}))):ee.removeAttribute("src"),ee.addEventListener("error",ii),ee.addEventListener("error",Sr)):ie&&z?(ie.on(xt.default.Events.ERROR,(T,C)=>{let L={[xt.default.ErrorTypes.NETWORK_ERROR]:$e.MEDIA_ERR_NETWORK,[xt.default.ErrorTypes.MEDIA_ERROR]:$e.MEDIA_ERR_DECODE},M=new $e("",L[C.type]);M.fatal=C.fatal,M.data=C,ee.dispatchEvent(new CustomEvent("error",{detail:M}))}),ee.addEventListener("error",Sr),Hr(ee,ie),ie.attachMedia(ee)):console.error("It looks like the video you're trying to play will not work on this system! If possible, try upgrading to the newest versions of your browser or software.")};function ri(J){var se;let ee=J.target,ie=(se=Pt.get(ee))==null?void 0:se.startTime;if(!!ie&&Br(ee.seekable,ee.duration,ie)){let z=ee.preload==="auto";z&&(ee.preload="none"),ee.currentTime=ie,z&&(ee.preload="auto")}}async function ii(J){if(!J.isTrusted)return;J.stopImmediatePropagation();let ee=J.target;if(!(ee!=null&&ee.error))return;let{message:ie,code:se}=ee.error,z=new $e(ie,se);if(ee.src&&(se!==$e.MEDIA_ERR_DECODE||se!==void 0))try{let{status:N}=await fetch(ee.src);z.data={response:{code:N}}}catch{}ee.dispatchEvent(new CustomEvent("error",{detail:z}))}function Sr(J){var se,z;if(!(J instanceof CustomEvent)||!(J.detail instanceof $e))return;let ee=J.target,ie=J.detail;!ie||!ie.fatal||(((se=Pt.get(ee))!=null?se:{}).error=ie,(z=ee.mux)==null||z.emit("error",{player_error_code:ie.code,player_error_message:ie.message}))}var export_Hls=xt.default;var export_mux=tr.default;export{Jt as AutoplayTypes,hn as CmcdTypeValues,Zt as CmcdTypes,Et as ExtensionMimeTypeMap,export_Hls as Hls,$e as MediaError,qt as MimeTypeShorthandMap,pr as PlaybackTypes,Kt as StreamTypes,jr as addCuePoints,Tr as addTextTrack,gn as allMediaTypes,Fn as generatePlayerInitTime,tn as generateUUID,Yr as getActiveCuePoint,Ji as getCuePoints,er as getCuePointsTrack,Bn as getError,ln as getStreamTypeConfig,Nn as initialize,mr as isKeyOf,ti as isMuxVideoSrc,fn as loadMedia,export_mux as mux,$i as removeTextTrack,Xr as setupCuePoints,on as setupHls,un as setupMux,vn as shorthandKeys,sn as teardown,Un as toMuxVideoURL};
|
|
29
|
+
`),ae=[],me=(0,tr.toMpegTsClockFromTimescale)(l,u),de="00:00.000",_e=0,Ke=0,ze=!0;I.oncue=function(Ee){var Ge=c[v],Fe=c.ccOffset,ct=(_e-me)/9e4;Ge!=null&&Ge.new&&(Ke!==void 0?Fe=c.ccOffset=Ge.start:function(At,$t,Xt){var Gt=At[$t],Zt=At[Gt.prevCC];if(!Zt||!Zt.new&&Gt.new)return At.ccOffset=At.presentationOffset=Gt.start,void(Gt.new=!1);for(;(yr=Zt)!==null&&yr!==void 0&&yr.new;){var yr;At.ccOffset+=Gt.start-Zt.start,Gt.new=!1,Zt=At[(Gt=Zt).prevCC]}At.presentationOffset=Xt}(c,v,ct)),ct&&(Fe=ct-c.presentationOffset);var Ct=Ee.endTime-Ee.startTime,ft=(0,vr.normalizePts)(9e4*(Ee.startTime+Fe-Ke),9e4*m)/9e4;Ee.startTime=Math.max(ft,0),Ee.endTime=Math.max(ft+Ct,0);var Tt=Ee.text.trim();Ee.text=decodeURIComponent(encodeURIComponent(Tt)),Ee.id||(Ee.id=sr(Ee.startTime,Ee.endTime,Tt)),Ee.endTime>0&&ae.push(Ee)},I.onparsingerror=function(Ee){x=Ee},I.onflush=function(){x?S(x):_(ae)},j.forEach(function(Ee){if(ze){if(pr(Ee,"X-TIMESTAMP-MAP=")){ze=!1,Ee.slice(16).split(",").forEach(function(Ge){pr(Ge,"LOCAL:")?de=Ge.slice(6):pr(Ge,"MPEGTS:")&&(_e=parseInt(Ge.slice(7)))});try{Ke=function(Ge){var Fe=parseInt(Ge.slice(-3)),ct=parseInt(Ge.slice(-6,-4)),Ct=parseInt(Ge.slice(-9,-7)),ft=Ge.length>9?parseInt(Ge.substring(0,Ge.indexOf(":"))):0;if(!((0,R.isFiniteNumber)(Fe)&&(0,R.isFiniteNumber)(ct)&&(0,R.isFiniteNumber)(Ct)&&(0,R.isFiniteNumber)(ft)))throw Error("Malformed X-TIMESTAMP-MAP: Local:"+Ge);return Fe+=1e3*ct,(Fe+=6e4*Ct)+36e5*ft}(de)/1e3}catch(Ge){x=Ge}return}Ee===""&&(ze=!1)}I.parse(Ee+`
|
|
30
|
+
`)}),I.flush()})((n=e.initSegment)!==null&&n!==void 0&&n.data?(0,W.appendUint8Array)(e.initSegment.data,new Uint8Array(t)):t,this.initPTS[e.cc],this.timescale[e.cc],i,e.cc,e.start,function(s){a._appendCues(s,e.level),r.trigger(p.Events.SUBTITLE_FRAG_PROCESSED,{success:!0,frag:e})},function(s){a._fallbackToIMSC1(e,t),k.logger.log("Failed to parse VTT cue: "+s),r.trigger(p.Events.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:e,error:s})})},o._fallbackToIMSC1=function(e,t){var i=this,n=this.tracks[e.level];n.textCodec||Mn(t,this.initPTS[e.cc],this.timescale[e.cc],function(){n.textCodec=gr,i._parseIMSC1(e,t)},function(){n.textCodec="wvtt"})},o._appendCues=function(e,t){var i=this.hls;if(this.config.renderTextTracksNatively){var n=this.textTracks[t];if(!n||n.mode==="disabled")return;e.forEach(function(s){return yt(n,s)})}else{var a=this.tracks[t];if(!a)return;var r=a.default?"default":"subtitles"+t;i.trigger(p.Events.CUES_PARSED,{type:"subtitles",cues:e,track:r})}},o.onFragDecrypted=function(e,t){var i=t.frag;if(i.type===pe.PlaylistLevelType.SUBTITLE){if(!(0,R.isFiniteNumber)(this.initPTS[i.cc]))return void this.unparsedVttFrags.push(t);this.onFragLoaded(p.Events.FRAG_LOADED,t)}},o.onSubtitleTracksCleared=function(){this.tracks=[],this.captionsTracks={}},o.onFragParsingUserdata=function(e,t){var i=this.cea608Parser1,n=this.cea608Parser2;if(this.enabled&&i&&n){var a=t.frag,r=t.samples;if(a.type!==pe.PlaylistLevelType.MAIN||this.closedCaptionsForLevel(a)!=="NONE")for(var s=0;s<r.length;s++){var l=r[s].bytes;if(l){var u=this.extractCea608Data(l);i.addData(r[s].pts,u[0]),n.addData(r[s].pts,u[1])}}}},o.onBufferFlushing=function(e,t){var i=t.startOffset,n=t.endOffset,a=t.endOffsetSubtitles,r=t.type,s=this.media;if(s&&!(s.currentTime<n)){if(!r||r==="video"){var l=this.captionsTracks;Object.keys(l).forEach(function(c){return It(l[c],i,n)})}if(this.config.renderTextTracksNatively&&i===0&&a!==void 0){var u=this.textTracks;Object.keys(u).forEach(function(c){return It(u[c],i,a)})}}},o.extractCea608Data=function(e){for(var t=[[],[]],i=31&e[0],n=2,a=0;a<i;a++){var r=e[n++],s=127&e[n++],l=127&e[n++];if((s!==0||l!==0)&&(4&r)!=0){var u=3&r;u!==0&&u!==1||(t[u].push(s),t[u].push(l))}}return t},d}();function wa(d,o){return d&&d.label===o.name&&!(d.textTrack1||d.textTrack2)}function Aa(d,o){for(var e=0;e<o.length;e++){var t=o[e];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(d,typeof(i=function(n,a){if(typeof n!="object"||n===null)return n;var r=n[Symbol.toPrimitive];if(r!==void 0){var s=r.call(n,a);if(typeof s!="object")return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(t.key,"string"))=="symbol"?i:String(i),t)}var i}let Da=function(){function d(i){this.autoLevelCapping=void 0,this.firstLevel=void 0,this.media=void 0,this.restrictedLevels=void 0,this.timer=void 0,this.hls=void 0,this.streamController=void 0,this.clientRect=void 0,this.hls=i,this.autoLevelCapping=Number.POSITIVE_INFINITY,this.firstLevel=-1,this.media=null,this.restrictedLevels=[],this.timer=void 0,this.clientRect=null,this.registerListeners()}var o,e,t=d.prototype;return t.setStreamController=function(i){this.streamController=i},t.destroy=function(){this.unregisterListener(),this.hls.config.capLevelToPlayerSize&&this.stopCapping(),this.media=null,this.clientRect=null,this.hls=this.streamController=null},t.registerListeners=function(){var i=this.hls;i.on(p.Events.FPS_DROP_LEVEL_CAPPING,this.onFpsDropLevelCapping,this),i.on(p.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),i.on(p.Events.MANIFEST_PARSED,this.onManifestParsed,this),i.on(p.Events.BUFFER_CODECS,this.onBufferCodecs,this),i.on(p.Events.MEDIA_DETACHING,this.onMediaDetaching,this)},t.unregisterListener=function(){var i=this.hls;i.off(p.Events.FPS_DROP_LEVEL_CAPPING,this.onFpsDropLevelCapping,this),i.off(p.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),i.off(p.Events.MANIFEST_PARSED,this.onManifestParsed,this),i.off(p.Events.BUFFER_CODECS,this.onBufferCodecs,this),i.off(p.Events.MEDIA_DETACHING,this.onMediaDetaching,this)},t.onFpsDropLevelCapping=function(i,n){d.isLevelAllowed(n.droppedLevel,this.restrictedLevels)&&this.restrictedLevels.push(n.droppedLevel)},t.onMediaAttaching=function(i,n){this.media=n.media instanceof HTMLVideoElement?n.media:null,this.clientRect=null},t.onManifestParsed=function(i,n){var a=this.hls;this.restrictedLevels=[],this.firstLevel=n.firstLevel,a.config.capLevelToPlayerSize&&n.video&&this.startCapping()},t.onBufferCodecs=function(i,n){this.hls.config.capLevelToPlayerSize&&n.video&&this.startCapping()},t.onMediaDetaching=function(){this.stopCapping()},t.detectPlayerSize=function(){if(this.media&&this.mediaHeight>0&&this.mediaWidth>0){var i=this.hls.levels;if(i.length){var n=this.hls;n.autoLevelCapping=this.getMaxLevel(i.length-1),n.autoLevelCapping>this.autoLevelCapping&&this.streamController&&this.streamController.nextLevelSwitch(),this.autoLevelCapping=n.autoLevelCapping}}},t.getMaxLevel=function(i){var n=this,a=this.hls.levels;if(!a.length)return-1;var r=a.filter(function(s,l){return d.isLevelAllowed(l,n.restrictedLevels)&&l<=i});return this.clientRect=null,d.getMaxLevelByMediaSize(r,this.mediaWidth,this.mediaHeight)},t.startCapping=function(){this.timer||(this.autoLevelCapping=Number.POSITIVE_INFINITY,this.hls.firstLevel=this.getMaxLevel(this.firstLevel),self.clearInterval(this.timer),this.timer=self.setInterval(this.detectPlayerSize.bind(this),1e3),this.detectPlayerSize())},t.stopCapping=function(){this.restrictedLevels=[],this.firstLevel=-1,this.autoLevelCapping=Number.POSITIVE_INFINITY,this.timer&&(self.clearInterval(this.timer),this.timer=void 0)},t.getDimensions=function(){if(this.clientRect)return this.clientRect;var i=this.media,n={width:0,height:0};if(i){var a=i.getBoundingClientRect();n.width=a.width,n.height=a.height,n.width||n.height||(n.width=a.right-a.left||i.width||0,n.height=a.bottom-a.top||i.height||0)}return this.clientRect=n,n},d.isLevelAllowed=function(i,n){return n===void 0&&(n=[]),n.indexOf(i)===-1},d.getMaxLevelByMediaSize=function(i,n,a){if(!i||!i.length)return-1;for(var r,s,l=i.length-1,u=0;u<i.length;u+=1){var c=i[u];if((c.width>=n||c.height>=a)&&(r=c,!(s=i[u+1])||r.width!==s.width||r.height!==s.height)){l=u;break}}return l},o=d,(e=[{key:"mediaWidth",get:function(){return this.getDimensions().width*this.contentScaleFactor}},{key:"mediaHeight",get:function(){return this.getDimensions().height*this.contentScaleFactor}},{key:"contentScaleFactor",get:function(){var i=1;if(!this.hls.config.ignoreDevicePixelRatio)try{i=self.devicePixelRatio}catch{}return i}}])&&Aa(o.prototype,e),Object.defineProperty(o,"prototype",{writable:!1}),d}(),Ra=function(){function d(e){this.hls=void 0,this.isVideoPlaybackQualityAvailable=!1,this.timer=void 0,this.media=null,this.lastTime=void 0,this.lastDroppedFrames=0,this.lastDecodedFrames=0,this.streamController=void 0,this.hls=e,this.registerListeners()}var o=d.prototype;return o.setStreamController=function(e){this.streamController=e},o.registerListeners=function(){this.hls.on(p.Events.MEDIA_ATTACHING,this.onMediaAttaching,this)},o.unregisterListeners=function(){this.hls.off(p.Events.MEDIA_ATTACHING,this.onMediaAttaching)},o.destroy=function(){this.timer&&clearInterval(this.timer),this.unregisterListeners(),this.isVideoPlaybackQualityAvailable=!1,this.media=null},o.onMediaAttaching=function(e,t){var i=this.hls.config;if(i.capLevelOnFPSDrop){var n=t.media instanceof self.HTMLVideoElement?t.media:null;this.media=n,n&&typeof n.getVideoPlaybackQuality=="function"&&(this.isVideoPlaybackQualityAvailable=!0),self.clearInterval(this.timer),this.timer=self.setInterval(this.checkFPSInterval.bind(this),i.fpsDroppedMonitoringPeriod)}},o.checkFPS=function(e,t,i){var n=performance.now();if(t){if(this.lastTime){var a=n-this.lastTime,r=i-this.lastDroppedFrames,s=t-this.lastDecodedFrames,l=1e3*r/a,u=this.hls;if(u.trigger(p.Events.FPS_DROP,{currentDropped:r,currentDecoded:s,totalDroppedFrames:i}),l>0&&r>u.config.fpsDroppedMonitoringThreshold*s){var c=u.currentLevel;k.logger.warn("drop FPS ratio greater than max allowed value for currentLevel: "+c),c>0&&(u.autoLevelCapping===-1||u.autoLevelCapping>=c)&&(c-=1,u.trigger(p.Events.FPS_DROP_LEVEL_CAPPING,{level:c,droppedLevel:u.currentLevel}),u.autoLevelCapping=c,this.streamController.nextLevelSwitch())}}this.lastTime=n,this.lastDroppedFrames=i,this.lastDecodedFrames=t}},o.checkFPSInterval=function(){var e=this.media;if(e)if(this.isVideoPlaybackQualityAvailable){var t=e.getVideoPlaybackQuality();this.checkFPS(e,t.totalVideoFrames,t.droppedVideoFrames)}else this.checkFPS(e,e.webkitDecodedFrameCount,e.webkitDroppedFrameCount)},d}();var $r=N(300);function gn(d){var o=typeof Map=="function"?new Map:void 0;return gn=function(e){if(e===null||(t=e,Function.toString.call(t).indexOf("[native code]")===-1))return e;var t;if(typeof e!="function")throw new TypeError("Super expression must either be null or a function");if(o!==void 0){if(o.has(e))return o.get(e);o.set(e,i)}function i(){return mn(e,arguments,yn(this).constructor)}return i.prototype=Object.create(e.prototype,{constructor:{value:i,enumerable:!1,writable:!0,configurable:!0}}),ki(i,e)},gn(d)}function mn(d,o,e){return mn=Ia()?Reflect.construct.bind():function(t,i,n){var a=[null];a.push.apply(a,i);var r=new(Function.bind.apply(t,a));return n&&ki(r,n.prototype),r},mn.apply(null,arguments)}function Ia(){if(typeof Reflect=="undefined"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function ki(d,o){return ki=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},ki(d,o)}function yn(d){return yn=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(o){return o.__proto__||Object.getPrototypeOf(o)},yn(d)}var qi="[eme]",Bn=function(){function d(e){this.hls=void 0,this.config=void 0,this.media=null,this.keyFormatPromise=null,this.keySystemAccessPromises={},this._requestLicenseFailureCount=0,this.mediaKeySessions=[],this.keyIdToKeySessionPromise={},this.setMediaKeysQueue=d.CDMCleanupPromise?[d.CDMCleanupPromise]:[],this.onMediaEncrypted=this._onMediaEncrypted.bind(this),this.onWaitingForKey=this._onWaitingForKey.bind(this),this.debug=k.logger.debug.bind(k.logger,qi),this.log=k.logger.log.bind(k.logger,qi),this.warn=k.logger.warn.bind(k.logger,qi),this.error=k.logger.error.bind(k.logger,qi),this.hls=e,this.config=e.config,this.registerListeners()}var o=d.prototype;return o.destroy=function(){this.unregisterListeners(),this.onMediaDetached(),this.hls=this.onMediaEncrypted=this.onWaitingForKey=this.keyIdToKeySessionPromise=null},o.registerListeners=function(){this.hls.on(p.Events.MEDIA_ATTACHED,this.onMediaAttached,this),this.hls.on(p.Events.MEDIA_DETACHED,this.onMediaDetached,this),this.hls.on(p.Events.MANIFEST_LOADED,this.onManifestLoaded,this)},o.unregisterListeners=function(){this.hls.off(p.Events.MEDIA_ATTACHED,this.onMediaAttached,this),this.hls.off(p.Events.MEDIA_DETACHED,this.onMediaDetached,this),this.hls.off(p.Events.MANIFEST_LOADED,this.onManifestLoaded,this)},o.getLicenseServerUrl=function(e){var t=this.config,i=t.drmSystems,n=t.widevineLicenseUrl,a=i[e];if(a)return a.licenseUrl;if(e===U.WIDEVINE&&n)return n;throw new Error('no license server URL configured for key-system "'+e+'"')},o.getServerCertificateUrl=function(e){var t=this.config.drmSystems[e];if(t)return t.serverCertificateUrl;this.log('No Server Certificate in config.drmSystems["'+e+'"]')},o.attemptKeySystemAccess=function(e){var t=this,i=this.hls.levels,n=function(s,l,u){return!!s&&u.indexOf(s)===l},a=i.map(function(s){return s.audioCodec}).filter(n),r=i.map(function(s){return s.videoCodec}).filter(n);return a.length+r.length===0&&r.push("avc1.42e01e"),new Promise(function(s,l){(function u(c){var v=c.shift();t.getMediaKeysPromise(v,a,r).then(function(m){return s({keySystem:v,mediaKeys:m})}).catch(function(m){c.length?u(c):l(m instanceof kr?m:new kr({type:w.ErrorTypes.KEY_SYSTEM_ERROR,details:w.ErrorDetails.KEY_SYSTEM_NO_ACCESS,error:m,fatal:!0},m.message))})})(e)})},o.requestMediaKeySystemAccess=function(e,t){var i=this.config.requestMediaKeySystemAccessFunc;if(typeof i!="function"){var n="Configured requestMediaKeySystemAccess is not a function "+i;return ye===null&&self.location.protocol==="http:"&&(n="navigator.requestMediaKeySystemAccess is not available over insecure protocol "+location.protocol),Promise.reject(new Error(n))}return i(e,t)},o.getMediaKeysPromise=function(e,t,i){var n=this,a=function(u,c,v,m){var _;switch(u){case U.FAIRPLAY:_=["cenc","sinf"];break;case U.WIDEVINE:case U.PLAYREADY:_=["cenc"];break;case U.CLEARKEY:_=["cenc","keyids"];break;default:throw new Error("Unknown key-system: "+u)}return function(S,x,I,j){return[{initDataTypes:S,persistentState:j.persistentState||"not-allowed",distinctiveIdentifier:j.distinctiveIdentifier||"not-allowed",sessionTypes:j.sessionTypes||[j.sessionType||"temporary"],audioCapabilities:x.map(function(ae){return{contentType:'audio/mp4; codecs="'+ae+'"',robustness:j.audioRobustness||"",encryptionScheme:j.audioEncryptionScheme||null}}),videoCapabilities:I.map(function(ae){return{contentType:'video/mp4; codecs="'+ae+'"',robustness:j.videoRobustness||"",encryptionScheme:j.videoEncryptionScheme||null}})}]}(_,c,v,m)}(e,t,i,this.config.drmSystemOptions),r=this.keySystemAccessPromises[e],s=r==null?void 0:r.keySystemAccess;if(!s){this.log('Requesting encrypted media "'+e+'" key-system access with config: '+JSON.stringify(a)),s=this.requestMediaKeySystemAccess(e,a);var l=this.keySystemAccessPromises[e]={keySystemAccess:s};return s.catch(function(u){n.log('Failed to obtain access to key-system "'+e+'": '+u)}),s.then(function(u){n.log('Access for key-system "'+u.keySystem+'" obtained');var c=n.fetchServerCertificate(e);return n.log('Create media-keys for "'+e+'"'),l.mediaKeys=u.createMediaKeys().then(function(v){return n.log('Media-keys created for "'+e+'"'),c.then(function(m){return m?n.setMediaKeysServerCertificate(v,e,m):v})}),l.mediaKeys.catch(function(v){n.error('Failed to create media-keys for "'+e+'"}: '+v)}),l.mediaKeys})}return s.then(function(){return r.mediaKeys})},o.createMediaKeySessionContext=function(e){var t=e.decryptdata,i=e.keySystem,n=e.mediaKeys;this.log('Creating key-system session "'+i+'" keyId: '+$r.default.hexDump(t.keyId||[]));var a=n.createSession(),r={decryptdata:t,keySystem:i,mediaKeys:n,mediaKeysSession:a,keyStatus:"status-pending"};return this.mediaKeySessions.push(r),r},o.renewKeySession=function(e){var t=e.decryptdata;if(t.pssh){var i=this.createMediaKeySessionContext(e),n=this.getKeyIdString(t);this.keyIdToKeySessionPromise[n]=this.generateRequestWithPreferredKeySession(i,"cenc",t.pssh,"expired")}else this.warn("Could not renew expired session. Missing pssh initData.");this.removeSession(e)},o.getKeyIdString=function(e){if(!e)throw new Error("Could not read keyId of undefined decryptdata");if(e.keyId===null)throw new Error("keyId is null");return $r.default.hexDump(e.keyId)},o.updateKeySession=function(e,t){var i,n=e.mediaKeysSession;return this.log('Updating key-session "'+n.sessionId+'" for keyID '+$r.default.hexDump(((i=e.decryptdata)===null||i===void 0?void 0:i.keyId)||[])+`
|
|
31
|
+
} (data length: `+(t&&t.byteLength)+")"),n.update(t)},o.selectKeySystemFormat=function(e){var t=Object.keys(e.levelkeys||{});return this.keyFormatPromise||(this.log("Selecting key-system from fragment (sn: "+e.sn+" "+e.type+": "+e.level+") key formats "+t.join(", ")),this.keyFormatPromise=this.getKeyFormatPromise(t)),this.keyFormatPromise},o.getKeyFormatPromise=function(e){var t=this;return new Promise(function(i,n){var a=oe(t.config),r=e.map(M).filter(function(s){return!!s&&a.indexOf(s)!==-1});return t.getKeySystemSelectionPromise(r).then(function(s){var l=s.keySystem,u=L(l);u?i(u):n(new Error('Unable to find format for key-system "'+l+'"'))}).catch(n)})},o.loadKey=function(e){var t=this,i=e.keyInfo.decryptdata,n=this.getKeyIdString(i),a="(keyId: "+n+' format: "'+i.keyFormat+'" method: '+i.method+" uri: "+i.uri+")";this.log("Starting session for key "+a);var r=this.keyIdToKeySessionPromise[n];return r||(r=this.keyIdToKeySessionPromise[n]=this.getKeySystemForKeyPromise(i).then(function(s){var l=s.keySystem,u=s.mediaKeys;return t.throwIfDestroyed(),t.log("Handle encrypted media sn: "+e.frag.sn+" "+e.frag.type+": "+e.frag.level+" using key "+a),t.attemptSetMediaKeys(l,u).then(function(){t.throwIfDestroyed();var c=t.createMediaKeySessionContext({keySystem:l,mediaKeys:u,decryptdata:i});return t.generateRequestWithPreferredKeySession(c,"cenc",i.pssh,"playlist-key")})})).catch(function(s){return t.handleError(s)}),r},o.throwIfDestroyed=function(e){if(e===void 0&&(e="Invalid state"),!this.hls)throw new Error("invalid state")},o.handleError=function(e){this.hls&&(this.error(e.message),e instanceof kr?this.hls.trigger(p.Events.ERROR,e.data):this.hls.trigger(p.Events.ERROR,{type:w.ErrorTypes.KEY_SYSTEM_ERROR,details:w.ErrorDetails.KEY_SYSTEM_NO_KEYS,error:e,fatal:!0}))},o.getKeySystemForKeyPromise=function(e){var t=this.getKeyIdString(e),i=this.keyIdToKeySessionPromise[t];if(!i){var n=M(e.keyFormat),a=n?[n]:oe(this.config);return this.attemptKeySystemAccess(a)}return i},o.getKeySystemSelectionPromise=function(e){if(e.length||(e=oe(this.config)),e.length===0)throw new kr({type:w.ErrorTypes.KEY_SYSTEM_ERROR,details:w.ErrorDetails.KEY_SYSTEM_NO_CONFIGURED_LICENSE,fatal:!0},"Missing key-system license configuration options "+JSON.stringify({drmSystems:this.config.drmSystems}));return this.attemptKeySystemAccess(e)},o._onMediaEncrypted=function(e){var t=this,i=e.initDataType,n=e.initData;if(this.debug('"'+e.type+'" event: init data type: "'+i+'"'),n!==null){var a,r;if(i==="sinf"&&this.config.drmSystems[U.FAIRPLAY]){var s=(0,W.bin2str)(new Uint8Array(n));try{var l=K(JSON.parse(s).sinf),u=(0,W.parseSinf)(new Uint8Array(l));if(!u)return;a=u.subarray(8,24),r=U.FAIRPLAY}catch{return void this.warn('Failed to parse sinf "encrypted" event message initData')}}else{var c=(0,W.parsePssh)(n);if(c===null)return;c.version===0&&c.systemId===ke.WIDEVINE&&c.data&&(a=c.data.subarray(8,24)),r=function(ae){if(ae===ke.WIDEVINE)return U.WIDEVINE}(c.systemId)}if(r&&a){for(var v=$r.default.hexDump(a),m=this.keyIdToKeySessionPromise,_=this.mediaKeySessions,S=m[v],x=function(ae){var me=_[ae],de=me.decryptdata;if(de.pssh||!de.keyId)return"continue";var _e=$r.default.hexDump(de.keyId);return v===_e||de.uri.replace(/-/g,"").indexOf(v)!==-1?(S=m[_e],delete m[_e],de.pssh=new Uint8Array(n),de.keyId=a,S=m[v]=S.then(function(){return t.generateRequestWithPreferredKeySession(me,i,n,"encrypted-event-key-match")}),"break"):void 0},I=0;I<_.length;I++){var j=x(I);if(j!=="continue"&&j==="break")break}S||(S=m[v]=this.getKeySystemSelectionPromise([r]).then(function(ae){var me,de=ae.keySystem,_e=ae.mediaKeys;t.throwIfDestroyed();var Ke=new we("ISO-23001-7",v,(me=L(de))!=null?me:"");return Ke.pssh=new Uint8Array(n),Ke.keyId=a,t.attemptSetMediaKeys(de,_e).then(function(){t.throwIfDestroyed();var ze=t.createMediaKeySessionContext({decryptdata:Ke,keySystem:de,mediaKeys:_e});return t.generateRequestWithPreferredKeySession(ze,i,n,"encrypted-event-no-match")})})),S.catch(function(ae){return t.handleError(ae)})}}},o._onWaitingForKey=function(e){this.log('"'+e.type+'" event')},o.attemptSetMediaKeys=function(e,t){var i=this,n=this.setMediaKeysQueue.slice();this.log('Setting media-keys for "'+e+'"');var a=Promise.all(n).then(function(){if(!i.media)throw new Error("Attempted to set mediaKeys without media element attached");return i.media.setMediaKeys(t)});return this.setMediaKeysQueue.push(a),a.then(function(){i.log('Media-keys set for "'+e+'"'),n.push(a),i.setMediaKeysQueue=i.setMediaKeysQueue.filter(function(r){return n.indexOf(r)===-1})})},o.generateRequestWithPreferredKeySession=function(e,t,i,n){var a,r,s=this,l=(a=this.config.drmSystems)===null||a===void 0||(r=a[e.keySystem])===null||r===void 0?void 0:r.generateRequest;if(l)try{var u=l.call(this.hls,t,i,e);if(!u)throw new Error("Invalid response from configured generateRequest filter");t=u.initDataType,i=e.decryptdata.pssh=u.initData?new Uint8Array(u.initData):null}catch(S){var c;if(this.warn(S.message),(c=this.hls)!==null&&c!==void 0&&c.config.debug)throw S}if(i===null)return this.log('Skipping key-session request for "'+n+'" (no initData)'),Promise.resolve(e);var v=this.getKeyIdString(e.decryptdata);this.log('Generating key-session request for "'+n+'": '+v+" (init data type: "+t+" length: "+(i?i.byteLength:null)+")");var m=new(Xr());e.mediaKeysSession.onmessage=function(S){var x=e.mediaKeysSession;if(x){var I=S.messageType,j=S.message;s.log('"'+I+'" message event for session "'+x.sessionId+'" message size: '+j.byteLength),I==="license-request"||I==="license-renewal"?s.renewLicense(e,j).catch(function(ae){s.handleError(ae),m.emit("error",ae)}):I==="license-release"?e.keySystem===U.FAIRPLAY&&(s.updateKeySession(e,E("acknowledged")),s.removeSession(e)):s.warn('unhandled media key message type "'+I+'"')}else m.emit("error",new Error("invalid state"))},e.mediaKeysSession.onkeystatuseschange=function(S){if(e.mediaKeysSession){s.onKeyStatusChange(e);var x=e.keyStatus;m.emit("keyStatus",x),x==="expired"&&(s.warn(e.keySystem+" expired for key "+v),s.renewKeySession(e))}else m.emit("error",new Error("invalid state"))};var _=new Promise(function(S,x){m.on("error",x),m.on("keyStatus",function(I){I.startsWith("usable")?S():I==="output-restricted"?x(new kr({type:w.ErrorTypes.KEY_SYSTEM_ERROR,details:w.ErrorDetails.KEY_SYSTEM_STATUS_OUTPUT_RESTRICTED,fatal:!1},"HDCP level output restricted")):I==="internal-error"?x(new kr({type:w.ErrorTypes.KEY_SYSTEM_ERROR,details:w.ErrorDetails.KEY_SYSTEM_STATUS_INTERNAL_ERROR,fatal:!0},'key status changed to "'+I+'"')):I==="expired"?x(new Error("key expired while generating request")):s.warn('unhandled key status change "'+I+'"')})});return e.mediaKeysSession.generateRequest(t,i).then(function(){var S;s.log('Request generated for key-session "'+((S=e.mediaKeysSession)===null||S===void 0?void 0:S.sessionId)+'" keyId: '+v)}).catch(function(S){throw new kr({type:w.ErrorTypes.KEY_SYSTEM_ERROR,details:w.ErrorDetails.KEY_SYSTEM_NO_SESSION,error:S,fatal:!1},"Error generating key-session request: "+S)}).then(function(){return _}).catch(function(S){throw m.removeAllListeners(),s.removeSession(e),S}).then(function(){return m.removeAllListeners(),e})},o.onKeyStatusChange=function(e){var t=this;e.mediaKeysSession.keyStatuses.forEach(function(i,n){t.log('key status change "'+i+'" for keyStatuses keyId: '+$r.default.hexDump("buffer"in n?new Uint8Array(n.buffer,n.byteOffset,n.byteLength):new Uint8Array(n))+" session keyId: "+$r.default.hexDump(new Uint8Array(e.decryptdata.keyId||[]))+" uri: "+e.decryptdata.uri),e.keyStatus=i})},o.fetchServerCertificate=function(e){var t=this;return new Promise(function(i,n){var a=t.getServerCertificateUrl(e);if(!a)return i();t.log('Fetching serverCertificate for "'+e+'"');var r=new XMLHttpRequest;r.open("GET",a,!0),r.responseType="arraybuffer",r.onreadystatechange=function(){r.readyState===XMLHttpRequest.DONE&&(r.status===200?i(r.response):n(new kr({type:w.ErrorTypes.KEY_SYSTEM_ERROR,details:w.ErrorDetails.KEY_SYSTEM_SERVER_CERTIFICATE_REQUEST_FAILED,fatal:!0,networkDetails:r},'"'+e+'" certificate request XHR failed ('+a+"). Status: "+r.status+" ("+r.statusText+")")))},r.send()})},o.setMediaKeysServerCertificate=function(e,t,i){var n=this;return new Promise(function(a,r){e.setServerCertificate(i).then(function(s){n.log("setServerCertificate "+(s?"success":"not supported by CDM")+" ("+(i==null?void 0:i.byteLength)+') on "'+t+'"'),a(e)}).catch(function(s){r(new kr({type:w.ErrorTypes.KEY_SYSTEM_ERROR,details:w.ErrorDetails.KEY_SYSTEM_SERVER_CERTIFICATE_UPDATE_FAILED,error:s,fatal:!0},s.message))})})},o.renewLicense=function(e,t){var i=this;return this.requestLicense(e,new Uint8Array(t)).then(function(n){return i.updateKeySession(e,new Uint8Array(n)).catch(function(a){throw new kr({type:w.ErrorTypes.KEY_SYSTEM_ERROR,details:w.ErrorDetails.KEY_SYSTEM_SESSION_UPDATE_FAILED,error:a,fatal:!0},a.message)})})},o.setupLicenseXHR=function(e,t,i,n){var a=this,r=this.config.licenseXhrSetup;return r?Promise.resolve().then(function(){if(!i.decryptdata)throw new Error("Key removed");return r.call(a.hls,e,t,i,n)}).catch(function(s){if(!i.decryptdata)throw s;return e.open("POST",t,!0),r.call(a.hls,e,t,i,n)}).then(function(s){return e.readyState||e.open("POST",t,!0),{xhr:e,licenseChallenge:s||n}}):(e.open("POST",t,!0),Promise.resolve({xhr:e,licenseChallenge:n}))},o.requestLicense=function(e,t){var i=this;return new Promise(function(n,a){var r=i.getLicenseServerUrl(e.keySystem);i.log("Sending license request to URL: "+r);var s=new XMLHttpRequest;s.responseType="arraybuffer",s.onreadystatechange=function(){if(!i.hls||!e.mediaKeysSession)return a(new Error("invalid state"));if(s.readyState===4)if(s.status===200){i._requestLicenseFailureCount=0;var l=s.response;i.log("License received "+(l instanceof ArrayBuffer?l.byteLength:l));var u=i.config.licenseResponseCallback;if(u)try{l=u.call(i.hls,s,r,e)}catch(v){i.error(v)}n(l)}else if(i._requestLicenseFailureCount++,i._requestLicenseFailureCount>3||s.status>=400&&s.status<500)a(new kr({type:w.ErrorTypes.KEY_SYSTEM_ERROR,details:w.ErrorDetails.KEY_SYSTEM_LICENSE_REQUEST_FAILED,fatal:!0,networkDetails:s},"License Request XHR failed ("+r+"). Status: "+s.status+" ("+s.statusText+")"));else{var c=3-i._requestLicenseFailureCount+1;i.warn("Retrying license request, "+c+" attempts left"),i.requestLicense(e,t).then(n,a)}},e.licenseXhr&&e.licenseXhr.readyState!==XMLHttpRequest.DONE&&e.licenseXhr.abort(),e.licenseXhr=s,i.setupLicenseXHR(s,r,e,t).then(function(l){var u=l.xhr,c=l.licenseChallenge;u.send(c)})})},o.onMediaAttached=function(e,t){if(this.config.emeEnabled){var i=t.media;this.media=i,i.addEventListener("encrypted",this.onMediaEncrypted),i.addEventListener("waitingforkey",this.onWaitingForKey)}},o.onMediaDetached=function(){var e=this,t=this.media,i=this.mediaKeySessions;t&&(t.removeEventListener("encrypted",this.onMediaEncrypted),t.removeEventListener("waitingforkey",this.onWaitingForKey),this.media=null),this._requestLicenseFailureCount=0,this.setMediaKeysQueue=[],this.mediaKeySessions=[],this.keyIdToKeySessionPromise={},we.clearKeyUriToKeyIdMap();var n=i.length;d.CDMCleanupPromise=Promise.all(i.map(function(a){return e.removeSession(a)}).concat(t==null?void 0:t.setMediaKeys(null).catch(function(a){e.log("Could not clear media keys: "+a+". media.src: "+(t==null?void 0:t.src))}))).then(function(){n&&(e.log("finished closing key sessions and clearing media keys"),i.length=0)}).catch(function(a){e.log("Could not close sessions and clear media keys: "+a+". media.src: "+(t==null?void 0:t.src))})},o.onManifestLoaded=function(e,t){var i=t.sessionKeys;if(i&&this.config.emeEnabled&&!this.keyFormatPromise){var n=i.reduce(function(a,r){return a.indexOf(r.keyFormat)===-1&&a.push(r.keyFormat),a},[]);this.log("Selecting key-system from session-keys "+n.join(", ")),this.keyFormatPromise=this.getKeyFormatPromise(n)}},o.removeSession=function(e){var t=this,i=e.mediaKeysSession,n=e.licenseXhr;if(i){this.log("Remove licenses and keys and close session "+i.sessionId),i.onmessage=null,i.onkeystatuseschange=null,n&&n.readyState!==XMLHttpRequest.DONE&&n.abort(),e.mediaKeysSession=e.decryptdata=e.licenseXhr=void 0;var a=this.mediaKeySessions.indexOf(e);return a>-1&&this.mediaKeySessions.splice(a,1),i.remove().catch(function(r){t.log("Could not remove session: "+r)}).then(function(){return i.close()}).catch(function(r){t.log("Could not close session: "+r)})}},d}();Bn.CDMCleanupPromise=void 0;var kr=function(d){var o,e;function t(i,n){var a;return(a=d.call(this,n)||this).data=void 0,a.data=i,i.err=i.error,a}return e=d,(o=t).prototype=Object.create(e.prototype),o.prototype.constructor=o,ki(o,e),t}(gn(Error));let Pa=Bn;var or,En,Hn;function Gn(d,o){for(var e=0;e<o.length;e++){var t=o[e];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(d,typeof(i=function(n,a){if(typeof n!="object"||n===null)return n;var r=n[Symbol.toPrimitive];if(r!==void 0){var s=r.call(n,a);if(typeof s!="object")return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(t.key,"string"))=="symbol"?i:String(i),t)}var i}function jn(d,o,e){return o&&Gn(d.prototype,o),e&&Gn(d,e),Object.defineProperty(d,"prototype",{writable:!1}),d}function Kn(d,o){var e=typeof Symbol!="undefined"&&d[Symbol.iterator]||d["@@iterator"];if(e)return(e=e.call(d)).next.bind(e);if(Array.isArray(d)||(e=function(i,n){if(i){if(typeof i=="string")return qn(i,n);var a=Object.prototype.toString.call(i).slice(8,-1);return a==="Object"&&i.constructor&&(a=i.constructor.name),a==="Map"||a==="Set"?Array.from(i):a==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?qn(i,n):void 0}}(d))||o&&d&&typeof d.length=="number"){e&&(d=e);var t=0;return function(){return t>=d.length?{done:!0}:{done:!1,value:d[t++]}}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
32
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function qn(d,o){(o==null||o>d.length)&&(o=d.length);for(var e=0,t=new Array(o);e<o;e++)t[e]=d[e];return t}function Vi(){return Vi=Object.assign?Object.assign.bind():function(d){for(var o=1;o<arguments.length;o++){var e=arguments[o];for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(d[t]=e[t])}return d},Vi.apply(this,arguments)}(function(d){d.MANIFEST="m",d.AUDIO="a",d.VIDEO="v",d.MUXED="av",d.INIT="i",d.CAPTION="c",d.TIMED_TEXT="tt",d.KEY="k",d.OTHER="o"})(or||(or={})),function(d){d.DASH="d",d.HLS="h",d.SMOOTH="s",d.OTHER="o"}(En||(En={})),function(d){d.VOD="v",d.LIVE="l"}(Hn||(Hn={}));var Ca=function(){function d(e){var t=this;this.hls=void 0,this.config=void 0,this.media=void 0,this.sid=void 0,this.cid=void 0,this.useHeaders=!1,this.initialized=!1,this.starved=!1,this.buffering=!0,this.audioBuffer=void 0,this.videoBuffer=void 0,this.onWaiting=function(){t.initialized&&(t.starved=!0),t.buffering=!0},this.onPlaying=function(){t.initialized||(t.initialized=!0),t.buffering=!1},this.applyPlaylistData=function(a){try{t.apply(a,{ot:or.MANIFEST,su:!t.initialized})}catch(r){k.logger.warn("Could not generate manifest CMCD data.",r)}},this.applyFragmentData=function(a){try{var r=a.frag,s=t.hls.levels[r.level],l=t.getObjectType(r),u={d:1e3*r.duration,ot:l};l!==or.VIDEO&&l!==or.AUDIO&&l!=or.MUXED||(u.br=s.bitrate/1e3,u.tb=t.getTopBandwidth(l)/1e3,u.bl=t.getBufferLength(l)),t.apply(a,u)}catch(c){k.logger.warn("Could not generate segment CMCD data.",c)}},this.hls=e;var i=this.config=e.config,n=i.cmcd;n!=null&&(i.pLoader=this.createPlaylistLoader(),i.fLoader=this.createFragmentLoader(),this.sid=n.sessionId||d.uuid(),this.cid=n.contentId,this.useHeaders=n.useHeaders===!0,this.registerListeners())}var o=d.prototype;return o.registerListeners=function(){var e=this.hls;e.on(p.Events.MEDIA_ATTACHED,this.onMediaAttached,this),e.on(p.Events.MEDIA_DETACHED,this.onMediaDetached,this),e.on(p.Events.BUFFER_CREATED,this.onBufferCreated,this)},o.unregisterListeners=function(){var e=this.hls;e.off(p.Events.MEDIA_ATTACHED,this.onMediaAttached,this),e.off(p.Events.MEDIA_DETACHED,this.onMediaDetached,this),e.off(p.Events.BUFFER_CREATED,this.onBufferCreated,this),this.onMediaDetached()},o.destroy=function(){this.unregisterListeners(),this.hls=this.config=this.audioBuffer=this.videoBuffer=null},o.onMediaAttached=function(e,t){this.media=t.media,this.media.addEventListener("waiting",this.onWaiting),this.media.addEventListener("playing",this.onPlaying)},o.onMediaDetached=function(){this.media&&(this.media.removeEventListener("waiting",this.onWaiting),this.media.removeEventListener("playing",this.onPlaying),this.media=null)},o.onBufferCreated=function(e,t){var i,n;this.audioBuffer=(i=t.tracks.audio)===null||i===void 0?void 0:i.buffer,this.videoBuffer=(n=t.tracks.video)===null||n===void 0?void 0:n.buffer},o.createData=function(){var e;return{v:1,sf:En.HLS,sid:this.sid,cid:this.cid,pr:(e=this.media)===null||e===void 0?void 0:e.playbackRate,mtp:this.hls.bandwidthEstimate/1e3}},o.apply=function(e,t){t===void 0&&(t={}),Vi(t,this.createData());var i=t.ot===or.INIT||t.ot===or.VIDEO||t.ot===or.MUXED;if(this.starved&&i&&(t.bs=!0,t.su=!0,this.starved=!1),t.su==null&&(t.su=this.buffering),this.useHeaders){var n=d.toHeaders(t);if(!Object.keys(n).length)return;e.headers||(e.headers={}),Vi(e.headers,n)}else{var a=d.toQuery(t);if(!a)return;e.url=d.appendQueryToUri(e.url,a)}},o.getObjectType=function(e){var t=e.type;return t==="subtitle"?or.TIMED_TEXT:e.sn==="initSegment"?or.INIT:t==="audio"?or.AUDIO:t==="main"?this.hls.audioTracks.length?or.VIDEO:or.MUXED:void 0},o.getTopBandwidth=function(e){var t,i=0,n=this.hls;if(e===or.AUDIO)t=n.audioTracks;else{var a=n.maxAutoLevel,r=a>-1?a+1:n.levels.length;t=n.levels.slice(0,r)}for(var s,l=Kn(t);!(s=l()).done;){var u=s.value;u.bitrate>i&&(i=u.bitrate)}return i>0?i:NaN},o.getBufferLength=function(e){var t=this.hls.media,i=e===or.AUDIO?this.audioBuffer:this.videoBuffer;return i&&t?1e3*Mt.bufferInfo(i,t.currentTime,this.config.maxBufferHole).len:NaN},o.createPlaylistLoader=function(){var e=this.config.pLoader,t=this.applyPlaylistData,i=e||this.config.loader;return function(){function n(r){this.loader=void 0,this.loader=new i(r)}var a=n.prototype;return a.destroy=function(){this.loader.destroy()},a.abort=function(){this.loader.abort()},a.load=function(r,s,l){t(r),this.loader.load(r,s,l)},jn(n,[{key:"stats",get:function(){return this.loader.stats}},{key:"context",get:function(){return this.loader.context}}]),n}()},o.createFragmentLoader=function(){var e=this.config.fLoader,t=this.applyFragmentData,i=e||this.config.loader;return function(){function n(r){this.loader=void 0,this.loader=new i(r)}var a=n.prototype;return a.destroy=function(){this.loader.destroy()},a.abort=function(){this.loader.abort()},a.load=function(r,s,l){t(r),this.loader.load(r,s,l)},jn(n,[{key:"stats",get:function(){return this.loader.stats}},{key:"context",get:function(){return this.loader.context}}]),n}()},d.uuid=function(){var e=URL.createObjectURL(new Blob),t=e.toString();return URL.revokeObjectURL(e),t.slice(t.lastIndexOf("/")+1)},d.serialize=function(e){for(var t,i=[],n=function(S){return!Number.isNaN(S)&&S!=null&&S!==""&&S!==!1},a=function(S){return Math.round(S)},r=function(S){return 100*a(S/100)},s={br:a,d:a,bl:r,dl:r,mtp:r,nor:function(S){return encodeURIComponent(S)},rtp:r,tb:a},l=Kn(Object.keys(e||{}).sort());!(t=l()).done;){var u=t.value,c=e[u];if(n(c)&&!(u==="v"&&c===1||u=="pr"&&c===1)){var v=s[u];v&&(c=v(c));var m,_=typeof c;m=u==="ot"||u==="sf"||u==="st"?u+"="+c:_==="boolean"?u:_==="number"?u+"="+c:u+"="+JSON.stringify(c),i.push(m)}}return i.join(",")},d.toHeaders=function(e){for(var t={},i=["Object","Request","Session","Status"],n=[{},{},{},{}],a={br:0,d:0,ot:0,tb:0,bl:1,dl:1,mtp:1,nor:1,nrr:1,su:1,cid:2,pr:2,sf:2,sid:2,st:2,v:2,bs:3,rtp:3},r=0,s=Object.keys(e);r<s.length;r++){var l=s[r];n[a[l]!=null?a[l]:1][l]=e[l]}for(var u=0;u<n.length;u++){var c=d.serialize(n[u]);c&&(t["CMCD-"+i[u]]=c)}return t},d.toQuery=function(e){return"CMCD="+encodeURIComponent(d.serialize(e))},d.appendQueryToUri=function(e,t){if(!t)return e;var i=e.includes("?")?"&":"?";return""+e+i+t},d}(),Vn=N(408),xa=/^age:\s*[\d.]+\s*$/m;let Yn=function(){function d(e){this.xhrSetup=void 0,this.requestTimeout=void 0,this.retryTimeout=void 0,this.retryDelay=void 0,this.config=null,this.callbacks=null,this.context=void 0,this.loader=null,this.stats=void 0,this.xhrSetup=e?e.xhrSetup:null,this.stats=new Vn.LoadStats,this.retryDelay=0}var o=d.prototype;return o.destroy=function(){this.callbacks=null,this.abortInternal(),this.loader=null,this.config=null},o.abortInternal=function(){var e=this.loader;self.clearTimeout(this.requestTimeout),self.clearTimeout(this.retryTimeout),e&&(e.onreadystatechange=null,e.onprogress=null,e.readyState!==4&&(this.stats.aborted=!0,e.abort()))},o.abort=function(){var e;this.abortInternal(),(e=this.callbacks)!==null&&e!==void 0&&e.onAbort&&this.callbacks.onAbort(this.stats,this.context,this.loader)},o.load=function(e,t,i){if(this.stats.loading.start)throw new Error("Loader can only be used once.");this.stats.loading.start=self.performance.now(),this.context=e,this.config=t,this.callbacks=i,this.retryDelay=t.retryDelay,this.loadInternal()},o.loadInternal=function(){var e=this.config,t=this.context;if(e){var i=this.loader=new self.XMLHttpRequest,n=this.stats;n.loading.first=0,n.loaded=0;var a=this.xhrSetup;try{if(a)try{a(i,t.url)}catch{i.open("GET",t.url,!0),a(i,t.url)}i.readyState||i.open("GET",t.url,!0);var r=this.context.headers;if(r)for(var s in r)i.setRequestHeader(s,r[s])}catch(l){return void this.callbacks.onError({code:i.status,text:l.message},t,i)}t.rangeEnd&&i.setRequestHeader("Range","bytes="+t.rangeStart+"-"+(t.rangeEnd-1)),i.onreadystatechange=this.readystatechange.bind(this),i.onprogress=this.loadprogress.bind(this),i.responseType=t.responseType,self.clearTimeout(this.requestTimeout),this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),e.timeout),i.send()}},o.readystatechange=function(){var e=this.context,t=this.loader,i=this.stats;if(e&&t){var n=t.readyState,a=this.config;if(!i.aborted&&n>=2)if(self.clearTimeout(this.requestTimeout),i.loading.first===0&&(i.loading.first=Math.max(self.performance.now(),i.loading.start)),n===4){t.onreadystatechange=null,t.onprogress=null;var r=t.status,s=t.responseType==="arraybuffer";if(r>=200&&r<300&&(s&&t.response||t.responseText!==null)){var l,u;if(i.loading.end=Math.max(self.performance.now(),i.loading.first),u=s?(l=t.response).byteLength:(l=t.responseText).length,i.loaded=i.total=u,!this.callbacks)return;var c=this.callbacks.onProgress;if(c&&c(i,e,l,t),!this.callbacks)return;var v={url:t.responseURL,data:l};this.callbacks.onSuccess(v,i,e,t)}else i.retry>=a.maxRetry||r>=400&&r<499?(k.logger.error(r+" while loading "+e.url),this.callbacks.onError({code:r,text:t.statusText},e,t)):(k.logger.warn(r+" while loading "+e.url+", retrying in "+this.retryDelay+"..."),this.abortInternal(),this.loader=null,self.clearTimeout(this.retryTimeout),this.retryTimeout=self.setTimeout(this.loadInternal.bind(this),this.retryDelay),this.retryDelay=Math.min(2*this.retryDelay,a.maxRetryDelay),i.retry++)}else self.clearTimeout(this.requestTimeout),this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),a.timeout)}},o.loadtimeout=function(){k.logger.warn("timeout while loading "+this.context.url);var e=this.callbacks;e&&(this.abortInternal(),e.onTimeout(this.stats,this.context,this.loader))},o.loadprogress=function(e){var t=this.stats;t.loaded=e.loaded,e.lengthComputable&&(t.total=e.total)},o.getCacheAge=function(){var e=null;if(this.loader&&xa.test(this.loader.getAllResponseHeaders())){var t=this.loader.getResponseHeader("age");e=t?parseFloat(t):null}return e},d}();function Tn(d){var o=typeof Map=="function"?new Map:void 0;return Tn=function(e){if(e===null||(t=e,Function.toString.call(t).indexOf("[native code]")===-1))return e;var t;if(typeof e!="function")throw new TypeError("Super expression must either be null or a function");if(o!==void 0){if(o.has(e))return o.get(e);o.set(e,i)}function i(){return bn(e,arguments,_n(this).constructor)}return i.prototype=Object.create(e.prototype,{constructor:{value:i,enumerable:!1,writable:!0,configurable:!0}}),Li(i,e)},Tn(d)}function bn(d,o,e){return bn=Oa()?Reflect.construct.bind():function(t,i,n){var a=[null];a.push.apply(a,i);var r=new(Function.bind.apply(t,a));return n&&Li(r,n.prototype),r},bn.apply(null,arguments)}function Oa(){if(typeof Reflect=="undefined"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function Li(d,o){return Li=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Li(d,o)}function _n(d){return _n=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(o){return o.__proto__||Object.getPrototypeOf(o)},_n(d)}function Sn(){return Sn=Object.assign?Object.assign.bind():function(d){for(var o=1;o<arguments.length;o++){var e=arguments[o];for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(d[t]=e[t])}return d},Sn.apply(this,arguments)}var Ma=function(){function d(e){this.fetchSetup=void 0,this.requestTimeout=void 0,this.request=void 0,this.response=void 0,this.controller=void 0,this.context=void 0,this.config=null,this.callbacks=null,this.stats=void 0,this.loader=null,this.fetchSetup=e.fetchSetup||Fa,this.controller=new self.AbortController,this.stats=new Vn.LoadStats}var o=d.prototype;return o.destroy=function(){this.loader=this.callbacks=null,this.abortInternal()},o.abortInternal=function(){var e=this.response;e&&e.ok||(this.stats.aborted=!0,this.controller.abort())},o.abort=function(){var e;this.abortInternal(),(e=this.callbacks)!==null&&e!==void 0&&e.onAbort&&this.callbacks.onAbort(this.stats,this.context,this.response)},o.load=function(e,t,i){var n=this,a=this.stats;if(a.loading.start)throw new Error("Loader can only be used once.");a.loading.start=self.performance.now();var r=function(c,v){var m={method:"GET",mode:"cors",credentials:"same-origin",signal:v,headers:new self.Headers(Sn({},c.headers))};return c.rangeEnd&&m.headers.set("Range","bytes="+c.rangeStart+"-"+String(c.rangeEnd-1)),m}(e,this.controller.signal),s=i.onProgress,l=e.responseType==="arraybuffer",u=l?"byteLength":"length";this.context=e,this.config=t,this.callbacks=i,this.request=this.fetchSetup(e,r),self.clearTimeout(this.requestTimeout),this.requestTimeout=self.setTimeout(function(){n.abortInternal(),i.onTimeout(a,e,n.response)},t.timeout),self.fetch(this.request).then(function(c){if(n.response=n.loader=c,!c.ok){var v=c.status,m=c.statusText;throw new Na(m||"fetch, bad network response",v,c)}return a.loading.first=Math.max(self.performance.now(),a.loading.start),a.total=parseInt(c.headers.get("Content-Length")||"0"),s&&(0,R.isFiniteNumber)(t.highWaterMark)?n.loadProgressively(c,a,e,t.highWaterMark,s):l?c.arrayBuffer():c.text()}).then(function(c){var v=n.response;self.clearTimeout(n.requestTimeout),a.loading.end=Math.max(self.performance.now(),a.loading.first);var m=c[u];m&&(a.loaded=a.total=m);var _={url:v.url,data:c};s&&!(0,R.isFiniteNumber)(t.highWaterMark)&&s(a,e,c,v),i.onSuccess(_,a,e,v)}).catch(function(c){if(self.clearTimeout(n.requestTimeout),!a.aborted){var v=c&&c.code||0,m=c?c.message:null;i.onError({code:v,text:m},e,c?c.details:null)}})},o.getCacheAge=function(){var e=null;if(this.response){var t=this.response.headers.get("age");e=t?parseFloat(t):null}return e},o.loadProgressively=function(e,t,i,n,a){n===void 0&&(n=0);var r=new Hi,s=e.body.getReader();return function l(){return s.read().then(function(u){if(u.done)return r.dataLength&&a(t,i,r.flush(),e),Promise.resolve(new ArrayBuffer(0));var c=u.value,v=c.length;return t.loaded+=v,v<n||r.dataLength?(r.push(c),r.dataLength>=n&&a(t,i,r.flush(),e)):a(t,i,c,e),l()}).catch(function(){return Promise.reject()})}()},d}();function Fa(d,o){return new self.Request(d.url,o)}var Na=function(d){var o,e;function t(i,n,a){var r;return(r=d.call(this,i)||this).code=void 0,r.details=void 0,r.code=n,r.details=a,r}return e=d,(o=t).prototype=Object.create(e.prototype),o.prototype.constructor=o,Li(o,e),t}(Tn(Error));let Wn=Ma;var Ua=/\s/;function kn(){return kn=Object.assign?Object.assign.bind():function(d){for(var o=1;o<arguments.length;o++){var e=arguments[o];for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(d[t]=e[t])}return d},kn.apply(this,arguments)}function Xn(d,o){var e=Object.keys(d);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(d);o&&(t=t.filter(function(i){return Object.getOwnPropertyDescriptor(d,i).enumerable})),e.push.apply(e,t)}return e}function zn(d){for(var o=1;o<arguments.length;o++){var e=arguments[o]!=null?arguments[o]:{};o%2?Xn(Object(e),!0).forEach(function(t){Ba(d,t,e[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(d,Object.getOwnPropertyDescriptors(e)):Xn(Object(e)).forEach(function(t){Object.defineProperty(d,t,Object.getOwnPropertyDescriptor(e,t))})}return d}function Ba(d,o,e){return(o=function(t){var i=function(n,a){if(typeof n!="object"||n===null)return n;var r=n[Symbol.toPrimitive];if(r!==void 0){var s=r.call(n,a);if(typeof s!="object")return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(t,"string");return typeof i=="symbol"?i:String(i)}(o))in d?Object.defineProperty(d,o,{value:e,enumerable:!0,configurable:!0,writable:!0}):d[o]=e,d}var Ha=zn(zn({autoStartLoad:!0,startPosition:-1,defaultAudioCodec:void 0,debug:!1,capLevelOnFPSDrop:!1,capLevelToPlayerSize:!1,ignoreDevicePixelRatio:!1,initialLiveManifestSize:1,maxBufferLength:30,backBufferLength:1/0,maxBufferSize:6e7,maxBufferHole:.1,highBufferWatchdogPeriod:2,nudgeOffset:.1,nudgeMaxRetry:3,maxFragLookUpTolerance:.25,liveSyncDurationCount:3,liveMaxLatencyDurationCount:1/0,liveSyncDuration:void 0,liveMaxLatencyDuration:void 0,maxLiveSyncPlaybackRate:1,liveDurationInfinity:!1,liveBackBufferLength:null,maxMaxBufferLength:600,enableWorker:!0,enableSoftwareAES:!0,manifestLoadingTimeOut:1e4,manifestLoadingMaxRetry:1,manifestLoadingRetryDelay:1e3,manifestLoadingMaxRetryTimeout:64e3,startLevel:void 0,levelLoadingTimeOut:1e4,levelLoadingMaxRetry:4,levelLoadingRetryDelay:1e3,levelLoadingMaxRetryTimeout:64e3,fragLoadingTimeOut:2e4,fragLoadingMaxRetry:6,fragLoadingRetryDelay:1e3,fragLoadingMaxRetryTimeout:64e3,startFragPrefetch:!1,fpsDroppedMonitoringPeriod:5e3,fpsDroppedMonitoringThreshold:.2,appendErrorMaxRetry:3,loader:Yn,fLoader:void 0,pLoader:void 0,xhrSetup:void 0,licenseXhrSetup:void 0,licenseResponseCallback:void 0,abrController:an,bufferController:hn,capLevelController:Da,fpsController:Ra,stretchShortVideoTrack:!1,maxAudioFramesDrift:1,forceKeyFrameOnDiscontinuity:!0,abrEwmaFastLive:3,abrEwmaSlowLive:9,abrEwmaFastVoD:3,abrEwmaSlowVoD:9,abrEwmaDefaultEstimate:5e5,abrBandWidthFactor:.95,abrBandWidthUpFactor:.7,abrMaxWithRealBitrate:!1,maxStarvationDelay:4,maxLoadingDelay:4,minAutoBitrate:0,emeEnabled:!1,widevineLicenseUrl:void 0,drmSystems:{},drmSystemOptions:{},requestMediaKeySystemAccessFunc:ye,testBandwidth:!0,progressive:!1,lowLatencyMode:!0,cmcd:void 0,enableDateRangeMetadataCues:!0,enableEmsgMetadataCues:!0,enableID3MetadataCues:!0},{cueHandler:{newCue:function(d,o,e,t){for(var i,n,a,r,s,l=[],u=self.VTTCue||self.TextTrackCue,c=0;c<t.rows.length;c++)if(a=!0,r=0,s="",!(i=t.rows[c]).isEmpty()){for(var v=0;v<i.chars.length;v++)Ua.test(i.chars[v].uchar)&&a?r++:(s+=i.chars[v].uchar,a=!1);i.cueStartTime=o,o===e&&(e+=1e-4),r>=16?r--:r++;var m=Kt(s.trim()),_=sr(o,e,m);d&&d.cues&&d.cues.getCueById(_)||((n=new u(o,e,m)).id=_,n.line=c+1,n.align="left",n.position=10+Math.min(80,10*Math.floor(8*r/32)),l.push(n))}return d&&l.length&&(l.sort(function(S,x){return S.line==="auto"||x.line==="auto"?0:S.line>8&&x.line>8?x.line-S.line:S.line-x.line}),l.forEach(function(S){return yt(d,S)})),l}},enableWebVTT:!0,enableIMSC1:!0,enableCEA708Captions:!0,captionsTextTrack1Label:"English",captionsTextTrack1LanguageCode:"en",captionsTextTrack2Label:"Spanish",captionsTextTrack2LanguageCode:"es",captionsTextTrack3Label:"Unknown CC",captionsTextTrack3LanguageCode:"",captionsTextTrack4Label:"Unknown CC",captionsTextTrack4LanguageCode:"",renderTextTracksNatively:!0}),{},{subtitleStreamController:ln,subtitleTrackController:cn,timelineController:La,audioStreamController:Ti,audioTrackController:sn,emeController:Pa,cmcdController:Ca});function Qn(d,o){for(var e=0;e<o.length;e++){var t=o[e];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(d,typeof(i=function(n,a){if(typeof n!="object"||n===null)return n;var r=n[Symbol.toPrimitive];if(r!==void 0){var s=r.call(n,a);if(typeof s!="object")return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(n)}(t.key,"string"))=="symbol"?i:String(i),t)}var i}var Jn=function(){function d(n){n===void 0&&(n={}),this.config=void 0,this.userConfig=void 0,this.coreComponents=void 0,this.networkControllers=void 0,this._emitter=new gi.EventEmitter,this._autoLevelCapping=void 0,this._maxHdcpLevel=null,this.abrController=void 0,this.bufferController=void 0,this.capLevelController=void 0,this.latencyController=void 0,this.levelController=void 0,this.streamController=void 0,this.audioTrackController=void 0,this.subtitleTrackController=void 0,this.emeController=void 0,this.cmcdController=void 0,this._media=null,this.url=null;var a=this.config=function(Ee,Ge){if((Ge.liveSyncDurationCount||Ge.liveMaxLatencyDurationCount)&&(Ge.liveSyncDuration||Ge.liveMaxLatencyDuration))throw new Error("Illegal hls.js config: don't mix up liveSyncDurationCount/liveMaxLatencyDurationCount and liveSyncDuration/liveMaxLatencyDuration");if(Ge.liveMaxLatencyDurationCount!==void 0&&(Ge.liveSyncDurationCount===void 0||Ge.liveMaxLatencyDurationCount<=Ge.liveSyncDurationCount))throw new Error('Illegal hls.js config: "liveMaxLatencyDurationCount" must be greater than "liveSyncDurationCount"');if(Ge.liveMaxLatencyDuration!==void 0&&(Ge.liveSyncDuration===void 0||Ge.liveMaxLatencyDuration<=Ge.liveSyncDuration))throw new Error('Illegal hls.js config: "liveMaxLatencyDuration" must be greater than "liveSyncDuration"');return kn({},Ee,Ge)}(d.DefaultConfig,n);this.userConfig=n,(0,k.enableLogs)(a.debug,"Hls instance"),this._autoLevelCapping=-1,a.progressive&&function(Ee){var Ge=Ee.loader;Ge!==Wn&&Ge!==Yn?(k.logger.log("[config]: Custom loader detected, cannot enable progressive streaming"),Ee.progressive=!1):function(){if(self.fetch&&self.AbortController&&self.ReadableStream&&self.Request)try{return new self.ReadableStream({}),!0}catch{}return!1}()&&(Ee.loader=Wn,Ee.progressive=!0,Ee.enableSoftwareAES=!0,k.logger.log("[config]: Progressive streaming enabled, using FetchLoader"))}(a);var r=a.abrController,s=a.bufferController,l=a.capLevelController,u=a.fpsController,c=this.abrController=new r(this),v=this.bufferController=new s(this),m=this.capLevelController=new l(this),_=new u(this),S=new Ye(this),x=new Rt(this),I=this.levelController=new ot(this),j=new bt(this),ae=new hr(this.config),me=this.streamController=new tn(this,j,ae);m.setStreamController(me),_.setStreamController(me);var de=[S,I,me];this.networkControllers=de;var _e=[c,v,m,_,x,j];this.audioTrackController=this.createController(a.audioTrackController,de);var Ke=a.audioStreamController;Ke&&de.push(new Ke(this,j,ae)),this.subtitleTrackController=this.createController(a.subtitleTrackController,de);var ze=a.subtitleStreamController;ze&&de.push(new ze(this,j,ae)),this.createController(a.timelineController,_e),ae.emeController=this.emeController=this.createController(a.emeController,_e),this.cmcdController=this.createController(a.cmcdController,_e),this.latencyController=this.createController(jt,_e),this.coreComponents=_e}d.isSupported=function(){return function(){var n=ni();if(!n)return!1;var a=ai(),r=n&&typeof n.isTypeSupported=="function"&&n.isTypeSupported('video/mp4; codecs="avc1.42E01E,mp4a.40.2"'),s=!a||a.prototype&&typeof a.prototype.appendBuffer=="function"&&typeof a.prototype.remove=="function";return!!r&&!!s}()};var o,e,t,i=d.prototype;return i.createController=function(n,a){if(n){var r=new n(this);return a&&a.push(r),r}return null},i.on=function(n,a,r){r===void 0&&(r=this),this._emitter.on(n,a,r)},i.once=function(n,a,r){r===void 0&&(r=this),this._emitter.once(n,a,r)},i.removeAllListeners=function(n){this._emitter.removeAllListeners(n)},i.off=function(n,a,r,s){r===void 0&&(r=this),this._emitter.off(n,a,r,s)},i.listeners=function(n){return this._emitter.listeners(n)},i.emit=function(n,a,r){return this._emitter.emit(n,a,r)},i.trigger=function(n,a){if(this.config.debug)return this.emit(n,n,a);try{return this.emit(n,n,a)}catch(r){k.logger.error("An internal error happened while handling event "+n+'. Error message: "'+r.message+'". Here is a stacktrace:',r),this.trigger(p.Events.ERROR,{type:w.ErrorTypes.OTHER_ERROR,details:w.ErrorDetails.INTERNAL_EXCEPTION,fatal:!1,event:n,error:r})}return!1},i.listenerCount=function(n){return this._emitter.listenerCount(n)},i.destroy=function(){k.logger.log("destroy"),this.trigger(p.Events.DESTROYING,void 0),this.detachMedia(),this.removeAllListeners(),this._autoLevelCapping=-1,this.url=null,this.networkControllers.forEach(function(n){return n.destroy()}),this.networkControllers.length=0,this.coreComponents.forEach(function(n){return n.destroy()}),this.coreComponents.length=0},i.attachMedia=function(n){k.logger.log("attachMedia"),this._media=n,this.trigger(p.Events.MEDIA_ATTACHING,{media:n})},i.detachMedia=function(){k.logger.log("detachMedia"),this.trigger(p.Events.MEDIA_DETACHING,void 0),this._media=null},i.loadSource=function(n){this.stopLoad();var a=this.media,r=this.url,s=this.url=$.buildAbsoluteURL(self.location.href,n,{alwaysNormalize:!0});k.logger.log("loadSource:"+s),a&&r&&r!==s&&this.bufferController.hasSourceTypes()&&(this.detachMedia(),this.attachMedia(a)),this.trigger(p.Events.MANIFEST_LOADING,{url:n})},i.startLoad=function(n){n===void 0&&(n=-1),k.logger.log("startLoad("+n+")"),this.networkControllers.forEach(function(a){a.startLoad(n)})},i.stopLoad=function(){k.logger.log("stopLoad"),this.networkControllers.forEach(function(n){n.stopLoad()})},i.swapAudioCodec=function(){k.logger.log("swapAudioCodec"),this.streamController.swapAudioCodec()},i.recoverMediaError=function(){k.logger.log("recoverMediaError");var n=this._media;this.detachMedia(),n&&this.attachMedia(n)},i.removeLevel=function(n,a){a===void 0&&(a=0),this.levelController.removeLevel(n,a)},o=d,t=[{key:"version",get:function(){return"1.3.1"}},{key:"Events",get:function(){return p.Events}},{key:"ErrorTypes",get:function(){return w.ErrorTypes}},{key:"ErrorDetails",get:function(){return w.ErrorDetails}},{key:"DefaultConfig",get:function(){return d.defaultConfig?d.defaultConfig:Ha},set:function(n){d.defaultConfig=n}}],(e=[{key:"levels",get:function(){return this.levelController.levels||[]}},{key:"currentLevel",get:function(){return this.streamController.currentLevel},set:function(n){k.logger.log("set currentLevel:"+n),this.loadLevel=n,this.abrController.clearTimer(),this.streamController.immediateLevelSwitch()}},{key:"nextLevel",get:function(){return this.streamController.nextLevel},set:function(n){k.logger.log("set nextLevel:"+n),this.levelController.manualLevel=n,this.streamController.nextLevelSwitch()}},{key:"loadLevel",get:function(){return this.levelController.level},set:function(n){k.logger.log("set loadLevel:"+n),this.levelController.manualLevel=n}},{key:"nextLoadLevel",get:function(){return this.levelController.nextLoadLevel},set:function(n){this.levelController.nextLoadLevel=n}},{key:"firstLevel",get:function(){return Math.max(this.levelController.firstLevel,this.minAutoLevel)},set:function(n){k.logger.log("set firstLevel:"+n),this.levelController.firstLevel=n}},{key:"startLevel",get:function(){return this.levelController.startLevel},set:function(n){k.logger.log("set startLevel:"+n),n!==-1&&(n=Math.max(n,this.minAutoLevel)),this.levelController.startLevel=n}},{key:"capLevelToPlayerSize",get:function(){return this.config.capLevelToPlayerSize},set:function(n){var a=!!n;a!==this.config.capLevelToPlayerSize&&(a?this.capLevelController.startCapping():(this.capLevelController.stopCapping(),this.autoLevelCapping=-1,this.streamController.nextLevelSwitch()),this.config.capLevelToPlayerSize=a)}},{key:"autoLevelCapping",get:function(){return this._autoLevelCapping},set:function(n){this._autoLevelCapping!==n&&(k.logger.log("set autoLevelCapping:"+n),this._autoLevelCapping=n)}},{key:"bandwidthEstimate",get:function(){var n=this.abrController.bwEstimator;return n?n.getEstimate():NaN}},{key:"maxHdcpLevel",get:function(){return this._maxHdcpLevel},set:function(n){dr.indexOf(n)>-1&&(this._maxHdcpLevel=n)}},{key:"autoLevelEnabled",get:function(){return this.levelController.manualLevel===-1}},{key:"manualLevel",get:function(){return this.levelController.manualLevel}},{key:"minAutoLevel",get:function(){var n=this.levels,a=this.config.minAutoBitrate;if(!n)return 0;for(var r=n.length,s=0;s<r;s++)if(n[s].maxBitrate>=a)return s;return 0}},{key:"maxAutoLevel",get:function(){var n,a=this.levels,r=this.autoLevelCapping,s=this.maxHdcpLevel;if(n=r===-1&&a&&a.length?a.length-1:r,s)for(var l=n;l--;){var u=a[l].attrs["HDCP-LEVEL"];if(u&&u<=s)return l}return n}},{key:"nextAutoLevel",get:function(){return Math.min(Math.max(this.abrController.nextAutoLevel,this.minAutoLevel),this.maxAutoLevel)},set:function(n){this.abrController.nextAutoLevel=Math.max(this.minAutoLevel,n)}},{key:"playingDate",get:function(){return this.streamController.currentProgramDateTime}},{key:"mainForwardBufferInfo",get:function(){return this.streamController.getMainFwdBufferInfo()}},{key:"audioTracks",get:function(){var n=this.audioTrackController;return n?n.audioTracks:[]}},{key:"audioTrack",get:function(){var n=this.audioTrackController;return n?n.audioTrack:-1},set:function(n){var a=this.audioTrackController;a&&(a.audioTrack=n)}},{key:"subtitleTracks",get:function(){var n=this.subtitleTrackController;return n?n.subtitleTracks:[]}},{key:"subtitleTrack",get:function(){var n=this.subtitleTrackController;return n?n.subtitleTrack:-1},set:function(n){var a=this.subtitleTrackController;a&&(a.subtitleTrack=n)}},{key:"media",get:function(){return this._media}},{key:"subtitleDisplay",get:function(){var n=this.subtitleTrackController;return!!n&&n.subtitleDisplay},set:function(n){var a=this.subtitleTrackController;a&&(a.subtitleDisplay=n)}},{key:"lowLatencyMode",get:function(){return this.config.lowLatencyMode},set:function(n){this.config.lowLatencyMode=n}},{key:"liveSyncPosition",get:function(){return this.latencyController.liveSyncPosition}},{key:"latency",get:function(){return this.latencyController.latency}},{key:"maxLatency",get:function(){return this.latencyController.maxLatency}},{key:"targetLatency",get:function(){return this.latencyController.targetLatency}},{key:"drift",get:function(){return this.latencyController.drift}},{key:"forceStartLoad",get:function(){return this.streamController.forceStartLoad}}])&&Qn(o.prototype,e),t&&Qn(o,t),Object.defineProperty(o,"prototype",{writable:!1}),d}();Jn.defaultConfig=void 0},923:(fe,re,N)=>{"use strict";N.r(re),N.d(re,{BaseSegment:()=>le,ElementaryStreamTypes:()=>B,Fragment:()=>Te,Part:()=>H});var B,$=N(965),R=N(945),p=N(408);function w(ce,z){ce.prototype=Object.create(z.prototype),ce.prototype.constructor=ce,k(ce,z)}function k(ce,z){return k=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(ne,U){return ne.__proto__=U,ne},k(ce,z)}function ve(ce,z){for(var ne=0;ne<z.length;ne++){var U=z[ne];U.enumerable=U.enumerable||!1,U.configurable=!0,"value"in U&&(U.writable=!0),Object.defineProperty(ce,typeof(be=function(ke,He){if(typeof ke!="object"||ke===null)return ke;var K=ke[Symbol.toPrimitive];if(K!==void 0){var E=K.call(ke,He);if(typeof E!="object")return E;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(ke)}(U.key,"string"))=="symbol"?be:String(be),U)}var be}function Z(ce,z,ne){return z&&ve(ce.prototype,z),ne&&ve(ce,ne),Object.defineProperty(ce,"prototype",{writable:!1}),ce}(function(ce){ce.AUDIO="audio",ce.VIDEO="video",ce.AUDIOVIDEO="audiovideo"})(B||(B={}));var le=function(){function ce(z){var ne;this._byteRange=null,this._url=null,this.baseurl=void 0,this.relurl=void 0,this.elementaryStreams=((ne={})[B.AUDIO]=null,ne[B.VIDEO]=null,ne[B.AUDIOVIDEO]=null,ne),this.baseurl=z}return ce.prototype.setByteRange=function(z,ne){var U=z.split("@",2),be=[];U.length===1?be[0]=ne?ne.byteRangeEndOffset:0:be[0]=parseInt(U[1]),be[1]=parseInt(U[0])+be[0],this._byteRange=be},Z(ce,[{key:"byteRange",get:function(){return this._byteRange?this._byteRange:[]}},{key:"byteRangeStartOffset",get:function(){return this.byteRange[0]}},{key:"byteRangeEndOffset",get:function(){return this.byteRange[1]}},{key:"url",get:function(){return!this._url&&this.baseurl&&this.relurl&&(this._url=(0,R.buildAbsoluteURL)(this.baseurl,this.relurl,{alwaysNormalize:!0})),this._url||""},set:function(z){this._url=z}}]),ce}(),Te=function(ce){function z(U,be){var ke;return(ke=ce.call(this,be)||this)._decryptdata=null,ke.rawProgramDateTime=null,ke.programDateTime=null,ke.tagList=[],ke.duration=0,ke.sn=0,ke.levelkeys=void 0,ke.type=void 0,ke.loader=null,ke.keyLoader=null,ke.level=-1,ke.cc=0,ke.startPTS=void 0,ke.endPTS=void 0,ke.appendedPTS=void 0,ke.startDTS=void 0,ke.endDTS=void 0,ke.start=0,ke.deltaPTS=void 0,ke.maxStartPTS=void 0,ke.minEndPTS=void 0,ke.stats=new p.LoadStats,ke.urlId=0,ke.data=void 0,ke.bitrateTest=!1,ke.title=null,ke.initSegment=null,ke.endList=void 0,ke.type=U,ke}w(z,ce);var ne=z.prototype;return ne.setKeyFormat=function(U){if(this.levelkeys){var be=this.levelkeys[U];be&&!this._decryptdata&&(this._decryptdata=be.getDecryptData(this.sn))}},ne.abortRequests=function(){var U,be;(U=this.loader)===null||U===void 0||U.abort(),(be=this.keyLoader)===null||be===void 0||be.abort()},ne.setElementaryStreamInfo=function(U,be,ke,He,K,E){E===void 0&&(E=!1);var M=this.elementaryStreams,L=M[U];L?(L.startPTS=Math.min(L.startPTS,be),L.endPTS=Math.max(L.endPTS,ke),L.startDTS=Math.min(L.startDTS,He),L.endDTS=Math.max(L.endDTS,K)):M[U]={startPTS:be,endPTS:ke,startDTS:He,endDTS:K,partial:E}},ne.clearElementaryStreamInfo=function(){var U=this.elementaryStreams;U[B.AUDIO]=null,U[B.VIDEO]=null,U[B.AUDIOVIDEO]=null},Z(z,[{key:"decryptdata",get:function(){if(!this.levelkeys&&!this._decryptdata)return null;if(!this._decryptdata&&this.levelkeys&&!this.levelkeys.NONE){var U=this.levelkeys.identity;if(U)this._decryptdata=U.getDecryptData(this.sn);else{var be=Object.keys(this.levelkeys);if(be.length===1)return this._decryptdata=this.levelkeys[be[0]].getDecryptData(this.sn)}}return this._decryptdata}},{key:"end",get:function(){return this.start+this.duration}},{key:"endProgramDateTime",get:function(){if(this.programDateTime===null||!(0,$.isFiniteNumber)(this.programDateTime))return null;var U=(0,$.isFiniteNumber)(this.duration)?this.duration:0;return this.programDateTime+1e3*U}},{key:"encrypted",get:function(){var U;if((U=this._decryptdata)!==null&&U!==void 0&&U.encrypted)return!0;if(this.levelkeys){var be=Object.keys(this.levelkeys),ke=be.length;if(ke>1||ke===1&&this.levelkeys[be[0]].encrypted)return!0}return!1}}]),z}(le),H=function(ce){function z(ne,U,be,ke,He){var K;(K=ce.call(this,be)||this).fragOffset=0,K.duration=0,K.gap=!1,K.independent=!1,K.relurl=void 0,K.fragment=void 0,K.index=void 0,K.stats=new p.LoadStats,K.duration=ne.decimalFloatingPoint("DURATION"),K.gap=ne.bool("GAP"),K.independent=ne.bool("INDEPENDENT"),K.relurl=ne.enumeratedString("URI"),K.fragment=U,K.index=ke;var E=ne.enumeratedString("BYTERANGE");return E&&K.setByteRange(E,He),He&&(K.fragOffset=He.fragOffset+He.duration),K}return w(z,ce),Z(z,[{key:"start",get:function(){return this.fragment.start+this.fragOffset}},{key:"end",get:function(){return this.start+this.duration}},{key:"loaded",get:function(){var ne=this.elementaryStreams;return!!(ne.audio||ne.video||ne.audiovideo)}}]),z}(le)},408:(fe,re,N)=>{"use strict";N.r(re),N.d(re,{LoadStats:()=>B});var B=function(){this.aborted=!1,this.loaded=0,this.retry=0,this.total=0,this.chunkCount=0,this.bwEstimate=0,this.loading={start:0,first:0,end:0},this.parsing={start:0,end:0},this.buffering={start:0,first:0,end:0}}},965:(fe,re,N)=>{"use strict";N.r(re),N.d(re,{MAX_SAFE_INTEGER:()=>$,isFiniteNumber:()=>B});var B=Number.isFinite||function(R){return typeof R=="number"&&isFinite(R)},$=Number.MAX_SAFE_INTEGER||9007199254740991},524:(fe,re,N)=>{"use strict";N.r(re),N.d(re,{default:()=>ne,flushTextTrackMetadataCueSamples:()=>be,flushTextTrackUserdataCueSamples:()=>ke,normalizePts:()=>U});var B=N(965);let $=function(){function E(){}return E.getSilentFrame=function(M,L){if(M==="mp4a.40.2"){if(L===1)return new Uint8Array([0,200,0,128,35,128]);if(L===2)return new Uint8Array([33,0,73,144,2,25,0,35,128]);if(L===3)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,142]);if(L===4)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,128,44,128,8,2,56]);if(L===5)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,56]);if(L===6)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,0,178,0,32,8,224])}else{if(L===1)return new Uint8Array([1,64,34,128,163,78,230,128,186,8,0,0,0,28,6,241,193,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(L===2)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(L===3)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94])}},E}();var R=Math.pow(2,32)-1,p=function(){function E(){}return E.init=function(){var M;for(M in E.types={avc1:[],avcC:[],btrt:[],dinf:[],dref:[],esds:[],ftyp:[],hdlr:[],mdat:[],mdhd:[],mdia:[],mfhd:[],minf:[],moof:[],moov:[],mp4a:[],".mp3":[],mvex:[],mvhd:[],pasp:[],sdtp:[],stbl:[],stco:[],stsc:[],stsd:[],stsz:[],stts:[],tfdt:[],tfhd:[],traf:[],trak:[],trun:[],trex:[],tkhd:[],vmhd:[],smhd:[]},E.types)E.types.hasOwnProperty(M)&&(E.types[M]=[M.charCodeAt(0),M.charCodeAt(1),M.charCodeAt(2),M.charCodeAt(3)]);var L=new Uint8Array([0,0,0,0,0,0,0,0,118,105,100,101,0,0,0,0,0,0,0,0,0,0,0,0,86,105,100,101,111,72,97,110,100,108,101,114,0]),oe=new Uint8Array([0,0,0,0,0,0,0,0,115,111,117,110,0,0,0,0,0,0,0,0,0,0,0,0,83,111,117,110,100,72,97,110,100,108,101,114,0]);E.HDLR_TYPES={video:L,audio:oe};var ye=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1]),W=new Uint8Array([0,0,0,0,0,0,0,0]);E.STTS=E.STSC=E.STCO=W,E.STSZ=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]),E.VMHD=new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0]),E.SMHD=new Uint8Array([0,0,0,0,0,0,0,0]),E.STSD=new Uint8Array([0,0,0,0,0,0,0,1]);var V=new Uint8Array([105,115,111,109]),we=new Uint8Array([97,118,99,49]),Re=new Uint8Array([0,0,0,1]);E.FTYP=E.box(E.types.ftyp,V,Re,V,we),E.DINF=E.box(E.types.dinf,E.box(E.types.dref,ye))},E.box=function(M){for(var L=8,oe=arguments.length,ye=new Array(oe>1?oe-1:0),W=1;W<oe;W++)ye[W-1]=arguments[W];for(var V=ye.length,we=V;V--;)L+=ye[V].byteLength;var Re=new Uint8Array(L);for(Re[0]=L>>24&255,Re[1]=L>>16&255,Re[2]=L>>8&255,Re[3]=255&L,Re.set(M,4),V=0,L=8;V<we;V++)Re.set(ye[V],L),L+=ye[V].byteLength;return Re},E.hdlr=function(M){return E.box(E.types.hdlr,E.HDLR_TYPES[M])},E.mdat=function(M){return E.box(E.types.mdat,M)},E.mdhd=function(M,L){L*=M;var oe=Math.floor(L/(R+1)),ye=Math.floor(L%(R+1));return E.box(E.types.mdhd,new Uint8Array([1,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,M>>24&255,M>>16&255,M>>8&255,255&M,oe>>24,oe>>16&255,oe>>8&255,255&oe,ye>>24,ye>>16&255,ye>>8&255,255&ye,85,196,0,0]))},E.mdia=function(M){return E.box(E.types.mdia,E.mdhd(M.timescale,M.duration),E.hdlr(M.type),E.minf(M))},E.mfhd=function(M){return E.box(E.types.mfhd,new Uint8Array([0,0,0,0,M>>24,M>>16&255,M>>8&255,255&M]))},E.minf=function(M){return M.type==="audio"?E.box(E.types.minf,E.box(E.types.smhd,E.SMHD),E.DINF,E.stbl(M)):E.box(E.types.minf,E.box(E.types.vmhd,E.VMHD),E.DINF,E.stbl(M))},E.moof=function(M,L,oe){return E.box(E.types.moof,E.mfhd(M),E.traf(oe,L))},E.moov=function(M){for(var L=M.length,oe=[];L--;)oe[L]=E.trak(M[L]);return E.box.apply(null,[E.types.moov,E.mvhd(M[0].timescale,M[0].duration)].concat(oe).concat(E.mvex(M)))},E.mvex=function(M){for(var L=M.length,oe=[];L--;)oe[L]=E.trex(M[L]);return E.box.apply(null,[E.types.mvex].concat(oe))},E.mvhd=function(M,L){L*=M;var oe=Math.floor(L/(R+1)),ye=Math.floor(L%(R+1)),W=new Uint8Array([1,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,M>>24&255,M>>16&255,M>>8&255,255&M,oe>>24,oe>>16&255,oe>>8&255,255&oe,ye>>24,ye>>16&255,ye>>8&255,255&ye,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255]);return E.box(E.types.mvhd,W)},E.sdtp=function(M){var L,oe,ye=M.samples||[],W=new Uint8Array(4+ye.length);for(L=0;L<ye.length;L++)oe=ye[L].flags,W[L+4]=oe.dependsOn<<4|oe.isDependedOn<<2|oe.hasRedundancy;return E.box(E.types.sdtp,W)},E.stbl=function(M){return E.box(E.types.stbl,E.stsd(M),E.box(E.types.stts,E.STTS),E.box(E.types.stsc,E.STSC),E.box(E.types.stsz,E.STSZ),E.box(E.types.stco,E.STCO))},E.avc1=function(M){var L,oe,ye,W=[],V=[];for(L=0;L<M.sps.length;L++)ye=(oe=M.sps[L]).byteLength,W.push(ye>>>8&255),W.push(255&ye),W=W.concat(Array.prototype.slice.call(oe));for(L=0;L<M.pps.length;L++)ye=(oe=M.pps[L]).byteLength,V.push(ye>>>8&255),V.push(255&ye),V=V.concat(Array.prototype.slice.call(oe));var we=E.box(E.types.avcC,new Uint8Array([1,W[3],W[4],W[5],255,224|M.sps.length].concat(W).concat([M.pps.length]).concat(V))),Re=M.width,Ce=M.height,ge=M.pixelRatio[0],qe=M.pixelRatio[1];return E.box(E.types.avc1,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,Re>>8&255,255&Re,Ce>>8&255,255&Ce,0,72,0,0,0,72,0,0,0,0,0,0,0,1,18,100,97,105,108,121,109,111,116,105,111,110,47,104,108,115,46,106,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,17,17]),we,E.box(E.types.btrt,new Uint8Array([0,28,156,128,0,45,198,192,0,45,198,192])),E.box(E.types.pasp,new Uint8Array([ge>>24,ge>>16&255,ge>>8&255,255&ge,qe>>24,qe>>16&255,qe>>8&255,255&qe])))},E.esds=function(M){var L=M.config.length;return new Uint8Array([0,0,0,0,3,23+L,0,1,0,4,15+L,64,21,0,0,0,0,0,0,0,0,0,0,0,5].concat([L]).concat(M.config).concat([6,1,2]))},E.mp4a=function(M){var L=M.samplerate;return E.box(E.types.mp4a,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,M.channelCount,0,16,0,0,0,0,L>>8&255,255&L,0,0]),E.box(E.types.esds,E.esds(M)))},E.mp3=function(M){var L=M.samplerate;return E.box(E.types[".mp3"],new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,M.channelCount,0,16,0,0,0,0,L>>8&255,255&L,0,0]))},E.stsd=function(M){return M.type==="audio"?M.segmentCodec==="mp3"&&M.codec==="mp3"?E.box(E.types.stsd,E.STSD,E.mp3(M)):E.box(E.types.stsd,E.STSD,E.mp4a(M)):E.box(E.types.stsd,E.STSD,E.avc1(M))},E.tkhd=function(M){var L=M.id,oe=M.duration*M.timescale,ye=M.width,W=M.height,V=Math.floor(oe/(R+1)),we=Math.floor(oe%(R+1));return E.box(E.types.tkhd,new Uint8Array([1,0,0,7,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,L>>24&255,L>>16&255,L>>8&255,255&L,0,0,0,0,V>>24,V>>16&255,V>>8&255,255&V,we>>24,we>>16&255,we>>8&255,255&we,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,ye>>8&255,255&ye,0,0,W>>8&255,255&W,0,0]))},E.traf=function(M,L){var oe=E.sdtp(M),ye=M.id,W=Math.floor(L/(R+1)),V=Math.floor(L%(R+1));return E.box(E.types.traf,E.box(E.types.tfhd,new Uint8Array([0,0,0,0,ye>>24,ye>>16&255,ye>>8&255,255&ye])),E.box(E.types.tfdt,new Uint8Array([1,0,0,0,W>>24,W>>16&255,W>>8&255,255&W,V>>24,V>>16&255,V>>8&255,255&V])),E.trun(M,oe.length+16+20+8+16+8+8),oe)},E.trak=function(M){return M.duration=M.duration||4294967295,E.box(E.types.trak,E.tkhd(M),E.mdia(M))},E.trex=function(M){var L=M.id;return E.box(E.types.trex,new Uint8Array([0,0,0,0,L>>24,L>>16&255,L>>8&255,255&L,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]))},E.trun=function(M,L){var oe,ye,W,V,we,Re,Ce=M.samples||[],ge=Ce.length,qe=12+16*ge,tt=new Uint8Array(qe);for(L+=8+qe,tt.set([M.type==="video"?1:0,0,15,1,ge>>>24&255,ge>>>16&255,ge>>>8&255,255&ge,L>>>24&255,L>>>16&255,L>>>8&255,255&L],0),oe=0;oe<ge;oe++)W=(ye=Ce[oe]).duration,V=ye.size,we=ye.flags,Re=ye.cts,tt.set([W>>>24&255,W>>>16&255,W>>>8&255,255&W,V>>>24&255,V>>>16&255,V>>>8&255,255&V,we.isLeading<<2|we.dependsOn,we.isDependedOn<<6|we.hasRedundancy<<4|we.paddingValue<<1|we.isNonSync,61440&we.degradPrio,15&we.degradPrio,Re>>>24&255,Re>>>16&255,Re>>>8&255,255&Re],12+16*oe);return E.box(E.types.trun,tt)},E.initSegment=function(M){E.types||E.init();var L=E.moov(M),oe=new Uint8Array(E.FTYP.byteLength+L.byteLength);return oe.set(E.FTYP),oe.set(L,E.FTYP.byteLength),oe},E}();p.types=void 0,p.HDLR_TYPES=void 0,p.STTS=void 0,p.STSC=void 0,p.STCO=void 0,p.STSZ=void 0,p.VMHD=void 0,p.SMHD=void 0,p.STSD=void 0,p.FTYP=void 0,p.DINF=void 0;let w=p;var k=N(851),ve=N(973),Z=N(93),le=N(308),Te=N(673);function H(){return H=Object.assign?Object.assign.bind():function(E){for(var M=1;M<arguments.length;M++){var L=arguments[M];for(var oe in L)Object.prototype.hasOwnProperty.call(L,oe)&&(E[oe]=L[oe])}return E},H.apply(this,arguments)}var ce=null,z=null,ne=function(){function E(L,oe,ye,W){if(W===void 0&&(W=""),this.observer=void 0,this.config=void 0,this.typeSupported=void 0,this.ISGenerated=!1,this._initPTS=void 0,this._initDTS=void 0,this.nextAvcDts=null,this.nextAudioPts=null,this.videoSampleDuration=null,this.isAudioContiguous=!1,this.isVideoContiguous=!1,this.observer=L,this.config=oe,this.typeSupported=ye,this.ISGenerated=!1,ce===null){var V=(navigator.userAgent||"").match(/Chrome\/(\d+)/i);ce=V?parseInt(V[1]):0}if(z===null){var we=navigator.userAgent.match(/Safari\/(\d+)/i);z=we?parseInt(we[1]):0}}var M=E.prototype;return M.destroy=function(){},M.resetTimeStamp=function(L){Z.logger.log("[mp4-remuxer]: initPTS & initDTS reset"),this._initPTS=this._initDTS=L},M.resetNextTimestamp=function(){Z.logger.log("[mp4-remuxer]: reset next timestamp"),this.isVideoContiguous=!1,this.isAudioContiguous=!1},M.resetInitSegment=function(){Z.logger.log("[mp4-remuxer]: ISGenerated flag reset"),this.ISGenerated=!1},M.getVideoStartPts=function(L){var oe=!1,ye=L.reduce(function(W,V){var we=V.pts-W;return we<-4294967296?(oe=!0,U(W,V.pts)):we>0?W:V.pts},L[0].pts);return oe&&Z.logger.debug("PTS rollover detected"),ye},M.remux=function(L,oe,ye,W,V,we,Re,Ce){var ge,qe,tt,ee,ue,ie,Oe=V,xe=V,Ne=L.pid>-1,Be=oe.pid>-1,je=oe.samples.length,pe=L.samples.length>0,Ie=Re&&je>0||je>1;if((!Ne||pe)&&(!Be||Ie)||this.ISGenerated||Re){this.ISGenerated||(tt=this.generateIS(L,oe,V));var Ye,rt=this.isVideoContiguous,yt=-1;if(Ie&&(yt=function(kt){for(var gt=0;gt<kt.length;gt++)if(kt[gt].key)return gt;return-1}(oe.samples),!rt&&this.config.forceKeyFrameOnDiscontinuity))if(ie=!0,yt>0){Z.logger.warn("[mp4-remuxer]: Dropped "+yt+" out of "+je+" video samples due to a missing keyframe");var ht=this.getVideoStartPts(oe.samples);oe.samples=oe.samples.slice(yt),oe.dropped+=yt,Ye=xe+=(oe.samples[0].pts-ht)/oe.inputTimeScale}else yt===-1&&(Z.logger.warn("[mp4-remuxer]: No keyframe found out of "+je+" video samples"),ie=!1);if(this.ISGenerated){if(pe&&Ie){var It=this.getVideoStartPts(oe.samples),Dt=(U(L.samples[0].pts,It)-It)/oe.inputTimeScale;Oe+=Math.max(0,Dt),xe+=Math.max(0,-Dt)}if(pe){if(L.samplerate||(Z.logger.warn("[mp4-remuxer]: regenerate InitSegment as audio detected"),tt=this.generateIS(L,oe,V)),qe=this.remuxAudio(L,Oe,this.isAudioContiguous,we,Be||Ie||Ce===le.PlaylistLevelType.AUDIO?xe:void 0),Ie){var St=qe?qe.endPTS-qe.startPTS:0;oe.inputTimeScale||(Z.logger.warn("[mp4-remuxer]: regenerate InitSegment as video detected"),tt=this.generateIS(L,oe,V)),ge=this.remuxVideo(oe,xe,rt,St)}}else Ie&&(ge=this.remuxVideo(oe,xe,rt,0));ge&&(ge.firstKeyFrame=yt,ge.independent=yt!==-1,ge.firstKeyFramePTS=Ye)}}return this.ISGenerated&&(ye.samples.length&&(ue=be(ye,V,this._initPTS,this._initDTS)),W.samples.length&&(ee=ke(W,V,this._initPTS))),{audio:qe,video:ge,initSegment:tt,independent:ie,text:ee,id3:ue}},M.generateIS=function(L,oe,ye){var W,V,we,Re=L.samples,Ce=oe.samples,ge=this.typeSupported,qe={},tt=!(0,B.isFiniteNumber)(this._initPTS),ee="audio/mp4";if(tt&&(W=V=1/0),L.config&&Re.length&&(L.timescale=L.samplerate,L.segmentCodec==="mp3"&&(ge.mpeg?(ee="audio/mpeg",L.codec=""):ge.mp3&&(L.codec="mp3")),qe.audio={id:"audio",container:ee,codec:L.codec,initSegment:L.segmentCodec==="mp3"&&ge.mpeg?new Uint8Array(0):w.initSegment([L]),metadata:{channelCount:L.channelCount}},tt&&(we=L.inputTimeScale,W=V=Re[0].pts-Math.round(we*ye))),oe.sps&&oe.pps&&Ce.length&&(oe.timescale=oe.inputTimeScale,qe.video={id:"main",container:"video/mp4",codec:oe.codec,initSegment:w.initSegment([oe]),metadata:{width:oe.width,height:oe.height}},tt)){we=oe.inputTimeScale;var ue=this.getVideoStartPts(Ce),ie=Math.round(we*ye);V=Math.min(V,U(Ce[0].dts,ue)-ie),W=Math.min(W,ue-ie)}if(Object.keys(qe).length)return this.ISGenerated=!0,tt&&(this._initPTS=W,this._initDTS=V),{tracks:qe,initPTS:W,timescale:we}},M.remuxVideo=function(L,oe,ye,W){var V,we,Re=L.inputTimeScale,Ce=L.samples,ge=[],qe=Ce.length,tt=this._initPTS,ee=this.nextAvcDts,ue=8,ie=this.videoSampleDuration,Oe=Number.POSITIVE_INFINITY,xe=Number.NEGATIVE_INFINITY,Ne=!1;ye&&ee!==null||(ee=oe*Re-(Ce[0].pts-U(Ce[0].dts,Ce[0].pts)));for(var Be=0;Be<qe;Be++){var je=Ce[Be];je.pts=U(je.pts-tt,ee),je.dts=U(je.dts-tt,ee),je.dts<Ce[Be>0?Be-1:Be].dts&&(Ne=!0)}Ne&&Ce.sort(function(Vt,hr){var wr=Vt.dts-hr.dts,cr=Vt.pts-hr.pts;return wr||cr}),V=Ce[0].dts;var pe=Ce[Ce.length-1].dts-V,Ie=pe?Math.round(pe/(qe-1)):ie||L.inputTimeScale/30;if(ye){var Ye=V-ee,rt=Ye>Ie,yt=Ye<-1;if((rt||yt)&&(rt?Z.logger.warn("AVC: "+(0,Te.toMsFromMpegTsClock)(Ye,!0)+" ms ("+Ye+"dts) hole between fragments detected, filling it"):Z.logger.warn("AVC: "+(0,Te.toMsFromMpegTsClock)(-Ye,!0)+" ms ("+Ye+"dts) overlapping between fragments detected"),!yt||ee>Ce[0].pts)){V=ee;var ht=Ce[0].pts-Ye;Ce[0].dts=V,Ce[0].pts=ht,Z.logger.log("Video: First PTS/DTS adjusted: "+(0,Te.toMsFromMpegTsClock)(ht,!0)+"/"+(0,Te.toMsFromMpegTsClock)(V,!0)+", delta: "+(0,Te.toMsFromMpegTsClock)(Ye,!0)+" ms")}}V=Math.max(0,V);for(var It=0,Dt=0,St=0;St<qe;St++){for(var kt=Ce[St],gt=kt.units,ut=gt.length,Rt=0,Pt=0;Pt<ut;Pt++)Rt+=gt[Pt].data.length;Dt+=Rt,It+=ut,kt.length=Rt,kt.dts=Math.max(kt.dts,V),Oe=Math.min(kt.pts,Oe),xe=Math.max(kt.pts,xe)}we=Ce[qe-1].dts;var jt,zt=Dt+4*It+8;try{jt=new Uint8Array(zt)}catch{return void this.observer.emit(k.Events.ERROR,k.Events.ERROR,{type:ve.ErrorTypes.MUX_ERROR,details:ve.ErrorDetails.REMUX_ALLOC_ERROR,fatal:!1,bytes:zt,reason:"fail allocating video mdat "+zt})}var Nt=new DataView(jt.buffer);Nt.setUint32(0,zt),jt.set(w.types.mdat,4);for(var dr=!1,J=Number.POSITIVE_INFINITY,O=Number.POSITIVE_INFINITY,T=Number.NEGATIVE_INFINITY,P=Number.NEGATIVE_INFINITY,D=0;D<qe;D++){for(var F=Ce[D],q=F.units,Y=0,he=0,Le=q.length;he<Le;he++){var Ae=q[he],Me=Ae.data,Ve=Ae.data.byteLength;Nt.setUint32(ue,Ve),ue+=4,jt.set(Me,ue),ue+=Ve,Y+=4+Ve}var Ue=void 0;if(D<qe-1)ie=Ce[D+1].dts-F.dts,Ue=Ce[D+1].pts-F.pts;else{var Qe=this.config,ot=D>0?F.dts-Ce[D-1].dts:Ie;if(Ue=D>0?F.pts-Ce[D-1].pts:Ie,Qe.stretchShortVideoTrack&&this.nextAudioPts!==null){var bt=Math.floor(Qe.maxBufferHole*Re),We=(W?Oe+W*Re:this.nextAudioPts)-F.pts;We>bt?((ie=We-ot)<0?ie=ot:dr=!0,Z.logger.log("[mp4-remuxer]: It is approximately "+We/90+" ms to the next segment; using duration "+ie/90+" ms for the last video frame.")):ie=ot}else ie=ot}var Lt=Math.round(F.pts-F.dts);J=Math.min(J,ie),T=Math.max(T,ie),O=Math.min(O,Ue),P=Math.max(P,Ue),ge.push(new He(F.key,ie,Y,Lt))}if(ge.length){if(ce){if(ce<70){var Qt=ge[0].flags;Qt.dependsOn=2,Qt.isNonSync=0}}else if(z&&P-O<T-J&&Ie/T<.025&&ge[0].cts===0){Z.logger.warn("Found irregular gaps in sample duration. Using PTS instead of DTS to determine MP4 sample duration.");for(var Ot=V,xt=0,Ut=ge.length;xt<Ut;xt++){var Ze=Ot+ge[xt].duration,rr=Ot+ge[xt].cts;if(xt<Ut-1){var Er=Ze+ge[xt+1].cts;ge[xt].duration=Er-rr}else ge[xt].duration=xt?ge[xt-1].duration:Ie;ge[xt].cts=0,Ot=Ze}}}ie=dr||!ie?Ie:ie,this.nextAvcDts=ee=we+ie,this.videoSampleDuration=ie,this.isVideoContiguous=!0;var Ft={data1:w.moof(L.sequenceNumber++,V,H({},L,{samples:ge})),data2:jt,startPTS:Oe/Re,endPTS:(xe+ie)/Re,startDTS:V/Re,endDTS:ee/Re,type:"video",hasAudio:!1,hasVideo:!0,nb:ge.length,dropped:L.dropped};return L.samples=[],L.dropped=0,Ft},M.remuxAudio=function(L,oe,ye,W,V){var we=L.inputTimeScale,Re=we/(L.samplerate?L.samplerate:we),Ce=L.segmentCodec==="aac"?1024:1152,ge=Ce*Re,qe=this._initPTS,tt=L.segmentCodec==="mp3"&&this.typeSupported.mpeg,ee=[],ue=V!==void 0,ie=L.samples,Oe=tt?0:8,xe=this.nextAudioPts||-1,Ne=oe*we;if(this.isAudioContiguous=ye=ye||ie.length&&xe>0&&(W&&Math.abs(Ne-xe)<9e3||Math.abs(U(ie[0].pts-qe,Ne)-xe)<20*ge),ie.forEach(function(he){he.pts=U(he.pts-qe,Ne)}),!ye||xe<0){if(ie=ie.filter(function(he){return he.pts>=0}),!ie.length)return;xe=V===0?0:W&&!ue?Math.max(0,Ne):ie[0].pts}if(L.segmentCodec==="aac")for(var Be=this.config.maxAudioFramesDrift,je=0,pe=xe;je<ie.length;je++){var Ie=ie[je],Ye=Ie.pts,rt=Ye-pe,yt=Math.abs(1e3*rt/we);if(rt<=-Be*ge&&ue)je===0&&(Z.logger.warn("Audio frame @ "+(Ye/we).toFixed(3)+"s overlaps nextAudioPts by "+Math.round(1e3*rt/we)+" ms."),this.nextAudioPts=xe=pe=Ye);else if(rt>=Be*ge&&yt<1e4&&ue){var ht=Math.round(rt/ge);(pe=Ye-ht*ge)<0&&(ht--,pe+=ge),je===0&&(this.nextAudioPts=xe=pe),Z.logger.warn("[mp4-remuxer]: Injecting "+ht+" audio frame @ "+(pe/we).toFixed(3)+"s due to "+Math.round(1e3*rt/we)+" ms gap.");for(var It=0;It<ht;It++){var Dt=Math.max(pe,0),St=$.getSilentFrame(L.manifestCodec||L.codec,L.channelCount);St||(Z.logger.log("[mp4-remuxer]: Unable to get silent frame for given audio codec; duplicating last frame instead."),St=Ie.unit.subarray()),ie.splice(je,0,{unit:St,pts:Dt}),pe+=ge,je++}}Ie.pts=pe,pe+=ge}for(var kt,gt=null,ut=null,Rt=0,Pt=ie.length;Pt--;)Rt+=ie[Pt].unit.byteLength;for(var jt=0,zt=ie.length;jt<zt;jt++){var Nt=ie[jt],dr=Nt.unit,J=Nt.pts;if(ut!==null)ee[jt-1].duration=Math.round((J-ut)/Re);else{if(ye&&L.segmentCodec==="aac"&&(J=xe),gt=J,!(Rt>0))return;Rt+=Oe;try{kt=new Uint8Array(Rt)}catch{return void this.observer.emit(k.Events.ERROR,k.Events.ERROR,{type:ve.ErrorTypes.MUX_ERROR,details:ve.ErrorDetails.REMUX_ALLOC_ERROR,fatal:!1,bytes:Rt,reason:"fail allocating audio mdat "+Rt})}tt||(new DataView(kt.buffer).setUint32(0,Rt),kt.set(w.types.mdat,4))}kt.set(dr,Oe);var O=dr.byteLength;Oe+=O,ee.push(new He(!0,Ce,O,0)),ut=J}var T=ee.length;if(T){var P=ee[ee.length-1];this.nextAudioPts=xe=ut+Re*P.duration;var D=tt?new Uint8Array(0):w.moof(L.sequenceNumber++,gt/Re,H({},L,{samples:ee}));L.samples=[];var F=gt/we,q=xe/we,Y={data1:D,data2:kt,startPTS:F,endPTS:q,startDTS:F,endDTS:q,type:"audio",hasAudio:!0,hasVideo:!1,nb:T};return this.isAudioContiguous=!0,Y}},M.remuxEmptyAudio=function(L,oe,ye,W){var V=L.inputTimeScale,we=V/(L.samplerate?L.samplerate:V),Re=this.nextAudioPts,Ce=(Re!==null?Re:W.startDTS*V)+this._initDTS,ge=W.endDTS*V+this._initDTS,qe=1024*we,tt=Math.ceil((ge-Ce)/qe),ee=$.getSilentFrame(L.manifestCodec||L.codec,L.channelCount);if(Z.logger.warn("[mp4-remuxer]: remux empty Audio"),ee){for(var ue=[],ie=0;ie<tt;ie++){var Oe=Ce+ie*qe;ue.push({unit:ee,pts:Oe,dts:Oe})}return L.samples=ue,this.remuxAudio(L,oe,ye,!1)}Z.logger.trace("[mp4-remuxer]: Unable to remuxEmptyAudio since we were unable to get a silent frame for given audio codec")},E}();function U(E,M){var L;if(M===null)return E;for(L=M<E?-8589934592:8589934592;Math.abs(E-M)>4294967296;)E+=L;return E}function be(E,M,L,oe){var ye=E.samples.length;if(ye){for(var W=E.inputTimeScale,V=0;V<ye;V++){var we=E.samples[V];we.pts=U(we.pts-L,M*W)/W,we.dts=U(we.dts-oe,M*W)/W}var Re=E.samples;return E.samples=[],{samples:Re}}}function ke(E,M,L){var oe=E.samples.length;if(oe){for(var ye=E.inputTimeScale,W=0;W<oe;W++){var V=E.samples[W];V.pts=U(V.pts-L,M*ye)/ye}E.samples.sort(function(Re,Ce){return Re.pts-Ce.pts});var we=E.samples;return E.samples=[],{samples:we}}}var He=function(E,M,L,oe){this.size=void 0,this.duration=void 0,this.cts=void 0,this.flags=void 0,this.duration=M,this.size=L,this.cts=oe,this.flags=new K(E)},K=function(E){this.isLeading=0,this.isDependedOn=0,this.hasRedundancy=0,this.degradPrio=0,this.dependsOn=1,this.isNonSync=1,this.dependsOn=E?2:1,this.isNonSync=E?0:1}},856:(fe,re,N)=>{"use strict";var B;N.r(re),N.d(re,{MetadataSchema:()=>B}),function($){$.audioId3="org.id3",$.dateRange="com.apple.quicktime.HLS",$.emsg="https://aomedia.org/emsg/ID3"}(B||(B={}))},308:(fe,re,N)=>{"use strict";var B,$;N.r(re),N.d(re,{PlaylistContextType:()=>B,PlaylistLevelType:()=>$}),function(R){R.MANIFEST="manifest",R.LEVEL="level",R.AUDIO_TRACK="audioTrack",R.SUBTITLE_TRACK="subtitleTrack"}(B||(B={})),function(R){R.MAIN="main",R.AUDIO="audio",R.SUBTITLE="subtitle"}($||($={}))},300:(fe,re,N)=>{"use strict";N.r(re),N.d(re,{default:()=>B});let B={hexDump:function($){for(var R="",p=0;p<$.length;p++){var w=$[p].toString(16);w.length<2&&(w="0"+w),R+=w}return R}}},93:(fe,re,N)=>{"use strict";N.r(re),N.d(re,{enableLogs:()=>w,logger:()=>k});var B=function(){},$={trace:B,debug:B,log:B,warn:B,info:B,error:B},R=$;function p(ve){var Z=self.console[ve];return Z?Z.bind(self.console,"["+ve+"] >"):B}function w(ve,Z){if(self.console&&ve===!0||typeof ve=="object"){(function(le){for(var Te=arguments.length,H=new Array(Te>1?Te-1:0),ce=1;ce<Te;ce++)H[ce-1]=arguments[ce];H.forEach(function(z){R[z]=le[z]?le[z].bind(le):p(z)})})(ve,"debug","log","info","warn","error");try{R.log('Debug logs enabled for "'+Z+'"')}catch{R=$}}else R=$}var k=$},63:(fe,re,N)=>{"use strict";N.r(re),N.d(re,{RemuxerTrackIdConfig:()=>Z,appendUint8Array:()=>ye,bin2str:()=>le,computeRawDurationFromSamples:()=>M,discardEPB:()=>Re,findBox:()=>ne,getDuration:()=>E,getStartDTS:()=>K,mp4Box:()=>ge,mp4pssh:()=>qe,offsetStartDTS:()=>L,parseEmsg:()=>Ce,parseInitSegment:()=>be,parsePssh:()=>tt,parseSEIMessageFromNALu:()=>we,parseSamples:()=>W,parseSegmentIndex:()=>U,parseSinf:()=>He,patchEncyptionData:()=>ke,readSint32:()=>ce,readUint16:()=>Te,readUint32:()=>H,segmentValidRange:()=>oe,writeUint32:()=>z});var B=N(923),$=N(145),R=N(181),p=N(93),w=N(300),k=Math.pow(2,32)-1,ve=[].push,Z={video:1,audio:2,id3:3,text:4};function le(ee){return String.fromCharCode.apply(null,ee)}function Te(ee,ue){var ie=ee[ue]<<8|ee[ue+1];return ie<0?65536+ie:ie}function H(ee,ue){var ie=ce(ee,ue);return ie<0?4294967296+ie:ie}function ce(ee,ue){return ee[ue]<<24|ee[ue+1]<<16|ee[ue+2]<<8|ee[ue+3]}function z(ee,ue,ie){ee[ue]=ie>>24,ee[ue+1]=ie>>16&255,ee[ue+2]=ie>>8&255,ee[ue+3]=255&ie}function ne(ee,ue){var ie=[];if(!ue.length)return ie;for(var Oe=ee.byteLength,xe=0;xe<Oe;){var Ne=H(ee,xe),Be=Ne>1?xe+Ne:Oe;if(le(ee.subarray(xe+4,xe+8))===ue[0])if(ue.length===1)ie.push(ee.subarray(xe+8,Be));else{var je=ne(ee.subarray(xe+8,Be),ue.slice(1));je.length&&ve.apply(ie,je)}xe=Be}return ie}function U(ee){var ue=[],ie=ee[0],Oe=8,xe=H(ee,Oe);Oe+=4,Oe+=ie===0?8:16,Oe+=2;var Ne=ee.length+0,Be=Te(ee,Oe);Oe+=2;for(var je=0;je<Be;je++){var pe=Oe,Ie=H(ee,pe);pe+=4;var Ye=2147483647&Ie;if((2147483648&Ie)>>>31==1)return console.warn("SIDX has hierarchical references (not supported)"),null;var rt=H(ee,pe);pe+=4,ue.push({referenceSize:Ye,subsegmentDuration:rt,info:{duration:rt/xe,start:Ne,end:Ne+Ye-1}}),Ne+=Ye,Oe=pe+=4}return{earliestPresentationTime:0,timescale:xe,version:ie,referencesCount:Be,references:ue}}function be(ee){for(var ue=[],ie=ne(ee,["moov","trak"]),Oe=0;Oe<ie.length;Oe++){var xe=ie[Oe],Ne=ne(xe,["tkhd"])[0];if(Ne){var Be=Ne[0],je=Be===0?12:20,pe=H(Ne,je),Ie=ne(xe,["mdia","mdhd"])[0];if(Ie){var Ye=H(Ie,je=(Be=Ie[0])===0?12:20),rt=ne(xe,["mdia","hdlr"])[0];if(rt){var yt=le(rt.subarray(8,12)),ht={soun:B.ElementaryStreamTypes.AUDIO,vide:B.ElementaryStreamTypes.VIDEO}[yt];if(ht){var It=ne(xe,["mdia","minf","stbl","stsd"])[0],Dt=void 0;It&&(Dt=le(It.subarray(12,16))),ue[pe]={timescale:Ye,type:ht},ue[ht]={timescale:Ye,id:pe,codec:Dt}}}}}}return ne(ee,["moov","mvex","trex"]).forEach(function(St){var kt=H(St,4),gt=ue[kt];gt&&(gt.default={duration:H(St,12),flags:H(St,20)})}),ue}function ke(ee,ue){if(!ee||!ue)return ee;var ie=ue.keyId;return ie&&ue.isCommonEncryption&&ne(ee,["moov","trak"]).forEach(function(Oe){var xe=ne(Oe,["mdia","minf","stbl","stsd"])[0].subarray(8),Ne=ne(xe,["enca"]),Be=Ne.length>0;Be||(Ne=ne(xe,["encv"])),Ne.forEach(function(je){ne(Be?je.subarray(28):je.subarray(78),["sinf"]).forEach(function(pe){var Ie=He(pe);if(Ie){var Ye=Ie.subarray(8,24);Ye.some(function(rt){return rt!==0})||(p.logger.log("[eme] Patching keyId in 'enc"+(Be?"a":"v")+">sinf>>tenc' box: "+w.default.hexDump(Ye)+" -> "+w.default.hexDump(ie)),Ie.set(ie,8))}})})}),ee}function He(ee){var ue=ne(ee,["schm"])[0];if(ue){var ie=le(ue.subarray(4,8));if(ie==="cbcs"||ie==="cenc")return ne(ee,["schi","tenc"])[0]}return p.logger.error("[eme] missing 'schm' box"),null}function K(ee,ue){return ne(ue,["moof","traf"]).reduce(function(ie,Oe){var xe=ne(Oe,["tfdt"])[0],Ne=xe[0],Be=ne(Oe,["tfhd"]).reduce(function(je,pe){var Ie=H(pe,4),Ye=ee[Ie];if(Ye){var rt=H(xe,4);Ne===1&&(rt*=Math.pow(2,32),rt+=H(xe,8));var yt=rt/(Ye.timescale||9e4);if(isFinite(yt)&&(je===null||yt<je))return yt}return je},null);return Be!==null&&isFinite(Be)&&(ie===null||Be<ie)?Be:ie},null)||0}function E(ee,ue){for(var ie=0,Oe=0,xe=0,Ne=ne(ee,["moof","traf"]),Be=0;Be<Ne.length;Be++){var je=Ne[Be],pe=ne(je,["tfhd"])[0],Ie=ue[H(pe,4)];if(Ie){var Ye=Ie.default,rt=H(pe,0)|(Ye==null?void 0:Ye.flags),yt=Ye==null?void 0:Ye.duration;8&rt&&(yt=H(pe,2&rt?12:8));for(var ht=Ie.timescale||9e4,It=ne(je,["trun"]),Dt=0;Dt<It.length;Dt++)!(ie=M(It[Dt]))&&yt&&(ie=yt*H(It[Dt],4)),Ie.type===B.ElementaryStreamTypes.VIDEO?Oe+=ie/ht:Ie.type===B.ElementaryStreamTypes.AUDIO&&(xe+=ie/ht)}}if(Oe===0&&xe===0){for(var St=0,kt=ne(ee,["sidx"]),gt=0;gt<kt.length;gt++){var ut=U(kt[gt]);ut!=null&&ut.references&&(St+=ut.references.reduce(function(Rt,Pt){return Rt+Pt.info.duration||0},0))}return St}return Oe||xe}function M(ee){var ue=H(ee,0),ie=8;1&ue&&(ie+=4),4&ue&&(ie+=4);for(var Oe=0,xe=H(ee,4),Ne=0;Ne<xe;Ne++)256&ue&&(Oe+=H(ee,ie),ie+=4),512&ue&&(ie+=4),1024&ue&&(ie+=4),2048&ue&&(ie+=4);return Oe}function L(ee,ue,ie){ne(ue,["moof","traf"]).forEach(function(Oe){ne(Oe,["tfhd"]).forEach(function(xe){var Ne=H(xe,4),Be=ee[Ne];if(Be){var je=Be.timescale||9e4;ne(Oe,["tfdt"]).forEach(function(pe){var Ie=pe[0],Ye=H(pe,4);if(Ie===0)Ye-=ie*je,z(pe,4,Ye=Math.max(Ye,0));else{Ye*=Math.pow(2,32),Ye+=H(pe,8),Ye-=ie*je,Ye=Math.max(Ye,0);var rt=Math.floor(Ye/(k+1)),yt=Math.floor(Ye%(k+1));z(pe,4,rt),z(pe,8,yt)}})}})})}function oe(ee){var ue={valid:null,remainder:null},ie=ne(ee,["moof"]);if(!ie)return ue;if(ie.length<2)return ue.remainder=ee,ue;var Oe=ie[ie.length-1];return ue.valid=(0,$.sliceUint8)(ee,0,Oe.byteOffset-8),ue.remainder=(0,$.sliceUint8)(ee,Oe.byteOffset-8),ue}function ye(ee,ue){var ie=new Uint8Array(ee.length+ue.length);return ie.set(ee),ie.set(ue,ee.length),ie}function W(ee,ue){var ie=[],Oe=ue.samples,xe=ue.timescale,Ne=ue.id,Be=!1;return ne(Oe,["moof"]).map(function(je){var pe=je.byteOffset-8;ne(je,["traf"]).map(function(Ie){var Ye=ne(Ie,["tfdt"]).map(function(rt){var yt=rt[0],ht=H(rt,4);return yt===1&&(ht*=Math.pow(2,32),ht+=H(rt,8)),ht/xe})[0];return Ye!==void 0&&(ee=Ye),ne(Ie,["tfhd"]).map(function(rt){var yt=H(rt,4),ht=16777215&H(rt,0),It=0,Dt=(16&ht)!=0,St=0,kt=(32&ht)!=0,gt=8;yt===Ne&&((1&ht)!=0&&(gt+=8),(2&ht)!=0&&(gt+=4),(8&ht)!=0&&(It=H(rt,gt),gt+=4),Dt&&(St=H(rt,gt),gt+=4),kt&&(gt+=4),ue.type==="video"&&(Be=function(ut){if(!ut)return!1;var Rt=ut.indexOf("."),Pt=Rt<0?ut:ut.substring(0,Rt);return Pt==="hvc1"||Pt==="hev1"||Pt==="dvh1"||Pt==="dvhe"}(ue.codec)),ne(Ie,["trun"]).map(function(ut){var Rt=ut[0],Pt=16777215&H(ut,0),jt=(1&Pt)!=0,zt=0,Nt=(4&Pt)!=0,dr=(256&Pt)!=0,J=0,O=(512&Pt)!=0,T=0,P=(1024&Pt)!=0,D=(2048&Pt)!=0,F=0,q=H(ut,4),Y=8;jt&&(zt=H(ut,Y),Y+=4),Nt&&(Y+=4);for(var he=zt+pe,Le=0;Le<q;Le++){if(dr?(J=H(ut,Y),Y+=4):J=It,O?(T=H(ut,Y),Y+=4):T=St,P&&(Y+=4),D&&(F=Rt===0?H(ut,Y):ce(ut,Y),Y+=4),ue.type===B.ElementaryStreamTypes.VIDEO)for(var Ae=0;Ae<T;){var Me=H(Oe,he);V(Be,Oe[he+=4])&&we(Oe.subarray(he,he+Me),Be?2:1,ee+F/xe,ie),he+=Me,Ae+=Me+4}ee+=J/xe}}))})})}),ie}function V(ee,ue){if(ee){var ie=ue>>1&63;return ie===39||ie===40}return(31&ue)==6}function we(ee,ue,ie,Oe){var xe=Re(ee),Ne=0;Ne+=ue;for(var Be=0,je=0,pe=!1,Ie=0;Ne<xe.length;){Be=0;do{if(Ne>=xe.length)break;Be+=Ie=xe[Ne++]}while(Ie===255);je=0;do{if(Ne>=xe.length)break;je+=Ie=xe[Ne++]}while(Ie===255);var Ye=xe.length-Ne;if(!pe&&Be===4&&Ne<xe.length){if(pe=!0,xe[Ne++]===181){var rt=Te(xe,Ne);if(Ne+=2,rt===49){var yt=H(xe,Ne);if(Ne+=4,yt===1195456820){var ht=xe[Ne++];if(ht===3){var It=xe[Ne++],Dt=64&It,St=Dt?2+3*(31&It):0,kt=new Uint8Array(St);if(Dt){kt[0]=It;for(var gt=1;gt<St;gt++)kt[gt]=xe[Ne++]}Oe.push({type:ht,payloadType:Be,pts:ie,bytes:kt})}}}}}else if(Be===5&&je<Ye){if(pe=!0,je>16){for(var ut=[],Rt=0;Rt<16;Rt++){var Pt=xe[Ne++].toString(16);ut.push(Pt.length==1?"0"+Pt:Pt),Rt!==3&&Rt!==5&&Rt!==7&&Rt!==9||ut.push("-")}for(var jt=je-16,zt=new Uint8Array(jt),Nt=0;Nt<jt;Nt++)zt[Nt]=xe[Ne++];Oe.push({payloadType:Be,pts:ie,uuid:ut.join(""),userData:(0,R.utf8ArrayToStr)(zt),userDataBytes:zt})}}else if(je<Ye)Ne+=je;else if(je>Ye)break}}function Re(ee){for(var ue=ee.byteLength,ie=[],Oe=1;Oe<ue-2;)ee[Oe]===0&&ee[Oe+1]===0&&ee[Oe+2]===3?(ie.push(Oe+2),Oe+=2):Oe++;if(ie.length===0)return ee;var xe=ue-ie.length,Ne=new Uint8Array(xe),Be=0;for(Oe=0;Oe<xe;Be++,Oe++)Be===ie[0]&&(Be++,ie.shift()),Ne[Oe]=ee[Be];return Ne}function Ce(ee){var ue=ee[0],ie="",Oe="",xe=0,Ne=0,Be=0,je=0,pe=0,Ie=0;if(ue===0){for(;le(ee.subarray(Ie,Ie+1))!=="\0";)ie+=le(ee.subarray(Ie,Ie+1)),Ie+=1;for(ie+=le(ee.subarray(Ie,Ie+1)),Ie+=1;le(ee.subarray(Ie,Ie+1))!=="\0";)Oe+=le(ee.subarray(Ie,Ie+1)),Ie+=1;Oe+=le(ee.subarray(Ie,Ie+1)),Ie+=1,xe=H(ee,12),Ne=H(ee,16),je=H(ee,20),pe=H(ee,24),Ie=28}else if(ue===1){xe=H(ee,Ie+=4);var Ye=H(ee,Ie+=4),rt=H(ee,Ie+=4);for(Ie+=4,Be=Math.pow(2,32)*Ye+rt,Number.isSafeInteger(Be)||(Be=Number.MAX_SAFE_INTEGER,console.warn("Presentation time exceeds safe integer limit and wrapped to max safe integer in parsing emsg box")),je=H(ee,Ie),pe=H(ee,Ie+=4),Ie+=4;le(ee.subarray(Ie,Ie+1))!=="\0";)ie+=le(ee.subarray(Ie,Ie+1)),Ie+=1;for(ie+=le(ee.subarray(Ie,Ie+1)),Ie+=1;le(ee.subarray(Ie,Ie+1))!=="\0";)Oe+=le(ee.subarray(Ie,Ie+1)),Ie+=1;Oe+=le(ee.subarray(Ie,Ie+1)),Ie+=1}return{schemeIdUri:ie,value:Oe,timeScale:xe,presentationTime:Be,presentationTimeDelta:Ne,eventDuration:je,id:pe,payload:ee.subarray(Ie,ee.byteLength)}}function ge(ee){for(var ue=arguments.length,ie=new Array(ue>1?ue-1:0),Oe=1;Oe<ue;Oe++)ie[Oe-1]=arguments[Oe];for(var xe=ie.length,Ne=8,Be=xe;Be--;)Ne+=ie[Be].byteLength;var je=new Uint8Array(Ne);for(je[0]=Ne>>24&255,je[1]=Ne>>16&255,je[2]=Ne>>8&255,je[3]=255&Ne,je.set(ee,4),Be=0,Ne=8;Be<xe;Be++)je.set(ie[Be],Ne),Ne+=ie[Be].byteLength;return je}function qe(ee,ue,ie){if(ee.byteLength!==16)throw new RangeError("Invalid system id");var Oe,xe,Ne;if(ue){Oe=1,xe=new Uint8Array(16*ue.length);for(var Be=0;Be<ue.length;Be++){var je=ue[Be];if(je.byteLength!==16)throw new RangeError("Invalid key");xe.set(je,16*Be)}}else Oe=0,xe=new Uint8Array;Oe>0?(Ne=new Uint8Array(4),ue.length>0&&new DataView(Ne.buffer).setUint32(0,ue.length,!1)):Ne=new Uint8Array;var pe=new Uint8Array(4);return ie&&ie.byteLength>0&&new DataView(pe.buffer).setUint32(0,ie.byteLength,!1),ge([112,115,115,104],new Uint8Array([Oe,0,0,0]),ee,Ne,xe,pe,ie||new Uint8Array)}function tt(ee){if(!(ee instanceof ArrayBuffer)||ee.byteLength<32)return null;var ue={version:0,systemId:"",kids:null,data:null},ie=new DataView(ee),Oe=ie.getUint32(0);if(ee.byteLength!==Oe&&Oe>44||ie.getUint32(4)!==1886614376||(ue.version=ie.getUint32(8)>>>24,ue.version>1))return null;ue.systemId=w.default.hexDump(new Uint8Array(ee,12,16));var xe=ie.getUint32(28);if(ue.version===0){if(Oe-32<xe)return null;ue.data=new Uint8Array(ee,32,xe)}else if(ue.version===1){ue.kids=[];for(var Ne=0;Ne<xe;Ne++)ue.kids.push(new Uint8Array(ee,32+16*Ne,16))}return ue}},673:(fe,re,N)=>{"use strict";function B(w,k,ve,Z){ve===void 0&&(ve=1),Z===void 0&&(Z=!1);var le=w*k*ve;return Z?Math.round(le):le}function $(w,k,ve,Z){return ve===void 0&&(ve=1),Z===void 0&&(Z=!1),B(w,k,1/ve,Z)}function R(w,k){return k===void 0&&(k=!1),B(w,1e3,11111111111111112e-21,k)}function p(w,k){return k===void 0&&(k=1),B(w,9e4,1/k)}N.r(re),N.d(re,{toMpegTsClockFromTimescale:()=>p,toMsFromMpegTsClock:()=>R,toTimescaleFromBase:()=>B,toTimescaleFromScale:()=>$})},145:(fe,re,N)=>{"use strict";function B($,R,p){return Uint8Array.prototype.slice?$.slice(R,p):new Uint8Array(Array.prototype.slice.call($,R,p))}N.r(re),N.d(re,{sliceUint8:()=>B})},729:fe=>{"use strict";var re=Object.prototype.hasOwnProperty,N="~";function B(){}function $(k,ve,Z){this.fn=k,this.context=ve,this.once=Z||!1}function R(k,ve,Z,le,Te){if(typeof Z!="function")throw new TypeError("The listener must be a function");var H=new $(Z,le||k,Te),ce=N?N+ve:ve;return k._events[ce]?k._events[ce].fn?k._events[ce]=[k._events[ce],H]:k._events[ce].push(H):(k._events[ce]=H,k._eventsCount++),k}function p(k,ve){--k._eventsCount==0?k._events=new B:delete k._events[ve]}function w(){this._events=new B,this._eventsCount=0}Object.create&&(B.prototype=Object.create(null),new B().__proto__||(N=!1)),w.prototype.eventNames=function(){var k,ve,Z=[];if(this._eventsCount===0)return Z;for(ve in k=this._events)re.call(k,ve)&&Z.push(N?ve.slice(1):ve);return Object.getOwnPropertySymbols?Z.concat(Object.getOwnPropertySymbols(k)):Z},w.prototype.listeners=function(k){var ve=N?N+k:k,Z=this._events[ve];if(!Z)return[];if(Z.fn)return[Z.fn];for(var le=0,Te=Z.length,H=new Array(Te);le<Te;le++)H[le]=Z[le].fn;return H},w.prototype.listenerCount=function(k){var ve=N?N+k:k,Z=this._events[ve];return Z?Z.fn?1:Z.length:0},w.prototype.emit=function(k,ve,Z,le,Te,H){var ce=N?N+k:k;if(!this._events[ce])return!1;var z,ne,U=this._events[ce],be=arguments.length;if(U.fn){switch(U.once&&this.removeListener(k,U.fn,void 0,!0),be){case 1:return U.fn.call(U.context),!0;case 2:return U.fn.call(U.context,ve),!0;case 3:return U.fn.call(U.context,ve,Z),!0;case 4:return U.fn.call(U.context,ve,Z,le),!0;case 5:return U.fn.call(U.context,ve,Z,le,Te),!0;case 6:return U.fn.call(U.context,ve,Z,le,Te,H),!0}for(ne=1,z=new Array(be-1);ne<be;ne++)z[ne-1]=arguments[ne];U.fn.apply(U.context,z)}else{var ke,He=U.length;for(ne=0;ne<He;ne++)switch(U[ne].once&&this.removeListener(k,U[ne].fn,void 0,!0),be){case 1:U[ne].fn.call(U[ne].context);break;case 2:U[ne].fn.call(U[ne].context,ve);break;case 3:U[ne].fn.call(U[ne].context,ve,Z);break;case 4:U[ne].fn.call(U[ne].context,ve,Z,le);break;default:if(!z)for(ke=1,z=new Array(be-1);ke<be;ke++)z[ke-1]=arguments[ke];U[ne].fn.apply(U[ne].context,z)}}return!0},w.prototype.on=function(k,ve,Z){return R(this,k,ve,Z,!1)},w.prototype.once=function(k,ve,Z){return R(this,k,ve,Z,!0)},w.prototype.removeListener=function(k,ve,Z,le){var Te=N?N+k:k;if(!this._events[Te])return this;if(!ve)return p(this,Te),this;var H=this._events[Te];if(H.fn)H.fn!==ve||le&&!H.once||Z&&H.context!==Z||p(this,Te);else{for(var ce=0,z=[],ne=H.length;ce<ne;ce++)(H[ce].fn!==ve||le&&!H[ce].once||Z&&H[ce].context!==Z)&&z.push(H[ce]);z.length?this._events[Te]=z.length===1?z[0]:z:p(this,Te)}return this},w.prototype.removeAllListeners=function(k){var ve;return k?(ve=N?N+k:k,this._events[ve]&&p(this,ve)):(this._events=new B,this._eventsCount=0),this},w.prototype.off=w.prototype.removeListener,w.prototype.addListener=w.prototype.on,w.prefixed=N,w.EventEmitter=w,fe.exports=w},945:function(fe){var re,N,B,$,R;re=/^(?=((?:[a-zA-Z0-9+\-.]+:)?))\1(?=((?:\/\/[^\/?#]*)?))\2(?=((?:(?:[^?#\/]*\/)*[^;?#\/]*)?))\3((?:;[^?#]*)?)(\?[^#]*)?(#[^]*)?$/,N=/^(?=([^\/?#]*))\1([^]*)$/,B=/(?:\/|^)\.(?=\/)/g,$=/(?:\/|^)\.\.\/(?!\.\.\/)[^\/]*(?=\/)/g,R={buildAbsoluteURL:function(p,w,k){if(k=k||{},p=p.trim(),!(w=w.trim())){if(!k.alwaysNormalize)return p;var ve=R.parseURL(p);if(!ve)throw new Error("Error trying to parse base URL.");return ve.path=R.normalizePath(ve.path),R.buildURLFromParts(ve)}var Z=R.parseURL(w);if(!Z)throw new Error("Error trying to parse relative URL.");if(Z.scheme)return k.alwaysNormalize?(Z.path=R.normalizePath(Z.path),R.buildURLFromParts(Z)):w;var le=R.parseURL(p);if(!le)throw new Error("Error trying to parse base URL.");if(!le.netLoc&&le.path&&le.path[0]!=="/"){var Te=N.exec(le.path);le.netLoc=Te[1],le.path=Te[2]}le.netLoc&&!le.path&&(le.path="/");var H={scheme:le.scheme,netLoc:Z.netLoc,path:null,params:Z.params,query:Z.query,fragment:Z.fragment};if(!Z.netLoc&&(H.netLoc=le.netLoc,Z.path[0]!=="/"))if(Z.path){var ce=le.path,z=ce.substring(0,ce.lastIndexOf("/")+1)+Z.path;H.path=R.normalizePath(z)}else H.path=le.path,Z.params||(H.params=le.params,Z.query||(H.query=le.query));return H.path===null&&(H.path=k.alwaysNormalize?R.normalizePath(Z.path):Z.path),R.buildURLFromParts(H)},parseURL:function(p){var w=re.exec(p);return w?{scheme:w[1]||"",netLoc:w[2]||"",path:w[3]||"",params:w[4]||"",query:w[5]||"",fragment:w[6]||""}:null},normalizePath:function(p){for(p=p.split("").reverse().join("").replace(B,"");p.length!==(p=p.replace($,"")).length;);return p.split("").reverse().join("")},buildURLFromParts:function(p){return p.scheme+p.netLoc+p.path+p.params+p.query+p.fragment}},fe.exports=R}},te={};function Se(fe){var re=te[fe];if(re!==void 0)return re.exports;var N=te[fe]={exports:{}};return X[fe].call(N.exports,N,N.exports,Se),N.exports}Se.m=X,Se.n=fe=>{var re=fe&&fe.__esModule?()=>fe.default:()=>fe;return Se.d(re,{a:re}),re},Se.d=(fe,re)=>{for(var N in re)Se.o(re,N)&&!Se.o(fe,N)&&Object.defineProperty(fe,N,{enumerable:!0,get:re[N]})},Se.o=(fe,re)=>Object.prototype.hasOwnProperty.call(fe,re),Se.r=fe=>{typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(fe,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(fe,"__esModule",{value:!0})};var De=Se(76);return De.default})())});var $i=ea(ta());var ia=ea(ra()),Wa=ia.default,lr=Wa;var hi=class extends Error{constructor(Se,De=hi.MEDIA_ERR_CUSTOM,fe){var re;super(Se);this.name="MediaError",this.code=De,this.fatal=fe!=null?fe:De>=hi.MEDIA_ERR_NETWORK&&De<=hi.MEDIA_ERR_ENCRYPTED,this.message||(this.message=(re=hi.defaultMessages[this.code])!=null?re:"")}},ur=hi;ur.MEDIA_ERR_ABORTED=1,ur.MEDIA_ERR_NETWORK=2,ur.MEDIA_ERR_DECODE=3,ur.MEDIA_ERR_SRC_NOT_SUPPORTED=4,ur.MEDIA_ERR_ENCRYPTED=5,ur.MEDIA_ERR_CUSTOM=100,ur.defaultMessages={1:"You aborted the media playback",2:"A network error caused the media download to fail.",3:"A media error caused playback to be aborted. The media could be corrupt or your browser does not support this format.",4:"An unsupported error occurred. The server or network failed, or your browser does not support this format.",5:"The media is encrypted and there are no keys to decrypt it."};var Xa=X=>X==null,Dn=(X,te)=>Xa(te)?!1:X in te,Xi={ANY:"any",MUTED:"muted"},Ii={VOD:"on-demand",ON_DEMAND:"on-demand",LIVE:"live",LL_LIVE:"ll-live",DVR:"live:dvr",LL_DVR:"ll-live:dvr"},Rn={MSE:"mse",NATIVE:"native"},zi={HEADER:"header",QUERY:"query",NONE:"none"},vs=Object.values(zi),Vr={M3U8:"application/vnd.apple.mpegurl",MP4:"video/mp4"},Qi={HLS:Vr.M3U8},ps=Object.keys(Qi),gs=[...Object.values(Vr),"hls","HLS"];var Rr=(X,te,Se,De,fe=X)=>{fe.addEventListener(te,Se,De),X.addEventListener("teardown",()=>{fe.removeEventListener(te,Se)},{once:!0})};function na(X,te,Se){te&&Se>te&&(Se=te);for(let De=0;De<X.length;De++)if(X.start(De)<=Se&&X.end(De)>=Se)return!0;return!1}var aa=X=>{let te=X.indexOf("?");if(te<0)return[X];let Se=X.slice(0,te),De=X.slice(te);return[Se,De]},In=X=>{let te=X.type;if(te){let De=te.toUpperCase();return Dn(De,Qi)?Qi[De]:te}let{src:Se}=X;return Se?za(Se):""},za=X=>{let te="";try{te=new URL(X).pathname}catch{console.error("invalid url")}let Se=te.lastIndexOf(".");if(Se<0)return"";let fe=te.slice(Se+1).toUpperCase();return Dn(fe,Vr)?Vr[fe]:""};var Qa=Object.values(Xi),sa=X=>typeof X=="boolean"||typeof X=="string"&&Qa.includes(X),oa=({autoplay:X},te,Se)=>{let De=!1,fe=!1,re=sa(X)?X:!!X,N=()=>{De||Rr(te,"playing",()=>{De=!0},{once:!0})};if(N(),Rr(te,"loadstart",()=>{De=!1,N(),Pn(te,re)},{once:!0}),Rr(te,"loadstart",()=>{Se||(fe=!Number.isFinite(te.duration)),Pn(te,re)},{once:!0}),Se&&Se.once(lr.Events.LEVEL_LOADED,($,R)=>{var p;fe=(p=R.details.live)!=null?p:!1}),!re){let $=()=>{!fe||(Se!=null&&Se.liveSyncPosition?te.currentTime=Se.liveSyncPosition:Number.isFinite(te.seekable.end(0))&&(te.currentTime=te.seekable.end(0)))};Se&&Rr(te,"play",()=>{te.preload==="metadata"?Se.once(lr.Events.LEVEL_UPDATED,$):$()},{once:!0})}return $=>{De||(re=sa($)?$:!!$,Pn(te,re))}},Pn=(X,te)=>{if(!te)return;let Se=X.muted,De=()=>X.muted=Se;switch(te){case Xi.ANY:X.play().catch(()=>{X.muted=!0,X.play().catch(De)});break;case Xi.MUTED:X.muted=!0,X.play().catch(De);break;default:X.play().catch(()=>{});break}};var la=({preload:X,src:te},Se,De)=>{let fe=w=>{w!=null&&["","none","metadata","auto"].includes(w)?Se.setAttribute("preload",w):Se.removeAttribute("preload")};if(!De)return fe(X),fe;let re=!1,N=!1,B=De.config.maxBufferLength,$=De.config.maxBufferSize,R=w=>{fe(w);let k=w!=null?w:Se.preload;N||k==="none"||(k==="metadata"?(De.config.maxBufferLength=1,De.config.maxBufferSize=1):(De.config.maxBufferLength=B,De.config.maxBufferSize=$),p())},p=()=>{!re&&te&&(re=!0,De.loadSource(te))};return Rr(Se,"play",()=>{N=!0,De.config.maxBufferLength=B,De.config.maxBufferSize=$,p()},{once:!0}),R(X),R};function ua(X,te){te.on(lr.Events.NON_NATIVE_TEXT_TRACKS_FOUND,(fe,{tracks:re})=>{re.forEach(N=>{var R;let B=(R=N.subtitleTrack)!=null?R:N.closedCaptions,$=te.subtitleTracks.findIndex(({lang:p,name:w,type:k})=>p==(B==null?void 0:B.lang)&&w===N.label&&k.toLowerCase()===N.kind);Cn(X,N.kind,N.label,B==null?void 0:B.lang,`${N.kind}${$}`)})});let Se=()=>{var N;if(!te.subtitleTracks.length)return;let fe=Array.from(X.textTracks).find(B=>B.id&&B.mode==="showing"&&["subtitles","captions"].includes(B.kind)),re=`${(N=te.subtitleTracks[te.subtitleTrack])==null?void 0:N.type.toLowerCase()}${te.subtitleTrack}`;if(fe&&(te.subtitleTrack<0||(fe==null?void 0:fe.id)!==re)){let B=te.subtitleTracks.findIndex(({lang:$,name:R,type:p})=>$==fe.language&&R===fe.label&&p.toLowerCase()===fe.kind);te.subtitleTrack=B}fe&&(fe==null?void 0:fe.id)===re&&fe.cues&&Array.from(fe.cues).forEach(B=>{fe.addCue(B)})};X.textTracks.addEventListener("change",Se),te.on(lr.Events.CUES_PARSED,(fe,{track:re,cues:N})=>{let B=X.textTracks.getTrackById(re);if(!B)return;let $=B.mode==="disabled";$&&(B.mode="hidden"),N.forEach(R=>{var p;(p=B.cues)!=null&&p.getCueById(R.id)||B.addCue(R)}),$&&(B.mode="disabled")}),te.once(lr.Events.DESTROYING,()=>{X.textTracks.removeEventListener("change",Se),X.querySelectorAll("track[data-removeondestroy]").forEach(re=>{re.remove()})});let De=()=>{Array.from(X.textTracks).forEach(fe=>{var re,N;if(!["subtitles","caption"].includes(fe.kind)&&fe.label==="thumbnails"){if(!((re=fe.cues)!=null&&re.length)){let B=X.querySelector('track[label="thumbnails"]'),$=(N=B==null?void 0:B.getAttribute("src"))!=null?N:"";B==null||B.removeAttribute("src"),setTimeout(()=>{B==null||B.setAttribute("src",$)},0)}fe.mode!=="hidden"&&(fe.mode="hidden")}})};te.once(lr.Events.MANIFEST_LOADED,De),te.once(lr.Events.MEDIA_ATTACHED,De)}function Cn(X,te,Se,De,fe){let re=document.createElement("track");return re.kind=te,re.label=Se,De&&(re.srclang=De),fe&&(re.id=fe),re.track.mode=["subtitles","captions"].includes(te)?"disabled":"hidden",re.setAttribute("data-removeondestroy",""),X.append(re),re.track}function Ja(X,te){let Se=Array.prototype.find.call(X.querySelectorAll("track"),De=>De.track===te);Se==null||Se.remove()}var Pi="cuepoints",xn=Object.freeze({label:Pi}),Ji=(X,{label:te=Pi}=xn)=>{var Se;return(Se=Array.from(X.querySelectorAll("track")).find(De=>De.track.label===te&&De.track.kind==="metadata"))==null?void 0:Se.track};async function da(X,te,Se=xn){let De=Ji(X,Se);if(!De){let{label:fe=Pi}=Se;De=Cn(X,"metadata",fe),De.mode="hidden",await new Promise(re=>setTimeout(()=>re(void 0),0))}return De.mode!=="hidden"&&(De.mode="hidden"),[...te].sort(({time:fe},{time:re})=>re-fe).forEach(({time:fe,value:re})=>{var w,k;let N=Array.prototype.findIndex.call(De==null?void 0:De.cues,ve=>ve.startTime>=fe),B=(w=De==null?void 0:De.cues)==null?void 0:w[N],$=B?B.startTime:Number.isFinite(X.duration)?X.duration:Number.MAX_SAFE_INTEGER,R=(k=De==null?void 0:De.cues)==null?void 0:k[N-1];R&&(R.endTime=fe);let p=new VTTCue(fe,$,JSON.stringify(re!=null?re:null));De.addCue(p)}),De}var ca=X=>({time:X.startTime,value:JSON.parse(X.text)});function $a(X,te={label:Pi}){let Se=Ji(X,te);return Se!=null&&Se.cues?Array.from(Se.cues,De=>ca(De)):[]}function ha(X,te={label:Pi}){var De;let Se=Ji(X,te);if(!!((De=Se==null?void 0:Se.activeCues)!=null&&De.length))return ca(Se.activeCues[0])}async function fa(X,te=xn){return new Promise(Se=>{Rr(X,"loadstart",async()=>{let De=await da(X,[],te);Rr(X,"cuechange",()=>{let fe=ha(X);if(fe){let re=new CustomEvent("cuepointchange",{composed:!0,bubbles:!0,detail:fe});X.dispatchEvent(re)}},{},De),Se(De)})})}var va,pa,Za=(pa=(va=globalThis==null?void 0:globalThis.navigator)==null?void 0:va.userAgent)!=null?pa:"",es=Za.toLowerCase().indexOf("android")!==-1,fi=new WeakMap,ya="mux.com",ga,ma,Ea=(ma=(ga=lr).isSupported)==null?void 0:ma.call(ga),ts=es,Hs=()=>$i.default.utils.now(),rs=$i.default.utils.generateUUID,Gs=(X,{domain:te=ya}={})=>{if(!X)return;let[Se,De=""]=aa(X);return`https://stream.${te}/${Se}.m3u8${De}`},is=X=>{if(!X)return;let[te]=X.split("?");return te||void 0},ns=X=>{if(!X||!X.startsWith("https://stream."))return;let[te]=new URL(X).pathname.slice(1).split(".m3u8");return te||void 0},as=X=>{var te,Se,De;return(te=X==null?void 0:X.metadata)!=null&&te.video_id?X.metadata.video_id:ba(X)&&(De=(Se=is(X.playbackId))!=null?Se:ns(X.src))!=null?De:X.src},js=X=>{var te;return(te=fi.get(X))==null?void 0:te.error},Ks=(X,te,Se)=>{ss(te,Se);let{metadata:De={}}=X,{view_session_id:fe=rs()}=De,re=as(X);De.view_session_id=fe,De.video_id=re,X.metadata=De,fi.set(te,{});let N=os(X,te);us(X,te,N),ds(X,te,N),fa(te);let B=oa(X,te,N),$=la(X,te,N);return{engine:N,setAutoplay:B,setPreload:$}},ss=(X,te)=>{let Se=te==null?void 0:te.engine;Se&&(Se.detachMedia(),Se.destroy()),(X==null?void 0:X.mux)&&!X.mux.deleted&&(X.mux.destroy(),delete X.mux),X&&(X.removeAttribute("src"),X.load(),X.removeEventListener("error",Sa),X.removeEventListener("error",On),X.removeEventListener("durationchange",_a),fi.delete(X),X.dispatchEvent(new Event("teardown")))};function Ta(X,te){var R;let Se=In(X);if(!(Se===Vr.M3U8))return!0;let fe=!Se||((R=te.canPlayType(Se))!=null?R:!0),{preferPlayback:re}=X,N=re===Rn.MSE,B=re===Rn.NATIVE;return fe&&(B||!(Ea&&(N||ts)))}var os=(X,te)=>{let{debug:Se,streamType:De,startTime:fe=-1,metadata:re,preferCmcd:N}=X,$=In(X)===Vr.M3U8,R=Ta(X,te);if($&&!R&&Ea){let p={backBufferLength:30,renderTextTracksNatively:!1,liveDurationInfinity:!0},w=ls(De),k=N!==zi.NONE?{useHeaders:N===zi.HEADER,sessionId:re.view_session_id,contentId:re.video_id}:void 0;return new lr({debug:Se,startPosition:fe,cmcd:k,...p,...w})}},ls=X=>[Ii.LIVE,Ii.DVR].includes(X)?{backBufferLength:8}:[Ii.LL_LIVE,Ii.LL_DVR].includes(X)?{backBufferLength:4,maxFragLookUpTolerance:.001}:{},ba=({playbackId:X,src:te,customDomain:Se})=>{if(X)return!0;if(typeof te!="string")return!1;let De=window==null?void 0:window.location.href,fe=new URL(te,De).hostname.toLocaleLowerCase();return fe.includes(ya)||!!Se&&fe.includes(Se.toLocaleLowerCase())},us=(X,te,Se)=>{var re;let{envKey:De}=X,fe=ba(X);if(De||fe){let{playerInitTime:N,playerSoftwareName:B,playerSoftwareVersion:$,beaconCollectionDomain:R,debug:p,disableCookies:w}=X,k={...X.metadata,video_title:((re=X==null?void 0:X.metadata)==null?void 0:re.video_title)||void 0},ve=Z=>typeof Z.player_error_code=="string"?!1:typeof X.errorTranslator=="function"?X.errorTranslator(Z):Z;$i.default.monitor(te,{debug:p,beaconCollectionDomain:R,hlsjs:Se,Hls:Se?lr:void 0,automaticErrorTracking:!1,errorTranslator:ve,disableCookies:w,data:{...De?{env_key:De}:{},player_software_name:B,player_software:B,player_software_version:$,player_init_time:N,...k}})}},ds=(X,te,Se)=>{var re;let De=Ta(X,te),{src:fe}=X;te&&De?(typeof fe=="string"?(te.setAttribute("src",fe),X.startTime&&(((re=fi.get(te))!=null?re:{}).startTime=X.startTime,te.addEventListener("durationchange",_a,{once:!0}))):te.removeAttribute("src"),te.addEventListener("error",Sa),te.addEventListener("error",On)):Se&&fe?(Se.on(lr.Events.ERROR,(N,B)=>{let $={[lr.ErrorTypes.NETWORK_ERROR]:ur.MEDIA_ERR_NETWORK,[lr.ErrorTypes.MEDIA_ERROR]:ur.MEDIA_ERR_DECODE},R=new ur("",$[B.type]);R.fatal=B.fatal,R.data=B,te.dispatchEvent(new CustomEvent("error",{detail:R}))}),te.addEventListener("error",On),ua(te,Se),Se.attachMedia(te)):console.error("It looks like the video you're trying to play will not work on this system! If possible, try upgrading to the newest versions of your browser or software.")};function _a(X){var De;let te=X.target,Se=(De=fi.get(te))==null?void 0:De.startTime;if(!!Se&&na(te.seekable,te.duration,Se)){let fe=te.preload==="auto";fe&&(te.preload="none"),te.currentTime=Se,fe&&(te.preload="auto")}}async function Sa(X){if(!X.isTrusted)return;X.stopImmediatePropagation();let te=X.target;if(!(te!=null&&te.error))return;let{message:Se,code:De}=te.error,fe=new ur(Se,De);if(te.src&&(De!==ur.MEDIA_ERR_DECODE||De!==void 0))try{let{status:re}=await fetch(te.src);fe.data={response:{code:re}}}catch{}te.dispatchEvent(new CustomEvent("error",{detail:fe}))}function On(X){var De,fe;if(!(X instanceof CustomEvent)||!(X.detail instanceof ur))return;let te=X.target,Se=X.detail;!Se||!Se.fatal||(((De=fi.get(te))!=null?De:{}).error=Se,(fe=te.mux)==null||fe.emit("error",{player_error_code:Se.code,player_error_message:Se.message}))}var export_mux=$i.default;export{Xi as AutoplayTypes,vs as CmcdTypeValues,zi as CmcdTypes,Vr as ExtensionMimeTypeMap,lr as Hls,ur as MediaError,Qi as MimeTypeShorthandMap,Rn as PlaybackTypes,Ii as StreamTypes,da as addCuePoints,Cn as addTextTrack,gs as allMediaTypes,Hs as generatePlayerInitTime,rs as generateUUID,ha as getActiveCuePoint,$a as getCuePoints,Ji as getCuePointsTrack,js as getError,ls as getStreamTypeConfig,Ks as initialize,Dn as isKeyOf,ba as isMuxVideoSrc,ds as loadMedia,export_mux as mux,Ja as removeTextTrack,fa as setupCuePoints,os as setupHls,us as setupMux,ps as shorthandKeys,ss as teardown,Gs as toMuxVideoURL};
|
|
33
33
|
/*!
|
|
34
34
|
* JavaScript Cookie v2.1.3
|
|
35
35
|
* https://github.com/js-cookie/js-cookie
|