@mux/mux-audio 0.9.1 → 0.9.2-canary.0-e7d6b3f

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/mux-audio.js CHANGED
@@ -1,34 +1,35 @@
1
- "use strict";(()=>{var dn=Object.create;var qr=Object.defineProperty;var cn=Object.getOwnPropertyDescriptor;var hn=Object.getOwnPropertyNames;var vn=Object.getPrototypeOf,gn=Object.prototype.hasOwnProperty;var ei=(j,R)=>()=>(R||j((R={exports:{}}).exports,R),R.exports);var mn=(j,R,l,C)=>{if(R&&typeof R=="object"||typeof R=="function")for(let L of hn(R))!gn.call(j,L)&&L!==l&&qr(j,L,{get:()=>R[L],enumerable:!(C=cn(R,L))||C.enumerable});return j};var fr=(j,R,l)=>(l=j!=null?dn(vn(j)):{},mn(R||!j||!j.__esModule?qr(l,"default",{value:j,enumerable:!0}):l,j));var _r=(j,R,l)=>{if(!R.has(j))throw TypeError("Cannot "+l)};var qe=(j,R,l)=>(_r(j,R,"read from private field"),l?l.call(j):R.get(j)),ft=(j,R,l)=>{if(R.has(j))throw TypeError("Cannot add the same private member more than once");R instanceof WeakSet?R.add(j):R.set(j,l)},dt=(j,R,l,C)=>(_r(j,R,"write to private field"),C?C.call(j,l):R.set(j,l),l);var At=(j,R,l)=>(_r(j,R,"access private method"),l);var ii=ei((dr,Ir)=>{(function(){var j,R;j=this,R=function(){return function(){var l={80:function(A,w,O){A.exports=O(728).default},728:function(A,w,O){"use strict";O.d(w,{default:function(){return un}});var b=O(48),_=O.n(b),y=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(F){var P=16*Math.random()|0;return(F==="x"?P:3&P|8).toString(16)})},x=function(){return("000000"+(Math.random()*Math.pow(36,6)<<0).toString(36)).slice(-6)},D=function(F){return F&&F.nodeName!==void 0?(F.muxId||(F.muxId=F.id||x()),F.muxId):F},E=function(F){var P;F&&F.nodeName!==void 0?F=D(P=F):P=document.querySelector(F);var M=P&&P.nodeName?P.nodeName.toLowerCase():"";return[P,F,M]},m=O(640),p=O.n(m),f=p().methodFactory;p().methodFactory=function(F,P,M){var N=f(F,P,M);return function(){for(var K=["[mux]"],V=0;V<arguments.length;V++)K.push(arguments[V]);N.apply(void 0,K)}},p().setLevel(p().getLevel());var e=p();function s(){return(_().doNotTrack||_().navigator&&_().navigator.doNotTrack)==="1"}var h={now:function(){var F=_().performance,P=F&&F.timing,M=P&&P.navigationStart,N=typeof M=="number"&&typeof F.now=="function"?M+F.now():Date.now();return Math.round(N)}},g=O(678),i=O.n(g),r=function(F){return o(F)[0]},o=function(F){if(typeof F!="string"||F==="")return["localhost"];var P,M=(F.match(/^(([^:\/?#]+):)?(\/\/([^\/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/)||[])[4];return M&&(P=(M.match(/[^\.]+\.[^\.]+$/)||[])[0]),[M,P]},c={exists:function(){var F=_().performance;return(F&&F.timing)!==void 0},domContentLoadedEventEnd:function(){var F=_().performance,P=F&&F.timing;return P&&P.domContentLoadedEventEnd},navigationStart:function(){var F=_().performance,P=F&&F.timing;return P&&P.navigationStart}};function t(F,P,M){M=M===void 0?1:M,F[P]=F[P]||0,F[P]+=M}var n=["x-cdn","content-type","x-request-id"];function u(F){var P={};return(F=F||"").trim().split(/[\r\n]+/).forEach(function(M){if(M){var N=M.split(": "),K=N.shift();K&&(n.indexOf(K.toLowerCase())>=0||K.toLowerCase().indexOf("x-litix-")===0)&&(P[K]=N.join(": "))}}),P}var a=function(F){var P={};for(var M in F){var N=F[M];N["DATA-ID"].search("io.litix.data.")!==-1&&(P[N["DATA-ID"].replace("io.litix.data.","")]=N.VALUE)}return P};function d(F,P){var M=Object.keys(F);if(Object.getOwnPropertySymbols){var N=Object.getOwnPropertySymbols(F);P&&(N=N.filter(function(K){return Object.getOwnPropertyDescriptor(F,K).enumerable})),M.push.apply(M,N)}return M}function v(F){for(var P=1;P<arguments.length;P++){var M=arguments[P]!=null?arguments[P]:{};P%2?d(Object(M),!0).forEach(function(N){S(F,N,M[N])}):Object.getOwnPropertyDescriptors?Object.defineProperties(F,Object.getOwnPropertyDescriptors(M)):d(Object(M)).forEach(function(N){Object.defineProperty(F,N,Object.getOwnPropertyDescriptor(M,N))})}return F}function S(F,P,M){return P in F?Object.defineProperty(F,P,{value:M,enumerable:!0,configurable:!0,writable:!0}):F[P]=M,F}var T=function(F){if(!F)return{};var P=c.navigationStart(),M=F.loading,N=M?M.start:F.trequest,K=M?M.first:F.tfirst,V=M?M.end:F.tload;return{bytesLoaded:F.total,requestStart:Math.round(P+N),responseStart:Math.round(P+K),responseEnd:Math.round(P+V)}},I=function(F){if(F&&typeof F.getAllResponseHeaders=="function")return u(F.getAllResponseHeaders())};function k(F,P){var M=Object.keys(F);if(Object.getOwnPropertySymbols){var N=Object.getOwnPropertySymbols(F);P&&(N=N.filter(function(K){return Object.getOwnPropertyDescriptor(F,K).enumerable})),M.push.apply(M,N)}return M}function B(F){for(var P=1;P<arguments.length;P++){var M=arguments[P]!=null?arguments[P]:{};P%2?k(Object(M),!0).forEach(function(N){U(F,N,M[N])}):Object.getOwnPropertyDescriptors?Object.defineProperties(F,Object.getOwnPropertyDescriptors(M)):k(Object(M)).forEach(function(N){Object.defineProperty(F,N,Object.getOwnPropertyDescriptor(M,N))})}return F}function U(F,P,M){return P in F?Object.defineProperty(F,P,{value:M,enumerable:!0,configurable:!0,writable:!0}):F[P]=M,F}var W=function(F,P){if(!F||typeof F.getRequests!="function")return{};var M=F.getRequests({state:"executed"});if(M.length===0)return{};var N,K=M[M.length-1],V=r(K.url),G=K.url,X=K.bytesLoaded,J=new Date(K.requestStartDate).getTime(),Q=new Date(K.firstByteDate).getTime(),Z=new Date(K.requestEndDate).getTime(),ce=isNaN(K.duration)?0:K.duration,oe=typeof P.getMetricsFor=="function"?P.getMetricsFor(K.mediaType).HttpList:P.getDashMetrics().getHttpRequests(K.mediaType);return oe.length>0&&(N=u(oe[oe.length-1]._responseHeaders||"")),{requestStart:J,requestResponseStart:Q,requestResponseEnd:Z,requestBytesLoaded:X,requestResponseHeaders:N,requestMediaDuration:ce,requestHostname:V,requestUrl:G}},H=function(F,P){var M=P.getQualityFor(F),N=P.getCurrentTrackFor(F).bitrateList;return N?{currentLevel:M,renditionWidth:N[M].width||null,renditionHeight:N[M].height||null,renditionBitrate:N[M].bandwidth}:{}},z=function(F){var P;return(P=F.match(/.*codecs\*?="(.*)"/))===null||P===void 0?void 0:P[1]};function Y(F,P){for(var M=0;M<P.length;M++){var N=P[M];N.enumerable=N.enumerable||!1,N.configurable=!0,"value"in N&&(N.writable=!0),Object.defineProperty(F,N.key,N)}}var $=0,ee=function(){function F(){(function(K,V){if(!(K instanceof V))throw new TypeError("Cannot call a class as a function")})(this,F)}var P,M,N;return P=F,M=[{key:"on",value:function(K,V,G){return V._eventEmitterGuid=V._eventEmitterGuid||++$,this._listeners=this._listeners||{},this._listeners[K]=this._listeners[K]||[],G&&(V=V.bind(G)),this._listeners[K].push(V),V}},{key:"off",value:function(K,V){var G=this._listeners&&this._listeners[K];G&&G.forEach(function(X,J){X._eventEmitterGuid===V._eventEmitterGuid&&G.splice(J,1)})}},{key:"one",value:function(K,V,G){var X=this;V._eventEmitterGuid=V._eventEmitterGuid||++$;var J=function Q(){X.off(K,Q),V.apply(G||this,arguments)};J._eventEmitterGuid=V._eventEmitterGuid,this.on(K,J)}},{key:"emit",value:function(K,V){var G=this;if(this._listeners){V=V||{};var X=this._listeners["before*"]||[],J=this._listeners[K]||[],Q=this._listeners["after"+K]||[],Z=function(ce,oe){(ce=ce.slice()).forEach(function(fe){fe.call(G,{type:K},oe)})};Z(X,V),Z(J,V),Z(Q,V)}}}],M&&Y(P.prototype,M),N&&Y(P,N),Object.defineProperty(P,"prototype",{writable:!1}),F}(),q=ee;function re(F,P){for(var M=0;M<P.length;M++){var N=P[M];N.enumerable=N.enumerable||!1,N.configurable=!0,"value"in N&&(N.writable=!0),Object.defineProperty(F,N.key,N)}}var ae=function(){function F(K){var V=this;(function(G,X){if(!(G instanceof X))throw new TypeError("Cannot call a class as a function")})(this,F),this.pm=K,this._playbackHeartbeatInterval=null,this._playheadShouldBeProgressing=!1,K.on("playing",function(){V._playheadShouldBeProgressing=!0}),K.on("play",this._startPlaybackHeartbeatInterval.bind(this)),K.on("playing",this._startPlaybackHeartbeatInterval.bind(this)),K.on("adbreakstart",this._startPlaybackHeartbeatInterval.bind(this)),K.on("adplay",this._startPlaybackHeartbeatInterval.bind(this)),K.on("adplaying",this._startPlaybackHeartbeatInterval.bind(this)),K.on("seeking",this._startPlaybackHeartbeatInterval.bind(this)),K.on("devicewake",this._startPlaybackHeartbeatInterval.bind(this)),K.on("viewstart",this._startPlaybackHeartbeatInterval.bind(this)),K.on("rebufferstart",this._startPlaybackHeartbeatInterval.bind(this)),K.on("pause",this._stopPlaybackHeartbeatInterval.bind(this)),K.on("ended",this._stopPlaybackHeartbeatInterval.bind(this)),K.on("viewend",this._stopPlaybackHeartbeatInterval.bind(this)),K.on("error",this._stopPlaybackHeartbeatInterval.bind(this)),K.on("aderror",this._stopPlaybackHeartbeatInterval.bind(this)),K.on("adpause",this._stopPlaybackHeartbeatInterval.bind(this)),K.on("adended",this._stopPlaybackHeartbeatInterval.bind(this)),K.on("adbreakend",this._stopPlaybackHeartbeatInterval.bind(this)),K.on("seeked",function(){K.data.player_is_paused?V._stopPlaybackHeartbeatInterval():V._startPlaybackHeartbeatInterval()}),K.on("timeupdate",function(){V._playbackHeartbeatInterval!==null&&K.emit("playbackheartbeat")}),K.on("devicesleep",function(G,X){V._playbackHeartbeatInterval!==null&&(_().clearInterval(V._playbackHeartbeatInterval),K.emit("playbackheartbeatend",{viewer_time:X.viewer_time}),V._playbackHeartbeatInterval=null)})}var P,M,N;return P=F,(M=[{key:"_startPlaybackHeartbeatInterval",value:function(){var K=this;this._playbackHeartbeatInterval===null&&(this.pm.emit("playbackheartbeat"),this._playbackHeartbeatInterval=_().setInterval(function(){K.pm.emit("playbackheartbeat")},this.pm.playbackHeartbeatTime))}},{key:"_stopPlaybackHeartbeatInterval",value:function(){this._playheadShouldBeProgressing=!1,this._playbackHeartbeatInterval!==null&&(_().clearInterval(this._playbackHeartbeatInterval),this.pm.emit("playbackheartbeatend"),this._playbackHeartbeatInterval=null)}}])&&re(P.prototype,M),N&&re(P,N),Object.defineProperty(P,"prototype",{writable:!1}),F}();function ne(F,P){for(var M=0;M<P.length;M++){var N=P[M];N.enumerable=N.enumerable||!1,N.configurable=!0,"value"in N&&(N.writable=!0),Object.defineProperty(F,N.key,N)}}function te(F,P,M){return P&&ne(F.prototype,P),M&&ne(F,M),Object.defineProperty(F,"prototype",{writable:!1}),F}var he=te(function F(P){var M=this;(function(N,K){if(!(N instanceof K))throw new TypeError("Cannot call a class as a function")})(this,F),P.on("viewinit",function(){M.viewErrored=!1}),P.on("error",function(N,K){try{var V=P.errorTranslator({player_error_code:K.player_error_code,player_error_message:K.player_error_message,player_error_context:K.player_error_context});V?(P.data.player_error_code=V.player_error_code||K.player_error_code,P.data.player_error_message=V.player_error_message||K.player_error_message,P.data.player_error_context=V.player_error_context||K.player_error_context,M.viewErrored=!0):(delete P.data.player_error_code,delete P.data.player_error_message,delete P.data.player_error_context)}catch(G){P.mux.log.warn("Exception in error translator callback.",G),M.viewErrored=!0}})});function ve(F,P){for(var M=0;M<P.length;M++){var N=P[M];N.enumerable=N.enumerable||!1,N.configurable=!0,"value"in N&&(N.writable=!0),Object.defineProperty(F,N.key,N)}}var ie=function(){function F(K){(function(V,G){if(!(V instanceof G))throw new TypeError("Cannot call a class as a function")})(this,F),this.pm=K,this._watchTimeTrackerLastCheckedTime=null,K.on("playbackheartbeat",this._updateWatchTime.bind(this)),K.on("playbackheartbeatend",this._clearWatchTimeState.bind(this))}var P,M,N;return P=F,(M=[{key:"_updateWatchTime",value:function(K,V){var G=V.viewer_time;this._watchTimeTrackerLastCheckedTime===null&&(this._watchTimeTrackerLastCheckedTime=G),t(this.pm.data,"view_watch_time",G-this._watchTimeTrackerLastCheckedTime),this._watchTimeTrackerLastCheckedTime=G}},{key:"_clearWatchTimeState",value:function(K,V){this._updateWatchTime(K,V),this._watchTimeTrackerLastCheckedTime=null}}])&&ve(P.prototype,M),N&&ve(P,N),Object.defineProperty(P,"prototype",{writable:!1}),F}();function Te(F,P){for(var M=0;M<P.length;M++){var N=P[M];N.enumerable=N.enumerable||!1,N.configurable=!0,"value"in N&&(N.writable=!0),Object.defineProperty(F,N.key,N)}}var pe=function(){function F(K){(function(V,G){if(!(V instanceof G))throw new TypeError("Cannot call a class as a function")})(this,F),this.pm=K,this._playbackTimeTrackerLastPlayheadPosition=-1,K.on("playbackheartbeat",this._updatePlaybackTime.bind(this)),K.on("playbackheartbeatend",this._clearPlaybackTimeState.bind(this)),K.on("seeking",this._clearPlaybackTimeState.bind(this))}var P,M,N;return P=F,(M=[{key:"_updatePlaybackTime",value:function(){var K=this.pm.data.player_playhead_time;if(this._playbackTimeTrackerLastPlayheadPosition>=0&&K>this._playbackTimeTrackerLastPlayheadPosition){var V=K-this._playbackTimeTrackerLastPlayheadPosition;V<=1e3&&t(this.pm.data,"view_content_playback_time",V)}this._playbackTimeTrackerLastPlayheadPosition=K}},{key:"_clearPlaybackTimeState",value:function(){this._updatePlaybackTime(),this._playbackTimeTrackerLastPlayheadPosition=-1}}])&&Te(P.prototype,M),N&&Te(P,N),Object.defineProperty(P,"prototype",{writable:!1}),F}();function xe(F,P){for(var M=0;M<P.length;M++){var N=P[M];N.enumerable=N.enumerable||!1,N.configurable=!0,"value"in N&&(N.writable=!0),Object.defineProperty(F,N.key,N)}}var Me=function(){function F(K){(function(G,X){if(!(G instanceof X))throw new TypeError("Cannot call a class as a function")})(this,F),this.pm=K;var V=this._updatePlayheadTime.bind(this);K.on("playbackheartbeat",V),K.on("playbackheartbeatend",V),K.on("timeupdate",V),K.on("destroy",function(){K.off("timeupdate",V)})}var P,M,N;return P=F,(M=[{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(K,V){var G=this,X=function(){G.pm.currentFragmentPDT&&G.pm.currentFragmentStart&&(G.pm.data.player_program_time=G.pm.currentFragmentPDT+G.pm.data.player_playhead_time-G.pm.currentFragmentStart)};if(V&&V.player_playhead_time)this.pm.data.player_playhead_time=V.player_playhead_time,X(),this._updateMaxPlayheadPosition();else if(this.pm.getPlayheadTime){var J=this.pm.getPlayheadTime();J!==void 0&&(this.pm.data.player_playhead_time=J,X(),this._updateMaxPlayheadPosition())}}}])&&xe(P.prototype,M),N&&xe(P,N),Object.defineProperty(P,"prototype",{writable:!1}),F}();function Ae(F,P){for(var M=0;M<P.length;M++){var N=P[M];N.enumerable=N.enumerable||!1,N.configurable=!0,"value"in N&&(N.writable=!0),Object.defineProperty(F,N.key,N)}}function We(F,P,M){return P&&Ae(F.prototype,P),M&&Ae(F,M),Object.defineProperty(F,"prototype",{writable:!1}),F}var Ie=We(function F(P){if(function(V,G){if(!(V instanceof G))throw new TypeError("Cannot call a class as a function")}(this,F),!P.disableRebufferTracking){var M,N=function(V,G){K(G),M=void 0},K=function(V){if(M){var G=V.viewer_time-M;t(P.data,"view_rebuffer_duration",G),M=V.viewer_time}P.data.view_watch_time>=0&&P.data.view_rebuffer_count>0&&(P.data.view_rebuffer_frequency=P.data.view_rebuffer_count/P.data.view_watch_time,P.data.view_rebuffer_percentage=P.data.view_rebuffer_duration/P.data.view_watch_time)};P.on("playbackheartbeat",function(V,G){return K(G)}),P.on("rebufferstart",function(V,G){M||(t(P.data,"view_rebuffer_count",1),M=G.viewer_time,P.one("rebufferend",N))}),P.on("viewinit",function(){M=void 0,P.off("rebufferend",N)})}});function Be(F,P){for(var M=0;M<P.length;M++){var N=P[M];N.enumerable=N.enumerable||!1,N.configurable=!0,"value"in N&&(N.writable=!0),Object.defineProperty(F,N.key,N)}}var be=function(){function F(K){var V=this;(function(G,X){if(!(G instanceof X))throw new TypeError("Cannot call a class as a function")})(this,F),this.pm=K,K.disableRebufferTracking||K.disablePlayheadRebufferTracking||(this._lastCheckedTime=null,this._lastPlayheadTime=null,this._lastPlayheadTimeUpdatedTime=null,K.on("playbackheartbeat",this._checkIfRebuffering.bind(this)),K.on("playbackheartbeatend",this._cleanupRebufferTracker.bind(this)),K.on("seeking",function(){V._cleanupRebufferTracker(null,{viewer_time:h.now()})}))}var P,M,N;return P=F,M=[{key:"_checkIfRebuffering",value:function(K,V){if(this.pm.seekingTracker.isSeeking||this.pm.adTracker.isAdBreak||!this.pm.playbackHeartbeat._playheadShouldBeProgressing)this._cleanupRebufferTracker(K,V);else if(this._lastCheckedTime!==null)if(this._lastPlayheadTime===this.pm.data.player_playhead_time){var G=V.viewer_time-this._lastPlayheadTimeUpdatedTime;typeof this.pm.sustainedRebufferThreshold=="number"&&G>=this.pm.sustainedRebufferThreshold&&(this._rebuffering||(this._rebuffering=!0,this.pm.emit("rebufferstart",{viewer_time:this._lastPlayheadTimeUpdatedTime}))),this._lastCheckedTime=V.viewer_time}else this._cleanupRebufferTracker(K,V,!0);else this._prepareRebufferTrackerState(V.viewer_time)}},{key:"_clearRebufferTrackerState",value:function(){this._lastCheckedTime=null,this._lastPlayheadTime=null,this._lastPlayheadTimeUpdatedTime=null}},{key:"_prepareRebufferTrackerState",value:function(K){this._lastCheckedTime=K,this._lastPlayheadTime=this.pm.data.player_playhead_time,this._lastPlayheadTimeUpdatedTime=K}},{key:"_cleanupRebufferTracker",value:function(K,V){var G=arguments.length>2&&arguments[2]!==void 0&&arguments[2];if(this._rebuffering)this._rebuffering=!1,this.pm.emit("rebufferend",{viewer_time:V.viewer_time});else{if(this._lastCheckedTime===null)return;var X=this.pm.data.player_playhead_time-this._lastPlayheadTime,J=V.viewer_time-this._lastPlayheadTimeUpdatedTime;typeof this.pm.minimumRebufferDuration=="number"&&X>0&&J-X>this.pm.minimumRebufferDuration&&(this.pm.emit("rebufferstart",{viewer_time:this._lastPlayheadTimeUpdatedTime}),this.pm.emit("rebufferend",{viewer_time:this._lastPlayheadTimeUpdatedTime+J-X}))}G?this._prepareRebufferTrackerState(V.viewer_time):this._clearRebufferTrackerState()}}],M&&Be(P.prototype,M),N&&Be(P,N),Object.defineProperty(P,"prototype",{writable:!1}),F}(),Ge=be;function He(F,P){for(var M=0;M<P.length;M++){var N=P[M];N.enumerable=N.enumerable||!1,N.configurable=!0,"value"in N&&(N.writable=!0),Object.defineProperty(F,N.key,N)}}var Qe=function(){function F(K){var V=this;(function(G,X){if(!(G instanceof X))throw new TypeError("Cannot call a class as a function")})(this,F),this.pm=K,K.on("viewinit",function(){var G=K.data,X=G.view_id;if(!G.view_program_changed){var J=function(Q,Z){var ce=Z.viewer_time;Q.type==="playing"&&K.data.view_time_to_first_frame===void 0?V.calculateTimeToFirstFrame(ce||h.now(),X):Q.type!=="adplaying"||K.data.view_time_to_first_frame!==void 0&&!V._inPrerollPosition()||V.calculateTimeToFirstFrame(ce||h.now(),X)};K.one("playing",J),K.one("adplaying",J),K.one("viewend",function(){K.off("playing",J),K.off("adplaying",J)})}})}var P,M,N;return P=F,(M=[{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(K,V){V===this.pm.data.view_id&&(this.pm.watchTimeTracker._updateWatchTime(null,{viewer_time:K}),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))}}])&&He(P.prototype,M),N&&He(P,N),Object.defineProperty(P,"prototype",{writable:!1}),F}();function Ue(F,P){for(var M=0;M<P.length;M++){var N=P[M];N.enumerable=N.enumerable||!1,N.configurable=!0,"value"in N&&(N.writable=!0),Object.defineProperty(F,N.key,N)}}function it(F,P,M){return P&&Ue(F.prototype,P),M&&Ue(F,M),Object.defineProperty(F,"prototype",{writable:!1}),F}var we=it(function F(P){var M=this;(function(N,K){if(!(N instanceof K))throw new TypeError("Cannot call a class as a function")})(this,F),P.on("viewinit",function(){M._lastPlayheadPosition=-1}),["pause","rebufferstart","seeking","error","adbreakstart","hb"].forEach(function(N){P.on(N,function(){if(M._lastPlayheadPosition>=0&&P.data.player_playhead_time>=0&&M._lastPlayerWidth>=0&&M._lastSourceWidth>0&&M._lastPlayerHeight>=0&&M._lastSourceHeight>0){var K=P.data.player_playhead_time-M._lastPlayheadPosition;if(K<0)return void(M._lastPlayheadPosition=-1);var V=Math.min(M._lastPlayerWidth/M._lastSourceWidth,M._lastPlayerHeight/M._lastSourceHeight),G=Math.max(0,V-1),X=Math.max(0,1-V);P.data.view_max_upscale_percentage=Math.max(P.data.view_max_upscale_percentage||0,G),P.data.view_max_downscale_percentage=Math.max(P.data.view_max_downscale_percentage||0,X),t(P.data,"view_total_content_playback_time",K),t(P.data,"view_total_upscaling",G*K),t(P.data,"view_total_downscaling",X*K)}M._lastPlayheadPosition=-1})}),["playing","hb"].forEach(function(N){P.on(N,function(){M._lastPlayheadPosition=P.data.player_playhead_time,M._lastPlayerWidth=P.data.player_width,M._lastPlayerHeight=P.data.player_height,M._lastSourceWidth=P.data.video_source_width,M._lastSourceHeight=P.data.video_source_height})})});function nt(F,P){for(var M=0;M<P.length;M++){var N=P[M];N.enumerable=N.enumerable||!1,N.configurable=!0,"value"in N&&(N.writable=!0),Object.defineProperty(F,N.key,N)}}function Oe(F,P,M){return P&&nt(F.prototype,P),M&&nt(F,M),Object.defineProperty(F,"prototype",{writable:!1}),F}var Ce=Oe(function F(P){var M=this;(function(N,K){if(!(N instanceof K))throw new TypeError("Cannot call a class as a function")})(this,F),this.isSeeking=!1,P.on("seeking",function(N,K){i()(P.data,K),M._lastSeekingTime=h.now(),M.isSeeking===!1&&(M.isSeeking=!0,P.send("seeking"))}),P.on("seeked",function(){M.isSeeking=!1;var N=M._lastSeekingTime||h.now(),K=h.now()-N;t(P.data,"view_seek_count",1),t(P.data,"view_seek_duration",K);var V=P.data.view_max_seek_time||0;P.data.view_max_seek_time=Math.max(V,K)}),P.on("viewend",function(){M.isSeeking=!1})});function Ye(F,P){return function(M){if(Array.isArray(M))return M}(F)||function(M,N){var K=M==null?null:typeof Symbol!="undefined"&&M[Symbol.iterator]||M["@@iterator"];if(K!=null){var V,G,X=[],J=!0,Q=!1;try{for(K=K.call(M);!(J=(V=K.next()).done)&&(X.push(V.value),!N||X.length!==N);J=!0);}catch(Z){Q=!0,G=Z}finally{try{J||K.return==null||K.return()}finally{if(Q)throw G}}return X}}(F,P)||function(M,N){if(M){if(typeof M=="string")return Re(M,N);var K=Object.prototype.toString.call(M).slice(8,-1);return K==="Object"&&M.constructor&&(K=M.constructor.name),K==="Map"||K==="Set"?Array.from(M):K==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(K)?Re(M,N):void 0}}(F,P)||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 Re(F,P){(P==null||P>F.length)&&(P=F.length);for(var M=0,N=new Array(P);M<P;M++)N[M]=F[M];return N}function Le(F,P){for(var M=0;M<P.length;M++){var N=P[M];N.enumerable=N.enumerable||!1,N.configurable=!0,"value"in N&&(N.writable=!0),Object.defineProperty(F,N.key,N)}}var at=function(F,P){F.push(P),F.sort(function(M,N){return M.viewer_time-N.viewer_time})},ze=["adbreakstart","adrequest","adresponse","adplay","adplaying","adpause","adended","adbreakend","aderror"],pt=function(){function F(K){var V=this;(function(X,J){if(!(X instanceof J))throw new TypeError("Cannot call a class as a function")})(this,F),this.pm=K,K.on("viewinit",function(){V.isAdBreak=!1,V._currentAdRequestNumber=0,V._currentAdResponseNumber=0,V._adRequests=[],V._adResponses=[],V._adHasPlayed=!1,V._wouldBeNewAdPlay=!0,V._prerollPlayTime=void 0}),ze.forEach(function(X){return K.on(X,V._updateAdData.bind(V))});var G=function(){V.isAdBreak=!1};K.on("adbreakstart",function(){V.isAdBreak=!0}),K.on("play",G),K.on("playing",G),K.on("viewend",G),K.on("adrequest",function(X,J){J=i()({ad_request_id:"generatedAdRequestId"+V._currentAdRequestNumber++},J),at(V._adRequests,J),t(K.data,"view_ad_request_count"),V.inPrerollPosition()&&(K.data.view_preroll_requested=!0,V._adHasPlayed||t(K.data,"view_preroll_request_count"))}),K.on("adresponse",function(X,J){J=i()({ad_request_id:"generatedAdRequestId"+V._currentAdResponseNumber++},J),at(V._adResponses,J);var Q=V.findAdRequest(J.ad_request_id);Q&&t(K.data,"view_ad_request_time",Math.max(0,J.viewer_time-Q.viewer_time))}),K.on("adplay",function(X,J){V._adHasPlayed=!0,V._wouldBeNewAdPlay&&(V._wouldBeNewAdPlay=!1,t(K.data,"view_ad_played_count")),V.inPrerollPosition()&&!K.data.view_preroll_played&&(K.data.view_preroll_played=!0,V._adRequests.length>0&&(K.data.view_preroll_request_time=Math.max(0,J.viewer_time-V._adRequests[0].viewer_time)),K.data.view_start&&(K.data.view_startup_preroll_request_time=Math.max(0,J.viewer_time-K.data.view_start)),V._prerollPlayTime=J.viewer_time)}),K.on("adplaying",function(X,J){V.inPrerollPosition()&&K.data.view_preroll_load_time===void 0&&V._prerollPlayTime!==void 0&&(K.data.view_preroll_load_time=J.viewer_time-V._prerollPlayTime,K.data.view_startup_preroll_load_time=J.viewer_time-V._prerollPlayTime)}),K.on("adended",function(){V._wouldBeNewAdPlay=!0}),K.on("aderror",function(){V._wouldBeNewAdPlay=!0})}var P,M,N;return P=F,(M=[{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(K){for(var V=0;V<this._adRequests.length;V++)if(this._adRequests[V].ad_request_id===K)return this._adRequests[V]}},{key:"_updateAdData",value:function(K,V){if(this.inPrerollPosition()){if(!this.pm.data.view_preroll_ad_tag_hostname&&V.ad_tag_url){var G=Ye(o(V.ad_tag_url),2),X=G[0],J=G[1];this.pm.data.view_preroll_ad_tag_domain=J,this.pm.data.view_preroll_ad_tag_hostname=X}if(!this.pm.data.view_preroll_ad_asset_hostname&&V.ad_asset_url){var Q=Ye(o(V.ad_asset_url),2),Z=Q[0],ce=Q[1];this.pm.data.view_preroll_ad_asset_domain=ce,this.pm.data.view_preroll_ad_asset_hostname=Z}}}}])&&Le(P.prototype,M),N&&Le(P,N),Object.defineProperty(P,"prototype",{writable:!1}),F}();function xt(F,P){for(var M=0;M<P.length;M++){var N=P[M];N.enumerable=N.enumerable||!1,N.configurable=!0,"value"in N&&(N.writable=!0),Object.defineProperty(F,N.key,N)}}function tt(F,P,M){return P&&xt(F.prototype,P),M&&xt(F,M),Object.defineProperty(F,"prototype",{writable:!1}),F}var Ut=tt(function F(P){var M,N;(function(X,J){if(!(X instanceof J))throw new TypeError("Cannot call a class as a function")})(this,F);var K=function(){P.disableRebufferTracking||M&&(t(P.data,"view_waiting_rebuffer_duration",h.now()-M),M=!1,_().clearInterval(N))},V=!1,G=function(){V=!1,K()};P.on("waiting",function(){V&&(P.disableRebufferTracking||(t(P.data,"view_waiting_rebuffer_count",1),M=h.now(),N=_().setInterval(function(){if(M){var X=h.now();t(P.data,"view_waiting_rebuffer_duration",X-M),M=X}},250)))}),P.on("playing",function(){K(),V=!0}),P.on("pause",G),P.on("seeking",G)});function St(F,P){for(var M=0;M<P.length;M++){var N=P[M];N.enumerable=N.enumerable||!1,N.configurable=!0,"value"in N&&(N.writable=!0),Object.defineProperty(F,N.key,N)}}function ct(F,P,M){return P&&St(F.prototype,P),M&&St(F,M),Object.defineProperty(F,"prototype",{writable:!1}),F}var Et=ct(function F(P){var M=this;(function(V,G){if(!(V instanceof G))throw new TypeError("Cannot call a class as a function")})(this,F);var N=function(){M.lastWallClockTime=h.now(),P.on("before*",K)},K=function(V){var G=h.now(),X=M.lastWallClockTime;M.lastWallClockTime=G,G-X>3e4&&(P.emit("devicesleep",{viewer_time:X}),i()(P.data,{viewer_time:X}),P.send("devicesleep"),P.emit("devicewake",{viewer_time:G}),i()(P.data,{viewer_time:G}),P.send("devicewake"))};P.one("playbackheartbeat",N),P.on("playbackheartbeatend",function(){P.off("before*",K),P.one("playbackheartbeat",N)})}),ut=O(375),Ot=O(655),yt=O.n(Ot),tr="muxData",Nt=function(){var F;try{F=ut.parse(yt().get(tr)||"")}catch{F={}}return F},Rt=function(F){try{yt().set(tr,ut.stringify(F),{expires:7300})}catch{}},rt=function(){var F=Nt();return F.mux_viewer_id=F.mux_viewer_id||y(),F.msn=F.msn||Math.random(),Rt(F),{mux_viewer_id:F.mux_viewer_id,mux_sample_number:F.msn}};function rr(F,P){var M=P.beaconCollectionDomain,N=P.beaconDomain;if(M)return"https://"+M;var K=N||"litix.io";return(F=F||"inferred").match(/^[a-z0-9]+$/)?"https://"+F+"."+K:"https://img.litix.io/a.gif"}var Kt=function(){var F;switch(ir()){case"cellular":F="cellular";break;case"ethernet":F="wired";break;case"wifi":F="wifi";break;case void 0:break;default:F="other"}return F},ir=function(){var F=_().navigator,P=F&&(F.connection||F.mozConnection||F.webkitConnection);return P&&P.type};Kt.getConnectionFromAPI=ir;var mr=Kt,pr=ar({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"}),nr=ar({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 ar(F){var P={};for(var M in F)F.hasOwnProperty(M)&&(P[F[M]]=M);return P}function Dt(F){var P={},M={};return Object.keys(F).forEach(function(N){var K=!1;if(F.hasOwnProperty(N)&&F[N]!==void 0){var V=N.split("_"),G=V[0],X=pr[G];X||(e.info("Data key word `"+V[0]+"` not expected in "+N),X=G+"_"),V.splice(1).forEach(function(J){J==="url"&&(K=!0),nr[J]?X+=nr[J]:Number(J)&&Math.floor(Number(J))===Number(J)?X+=J:(e.info("Data key word `"+J+"` not expected in "+N),X+="_"+J+"_")}),K?M[X]=F[N]:P[X]=F[N]}}),i()(P,M)}var sr={maxBeaconSize:300,maxQueueLength:3600,baseTimeBetweenBeacons:1e4,maxPayloadKBSize:500},Er=["hb","requestcompleted","requestfailed","requestcanceled"],yr="https://img.litix.io",Tt=function(F){var P=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this._beaconUrl=F||yr,this._eventQueue=[],this._postInFlight=!1,this._failureCount=0,this._sendTimeout=!1,this._options=i()({},sr,P)};Tt.prototype.queueEvent=function(F,P){var M=i()({},P);return(this._eventQueue.length<=this._options.maxQueueLength||F==="eventrateexceeded")&&(this._eventQueue.push(M),this._sendTimeout||this._startBeaconSending(),this._eventQueue.length<=this._options.maxQueueLength)},Tt.prototype.flushEvents=function(){var F=arguments.length>0&&arguments[0]!==void 0&&arguments[0];F&&this._eventQueue.length===1?this._eventQueue.pop():(this._eventQueue.length&&this._sendBeaconQueue(),this._startBeaconSending())},Tt.prototype.destroy=function(){var F=arguments.length>0&&arguments[0]!==void 0&&arguments[0];this.destroyed=!0,F?this._clearBeaconQueue():this.flushEvents(),_().clearTimeout(this._sendTimeout)},Tt.prototype._clearBeaconQueue=function(){var F=this._eventQueue.length>this._options.maxBeaconSize?this._eventQueue.length-this._options.maxBeaconSize:0,P=this._eventQueue.slice(F);F>0&&i()(P[P.length-1],Dt({mux_view_message:"event queue truncated"}));var M=this._createPayload(P);jr(this._beaconUrl,M,!0,function(){})},Tt.prototype._sendBeaconQueue=function(){var F=this;if(!this._postInFlight){var P=this._eventQueue.slice(0,this._options.maxBeaconSize);this._eventQueue=this._eventQueue.slice(this._options.maxBeaconSize),this._postInFlight=!0;var M=this._createPayload(P),N=h.now();jr(this._beaconUrl,M,!1,function(K,V){V?(F._eventQueue=P.concat(F._eventQueue),F._failureCount+=1,e.info("Error sending beacon: "+V)):F._failureCount=0,F._roundTripTime=h.now()-N,F._postInFlight=!1})}},Tt.prototype._getNextBeaconTime=function(){if(!this._failureCount)return this._options.baseTimeBetweenBeacons;var F=Math.pow(2,this._failureCount-1);return(1+(F*=Math.random()))*this._options.baseTimeBetweenBeacons},Tt.prototype._startBeaconSending=function(){var F=this;_().clearTimeout(this._sendTimeout),this.destroyed||(this._sendTimeout=_().setTimeout(function(){F._eventQueue.length&&F._sendBeaconQueue(),F._startBeaconSending()},this._getNextBeaconTime()))},Tt.prototype._createPayload=function(F){var P,M,N,K=this,V={transmission_timestamp:Math.round(h.now())};this._roundTripTime&&(V.rtt_ms=Math.round(this._roundTripTime));var G=function(){P=JSON.stringify({metadata:V,events:M||F}),N=P.length/1024},X=function(){return N<=K._options.maxPayloadKBSize};return G(),X()||(e.info("Payload size is too big ("+N+" kb). Removing unnecessary events."),M=F.filter(function(J){return Er.indexOf(J.e)===-1}),G()),X()||(e.info("Payload size still too big ("+N+" kb). Cropping fields.."),M.forEach(function(J){for(var Q in J){var Z=J[Q];typeof Z=="string"&&Z.length>51200&&(J[Q]=Z.substring(0,51200))}}),G()),P};var jr=function(F,P,M,N){if(M&&navigator&&navigator.sendBeacon&&navigator.sendBeacon(F,P))N();else if(_().fetch)_().fetch(F,{method:"POST",body:P,headers:{"Content-Type":"text/plain"},keepalive:!0}).then(function(V){return N(null,V.ok?null:"Error")}).catch(function(V){return N(null,V)});else{if(_().XMLHttpRequest){var K=new(_()).XMLHttpRequest;return K.onreadystatechange=function(){if(K.readyState===4)return N(null,K.status!==200?"error":void 0)},K.open("POST",F),K.setRequestHeader("Content-Type","text/plain"),void K.send(P)}N()}},Li=Tt;function _i(F,P){return function(M){if(Array.isArray(M))return M}(F)||function(M,N){var K=M==null?null:typeof Symbol!="undefined"&&M[Symbol.iterator]||M["@@iterator"];if(K!=null){var V,G,X=[],J=!0,Q=!1;try{for(K=K.call(M);!(J=(V=K.next()).done)&&(X.push(V.value),!N||X.length!==N);J=!0);}catch(Z){Q=!0,G=Z}finally{try{J||K.return==null||K.return()}finally{if(Q)throw G}}return X}}(F,P)||function(M,N){if(M){if(typeof M=="string")return Wr(M,N);var K=Object.prototype.toString.call(M).slice(8,-1);return K==="Object"&&M.constructor&&(K=M.constructor.name),K==="Map"||K==="Set"?Array.from(M):K==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(K)?Wr(M,N):void 0}}(F,P)||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 Wr(F,P){(P==null||P>F.length)&&(P=F.length);for(var M=0,N=new Array(P);M<P;M++)N[M]=F[M];return N}function Gr(F,P){var M=Object.keys(F);if(Object.getOwnPropertySymbols){var N=Object.getOwnPropertySymbols(F);P&&(N=N.filter(function(K){return Object.getOwnPropertyDescriptor(F,K).enumerable})),M.push.apply(M,N)}return M}function It(F){for(var P=1;P<arguments.length;P++){var M=arguments[P]!=null?arguments[P]:{};P%2?Gr(Object(M),!0).forEach(function(N){or(F,N,M[N])}):Object.getOwnPropertyDescriptors?Object.defineProperties(F,Object.getOwnPropertyDescriptors(M)):Gr(Object(M)).forEach(function(N){Object.defineProperty(F,N,Object.getOwnPropertyDescriptor(M,N))})}return F}function jt(F){return jt=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(P){return typeof P}:function(P){return P&&typeof Symbol=="function"&&P.constructor===Symbol&&P!==Symbol.prototype?"symbol":typeof P},jt(F)}function bi(F,P){if(!(F instanceof P))throw new TypeError("Cannot call a class as a function")}function Hr(F,P){for(var M=0;M<P.length;M++){var N=P[M];N.enumerable=N.enumerable||!1,N.configurable=!0,"value"in N&&(N.writable=!0),Object.defineProperty(F,N.key,N)}}function or(F,P,M){return P in F?Object.defineProperty(F,P,{value:M,enumerable:!0,configurable:!0,writable:!0}):F[P]=M,F}var Oi=["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"],Ri=["adplay","adplaying","adpause","adfirstquartile","admidpoint","adthirdquartile","adended"],Ii=["viewstart","error","ended","viewend"],Pi=function(){function F(K,V){var G,X,J,Q,Z,ce,oe,fe,se,de,Se,Ne,Ke,$e,Ee,je=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};bi(this,F),or(this,"previousBeaconData",null),or(this,"lastEventTime",0),or(this,"rateLimited",!1),this.mux=K,this.envKey=V,this.options=je,this.eventQueue=new Li(rr(this.envKey,this.options)),this.sampleRate=(G=this.options.sampleRate)!==null&&G!==void 0?G:1,this.disableCookies=(X=this.options.disableCookies)!==null&&X!==void 0&&X,this.respectDoNotTrack=(J=this.options.respectDoNotTrack)!==null&&J!==void 0&&J,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:(Z=this.options.platform)===null||Z===void 0?void 0:Z.version,viewer_application_engine:(ce=this.options.platform)===null||ce===void 0?void 0:ce.layout,viewer_device_name:(oe=this.options.platform)===null||oe===void 0?void 0:oe.product,viewer_device_category:"",viewer_device_manufacturer:(fe=this.options.platform)===null||fe===void 0?void 0:fe.manufacturer,viewer_os_family:(se=this.options.platform)===null||se===void 0||(de=se.os)===null||de===void 0?void 0:de.family,viewer_os_architecture:(Se=this.options.platform)===null||Se===void 0||(Ne=Se.os)===null||Ne===void 0?void 0:Ne.architecture,viewer_os_version:(Ke=this.options.platform)===null||Ke===void 0||($e=Ke.os)===null||$e===void 0?void 0:$e.version,viewer_connection_type:mr(),page_url:_()===null||_()===void 0||(Ee=_().location)===null||Ee===void 0?void 0:Ee.href},this.viewerData=this.disableCookies?{}:rt()}var P,M,N;return P=F,(M=[{key:"send",value:function(K,V){var G;if(K){if(this.respectDoNotTrack&&s())return e.info("Not sending `"+K+"` because Do Not Track is enabled");if(!V||jt(V)!=="object")return e.error("A data object was expected in send() but was not provided");var X,J,Q=this.disableCookies?{}:(X=Nt(),J=h.now(),X.session_start&&(X.sst=X.session_start,delete X.session_start),X.session_id&&(X.sid=X.session_id,delete X.session_id),X.session_expires&&(X.sex=X.session_expires,delete X.session_expires),(!X.sex||X.sex<J)&&(X.sid=y(),X.sst=J),X.sex=J+15e5,Rt(X),{session_id:X.sid,session_start:X.sst,session_expires:X.sex}),Z=It(It(It(It(It({},this.pageLevelData),V),Q),this.viewerData),{},{event:K,env_key:this.envKey});Z.user_id&&(Z.viewer_user_id=Z.user_id,delete Z.user_id);var ce=((G=Z.mux_sample_number)!==null&&G!==void 0?G:0)>=this.sampleRate,oe=Dt(this._deduplicateBeaconData(K,Z));if(this.lastEventTime=this.mux.utils.now(),ce)return e.info("Not sending event due to sample rate restriction",K,Z,oe);if(this.envKey||e.info("Missing environment key (envKey) - beacons will be dropped if the video source is not a valid mux video URL",K,Z,oe),!this.rateLimited){if(e.info("Sending event",K,Z,oe),this.rateLimited=!this.eventQueue.queueEvent(K,oe),this.mux.WINDOW_UNLOADING&&K==="viewend")this.eventQueue.destroy(!0);else if(this.mux.WINDOW_HIDDEN&&K==="hb"?this.eventQueue.flushEvents(!0):Ii.indexOf(K)>=0&&this.eventQueue.flushEvents(),this.rateLimited)return Z.event="eventrateexceeded",oe=Dt(Z),this.eventQueue.queueEvent(Z.event,oe),e.error("Beaconing disabled due to rate limit.")}}}},{key:"destroy",value:function(){this.eventQueue.destroy(!1)}},{key:"_deduplicateBeaconData",value:function(K,V){var G=this,X={},J=V.view_id;if(!J||K==="viewstart"||K==="viewend"||!this.previousBeaconData||this.mux.utils.now()-this.lastEventTime>=6e5)X=It({},V),J&&(this.previousBeaconData=X),J&&K==="viewend"&&(this.previousBeaconData=null);else{var Q=K.indexOf("request")===0;Object.entries(V).forEach(function(Z){var ce=_i(Z,2),oe=ce[0],fe=ce[1];G.previousBeaconData&&(fe!==G.previousBeaconData[oe]||Oi.indexOf(oe)>-1||G.objectHasChanged(Q,oe,fe,G.previousBeaconData[oe])||G.eventRequiresKey(K,oe))&&(X[oe]=fe,G.previousBeaconData[oe]=fe)})}return X}},{key:"objectHasChanged",value:function(K,V,G,X){return!(!K||V.indexOf("request_")!==0||V!=="request_response_headers"&&jt(G)==="object"&&jt(X)==="object"&&Object.keys(G||{}).length===Object.keys(X||{}).length)}},{key:"eventRequiresKey",value:function(K,V){return K==="renditionchange"&&V.indexOf("video_source_")===0||!(V.indexOf("ad_")!==0||!Ri.includes(K))}}])&&Hr(P.prototype,M),N&&Hr(P,N),Object.defineProperty(P,"prototype",{writable:!1}),F}();function Vr(F,P){for(var M=0;M<P.length;M++){var N=P[M];N.enumerable=N.enumerable||!1,N.configurable=!0,"value"in N&&(N.writable=!0),Object.defineProperty(F,N.key,N)}}function Ci(F,P,M){return P&&Vr(F.prototype,P),M&&Vr(F,M),Object.defineProperty(F,"prototype",{writable:!1}),F}var Mi=Ci(function F(P){(function(Q,Z){if(!(Q instanceof Z))throw new TypeError("Cannot call a class as a function")})(this,F);var M=0,N=0,K=0,V=0,G=0,X=0,J=0;P.on("requestcompleted",function(Q,Z){var ce,oe,fe=Z.request_start,se=Z.request_response_start,de=Z.request_response_end,Se=Z.request_bytes_loaded;if(V++,se?(ce=se-fe,oe=de-se):oe=de-fe,oe>0&&Se>0){var Ne=Se/oe*8e3;G++,N+=Se,K+=oe,P.data.view_min_request_throughput=Math.min(P.data.view_min_request_throughput||1/0,Ne),P.data.view_average_request_throughput=N/K*8e3,P.data.view_request_count=V,ce>0&&(M+=ce,P.data.view_max_request_latency=Math.max(P.data.view_max_request_latency||0,ce),P.data.view_average_request_latency=M/G)}}),P.on("requestfailed",function(Q,Z){V++,X++,P.data.view_request_count=V,P.data.view_request_failed_count=X}),P.on("requestcanceled",function(Q,Z){V++,J++,P.data.view_request_count=V,P.data.view_request_canceled_count=J})});function Yr(F,P){for(var M=0;M<P.length;M++){var N=P[M];N.enumerable=N.enumerable||!1,N.configurable=!0,"value"in N&&(N.writable=!0),Object.defineProperty(F,N.key,N)}}function wi(F,P,M){return P&&Yr(F.prototype,P),M&&Yr(F,M),Object.defineProperty(F,"prototype",{writable:!1}),F}var Fi=wi(function F(P){var M=this;(function(N,K){if(!(N instanceof K))throw new TypeError("Cannot call a class as a function")})(this,F),P.on("before*",function(N,K){var V=K.viewer_time,G=h.now(),X=M._lastEventTime;if(M._lastEventTime=G,X&&G-X>36e5){var J=Object.keys(P.data).reduce(function(Q,Z){return Z.indexOf("video_")===0?i()(Q,function(ce,oe,fe){return oe in ce?Object.defineProperty(ce,oe,{value:fe,enumerable:!0,configurable:!0,writable:!0}):ce[oe]=fe,ce}({},Z,P.data[Z])):Q},{});P.mux.log.info("Received event after at least an hour inactivity, creating a new view"),P.emit("viewinit",i()({viewer_time:V},J)),P.playbackHeartbeat._playheadShouldBeProgressing&&N.type!=="play"&&N.type!=="adbreakstart"&&(P.emit("play",{viewer_time:V}),N.type!=="playing"&&P.emit("playing",{viewer_time:V}))}})});function Tr(F){return Tr=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(P){return typeof P}:function(P){return P&&typeof Symbol=="function"&&P.constructor===Symbol&&P!==Symbol.prototype?"symbol":typeof P},Tr(F)}function ki(F,P){return function(M){if(Array.isArray(M))return M}(F)||function(M,N){var K=M==null?null:typeof Symbol!="undefined"&&M[Symbol.iterator]||M["@@iterator"];if(K!=null){var V,G,X=[],J=!0,Q=!1;try{for(K=K.call(M);!(J=(V=K.next()).done)&&(X.push(V.value),!N||X.length!==N);J=!0);}catch(Z){Q=!0,G=Z}finally{try{J||K.return==null||K.return()}finally{if(Q)throw G}}return X}}(F,P)||function(M,N){if(M){if(typeof M=="string")return zr(M,N);var K=Object.prototype.toString.call(M).slice(8,-1);return K==="Object"&&M.constructor&&(K=M.constructor.name),K==="Map"||K==="Set"?Array.from(M):K==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(K)?zr(M,N):void 0}}(F,P)||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 zr(F,P){(P==null||P>F.length)&&(P=F.length);for(var M=0,N=new Array(P);M<P;M++)N[M]=F[M];return N}function Xr(F,P){for(var M=0;M<P.length;M++){var N=P[M];N.enumerable=N.enumerable||!1,N.configurable=!0,"value"in N&&(N.writable=!0),Object.defineProperty(F,N.key,N)}}function xr(F,P){return xr=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(M,N){return M.__proto__=N,M},xr(F,P)}function Bi(F){var P=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 M,N=lr(F);if(P){var K=lr(this).constructor;M=Reflect.construct(N,arguments,K)}else M=N.apply(this,arguments);return Ui(this,M)}}function Ui(F,P){if(P&&(Tr(P)==="object"||typeof P=="function"))return P;if(P!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Fe(F)}function Fe(F){if(F===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return F}function lr(F){return lr=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(P){return P.__proto__||Object.getPrototypeOf(P)},lr(F)}var Ni=["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"],Ki=function(F){(function(G,X){if(typeof X!="function"&&X!==null)throw new TypeError("Super expression must either be null or a function");G.prototype=Object.create(X&&X.prototype,{constructor:{value:G,writable:!0,configurable:!0}}),Object.defineProperty(G,"prototype",{writable:!1}),X&&xr(G,X)})(V,F);var P,M,N,K=Bi(V);function V(G,X,J){var Q;(function(se,de){if(!(se instanceof de))throw new TypeError("Cannot call a class as a function")})(this,V),(Q=K.call(this)).DOM_CONTENT_LOADED_EVENT_END=c.domContentLoadedEventEnd(),Q.NAVIGATION_START=c.navigationStart(),Q.mux=G,Q.id=X,(J=i()({debug:!1,minimumRebufferDuration:250,sustainedRebufferThreshold:1e3,playbackHeartbeatTime:25,beaconDomain:"litix.io",sampleRate:1,disableCookies:!1,respectDoNotTrack:!1,disableRebufferTracking:!1,disablePlayheadRebufferTracking:!1,errorTranslator:function(se){return se}},J)).data=J.data||{},J.data.property_key&&(J.data.env_key=J.data.property_key,delete J.data.property_key),e.setLevel(J.debug?"debug":"warn"),Q.getPlayheadTime=J.getPlayheadTime,Q.getStateData=J.getStateData||function(){return{}},Q.getAdData=J.getAdData||function(){},Q.minimumRebufferDuration=J.minimumRebufferDuration,Q.sustainedRebufferThreshold=J.sustainedRebufferThreshold,Q.playbackHeartbeatTime=J.playbackHeartbeatTime,Q.disableRebufferTracking=J.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=J.disablePlayheadRebufferTracking,Q.errorTranslator=J.errorTranslator,Q.playbackEventDispatcher=new Pi(G,J.data.env_key,J),Q.data={player_instance_id:y(),mux_sample_rate:J.sampleRate,beacon_domain:J.beaconCollectionDomain?J.beaconCollectionDomain:J.beaconDomain},Q.data.view_sequence_number=1,Q.data.player_sequence_number=1,Q.oldEmit=Q.emit,Q.emit=function(se,de){de=i()({viewer_time:this.mux.utils.now()},de),this.oldEmit(se,de)};var Z=function(){this.data.view_start===void 0&&(this.data.view_start=this.mux.utils.now(),this.emit("viewstart"))}.bind(Fe(Q));Q.on("viewinit",function(se,de){this._resetVideoData(),this._resetViewData(),this._resetErrorData(),this._updateStateData(),i()(this.data,de),this._initializeViewData(),this.one("play",Z),this.one("adbreakstart",Z)});var ce=function(se){this.emit("viewend"),this.send("viewend"),this.emit("viewinit",se)}.bind(Fe(Q));if(Q.on("videochange",function(se,de){ce(de)}),Q.on("programchange",function(se,de){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."),ce(i()(de,{view_program_changed:!0})),Z(),this.emit("play"),this.emit("playing")}),Q.on("fragmentchange",function(se,de){this.currentFragmentPDT=de.currentFragmentPDT,this.currentFragmentStart=de.currentFragmentStart}),Q.on("destroy",Q.destroy),typeof window!="undefined"&&typeof window.addEventListener=="function"&&typeof window.removeEventListener=="function"){var oe=function(){var se=Q.data.view_start!==void 0;Q.mux.WINDOW_HIDDEN=document.visibilityState==="hidden",se&&Q.mux.WINDOW_HIDDEN&&(Q.data.player_is_paused||Q.emit("hb"))};window.addEventListener("visibilitychange",oe,!1);var fe=function(se){se.persisted||Q.destroy()};window.addEventListener("pagehide",fe,!1),Q.on("destroy",function(){window.removeEventListener("visibilitychange",oe),window.removeEventListener("pagehide",fe)})}return Q.on("playerready",function(se,de){i()(this.data,de)}),Ni.forEach(function(se){Q.on(se,function(de,Se){se.indexOf("ad")!==0&&this._updateStateData(),i()(this.data,Se),this._sanitizeData()}),Q.on("after"+se,function(){(se!=="error"||this.errorTracker.viewErrored)&&this.send(se)})}),Q.on("viewend",function(se,de){i()(Q.data,de)}),Q.one("playerready",function(se){var de=this.mux.utils.now();this.data.player_init_time&&(this.data.player_startup_time=de-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 Fi(Fe(Q)),Q.errorTracker=new he(Fe(Q)),new Et(Fe(Q)),Q.seekingTracker=new Ce(Fe(Q)),Q.playheadTime=new Me(Fe(Q)),Q.playbackHeartbeat=new ae(Fe(Q)),new we(Fe(Q)),Q.watchTimeTracker=new ie(Fe(Q)),new pe(Fe(Q)),Q.adTracker=new pt(Fe(Q)),new Ge(Fe(Q)),new Ie(Fe(Q)),new Qe(Fe(Q)),new Ut(Fe(Q)),new Mi(Fe(Q)),J.hlsjs&&Q.addHLSJS(J),J.dashjs&&Q.addDashJS(J),Q.emit("viewinit",J.data),Q}return P=V,M=[{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(G){var X=i()({},this.data);if(X.video_source_is_live===void 0&&(X.player_source_duration===1/0||X.video_source_duration===1/0?X.video_source_is_live=!0:(X.player_source_duration>0||X.video_source_duration>0)&&(X.video_source_is_live=!1)),X.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(ce){X[ce]=void 0}),X.video_source_url=X.video_source_url||X.player_source_url,X.video_source_url){var J=ki(o(X.video_source_url),2),Q=J[0],Z=J[1];X.video_source_domain=Z,X.video_source_hostname=Q}delete X.ad_request_id,this.playbackEventDispatcher.send(G,X),this.data.view_sequence_number++,this.data.player_sequence_number++,this._restartHeartBeat()}},{key:"_updateStateData",value:function(){i()(this.data,this.getStateData()),this.playheadTime._updatePlayheadTime(),this._sanitizeData()}},{key:"_sanitizeData",value:function(){var G=this;["player_width","player_height","video_source_width","video_source_height","player_playhead_time","video_source_bitrate"].forEach(function(X){var J=parseInt(G.data[X],10);G.data[X]=isNaN(J)?void 0:J}),["player_source_url","video_source_url"].forEach(function(X){if(G.data[X]){var J=G.data[X].toLowerCase();J.indexOf("data:")!==0&&J.indexOf("blob:")!==0||(G.data[X]="MSE style URL")}})}},{key:"_resetVideoData",value:function(G,X){var J=this;Object.keys(this.data).forEach(function(Q){Q.indexOf("video_")===0&&delete J.data[Q]})}},{key:"_resetViewData",value:function(){var G=this;Object.keys(this.data).forEach(function(X){X.indexOf("view_")===0&&delete G.data[X]}),this.data.view_sequence_number=1}},{key:"_resetErrorData",value:function(G,X){delete this.data.player_error_code,delete this.data.player_error_message}},{key:"_initializeViewData",value:function(){var G=this,X=this.data.view_id=y(),J=function(){X===G.data.view_id&&t(G.data,"player_view_count",1)};this.data.player_is_paused?this.one("play",J):J()}},{key:"_restartHeartBeat",value:function(){var G=this;window.clearTimeout(this._heartBeatTimeout),this.errorTracker.viewErrored||(this._heartBeatTimeout=window.setTimeout(function(){G.data.player_is_paused||G.emit("hb")},1e4))}},{key:"addHLSJS",value:function(G){G.hlsjs?this.hlsjs?this.mux.log.warn("An instance of HLS.js is already being monitored for this player."):(this.hlsjs=G.hlsjs,function(X,J,Q){var Z=arguments.length>4?arguments[4]:void 0,ce=X.log,oe=X.utils.secondsToMs,fe=function(ye){var ue,ge=parseInt(Z.version);return ge===1&&ye.programDateTime!==null&&(ue=ye.programDateTime),ge===0&&ye.pdt!==null&&(ue=ye.pdt),ue};if(c.exists()){var se=function(ye,ue){return X.emit(J,ye,ue)},de=function(ye,ue){var ge=ue.levels,le=ue.audioTracks,me=ue.url,_e=ue.stats,Pe=ue.networkDetails,Je=ue.sessionData,Xe={},ot={};ge.forEach(function(vt,Ht){Xe[Ht]={width:vt.width,height:vt.height,bitrate:vt.bitrate,attrs:vt.attrs}}),le.forEach(function(vt,Ht){ot[Ht]={name:vt.name,language:vt.lang,bitrate:vt.bitrate}});var Ze=T(_e),ht=Ze.bytesLoaded,ke=Ze.requestStart,lt=Ze.responseStart,Lr=Ze.responseEnd;se("requestcompleted",v(v({},a(Je)),{},{request_event_type:ye,request_bytes_loaded:ht,request_start:ke,request_response_start:lt,request_response_end:Lr,request_type:"manifest",request_hostname:r(me),request_response_headers:I(Pe),request_rendition_lists:{media:Xe,audio:ot,video:{}}}))};Q.on(Z.Events.MANIFEST_LOADED,de);var Se=function(ye,ue){var ge=ue.details,le=ue.level,me=ue.networkDetails,_e=ue.stats,Pe=T(_e),Je=Pe.bytesLoaded,Xe=Pe.requestStart,ot=Pe.responseStart,Ze=Pe.responseEnd,ht=ge.fragments[ge.fragments.length-1],ke=fe(ht)+oe(ht.duration);se("requestcompleted",{request_event_type:ye,request_bytes_loaded:Je,request_start:Xe,request_response_start:ot,request_response_end:Ze,request_current_level:le,request_type:"manifest",request_hostname:r(ge.url),request_response_headers:I(me),video_holdback:ge.holdBack&&oe(ge.holdBack),video_part_holdback:ge.partHoldBack&&oe(ge.partHoldBack),video_part_target_duration:ge.partTarget&&oe(ge.partTarget),video_target_duration:ge.targetduration&&oe(ge.targetduration),video_source_is_live:ge.live,player_manifest_newest_program_time:isNaN(ke)?void 0:ke})};Q.on(Z.Events.LEVEL_LOADED,Se);var Ne=function(ye,ue){var ge=ue.details,le=ue.networkDetails,me=ue.stats,_e=T(me),Pe=_e.bytesLoaded,Je=_e.requestStart,Xe=_e.responseStart,ot=_e.responseEnd;se("requestcompleted",{request_event_type:ye,request_bytes_loaded:Pe,request_start:Je,request_response_start:Xe,request_response_end:ot,request_type:"manifest",request_hostname:r(ge.url),request_response_headers:I(le)})};Q.on(Z.Events.AUDIO_TRACK_LOADED,Ne);var Ke=function(ye,ue){var ge=ue.stats,le=ue.networkDetails,me=ue.frag;ge=ge||me.stats;var _e=T(ge),Pe=_e.bytesLoaded,Je=_e.requestStart,Xe=_e.responseStart,ot=_e.responseEnd,Ze=I(le),ht=Ze==null?void 0:Ze["x-request-id"],ke={request_event_type:ye,request_bytes_loaded:Pe,request_start:Je,request_response_start:Xe,request_response_end:ot,request_hostname:le?r(le.responseURL):void 0,request_id:ht,request_response_headers:Ze,request_media_duration:me.duration,request_url:le==null?void 0:le.responseURL};me.type==="main"?(ke.request_type="media",ke.request_current_level=me.level,ke.request_video_width=(Q.levels[me.level]||{}).width,ke.request_video_height=(Q.levels[me.level]||{}).height,ke.request_labeled_bitrate=(Q.levels[me.level]||{}).bitrate):ke.request_type=me.type,se("requestcompleted",ke)};Q.on(Z.Events.FRAG_LOADED,Ke);var $e=function(ye,ue){var ge=ue.frag,le=ge.start,me={currentFragmentPDT:fe(ge),currentFragmentStart:oe(le)};se("fragmentchange",me)};Q.on(Z.Events.FRAG_CHANGED,$e);var Ee=function(ye,ue){var ge=ue.type,le=ue.details,me=ue.response,_e=ue.fatal,Pe=ue.context,Je=ue.frag;if(le===Z.ErrorDetails.MANIFEST_LOAD_ERROR||le===Z.ErrorDetails.MANIFEST_LOAD_TIMEOUT||le===Z.ErrorDetails.FRAG_LOAD_ERROR||le===Z.ErrorDetails.FRAG_LOAD_TIMEOUT||le===Z.ErrorDetails.LEVEL_LOAD_ERROR||le===Z.ErrorDetails.LEVEL_LOAD_TIMEOUT){var Xe=Je&&Je.url||Pe&&Pe.url||"";se("requestfailed",{request_error:le,request_url:Xe,request_hostname:r(Xe),request_type:le===Z.ErrorDetails.FRAG_LOAD_ERROR||le===Z.ErrorDetails.FRAG_LOAD_TIMEOUT?"media":"manifest",request_error_code:me&&me.code,request_error_text:me&&me.text})}_e&&se("error",{player_error_code:ge,player_error_message:le})};Q.on(Z.Events.ERROR,Ee);var je=function(ye,ue){var ge=ue.frag,le=ge&&ge._url||"";se("requestcanceled",{request_event_type:ye,request_url:le,request_type:"media",request_hostname:r(le)})};Q.on(Z.Events.FRAG_LOAD_EMERGENCY_ABORTED,je);var Ve=function(ye,ue){var ge=ue.level,le=Q.levels[ge];if(le&&le.attrs&&le.attrs.BANDWIDTH){var me,_e=le.attrs.BANDWIDTH,Pe=parseFloat(le.attrs["FRAME-RATE"]);isNaN(Pe)||(me=Pe),_e?se("renditionchange",{video_source_fps:me,video_source_bitrate:_e,video_source_width:le.width,video_source_height:le.height,video_source_rendition_name:le.name,video_source_codec:le==null?void 0:le.videoCodec}):ce.warn("missing BANDWIDTH from HLS manifest parsed by HLS.js")}};Q.on(Z.Events.LEVEL_SWITCHED,Ve),Q._stopMuxMonitor=function(){Q.off(Z.Events.MANIFEST_LOADED,de),Q.off(Z.Events.LEVEL_LOADED,Se),Q.off(Z.Events.AUDIO_TRACK_LOADED,Ne),Q.off(Z.Events.FRAG_LOADED,Ke),Q.off(Z.Events.FRAG_CHANGED,$e),Q.off(Z.Events.ERROR,Ee),Q.off(Z.Events.FRAG_LOAD_EMERGENCY_ABORTED,je),Q.off(Z.Events.LEVEL_SWITCHED,Ve),Q.off(Z.Events.DESTROYING,Q._stopMuxMonitor),delete Q._stopMuxMonitor},Q.on(Z.Events.DESTROYING,Q._stopMuxMonitor)}else ce.warn("performance timing not supported. Not tracking HLS.js.")}(this.mux,this.id,G.hlsjs,{},G.Hls||window.Hls)):this.mux.log.warn("You must pass a valid hlsjs instance in order to track it.")}},{key:"removeHLSJS",value:function(){var G;this.hlsjs&&((G=this.hlsjs)&&typeof G._stopMuxMonitor=="function"&&G._stopMuxMonitor(),this.hlsjs=void 0)}},{key:"addDashJS",value:function(G){G.dashjs?this.dashjs?this.mux.log.warn("An instance of Dash.js is already being monitored for this player."):(this.dashjs=G.dashjs,function(X,J,Q){var Z=X.log;if(Q&&Q.on){var ce=function(Ee,je){return X.emit(J,Ee,je)},oe=function(Ee){var je=Ee.type,Ve=(Ee.data||{}).url;ce("requestcompleted",{request_event_type:je,request_start:0,request_response_start:0,request_response_end:0,request_bytes_loaded:-1,request_type:"manifest",request_hostname:r(Ve),request_url:Ve})};Q.on("manifestLoaded",oe);var fe={},se=function(Ee){var je=Ee.type,Ve=Ee.fragmentModel,ye=(Ee.chunk||{}).mediaInfo||{},ue=ye.type,ge=ye.bitrateList,le={};(ge=ge||[]).forEach(function(ke,lt){le[lt]={},le[lt].width=ke.width,le[lt].height=ke.height,le[lt].bitrate=ke.bandwidth,le[lt].attrs={}}),ue==="video"?fe.video=le:ue==="audio"?fe.audio=le:fe.media=le;var me=W(Ve,Q),_e=me.requestStart,Pe=me.requestResponseStart,Je=me.requestResponseEnd,Xe=me.requestResponseHeaders,ot=me.requestMediaDuration,Ze=me.requestHostname,ht=me.requestUrl;ce("requestcompleted",{request_event_type:je,request_start:_e,request_response_start:Pe,request_response_end:Je,request_bytes_loaded:-1,request_type:ue+"_init",request_response_headers:Xe,request_hostname:Ze,request_url:ht,request_media_duration:ot,request_rendition_lists:fe})};Q.on("initFragmentLoaded",se);var de=function(Ee){var je=Ee.type,Ve=Ee.fragmentModel,ye=Ee.chunk||{},ue=ye.mediaInfo,ge=ye.start,le=(ue||{}).type,me=W(Ve,Q),_e=me.requestStart,Pe=me.requestResponseStart,Je=me.requestResponseEnd,Xe=me.requestBytesLoaded,ot=me.requestResponseHeaders,Ze=me.requestMediaDuration,ht=me.requestHostname,ke=me.requestUrl,lt=H(le,Q),Lr=lt.currentLevel,vt=lt.renditionWidth,Ht=lt.renditionHeight,fn=lt.renditionBitrate;ce("requestcompleted",{request_event_type:je,request_start:_e,request_response_start:Pe,request_response_end:Je,request_bytes_loaded:Xe,request_type:le,request_response_headers:ot,request_hostname:ht,request_url:ke,request_media_start_time:ge,request_media_duration:Ze,request_current_level:Lr,request_labeled_bitrate:fn,request_video_width:vt,request_video_height:Ht})};Q.on("mediaFragmentLoaded",de);var Se={video:void 0,audio:void 0,totalBitrate:void 0},Ne=function(){if(Se.video&&typeof Se.video.bitrate=="number"){if(Se.video.width&&Se.video.height){var Ee=Se.video.bitrate;return Se.audio&&typeof Se.audio.bitrate=="number"&&(Ee+=Se.audio.bitrate),Ee!==Se.totalBitrate?(Se.totalBitrate=Ee,{video_source_bitrate:Ee,video_source_height:Se.video.height,video_source_width:Se.video.width,video_source_codec:z(Se.video.codec)}):void 0}Z.warn("have bitrate info for video but missing width/height")}},Ke=function(Ee,je,Ve){if(typeof Ee.newQuality=="number"){var ye=Ee.mediaType;if(ye==="audio"||ye==="video"){var ue=Q.getBitrateInfoListFor(ye).find(function(le){return le.qualityIndex===Ee.newQuality});if(ue&&typeof ue.bitrate=="number"){Se[ye]=B(B({},ue),{},{codec:Q.getCurrentTrackFor(ye).codec});var ge=Ne();ge&&ce("renditionchange",ge)}else Z.warn("missing bitrate info for ".concat(ye))}}else Z.warn("missing evt.newQuality in qualityChangeRendered event",Ee)};Q.on("qualityChangeRendered",Ke);var $e=function(Ee){var je=Ee.error,Ve=Ee.event,ye=(Ve=Ve||{}).request||{},ue=_().event&&_().event.currentTarget||{};ce("requestfailed",{request_error:je+"_"+Ve.id+"_"+ye.type,request_url:Ve.url,request_hostname:r(Ve.url),request_type:ye.mediaType,request_error_code:ue.status,request_error_type:ue.statusText})};Q.on("error",$e),Q._stopMuxMonitor=function(){Q.off("manifestLoaded",oe),Q.off("initFragmentLoaded",se),Q.off("mediaFragmentLoaded",de),Q.off("qualityChangeRendered",Ke),Q.off("error",$e),delete Q._stopMuxMonitor}}else Z.warn("Invalid dash.js player reference. Monitoring blocked.")}(this.mux,this.id,G.dashjs)):this.mux.log.warn("You must pass a valid dashjs instance in order to track it.")}},{key:"removeDashJS",value:function(){var G;this.dashjs&&((G=this.dashjs)&&typeof G._stopMuxMonitor=="function"&&G._stopMuxMonitor(),this.dashjs=void 0)}}],M&&Xr(P.prototype,M),N&&Xr(P,N),Object.defineProperty(P,"prototype",{writable:!1}),V}(q),ji=Ki,Wi=O(153),Wt=O.n(Wi);function Sr(F){return Sr=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(P){return typeof P}:function(P){return P&&typeof Symbol=="function"&&P.constructor===Symbol&&P!==Symbol.prototype?"symbol":typeof P},Sr(F)}function Qr(F,P){return function(M){if(Array.isArray(M))return M}(F)||function(M,N){var K=M==null?null:typeof Symbol!="undefined"&&M[Symbol.iterator]||M["@@iterator"];if(K!=null){var V,G,X=[],J=!0,Q=!1;try{for(K=K.call(M);!(J=(V=K.next()).done)&&(X.push(V.value),!N||X.length!==N);J=!0);}catch(Z){Q=!0,G=Z}finally{try{J||K.return==null||K.return()}finally{if(Q)throw G}}return X}}(F,P)||function(M,N){if(M){if(typeof M=="string")return $r(M,N);var K=Object.prototype.toString.call(M).slice(8,-1);return K==="Object"&&M.constructor&&(K=M.constructor.name),K==="Map"||K==="Set"?Array.from(M):K==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(K)?$r(M,N):void 0}}(F,P)||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 $r(F,P){(P==null||P>F.length)&&(P=F.length);for(var M=0,N=new Array(P);M<P;M++)N[M]=F[M];return N}var Pt,Gi=["loadstart","pause","play","playing","seeking","seeked","timeupdate","ratechange","stalled","waiting","error","ended"],Hi={1:"MEDIA_ERR_ABORTED",2:"MEDIA_ERR_NETWORK",3:"MEDIA_ERR_DECODE",4:"MEDIA_ERR_SRC_NOT_SUPPORTED"};_()&&_().WeakMap&&(Pt=new WeakMap);var Vi="#EXT-X-TARGETDURATION",Yi="#EXT-X-PART-INF",zi="#EXT-X-SERVER-CONTROL",Xi="#EXTINF",Qi="#EXT-X-PROGRAM-DATE-TIME",$i="#EXT-X-VERSION",Ji="#EXT-X-SESSION-DATA",ur=function(F){return this.buffer="",this.manifest={segments:[],serverControl:{},sessionData:{}},this.currentUri={},this.process(F),this.manifest};ur.prototype.process=function(F){var P;for(this.buffer+=F,P=this.buffer.indexOf(`
6
- `);P>-1;P=this.buffer.indexOf(`
7
- `))this.processLine(this.buffer.substring(0,P)),this.buffer=this.buffer.substring(P+1)},ur.prototype.processLine=function(F){var P=F.indexOf(":"),M=tn(F,P),N=M[0],K=M.length===2?Ar(M[1]):void 0;if(N[0]!=="#")this.currentUri.uri=N,this.manifest.segments.push(this.currentUri),this.manifest.targetDuration&&!("duration"in this.currentUri)&&(this.currentUri.duration=this.manifest.targetDuration),this.currentUri={};else switch(N){case Vi:if(!isFinite(K)||K<0)return;this.manifest.targetDuration=K,this.setHoldBack();break;case Yi:Dr(this.manifest,M),this.manifest.partInf.partTarget&&(this.manifest.partTargetDuration=this.manifest.partInf.partTarget),this.setHoldBack();break;case zi:Dr(this.manifest,M),this.setHoldBack();break;case Xi:K===0?this.currentUri.duration=.01:K>0&&(this.currentUri.duration=K);break;case Qi:var V=K,G=new Date(V);this.manifest.dateTimeString||(this.manifest.dateTimeString=V,this.manifest.dateTimeObject=G),this.currentUri.dateTimeString=V,this.currentUri.dateTimeObject=G;break;case $i:Dr(this.manifest,M);break;case Ji:var X=rn(M[1]),J=a(X);i()(this.manifest.sessionData,J)}},ur.prototype.setHoldBack=function(){var F=this.manifest,P=F.serverControl,M=F.targetDuration,N=F.partTargetDuration;if(P){var K="holdBack",V="partHoldBack",G=M&&3*M,X=N&&2*N;M&&!P.hasOwnProperty(K)&&(P[K]=G),G&&P[K]<G&&(P[K]=G),N&&!P.hasOwnProperty(V)&&(P[V]=3*N),N&&P[V]<X&&(P[V]=X)}};var Dr=function(F,P){var M,N=Jr(P[0].replace("#EXT-X-",""));en(P[1])?(M={},M=i()(qi(P[1]),M)):M=Ar(P[1]),F[N]=M},Jr=function(F){return F.toLowerCase().replace(/-(\w)/g,function(P){return P[1].toUpperCase()})},Ar=function(F){if(F.toLowerCase()==="yes"||F.toLowerCase()==="no")return F.toLowerCase()==="yes";var P=F.indexOf(":")!==-1?F:parseFloat(F);return isNaN(P)?F:P},Zi=function(F){var P={},M=F.split("=");return M.length>1&&(P[Jr(M[0])]=Ar(M[1])),P},qi=function(F){for(var P=F.split(","),M={},N=0;P.length>N;N++){var K=P[N],V=Zi(K);M=i()(V,M)}return M},en=function(F){return F.indexOf("=")>-1},tn=function(F,P){return P===-1?[F]:[F.substring(0,P),F.substring(P+1)]},rn=function(F){var P={};if(F){var M=F.search(",");return[F.slice(0,M),F.slice(M+1)].forEach(function(N,K){for(var V=N.replace(/['"]+/g,"").split("="),G=0;G<V.length;G++)V[G]==="DATA-ID"&&(P["DATA-ID"]=V[1-G]),V[G]==="VALUE"&&(P.VALUE=V[1-G])}),{data:P}}},nn=ur,an={safeCall:function(F,P,M,N){var K=N;if(F&&typeof F[P]=="function")try{K=F[P].apply(F,M)}catch(V){e.info("safeCall error",V)}return K},safeIncrement:t,getComputedStyle:function(F,P){var M;if(F&&P&&_()&&typeof _().getComputedStyle=="function")return Pt&&Pt.has(F)&&(M=Pt.get(F)),M||(M=_().getComputedStyle(F,null),Pt&&Pt.set(F,M)),M.getPropertyValue(P)},secondsToMs:function(F){return Math.floor(1e3*F)},assign:i(),headersStringToObject:u,extractHostnameAndDomain:o,extractHostname:r,manifestParser:nn,generateShortID:x,generateUUID:y,now:h.now},sn={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 on(F,P){return function(M){if(Array.isArray(M))return M}(F)||function(M,N){var K=M==null?null:typeof Symbol!="undefined"&&M[Symbol.iterator]||M["@@iterator"];if(K!=null){var V,G,X=[],J=!0,Q=!1;try{for(K=K.call(M);!(J=(V=K.next()).done)&&(X.push(V.value),!N||X.length!==N);J=!0);}catch(Z){Q=!0,G=Z}finally{try{J||K.return==null||K.return()}finally{if(Q)throw G}}return X}}(F,P)||function(M,N){if(M){if(typeof M=="string")return Zr(M,N);var K=Object.prototype.toString.call(M).slice(8,-1);return K==="Object"&&M.constructor&&(K=M.constructor.name),K==="Map"||K==="Set"?Array.from(M):K==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(K)?Zr(M,N):void 0}}(F,P)||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 Zr(F,P){(P==null||P>F.length)&&(P=F.length);for(var M=0,N=new Array(P);M<P;M++)N[M]=F[M];return N}var st={},Gt=function F(P){var M=arguments;typeof P=="string"?F.hasOwnProperty(P)?_().setTimeout(function(){M=Array.prototype.splice.call(M,1),F[P].apply(null,M)},0):e.warn("`"+P+"` is an unknown task"):typeof P=="function"?_().setTimeout(function(){P(F)},0):e.warn("`"+P+"` is invalid.")},ln={loaded:h.now(),NAME:"mux-embed",VERSION:"4.17.0",API_VERSION:"2.1",PLAYER_TRACKED:!1,monitor:function(F,P){return function(M,N,K){var V=Qr(E(N),3),G=V[0],X=V[1],J=V[2],Q=M.log,Z=M.utils.getComputedStyle,ce=M.utils.secondsToMs;if(!G)return Q.error("No element was found with the `"+X+"` query selector.");if(J!=="video"&&J!=="audio")return Q.error("The element of `"+X+"` was not a media element.");G.mux&&(G.mux.destroy(),delete G.mux,Q.warn("Already monitoring this video element, replacing existing event listeners")),(K=i()({automaticErrorTracking:!0},K)).data=i()({player_software:"HTML5 Video Element",player_mux_plugin_name:"VideoElementMonitor",player_mux_plugin_version:M.VERSION},K.data),K.getPlayheadTime=function(){return ce(G.currentTime)},K.getStateData=function(){var fe,se,de=this.hlsjs&&this.hlsjs.url,Se=this.dashjs&&Sr(this.dashjs.getSource==="function")&&this.dashjs.getSource(),Ne={player_is_paused:G.paused,player_playhead_time:ce(G.currentTime),player_width:parseInt(Z(G,"width")),player_height:parseInt(Z(G,"height")),player_autoplay_on:G.autoplay,player_preload_on:G.preload,player_language_code:G.lang,player_is_fullscreen:Wt()&&!!(Wt().fullscreenElement||Wt().webkitFullscreenElement||Wt().mozFullScreenElement||Wt().msFullscreenElement),video_poster_url:G.poster,video_source_url:de||Se||G.currentSrc,video_source_duration:ce(G.duration),video_source_height:G.videoHeight,video_source_width:G.videoWidth,view_dropped_frame_count:(fe=G)===null||fe===void 0||(se=fe.getVideoPlaybackQuality)===null||se===void 0?void 0:se.call(fe).droppedVideoFrames},Ke=K.getPlayheadTime();if(G.getStartDate&&Ke>0){var $e=G.getStartDate();if($e&&typeof $e.getTime=="function"&&$e.getTime()){var Ee=$e.getTime();if(Ne.player_program_time=Ee+Ke,G.seekable.length>0){var je=Ee+G.seekable.end(G.seekable.length-1);Ne.player_live_edge_program_time=je}}}return Ne},G.mux=G.mux||{},G.mux.deleted=!1,G.mux.emit=function(fe,se){M.emit(X,fe,se)};var oe=function(){Q.error("The monitor for this video element has already been destroyed.")};G.mux.destroy=function(){Object.keys(G.mux.listeners).forEach(function(fe){G.removeEventListener(fe,G.mux.listeners[fe],!1)}),delete G.mux.listeners,G.mux.destroy=oe,G.mux.swapElement=oe,G.mux.emit=oe,G.mux.addHLSJS=oe,G.mux.addDashJS=oe,G.mux.removeHLSJS=oe,G.mux.removeDashJS=oe,G.mux.deleted=!0,M.emit(X,"destroy")},G.mux.swapElement=function(fe){var se=Qr(E(fe),3),de=se[0],Se=se[1],Ne=se[2];return de?Ne!=="video"&&Ne!=="audio"?M.log.error("The element of `"+Se+"` was not a media element."):(de.muxId=G.muxId,delete G.muxId,de.mux=de.mux||{},de.mux.listeners=i()({},G.mux.listeners),delete G.mux.listeners,Object.keys(de.mux.listeners).forEach(function(Ke){G.removeEventListener(Ke,de.mux.listeners[Ke],!1),de.addEventListener(Ke,de.mux.listeners[Ke],!1)}),de.mux.swapElement=G.mux.swapElement,de.mux.destroy=G.mux.destroy,delete G.mux,void(G=de)):M.log.error("No element was found with the `"+Se+"` query selector.")},G.mux.addHLSJS=function(fe){M.addHLSJS(X,fe)},G.mux.addDashJS=function(fe){M.addDashJS(X,fe)},G.mux.removeHLSJS=function(){M.removeHLSJS(X)},G.mux.removeDashJS=function(){M.removeDashJS(X)},M.init(X,K),M.emit(X,"playerready"),G.paused||(M.emit(X,"play"),G.readyState>2&&M.emit(X,"playing")),G.mux.listeners={},Gi.forEach(function(fe){(fe!=="error"||K.automaticErrorTracking)&&(G.mux.listeners[fe]=function(){var se={};if(fe==="error"){if(!G.error||G.error.code===1)return;se.player_error_code=G.error.code,se.player_error_message=Hi[G.error.code]||G.error.message}M.emit(X,fe,se)},G.addEventListener(fe,G.mux.listeners[fe],!1))})}(Gt,F,P)},destroyMonitor:function(F){var P=on(E(F),1)[0];P&&P.mux&&typeof P.mux.destroy=="function"?P.mux.destroy():e.error("A video element monitor for `"+F+"` has not been initialized via `mux.monitor`.")},addHLSJS:function(F,P){var M=D(F);st[M]?st[M].addHLSJS(P):e.error("A monitor for `"+M+"` has not been initialized.")},addDashJS:function(F,P){var M=D(F);st[M]?st[M].addDashJS(P):e.error("A monitor for `"+M+"` has not been initialized.")},removeHLSJS:function(F){var P=D(F);st[P]?st[P].removeHLSJS():e.error("A monitor for `"+P+"` has not been initialized.")},removeDashJS:function(F){var P=D(F);st[P]?st[P].removeDashJS():e.error("A monitor for `"+P+"` has not been initialized.")},init:function(F,P){s()&&P&&P.respectDoNotTrack&&e.info("The browser's Do Not Track flag is enabled - Mux beaconing is disabled.");var M=D(F);st[M]=new ji(Gt,M,P)},emit:function(F,P,M){var N=D(F);st[N]?(st[N].emit(P,M),P==="destroy"&&delete st[N]):e.error("A monitor for `"+N+"` has not been initialized.")},checkDoNotTrack:s,log:e,utils:an,events:sn,WINDOW_HIDDEN:!1,WINDOW_UNLOADING:!1};Object.assign(Gt,ln),_()!==void 0&&typeof _().addEventListener=="function"&&_().addEventListener("pagehide",function(F){F.persisted||(Gt.WINDOW_UNLOADING=!0)},!1);var un=Gt},655:function(A,w,O){var b,_;function y(x){return y=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(D){return typeof D}:function(D){return D&&typeof Symbol=="function"&&D.constructor===Symbol&&D!==Symbol.prototype?"symbol":typeof D},y(x);}(function(x){var D=!1;if((_=typeof(b=x)=="function"?b.call(w,O,w,A):b)===void 0||(A.exports=_),D=!0,y(w)==="object"&&(A.exports=x(),D=!0),!D){var E=window.Cookies,m=window.Cookies=x();m.noConflict=function(){return window.Cookies=E,m}}})(function(){var x=function(){for(var D=0,E={};D<arguments.length;D++){var m=arguments[D];for(var p in m)E[p]=m[p]}return E};return function D(E){function m(p,f,e){var s;if(typeof document!="undefined"){if(arguments.length>1){if(typeof(e=x({path:"/"},m.defaults,e)).expires=="number"){var h=new Date;h.setMilliseconds(h.getMilliseconds()+864e5*e.expires),e.expires=h}try{s=JSON.stringify(f),/^[\{\[]/.test(s)&&(f=s)}catch{}return f=E.write?E.write(f,p):encodeURIComponent(String(f)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent),p=(p=(p=encodeURIComponent(String(p))).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent)).replace(/[\(\)]/g,escape),document.cookie=[p,"=",f,e.expires?"; expires="+e.expires.toUTCString():"",e.path?"; path="+e.path:"",e.domain?"; domain="+e.domain:"",e.secure?"; secure":""].join("")}p||(s={});for(var g=document.cookie?document.cookie.split("; "):[],i=/(%[0-9A-Z]{2})+/g,r=0;r<g.length;r++){var o=g[r].split("="),c=o.slice(1).join("=");c.charAt(0)==='"'&&(c=c.slice(1,-1));try{var t=o[0].replace(i,decodeURIComponent);if(c=E.read?E.read(c,t):E(c,t)||c.replace(i,decodeURIComponent),this.json)try{c=JSON.parse(c)}catch{}if(p===t){s=c;break}p||(s[t]=c)}catch{}}return s}}return m.set=m,m.get=function(p){return m.call(m,p)},m.getJSON=function(){return m.apply({json:!0},[].slice.call(arguments))},m.defaults={},m.remove=function(p,f){m(p,"",x(f,{expires:-1}))},m.withConverter=D,m}(function(){})})},153:function(A,w,O){var b,_=O.g!==void 0?O.g:typeof window!="undefined"?window:{},y=O(558);typeof document!="undefined"?b=document:(b=_["__GLOBAL_DOCUMENT_CACHE@4"])||(b=_["__GLOBAL_DOCUMENT_CACHE@4"]=y),A.exports=b},48:function(A,w,O){var b;b=typeof window!="undefined"?window:O.g!==void 0?O.g:typeof self!="undefined"?self:{},A.exports=b},678:function(A){var w=9007199254740991,O="[object Arguments]",b="[object Function]",_="[object GeneratorFunction]",y=/^(?:0|[1-9]\d*)$/;function x(S,T,I){switch(I.length){case 0:return S.call(T);case 1:return S.call(T,I[0]);case 2:return S.call(T,I[0],I[1]);case 3:return S.call(T,I[0],I[1],I[2])}return S.apply(T,I)}var D,E,m=Object.prototype,p=m.hasOwnProperty,f=m.toString,e=m.propertyIsEnumerable,s=(D=Object.keys,E=Object,function(S){return D(E(S))}),h=Math.max,g=!e.call({valueOf:1},"valueOf");function i(S,T){var I=n(S)||function(W){return function(H){return function(z){return!!z&&typeof z=="object"}(H)&&u(H)}(W)&&p.call(W,"callee")&&(!e.call(W,"callee")||f.call(W)==O)}(S)?function(W,H){for(var z=-1,Y=Array(W);++z<W;)Y[z]=H(z);return Y}(S.length,String):[],k=I.length,B=!!k;for(var U in S)!T&&!p.call(S,U)||B&&(U=="length"||o(U,k))||I.push(U);return I}function r(S,T,I){var k=S[T];p.call(S,T)&&t(k,I)&&(I!==void 0||T in S)||(S[T]=I)}function o(S,T){return!!(T=T==null?w:T)&&(typeof S=="number"||y.test(S))&&S>-1&&S%1==0&&S<T}function c(S){var T=S&&S.constructor;return S===(typeof T=="function"&&T.prototype||m)}function t(S,T){return S===T||S!=S&&T!=T}var n=Array.isArray;function u(S){return S!=null&&function(T){return typeof T=="number"&&T>-1&&T%1==0&&T<=w}(S.length)&&!function(T){var I=a(T)?f.call(T):"";return I==b||I==_}(S)}function a(S){var T=typeof S;return!!S&&(T=="object"||T=="function")}var d,v=(d=function(S,T){if(g||c(T)||u(T))(function(k,B,U,W){U||(U={});for(var H=-1,z=B.length;++H<z;){var Y=B[H],$=W?W(U[Y],k[Y],Y,U,k):void 0;r(U,Y,$===void 0?k[Y]:$)}})(T,function(k){return u(k)?i(k):function(B){if(!c(B))return s(B);var U=[];for(var W in Object(B))p.call(B,W)&&W!="constructor"&&U.push(W);return U}(k)}(T),S);else for(var I in T)p.call(T,I)&&r(S,I,T[I])},function(S,T){return T=h(T===void 0?S.length-1:T,0),function(){for(var I=arguments,k=-1,B=h(I.length-T,0),U=Array(B);++k<B;)U[k]=I[T+k];k=-1;for(var W=Array(T+1);++k<T;)W[k]=I[k];return W[T]=U,x(S,this,W)}}(function(S,T){var I=-1,k=T.length,B=k>1?T[k-1]:void 0,U=k>2?T[2]:void 0;for(B=d.length>3&&typeof B=="function"?(k--,B):void 0,U&&function(H,z,Y){if(!a(Y))return!1;var $=typeof z;return!!($=="number"?u(Y)&&o(z,Y.length):$=="string"&&z in Y)&&t(Y[z],H)}(T[0],T[1],U)&&(B=k<3?void 0:B,k=1),S=Object(S);++I<k;){var W=T[I];W&&d(S,W,I,B)}return S}));A.exports=v},640:function(A,w,O){var b,_;(function(y,x){"use strict";b=function(){var D=function(){},E="undefined",m=typeof window!==E&&typeof window.navigator!==E&&/Trident\/|MSIE /.test(window.navigator.userAgent),p=["trace","debug","info","warn","error"];function f(n,u){var a=n[u];if(typeof a.bind=="function")return a.bind(n);try{return Function.prototype.bind.call(a,n)}catch{return function(){return Function.prototype.apply.apply(a,[n,arguments])}}}function e(){console.log&&(console.log.apply?console.log.apply(console,arguments):Function.prototype.apply.apply(console.log,[console,arguments])),console.trace&&console.trace()}function s(n){return n==="debug"&&(n="log"),typeof console!==E&&(n==="trace"&&m?e:console[n]!==void 0?f(console,n):console.log!==void 0?f(console,"log"):D)}function h(n,u){for(var a=0;a<p.length;a++){var d=p[a];this[d]=a<n?D:this.methodFactory(d,n,u)}this.log=this.debug}function g(n,u,a){return function(){typeof console!==E&&(h.call(this,u,a),this[n].apply(this,arguments))}}function i(n,u,a){return s(n)||g.apply(this,arguments)}function r(n,u,a){var d,v=this;u=u==null?"WARN":u;var S="loglevel";function T(U){var W=(p[U]||"silent").toUpperCase();if(typeof window!==E&&S){try{return void(window.localStorage[S]=W)}catch{}try{window.document.cookie=encodeURIComponent(S)+"="+W+";"}catch{}}}function I(){var U;if(typeof window!==E&&S){try{U=window.localStorage[S]}catch{}if(typeof U===E)try{var W=window.document.cookie,H=W.indexOf(encodeURIComponent(S)+"=");H!==-1&&(U=/^([^;]+)/.exec(W.slice(H))[1])}catch{}return v.levels[U]===void 0&&(U=void 0),U}}function k(){if(typeof window!==E&&S){try{return void window.localStorage.removeItem(S)}catch{}try{window.document.cookie=encodeURIComponent(S)+"=; expires=Thu, 01 Jan 1970 00:00:00 UTC"}catch{}}}typeof n=="string"?S+=":"+n:typeof n=="symbol"&&(S=void 0),v.name=n,v.levels={TRACE:0,DEBUG:1,INFO:2,WARN:3,ERROR:4,SILENT:5},v.methodFactory=a||i,v.getLevel=function(){return d},v.setLevel=function(U,W){if(typeof U=="string"&&v.levels[U.toUpperCase()]!==void 0&&(U=v.levels[U.toUpperCase()]),!(typeof U=="number"&&U>=0&&U<=v.levels.SILENT))throw"log.setLevel() called with invalid level: "+U;if(d=U,W!==!1&&T(U),h.call(v,U,n),typeof console===E&&U<v.levels.SILENT)return"No console available for logging"},v.setDefaultLevel=function(U){u=U,I()||v.setLevel(U,!1)},v.resetLevel=function(){v.setLevel(u,!1),k()},v.enableAll=function(U){v.setLevel(v.levels.TRACE,U)},v.disableAll=function(U){v.setLevel(v.levels.SILENT,U)};var B=I();B==null&&(B=u),v.setLevel(B,!1)}var o=new r,c={};o.getLogger=function(n){if(typeof n!="symbol"&&typeof n!="string"||n==="")throw new TypeError("You must supply a name when creating a logger.");var u=c[n];return u||(u=c[n]=new r(n,o.getLevel(),o.methodFactory)),u};var t=typeof window!==E?window.log:void 0;return o.noConflict=function(){return typeof window!==E&&window.log===o&&(window.log=t),o},o.getLoggers=function(){return c},o.default=o,o},(_=typeof b=="function"?b.call(w,O,w,A):b)===void 0||(A.exports=_)})()},375:function(A,w){"use strict";var O=Object.prototype.hasOwnProperty;function b(y){try{return decodeURIComponent(y.replace(/\+/g," "))}catch{return null}}function _(y){try{return encodeURIComponent(y)}catch{return null}}w.stringify=function(y,x){x=x||"";var D,E,m=[];for(E in typeof x!="string"&&(x="?"),y)if(O.call(y,E)){if((D=y[E])||D!=null&&!isNaN(D)||(D=""),E=_(E),D=_(D),E===null||D===null)continue;m.push(E+"="+D)}return m.length?x+m.join("&"):""},w.parse=function(y){for(var x,D=/([^=?#&]+)=?([^&]*)/g,E={};x=D.exec(y);){var m=b(x[1]),p=b(x[2]);m===null||p===null||m in E||(E[m]=p)}return E}},558:function(){}},C={};function L(A){var w=C[A];if(w!==void 0)return w.exports;var O=C[A]={exports:{}};return l[A].call(O.exports,O,O.exports,L),O.exports}return L.n=function(A){var w=A&&A.__esModule?function(){return A.default}:function(){return A};return L.d(w,{a:w}),w},L.d=function(A,w){for(var O in w)L.o(w,O)&&!L.o(A,O)&&Object.defineProperty(A,O,{enumerable:!0,get:w[O]})},L.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch{if(typeof window=="object")return window}}(),L.o=function(A,w){return Object.prototype.hasOwnProperty.call(A,w)},L(80)}()},typeof dr=="object"&&typeof Ir=="object"?Ir.exports=R():typeof dr=="object"?dr.mux=R():j.mux=R()})()});var cr=ei((zt,Pr)=>{typeof window!="undefined"&&function(R,l){typeof zt=="object"&&typeof Pr=="object"?Pr.exports=l():typeof define=="function"&&define.amd?define([],l):typeof zt=="object"?zt.Hls=l():R.Hls=l()}(zt,function(){return function(j){var R={};function l(C){if(R[C])return R[C].exports;var L=R[C]={i:C,l:!1,exports:{}};return j[C].call(L.exports,L,L.exports,l),L.l=!0,L.exports}return l.m=j,l.c=R,l.d=function(C,L,A){l.o(C,L)||Object.defineProperty(C,L,{enumerable:!0,get:A})},l.r=function(C){typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(C,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(C,"__esModule",{value:!0})},l.t=function(C,L){if(L&1&&(C=l(C)),L&8||L&4&&typeof C=="object"&&C&&C.__esModule)return C;var A=Object.create(null);if(l.r(A),Object.defineProperty(A,"default",{enumerable:!0,value:C}),L&2&&typeof C!="string")for(var w in C)l.d(A,w,function(O){return C[O]}.bind(null,w));return A},l.n=function(C){var L=C&&C.__esModule?function(){return C.default}:function(){return C};return l.d(L,"a",L),L},l.o=function(C,L){return Object.prototype.hasOwnProperty.call(C,L)},l.p="/dist/",l(l.s="./src/hls.ts")}({"./node_modules/eventemitter3/index.js":function(j,R,l){"use strict";var C=Object.prototype.hasOwnProperty,L="~";function A(){}Object.create&&(A.prototype=Object.create(null),new A().__proto__||(L=!1));function w(y,x,D){this.fn=y,this.context=x,this.once=D||!1}function O(y,x,D,E,m){if(typeof D!="function")throw new TypeError("The listener must be a function");var p=new w(D,E||y,m),f=L?L+x:x;return y._events[f]?y._events[f].fn?y._events[f]=[y._events[f],p]:y._events[f].push(p):(y._events[f]=p,y._eventsCount++),y}function b(y,x){--y._eventsCount===0?y._events=new A:delete y._events[x]}function _(){this._events=new A,this._eventsCount=0}_.prototype.eventNames=function(){var x=[],D,E;if(this._eventsCount===0)return x;for(E in D=this._events)C.call(D,E)&&x.push(L?E.slice(1):E);return Object.getOwnPropertySymbols?x.concat(Object.getOwnPropertySymbols(D)):x},_.prototype.listeners=function(x){var D=L?L+x:x,E=this._events[D];if(!E)return[];if(E.fn)return[E.fn];for(var m=0,p=E.length,f=new Array(p);m<p;m++)f[m]=E[m].fn;return f},_.prototype.listenerCount=function(x){var D=L?L+x:x,E=this._events[D];return E?E.fn?1:E.length:0},_.prototype.emit=function(x,D,E,m,p,f){var e=L?L+x:x;if(!this._events[e])return!1;var s=this._events[e],h=arguments.length,g,i;if(s.fn){switch(s.once&&this.removeListener(x,s.fn,void 0,!0),h){case 1:return s.fn.call(s.context),!0;case 2:return s.fn.call(s.context,D),!0;case 3:return s.fn.call(s.context,D,E),!0;case 4:return s.fn.call(s.context,D,E,m),!0;case 5:return s.fn.call(s.context,D,E,m,p),!0;case 6:return s.fn.call(s.context,D,E,m,p,f),!0}for(i=1,g=new Array(h-1);i<h;i++)g[i-1]=arguments[i];s.fn.apply(s.context,g)}else{var r=s.length,o;for(i=0;i<r;i++)switch(s[i].once&&this.removeListener(x,s[i].fn,void 0,!0),h){case 1:s[i].fn.call(s[i].context);break;case 2:s[i].fn.call(s[i].context,D);break;case 3:s[i].fn.call(s[i].context,D,E);break;case 4:s[i].fn.call(s[i].context,D,E,m);break;default:if(!g)for(o=1,g=new Array(h-1);o<h;o++)g[o-1]=arguments[o];s[i].fn.apply(s[i].context,g)}}return!0},_.prototype.on=function(x,D,E){return O(this,x,D,E,!1)},_.prototype.once=function(x,D,E){return O(this,x,D,E,!0)},_.prototype.removeListener=function(x,D,E,m){var p=L?L+x:x;if(!this._events[p])return this;if(!D)return b(this,p),this;var f=this._events[p];if(f.fn)f.fn===D&&(!m||f.once)&&(!E||f.context===E)&&b(this,p);else{for(var e=0,s=[],h=f.length;e<h;e++)(f[e].fn!==D||m&&!f[e].once||E&&f[e].context!==E)&&s.push(f[e]);s.length?this._events[p]=s.length===1?s[0]:s:b(this,p)}return this},_.prototype.removeAllListeners=function(x){var D;return x?(D=L?L+x:x,this._events[D]&&b(this,D)):(this._events=new A,this._eventsCount=0),this},_.prototype.off=_.prototype.removeListener,_.prototype.addListener=_.prototype.on,_.prefixed=L,_.EventEmitter=_,j.exports=_},"./node_modules/url-toolkit/src/url-toolkit.js":function(j,R,l){(function(C){var L=/^(?=((?:[a-zA-Z0-9+\-.]+:)?))\1(?=((?:\/\/[^\/?#]*)?))\2(?=((?:(?:[^?#\/]*\/)*[^;?#\/]*)?))\3((?:;[^?#]*)?)(\?[^#]*)?(#[^]*)?$/,A=/^(?=([^\/?#]*))\1([^]*)$/,w=/(?:\/|^)\.(?=\/)/g,O=/(?:\/|^)\.\.\/(?!\.\.\/)[^\/]*(?=\/)/g,b={buildAbsoluteURL:function(_,y,x){if(x=x||{},_=_.trim(),y=y.trim(),!y){if(!x.alwaysNormalize)return _;var D=b.parseURL(_);if(!D)throw new Error("Error trying to parse base URL.");return D.path=b.normalizePath(D.path),b.buildURLFromParts(D)}var E=b.parseURL(y);if(!E)throw new Error("Error trying to parse relative URL.");if(E.scheme)return x.alwaysNormalize?(E.path=b.normalizePath(E.path),b.buildURLFromParts(E)):y;var m=b.parseURL(_);if(!m)throw new Error("Error trying to parse base URL.");if(!m.netLoc&&m.path&&m.path[0]!=="/"){var p=A.exec(m.path);m.netLoc=p[1],m.path=p[2]}m.netLoc&&!m.path&&(m.path="/");var f={scheme:m.scheme,netLoc:E.netLoc,path:null,params:E.params,query:E.query,fragment:E.fragment};if(!E.netLoc&&(f.netLoc=m.netLoc,E.path[0]!=="/"))if(!E.path)f.path=m.path,E.params||(f.params=m.params,E.query||(f.query=m.query));else{var e=m.path,s=e.substring(0,e.lastIndexOf("/")+1)+E.path;f.path=b.normalizePath(s)}return f.path===null&&(f.path=x.alwaysNormalize?b.normalizePath(E.path):E.path),b.buildURLFromParts(f)},parseURL:function(_){var y=L.exec(_);return y?{scheme:y[1]||"",netLoc:y[2]||"",path:y[3]||"",params:y[4]||"",query:y[5]||"",fragment:y[6]||""}:null},normalizePath:function(_){for(_=_.split("").reverse().join("").replace(w,"");_.length!==(_=_.replace(O,"")).length;);return _.split("").reverse().join("")},buildURLFromParts:function(_){return _.scheme+_.netLoc+_.path+_.params+_.query+_.fragment}};j.exports=b})(this)},"./node_modules/webworkify-webpack/index.js":function(j,R,l){function C(x){var D={};function E(p){if(D[p])return D[p].exports;var f=D[p]={i:p,l:!1,exports:{}};return x[p].call(f.exports,f,f.exports,E),f.l=!0,f.exports}E.m=x,E.c=D,E.i=function(p){return p},E.d=function(p,f,e){E.o(p,f)||Object.defineProperty(p,f,{configurable:!1,enumerable:!0,get:e})},E.r=function(p){Object.defineProperty(p,"__esModule",{value:!0})},E.n=function(p){var f=p&&p.__esModule?function(){return p.default}:function(){return p};return E.d(f,"a",f),f},E.o=function(p,f){return Object.prototype.hasOwnProperty.call(p,f)},E.p="/",E.oe=function(p){throw console.error(p),p};var m=E(E.s=ENTRY_MODULE);return m.default||m}var L="[\\.|\\-|\\+|\\w|/|@]+",A="\\(\\s*(/\\*.*?\\*/)?\\s*.*?("+L+").*?\\)";function w(x){return(x+"").replace(/[.?*+^$[\]\\(){}|-]/g,"\\$&")}function O(x){return!isNaN(1*x)}function b(x,D,E){var m={};m[E]=[];var p=D.toString(),f=p.match(/^function\s?\w*\(\w+,\s*\w+,\s*(\w+)\)/);if(!f)return m;for(var e=f[1],s=new RegExp("(\\\\n|\\W)"+w(e)+A,"g"),h;h=s.exec(p);)h[3]!=="dll-reference"&&m[E].push(h[3]);for(s=new RegExp("\\("+w(e)+'\\("(dll-reference\\s('+L+'))"\\)\\)'+A,"g");h=s.exec(p);)x[h[2]]||(m[E].push(h[1]),x[h[2]]=l(h[1]).m),m[h[2]]=m[h[2]]||[],m[h[2]].push(h[4]);for(var g=Object.keys(m),i=0;i<g.length;i++)for(var r=0;r<m[g[i]].length;r++)O(m[g[i]][r])&&(m[g[i]][r]=1*m[g[i]][r]);return m}function _(x){var D=Object.keys(x);return D.reduce(function(E,m){return E||x[m].length>0},!1)}function y(x,D){for(var E={main:[D]},m={main:[]},p={main:{}};_(E);)for(var f=Object.keys(E),e=0;e<f.length;e++){var s=f[e],h=E[s],g=h.pop();if(p[s]=p[s]||{},!(p[s][g]||!x[s][g])){p[s][g]=!0,m[s]=m[s]||[],m[s].push(g);for(var i=b(x,x[s][g],s),r=Object.keys(i),o=0;o<r.length;o++)E[r[o]]=E[r[o]]||[],E[r[o]]=E[r[o]].concat(i[r[o]])}}return m}j.exports=function(x,D){D=D||{};var E={main:l.m},m=D.all?{main:Object.keys(E.main)}:y(E,x),p="";Object.keys(m).filter(function(g){return g!=="main"}).forEach(function(g){for(var i=0;m[g][i];)i++;m[g].push(i),E[g][i]="(function(module, exports, __webpack_require__) { module.exports = __webpack_require__; })",p=p+"var "+g+" = ("+C.toString().replace("ENTRY_MODULE",JSON.stringify(i))+")({"+m[g].map(function(r){return""+JSON.stringify(r)+": "+E[g][r].toString()}).join(",")+`});
9
- `}),p=p+"new (("+C.toString().replace("ENTRY_MODULE",JSON.stringify(x))+")({"+m.main.map(function(g){return""+JSON.stringify(g)+": "+E.main[g].toString()}).join(",")+"}))(self);";var f=new window.Blob([p],{type:"text/javascript"});if(D.bare)return f;var e=window.URL||window.webkitURL||window.mozURL||window.msURL,s=e.createObjectURL(f),h=new window.Worker(s);return h.objectURL=s,h}},"./src/config.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"hlsDefaultConfig",function(){return o}),l.d(R,"mergeConfig",function(){return t}),l.d(R,"enableStreamingMode",function(){return n});var C=l("./src/controller/abr-controller.ts"),L=l("./src/controller/audio-stream-controller.ts"),A=l("./src/controller/audio-track-controller.ts"),w=l("./src/controller/subtitle-stream-controller.ts"),O=l("./src/controller/subtitle-track-controller.ts"),b=l("./src/controller/buffer-controller.ts"),_=l("./src/controller/timeline-controller.ts"),y=l("./src/controller/cap-level-controller.ts"),x=l("./src/controller/fps-controller.ts"),D=l("./src/controller/eme-controller.ts"),E=l("./src/controller/cmcd-controller.ts"),m=l("./src/utils/xhr-loader.ts"),p=l("./src/utils/fetch-loader.ts"),f=l("./src/utils/cues.ts"),e=l("./src/utils/mediakeys-helper.ts"),s=l("./src/utils/logger.ts");function h(){return h=Object.assign?Object.assign.bind():function(u){for(var a=1;a<arguments.length;a++){var d=arguments[a];for(var v in d)Object.prototype.hasOwnProperty.call(d,v)&&(u[v]=d[v])}return u},h.apply(this,arguments)}function g(u,a){var d=Object.keys(u);if(Object.getOwnPropertySymbols){var v=Object.getOwnPropertySymbols(u);a&&(v=v.filter(function(S){return Object.getOwnPropertyDescriptor(u,S).enumerable})),d.push.apply(d,v)}return d}function i(u){for(var a=1;a<arguments.length;a++){var d=arguments[a]!=null?arguments[a]:{};a%2?g(Object(d),!0).forEach(function(v){r(u,v,d[v])}):Object.getOwnPropertyDescriptors?Object.defineProperties(u,Object.getOwnPropertyDescriptors(d)):g(Object(d)).forEach(function(v){Object.defineProperty(u,v,Object.getOwnPropertyDescriptor(d,v))})}return u}function r(u,a,d){return a in u?Object.defineProperty(u,a,{value:d,enumerable:!0,configurable:!0,writable:!0}):u[a]=d,u}var o=i(i({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:m.default,fLoader:void 0,pLoader:void 0,xhrSetup:void 0,licenseXhrSetup:void 0,licenseResponseCallback:void 0,abrController:C.default,bufferController:b.default,capLevelController:y.default,fpsController:x.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,drmSystemOptions:{},requestMediaKeySystemAccessFunc:e.requestMediaKeySystemAccess,testBandwidth:!0,progressive:!1,lowLatencyMode:!0,cmcd:void 0,enableDateRangeMetadataCues:!0,enableEmsgMetadataCues:!0,enableID3MetadataCues:!0},c()),{},{subtitleStreamController:w.SubtitleStreamController,subtitleTrackController:O.default,timelineController:_.TimelineController,audioStreamController:L.default,audioTrackController:A.default,emeController:D.default,cmcdController:E.default});function c(){return{cueHandler:f.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 t(u,a){if((a.liveSyncDurationCount||a.liveMaxLatencyDurationCount)&&(a.liveSyncDuration||a.liveMaxLatencyDuration))throw new Error("Illegal hls.js config: don't mix up liveSyncDurationCount/liveMaxLatencyDurationCount and liveSyncDuration/liveMaxLatencyDuration");if(a.liveMaxLatencyDurationCount!==void 0&&(a.liveSyncDurationCount===void 0||a.liveMaxLatencyDurationCount<=a.liveSyncDurationCount))throw new Error('Illegal hls.js config: "liveMaxLatencyDurationCount" must be greater than "liveSyncDurationCount"');if(a.liveMaxLatencyDuration!==void 0&&(a.liveSyncDuration===void 0||a.liveMaxLatencyDuration<=a.liveSyncDuration))throw new Error('Illegal hls.js config: "liveMaxLatencyDuration" must be greater than "liveSyncDuration"');return h({},u,a)}function n(u){var a=u.loader;if(a!==p.default&&a!==m.default)s.logger.log("[config]: Custom loader detected, cannot enable progressive streaming"),u.progressive=!1;else{var d=Object(p.fetchSupported)();d&&(u.loader=p.default,u.progressive=!0,u.enableSoftwareAES=!0,s.logger.log("[config]: Progressive streaming enabled, using FetchLoader"))}}},"./src/controller/abr-controller.ts":function(j,R,l){"use strict";l.r(R);var C=l("./src/polyfills/number.ts"),L=l("./src/utils/ewma-bandwidth-estimator.ts"),A=l("./src/events.ts"),w=l("./src/utils/buffer-helper.ts"),O=l("./src/errors.ts"),b=l("./src/types/loader.ts"),_=l("./src/utils/logger.ts");function y(E,m){for(var p=0;p<m.length;p++){var f=m[p];f.enumerable=f.enumerable||!1,f.configurable=!0,"value"in f&&(f.writable=!0),Object.defineProperty(E,f.key,f)}}function x(E,m,p){return m&&y(E.prototype,m),p&&y(E,p),Object.defineProperty(E,"prototype",{writable:!1}),E}var D=function(){function E(p){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=p;var f=p.config;this.bwEstimator=new L.default(f.abrEwmaSlowVoD,f.abrEwmaFastVoD,f.abrEwmaDefaultEstimate),this.registerListeners()}var m=E.prototype;return m.registerListeners=function(){var f=this.hls;f.on(A.Events.FRAG_LOADING,this.onFragLoading,this),f.on(A.Events.FRAG_LOADED,this.onFragLoaded,this),f.on(A.Events.FRAG_BUFFERED,this.onFragBuffered,this),f.on(A.Events.LEVEL_LOADED,this.onLevelLoaded,this),f.on(A.Events.ERROR,this.onError,this)},m.unregisterListeners=function(){var f=this.hls;f.off(A.Events.FRAG_LOADING,this.onFragLoading,this),f.off(A.Events.FRAG_LOADED,this.onFragLoaded,this),f.off(A.Events.FRAG_BUFFERED,this.onFragBuffered,this),f.off(A.Events.LEVEL_LOADED,this.onLevelLoaded,this),f.off(A.Events.ERROR,this.onError,this)},m.destroy=function(){this.unregisterListeners(),this.clearTimer(),this.hls=this.onCheck=null,this.fragCurrent=this.partCurrent=null},m.onFragLoading=function(f,e){var s=e.frag;if(s.type===b.PlaylistLevelType.MAIN&&!this.timer){var h;this.fragCurrent=s,this.partCurrent=(h=e.part)!=null?h:null,this.timer=self.setInterval(this.onCheck,100)}},m.onLevelLoaded=function(f,e){var s=this.hls.config;e.details.live?this.bwEstimator.update(s.abrEwmaSlowLive,s.abrEwmaFastLive):this.bwEstimator.update(s.abrEwmaSlowVoD,s.abrEwmaFastVoD)},m._abandonRulesCheck=function(){var f=this.fragCurrent,e=this.partCurrent,s=this.hls,h=s.autoLevelEnabled,g=s.config,i=s.media;if(!(!f||!i)){var r=e?e.stats:f.stats,o=e?e.duration:f.duration;if(r.aborted){_.logger.warn("frag loader destroy or aborted, disarm abandonRules"),this.clearTimer(),this._nextAutoLevel=-1;return}if(!(!h||i.paused||!i.playbackRate||!i.readyState)){var c=performance.now()-r.loading.start,t=Math.abs(i.playbackRate);if(!(c<=500*o/t)){var n=s.levels,u=s.minAutoLevel,a=n[f.level],d=r.total||Math.max(r.loaded,Math.round(o*a.maxBitrate/8)),v=Math.max(1,r.bwEstimate?r.bwEstimate/8:r.loaded*1e3/c),S=(d-r.loaded)/v,T=i.currentTime,I=(w.BufferHelper.bufferInfo(i,T,g.maxBufferHole).end-T)/t;if(!(I>=2*o/t||S<=I)){var k=Number.POSITIVE_INFINITY,B;for(B=f.level-1;B>u;B--){var U=n[B].maxBitrate;if(k=o*U/(8*.8*v),k<I)break}if(!(k>=S)){var W=this.bwEstimator.getEstimate();_.logger.warn("Fragment "+f.sn+(e?" part "+e.index:"")+" of level "+f.level+" is loading too slowly and will cause an underbuffer; aborting and switching to level "+B+`
10
- Current BW estimate: `+(Object(C.isFiniteNumber)(W)?(W/1024).toFixed(3):"Unknown")+` Kb/s
11
- Estimated load time for current fragment: `+S.toFixed(3)+` s
12
- Estimated load time for the next fragment: `+k.toFixed(3)+` s
13
- Time to underbuffer: `+I.toFixed(3)+" s"),s.nextLoadLevel=B,this.bwEstimator.sample(c,r.loaded),this.clearTimer(),f.loader&&(this.fragCurrent=this.partCurrent=null,f.loader.abort()),s.trigger(A.Events.FRAG_LOAD_EMERGENCY_ABORTED,{frag:f,part:e,stats:r})}}}}}},m.onFragLoaded=function(f,e){var s=e.frag,h=e.part;if(s.type===b.PlaylistLevelType.MAIN&&Object(C.isFiniteNumber)(s.sn)){var g=h?h.stats:s.stats,i=h?h.duration:s.duration;if(this.clearTimer(),this.lastLoadedFragLevel=s.level,this._nextAutoLevel=-1,this.hls.config.abrMaxWithRealBitrate){var r=this.hls.levels[s.level],o=(r.loaded?r.loaded.bytes:0)+g.loaded,c=(r.loaded?r.loaded.duration:0)+i;r.loaded={bytes:o,duration:c},r.realBitrate=Math.round(8*o/c)}if(s.bitrateTest){var t={stats:g,frag:s,part:h,id:s.type};this.onFragBuffered(A.Events.FRAG_BUFFERED,t)}}},m.onFragBuffered=function(f,e){var s=e.frag,h=e.part,g=h?h.stats:s.stats;if(!g.aborted&&!(s.type!==b.PlaylistLevelType.MAIN||s.sn==="initSegment")){var i=g.parsing.end-g.loading.start;this.bwEstimator.sample(i,g.loaded),g.bwEstimate=this.bwEstimator.getEstimate(),s.bitrateTest?this.bitrateTestDelay=i/1e3:this.bitrateTestDelay=0}},m.onError=function(f,e){switch(e.details){case O.ErrorDetails.FRAG_LOAD_ERROR:case O.ErrorDetails.FRAG_LOAD_TIMEOUT:this.clearTimer();break;default:break}},m.clearTimer=function(){self.clearInterval(this.timer),this.timer=void 0},m.getNextABRAutoLevel=function(){var f=this.fragCurrent,e=this.partCurrent,s=this.hls,h=s.maxAutoLevel,g=s.config,i=s.minAutoLevel,r=s.media,o=e?e.duration:f?f.duration:0,c=r?r.currentTime:0,t=r&&r.playbackRate!==0?Math.abs(r.playbackRate):1,n=this.bwEstimator?this.bwEstimator.getEstimate():g.abrEwmaDefaultEstimate,u=(w.BufferHelper.bufferInfo(r,c,g.maxBufferHole).end-c)/t,a=this.findBestLevel(n,i,h,u,g.abrBandWidthFactor,g.abrBandWidthUpFactor);if(a>=0)return a;_.logger.trace((u?"rebuffering expected":"buffer is empty")+", finding optimal quality level");var d=o?Math.min(o,g.maxStarvationDelay):g.maxStarvationDelay,v=g.abrBandWidthFactor,S=g.abrBandWidthUpFactor;if(!u){var T=this.bitrateTestDelay;if(T){var I=o?Math.min(o,g.maxLoadingDelay):g.maxLoadingDelay;d=I-T,_.logger.trace("bitrate test took "+Math.round(1e3*T)+"ms, set first fragment max fetchDuration to "+Math.round(1e3*d)+" ms"),v=S=1}}return a=this.findBestLevel(n,i,h,u+d,v,S),Math.max(a,0)},m.findBestLevel=function(f,e,s,h,g,i){for(var r,o=this.fragCurrent,c=this.partCurrent,t=this.lastLoadedFragLevel,n=this.hls.levels,u=n[t],a=!!(u!=null&&(r=u.details)!==null&&r!==void 0&&r.live),d=u==null?void 0:u.codecSet,v=c?c.duration:o?o.duration:0,S=s;S>=e;S--){var T=n[S];if(!(!T||d&&T.codecSet!==d)){var I=T.details,k=(c?I==null?void 0:I.partTarget:I==null?void 0:I.averagetargetduration)||v,B=void 0;S<=t?B=g*f:B=i*f;var U=n[S].maxBitrate,W=U*k/B;if(_.logger.trace("level/adjustedbw/bitrate/avgDuration/maxFetchDuration/fetchDuration: "+S+"/"+Math.round(B)+"/"+U+"/"+k+"/"+h+"/"+W),B>U&&(!W||a&&!this.bitrateTestDelay||W<h))return S}}return-1},x(E,[{key:"nextAutoLevel",get:function(){var f=this._nextAutoLevel,e=this.bwEstimator;if(f!==-1&&!e.canEstimate())return f;var s=this.getNextABRAutoLevel();return f!==-1&&this.hls.levels[s].loadError?f:(f!==-1&&(s=Math.min(f,s)),s)},set:function(f){this._nextAutoLevel=f}}]),E}();R.default=D},"./src/controller/audio-stream-controller.ts":function(j,R,l){"use strict";l.r(R);var C=l("./src/polyfills/number.ts"),L=l("./src/controller/base-stream-controller.ts"),A=l("./src/events.ts"),w=l("./src/utils/buffer-helper.ts"),O=l("./src/controller/fragment-tracker.ts"),b=l("./src/types/level.ts"),_=l("./src/types/loader.ts"),y=l("./src/loader/fragment.ts"),x=l("./src/demux/chunk-cache.ts"),D=l("./src/demux/transmuxer-interface.ts"),E=l("./src/types/transmuxer.ts"),m=l("./src/controller/fragment-finders.ts"),p=l("./src/utils/discontinuities.ts"),f=l("./src/errors.ts");function e(){return e=Object.assign?Object.assign.bind():function(r){for(var o=1;o<arguments.length;o++){var c=arguments[o];for(var t in c)Object.prototype.hasOwnProperty.call(c,t)&&(r[t]=c[t])}return r},e.apply(this,arguments)}function s(r,o){r.prototype=Object.create(o.prototype),r.prototype.constructor=r,h(r,o)}function h(r,o){return h=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,n){return t.__proto__=n,t},h(r,o)}var g=100,i=function(r){s(o,r);function o(t,n){var u;return u=r.call(this,t,n,"[audio-stream-controller]")||this,u.videoBuffer=null,u.videoTrackCC=-1,u.waitingVideoCC=-1,u.audioSwitch=!1,u.trackId=-1,u.waitingData=null,u.mainDetails=null,u.bufferFlushed=!1,u.cachedTrackLoadedData=null,u._registerListeners(),u}var c=o.prototype;return c.onHandlerDestroying=function(){this._unregisterListeners(),this.mainDetails=null},c._registerListeners=function(){var n=this.hls;n.on(A.Events.MEDIA_ATTACHED,this.onMediaAttached,this),n.on(A.Events.MEDIA_DETACHING,this.onMediaDetaching,this),n.on(A.Events.MANIFEST_LOADING,this.onManifestLoading,this),n.on(A.Events.LEVEL_LOADED,this.onLevelLoaded,this),n.on(A.Events.AUDIO_TRACKS_UPDATED,this.onAudioTracksUpdated,this),n.on(A.Events.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),n.on(A.Events.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),n.on(A.Events.ERROR,this.onError,this),n.on(A.Events.BUFFER_RESET,this.onBufferReset,this),n.on(A.Events.BUFFER_CREATED,this.onBufferCreated,this),n.on(A.Events.BUFFER_FLUSHED,this.onBufferFlushed,this),n.on(A.Events.INIT_PTS_FOUND,this.onInitPtsFound,this),n.on(A.Events.FRAG_BUFFERED,this.onFragBuffered,this)},c._unregisterListeners=function(){var n=this.hls;n.off(A.Events.MEDIA_ATTACHED,this.onMediaAttached,this),n.off(A.Events.MEDIA_DETACHING,this.onMediaDetaching,this),n.off(A.Events.MANIFEST_LOADING,this.onManifestLoading,this),n.off(A.Events.LEVEL_LOADED,this.onLevelLoaded,this),n.off(A.Events.AUDIO_TRACKS_UPDATED,this.onAudioTracksUpdated,this),n.off(A.Events.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),n.off(A.Events.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),n.off(A.Events.ERROR,this.onError,this),n.off(A.Events.BUFFER_RESET,this.onBufferReset,this),n.off(A.Events.BUFFER_CREATED,this.onBufferCreated,this),n.off(A.Events.BUFFER_FLUSHED,this.onBufferFlushed,this),n.off(A.Events.INIT_PTS_FOUND,this.onInitPtsFound,this),n.off(A.Events.FRAG_BUFFERED,this.onFragBuffered,this)},c.onInitPtsFound=function(n,u){var a=u.frag,d=u.id,v=u.initPTS;if(d==="main"){var S=a.cc;this.initPTS[a.cc]=v,this.log("InitPTS for cc: "+S+" found from main: "+v),this.videoTrackCC=S,this.state===L.State.WAITING_INIT_PTS&&this.tick()}},c.startLoad=function(n){if(!this.levels){this.startPosition=n,this.state=L.State.STOPPED;return}var u=this.lastCurrentTime;this.stopLoad(),this.setInterval(g),this.fragLoadError=0,u>0&&n===-1?(this.log("Override startPosition with lastCurrentTime @"+u.toFixed(3)),n=u,this.state=L.State.IDLE):(this.loadedmetadata=!1,this.state=L.State.WAITING_TRACK),this.nextLoadPosition=this.startPosition=this.lastCurrentTime=n,this.tick()},c.doTick=function(){switch(this.state){case L.State.IDLE:this.doTickIdle();break;case L.State.WAITING_TRACK:{var n,u=this.levels,a=this.trackId,d=u==null||(n=u[a])===null||n===void 0?void 0:n.details;if(d){if(this.waitForCdnTuneIn(d))break;this.state=L.State.WAITING_INIT_PTS}break}case L.State.FRAG_LOADING_WAITING_RETRY:{var v,S=performance.now(),T=this.retryDate;(!T||S>=T||(v=this.media)!==null&&v!==void 0&&v.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 I=this.waitingData;if(I){var k=I.frag,B=I.part,U=I.cache,W=I.complete;if(this.initPTS[k.cc]!==void 0){this.waitingData=null,this.waitingVideoCC=-1,this.state=L.State.FRAG_LOADING;var H=U.flush(),z={frag:k,part:B,payload:H,networkDetails:null};this._handleFragmentLoadProgress(z),W&&r.prototype._handleFragmentLoadComplete.call(this,z)}else if(this.videoTrackCC!==this.waitingVideoCC)this.log("Waiting fragment cc ("+k.cc+") cancelled because video is at cc "+this.videoTrackCC),this.clearWaitingFragment();else{var Y=this.getLoadPosition(),$=w.BufferHelper.bufferInfo(this.mediaBuffer,Y,this.config.maxBufferHole),ee=Object(m.fragmentWithinToleranceTest)($.end,this.config.maxFragLookUpTolerance,k);ee<0&&(this.log("Waiting fragment cc ("+k.cc+") @ "+k.start+" cancelled because another fragment at "+$.end+" is needed"),this.clearWaitingFragment())}}else this.state=L.State.IDLE}}this.onTickEnd()},c.clearWaitingFragment=function(){var n=this.waitingData;n&&(this.fragmentTracker.removeFragment(n.frag),this.waitingData=null,this.waitingVideoCC=-1,this.state=L.State.IDLE)},c.resetLoadingState=function(){this.clearWaitingFragment(),r.prototype.resetLoadingState.call(this)},c.onTickEnd=function(){var n=this.media;if(!(!n||!n.readyState)){var u=this.mediaBuffer?this.mediaBuffer:n,a=u.buffered;!this.loadedmetadata&&a.length&&(this.loadedmetadata=!0),this.lastCurrentTime=n.currentTime}},c.doTickIdle=function(){var n,u,a=this.hls,d=this.levels,v=this.media,S=this.trackId,T=a.config;if(!(!d||!d[S])&&!(!v&&(this.startFragRequested||!T.startFragPrefetch))){var I=d[S],k=I.details;if(!k||k.live&&this.levelLastLoaded!==S||this.waitForCdnTuneIn(k)){this.state=L.State.WAITING_TRACK;return}var B=this.mediaBuffer?this.mediaBuffer:this.media;this.bufferFlushed&&B&&(this.bufferFlushed=!1,this.afterBufferFlushed(B,y.ElementaryStreamTypes.AUDIO,_.PlaylistLevelType.AUDIO));var U=this.getFwdBufferInfo(B,_.PlaylistLevelType.AUDIO);if(U!==null){var W=this.getFwdBufferInfo(this.videoBuffer?this.videoBuffer:this.media,_.PlaylistLevelType.MAIN),H=U.len,z=this.getMaxBufferLength(W==null?void 0:W.len),Y=this.audioSwitch;if(!(H>=z&&!Y)){if(!Y&&this._streamEnded(U,k)){a.trigger(A.Events.BUFFER_EOS,{type:"audio"}),this.state=L.State.ENDED;return}var $=k.fragments,ee=$[0].start,q=U.end;if(Y&&v){var re=this.getLoadPosition();q=re,k.PTSKnown&&re<ee&&(U.end>ee||U.nextStart)&&(this.log("Alt audio track ahead of main track, seek to start of alt audio track"),v.currentTime=ee+.05)}if(!(W&&q>W.end+k.targetduration)&&!((!W||!W.len)&&U.len)){var ae=this.getNextFragment(q,k);if(!ae){this.bufferFlushed=!0;return}((n=ae.decryptdata)===null||n===void 0?void 0:n.keyFormat)==="identity"&&!((u=ae.decryptdata)!==null&&u!==void 0&&u.key)?this.loadKey(ae,k):this.loadFragment(ae,k,q)}}}}},c.getMaxBufferLength=function(n){var u=r.prototype.getMaxBufferLength.call(this);return n?Math.max(u,n):u},c.onMediaDetaching=function(){this.videoBuffer=null,r.prototype.onMediaDetaching.call(this)},c.onAudioTracksUpdated=function(n,u){var a=u.audioTracks;this.resetTransmuxer(),this.levels=a.map(function(d){return new b.Level(d)})},c.onAudioTrackSwitching=function(n,u){var a=!!u.url;this.trackId=u.id;var d=this.fragCurrent;d!=null&&d.loader&&d.loader.abort(),this.fragCurrent=null,this.clearWaitingFragment(),a?this.setInterval(g):this.resetTransmuxer(),a?(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(n,u){this.mainDetails=u.details,this.cachedTrackLoadedData!==null&&(this.hls.trigger(A.Events.AUDIO_TRACK_LOADED,this.cachedTrackLoadedData),this.cachedTrackLoadedData=null)},c.onAudioTrackLoaded=function(n,u){var a;if(this.mainDetails==null){this.cachedTrackLoadedData=u;return}var d=this.levels,v=u.details,S=u.id;if(!d){this.warn("Audio tracks were reset while loading level "+S);return}this.log("Track "+S+" loaded ["+v.startSN+","+v.endSN+"],duration:"+v.totalduration);var T=d[S],I=0;if(v.live||(a=T.details)!==null&&a!==void 0&&a.live){var k=this.mainDetails;if(v.fragments[0]||(v.deltaUpdateFailed=!0),v.deltaUpdateFailed||!k)return;!T.details&&v.hasProgramDateTime&&k.hasProgramDateTime?(Object(p.alignMediaPlaylistByPDT)(v,k),I=v.fragments[0].start):I=this.alignPlaylists(v,T.details)}T.details=v,this.levelLastLoaded=S,!this.startFragRequested&&(this.mainDetails||!v.live)&&this.setStartPosition(T.details,I),this.state===L.State.WAITING_TRACK&&!this.waitForCdnTuneIn(v)&&(this.state=L.State.IDLE),this.tick()},c._handleFragmentLoadProgress=function(n){var u,a=n.frag,d=n.part,v=n.payload,S=this.config,T=this.trackId,I=this.levels;if(!I){this.warn("Audio tracks were reset while fragment load was in progress. Fragment "+a.sn+" of level "+a.level+" will not be buffered");return}var k=I[T];console.assert(k,"Audio track is defined on fragment load progress");var B=k.details;console.assert(B,"Audio track details are defined on fragment load progress");var U=S.defaultAudioCodec||k.audioCodec||"mp4a.40.2",W=this.transmuxer;W||(W=this.transmuxer=new D.default(this.hls,_.PlaylistLevelType.AUDIO,this._handleTransmuxComplete.bind(this),this._handleTransmuxerFlush.bind(this)));var H=this.initPTS[a.cc],z=(u=a.initSegment)===null||u===void 0?void 0:u.data;if(H!==void 0){var Y=!1,$=d?d.index:-1,ee=$!==-1,q=new E.ChunkMetadata(a.level,a.sn,a.stats.chunkCount,v.byteLength,$,ee);W.push(v,z,U,"",a,d,B.totalduration,Y,q,H)}else{this.log("Unknown video PTS for cc "+a.cc+", waiting for video PTS before demuxing audio frag "+a.sn+" of ["+B.startSN+" ,"+B.endSN+"],track "+T);var re=this.waitingData=this.waitingData||{frag:a,part:d,cache:new x.default,complete:!1},ae=re.cache;ae.push(new Uint8Array(v)),this.waitingVideoCC=this.videoTrackCC,this.state=L.State.WAITING_INIT_PTS}},c._handleFragmentLoadComplete=function(n){if(this.waitingData){this.waitingData.complete=!0;return}r.prototype._handleFragmentLoadComplete.call(this,n)},c.onBufferReset=function(){this.mediaBuffer=this.videoBuffer=null,this.loadedmetadata=!1},c.onBufferCreated=function(n,u){var a=u.tracks.audio;a&&(this.mediaBuffer=a.buffer||null),u.tracks.video&&(this.videoBuffer=u.tracks.video.buffer||null)},c.onFragBuffered=function(n,u){var a=u.frag,d=u.part;if(a.type===_.PlaylistLevelType.AUDIO){if(this.fragContextChanged(a)){this.warn("Fragment "+a.sn+(d?" p: "+d.index:"")+" of level "+a.level+" finished buffering, but was aborted. state: "+this.state+", audioSwitch: "+this.audioSwitch);return}a.sn!=="initSegment"&&(this.fragPrevious=a,this.audioSwitch&&(this.audioSwitch=!1,this.hls.trigger(A.Events.AUDIO_TRACK_SWITCHED,{id:this.trackId}))),this.fragBufferedComplete(a,d)}},c.onError=function(n,u){switch(u.details){case f.ErrorDetails.FRAG_LOAD_ERROR:case f.ErrorDetails.FRAG_LOAD_TIMEOUT:case f.ErrorDetails.KEY_LOAD_ERROR:case f.ErrorDetails.KEY_LOAD_TIMEOUT:this.onFragmentOrKeyLoadError(_.PlaylistLevelType.AUDIO,u);break;case f.ErrorDetails.AUDIO_TRACK_LOAD_ERROR:case f.ErrorDetails.AUDIO_TRACK_LOAD_TIMEOUT:this.state!==L.State.ERROR&&this.state!==L.State.STOPPED&&(this.state=u.fatal?L.State.ERROR:L.State.IDLE,this.warn(u.details+" while loading frag, switching to "+this.state+" state"));break;case f.ErrorDetails.BUFFER_FULL_ERROR:if(u.parent==="audio"&&(this.state===L.State.PARSING||this.state===L.State.PARSED)){var a=!0,d=this.getFwdBufferInfo(this.mediaBuffer,_.PlaylistLevelType.AUDIO);d&&d.len>.5&&(a=!this.reduceMaxBufferLength(d.len)),a&&(this.warn("Buffer full error also media.currentTime is not buffered, flush audio buffer"),this.fragCurrent=null,r.prototype.flushMainBuffer.call(this,0,Number.POSITIVE_INFINITY,"audio")),this.resetLoadingState()}break;default:break}},c.onBufferFlushed=function(n,u){var a=u.type;a===y.ElementaryStreamTypes.AUDIO&&(this.bufferFlushed=!0)},c._handleTransmuxComplete=function(n){var u,a="audio",d=this.hls,v=n.remuxResult,S=n.chunkMeta,T=this.getCurrentContext(S);if(!T){this.warn("The loading context changed while buffering fragment "+S.sn+" of level "+S.level+". This chunk will not be buffered."),this.resetStartWhenNotLoaded(S.level);return}var I=T.frag,k=T.part,B=T.level.details,U=v.audio,W=v.text,H=v.id3,z=v.initSegment;if(!(this.fragContextChanged(I)||!B)){if(this.state=L.State.PARSING,this.audioSwitch&&U&&this.completeAudioSwitch(),z!=null&&z.tracks&&(this._bufferInitSegment(z.tracks,I,S),d.trigger(A.Events.FRAG_PARSING_INIT_SEGMENT,{frag:I,id:a,tracks:z.tracks})),U){var Y=U.startPTS,$=U.endPTS,ee=U.startDTS,q=U.endDTS;k&&(k.elementaryStreams[y.ElementaryStreamTypes.AUDIO]={startPTS:Y,endPTS:$,startDTS:ee,endDTS:q}),I.setElementaryStreamInfo(y.ElementaryStreamTypes.AUDIO,Y,$,ee,q),this.bufferFragmentData(U,I,k,S)}if(H!=null&&(u=H.samples)!==null&&u!==void 0&&u.length){var re=e({id:a,frag:I,details:B},H);d.trigger(A.Events.FRAG_PARSING_METADATA,re)}if(W){var ae=e({id:a,frag:I,details:B},W);d.trigger(A.Events.FRAG_PARSING_USERDATA,ae)}}},c._bufferInitSegment=function(n,u,a){if(this.state===L.State.PARSING){n.video&&delete n.video;var d=n.audio;if(!!d){d.levelCodec=d.codec,d.id="audio",this.log("Init audio buffer, container:"+d.container+", codecs[parsed]=["+d.codec+"]"),this.hls.trigger(A.Events.BUFFER_CODECS,n);var v=d.initSegment;if(v!=null&&v.byteLength){var S={type:"audio",frag:u,part:null,chunkMeta:a,parent:u.type,data:v};this.hls.trigger(A.Events.BUFFER_APPENDING,S)}this.tick()}}},c.loadFragment=function(n,u,a){var d=this.fragmentTracker.getState(n);this.fragCurrent=n,(this.audioSwitch||d===O.FragmentState.NOT_LOADED||d===O.FragmentState.PARTIAL)&&(n.sn==="initSegment"?this._loadInitSegment(n):u.live&&!Object(C.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=L.State.WAITING_INIT_PTS):(this.startFragRequested=!0,r.prototype.loadFragment.call(this,n,u,a)))},c.completeAudioSwitch=function(){var n=this.hls,u=this.media,a=this.trackId;u&&(this.log("Switching audio track : flushing all audio"),r.prototype.flushMainBuffer.call(this,0,Number.POSITIVE_INFINITY,"audio")),this.audioSwitch=!1,n.trigger(A.Events.AUDIO_TRACK_SWITCHED,{id:a})},o}(L.default);R.default=i},"./src/controller/audio-track-controller.ts":function(j,R,l){"use strict";l.r(R);var C=l("./src/events.ts"),L=l("./src/errors.ts"),A=l("./src/controller/base-playlist-controller.ts"),w=l("./src/types/loader.ts");function O(D,E){for(var m=0;m<E.length;m++){var p=E[m];p.enumerable=p.enumerable||!1,p.configurable=!0,"value"in p&&(p.writable=!0),Object.defineProperty(D,p.key,p)}}function b(D,E,m){return E&&O(D.prototype,E),m&&O(D,m),Object.defineProperty(D,"prototype",{writable:!1}),D}function _(D,E){D.prototype=Object.create(E.prototype),D.prototype.constructor=D,y(D,E)}function y(D,E){return y=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(p,f){return p.__proto__=f,p},y(D,E)}var x=function(D){_(E,D);function E(p){var f;return f=D.call(this,p,"[audio-track-controller]")||this,f.tracks=[],f.groupId=null,f.tracksInGroup=[],f.trackId=-1,f.trackName="",f.selectDefaultTrack=!0,f.registerListeners(),f}var m=E.prototype;return m.registerListeners=function(){var f=this.hls;f.on(C.Events.MANIFEST_LOADING,this.onManifestLoading,this),f.on(C.Events.MANIFEST_PARSED,this.onManifestParsed,this),f.on(C.Events.LEVEL_LOADING,this.onLevelLoading,this),f.on(C.Events.LEVEL_SWITCHING,this.onLevelSwitching,this),f.on(C.Events.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),f.on(C.Events.ERROR,this.onError,this)},m.unregisterListeners=function(){var f=this.hls;f.off(C.Events.MANIFEST_LOADING,this.onManifestLoading,this),f.off(C.Events.MANIFEST_PARSED,this.onManifestParsed,this),f.off(C.Events.LEVEL_LOADING,this.onLevelLoading,this),f.off(C.Events.LEVEL_SWITCHING,this.onLevelSwitching,this),f.off(C.Events.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),f.off(C.Events.ERROR,this.onError,this)},m.destroy=function(){this.unregisterListeners(),this.tracks.length=0,this.tracksInGroup.length=0,D.prototype.destroy.call(this)},m.onManifestLoading=function(){this.tracks=[],this.groupId=null,this.tracksInGroup=[],this.trackId=-1,this.trackName="",this.selectDefaultTrack=!0},m.onManifestParsed=function(f,e){this.tracks=e.audioTracks||[]},m.onAudioTrackLoaded=function(f,e){var s=e.id,h=e.details,g=this.tracksInGroup[s];if(!g){this.warn("Invalid audio track id "+s);return}var i=g.details;g.details=e.details,this.log("audioTrack "+s+" loaded ["+h.startSN+"-"+h.endSN+"]"),s===this.trackId&&(this.retryCount=0,this.playlistLoaded(s,e,i))},m.onLevelLoading=function(f,e){this.switchLevel(e.level)},m.onLevelSwitching=function(f,e){this.switchLevel(e.level)},m.switchLevel=function(f){var e=this.hls.levels[f];if(!!(e!=null&&e.audioGroupIds)){var s=e.audioGroupIds[e.urlId];if(this.groupId!==s){this.groupId=s;var h=this.tracks.filter(function(i){return!s||i.groupId===s});this.selectDefaultTrack&&!h.some(function(i){return i.default})&&(this.selectDefaultTrack=!1),this.tracksInGroup=h;var g={audioTracks:h};this.log("Updating audio tracks, "+h.length+' track(s) found in "'+s+'" group-id'),this.hls.trigger(C.Events.AUDIO_TRACKS_UPDATED,g),this.selectInitialTrack()}}},m.onError=function(f,e){D.prototype.onError.call(this,f,e),!(e.fatal||!e.context)&&e.context.type===w.PlaylistContextType.AUDIO_TRACK&&e.context.id===this.trackId&&e.context.groupId===this.groupId&&this.retryLoadingOrFail(e)},m.setAudioTrack=function(f){var e=this.tracksInGroup;if(f<0||f>=e.length){this.warn("Invalid id passed to audio-track controller");return}this.clearTimer();var s=e[this.trackId];this.log("Now switching to audio-track index "+f);var h=e[f],g=h.id,i=h.groupId,r=i===void 0?"":i,o=h.name,c=h.type,t=h.url;if(this.trackId=f,this.trackName=o,this.selectDefaultTrack=!1,this.hls.trigger(C.Events.AUDIO_TRACK_SWITCHING,{id:g,groupId:r,name:o,type:c,url:t}),!(h.details&&!h.details.live)){var n=this.switchParams(h.url,s==null?void 0:s.details);this.loadPlaylist(n)}},m.selectInitialTrack=function(){var f=this.tracksInGroup;console.assert(f.length,"Initial audio track should be selected when tracks are known");var e=this.trackName,s=this.findTrackId(e)||this.findTrackId();s!==-1?this.setAudioTrack(s):(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}))},m.findTrackId=function(f){for(var e=this.tracksInGroup,s=0;s<e.length;s++){var h=e[s];if((!this.selectDefaultTrack||h.default)&&(!f||f===h.name))return h.id}return-1},m.loadPlaylist=function(f){var e=this.tracksInGroup[this.trackId];if(this.shouldLoadTrack(e)){var s=e.id,h=e.groupId,g=e.url;if(f)try{g=f.addDirectives(g)}catch(i){this.warn("Could not construct new URL with HLS Delivery Directives: "+i)}this.log("loading audio-track playlist for id: "+s),this.clearTimer(),this.hls.trigger(C.Events.AUDIO_TRACK_LOADING,{url:g,id:s,groupId:h,deliveryDirectives:f||null})}},b(E,[{key:"audioTracks",get:function(){return this.tracksInGroup}},{key:"audioTrack",get:function(){return this.trackId},set:function(f){this.selectDefaultTrack=!1,this.setAudioTrack(f)}}]),E}(A.default);R.default=x},"./src/controller/base-playlist-controller.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"default",function(){return b});var C=l("./src/polyfills/number.ts"),L=l("./src/types/level.ts"),A=l("./src/controller/level-helper.ts"),w=l("./src/utils/logger.ts"),O=l("./src/errors.ts"),b=function(){function _(x,D){this.hls=void 0,this.timer=-1,this.canLoad=!1,this.retryCount=0,this.log=void 0,this.warn=void 0,this.log=w.logger.log.bind(w.logger,D+":"),this.warn=w.logger.warn.bind(w.logger,D+":"),this.hls=x}var y=_.prototype;return y.destroy=function(){this.clearTimer(),this.hls=this.log=this.warn=null},y.onError=function(D,E){E.fatal&&E.type===O.ErrorTypes.NETWORK_ERROR&&this.clearTimer()},y.clearTimer=function(){clearTimeout(this.timer),this.timer=-1},y.startLoad=function(){this.canLoad=!0,this.retryCount=0,this.loadPlaylist()},y.stopLoad=function(){this.canLoad=!1,this.clearTimer()},y.switchParams=function(D,E){var m=E==null?void 0:E.renditionReports;if(m)for(var p=0;p<m.length;p++){var f=m[p],e=""+f.URI;if(e===D.slice(-e.length)){var s=parseInt(f["LAST-MSN"]),h=parseInt(f["LAST-PART"]);if(E&&this.hls.config.lowLatencyMode){var g=Math.min(E.age-E.partTarget,E.targetduration);h!==void 0&&g>E.partTarget&&(h+=1)}if(Object(C.isFiniteNumber)(s))return new L.HlsUrlParameters(s,Object(C.isFiniteNumber)(h)?h:void 0,L.HlsSkip.No)}}},y.loadPlaylist=function(D){},y.shouldLoadTrack=function(D){return this.canLoad&&D&&!!D.url&&(!D.details||D.details.live)},y.playlistLoaded=function(D,E,m){var p=this,f=E.details,e=E.stats,s=e.loading.end?Math.max(0,self.performance.now()-e.loading.end):0;if(f.advancedDateTime=Date.now()-s,f.live||m!=null&&m.live){if(f.reloaded(m),m&&this.log("live playlist "+D+" "+(f.advanced?"REFRESHED "+f.lastPartSn+"-"+f.lastPartIndex:"MISSED")),m&&f.fragments.length>0&&Object(A.mergeDetails)(m,f),!this.canLoad||!f.live)return;var h,g=void 0,i=void 0;if(f.canBlockReload&&f.endSN&&f.advanced){var r=this.hls.config.lowLatencyMode,o=f.lastPartSn,c=f.endSN,t=f.lastPartIndex,n=t!==-1,u=o===c,a=r?0:t;n?(g=u?c+1:o,i=u?a:t+1):g=c+1;var d=f.age,v=d+f.ageHeader,S=Math.min(v-f.partTarget,f.targetduration*1.5);if(S>0){if(m&&S>m.tuneInGoal)this.warn("CDN Tune-in goal increased from: "+m.tuneInGoal+" to: "+S+" with playlist age: "+f.age),S=0;else{var T=Math.floor(S/f.targetduration);if(g+=T,i!==void 0){var I=Math.round(S%f.targetduration/f.partTarget);i+=I}this.log("CDN Tune-in age: "+f.ageHeader+"s last advanced "+d.toFixed(2)+"s goal: "+S+" skip sn "+T+" to part "+i)}f.tuneInGoal=S}if(h=this.getDeliveryDirectives(f,E.deliveryDirectives,g,i),r||!u){this.loadPlaylist(h);return}}else h=this.getDeliveryDirectives(f,E.deliveryDirectives,g,i);var k=Object(A.computeReloadInterval)(f,e);g!==void 0&&f.canBlockReload&&(k-=f.partTarget||1),this.log("reload live playlist "+D+" in "+Math.round(k)+" ms"),this.timer=self.setTimeout(function(){return p.loadPlaylist(h)},k)}else this.clearTimer()},y.getDeliveryDirectives=function(D,E,m,p){var f=Object(L.getSkipValue)(D,m);return E!=null&&E.skip&&D.deltaUpdateFailed&&(m=E.msn,p=E.part,f=L.HlsSkip.No),new L.HlsUrlParameters(m,p,f)},y.retryLoadingOrFail=function(D){var E=this,m=this.hls.config,p=this.retryCount<m.levelLoadingMaxRetry;if(p){var f;if(this.retryCount++,D.details.indexOf("LoadTimeOut")>-1&&(f=D.context)!==null&&f!==void 0&&f.deliveryDirectives)this.warn("retry playlist loading #"+this.retryCount+' after "'+D.details+'"'),this.loadPlaylist();else{var e=Math.min(Math.pow(2,this.retryCount)*m.levelLoadingRetryDelay,m.levelLoadingMaxRetryTimeout);this.timer=self.setTimeout(function(){return E.loadPlaylist()},e),this.warn("retry playlist loading #"+this.retryCount+" in "+e+' ms after "'+D.details+'"')}}else this.warn('cannot recover from error "'+D.details+'"'),this.clearTimer(),D.fatal=!0;return p},_}()},"./src/controller/base-stream-controller.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"State",function(){return c}),l.d(R,"default",function(){return t});var C=l("./src/polyfills/number.ts"),L=l("./src/task-loop.ts"),A=l("./src/controller/fragment-tracker.ts"),w=l("./src/utils/buffer-helper.ts"),O=l("./src/utils/logger.ts"),b=l("./src/events.ts"),_=l("./src/errors.ts"),y=l("./src/types/transmuxer.ts"),x=l("./src/utils/mp4-tools.ts"),D=l("./src/utils/discontinuities.ts"),E=l("./src/controller/fragment-finders.ts"),m=l("./src/controller/level-helper.ts"),p=l("./src/loader/fragment-loader.ts"),f=l("./src/crypt/decrypter.ts"),e=l("./src/utils/time-ranges.ts"),s=l("./src/types/loader.ts");function h(n,u){for(var a=0;a<u.length;a++){var d=u[a];d.enumerable=d.enumerable||!1,d.configurable=!0,"value"in d&&(d.writable=!0),Object.defineProperty(n,d.key,d)}}function g(n,u,a){return u&&h(n.prototype,u),a&&h(n,a),Object.defineProperty(n,"prototype",{writable:!1}),n}function i(n){if(n===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return n}function r(n,u){n.prototype=Object.create(u.prototype),n.prototype.constructor=n,o(n,u)}function o(n,u){return o=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(d,v){return d.__proto__=v,d},o(n,u)}var c={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"},t=function(n){r(u,n);function u(d,v,S){var T;return T=n.call(this)||this,T.hls=void 0,T.fragPrevious=null,T.fragCurrent=null,T.fragmentTracker=void 0,T.transmuxer=null,T._state=c.STOPPED,T.media=null,T.mediaBuffer=null,T.config=void 0,T.bitrateTest=!1,T.lastCurrentTime=0,T.nextLoadPosition=0,T.startPosition=0,T.loadedmetadata=!1,T.fragLoadError=0,T.retryDate=0,T.levels=null,T.fragmentLoader=void 0,T.levelLastLoaded=null,T.startFragRequested=!1,T.decrypter=void 0,T.initPTS=[],T.onvseeking=null,T.onvended=null,T.logPrefix="",T.log=void 0,T.warn=void 0,T.logPrefix=S,T.log=O.logger.log.bind(O.logger,S+":"),T.warn=O.logger.warn.bind(O.logger,S+":"),T.hls=d,T.fragmentLoader=new p.default(d.config),T.fragmentTracker=v,T.config=d.config,T.decrypter=new f.default(d,d.config),d.on(b.Events.KEY_LOADED,T.onKeyLoaded,i(T)),d.on(b.Events.LEVEL_SWITCHING,T.onLevelSwitching,i(T)),T}var a=u.prototype;return a.doTick=function(){this.onTickEnd()},a.onTickEnd=function(){},a.startLoad=function(v){},a.stopLoad=function(){this.fragmentLoader.abort();var v=this.fragCurrent;v&&this.fragmentTracker.removeFragment(v),this.resetTransmuxer(),this.fragCurrent=null,this.fragPrevious=null,this.clearInterval(),this.clearNextTick(),this.state=c.STOPPED},a._streamEnded=function(v,S){var T=this.fragCurrent,I=this.fragmentTracker;if(!S.live&&T&&this.media&&T.sn>=S.endSN&&!v.nextStart){var k=S.partList;if(k!=null&&k.length){var B=k[k.length-1],U=w.BufferHelper.isBuffered(this.media,B.start+B.duration/2);return U}var W=I.getState(T);return W===A.FragmentState.PARTIAL||W===A.FragmentState.OK}return!1},a.onMediaAttached=function(v,S){var T=this.media=this.mediaBuffer=S.media;this.onvseeking=this.onMediaSeeking.bind(this),this.onvended=this.onMediaEnded.bind(this),T.addEventListener("seeking",this.onvseeking),T.addEventListener("ended",this.onvended);var I=this.config;this.levels&&I.autoStartLoad&&this.state===c.STOPPED&&this.startLoad(I.startPosition)},a.onMediaDetaching=function(){var v=this.media;v!=null&&v.ended&&(this.log("MSE detaching and video ended, reset startPosition"),this.startPosition=this.lastCurrentTime=0),v&&this.onvseeking&&this.onvended&&(v.removeEventListener("seeking",this.onvseeking),v.removeEventListener("ended",this.onvended),this.onvseeking=this.onvended=null),this.media=this.mediaBuffer=null,this.loadedmetadata=!1,this.fragmentTracker.removeAllFragments(),this.stopLoad()},a.onMediaSeeking=function(){var v=this.config,S=this.fragCurrent,T=this.media,I=this.mediaBuffer,k=this.state,B=T?T.currentTime:0,U=w.BufferHelper.bufferInfo(I||T,B,v.maxBufferHole);if(this.log("media seeking to "+(Object(C.isFiniteNumber)(B)?B.toFixed(3):B)+", state: "+k),k===c.ENDED)this.resetLoadingState();else if(S&&!U.len){var W=v.maxFragLookUpTolerance,H=S.start-W,z=S.start+S.duration+W,Y=B>z;(B<H||Y)&&(Y&&S.loader&&(this.log("seeking outside of buffer while fragment load in progress, cancel fragment load"),S.loader.abort()),this.resetLoadingState())}T&&(this.lastCurrentTime=B),!this.loadedmetadata&&!U.len&&(this.nextLoadPosition=this.startPosition=B),this.tickImmediate()},a.onMediaEnded=function(){this.startPosition=this.lastCurrentTime=0},a.onKeyLoaded=function(v,S){if(!(this.state!==c.KEY_LOADING||S.frag!==this.fragCurrent||!this.levels)){this.state=c.IDLE;var T=this.levels[S.frag.level].details;T&&this.loadFragment(S.frag,T,S.frag.start)}},a.onLevelSwitching=function(v,S){this.fragLoadError=0},a.onHandlerDestroying=function(){this.stopLoad(),n.prototype.onHandlerDestroying.call(this)},a.onHandlerDestroyed=function(){this.state=c.STOPPED,this.hls.off(b.Events.KEY_LOADED,this.onKeyLoaded,this),this.hls.off(b.Events.LEVEL_SWITCHING,this.onLevelSwitching,this),this.fragmentLoader&&this.fragmentLoader.destroy(),this.decrypter&&this.decrypter.destroy(),this.hls=this.log=this.warn=this.decrypter=this.fragmentLoader=this.fragmentTracker=null,n.prototype.onHandlerDestroyed.call(this)},a.loadKey=function(v,S){this.log("Loading key for "+v.sn+" of ["+S.startSN+"-"+S.endSN+"], "+(this.logPrefix==="[stream-controller]"?"level":"track")+" "+v.level),this.state=c.KEY_LOADING,this.fragCurrent=v,this.hls.trigger(b.Events.KEY_LOADING,{frag:v})},a.loadFragment=function(v,S,T){this._loadFragForPlayback(v,S,T)},a._loadFragForPlayback=function(v,S,T){var I=this,k=function(U){if(I.fragContextChanged(v)){I.warn("Fragment "+v.sn+(U.part?" p: "+U.part.index:"")+" of level "+v.level+" was dropped during download."),I.fragmentTracker.removeFragment(v);return}v.stats.chunkCount++,I._handleFragmentLoadProgress(U)};this._doFragLoad(v,S,T,k).then(function(B){if(!!B){I.fragLoadError=0;var U=I.state;if(I.fragContextChanged(v)){(U===c.FRAG_LOADING||!I.fragCurrent&&U===c.PARSING)&&(I.fragmentTracker.removeFragment(v),I.state=c.IDLE);return}"payload"in B&&(I.log("Loaded fragment "+v.sn+" of level "+v.level),I.hls.trigger(b.Events.FRAG_LOADED,B)),I._handleFragmentLoadComplete(B)}}).catch(function(B){I.state===c.STOPPED||I.state===c.ERROR||(I.warn(B),I.resetFragmentLoading(v))})},a.flushMainBuffer=function(v,S,T){if(T===void 0&&(T=null),!!(v-S)){var I={startOffset:v,endOffset:S,type:T};this.fragLoadError=0,this.hls.trigger(b.Events.BUFFER_FLUSHING,I)}},a._loadInitSegment=function(v){var S=this;this._doFragLoad(v).then(function(T){if(!T||S.fragContextChanged(v)||!S.levels)throw new Error("init load aborted");return T}).then(function(T){var I=S.hls,k=T.payload,B=v.decryptdata;if(k&&k.byteLength>0&&B&&B.key&&B.iv&&B.method==="AES-128"){var U=self.performance.now();return S.decrypter.webCryptoDecrypt(new Uint8Array(k),B.key.buffer,B.iv.buffer).then(function(W){var H=self.performance.now();return I.trigger(b.Events.FRAG_DECRYPTED,{frag:v,payload:W,stats:{tstart:U,tdecrypt:H}}),T.payload=W,T})}return T}).then(function(T){var I=S.fragCurrent,k=S.hls,B=S.levels;if(!B)throw new Error("init load aborted, missing levels");var U=B[v.level].details;console.assert(U,"Level details are defined when init segment is loaded");var W=v.stats;S.state=c.IDLE,S.fragLoadError=0,v.data=new Uint8Array(T.payload),W.parsing.start=W.buffering.start=self.performance.now(),W.parsing.end=W.buffering.end=self.performance.now(),T.frag===I&&k.trigger(b.Events.FRAG_BUFFERED,{stats:W,frag:I,part:null,id:v.type}),S.tick()}).catch(function(T){S.state===c.STOPPED||S.state===c.ERROR||(S.warn(T),S.resetFragmentLoading(v))})},a.fragContextChanged=function(v){var S=this.fragCurrent;return!v||!S||v.level!==S.level||v.sn!==S.sn||v.urlId!==S.urlId},a.fragBufferedComplete=function(v,S){var T=this.mediaBuffer?this.mediaBuffer:this.media;this.log("Buffered "+v.type+" sn: "+v.sn+(S?" part: "+S.index:"")+" of "+(this.logPrefix==="[stream-controller]"?"level":"track")+" "+v.level+" "+(T?e.default.toString(w.BufferHelper.getBuffered(T)):"(detached)")),this.state=c.IDLE,T&&(!this.loadedmetadata&&T.buffered.length&&this.fragCurrent===this.fragPrevious&&(this.loadedmetadata=!0,this.seekToStartPos()),this.tick())},a.seekToStartPos=function(){},a._handleFragmentLoadComplete=function(v){var S=this.transmuxer;if(!!S){var T=v.frag,I=v.part,k=v.partsLoaded,B=!k||k.length===0||k.some(function(W){return!W}),U=new y.ChunkMetadata(T.level,T.sn,T.stats.chunkCount+1,0,I?I.index:-1,!B);S.flush(U)}},a._handleFragmentLoadProgress=function(v){},a._doFragLoad=function(v,S,T,I){var k=this;if(T===void 0&&(T=null),!this.levels)throw new Error("frag load aborted, missing levels");if(T=Math.max(v.start,T||0),this.config.lowLatencyMode&&S){var B=S.partList;if(B&&I){T>v.end&&S.fragmentHint&&(v=S.fragmentHint);var U=this.getNextPart(B,v,T);if(U>-1){var W=B[U];return this.log("Loading part sn: "+v.sn+" p: "+W.index+" cc: "+v.cc+" of playlist ["+S.startSN+"-"+S.endSN+"] parts [0-"+U+"-"+(B.length-1)+"] "+(this.logPrefix==="[stream-controller]"?"level":"track")+": "+v.level+", target: "+parseFloat(T.toFixed(3))),this.nextLoadPosition=W.start+W.duration,this.state=c.FRAG_LOADING,this.hls.trigger(b.Events.FRAG_LOADING,{frag:v,part:B[U],targetBufferTime:T}),this.doFragPartsLoad(v,B,U,I).catch(function(H){return k.handleFragLoadError(H)})}else if(!v.url||this.loadedEndOfParts(B,T))return Promise.resolve(null)}}return this.log("Loading fragment "+v.sn+" cc: "+v.cc+" "+(S?"of ["+S.startSN+"-"+S.endSN+"] ":"")+(this.logPrefix==="[stream-controller]"?"level":"track")+": "+v.level+", target: "+parseFloat(T.toFixed(3))),Object(C.isFiniteNumber)(v.sn)&&!this.bitrateTest&&(this.nextLoadPosition=v.start+v.duration),this.state=c.FRAG_LOADING,this.hls.trigger(b.Events.FRAG_LOADING,{frag:v,targetBufferTime:T}),this.fragmentLoader.load(v,I).catch(function(H){return k.handleFragLoadError(H)})},a.doFragPartsLoad=function(v,S,T,I){var k=this;return new Promise(function(B,U){var W=[],H=function z(Y){var $=S[Y];k.fragmentLoader.loadPart(v,$,I).then(function(ee){W[$.index]=ee;var q=ee.part;k.hls.trigger(b.Events.FRAG_LOADED,ee);var re=S[Y+1];if(re&&re.fragment===v)z(Y+1);else return B({frag:v,part:q,partsLoaded:W})}).catch(U)};H(T)})},a.handleFragLoadError=function(v){var S=v.data;return S&&S.details===_.ErrorDetails.INTERNAL_ABORTED?this.handleFragLoadAborted(S.frag,S.part):this.hls.trigger(b.Events.ERROR,S),null},a._handleTransmuxerFlush=function(v){var S=this.getCurrentContext(v);if(!S||this.state!==c.PARSING){this.fragCurrent||(this.state=c.IDLE);return}var T=S.frag,I=S.part,k=S.level,B=self.performance.now();T.stats.parsing.end=B,I&&(I.stats.parsing.end=B),this.updateLevelTiming(T,I,k,v.partial)},a.getCurrentContext=function(v){var S=this.levels,T=v.level,I=v.sn,k=v.part;if(!S||!S[T])return this.warn("Levels object was unset while buffering fragment "+I+" of level "+T+". The current chunk will not be buffered."),null;var B=S[T],U=k>-1?Object(m.getPartWith)(B,I,k):null,W=U?U.fragment:Object(m.getFragmentWithSN)(B,I,this.fragCurrent);return W?{frag:W,part:U,level:B}:null},a.bufferFragmentData=function(v,S,T,I){if(!(!v||this.state!==c.PARSING)){var k=v.data1,B=v.data2,U=k;if(k&&B&&(U=Object(x.appendUint8Array)(k,B)),!(!U||!U.length)){var W={type:v.type,frag:S,part:T,chunkMeta:I,parent:S.type,data:U};this.hls.trigger(b.Events.BUFFER_APPENDING,W),v.dropped&&v.independent&&!T&&this.flushBufferGap(S)}}},a.flushBufferGap=function(v){var S=this.media;if(!!S){if(!w.BufferHelper.isBuffered(S,S.currentTime)){this.flushMainBuffer(0,v.start);return}var T=S.currentTime,I=w.BufferHelper.bufferInfo(S,T,0),k=v.duration,B=Math.min(this.config.maxFragLookUpTolerance*2,k*.25),U=Math.max(Math.min(v.start-B,I.end-B),T+B);v.start-U>B&&this.flushMainBuffer(U,v.start)}},a.getFwdBufferInfo=function(v,S){var T=this.config,I=this.getLoadPosition();if(!Object(C.isFiniteNumber)(I))return null;var k=w.BufferHelper.bufferInfo(v,I,T.maxBufferHole);if(k.len===0&&k.nextStart!==void 0){var B=this.fragmentTracker.getBufferedFrag(I,S);if(B&&k.nextStart<B.end)return w.BufferHelper.bufferInfo(v,I,Math.max(k.nextStart,T.maxBufferHole))}return k},a.getMaxBufferLength=function(v){var S=this.config,T;return v?T=Math.max(8*S.maxBufferSize/v,S.maxBufferLength):T=S.maxBufferLength,Math.min(T,S.maxMaxBufferLength)},a.reduceMaxBufferLength=function(v){var S=this.config,T=v||S.maxBufferLength;return S.maxMaxBufferLength>=T?(S.maxMaxBufferLength/=2,this.warn("Reduce max buffer length to "+S.maxMaxBufferLength+"s"),!0):!1},a.getNextFragment=function(v,S){var T=S.fragments,I=T.length;if(!I)return null;var k=this.config,B=T[0].start,U;if(S.live){var W=k.initialLiveManifestSize;if(I<W)return this.warn("Not enough fragments to start playback (have: "+I+", need: "+W+")"),null;!S.PTSKnown&&!this.startFragRequested&&this.startPosition===-1&&(U=this.getInitialLiveFragment(S,T),this.startPosition=U?this.hls.liveSyncPosition||U.start:v)}else v<=B&&(U=T[0]);if(!U){var H=k.lowLatencyMode?S.partEnd:S.fragmentEnd;U=this.getFragmentAtPosition(v,H,S)}return this.mapToInitFragWhenRequired(U)},a.mapToInitFragWhenRequired=function(v){return v!=null&&v.initSegment&&!(v!=null&&v.initSegment.data)&&!this.bitrateTest?v.initSegment:v},a.getNextPart=function(v,S,T){for(var I=-1,k=!1,B=!0,U=0,W=v.length;U<W;U++){var H=v[U];if(B=B&&!H.independent,I>-1&&T<H.start)break;var z=H.loaded;!z&&(k||H.independent||B)&&H.fragment===S&&(I=U),k=z}return I},a.loadedEndOfParts=function(v,S){var T=v[v.length-1];return T&&S>T.start&&T.loaded},a.getInitialLiveFragment=function(v,S){var T=this.fragPrevious,I=null;if(T){if(v.hasProgramDateTime&&(this.log("Live playlist, switching playlist, load frag with same PDT: "+T.programDateTime),I=Object(E.findFragmentByPDT)(S,T.endProgramDateTime,this.config.maxFragLookUpTolerance)),!I){var k=T.sn+1;if(k>=v.startSN&&k<=v.endSN){var B=S[k-v.startSN];T.cc===B.cc&&(I=B,this.log("Live playlist, switching playlist, load frag with next SN: "+I.sn))}I||(I=Object(E.findFragWithCC)(S,T.cc),I&&this.log("Live playlist, switching playlist, load frag with same CC: "+I.sn))}}else{var U=this.hls.liveSyncPosition;U!==null&&(I=this.getFragmentAtPosition(U,this.bitrateTest?v.fragmentEnd:v.edge,v))}return I},a.getFragmentAtPosition=function(v,S,T){var I=this.config,k=this.fragPrevious,B=T.fragments,U=T.endSN,W=T.fragmentHint,H=I.maxFragLookUpTolerance,z=!!(I.lowLatencyMode&&T.partList&&W);z&&W&&!this.bitrateTest&&(B=B.concat(W),U=W.sn);var Y;if(v<S){var $=v>S-H?0:H;Y=Object(E.findFragmentByPTS)(k,B,v,$)}else Y=B[B.length-1];if(Y){var ee=Y.sn-T.startSN;if(k&&Y.sn===k.sn&&!z){var q=k&&Y.level===k.level;if(q){var re=B[ee+1];Y.sn<U&&this.fragmentTracker.getState(re)!==A.FragmentState.OK?(this.log("SN "+Y.sn+" just loaded, load next one: "+re.sn),Y=re):Y=null}}}return Y},a.synchronizeToLiveEdge=function(v){var S=this.config,T=this.media;if(!!T){var I=this.hls.liveSyncPosition,k=T.currentTime,B=v.fragments[0].start,U=v.edge,W=k>=B-S.maxFragLookUpTolerance&&k<=U;if(I!==null&&T.duration>I&&(k<I||!W)){var H=S.liveMaxLatencyDuration!==void 0?S.liveMaxLatencyDuration:S.liveMaxLatencyDurationCount*v.targetduration;(!W&&T.readyState<4||k<U-H)&&(this.loadedmetadata||(this.nextLoadPosition=I),T.readyState&&(this.warn("Playback: "+k.toFixed(3)+" is located too far from the end of live sliding playlist: "+U+", reset currentTime to : "+I.toFixed(3)),T.currentTime=I))}}},a.alignPlaylists=function(v,S){var T=this.levels,I=this.levelLastLoaded,k=this.fragPrevious,B=I!==null?T[I]:null,U=v.fragments.length;if(!U)return this.warn("No fragments in live playlist"),0;var W=v.fragments[0].start,H=!S,z=v.alignedSliding&&Object(C.isFiniteNumber)(W);if(H||!z&&!W){Object(D.alignStream)(k,B,v);var Y=v.fragments[0].start;return this.log("Live playlist sliding: "+Y.toFixed(2)+" start-sn: "+(S?S.startSN:"na")+"->"+v.startSN+" prev-sn: "+(k?k.sn:"na")+" fragments: "+U),Y}return W},a.waitForCdnTuneIn=function(v){var S=3;return v.live&&v.canBlockReload&&v.partTarget&&v.tuneInGoal>Math.max(v.partHoldBack,v.partTarget*S)},a.setStartPosition=function(v,S){var T=this.startPosition;if(T<S&&(T=-1),T===-1||this.lastCurrentTime===-1){var I=v.startTimeOffset;Object(C.isFiniteNumber)(I)?(T=S+I,I<0&&(T+=v.totalduration),T=Math.min(Math.max(S,T),S+v.totalduration),this.log("Start time offset "+I+" found in playlist, adjust startPosition to "+T),this.startPosition=T):v.live?T=this.hls.liveSyncPosition||S:this.startPosition=T=0,this.lastCurrentTime=T}this.nextLoadPosition=T},a.getLoadPosition=function(){var v=this.media,S=0;return this.loadedmetadata&&v?S=v.currentTime:this.nextLoadPosition&&(S=this.nextLoadPosition),S},a.handleFragLoadAborted=function(v,S){this.transmuxer&&v.sn!=="initSegment"&&v.stats.aborted&&(this.warn("Fragment "+v.sn+(S?" part"+S.index:"")+" of level "+v.level+" was aborted"),this.resetFragmentLoading(v))},a.resetFragmentLoading=function(v){(!this.fragCurrent||!this.fragContextChanged(v)&&this.state!==c.FRAG_LOADING_WAITING_RETRY)&&(this.state=c.IDLE)},a.onFragmentOrKeyLoadError=function(v,S){if(!S.fatal){var T=S.frag;if(!(!T||T.type!==v)){var I=this.fragCurrent;console.assert(I&&T.sn===I.sn&&T.level===I.level&&T.urlId===I.urlId,"Frag load error must match current frag to retry");var k=this.config;if(this.fragLoadError+1<=k.fragLoadingMaxRetry){this.loadedmetadata||(this.startFragRequested=!1,this.nextLoadPosition=this.startPosition);var B=Math.min(Math.pow(2,this.fragLoadError)*k.fragLoadingRetryDelay,k.fragLoadingMaxRetryTimeout);this.warn("Fragment "+T.sn+" of "+v+" "+T.level+" failed to load, retrying in "+B+"ms"),this.retryDate=self.performance.now()+B,this.fragLoadError++,this.state=c.FRAG_LOADING_WAITING_RETRY}else S.levelRetry?(v===s.PlaylistLevelType.AUDIO&&(this.fragCurrent=null),this.fragLoadError=0,this.state=c.IDLE):(O.logger.error(S.details+" reaches max retry, redispatch as fatal ..."),S.fatal=!0,this.hls.stopLoad(),this.state=c.ERROR)}}},a.afterBufferFlushed=function(v,S,T){if(!!v){var I=w.BufferHelper.getBuffered(v);this.fragmentTracker.detectEvictedFragments(S,I,T),this.state===c.ENDED&&this.resetLoadingState()}},a.resetLoadingState=function(){this.fragCurrent=null,this.fragPrevious=null,this.state=c.IDLE},a.resetStartWhenNotLoaded=function(v){if(!this.loadedmetadata){this.startFragRequested=!1;var S=this.levels?this.levels[v].details:null;S!=null&&S.live?(this.startPosition=-1,this.setStartPosition(S,0),this.resetLoadingState()):this.nextLoadPosition=this.startPosition}},a.updateLevelTiming=function(v,S,T,I){var k=this,B=T.details;console.assert(!!B,"level.details must be defined");var U=Object.keys(v.elementaryStreams).reduce(function(W,H){var z=v.elementaryStreams[H];if(z){var Y=z.endPTS-z.startPTS;if(Y<=0)return k.warn("Could not parse fragment "+v.sn+" "+H+" duration reliably ("+Y+")"),W||!1;var $=I?0:Object(m.updateFragPTSDTS)(B,v,z.startPTS,z.endPTS,z.startDTS,z.endDTS);return k.hls.trigger(b.Events.LEVEL_PTS_UPDATED,{details:B,level:T,drift:$,type:H,frag:v,start:z.startPTS,end:z.endPTS}),!0}return W},!1);U||(this.warn("Found no media in fragment "+v.sn+" of level "+T.id+" resetting transmuxer to fallback to playlist timing"),this.resetTransmuxer()),this.state=c.PARSED,this.hls.trigger(b.Events.FRAG_PARSED,{frag:v,part:S})},a.resetTransmuxer=function(){this.transmuxer&&(this.transmuxer.destroy(),this.transmuxer=null)},g(u,[{key:"state",get:function(){return this._state},set:function(v){var S=this._state;S!==v&&(this._state=v,this.log(S+"->"+v))}}]),u}(L.default)},"./src/controller/buffer-controller.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"default",function(){return E});var C=l("./src/polyfills/number.ts"),L=l("./src/events.ts"),A=l("./src/utils/logger.ts"),w=l("./src/errors.ts"),O=l("./src/utils/buffer-helper.ts"),b=l("./src/utils/mediasource-helper.ts"),_=l("./src/loader/fragment.ts"),y=l("./src/controller/buffer-operation-queue.ts"),x=Object(b.getMediaSource)(),D=/([ha]vc.)(?:\.[^.,]+)+/,E=function(){function m(f){var e=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.appendError=0,this.tracks={},this.pendingTracks={},this.sourceBuffer=void 0,this._onMediaSourceOpen=function(){var s=e.hls,h=e.media,g=e.mediaSource;A.logger.log("[buffer-controller]: Media source opened"),h&&(e.updateMediaElementDuration(),s.trigger(L.Events.MEDIA_ATTACHED,{media:h})),g&&g.removeEventListener("sourceopen",e._onMediaSourceOpen),e.checkPendingTracks()},this._onMediaSourceClose=function(){A.logger.log("[buffer-controller]: Media source closed")},this._onMediaSourceEnded=function(){A.logger.log("[buffer-controller]: Media source ended")},this.hls=f,this._initSourceBuffer(),this.registerListeners()}var p=m.prototype;return p.hasSourceTypes=function(){return this.getSourceBufferTypes().length>0||Object.keys(this.pendingTracks).length>0},p.destroy=function(){this.unregisterListeners(),this.details=null},p.registerListeners=function(){var e=this.hls;e.on(L.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),e.on(L.Events.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(L.Events.MANIFEST_PARSED,this.onManifestParsed,this),e.on(L.Events.BUFFER_RESET,this.onBufferReset,this),e.on(L.Events.BUFFER_APPENDING,this.onBufferAppending,this),e.on(L.Events.BUFFER_CODECS,this.onBufferCodecs,this),e.on(L.Events.BUFFER_EOS,this.onBufferEos,this),e.on(L.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),e.on(L.Events.LEVEL_UPDATED,this.onLevelUpdated,this),e.on(L.Events.FRAG_PARSED,this.onFragParsed,this),e.on(L.Events.FRAG_CHANGED,this.onFragChanged,this)},p.unregisterListeners=function(){var e=this.hls;e.off(L.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),e.off(L.Events.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(L.Events.MANIFEST_PARSED,this.onManifestParsed,this),e.off(L.Events.BUFFER_RESET,this.onBufferReset,this),e.off(L.Events.BUFFER_APPENDING,this.onBufferAppending,this),e.off(L.Events.BUFFER_CODECS,this.onBufferCodecs,this),e.off(L.Events.BUFFER_EOS,this.onBufferEos,this),e.off(L.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),e.off(L.Events.LEVEL_UPDATED,this.onLevelUpdated,this),e.off(L.Events.FRAG_PARSED,this.onFragParsed,this),e.off(L.Events.FRAG_CHANGED,this.onFragChanged,this)},p._initSourceBuffer=function(){this.sourceBuffer={},this.operationQueue=new y.default(this.sourceBuffer),this.listeners={audio:[],video:[],audiovideo:[]}},p.onManifestParsed=function(e,s){var h=2;(s.audio&&!s.video||!s.altAudio)&&(h=1),this.bufferCodecEventsExpected=this._bufferCodecEventsTotal=h,this.details=null,A.logger.log(this.bufferCodecEventsExpected+" bufferCodec event(s) expected")},p.onMediaAttaching=function(e,s){var h=this.media=s.media;if(h&&x){var g=this.mediaSource=new x;g.addEventListener("sourceopen",this._onMediaSourceOpen),g.addEventListener("sourceended",this._onMediaSourceEnded),g.addEventListener("sourceclose",this._onMediaSourceClose),h.src=self.URL.createObjectURL(g),this._objectUrl=h.src}},p.onMediaDetaching=function(){var e=this.media,s=this.mediaSource,h=this._objectUrl;if(s){if(A.logger.log("[buffer-controller]: media source detaching"),s.readyState==="open")try{s.endOfStream()}catch(g){A.logger.warn("[buffer-controller]: onMediaDetaching: "+g.message+" while calling endOfStream")}this.onBufferReset(),s.removeEventListener("sourceopen",this._onMediaSourceOpen),s.removeEventListener("sourceended",this._onMediaSourceEnded),s.removeEventListener("sourceclose",this._onMediaSourceClose),e&&(h&&self.URL.revokeObjectURL(h),e.src===h?(e.removeAttribute("src"),e.load()):A.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 e=this;this.getSourceBufferTypes().forEach(function(s){var h=e.sourceBuffer[s];try{h&&(e.removeBufferListeners(s),e.mediaSource&&e.mediaSource.removeSourceBuffer(h),e.sourceBuffer[s]=void 0)}catch(g){A.logger.warn("[buffer-controller]: Failed to reset the "+s+" buffer",g)}}),this._initSourceBuffer()},p.onBufferCodecs=function(e,s){var h=this,g=this.getSourceBufferTypes().length;Object.keys(s).forEach(function(i){if(g){var r=h.tracks[i];if(r&&typeof r.buffer.changeType=="function"){var o=s[i],c=o.id,t=o.codec,n=o.levelCodec,u=o.container,a=o.metadata,d=(r.levelCodec||r.codec).replace(D,"$1"),v=(n||t).replace(D,"$1");if(d!==v){var S=u+";codecs="+(n||t);h.appendChangeType(i,S),A.logger.log("[buffer-controller]: switching codec "+d+" to "+v),h.tracks[i]={buffer:r.buffer,codec:t,container:u,levelCodec:n,metadata:a,id:c}}}}else h.pendingTracks[i]=s[i]}),!g&&(this.bufferCodecEventsExpected=Math.max(this.bufferCodecEventsExpected-1,0),this.mediaSource&&this.mediaSource.readyState==="open"&&this.checkPendingTracks())},p.appendChangeType=function(e,s){var h=this,g=this.operationQueue,i={execute:function(){var o=h.sourceBuffer[e];o&&(A.logger.log("[buffer-controller]: changing "+e+" sourceBuffer type to "+s),o.changeType(s)),g.shiftAndExecuteNext(e)},onStart:function(){},onComplete:function(){},onError:function(o){A.logger.warn("[buffer-controller]: Failed to change "+e+" SourceBuffer type",o)}};g.append(i,e)},p.onBufferAppending=function(e,s){var h=this,g=this.hls,i=this.operationQueue,r=this.tracks,o=s.data,c=s.type,t=s.frag,n=s.part,u=s.chunkMeta,a=u.buffering[c],d=self.performance.now();a.start=d;var v=t.stats.buffering,S=n?n.stats.buffering:null;v.start===0&&(v.start=d),S&&S.start===0&&(S.start=d);var T=r.audio,I=c==="audio"&&u.id===1&&(T==null?void 0:T.container)==="audio/mpeg",k={execute:function(){if(a.executeStart=self.performance.now(),I){var U=h.sourceBuffer[c];if(U){var W=t.start-U.timestampOffset;Math.abs(W)>=.1&&(A.logger.log("[buffer-controller]: Updating audio SourceBuffer timestampOffset to "+t.start+" (delta: "+W+") sn: "+t.sn+")"),U.timestampOffset=t.start)}}h.appendExecutor(o,c)},onStart:function(){},onComplete:function(){var U=self.performance.now();a.executeEnd=a.end=U,v.first===0&&(v.first=U),S&&S.first===0&&(S.first=U);var W=h.sourceBuffer,H={};for(var z in W)H[z]=O.BufferHelper.getBuffered(W[z]);h.appendError=0,h.hls.trigger(L.Events.BUFFER_APPENDED,{type:c,frag:t,part:n,chunkMeta:u,parent:t.type,timeRanges:H})},onError:function(U){A.logger.error("[buffer-controller]: Error encountered while trying to append to the "+c+" SourceBuffer",U);var W={type:w.ErrorTypes.MEDIA_ERROR,parent:t.type,details:w.ErrorDetails.BUFFER_APPEND_ERROR,err:U,fatal:!1};U.code===DOMException.QUOTA_EXCEEDED_ERR?W.details=w.ErrorDetails.BUFFER_FULL_ERROR:(h.appendError++,W.details=w.ErrorDetails.BUFFER_APPEND_ERROR,h.appendError>g.config.appendErrorMaxRetry&&(A.logger.error("[buffer-controller]: Failed "+g.config.appendErrorMaxRetry+" times to append segment in sourceBuffer"),W.fatal=!0,g.stopLoad())),g.trigger(L.Events.ERROR,W)}};i.append(k,c)},p.onBufferFlushing=function(e,s){var h=this,g=this.operationQueue,i=function(o){return{execute:h.removeExecutor.bind(h,o,s.startOffset,s.endOffset),onStart:function(){},onComplete:function(){h.hls.trigger(L.Events.BUFFER_FLUSHED,{type:o})},onError:function(t){A.logger.warn("[buffer-controller]: Failed to remove from "+o+" SourceBuffer",t)}}};s.type?g.append(i(s.type),s.type):this.getSourceBufferTypes().forEach(function(r){g.append(i(r),r)})},p.onFragParsed=function(e,s){var h=this,g=s.frag,i=s.part,r=[],o=i?i.elementaryStreams:g.elementaryStreams;o[_.ElementaryStreamTypes.AUDIOVIDEO]?r.push("audiovideo"):(o[_.ElementaryStreamTypes.AUDIO]&&r.push("audio"),o[_.ElementaryStreamTypes.VIDEO]&&r.push("video"));var c=function(){var n=self.performance.now();g.stats.buffering.end=n,i&&(i.stats.buffering.end=n);var u=i?i.stats:g.stats;h.hls.trigger(L.Events.FRAG_BUFFERED,{frag:g,part:i,stats:u,id:g.type})};r.length===0&&A.logger.warn("Fragments must have at least one ElementaryStreamType set. type: "+g.type+" level: "+g.level+" sn: "+g.sn),this.blockBuffers(c,r)},p.onFragChanged=function(e,s){this.flushBackBuffer()},p.onBufferEos=function(e,s){var h=this,g=this.getSourceBufferTypes().reduce(function(i,r){var o=h.sourceBuffer[r];return(!s.type||s.type===r)&&o&&!o.ended&&(o.ended=!0,A.logger.log("[buffer-controller]: "+r+" sourceBuffer now EOS")),i&&!!(!o||o.ended)},!0);g&&this.blockBuffers(function(){var i=h.mediaSource;!i||i.readyState!=="open"||i.endOfStream()})},p.onLevelUpdated=function(e,s){var h=s.details;!h.fragments.length||(this.details=h,this.getSourceBufferTypes().length?this.blockBuffers(this.updateMediaElementDuration.bind(this)):this.updateMediaElementDuration())},p.flushBackBuffer=function(){var e=this.hls,s=this.details,h=this.media,g=this.sourceBuffer;if(!(!h||s===null)){var i=this.getSourceBufferTypes();if(!!i.length){var r=s.live&&e.config.liveBackBufferLength!==null?e.config.liveBackBufferLength:e.config.backBufferLength;if(!(!Object(C.isFiniteNumber)(r)||r<0)){var o=h.currentTime,c=s.levelTargetDuration,t=Math.max(r,c),n=Math.floor(o/c)*c-t;i.forEach(function(u){var a=g[u];if(a){var d=O.BufferHelper.getBuffered(a);d.length>0&&n>d.start(0)&&(e.trigger(L.Events.BACK_BUFFER_REACHED,{bufferEnd:n}),s.live&&e.trigger(L.Events.LIVE_BACK_BUFFER_REACHED,{bufferEnd:n}),e.trigger(L.Events.BUFFER_FLUSHING,{startOffset:0,endOffset:n,type:u}))}})}}}},p.updateMediaElementDuration=function(){if(!(!this.details||!this.media||!this.mediaSource||this.mediaSource.readyState!=="open")){var e=this.details,s=this.hls,h=this.media,g=this.mediaSource,i=e.fragments[0].start+e.totalduration,r=h.duration,o=Object(C.isFiniteNumber)(g.duration)?g.duration:0;e.live&&s.config.liveDurationInfinity?(A.logger.log("[buffer-controller]: Media Source duration is set to Infinity"),g.duration=1/0,this.updateSeekableRange(e)):(i>o&&i>r||!Object(C.isFiniteNumber)(r))&&(A.logger.log("[buffer-controller]: Updating Media Source duration to "+i.toFixed(3)),g.duration=i)}},p.updateSeekableRange=function(e){var s=this.mediaSource,h=e.fragments,g=h.length;if(g&&e.live&&s!==null&&s!==void 0&&s.setLiveSeekableRange){var i=Math.max(0,h[0].start),r=Math.max(i,i+e.totalduration);s.setLiveSeekableRange(i,r)}},p.checkPendingTracks=function(){var e=this.bufferCodecEventsExpected,s=this.operationQueue,h=this.pendingTracks,g=Object.keys(h).length;if(g&&!e||g===2){this.createSourceBuffers(h),this.pendingTracks={};var i=this.getSourceBufferTypes();if(i.length===0){this.hls.trigger(L.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)"});return}i.forEach(function(r){s.executeNext(r)})}},p.createSourceBuffers=function(e){var s=this.sourceBuffer,h=this.mediaSource;if(!h)throw Error("createSourceBuffers called when mediaSource was null");var g=0;for(var i in e)if(!s[i]){var r=e[i];if(!r)throw Error("source buffer exists for track "+i+", however track does not");var o=r.levelCodec||r.codec,c=r.container+";codecs="+o;A.logger.log("[buffer-controller]: creating sourceBuffer("+c+")");try{var t=s[i]=h.addSourceBuffer(c),n=i;this.addBufferListener(n,"updatestart",this._onSBUpdateStart),this.addBufferListener(n,"updateend",this._onSBUpdateEnd),this.addBufferListener(n,"error",this._onSBUpdateError),this.tracks[i]={buffer:t,codec:o,container:r.container,levelCodec:r.levelCodec,metadata:r.metadata,id:r.id},g++}catch(u){A.logger.error("[buffer-controller]: error while trying to add sourceBuffer: "+u.message),this.hls.trigger(L.Events.ERROR,{type:w.ErrorTypes.MEDIA_ERROR,details:w.ErrorDetails.BUFFER_ADD_CODEC_ERROR,fatal:!1,error:u,mimeType:c})}}g&&this.hls.trigger(L.Events.BUFFER_CREATED,{tracks:this.tracks})},p._onSBUpdateStart=function(e){var s=this.operationQueue,h=s.current(e);h.onStart()},p._onSBUpdateEnd=function(e){var s=this.operationQueue,h=s.current(e);h.onComplete(),s.shiftAndExecuteNext(e)},p._onSBUpdateError=function(e,s){A.logger.error("[buffer-controller]: "+e+" SourceBuffer error",s),this.hls.trigger(L.Events.ERROR,{type:w.ErrorTypes.MEDIA_ERROR,details:w.ErrorDetails.BUFFER_APPENDING_ERROR,fatal:!1});var h=this.operationQueue.current(e);h&&h.onError(s)},p.removeExecutor=function(e,s,h){var g=this.media,i=this.mediaSource,r=this.operationQueue,o=this.sourceBuffer,c=o[e];if(!g||!i||!c){A.logger.warn("[buffer-controller]: Attempting to remove from the "+e+" SourceBuffer, but it does not exist"),r.shiftAndExecuteNext(e);return}var t=Object(C.isFiniteNumber)(g.duration)?g.duration:1/0,n=Object(C.isFiniteNumber)(i.duration)?i.duration:1/0,u=Math.max(0,s),a=Math.min(h,t,n);a>u?(A.logger.log("[buffer-controller]: Removing ["+u+","+a+"] from the "+e+" SourceBuffer"),console.assert(!c.updating,e+" sourceBuffer must not be updating"),c.remove(u,a)):r.shiftAndExecuteNext(e)},p.appendExecutor=function(e,s){var h=this.operationQueue,g=this.sourceBuffer,i=g[s];if(!i){A.logger.warn("[buffer-controller]: Attempting to append to the "+s+" SourceBuffer, but it does not exist"),h.shiftAndExecuteNext(s);return}i.ended=!1,console.assert(!i.updating,s+" sourceBuffer must not be updating"),i.appendBuffer(e)},p.blockBuffers=function(e,s){var h=this;if(s===void 0&&(s=this.getSourceBufferTypes()),!s.length){A.logger.log("[buffer-controller]: Blocking operation requested, but no SourceBuffers exist"),Promise.resolve().then(e);return}var g=this.operationQueue,i=s.map(function(r){return g.appendBlocker(r)});Promise.all(i).then(function(){e(),s.forEach(function(r){var o=h.sourceBuffer[r];(!o||!o.updating)&&g.shiftAndExecuteNext(r)})})},p.getSourceBufferTypes=function(){return Object.keys(this.sourceBuffer)},p.addBufferListener=function(e,s,h){var g=this.sourceBuffer[e];if(!!g){var i=h.bind(this,e);this.listeners[e].push({event:s,listener:i}),g.addEventListener(s,i)}},p.removeBufferListeners=function(e){var s=this.sourceBuffer[e];!s||this.listeners[e].forEach(function(h){s.removeEventListener(h.event,h.listener)})},m}()},"./src/controller/buffer-operation-queue.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"default",function(){return L});var C=l("./src/utils/logger.ts"),L=function(){function A(O){this.buffers=void 0,this.queues={video:[],audio:[],audiovideo:[]},this.buffers=O}var w=A.prototype;return w.append=function(b,_){var y=this.queues[_];y.push(b),y.length===1&&this.buffers[_]&&this.executeNext(_)},w.insertAbort=function(b,_){var y=this.queues[_];y.unshift(b),this.executeNext(_)},w.appendBlocker=function(b){var _,y=new Promise(function(D){_=D}),x={execute:_,onStart:function(){},onComplete:function(){},onError:function(){}};return this.append(x,b),y},w.executeNext=function(b){var _=this.buffers,y=this.queues,x=_[b],D=y[b];if(D.length){var E=D[0];try{E.execute()}catch(m){C.logger.warn("[buffer-operation-queue]: Unhandled exception executing the current operation"),E.onError(m),(!x||!x.updating)&&(D.shift(),this.executeNext(b))}}},w.shiftAndExecuteNext=function(b){this.queues[b].shift(),this.executeNext(b)},w.current=function(b){return this.queues[b][0]},A}()},"./src/controller/cap-level-controller.ts":function(j,R,l){"use strict";l.r(R);var C=l("./src/events.ts");function L(O,b){for(var _=0;_<b.length;_++){var y=b[_];y.enumerable=y.enumerable||!1,y.configurable=!0,"value"in y&&(y.writable=!0),Object.defineProperty(O,y.key,y)}}function A(O,b,_){return b&&L(O.prototype,b),_&&L(O,_),Object.defineProperty(O,"prototype",{writable:!1}),O}var w=function(){function O(_){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=_,this.autoLevelCapping=Number.POSITIVE_INFINITY,this.firstLevel=-1,this.media=null,this.restrictedLevels=[],this.timer=void 0,this.clientRect=null,this.registerListeners()}var b=O.prototype;return b.setStreamController=function(y){this.streamController=y},b.destroy=function(){this.unregisterListener(),this.hls.config.capLevelToPlayerSize&&this.stopCapping(),this.media=null,this.clientRect=null,this.hls=this.streamController=null},b.registerListeners=function(){var y=this.hls;y.on(C.Events.FPS_DROP_LEVEL_CAPPING,this.onFpsDropLevelCapping,this),y.on(C.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),y.on(C.Events.MANIFEST_PARSED,this.onManifestParsed,this),y.on(C.Events.BUFFER_CODECS,this.onBufferCodecs,this),y.on(C.Events.MEDIA_DETACHING,this.onMediaDetaching,this)},b.unregisterListener=function(){var y=this.hls;y.off(C.Events.FPS_DROP_LEVEL_CAPPING,this.onFpsDropLevelCapping,this),y.off(C.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),y.off(C.Events.MANIFEST_PARSED,this.onManifestParsed,this),y.off(C.Events.BUFFER_CODECS,this.onBufferCodecs,this),y.off(C.Events.MEDIA_DETACHING,this.onMediaDetaching,this)},b.onFpsDropLevelCapping=function(y,x){O.isLevelAllowed(x.droppedLevel,this.restrictedLevels)&&this.restrictedLevels.push(x.droppedLevel)},b.onMediaAttaching=function(y,x){this.media=x.media instanceof HTMLVideoElement?x.media:null},b.onManifestParsed=function(y,x){var D=this.hls;this.restrictedLevels=[],this.firstLevel=x.firstLevel,D.config.capLevelToPlayerSize&&x.video&&this.startCapping()},b.onBufferCodecs=function(y,x){var D=this.hls;D.config.capLevelToPlayerSize&&x.video&&this.startCapping()},b.onMediaDetaching=function(){this.stopCapping()},b.detectPlayerSize=function(){if(this.media&&this.mediaHeight>0&&this.mediaWidth>0){var y=this.hls.levels;if(y.length){var x=this.hls;x.autoLevelCapping=this.getMaxLevel(y.length-1),x.autoLevelCapping>this.autoLevelCapping&&this.streamController&&this.streamController.nextLevelSwitch(),this.autoLevelCapping=x.autoLevelCapping}}},b.getMaxLevel=function(y){var x=this,D=this.hls.levels;if(!D.length)return-1;var E=D.filter(function(m,p){return O.isLevelAllowed(p,x.restrictedLevels)&&p<=y});return this.clientRect=null,O.getMaxLevelByMediaSize(E,this.mediaWidth,this.mediaHeight)},b.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())},b.stopCapping=function(){this.restrictedLevels=[],this.firstLevel=-1,this.autoLevelCapping=Number.POSITIVE_INFINITY,this.timer&&(self.clearInterval(this.timer),this.timer=void 0)},b.getDimensions=function(){if(this.clientRect)return this.clientRect;var y=this.media,x={width:0,height:0};if(y){var D=y.getBoundingClientRect();x.width=D.width,x.height=D.height,!x.width&&!x.height&&(x.width=D.right-D.left||y.width||0,x.height=D.bottom-D.top||y.height||0)}return this.clientRect=x,x},O.isLevelAllowed=function(y,x){return x===void 0&&(x=[]),x.indexOf(y)===-1},O.getMaxLevelByMediaSize=function(y,x,D){if(!y||!y.length)return-1;for(var E=function(s,h){return h?s.width!==h.width||s.height!==h.height:!0},m=y.length-1,p=0;p<y.length;p+=1){var f=y[p];if((f.width>=x||f.height>=D)&&E(f,y[p+1])){m=p;break}}return m},A(O,[{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 y=1;if(!this.hls.config.ignoreDevicePixelRatio)try{y=self.devicePixelRatio}catch{}return y}}]),O}();R.default=w},"./src/controller/cmcd-controller.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"default",function(){return E});var C=l("./src/events.ts"),L=l("./src/types/cmcd.ts"),A=l("./src/utils/buffer-helper.ts"),w=l("./src/utils/logger.ts");function O(m,p){for(var f=0;f<p.length;f++){var e=p[f];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(m,e.key,e)}}function b(m,p,f){return p&&O(m.prototype,p),f&&O(m,f),Object.defineProperty(m,"prototype",{writable:!1}),m}function _(m,p){var f=typeof Symbol!="undefined"&&m[Symbol.iterator]||m["@@iterator"];if(f)return(f=f.call(m)).next.bind(f);if(Array.isArray(m)||(f=y(m))||p&&m&&typeof m.length=="number"){f&&(m=f);var e=0;return function(){return e>=m.length?{done:!0}:{done:!1,value:m[e++]}}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
14
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function y(m,p){if(!!m){if(typeof m=="string")return x(m,p);var f=Object.prototype.toString.call(m).slice(8,-1);if(f==="Object"&&m.constructor&&(f=m.constructor.name),f==="Map"||f==="Set")return Array.from(m);if(f==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(f))return x(m,p)}}function x(m,p){(p==null||p>m.length)&&(p=m.length);for(var f=0,e=new Array(p);f<p;f++)e[f]=m[f];return e}function D(){return D=Object.assign?Object.assign.bind():function(m){for(var p=1;p<arguments.length;p++){var f=arguments[p];for(var e in f)Object.prototype.hasOwnProperty.call(f,e)&&(m[e]=f[e])}return m},D.apply(this,arguments)}var E=function(){function m(f){var e=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(){e.initialized&&(e.starved=!0),e.buffering=!0},this.onPlaying=function(){e.initialized||(e.initialized=!0),e.buffering=!1},this.applyPlaylistData=function(g){try{e.apply(g,{ot:L.CMCDObjectType.MANIFEST,su:!e.initialized})}catch(i){w.logger.warn("Could not generate manifest CMCD data.",i)}},this.applyFragmentData=function(g){try{var i=g.frag,r=e.hls.levels[i.level],o=e.getObjectType(i),c={d:i.duration*1e3,ot:o};(o===L.CMCDObjectType.VIDEO||o===L.CMCDObjectType.AUDIO||o==L.CMCDObjectType.MUXED)&&(c.br=r.bitrate/1e3,c.tb=e.getTopBandwidth(o)/1e3,c.bl=e.getBufferLength(o)),e.apply(g,c)}catch(t){w.logger.warn("Could not generate segment CMCD data.",t)}},this.hls=f;var s=this.config=f.config,h=s.cmcd;h!=null&&(s.pLoader=this.createPlaylistLoader(),s.fLoader=this.createFragmentLoader(),this.sid=h.sessionId||m.uuid(),this.cid=h.contentId,this.useHeaders=h.useHeaders===!0,this.registerListeners())}var p=m.prototype;return p.registerListeners=function(){var e=this.hls;e.on(C.Events.MEDIA_ATTACHED,this.onMediaAttached,this),e.on(C.Events.MEDIA_DETACHED,this.onMediaDetached,this),e.on(C.Events.BUFFER_CREATED,this.onBufferCreated,this)},p.unregisterListeners=function(){var e=this.hls;e.off(C.Events.MEDIA_ATTACHED,this.onMediaAttached,this),e.off(C.Events.MEDIA_DETACHED,this.onMediaDetached,this),e.off(C.Events.BUFFER_CREATED,this.onBufferCreated,this),this.onMediaDetached()},p.destroy=function(){this.unregisterListeners(),this.hls=this.config=this.audioBuffer=this.videoBuffer=null},p.onMediaAttached=function(e,s){this.media=s.media,this.media.addEventListener("waiting",this.onWaiting),this.media.addEventListener("playing",this.onPlaying)},p.onMediaDetached=function(){!this.media||(this.media.removeEventListener("waiting",this.onWaiting),this.media.removeEventListener("playing",this.onPlaying),this.media=null)},p.onBufferCreated=function(e,s){var h,g;this.audioBuffer=(h=s.tracks.audio)===null||h===void 0?void 0:h.buffer,this.videoBuffer=(g=s.tracks.video)===null||g===void 0?void 0:g.buffer},p.createData=function(){var e;return{v:L.CMCDVersion,sf:L.CMCDStreamingFormat.HLS,sid:this.sid,cid:this.cid,pr:(e=this.media)===null||e===void 0?void 0:e.playbackRate,mtp:this.hls.bandwidthEstimate/1e3}},p.apply=function(e,s){s===void 0&&(s={}),D(s,this.createData());var h=s.ot===L.CMCDObjectType.INIT||s.ot===L.CMCDObjectType.VIDEO||s.ot===L.CMCDObjectType.MUXED;if(this.starved&&h&&(s.bs=!0,s.su=!0,this.starved=!1),s.su==null&&(s.su=this.buffering),this.useHeaders){var g=m.toHeaders(s);if(!Object.keys(g).length)return;e.headers||(e.headers={}),D(e.headers,g)}else{var i=m.toQuery(s);if(!i)return;e.url=m.appendQueryToUri(e.url,i)}},p.getObjectType=function(e){var s=e.type;if(s==="subtitle")return L.CMCDObjectType.TIMED_TEXT;if(e.sn==="initSegment")return L.CMCDObjectType.INIT;if(s==="audio")return L.CMCDObjectType.AUDIO;if(s==="main")return this.hls.audioTracks.length?L.CMCDObjectType.VIDEO:L.CMCDObjectType.MUXED},p.getTopBandwidth=function(e){var s=0,h,g=this.hls;if(e===L.CMCDObjectType.AUDIO)h=g.audioTracks;else{var i=g.maxAutoLevel,r=i>-1?i+1:g.levels.length;h=g.levels.slice(0,r)}for(var o=_(h),c;!(c=o()).done;){var t=c.value;t.bitrate>s&&(s=t.bitrate)}return s>0?s:NaN},p.getBufferLength=function(e){var s=this.hls.media,h=e===L.CMCDObjectType.AUDIO?this.audioBuffer:this.videoBuffer;if(!h||!s)return NaN;var g=A.BufferHelper.bufferInfo(h,s.currentTime,this.config.maxBufferHole);return g.len*1e3},p.createPlaylistLoader=function(){var e=this.config.pLoader,s=this.applyPlaylistData,h=e||this.config.loader;return function(){function g(r){this.loader=void 0,this.loader=new h(r)}var i=g.prototype;return i.destroy=function(){this.loader.destroy()},i.abort=function(){this.loader.abort()},i.load=function(o,c,t){s(o),this.loader.load(o,c,t)},b(g,[{key:"stats",get:function(){return this.loader.stats}},{key:"context",get:function(){return this.loader.context}}]),g}()},p.createFragmentLoader=function(){var e=this.config.fLoader,s=this.applyFragmentData,h=e||this.config.loader;return function(){function g(r){this.loader=void 0,this.loader=new h(r)}var i=g.prototype;return i.destroy=function(){this.loader.destroy()},i.abort=function(){this.loader.abort()},i.load=function(o,c,t){s(o),this.loader.load(o,c,t)},b(g,[{key:"stats",get:function(){return this.loader.stats}},{key:"context",get:function(){return this.loader.context}}]),g}()},m.uuid=function(){var e=URL.createObjectURL(new Blob),s=e.toString();return URL.revokeObjectURL(e),s.slice(s.lastIndexOf("/")+1)},m.serialize=function(e){for(var s=[],h=function(I){return!Number.isNaN(I)&&I!=null&&I!==""&&I!==!1},g=function(I){return Math.round(I)},i=function(I){return g(I/100)*100},r=function(I){return encodeURIComponent(I)},o={br:g,d:g,bl:i,dl:i,mtp:i,nor:r,rtp:i,tb:g},c=Object.keys(e||{}).sort(),t=_(c),n;!(n=t()).done;){var u=n.value,a=e[u];if(!!h(a)&&!(u==="v"&&a===1)&&!(u=="pr"&&a===1)){var d=o[u];d&&(a=d(a));var v=typeof a,S=void 0;u==="ot"||u==="sf"||u==="st"?S=u+"="+a:v==="boolean"?S=u:v==="number"?S=u+"="+a:S=u+"="+JSON.stringify(a),s.push(S)}}return s.join(",")},m.toHeaders=function(e){for(var s=Object.keys(e),h={},g=["Object","Request","Session","Status"],i=[{},{},{},{}],r={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},o=0,c=s;o<c.length;o++){var t=c[o],n=r[t]!=null?r[t]:1;i[n][t]=e[t]}for(var u=0;u<i.length;u++){var a=m.serialize(i[u]);a&&(h["CMCD-"+g[u]]=a)}return h},m.toQuery=function(e){return"CMCD="+encodeURIComponent(m.serialize(e))},m.appendQueryToUri=function(e,s){if(!s)return e;var h=e.includes("?")?"&":"?";return""+e+h+s},m}()},"./src/controller/eme-controller.ts":function(j,R,l){"use strict";l.r(R);var C=l("./src/events.ts"),L=l("./src/errors.ts"),A=l("./src/utils/logger.ts"),w=l("./src/utils/mediakeys-helper.ts");function O(E,m){for(var p=0;p<m.length;p++){var f=m[p];f.enumerable=f.enumerable||!1,f.configurable=!0,"value"in f&&(f.writable=!0),Object.defineProperty(E,f.key,f)}}function b(E,m,p){return m&&O(E.prototype,m),p&&O(E,p),Object.defineProperty(E,"prototype",{writable:!1}),E}var _=3,y=function(m,p,f){var e={audioCapabilities:[],videoCapabilities:[]};return m.forEach(function(s){e.audioCapabilities.push({contentType:'audio/mp4; codecs="'+s+'"',robustness:f.audioRobustness||""})}),p.forEach(function(s){e.videoCapabilities.push({contentType:'video/mp4; codecs="'+s+'"',robustness:f.videoRobustness||""})}),[e]},x=function(m,p,f,e){switch(m){case w.KeySystems.WIDEVINE:return y(p,f,e);default:throw new Error("Unknown key-system: "+m)}},D=function(){function E(p){this.hls=void 0,this._widevineLicenseUrl=void 0,this._licenseXhrSetup=void 0,this._licenseResponseCallback=void 0,this._emeEnabled=void 0,this._requestMediaKeySystemAccess=void 0,this._drmSystemOptions=void 0,this._config=void 0,this._mediaKeysList=[],this._media=null,this._hasSetMediaKeys=!1,this._requestLicenseFailureCount=0,this.mediaKeysPromise=null,this._onMediaEncrypted=this.onMediaEncrypted.bind(this),this.hls=p,this._config=p.config,this._widevineLicenseUrl=this._config.widevineLicenseUrl,this._licenseXhrSetup=this._config.licenseXhrSetup,this._licenseResponseCallback=this._config.licenseResponseCallback,this._emeEnabled=this._config.emeEnabled,this._requestMediaKeySystemAccess=this._config.requestMediaKeySystemAccessFunc,this._drmSystemOptions=this._config.drmSystemOptions,this._registerListeners()}var m=E.prototype;return m.destroy=function(){this._unregisterListeners(),this.hls=this._onMediaEncrypted=null,this._requestMediaKeySystemAccess=null},m._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_PARSED,this.onManifestParsed,this)},m._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_PARSED,this.onManifestParsed,this)},m.getLicenseServerUrl=function(f){switch(f){case w.KeySystems.WIDEVINE:if(!this._widevineLicenseUrl)break;return this._widevineLicenseUrl}throw new Error('no license server URL configured for key-system "'+f+'"')},m._attemptKeySystemAccess=function(f,e,s){var h=this,g=x(f,e,s,this._drmSystemOptions);A.logger.log("Requesting encrypted media key-system access");var i=this.requestMediaKeySystemAccess(f,g);this.mediaKeysPromise=i.then(function(r){return h._onMediaKeySystemAccessObtained(f,r)}),i.catch(function(r){A.logger.error('Failed to obtain key-system "'+f+'" access:',r)})},m._onMediaKeySystemAccessObtained=function(f,e){var s=this;A.logger.log('Access for key-system "'+f+'" obtained');var h={mediaKeysSessionInitialized:!1,mediaKeySystemAccess:e,mediaKeySystemDomain:f};this._mediaKeysList.push(h);var g=Promise.resolve().then(function(){return e.createMediaKeys()}).then(function(i){return h.mediaKeys=i,A.logger.log('Media-keys created for key-system "'+f+'"'),s._onMediaKeysCreated(),i});return g.catch(function(i){A.logger.error("Failed to create media-keys:",i)}),g},m._onMediaKeysCreated=function(){var f=this;this._mediaKeysList.forEach(function(e){e.mediaKeysSession||(e.mediaKeysSession=e.mediaKeys.createSession(),f._onNewMediaKeySession(e.mediaKeysSession))})},m._onNewMediaKeySession=function(f){var e=this;A.logger.log("New key-system session "+f.sessionId),f.addEventListener("message",function(s){e._onKeySessionMessage(f,s.message)},!1)},m._onKeySessionMessage=function(f,e){A.logger.log("Got EME message event, creating license request"),this._requestLicense(e,function(s){A.logger.log("Received license data (length: "+(s&&s.byteLength)+"), updating key-session"),f.update(s).catch(function(h){A.logger.warn("Updating key-session failed: "+h)})})},m.onMediaEncrypted=function(f){var e=this;if(A.logger.log('Media is encrypted using "'+f.initDataType+'" init data type'),!this.mediaKeysPromise){A.logger.error("Fatal: Media is encrypted but no CDM access or no keys have been requested"),this.hls.trigger(C.Events.ERROR,{type:L.ErrorTypes.KEY_SYSTEM_ERROR,details:L.ErrorDetails.KEY_SYSTEM_NO_KEYS,fatal:!0});return}var s=function(g){!e._media||(e._attemptSetMediaKeys(g),e._generateRequestWithPreferredKeySession(f.initDataType,f.initData))};this.mediaKeysPromise.then(s).catch(s)},m._attemptSetMediaKeys=function(f){if(!this._media)throw new Error("Attempted to set mediaKeys without first attaching a media element");if(!this._hasSetMediaKeys){var e=this._mediaKeysList[0];if(!e||!e.mediaKeys){A.logger.error("Fatal: Media is encrypted but no CDM access or no keys have been obtained yet"),this.hls.trigger(C.Events.ERROR,{type:L.ErrorTypes.KEY_SYSTEM_ERROR,details:L.ErrorDetails.KEY_SYSTEM_NO_KEYS,fatal:!0});return}A.logger.log("Setting keys for encrypted media"),this._media.setMediaKeys(e.mediaKeys),this._hasSetMediaKeys=!0}},m._generateRequestWithPreferredKeySession=function(f,e){var s=this,h=this._mediaKeysList[0];if(!h){A.logger.error("Fatal: Media is encrypted but not any key-system access has been obtained yet"),this.hls.trigger(C.Events.ERROR,{type:L.ErrorTypes.KEY_SYSTEM_ERROR,details:L.ErrorDetails.KEY_SYSTEM_NO_ACCESS,fatal:!0});return}if(h.mediaKeysSessionInitialized){A.logger.warn("Key-Session already initialized but requested again");return}var g=h.mediaKeysSession;if(!g){A.logger.error("Fatal: Media is encrypted but no key-session existing"),this.hls.trigger(C.Events.ERROR,{type:L.ErrorTypes.KEY_SYSTEM_ERROR,details:L.ErrorDetails.KEY_SYSTEM_NO_SESSION,fatal:!0});return}if(!e){A.logger.warn("Fatal: initData required for generating a key session is null"),this.hls.trigger(C.Events.ERROR,{type:L.ErrorTypes.KEY_SYSTEM_ERROR,details:L.ErrorDetails.KEY_SYSTEM_NO_INIT_DATA,fatal:!0});return}A.logger.log('Generating key-session request for "'+f+'" init data type'),h.mediaKeysSessionInitialized=!0,g.generateRequest(f,e).then(function(){A.logger.debug("Key-session generation succeeded")}).catch(function(i){A.logger.error("Error generating key-session request:",i),s.hls.trigger(C.Events.ERROR,{type:L.ErrorTypes.KEY_SYSTEM_ERROR,details:L.ErrorDetails.KEY_SYSTEM_NO_SESSION,fatal:!1})})},m._createLicenseXhr=function(f,e,s){var h=new XMLHttpRequest;h.responseType="arraybuffer",h.onreadystatechange=this._onLicenseRequestReadyStageChange.bind(this,h,f,e,s);var g=this._licenseXhrSetup;if(g)try{g.call(this.hls,h,f),g=void 0}catch(i){A.logger.error(i)}try{h.readyState||h.open("POST",f,!0),g&&g.call(this.hls,h,f)}catch(i){throw new Error("issue setting up KeySystem license XHR "+i)}return h},m._onLicenseRequestReadyStageChange=function(f,e,s,h){switch(f.readyState){case 4:if(f.status===200){this._requestLicenseFailureCount=0,A.logger.log("License request succeeded");var g=f.response,i=this._licenseResponseCallback;if(i)try{g=i.call(this.hls,f,e)}catch(o){A.logger.error(o)}h(g)}else{if(A.logger.error("License Request XHR failed ("+e+"). Status: "+f.status+" ("+f.statusText+")"),this._requestLicenseFailureCount++,this._requestLicenseFailureCount>_){this.hls.trigger(C.Events.ERROR,{type:L.ErrorTypes.KEY_SYSTEM_ERROR,details:L.ErrorDetails.KEY_SYSTEM_LICENSE_REQUEST_FAILED,fatal:!0});return}var r=_-this._requestLicenseFailureCount+1;A.logger.warn("Retrying license request, "+r+" attempts left"),this._requestLicense(s,h)}break}},m._generateLicenseRequestChallenge=function(f,e){switch(f.mediaKeySystemDomain){case w.KeySystems.WIDEVINE:return e}throw new Error("unsupported key-system: "+f.mediaKeySystemDomain)},m._requestLicense=function(f,e){A.logger.log("Requesting content license for key-system");var s=this._mediaKeysList[0];if(!s){A.logger.error("Fatal error: Media is encrypted but no key-system access has been obtained yet"),this.hls.trigger(C.Events.ERROR,{type:L.ErrorTypes.KEY_SYSTEM_ERROR,details:L.ErrorDetails.KEY_SYSTEM_NO_ACCESS,fatal:!0});return}try{var h=this.getLicenseServerUrl(s.mediaKeySystemDomain),g=this._createLicenseXhr(h,f,e);A.logger.log("Sending license request to URL: "+h);var i=this._generateLicenseRequestChallenge(s,f);g.send(i)}catch(r){A.logger.error("Failure requesting DRM license: "+r),this.hls.trigger(C.Events.ERROR,{type:L.ErrorTypes.KEY_SYSTEM_ERROR,details:L.ErrorDetails.KEY_SYSTEM_LICENSE_REQUEST_FAILED,fatal:!0})}},m.onMediaAttached=function(f,e){if(!!this._emeEnabled){var s=e.media;this._media=s,s.addEventListener("encrypted",this._onMediaEncrypted)}},m.onMediaDetached=function(){var f=this._media,e=this._mediaKeysList;!f||(f.removeEventListener("encrypted",this._onMediaEncrypted),this._media=null,this._mediaKeysList=[],Promise.all(e.map(function(s){if(s.mediaKeysSession)return s.mediaKeysSession.close().catch(function(){})})).then(function(){return f.setMediaKeys(null)}).catch(function(){}))},m.onManifestParsed=function(f,e){if(!!this._emeEnabled){var s=e.levels.map(function(g){return g.audioCodec}).filter(function(g){return!!g}),h=e.levels.map(function(g){return g.videoCodec}).filter(function(g){return!!g});this._attemptKeySystemAccess(w.KeySystems.WIDEVINE,s,h)}},b(E,[{key:"requestMediaKeySystemAccess",get:function(){if(!this._requestMediaKeySystemAccess)throw new Error("No requestMediaKeySystemAccess function configured");return this._requestMediaKeySystemAccess}}]),E}();R.default=D},"./src/controller/fps-controller.ts":function(j,R,l){"use strict";l.r(R);var C=l("./src/events.ts"),L=l("./src/utils/logger.ts"),A=function(){function w(b){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=b,this.registerListeners()}var O=w.prototype;return O.setStreamController=function(_){this.streamController=_},O.registerListeners=function(){this.hls.on(C.Events.MEDIA_ATTACHING,this.onMediaAttaching,this)},O.unregisterListeners=function(){this.hls.off(C.Events.MEDIA_ATTACHING,this.onMediaAttaching)},O.destroy=function(){this.timer&&clearInterval(this.timer),this.unregisterListeners(),this.isVideoPlaybackQualityAvailable=!1,this.media=null},O.onMediaAttaching=function(_,y){var x=this.hls.config;if(x.capLevelOnFPSDrop){var D=y.media instanceof self.HTMLVideoElement?y.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),x.fpsDroppedMonitoringPeriod)}},O.checkFPS=function(_,y,x){var D=performance.now();if(y){if(this.lastTime){var E=D-this.lastTime,m=x-this.lastDroppedFrames,p=y-this.lastDecodedFrames,f=1e3*m/E,e=this.hls;if(e.trigger(C.Events.FPS_DROP,{currentDropped:m,currentDecoded:p,totalDroppedFrames:x}),f>0&&m>e.config.fpsDroppedMonitoringThreshold*p){var s=e.currentLevel;L.logger.warn("drop FPS ratio greater than max allowed value for currentLevel: "+s),s>0&&(e.autoLevelCapping===-1||e.autoLevelCapping>=s)&&(s=s-1,e.trigger(C.Events.FPS_DROP_LEVEL_CAPPING,{level:s,droppedLevel:e.currentLevel}),e.autoLevelCapping=s,this.streamController.nextLevelSwitch())}}this.lastTime=D,this.lastDroppedFrames=x,this.lastDecodedFrames=y}},O.checkFPSInterval=function(){var _=this.media;if(_)if(this.isVideoPlaybackQualityAvailable){var y=_.getVideoPlaybackQuality();this.checkFPS(_,y.totalVideoFrames,y.droppedVideoFrames)}else this.checkFPS(_,_.webkitDecodedFrameCount,_.webkitDroppedFrameCount)},w}();R.default=A},"./src/controller/fragment-finders.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"findFragmentByPDT",function(){return A}),l.d(R,"findFragmentByPTS",function(){return w}),l.d(R,"fragmentWithinToleranceTest",function(){return O}),l.d(R,"pdtWithinToleranceTest",function(){return b}),l.d(R,"findFragWithCC",function(){return _});var C=l("./src/polyfills/number.ts"),L=l("./src/utils/binary-search.ts");function A(y,x,D){if(x===null||!Array.isArray(y)||!y.length||!Object(C.isFiniteNumber)(x))return null;var E=y[0].programDateTime;if(x<(E||0))return null;var m=y[y.length-1].endProgramDateTime;if(x>=(m||0))return null;D=D||0;for(var p=0;p<y.length;++p){var f=y[p];if(b(x,D,f))return f}return null}function w(y,x,D,E){D===void 0&&(D=0),E===void 0&&(E=0);var m=null;if(y?m=x[y.sn-x[0].sn+1]||null:D===0&&x[0].start===0&&(m=x[0]),m&&O(D,E,m)===0)return m;var p=L.default.search(x,O.bind(null,D,E));return p||m}function O(y,x,D){y===void 0&&(y=0),x===void 0&&(x=0);var E=Math.min(x,D.duration+(D.deltaPTS?D.deltaPTS:0));return D.start+D.duration-E<=y?1:D.start-E>y&&D.start?-1:0}function b(y,x,D){var E=Math.min(x,D.duration+(D.deltaPTS?D.deltaPTS:0))*1e3,m=D.endProgramDateTime||0;return m-E>y}function _(y,x){return L.default.search(y,function(D){return D.cc<x?1:D.cc>x?-1:0})}},"./src/controller/fragment-tracker.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"FragmentState",function(){return A}),l.d(R,"FragmentTracker",function(){return w});var C=l("./src/events.ts"),L=l("./src/types/loader.ts"),A;(function(_){_.NOT_LOADED="NOT_LOADED",_.APPENDING="APPENDING",_.PARTIAL="PARTIAL",_.OK="OK"})(A||(A={}));var w=function(){function _(x){this.activeFragment=null,this.activeParts=null,this.fragments=Object.create(null),this.timeRanges=Object.create(null),this.bufferPadding=.2,this.hls=void 0,this.hls=x,this._registerListeners()}var y=_.prototype;return y._registerListeners=function(){var D=this.hls;D.on(C.Events.BUFFER_APPENDED,this.onBufferAppended,this),D.on(C.Events.FRAG_BUFFERED,this.onFragBuffered,this),D.on(C.Events.FRAG_LOADED,this.onFragLoaded,this)},y._unregisterListeners=function(){var D=this.hls;D.off(C.Events.BUFFER_APPENDED,this.onBufferAppended,this),D.off(C.Events.FRAG_BUFFERED,this.onFragBuffered,this),D.off(C.Events.FRAG_LOADED,this.onFragLoaded,this)},y.destroy=function(){this._unregisterListeners(),this.fragments=this.timeRanges=null},y.getAppendedFrag=function(D,E){if(E===L.PlaylistLevelType.MAIN){var m=this.activeFragment,p=this.activeParts;if(!m)return null;if(p)for(var f=p.length;f--;){var e=p[f],s=e?e.end:m.appendedPTS;if(e.start<=D&&s!==void 0&&D<=s)return f>9&&(this.activeParts=p.slice(f-9)),e}else if(m.start<=D&&m.appendedPTS!==void 0&&D<=m.appendedPTS)return m}return this.getBufferedFrag(D,E)},y.getBufferedFrag=function(D,E){for(var m=this.fragments,p=Object.keys(m),f=p.length;f--;){var e=m[p[f]];if((e==null?void 0:e.body.type)===E&&e.buffered){var s=e.body;if(s.start<=D&&D<=s.end)return s}}return null},y.detectEvictedFragments=function(D,E,m){var p=this;Object.keys(this.fragments).forEach(function(f){var e=p.fragments[f];if(!!e){if(!e.buffered){e.body.type===m&&p.removeFragment(e.body);return}var s=e.range[D];!s||s.time.some(function(h){var g=!p.isTimeBuffered(h.startPTS,h.endPTS,E);return g&&p.removeFragment(e.body),g})}})},y.detectPartialFragments=function(D){var E=this,m=this.timeRanges,p=D.frag,f=D.part;if(!(!m||p.sn==="initSegment")){var e=b(p),s=this.fragments[e];!s||(Object.keys(m).forEach(function(h){var g=p.elementaryStreams[h];if(!!g){var i=m[h],r=f!==null||g.partial===!0;s.range[h]=E.getBufferedTimes(p,f,r,i)}}),s.loaded=null,Object.keys(s.range).length?s.buffered=!0:this.removeFragment(s.body))}},y.fragBuffered=function(D){var E=b(D),m=this.fragments[E];m&&(m.loaded=null,m.buffered=!0)},y.getBufferedTimes=function(D,E,m,p){for(var f={time:[],partial:m},e=E?E.start:D.start,s=E?E.end:D.end,h=D.minEndPTS||s,g=D.maxStartPTS||e,i=0;i<p.length;i++){var r=p.start(i)-this.bufferPadding,o=p.end(i)+this.bufferPadding;if(g>=r&&h<=o){f.time.push({startPTS:Math.max(e,p.start(i)),endPTS:Math.min(s,p.end(i))});break}else if(e<o&&s>r)f.partial=!0,f.time.push({startPTS:Math.max(e,p.start(i)),endPTS:Math.min(s,p.end(i))});else if(s<=r)break}return f},y.getPartialFragment=function(D){var E=null,m,p,f,e=0,s=this.bufferPadding,h=this.fragments;return Object.keys(h).forEach(function(g){var i=h[g];!i||O(i)&&(p=i.body.start-s,f=i.body.end+s,D>=p&&D<=f&&(m=Math.min(D-p,f-D),e<=m&&(E=i.body,e=m)))}),E},y.getState=function(D){var E=b(D),m=this.fragments[E];return m?m.buffered?O(m)?A.PARTIAL:A.OK:A.APPENDING:A.NOT_LOADED},y.isTimeBuffered=function(D,E,m){for(var p,f,e=0;e<m.length;e++){if(p=m.start(e)-this.bufferPadding,f=m.end(e)+this.bufferPadding,D>=p&&E<=f)return!0;if(E<=p)return!1}return!1},y.onFragLoaded=function(D,E){var m=E.frag,p=E.part;if(!(m.sn==="initSegment"||m.bitrateTest||p)){var f=b(m);this.fragments[f]={body:m,loaded:E,buffered:!1,range:Object.create(null)}}},y.onBufferAppended=function(D,E){var m=this,p=E.frag,f=E.part,e=E.timeRanges;if(p.type===L.PlaylistLevelType.MAIN)if(this.activeFragment=p,f){var s=this.activeParts;s||(this.activeParts=s=[]),s.push(f)}else this.activeParts=null;this.timeRanges=e,Object.keys(e).forEach(function(h){var g=e[h];if(m.detectEvictedFragments(h,g),!f)for(var i=0;i<g.length;i++)p.appendedPTS=Math.max(g.end(i),p.appendedPTS||0)})},y.onFragBuffered=function(D,E){this.detectPartialFragments(E)},y.hasFragment=function(D){var E=b(D);return!!this.fragments[E]},y.removeFragmentsInRange=function(D,E,m){var p=this;Object.keys(this.fragments).forEach(function(f){var e=p.fragments[f];if(!!e&&e.buffered){var s=e.body;s.type===m&&s.start<E&&s.end>D&&p.removeFragment(s)}})},y.removeFragment=function(D){var E=b(D);D.stats.loaded=0,D.clearElementaryStreamInfo(),delete this.fragments[E]},y.removeAllFragments=function(){this.fragments=Object.create(null),this.activeFragment=null,this.activeParts=null},_}();function O(_){var y,x;return _.buffered&&(((y=_.range.video)===null||y===void 0?void 0:y.partial)||((x=_.range.audio)===null||x===void 0?void 0:x.partial))}function b(_){return _.type+"_"+_.level+"_"+_.urlId+"_"+_.sn}},"./src/controller/gap-controller.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"STALL_MINIMUM_DURATION_MS",function(){return O}),l.d(R,"MAX_START_GAP_JUMP",function(){return b}),l.d(R,"SKIP_BUFFER_HOLE_STEP_SECONDS",function(){return _}),l.d(R,"SKIP_BUFFER_RANGE_START",function(){return y}),l.d(R,"default",function(){return x});var C=l("./src/utils/buffer-helper.ts"),L=l("./src/errors.ts"),A=l("./src/events.ts"),w=l("./src/utils/logger.ts"),O=250,b=2,_=.1,y=.05,x=function(){function D(m,p,f,e){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=m,this.media=p,this.fragmentTracker=f,this.hls=e}var E=D.prototype;return E.destroy=function(){this.media=null,this.hls=this.fragmentTracker=null},E.poll=function(p,f){var e=this.config,s=this.media,h=this.stalled;if(s!==null){var g=s.currentTime,i=s.seeking,r=this.seeking&&!i,o=!this.seeking&&i;if(this.seeking=i,g!==p){if(this.moved=!0,h!==null){if(this.stallReported){var c=self.performance.now()-h;w.logger.warn("playback not stuck anymore @"+g+", after "+Math.round(c)+"ms"),this.stallReported=!1}this.stalled=null,this.nudgeRetry=0}return}if((o||r)&&(this.stalled=null),!(s.paused&&!i||s.ended||s.playbackRate===0||!C.BufferHelper.getBuffered(s).length)){var t=C.BufferHelper.bufferInfo(s,g,0),n=t.len>0,u=t.nextStart||0;if(!(!n&&!u)){if(i){var a=t.len>b,d=!u||f&&f.start<=g||u-g>b&&!this.fragmentTracker.getPartialFragment(g);if(a||d)return;this.moved=!1}if(!this.moved&&this.stalled!==null){var v,S=Math.max(u,t.start||0)-g,T=this.hls.levels?this.hls.levels[this.hls.currentLevel]:null,I=T==null||(v=T.details)===null||v===void 0?void 0:v.live,k=I?T.details.targetduration*2:b;if(S>0&&S<=k){this._trySkipBufferHole(null);return}}var B=self.performance.now();if(h===null){this.stalled=B;return}var U=B-h;if(!(!i&&U>=O&&(this._reportStall(t),!this.media))){var W=C.BufferHelper.bufferInfo(s,g,e.maxBufferHole);this._tryFixBufferStall(W,U)}}}}},E._tryFixBufferStall=function(p,f){var e=this.config,s=this.fragmentTracker,h=this.media;if(h!==null){var g=h.currentTime,i=s.getPartialFragment(g);if(i){var r=this._trySkipBufferHole(i);if(r||!this.media)return}p.len>e.maxBufferHole&&f>e.highBufferWatchdogPeriod*1e3&&(w.logger.warn("Trying to nudge playhead over buffer-hole"),this.stalled=null,this._tryNudgeBuffer())}},E._reportStall=function(p){var f=this.hls,e=this.media,s=this.stallReported;!s&&e&&(this.stallReported=!0,w.logger.warn("Playback stalling at @"+e.currentTime+" due to low buffer ("+JSON.stringify(p)+")"),f.trigger(A.Events.ERROR,{type:L.ErrorTypes.MEDIA_ERROR,details:L.ErrorDetails.BUFFER_STALLED_ERROR,fatal:!1,buffer:p.len}))},E._trySkipBufferHole=function(p){var f=this.config,e=this.hls,s=this.media;if(s===null)return 0;for(var h=s.currentTime,g=0,i=C.BufferHelper.getBuffered(s),r=0;r<i.length;r++){var o=i.start(r);if(h+f.maxBufferHole>=g&&h<o){var c=Math.max(o+y,s.currentTime+_);return w.logger.warn("skipping hole, adjusting currentTime from "+h+" to "+c),this.moved=!0,this.stalled=null,s.currentTime=c,p&&e.trigger(A.Events.ERROR,{type:L.ErrorTypes.MEDIA_ERROR,details:L.ErrorDetails.BUFFER_SEEK_OVER_HOLE,fatal:!1,reason:"fragment loaded with buffer holes, seeking from "+h+" to "+c,frag:p}),c}g=i.end(r)}return 0},E._tryNudgeBuffer=function(){var p=this.config,f=this.hls,e=this.media,s=this.nudgeRetry;if(e!==null){var h=e.currentTime;if(this.nudgeRetry++,s<p.nudgeMaxRetry){var g=h+(s+1)*p.nudgeOffset;w.logger.warn("Nudging 'currentTime' from "+h+" to "+g),e.currentTime=g,f.trigger(A.Events.ERROR,{type:L.ErrorTypes.MEDIA_ERROR,details:L.ErrorDetails.BUFFER_NUDGE_ON_STALL,fatal:!1})}else w.logger.error("Playhead still not moving while enough data buffered @"+h+" after "+p.nudgeMaxRetry+" nudges"),f.trigger(A.Events.ERROR,{type:L.ErrorTypes.MEDIA_ERROR,details:L.ErrorDetails.BUFFER_STALLED_ERROR,fatal:!0})}},D}()},"./src/controller/id3-track-controller.ts":function(j,R,l){"use strict";l.r(R);var C=l("./src/polyfills/number.ts"),L=l("./src/events.ts"),A=l("./src/utils/texttrack-utils.ts"),w=l("./src/demux/id3.ts"),O=l("./src/loader/date-range.ts"),b=l("./src/types/demuxer.ts"),_=.25;function y(){return self.WebKitDataCue||self.VTTCue||self.TextTrackCue}function x(m,p){return m.getTime()/1e3-p}function D(m){return Uint8Array.from(m.replace(/^0x/,"").replace(/([\da-fA-F]{2}) ?/g,"0x$1 ").replace(/ +$/,"").split(" ")).buffer}var E=function(){function m(f){this.hls=void 0,this.id3Track=null,this.media=null,this.dateRangeCuesAppended={},this.hls=f,this._registerListeners()}var p=m.prototype;return p.destroy=function(){this._unregisterListeners(),this.id3Track=null,this.media=null,this.dateRangeCuesAppended={},this.hls=null},p._registerListeners=function(){var e=this.hls;e.on(L.Events.MEDIA_ATTACHED,this.onMediaAttached,this),e.on(L.Events.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(L.Events.MANIFEST_LOADING,this.onManifestLoading,this),e.on(L.Events.FRAG_PARSING_METADATA,this.onFragParsingMetadata,this),e.on(L.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),e.on(L.Events.LEVEL_UPDATED,this.onLevelUpdated,this)},p._unregisterListeners=function(){var e=this.hls;e.off(L.Events.MEDIA_ATTACHED,this.onMediaAttached,this),e.off(L.Events.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(L.Events.MANIFEST_LOADING,this.onManifestLoading,this),e.off(L.Events.FRAG_PARSING_METADATA,this.onFragParsingMetadata,this),e.off(L.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),e.off(L.Events.LEVEL_UPDATED,this.onLevelUpdated,this)},p.onMediaAttached=function(e,s){this.media=s.media},p.onMediaDetaching=function(){!this.id3Track||(Object(A.clearCurrentCues)(this.id3Track),this.id3Track=null,this.media=null,this.dateRangeCuesAppended={})},p.onManifestLoading=function(){this.dateRangeCuesAppended={}},p.createTrack=function(e){var s=this.getID3Track(e.textTracks);return s.mode="hidden",s},p.getID3Track=function(e){if(!!this.media){for(var s=0;s<e.length;s++){var h=e[s];if(h.kind==="metadata"&&h.label==="id3")return Object(A.sendAddTrackEvent)(h,this.media),h}return this.media.addTextTrack("metadata","id3")}},p.onFragParsingMetadata=function(e,s){if(!!this.media){var h=this.hls.config,g=h.enableEmsgMetadataCues,i=h.enableID3MetadataCues;if(!(!g&&!i)){var r=s.frag,o=s.samples,c=s.details;this.id3Track||(this.id3Track=this.createTrack(this.media));for(var t=c.edge||r.end,n=y(),u=!1,a={},d=0;d<o.length;d++){var v=o[d].type;if(!(v===b.MetadataSchema.emsg&&!g||!i)){var S=w.getID3Frames(o[d].data);if(S){var T=o[d].pts,I=t,k=I-T;k<=0&&(I=T+_);for(var B=0;B<S.length;B++){var U=S[B];if(!w.isTimeStampFrame(U)){var W=new n(T,I,"");W.value=U,v&&(W.type=v),this.id3Track.addCue(W),a[U.key]=null,u=!0}}}}}u&&this.updateId3CueEnds(a)}}},p.updateId3CueEnds=function(e){var s,h=(s=this.id3Track)===null||s===void 0?void 0:s.cues;if(h)for(var g=h.length;g--;){var i,r=h[g],o=(i=r.value)===null||i===void 0?void 0:i.key;if(o&&o in e){var c=e[o];c&&r.endTime!==c&&(r.endTime=c),e[o]=r.startTime}}},p.onBufferFlushing=function(e,s){var h=s.startOffset,g=s.endOffset,i=s.type,r=this.id3Track,o=this.hls;if(!!o){var c=o.config,t=c.enableEmsgMetadataCues,n=c.enableID3MetadataCues;if(r&&(t||n)){var u;i==="audio"?u=function(d){return d.type===b.MetadataSchema.audioId3&&n}:i==="video"?u=function(d){return d.type===b.MetadataSchema.emsg&&t}:u=function(d){return d.type===b.MetadataSchema.audioId3&&n||d.type===b.MetadataSchema.emsg&&t},Object(A.removeCuesInRange)(r,h,g,u)}}},p.onLevelUpdated=function(e,s){var h=this,g=s.details;if(!(!this.media||!g.hasProgramDateTime||!this.hls.config.enableDateRangeMetadataCues)){var i=this.dateRangeCuesAppended,r=this.id3Track,o=g.dateRanges,c=Object.keys(o);if(r)for(var t=Object.keys(i).filter(function(k){return!c.includes(k)}),n=function(B){var U=t[B];Object.keys(i[U].cues).forEach(function(W){r.removeCue(i[U].cues[W])}),delete i[U]},u=t.length;u--;)n(u);var a=g.fragments[g.fragments.length-1];if(!(c.length===0||!Object(C.isFiniteNumber)(a==null?void 0:a.programDateTime))){this.id3Track||(this.id3Track=this.createTrack(this.media));for(var d=a.programDateTime/1e3-a.start,v=g.edge||a.end,S=y(),T=function(B){var U=c[B],W=o[U],H=i[U],z=(H==null?void 0:H.cues)||{},Y=(H==null?void 0:H.durationKnown)||!1,$=x(W.startDate,d),ee=v,q=W.endDate;if(q)ee=x(q,d),Y=!0;else if(W.endOnNext&&!Y){var re=c.reduce(function(ie,Te){var pe=o[Te];return pe.class===W.class&&pe.id!==Te&&pe.startDate>W.startDate&&ie.push(pe),ie},[]).sort(function(ie,Te){return ie.startDate.getTime()-Te.startDate.getTime()})[0];re&&(ee=x(re.startDate,d),Y=!0)}for(var ae=Object.keys(W.attr),ne=0;ne<ae.length;ne++){var te=ae[ne];if(!(te===O.DateRangeAttribute.ID||te===O.DateRangeAttribute.CLASS||te===O.DateRangeAttribute.START_DATE||te===O.DateRangeAttribute.DURATION||te===O.DateRangeAttribute.END_DATE||te===O.DateRangeAttribute.END_ON_NEXT)){var he=z[te];if(he)Y&&!H.durationKnown&&(he.endTime=ee);else{var ve=W.attr[te];he=new S($,ee,""),(te===O.DateRangeAttribute.SCTE35_OUT||te===O.DateRangeAttribute.SCTE35_IN)&&(ve=D(ve)),he.value={key:te,data:ve},he.type=b.MetadataSchema.dateRange,h.id3Track.addCue(he),z[te]=he}}}i[U]={cues:z,dateRange:W,durationKnown:Y}},I=0;I<c.length;I++)T(I)}}},m}();R.default=E},"./src/controller/latency-controller.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"default",function(){return b});var C=l("./src/errors.ts"),L=l("./src/events.ts"),A=l("./src/utils/logger.ts");function w(_,y){for(var x=0;x<y.length;x++){var D=y[x];D.enumerable=D.enumerable||!1,D.configurable=!0,"value"in D&&(D.writable=!0),Object.defineProperty(_,D.key,D)}}function O(_,y,x){return y&&w(_.prototype,y),x&&w(_,x),Object.defineProperty(_,"prototype",{writable:!1}),_}var b=function(){function _(x){var D=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 D.timeupdate()},this.hls=x,this.config=x.config,this.registerListeners()}var y=_.prototype;return y.destroy=function(){this.unregisterListeners(),this.onMediaDetaching(),this.levelDetails=null,this.hls=this.timeupdateHandler=null},y.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)},y.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)},y.onMediaAttached=function(D,E){this.media=E.media,this.media.addEventListener("timeupdate",this.timeupdateHandler)},y.onMediaDetaching=function(){this.media&&(this.media.removeEventListener("timeupdate",this.timeupdateHandler),this.media=null)},y.onManifestLoading=function(){this.levelDetails=null,this._latency=null,this.stallCount=0},y.onLevelUpdated=function(D,E){var m=E.details;this.levelDetails=m,m.advanced&&this.timeupdate(),!m.live&&this.media&&this.media.removeEventListener("timeupdate",this.timeupdateHandler)},y.onError=function(D,E){E.details===C.ErrorDetails.BUFFER_STALLED_ERROR&&(this.stallCount++,A.logger.warn("[playback-rate-controller]: Stall detected, adjusting target latency"))},y.timeupdate=function(){var D=this.media,E=this.levelDetails;if(!(!D||!E)){this.currentTime=D.currentTime;var m=this.computeLatency();if(m!==null){this._latency=m;var p=this.config,f=p.lowLatencyMode,e=p.maxLiveSyncPlaybackRate;if(!(!f||e===1)){var s=this.targetLatency;if(s!==null){var h=m-s,g=Math.min(this.maxLatency,s+E.targetduration),i=h<g;if(E.live&&i&&h>.05&&this.forwardBufferLength>1){var r=Math.min(2,Math.max(1,e)),o=Math.round(2/(1+Math.exp(-.75*h-this.edgeStalled))*20)/20;D.playbackRate=Math.min(r,Math.max(1,o))}else D.playbackRate!==1&&D.playbackRate!==0&&(D.playbackRate=1)}}}}},y.estimateLiveEdge=function(){var D=this.levelDetails;return D===null?null:D.edge+D.age},y.computeLatency=function(){var D=this.estimateLiveEdge();return D===null?null:D-this.currentTime},O(_,[{key:"latency",get:function(){return this._latency||0}},{key:"maxLatency",get:function(){var D=this.config,E=this.levelDetails;return D.liveMaxLatencyDuration!==void 0?D.liveMaxLatencyDuration:E?D.liveMaxLatencyDurationCount*E.targetduration:0}},{key:"targetLatency",get:function(){var D=this.levelDetails;if(D===null)return null;var E=D.holdBack,m=D.partHoldBack,p=D.targetduration,f=this.config,e=f.liveSyncDuration,s=f.liveSyncDurationCount,h=f.lowLatencyMode,g=this.hls.userConfig,i=h&&m||E;(g.liveSyncDuration||g.liveSyncDurationCount||i===0)&&(i=e!==void 0?e:s*p);var r=p,o=1;return i+Math.min(this.stallCount*o,r)}},{key:"liveSyncPosition",get:function(){var D=this.estimateLiveEdge(),E=this.targetLatency,m=this.levelDetails;if(D===null||E===null||m===null)return null;var p=m.edge,f=D-E-this.edgeStalled,e=p-m.totalduration,s=p-(this.config.lowLatencyMode&&m.partTarget||m.targetduration);return Math.min(Math.max(e,f),s)}},{key:"drift",get:function(){var D=this.levelDetails;return D===null?1:D.drift}},{key:"edgeStalled",get:function(){var D=this.levelDetails;if(D===null)return 0;var E=(this.config.lowLatencyMode&&D.partTarget||D.targetduration)*3;return Math.max(D.age-E,0)}},{key:"forwardBufferLength",get:function(){var D=this.media,E=this.levelDetails;if(!D||!E)return 0;var m=D.buffered.length;return(m?D.buffered.end(m-1):E.edge)-this.currentTime}}]),_}()},"./src/controller/level-controller.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"default",function(){return f});var C=l("./src/types/level.ts"),L=l("./src/events.ts"),A=l("./src/errors.ts"),w=l("./src/utils/codecs.ts"),O=l("./src/controller/level-helper.ts"),b=l("./src/controller/base-playlist-controller.ts"),_=l("./src/types/loader.ts");function y(){return y=Object.assign?Object.assign.bind():function(e){for(var s=1;s<arguments.length;s++){var h=arguments[s];for(var g in h)Object.prototype.hasOwnProperty.call(h,g)&&(e[g]=h[g])}return e},y.apply(this,arguments)}function x(e,s){for(var h=0;h<s.length;h++){var g=s[h];g.enumerable=g.enumerable||!1,g.configurable=!0,"value"in g&&(g.writable=!0),Object.defineProperty(e,g.key,g)}}function D(e,s,h){return s&&x(e.prototype,s),h&&x(e,h),Object.defineProperty(e,"prototype",{writable:!1}),e}function E(e,s){e.prototype=Object.create(s.prototype),e.prototype.constructor=e,m(e,s)}function m(e,s){return m=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(g,i){return g.__proto__=i,g},m(e,s)}var p=/chrome|firefox/.test(navigator.userAgent.toLowerCase()),f=function(e){E(s,e);function s(g){var i;return i=e.call(this,g,"[level-controller]")||this,i._levels=[],i._firstLevel=-1,i._startLevel=void 0,i.currentLevelIndex=-1,i.manualLevelIndex=-1,i.onParsedComplete=void 0,i._registerListeners(),i}var h=s.prototype;return h._registerListeners=function(){var i=this.hls;i.on(L.Events.MANIFEST_LOADED,this.onManifestLoaded,this),i.on(L.Events.LEVEL_LOADED,this.onLevelLoaded,this),i.on(L.Events.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),i.on(L.Events.FRAG_LOADED,this.onFragLoaded,this),i.on(L.Events.ERROR,this.onError,this)},h._unregisterListeners=function(){var i=this.hls;i.off(L.Events.MANIFEST_LOADED,this.onManifestLoaded,this),i.off(L.Events.LEVEL_LOADED,this.onLevelLoaded,this),i.off(L.Events.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),i.off(L.Events.FRAG_LOADED,this.onFragLoaded,this),i.off(L.Events.ERROR,this.onError,this)},h.destroy=function(){this._unregisterListeners(),this.manualLevelIndex=-1,this._levels.length=0,e.prototype.destroy.call(this)},h.startLoad=function(){var i=this._levels;i.forEach(function(r){r.loadError=0}),e.prototype.startLoad.call(this)},h.onManifestLoaded=function(i,r){var o=[],c=[],t=[],n,u={},a,d=!1,v=!1,S=!1;if(r.levels.forEach(function(B){var U=B.attrs;d=d||!!(B.width&&B.height),v=v||!!B.videoCodec,S=S||!!B.audioCodec,p&&B.audioCodec&&B.audioCodec.indexOf("mp4a.40.34")!==-1&&(B.audioCodec=void 0);var W=B.bitrate+"-"+B.attrs.RESOLUTION+"-"+B.attrs.CODECS;a=u[W],a?a.url.push(B.url):(a=new C.Level(B),u[W]=a,o.push(a)),U&&(U.AUDIO&&Object(O.addGroupId)(a,"audio",U.AUDIO),U.SUBTITLES&&Object(O.addGroupId)(a,"text",U.SUBTITLES))}),(d||v)&&S&&(o=o.filter(function(B){var U=B.videoCodec,W=B.width,H=B.height;return!!U||!!(W&&H)})),o=o.filter(function(B){var U=B.audioCodec,W=B.videoCodec;return(!U||Object(w.isCodecSupportedInMp4)(U,"audio"))&&(!W||Object(w.isCodecSupportedInMp4)(W,"video"))}),r.audioTracks&&(c=r.audioTracks.filter(function(B){return!B.audioCodec||Object(w.isCodecSupportedInMp4)(B.audioCodec,"audio")}),Object(O.assignTrackIdsByGroup)(c)),r.subtitles&&(t=r.subtitles,Object(O.assignTrackIdsByGroup)(t)),o.length>0){n=o[0].bitrate,o.sort(function(B,U){return B.bitrate-U.bitrate}),this._levels=o;for(var T=0;T<o.length;T++)if(o[T].bitrate===n){this._firstLevel=T,this.log("manifest loaded, "+o.length+" level(s) found, first bitrate: "+n);break}var I=S&&!v,k={levels:o,audioTracks:c,subtitleTracks:t,firstLevel:this._firstLevel,stats:r.stats,audio:S,video:v,altAudio:!I&&c.some(function(B){return!!B.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:A.ErrorTypes.MEDIA_ERROR,details:A.ErrorDetails.MANIFEST_INCOMPATIBLE_CODECS_ERROR,fatal:!0,url:r.url,reason:"no level with compatible codecs found in manifest"})},h.onError=function(i,r){var o;if(e.prototype.onError.call(this,i,r),!r.fatal){var c=r.context,t=this._levels[this.currentLevelIndex];if(c&&(c.type===_.PlaylistContextType.AUDIO_TRACK&&t.audioGroupIds&&c.groupId===t.audioGroupIds[t.urlId]||c.type===_.PlaylistContextType.SUBTITLE_TRACK&&t.textGroupIds&&c.groupId===t.textGroupIds[t.urlId])){this.redundantFailover(this.currentLevelIndex);return}var n=!1,u=!0,a;switch(r.details){case A.ErrorDetails.FRAG_LOAD_ERROR:case A.ErrorDetails.FRAG_LOAD_TIMEOUT:case A.ErrorDetails.KEY_LOAD_ERROR:case A.ErrorDetails.KEY_LOAD_TIMEOUT:if(r.frag){var d=r.frag.type===_.PlaylistLevelType.MAIN?r.frag.level:this.currentLevelIndex,v=this._levels[d];v?(v.fragmentError++,v.fragmentError>this.hls.config.fragLoadingMaxRetry&&(a=d)):a=d}break;case A.ErrorDetails.LEVEL_LOAD_ERROR:case A.ErrorDetails.LEVEL_LOAD_TIMEOUT:c&&(c.deliveryDirectives&&(u=!1),a=c.level),n=!0;break;case A.ErrorDetails.REMUX_ALLOC_ERROR:a=(o=r.level)!=null?o:this.currentLevelIndex,n=!0;break}a!==void 0&&this.recoverLevel(r,a,n,u)}},h.recoverLevel=function(i,r,o,c){var t=i.details,n=this._levels[r];if(n.loadError++,o){var u=this.retryLoadingOrFail(i);if(u)i.levelRetry=!0;else{this.currentLevelIndex=-1;return}}if(c){var a=n.url.length;if(a>1&&n.loadError<a)i.levelRetry=!0,this.redundantFailover(r);else if(this.manualLevelIndex===-1){for(var d=-1,v=this._levels,S=v.length;S--;){var T=(S+this.currentLevelIndex)%v.length;if(T!==this.currentLevelIndex&&v[T].loadError===0){d=T;break}}d>-1&&this.currentLevelIndex!==d&&(this.warn(t+": switch to "+d),i.levelRetry=!0,this.hls.nextAutoLevel=d)}}},h.redundantFailover=function(i){var r=this._levels[i],o=r.url.length;if(o>1){var c=(r.urlId+1)%o;this.warn("Switching to redundant URL-id "+c),this._levels.forEach(function(t){t.urlId=c}),this.level=i}},h.onFragLoaded=function(i,r){var o=r.frag;if(o!==void 0&&o.type===_.PlaylistLevelType.MAIN){var c=this._levels[o.level];c!==void 0&&(c.fragmentError=0,c.loadError=0)}},h.onLevelLoaded=function(i,r){var o,c=r.level,t=r.details,n=this._levels[c];if(!n){var u;this.warn("Invalid level index "+c),(u=r.deliveryDirectives)!==null&&u!==void 0&&u.skip&&(t.deltaUpdateFailed=!0);return}c===this.currentLevelIndex?(n.fragmentError===0&&(n.loadError=0,this.retryCount=0),this.playlistLoaded(c,r,n.details)):(o=r.deliveryDirectives)!==null&&o!==void 0&&o.skip&&(t.deltaUpdateFailed=!0)},h.onAudioTrackSwitched=function(i,r){var o=this.hls.levels[this.currentLevelIndex];if(!!o&&o.audioGroupIds){for(var c=-1,t=this.hls.audioTracks[r.id].groupId,n=0;n<o.audioGroupIds.length;n++)if(o.audioGroupIds[n]===t){c=n;break}c!==o.urlId&&(o.urlId=c,this.startLoad())}},h.loadPlaylist=function(i){var r=this.currentLevelIndex,o=this._levels[r];if(this.canLoad&&o&&o.url.length>0){var c=o.urlId,t=o.url[c];if(i)try{t=i.addDirectives(t)}catch(n){this.warn("Could not construct new URL with HLS Delivery Directives: "+n)}this.log("Attempt loading level index "+r+(i?" at sn "+i.msn+" part "+i.part:"")+" with URL-id "+c+" "+t),this.clearTimer(),this.hls.trigger(L.Events.LEVEL_LOADING,{url:t,level:r,id:c,deliveryDirectives:i||null})}},h.removeLevel=function(i,r){var o=function(n,u){return u!==r},c=this._levels.filter(function(t,n){return n!==i?!0:t.url.length>1&&r!==void 0?(t.url=t.url.filter(o),t.audioGroupIds&&(t.audioGroupIds=t.audioGroupIds.filter(o)),t.textGroupIds&&(t.textGroupIds=t.textGroupIds.filter(o)),t.urlId=0,!0):!1}).map(function(t,n){var u=t.details;return u!=null&&u.fragments&&u.fragments.forEach(function(a){a.level=n}),t});this._levels=c,this.hls.trigger(L.Events.LEVELS_UPDATED,{levels:c})},D(s,[{key:"levels",get:function(){return this._levels.length===0?null:this._levels}},{key:"level",get:function(){return this.currentLevelIndex},set:function(i){var r,o=this._levels;if(o.length!==0&&!(this.currentLevelIndex===i&&(r=o[i])!==null&&r!==void 0&&r.details)){if(i<0||i>=o.length){var c=i<0;if(this.hls.trigger(L.Events.ERROR,{type:A.ErrorTypes.OTHER_ERROR,details:A.ErrorDetails.LEVEL_SWITCH_ERROR,level:i,fatal:c,reason:"invalid level idx"}),c)return;i=Math.min(i,o.length-1)}this.clearTimer();var t=this.currentLevelIndex,n=o[t],u=o[i];this.log("switching to level "+i+" from "+t),this.currentLevelIndex=i;var a=y({},u,{level:i,maxBitrate:u.maxBitrate,uri:u.uri,urlId:u.urlId});delete a._urlId,this.hls.trigger(L.Events.LEVEL_SWITCHING,a);var d=u.details;if(!d||d.live){var v=this.switchParams(u.uri,n==null?void 0:n.details);this.loadPlaylist(v)}}}},{key:"manualLevel",get:function(){return this.manualLevelIndex},set:function(i){this.manualLevelIndex=i,this._startLevel===void 0&&(this._startLevel=i),i!==-1&&(this.level=i)}},{key:"firstLevel",get:function(){return this._firstLevel},set:function(i){this._firstLevel=i}},{key:"startLevel",get:function(){if(this._startLevel===void 0){var i=this.hls.config.startLevel;return i!==void 0?i:this._firstLevel}else return this._startLevel},set:function(i){this._startLevel=i}},{key:"nextLoadLevel",get:function(){return this.manualLevelIndex!==-1?this.manualLevelIndex:this.hls.nextAutoLevel},set:function(i){this.level=i,this.manualLevelIndex===-1&&(this.hls.nextAutoLevel=i)}}]),s}(b.default)},"./src/controller/level-helper.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"addGroupId",function(){return O}),l.d(R,"assignTrackIdsByGroup",function(){return b}),l.d(R,"updatePTS",function(){return _}),l.d(R,"updateFragPTSDTS",function(){return x}),l.d(R,"mergeDetails",function(){return D}),l.d(R,"mapPartIntersection",function(){return m}),l.d(R,"mapFragmentIntersection",function(){return p}),l.d(R,"adjustSliding",function(){return f}),l.d(R,"addSliding",function(){return e}),l.d(R,"computeReloadInterval",function(){return s}),l.d(R,"getFragmentWithSN",function(){return h}),l.d(R,"getPartWith",function(){return g});var C=l("./src/polyfills/number.ts"),L=l("./src/utils/logger.ts"),A=l("./src/loader/date-range.ts");function w(){return w=Object.assign?Object.assign.bind():function(i){for(var r=1;r<arguments.length;r++){var o=arguments[r];for(var c in o)Object.prototype.hasOwnProperty.call(o,c)&&(i[c]=o[c])}return i},w.apply(this,arguments)}function O(i,r,o){switch(r){case"audio":i.audioGroupIds||(i.audioGroupIds=[]),i.audioGroupIds.push(o);break;case"text":i.textGroupIds||(i.textGroupIds=[]),i.textGroupIds.push(o);break}}function b(i){var r={};i.forEach(function(o){var c=o.groupId||"";o.id=r[c]=r[c]||0,r[c]++})}function _(i,r,o){var c=i[r],t=i[o];y(c,t)}function y(i,r){var o=r.startPTS;if(Object(C.isFiniteNumber)(o)){var c=0,t;r.sn>i.sn?(c=o-i.start,t=i):(c=i.start-o,t=r),t.duration!==c&&(t.duration=c)}else if(r.sn>i.sn){var n=i.cc===r.cc;n&&i.minEndPTS?r.start=i.start+(i.minEndPTS-i.start):r.start=i.start+i.duration}else r.start=Math.max(i.start-r.duration,0)}function x(i,r,o,c,t,n){var u=c-o;u<=0&&(L.logger.warn("Fragment should have a positive duration",r),c=o+r.duration,n=t+r.duration);var a=o,d=c,v=r.startPTS,S=r.endPTS;if(Object(C.isFiniteNumber)(v)){var T=Math.abs(v-o);Object(C.isFiniteNumber)(r.deltaPTS)?r.deltaPTS=Math.max(T,r.deltaPTS):r.deltaPTS=T,a=Math.max(o,v),o=Math.min(o,v),t=Math.min(t,r.startDTS),d=Math.min(c,S),c=Math.max(c,S),n=Math.max(n,r.endDTS)}r.duration=c-o;var I=o-r.start;r.appendedPTS=c,r.start=r.startPTS=o,r.maxStartPTS=a,r.startDTS=t,r.endPTS=c,r.minEndPTS=d,r.endDTS=n;var k=r.sn;if(!i||k<i.startSN||k>i.endSN)return 0;var B,U=k-i.startSN,W=i.fragments;for(W[U]=r,B=U;B>0;B--)y(W[B],W[B-1]);for(B=U;B<W.length-1;B++)y(W[B],W[B+1]);return i.fragmentHint&&y(W[W.length-1],i.fragmentHint),i.PTSKnown=i.alignedSliding=!0,I}function D(i,r){for(var o=null,c=i.fragments,t=c.length-1;t>=0;t--){var n=c[t].initSegment;if(n){o=n;break}}i.fragmentHint&&delete i.fragmentHint.endPTS;var u=0,a;if(p(i,r,function(B,U){B.relurl&&(u=B.cc-U.cc),Object(C.isFiniteNumber)(B.startPTS)&&Object(C.isFiniteNumber)(B.endPTS)&&(U.start=U.startPTS=B.startPTS,U.startDTS=B.startDTS,U.appendedPTS=B.appendedPTS,U.maxStartPTS=B.maxStartPTS,U.endPTS=B.endPTS,U.endDTS=B.endDTS,U.minEndPTS=B.minEndPTS,U.duration=B.endPTS-B.startPTS,U.duration&&(a=U),r.PTSKnown=r.alignedSliding=!0),U.elementaryStreams=B.elementaryStreams,U.loader=B.loader,U.stats=B.stats,U.urlId=B.urlId,B.initSegment&&(U.initSegment=B.initSegment,o=B.initSegment)}),o){var d=r.fragmentHint?r.fragments.concat(r.fragmentHint):r.fragments;d.forEach(function(B){var U;(!B.initSegment||B.initSegment.relurl===((U=o)===null||U===void 0?void 0:U.relurl))&&(B.initSegment=o)})}if(r.skippedSegments)if(r.deltaUpdateFailed=r.fragments.some(function(B){return!B}),r.deltaUpdateFailed){L.logger.warn("[level-helper] Previous playlist missing segments skipped in delta playlist");for(var v=r.skippedSegments;v--;)r.fragments.shift();r.startSN=r.fragments[0].sn,r.startCC=r.fragments[0].cc}else r.canSkipDateRanges&&(r.dateRanges=E(i.dateRanges,r.dateRanges,r.recentlyRemovedDateranges));var S=r.fragments;if(u){L.logger.warn("discontinuity sliding from playlist, take drift into account");for(var T=0;T<S.length;T++)S[T].cc+=u}r.skippedSegments&&(r.startCC=r.fragments[0].cc),m(i.partList,r.partList,function(B,U){U.elementaryStreams=B.elementaryStreams,U.stats=B.stats}),a?x(r,a,a.startPTS,a.endPTS,a.startDTS,a.endDTS):f(i,r),S.length&&(r.totalduration=r.edge-S[0].start),r.driftStartTime=i.driftStartTime,r.driftStart=i.driftStart;var I=r.advancedDateTime;if(r.advanced&&I){var k=r.edge;r.driftStart||(r.driftStartTime=I,r.driftStart=k),r.driftEndTime=I,r.driftEnd=k}else r.driftEndTime=i.driftEndTime,r.driftEnd=i.driftEnd,r.advancedDateTime=i.advancedDateTime}function E(i,r,o){var c=w({},i);return o&&o.forEach(function(t){delete c[t]}),Object.keys(r).forEach(function(t){var n=new A.DateRange(r[t].attr,c[t]);n.isValid?c[t]=n:L.logger.warn('Ignoring invalid Playlist Delta Update DATERANGE tag: "'+JSON.stringify(r[t].attr)+'"')}),c}function m(i,r,o){if(i&&r)for(var c=0,t=0,n=i.length;t<=n;t++){var u=i[t],a=r[t+c];u&&a&&u.index===a.index&&u.fragment.sn===a.fragment.sn?o(u,a):c--}}function p(i,r,o){for(var c=r.skippedSegments,t=Math.max(i.startSN,r.startSN)-r.startSN,n=(i.fragmentHint?1:0)+(c?r.endSN:Math.min(i.endSN,r.endSN))-r.startSN,u=r.startSN-i.startSN,a=r.fragmentHint?r.fragments.concat(r.fragmentHint):r.fragments,d=i.fragmentHint?i.fragments.concat(i.fragmentHint):i.fragments,v=t;v<=n;v++){var S=d[u+v],T=a[v];c&&!T&&v<c&&(T=r.fragments[v]=S),S&&T&&o(S,T)}}function f(i,r){var o=r.startSN+r.skippedSegments-i.startSN,c=i.fragments;o<0||o>=c.length||e(r,c[o].start)}function e(i,r){if(r){for(var o=i.fragments,c=i.skippedSegments;c<o.length;c++)o[c].start+=r;i.fragmentHint&&(i.fragmentHint.start+=r)}}function s(i,r){var o=1e3*i.levelTargetDuration,c=o/2,t=i.age,n=t>0&&t<o*3,u=r.loading.end-r.loading.start,a,d=i.availabilityDelay;if(i.updated===!1)if(n){var v=333*i.misses;a=Math.max(Math.min(c,u*2),v),i.availabilityDelay=(i.availabilityDelay||0)+a}else a=c;else n?(d=Math.min(d||o/2,t),i.availabilityDelay=d,a=d+o-t):a=o-u;return Math.round(a)}function h(i,r,o){if(!i||!i.details)return null;var c=i.details,t=c.fragments[r-c.startSN];return t||(t=c.fragmentHint,t&&t.sn===r)?t:r<c.startSN&&o&&o.sn===r?o:null}function g(i,r,o){if(!i||!i.details)return null;var c=i.details.partList;if(c)for(var t=c.length;t--;){var n=c[t];if(n.index===o&&n.fragment.sn===r)return n}return null}},"./src/controller/stream-controller.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"default",function(){return g});var C=l("./src/polyfills/number.ts"),L=l("./src/controller/base-stream-controller.ts"),A=l("./src/is-supported.ts"),w=l("./src/events.ts"),O=l("./src/utils/buffer-helper.ts"),b=l("./src/controller/fragment-tracker.ts"),_=l("./src/types/loader.ts"),y=l("./src/loader/fragment.ts"),x=l("./src/demux/transmuxer-interface.ts"),D=l("./src/types/transmuxer.ts"),E=l("./src/controller/gap-controller.ts"),m=l("./src/errors.ts");function p(i,r){for(var o=0;o<r.length;o++){var c=r[o];c.enumerable=c.enumerable||!1,c.configurable=!0,"value"in c&&(c.writable=!0),Object.defineProperty(i,c.key,c)}}function f(i,r,o){return r&&p(i.prototype,r),o&&p(i,o),Object.defineProperty(i,"prototype",{writable:!1}),i}function e(i,r){i.prototype=Object.create(r.prototype),i.prototype.constructor=i,s(i,r)}function s(i,r){return s=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(c,t){return c.__proto__=t,c},s(i,r)}var h=100,g=function(i){e(r,i);function r(c,t){var n;return n=i.call(this,c,t,"[stream-controller]")||this,n.audioCodecSwap=!1,n.gapController=null,n.level=-1,n._forceStartLoad=!1,n.altAudio=!1,n.audioOnly=!1,n.fragPlaying=null,n.onvplaying=null,n.onvseeked=null,n.fragLastKbps=0,n.couldBacktrack=!1,n.backtrackFragment=null,n.audioCodecSwitch=!1,n.videoBuffer=null,n._registerListeners(),n}var o=r.prototype;return o._registerListeners=function(){var t=this.hls;t.on(w.Events.MEDIA_ATTACHED,this.onMediaAttached,this),t.on(w.Events.MEDIA_DETACHING,this.onMediaDetaching,this),t.on(w.Events.MANIFEST_LOADING,this.onManifestLoading,this),t.on(w.Events.MANIFEST_PARSED,this.onManifestParsed,this),t.on(w.Events.LEVEL_LOADING,this.onLevelLoading,this),t.on(w.Events.LEVEL_LOADED,this.onLevelLoaded,this),t.on(w.Events.FRAG_LOAD_EMERGENCY_ABORTED,this.onFragLoadEmergencyAborted,this),t.on(w.Events.ERROR,this.onError,this),t.on(w.Events.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),t.on(w.Events.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),t.on(w.Events.BUFFER_CREATED,this.onBufferCreated,this),t.on(w.Events.BUFFER_FLUSHED,this.onBufferFlushed,this),t.on(w.Events.LEVELS_UPDATED,this.onLevelsUpdated,this),t.on(w.Events.FRAG_BUFFERED,this.onFragBuffered,this)},o._unregisterListeners=function(){var t=this.hls;t.off(w.Events.MEDIA_ATTACHED,this.onMediaAttached,this),t.off(w.Events.MEDIA_DETACHING,this.onMediaDetaching,this),t.off(w.Events.MANIFEST_LOADING,this.onManifestLoading,this),t.off(w.Events.MANIFEST_PARSED,this.onManifestParsed,this),t.off(w.Events.LEVEL_LOADED,this.onLevelLoaded,this),t.off(w.Events.FRAG_LOAD_EMERGENCY_ABORTED,this.onFragLoadEmergencyAborted,this),t.off(w.Events.ERROR,this.onError,this),t.off(w.Events.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),t.off(w.Events.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),t.off(w.Events.BUFFER_CREATED,this.onBufferCreated,this),t.off(w.Events.BUFFER_FLUSHED,this.onBufferFlushed,this),t.off(w.Events.LEVELS_UPDATED,this.onLevelsUpdated,this),t.off(w.Events.FRAG_BUFFERED,this.onFragBuffered,this)},o.onHandlerDestroying=function(){this._unregisterListeners(),this.onMediaDetaching()},o.startLoad=function(t){if(this.levels){var n=this.lastCurrentTime,u=this.hls;if(this.stopLoad(),this.setInterval(h),this.level=-1,this.fragLoadError=0,!this.startFragRequested){var a=u.startLevel;a===-1&&(u.config.testBandwidth&&this.levels.length>1?(a=0,this.bitrateTest=!0):a=u.nextAutoLevel),this.level=u.nextLoadLevel=a,this.loadedmetadata=!1}n>0&&t===-1&&(this.log("Override startPosition with lastCurrentTime @"+n.toFixed(3)),t=n),this.state=L.State.IDLE,this.nextLoadPosition=this.startPosition=this.lastCurrentTime=t,this.tick()}else this._forceStartLoad=!0,this.state=L.State.STOPPED},o.stopLoad=function(){this._forceStartLoad=!1,i.prototype.stopLoad.call(this)},o.doTick=function(){switch(this.state){case L.State.IDLE:this.doTickIdle();break;case L.State.WAITING_LEVEL:{var t,n=this.levels,u=this.level,a=n==null||(t=n[u])===null||t===void 0?void 0:t.details;if(a&&(!a.live||this.levelLastLoaded===this.level)){if(this.waitForCdnTuneIn(a))break;this.state=L.State.IDLE;break}break}case L.State.FRAG_LOADING_WAITING_RETRY:{var d,v=self.performance.now(),S=this.retryDate;(!S||v>=S||(d=this.media)!==null&&d!==void 0&&d.seeking)&&(this.log("retryDate reached, switch back to IDLE state"),this.resetStartWhenNotLoaded(this.level),this.state=L.State.IDLE)}break;default:break}this.onTickEnd()},o.onTickEnd=function(){i.prototype.onTickEnd.call(this),this.checkBuffer(),this.checkFragmentChanged()},o.doTickIdle=function(){var t,n,u=this.hls,a=this.levelLastLoaded,d=this.levels,v=this.media,S=u.config,T=u.nextLoadLevel;if(!(a===null||!v&&(this.startFragRequested||!S.startFragPrefetch))&&!(this.altAudio&&this.audioOnly)&&!(!d||!d[T])){var I=d[T];this.level=u.nextLoadLevel=T;var k=I.details;if(!k||this.state===L.State.WAITING_LEVEL||k.live&&this.levelLastLoaded!==T){this.state=L.State.WAITING_LEVEL;return}var B=this.getMainFwdBufferInfo();if(B!==null){var U=B.len,W=this.getMaxBufferLength(I.maxBitrate);if(!(U>=W)){if(this._streamEnded(B,k)){var H={};this.altAudio&&(H.type="video"),this.hls.trigger(w.Events.BUFFER_EOS,H),this.state=L.State.ENDED;return}this.backtrackFragment&&this.backtrackFragment.start>B.end&&(this.backtrackFragment=null);var z=this.backtrackFragment?this.backtrackFragment.start:B.end,Y=this.getNextFragment(z,k);if(this.couldBacktrack&&!this.fragPrevious&&Y&&Y.sn!=="initSegment"&&this.fragmentTracker.getState(Y)!==b.FragmentState.OK){var $,ee=(($=this.backtrackFragment)!=null?$:Y).sn,q=ee-k.startSN,re=k.fragments[q-1];re&&Y.cc===re.cc&&(Y=re,this.fragmentTracker.removeFragment(re))}else this.backtrackFragment&&B.len&&(this.backtrackFragment=null);if(Y&&this.fragmentTracker.getState(Y)===b.FragmentState.OK&&this.nextLoadPosition>z){var ae=this.audioOnly&&!this.altAudio?y.ElementaryStreamTypes.AUDIO:y.ElementaryStreamTypes.VIDEO;v&&this.afterBufferFlushed(v,ae,_.PlaylistLevelType.MAIN),Y=this.getNextFragment(this.nextLoadPosition,k)}!Y||(Y.initSegment&&!Y.initSegment.data&&!this.bitrateTest&&(Y=Y.initSegment),((t=Y.decryptdata)===null||t===void 0?void 0:t.keyFormat)==="identity"&&!((n=Y.decryptdata)!==null&&n!==void 0&&n.key)?this.loadKey(Y,k):this.loadFragment(Y,k,z))}}}},o.loadFragment=function(t,n,u){var a,d=this.fragmentTracker.getState(t);this.fragCurrent=t,d===b.FragmentState.NOT_LOADED?t.sn==="initSegment"?this._loadInitSegment(t):this.bitrateTest?(this.log("Fragment "+t.sn+" of level "+t.level+" is being downloaded to test bitrate and will not be buffered"),this._loadBitrateTestFrag(t)):(this.startFragRequested=!0,i.prototype.loadFragment.call(this,t,n,u)):d===b.FragmentState.APPENDING?this.reduceMaxBufferLength(t.duration)&&this.fragmentTracker.removeFragment(t):((a=this.media)===null||a===void 0?void 0:a.buffered.length)===0&&this.fragmentTracker.removeAllFragments()},o.getAppendedFrag=function(t){var n=this.fragmentTracker.getAppendedFrag(t,_.PlaylistLevelType.MAIN);return n&&"fragment"in n?n.fragment:n},o.getBufferedFrag=function(t){return this.fragmentTracker.getBufferedFrag(t,_.PlaylistLevelType.MAIN)},o.followingBufferedFrag=function(t){return t?this.getBufferedFrag(t.end+.5):null},o.immediateLevelSwitch=function(){this.abortCurrentFrag(),this.flushMainBuffer(0,Number.POSITIVE_INFINITY)},o.nextLevelSwitch=function(){var t=this.levels,n=this.media;if(n!=null&&n.readyState){var u,a=this.getAppendedFrag(n.currentTime);if(a&&a.start>1&&this.flushMainBuffer(0,a.start-1),!n.paused&&t){var d=this.hls.nextLoadLevel,v=t[d],S=this.fragLastKbps;S&&this.fragCurrent?u=this.fragCurrent.duration*v.maxBitrate/(1e3*S)+1:u=0}else u=0;var T=this.getBufferedFrag(n.currentTime+u);if(T){var I=this.followingBufferedFrag(T);if(I){this.abortCurrentFrag();var k=I.maxStartPTS?I.maxStartPTS:I.start,B=I.duration,U=Math.max(T.end,k+Math.min(Math.max(B-this.config.maxFragLookUpTolerance,B*.5),B*.75));this.flushMainBuffer(U,Number.POSITIVE_INFINITY)}}}},o.abortCurrentFrag=function(){var t=this.fragCurrent;switch(this.fragCurrent=null,this.backtrackFragment=null,t!=null&&t.loader&&t.loader.abort(),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()},o.flushMainBuffer=function(t,n){i.prototype.flushMainBuffer.call(this,t,n,this.altAudio?"video":null)},o.onMediaAttached=function(t,n){i.prototype.onMediaAttached.call(this,t,n);var u=n.media;this.onvplaying=this.onMediaPlaying.bind(this),this.onvseeked=this.onMediaSeeked.bind(this),u.addEventListener("playing",this.onvplaying),u.addEventListener("seeked",this.onvseeked),this.gapController=new E.default(this.config,u,this.fragmentTracker,this.hls)},o.onMediaDetaching=function(){var t=this.media;t&&this.onvplaying&&this.onvseeked&&(t.removeEventListener("playing",this.onvplaying),t.removeEventListener("seeked",this.onvseeked),this.onvplaying=this.onvseeked=null,this.videoBuffer=null),this.fragPlaying=null,this.gapController&&(this.gapController.destroy(),this.gapController=null),i.prototype.onMediaDetaching.call(this)},o.onMediaPlaying=function(){this.tick()},o.onMediaSeeked=function(){var t=this.media,n=t?t.currentTime:null;Object(C.isFiniteNumber)(n)&&this.log("Media seeked to "+n.toFixed(3)),this.tick()},o.onManifestLoading=function(){this.log("Trigger BUFFER_RESET"),this.hls.trigger(w.Events.BUFFER_RESET,void 0),this.fragmentTracker.removeAllFragments(),this.couldBacktrack=!1,this.startPosition=this.lastCurrentTime=0,this.fragPlaying=null,this.backtrackFragment=null},o.onManifestParsed=function(t,n){var u=!1,a=!1,d;n.levels.forEach(function(v){d=v.audioCodec,d&&(d.indexOf("mp4a.40.2")!==-1&&(u=!0),d.indexOf("mp4a.40.5")!==-1&&(a=!0))}),this.audioCodecSwitch=u&&a&&!Object(A.changeTypeSupported)(),this.audioCodecSwitch&&this.log("Both AAC/HE-AAC audio found in levels; declaring level codec as HE-AAC"),this.levels=n.levels,this.startFragRequested=!1},o.onLevelLoading=function(t,n){var u=this.levels;if(!(!u||this.state!==L.State.IDLE)){var a=u[n.level];(!a.details||a.details.live&&this.levelLastLoaded!==n.level||this.waitForCdnTuneIn(a.details))&&(this.state=L.State.WAITING_LEVEL)}},o.onLevelLoaded=function(t,n){var u,a=this.levels,d=n.level,v=n.details,S=v.totalduration;if(!a){this.warn("Levels were reset while loading level "+d);return}this.log("Level "+d+" loaded ["+v.startSN+","+v.endSN+"], cc ["+v.startCC+", "+v.endCC+"] duration:"+S);var T=this.fragCurrent;T&&(this.state===L.State.FRAG_LOADING||this.state===L.State.FRAG_LOADING_WAITING_RETRY)&&T.level!==n.level&&T.loader&&(this.state=L.State.IDLE,this.backtrackFragment=null,T.loader.abort());var I=a[d],k=0;if(v.live||(u=I.details)!==null&&u!==void 0&&u.live){if(v.fragments[0]||(v.deltaUpdateFailed=!0),v.deltaUpdateFailed)return;k=this.alignPlaylists(v,I.details)}if(I.details=v,this.levelLastLoaded=d,this.hls.trigger(w.Events.LEVEL_UPDATED,{details:v,level:d}),this.state===L.State.WAITING_LEVEL){if(this.waitForCdnTuneIn(v))return;this.state=L.State.IDLE}this.startFragRequested?v.live&&this.synchronizeToLiveEdge(v):this.setStartPosition(v,k),this.tick()},o._handleFragmentLoadProgress=function(t){var n,u=t.frag,a=t.part,d=t.payload,v=this.levels;if(!v){this.warn("Levels were reset while fragment load was in progress. Fragment "+u.sn+" of level "+u.level+" will not be buffered");return}var S=v[u.level],T=S.details;if(!T){this.warn("Dropping fragment "+u.sn+" of level "+u.level+" after level details were reset");return}var I=S.videoCodec,k=T.PTSKnown||!T.live,B=(n=u.initSegment)===null||n===void 0?void 0:n.data,U=this._getAudioCodec(S),W=this.transmuxer=this.transmuxer||new x.default(this.hls,_.PlaylistLevelType.MAIN,this._handleTransmuxComplete.bind(this),this._handleTransmuxerFlush.bind(this)),H=a?a.index:-1,z=H!==-1,Y=new D.ChunkMetadata(u.level,u.sn,u.stats.chunkCount,d.byteLength,H,z),$=this.initPTS[u.cc];W.push(d,B,U,I,u,a,T.totalduration,k,Y,$)},o.onAudioTrackSwitching=function(t,n){var u=this.altAudio,a=!!n.url,d=n.id;if(!a){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!=null&&v.loader&&(this.log("Switching to main audio track, cancel main fragment load"),v.loader.abort()),this.resetTransmuxer(),this.resetLoadingState()}else this.audioOnly&&this.resetTransmuxer();var S=this.hls;u&&S.trigger(w.Events.BUFFER_FLUSHING,{startOffset:0,endOffset:Number.POSITIVE_INFINITY,type:"audio"}),S.trigger(w.Events.AUDIO_TRACK_SWITCHED,{id:d})}},o.onAudioTrackSwitched=function(t,n){var u=n.id,a=!!this.hls.audioTracks[u].url;if(a){var d=this.videoBuffer;d&&this.mediaBuffer!==d&&(this.log("Switching on alternate audio, use video.buffered to schedule main fragment loading"),this.mediaBuffer=d)}this.altAudio=a,this.tick()},o.onBufferCreated=function(t,n){var u=n.tracks,a,d,v=!1;for(var S in u){var T=u[S];if(T.id==="main"){if(d=S,a=T,S==="video"){var I=u[S];I&&(this.videoBuffer=I.buffer)}}else v=!0}v&&a?(this.log("Alternate track found, use "+d+".buffered to schedule main fragment loading"),this.mediaBuffer=a.buffer):this.mediaBuffer=this.media},o.onFragBuffered=function(t,n){var u=n.frag,a=n.part;if(!(u&&u.type!==_.PlaylistLevelType.MAIN)){if(this.fragContextChanged(u)){this.warn("Fragment "+u.sn+(a?" p: "+a.index:"")+" of level "+u.level+" finished buffering, but was aborted. state: "+this.state),this.state===L.State.PARSED&&(this.state=L.State.IDLE);return}var d=a?a.stats:u.stats;this.fragLastKbps=Math.round(8*d.total/(d.buffering.end-d.loading.first)),u.sn!=="initSegment"&&(this.fragPrevious=u),this.fragBufferedComplete(u,a)}},o.onError=function(t,n){switch(n.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:this.onFragmentOrKeyLoadError(_.PlaylistLevelType.MAIN,n);break;case m.ErrorDetails.LEVEL_LOAD_ERROR:case m.ErrorDetails.LEVEL_LOAD_TIMEOUT:this.state!==L.State.ERROR&&(n.fatal?(this.warn(""+n.details),this.state=L.State.ERROR):!n.levelRetry&&this.state===L.State.WAITING_LEVEL&&(this.state=L.State.IDLE));break;case m.ErrorDetails.BUFFER_FULL_ERROR:if(n.parent==="main"&&(this.state===L.State.PARSING||this.state===L.State.PARSED)){var u=!0,a=this.getFwdBufferInfo(this.media,_.PlaylistLevelType.MAIN);a&&a.len>.5&&(u=!this.reduceMaxBufferLength(a.len)),u&&(this.warn("buffer full error also media.currentTime is not buffered, flush main"),this.immediateLevelSwitch()),this.resetLoadingState()}break;default:break}},o.checkBuffer=function(){var t=this.media,n=this.gapController;if(!(!t||!n||!t.readyState)){if(this.loadedmetadata||!O.BufferHelper.getBuffered(t).length){var u=this.state!==L.State.IDLE?this.fragCurrent:null;n.poll(this.lastCurrentTime,u)}this.lastCurrentTime=t.currentTime}},o.onFragLoadEmergencyAborted=function(){this.state=L.State.IDLE,this.loadedmetadata||(this.startFragRequested=!1,this.nextLoadPosition=this.startPosition),this.tickImmediate()},o.onBufferFlushed=function(t,n){var u=n.type;if(u!==y.ElementaryStreamTypes.AUDIO||this.audioOnly&&!this.altAudio){var a=(u===y.ElementaryStreamTypes.VIDEO?this.videoBuffer:this.mediaBuffer)||this.media;this.afterBufferFlushed(a,u,_.PlaylistLevelType.MAIN)}},o.onLevelsUpdated=function(t,n){this.levels=n.levels},o.swapAudioCodec=function(){this.audioCodecSwap=!this.audioCodecSwap},o.seekToStartPos=function(){var t=this.media;if(!!t){var n=t.currentTime,u=this.startPosition;if(u>=0&&n<u){if(t.seeking){this.log("could not seek to "+u+", already seeking at "+n);return}var a=O.BufferHelper.getBuffered(t),d=a.length?a.start(0):0,v=d-u;v>0&&(v<this.config.maxBufferHole||v<this.config.maxFragLookUpTolerance)&&(this.log("adjusting start position by "+v+" to match buffer start"),u+=v,this.startPosition=u),this.log("seek to target start position "+u+" from current time "+n),t.currentTime=u}}},o._getAudioCodec=function(t){var n=this.config.defaultAudioCodec||t.audioCodec;return this.audioCodecSwap&&n&&(this.log("Swapping audio codec"),n.indexOf("mp4a.40.5")!==-1?n="mp4a.40.2":n="mp4a.40.5"),n},o._loadBitrateTestFrag=function(t){var n=this;t.bitrateTest=!0,this._doFragLoad(t).then(function(u){var a=n.hls;if(!(!u||a.nextLoadLevel||n.fragContextChanged(t))){n.fragLoadError=0,n.state=L.State.IDLE,n.startFragRequested=!1,n.bitrateTest=!1;var d=t.stats;d.parsing.start=d.parsing.end=d.buffering.start=d.buffering.end=self.performance.now(),a.trigger(w.Events.FRAG_LOADED,u),t.bitrateTest=!1}})},o._handleTransmuxComplete=function(t){var n,u="main",a=this.hls,d=t.remuxResult,v=t.chunkMeta,S=this.getCurrentContext(v);if(!S){this.warn("The loading context changed while buffering fragment "+v.sn+" of level "+v.level+". This chunk will not be buffered."),this.resetStartWhenNotLoaded(v.level);return}var T=S.frag,I=S.part,k=S.level,B=d.video,U=d.text,W=d.id3,H=d.initSegment,z=k.details,Y=this.altAudio?void 0:d.audio;if(!this.fragContextChanged(T)){if(this.state=L.State.PARSING,H){H.tracks&&(this._bufferInitSegment(k,H.tracks,T,v),a.trigger(w.Events.FRAG_PARSING_INIT_SEGMENT,{frag:T,id:u,tracks:H.tracks}));var $=H.initPTS,ee=H.timescale;Object(C.isFiniteNumber)($)&&(this.initPTS[T.cc]=$,a.trigger(w.Events.INIT_PTS_FOUND,{frag:T,id:u,initPTS:$,timescale:ee}))}if(B&&d.independent!==!1){if(z){var q=B.startPTS,re=B.endPTS,ae=B.startDTS,ne=B.endDTS;if(I)I.elementaryStreams[B.type]={startPTS:q,endPTS:re,startDTS:ae,endDTS:ne};else if(B.firstKeyFrame&&B.independent&&(this.couldBacktrack=!0),B.dropped&&B.independent){var te=this.getMainFwdBufferInfo(),he=(te?te.end:this.getLoadPosition())+this.config.maxBufferHole,ve=B.firstKeyFramePTS?B.firstKeyFramePTS:q;if(he<ve-this.config.maxBufferHole){this.backtrack(T);return}T.setElementaryStreamInfo(B.type,T.start,re,T.start,ne,!0)}T.setElementaryStreamInfo(B.type,q,re,ae,ne),this.backtrackFragment&&(this.backtrackFragment=T),this.bufferFragmentData(B,T,I,v)}}else if(d.independent===!1){this.backtrack(T);return}if(Y){var ie=Y.startPTS,Te=Y.endPTS,pe=Y.startDTS,xe=Y.endDTS;I&&(I.elementaryStreams[y.ElementaryStreamTypes.AUDIO]={startPTS:ie,endPTS:Te,startDTS:pe,endDTS:xe}),T.setElementaryStreamInfo(y.ElementaryStreamTypes.AUDIO,ie,Te,pe,xe),this.bufferFragmentData(Y,T,I,v)}if(z&&W!==null&&W!==void 0&&(n=W.samples)!==null&&n!==void 0&&n.length){var Me={id:u,frag:T,details:z,samples:W.samples};a.trigger(w.Events.FRAG_PARSING_METADATA,Me)}if(z&&U){var Ae={id:u,frag:T,details:z,samples:U.samples};a.trigger(w.Events.FRAG_PARSING_USERDATA,Ae)}}},o._bufferInitSegment=function(t,n,u,a){var d=this;if(this.state===L.State.PARSING){this.audioOnly=!!n.audio&&!n.video,this.altAudio&&!this.audioOnly&&delete n.audio;var v=n.audio,S=n.video,T=n.audiovideo;if(v){var I=t.audioCodec,k=navigator.userAgent.toLowerCase();this.audioCodecSwitch&&(I&&(I.indexOf("mp4a.40.5")!==-1?I="mp4a.40.2":I="mp4a.40.5"),v.metadata.channelCount!==1&&k.indexOf("firefox")===-1&&(I="mp4a.40.5")),k.indexOf("android")!==-1&&v.container!=="audio/mpeg"&&(I="mp4a.40.2",this.log("Android: force audio codec to "+I)),t.audioCodec&&t.audioCodec!==I&&this.log('Swapping manifest audio codec "'+t.audioCodec+'" for "'+I+'"'),v.levelCodec=I,v.id="main",this.log("Init audio buffer, container:"+v.container+", codecs[selected/level/parsed]=["+(I||"")+"/"+(t.audioCodec||"")+"/"+v.codec+"]")}S&&(S.levelCodec=t.videoCodec,S.id="main",this.log("Init video buffer, container:"+S.container+", codecs[level/parsed]=["+(t.videoCodec||"")+"/"+S.codec+"]")),T&&this.log("Init audiovideo buffer, container:"+T.container+", codecs[level/parsed]=["+(t.attrs.CODECS||"")+"/"+T.codec+"]"),this.hls.trigger(w.Events.BUFFER_CODECS,n),Object.keys(n).forEach(function(B){var U=n[B],W=U.initSegment;W!=null&&W.byteLength&&d.hls.trigger(w.Events.BUFFER_APPENDING,{type:B,data:W,frag:u,part:null,chunkMeta:a,parent:u.type})}),this.tick()}},o.getMainFwdBufferInfo=function(){return this.getFwdBufferInfo(this.mediaBuffer?this.mediaBuffer:this.media,_.PlaylistLevelType.MAIN)},o.backtrack=function(t){this.couldBacktrack=!0,this.backtrackFragment=t,this.resetTransmuxer(),this.flushBufferGap(t),this.fragmentTracker.removeFragment(t),this.fragPrevious=null,this.nextLoadPosition=t.start,this.state=L.State.IDLE},o.checkFragmentChanged=function(){var t=this.media,n=null;if(t&&t.readyState>1&&t.seeking===!1){var u=t.currentTime;if(O.BufferHelper.isBuffered(t,u)?n=this.getAppendedFrag(u):O.BufferHelper.isBuffered(t,u+.1)&&(n=this.getAppendedFrag(u+.1)),n){this.backtrackFragment=null;var a=this.fragPlaying,d=n.level;(!a||n.sn!==a.sn||a.level!==d||n.urlId!==a.urlId)&&(this.hls.trigger(w.Events.FRAG_CHANGED,{frag:n}),(!a||a.level!==d)&&this.hls.trigger(w.Events.LEVEL_SWITCHED,{level:d}),this.fragPlaying=n)}}},f(r,[{key:"nextLevel",get:function(){var t=this.nextBufferedFrag;return t?t.level:-1}},{key:"currentFrag",get:function(){var t=this.media;return t?this.fragPlaying||this.getAppendedFrag(t.currentTime):null}},{key:"currentProgramDateTime",get:function(){var t=this.media;if(t){var n=t.currentTime,u=this.currentFrag;if(u&&Object(C.isFiniteNumber)(n)&&Object(C.isFiniteNumber)(u.programDateTime)){var a=u.programDateTime+(n-u.start)*1e3;return new Date(a)}}return null}},{key:"currentLevel",get:function(){var t=this.currentFrag;return t?t.level:-1}},{key:"nextBufferedFrag",get:function(){var t=this.currentFrag;return t?this.followingBufferedFrag(t):null}},{key:"forceStartLoad",get:function(){return this._forceStartLoad}}]),r}(L.default)},"./src/controller/subtitle-stream-controller.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"SubtitleStreamController",function(){return e});var C=l("./src/events.ts"),L=l("./src/utils/buffer-helper.ts"),A=l("./src/controller/fragment-finders.ts"),w=l("./src/utils/discontinuities.ts"),O=l("./src/controller/level-helper.ts"),b=l("./src/controller/fragment-tracker.ts"),_=l("./src/controller/base-stream-controller.ts"),y=l("./src/types/loader.ts"),x=l("./src/types/level.ts");function D(h,g){for(var i=0;i<g.length;i++){var r=g[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(h,r.key,r)}}function E(h,g,i){return g&&D(h.prototype,g),i&&D(h,i),Object.defineProperty(h,"prototype",{writable:!1}),h}function m(h,g){h.prototype=Object.create(g.prototype),h.prototype.constructor=h,p(h,g)}function p(h,g){return p=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,o){return r.__proto__=o,r},p(h,g)}var f=500,e=function(h){m(g,h);function g(r,o){var c;return c=h.call(this,r,o,"[subtitle-stream-controller]")||this,c.levels=[],c.currentTrackId=-1,c.tracksBuffered=[],c.mainDetails=null,c._registerListeners(),c}var i=g.prototype;return i.onHandlerDestroying=function(){this._unregisterListeners(),this.mainDetails=null},i._registerListeners=function(){var o=this.hls;o.on(C.Events.MEDIA_ATTACHED,this.onMediaAttached,this),o.on(C.Events.MEDIA_DETACHING,this.onMediaDetaching,this),o.on(C.Events.MANIFEST_LOADING,this.onManifestLoading,this),o.on(C.Events.LEVEL_LOADED,this.onLevelLoaded,this),o.on(C.Events.ERROR,this.onError,this),o.on(C.Events.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),o.on(C.Events.SUBTITLE_TRACK_SWITCH,this.onSubtitleTrackSwitch,this),o.on(C.Events.SUBTITLE_TRACK_LOADED,this.onSubtitleTrackLoaded,this),o.on(C.Events.SUBTITLE_FRAG_PROCESSED,this.onSubtitleFragProcessed,this),o.on(C.Events.BUFFER_FLUSHING,this.onBufferFlushing,this)},i._unregisterListeners=function(){var o=this.hls;o.off(C.Events.MEDIA_ATTACHED,this.onMediaAttached,this),o.off(C.Events.MEDIA_DETACHING,this.onMediaDetaching,this),o.off(C.Events.MANIFEST_LOADING,this.onManifestLoading,this),o.off(C.Events.LEVEL_LOADED,this.onLevelLoaded,this),o.off(C.Events.ERROR,this.onError,this),o.off(C.Events.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),o.off(C.Events.SUBTITLE_TRACK_SWITCH,this.onSubtitleTrackSwitch,this),o.off(C.Events.SUBTITLE_TRACK_LOADED,this.onSubtitleTrackLoaded,this),o.off(C.Events.SUBTITLE_FRAG_PROCESSED,this.onSubtitleFragProcessed,this),o.off(C.Events.BUFFER_FLUSHING,this.onBufferFlushing,this)},i.startLoad=function(){this.stopLoad(),this.state=_.State.IDLE,this.setInterval(f),this.tick()},i.onManifestLoading=function(){this.mainDetails=null,this.fragmentTracker.removeAllFragments()},i.onLevelLoaded=function(o,c){this.mainDetails=c.details},i.onSubtitleFragProcessed=function(o,c){var t=c.frag,n=c.success;if(this.fragPrevious=t,this.state=_.State.IDLE,!!n){var u=this.tracksBuffered[this.currentTrackId];if(!!u){for(var a,d=t.start,v=0;v<u.length;v++)if(d>=u[v].start&&d<=u[v].end){a=u[v];break}var S=t.start+t.duration;a?a.end=S:(a={start:d,end:S},u.push(a)),this.fragmentTracker.fragBuffered(t)}}},i.onBufferFlushing=function(o,c){var t=c.startOffset,n=c.endOffset;if(t===0&&n!==Number.POSITIVE_INFINITY){var u=this.currentTrackId,a=this.levels;if(!a.length||!a[u]||!a[u].details)return;var d=a[u].details,v=d.targetduration,S=n-v;if(S<=0)return;c.endOffsetSubtitles=Math.max(0,S),this.tracksBuffered.forEach(function(T){for(var I=0;I<T.length;){if(T[I].end<=S){T.shift();continue}else if(T[I].start<S)T[I].start=S;else break;I++}}),this.fragmentTracker.removeFragmentsInRange(t,S,y.PlaylistLevelType.SUBTITLE)}},i.onError=function(o,c){var t,n=c.frag;!n||n.type!==y.PlaylistLevelType.SUBTITLE||((t=this.fragCurrent)!==null&&t!==void 0&&t.loader&&this.fragCurrent.loader.abort(),this.state=_.State.IDLE)},i.onSubtitleTracksUpdated=function(o,c){var t=this,n=c.subtitleTracks;this.tracksBuffered=[],this.levels=n.map(function(u){return new x.Level(u)}),this.fragmentTracker.removeAllFragments(),this.fragPrevious=null,this.levels.forEach(function(u){t.tracksBuffered[u.id]=[]}),this.mediaBuffer=null},i.onSubtitleTrackSwitch=function(o,c){if(this.currentTrackId=c.id,!this.levels.length||this.currentTrackId===-1){this.clearInterval();return}var t=this.levels[this.currentTrackId];t!=null&&t.details?this.mediaBuffer=this.mediaBufferTimeRanges:this.mediaBuffer=null,t&&this.setInterval(f)},i.onSubtitleTrackLoaded=function(o,c){var t,n=c.details,u=c.id,a=this.currentTrackId,d=this.levels;if(!!d.length){var v=d[a];if(!(u>=d.length||u!==a||!v)){if(this.mediaBuffer=this.mediaBufferTimeRanges,n.live||(t=v.details)!==null&&t!==void 0&&t.live){var S=this.mainDetails;if(n.deltaUpdateFailed||!S)return;var T=S.fragments[0];if(!v.details)n.hasProgramDateTime&&S.hasProgramDateTime?Object(w.alignMediaPlaylistByPDT)(n,S):T&&Object(O.addSliding)(n,T.start);else{var I=this.alignPlaylists(n,v.details);I===0&&T&&Object(O.addSliding)(n,T.start)}}if(v.details=n,this.levelLastLoaded=u,this.tick(),n.live&&!this.fragCurrent&&this.media&&this.state===_.State.IDLE){var k=Object(A.findFragmentByPTS)(null,n.fragments,this.media.currentTime,0);k||(this.warn("Subtitle playlist not aligned with playback"),v.details=void 0)}}}},i._handleFragmentLoadComplete=function(o){var c=o.frag,t=o.payload,n=c.decryptdata,u=this.hls;if(!this.fragContextChanged(c)&&t&&t.byteLength>0&&n&&n.key&&n.iv&&n.method==="AES-128"){var a=performance.now();this.decrypter.webCryptoDecrypt(new Uint8Array(t),n.key.buffer,n.iv.buffer).then(function(d){var v=performance.now();u.trigger(C.Events.FRAG_DECRYPTED,{frag:c,payload:d,stats:{tstart:a,tdecrypt:v}})})}},i.doTick=function(){if(!this.media){this.state=_.State.IDLE;return}if(this.state===_.State.IDLE){var o=this.currentTrackId,c=this.levels;if(!c.length||!c[o]||!c[o].details)return;var t=c[o].details,n=t.targetduration,u=this.config,a=this.media,d=L.BufferHelper.bufferedInfo(this.tracksBuffered[this.currentTrackId]||[],a.currentTime-n,u.maxBufferHole),v=d.end,S=d.len,T=this.getMaxBufferLength()+n;if(S>T)return;console.assert(t,"Subtitle track details are defined on idle subtitle stream controller tick");var I=t.fragments,k=I.length,B=t.edge,U,W=this.fragPrevious;if(v<B){var H=u.maxFragLookUpTolerance;U=Object(A.findFragmentByPTS)(W,I,Math.max(I[0].start,v),H),!U&&W&&W.start<I[0].start&&(U=I[0])}else U=I[k-1];if(U=this.mapToInitFragWhenRequired(U),!U||this.fragmentTracker.getState(U)!==b.FragmentState.NOT_LOADED)return;U.encrypted?this.loadKey(U,t):this.loadFragment(U,t,v)}},i.loadFragment=function(o,c,t){this.fragCurrent=o,o.sn==="initSegment"?this._loadInitSegment(o):h.prototype.loadFragment.call(this,o,c,t)},E(g,[{key:"mediaBufferTimeRanges",get:function(){return new s(this.tracksBuffered[this.currentTrackId]||[])}}]),g}(_.default),s=function(g){this.buffered=void 0;var i=function(o,c,t){if(c=c>>>0,c>t-1)throw new DOMException("Failed to execute '"+o+"' on 'TimeRanges': The index provided ("+c+") is greater than the maximum bound ("+t+")");return g[c][o]};this.buffered={get length(){return g.length},end:function(o){return i("end",o,g.length)},start:function(o){return i("start",o,g.length)}}}},"./src/controller/subtitle-track-controller.ts":function(j,R,l){"use strict";l.r(R);var C=l("./src/events.ts"),L=l("./src/utils/texttrack-utils.ts"),A=l("./src/controller/base-playlist-controller.ts"),w=l("./src/types/loader.ts");function O(E,m){for(var p=0;p<m.length;p++){var f=m[p];f.enumerable=f.enumerable||!1,f.configurable=!0,"value"in f&&(f.writable=!0),Object.defineProperty(E,f.key,f)}}function b(E,m,p){return m&&O(E.prototype,m),p&&O(E,p),Object.defineProperty(E,"prototype",{writable:!1}),E}function _(E,m){E.prototype=Object.create(m.prototype),E.prototype.constructor=E,y(E,m)}function y(E,m){return y=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(f,e){return f.__proto__=e,f},y(E,m)}var x=function(E){_(m,E);function m(f){var e;return e=E.call(this,f,"[subtitle-track-controller]")||this,e.media=null,e.tracks=[],e.groupId=null,e.tracksInGroup=[],e.trackId=-1,e.selectDefaultTrack=!0,e.queuedDefaultTrack=-1,e.trackChangeListener=function(){return e.onTextTracksChanged()},e.asyncPollTrackChange=function(){return e.pollTrackChange(0)},e.useTextTrackPolling=!1,e.subtitlePollingInterval=-1,e._subtitleDisplay=!0,e.registerListeners(),e}var p=m.prototype;return p.destroy=function(){this.unregisterListeners(),this.tracks.length=0,this.tracksInGroup.length=0,this.trackChangeListener=this.asyncPollTrackChange=null,E.prototype.destroy.call(this)},p.registerListeners=function(){var e=this.hls;e.on(C.Events.MEDIA_ATTACHED,this.onMediaAttached,this),e.on(C.Events.MEDIA_DETACHING,this.onMediaDetaching,this),e.on(C.Events.MANIFEST_LOADING,this.onManifestLoading,this),e.on(C.Events.MANIFEST_PARSED,this.onManifestParsed,this),e.on(C.Events.LEVEL_LOADING,this.onLevelLoading,this),e.on(C.Events.LEVEL_SWITCHING,this.onLevelSwitching,this),e.on(C.Events.SUBTITLE_TRACK_LOADED,this.onSubtitleTrackLoaded,this),e.on(C.Events.ERROR,this.onError,this)},p.unregisterListeners=function(){var e=this.hls;e.off(C.Events.MEDIA_ATTACHED,this.onMediaAttached,this),e.off(C.Events.MEDIA_DETACHING,this.onMediaDetaching,this),e.off(C.Events.MANIFEST_LOADING,this.onManifestLoading,this),e.off(C.Events.MANIFEST_PARSED,this.onManifestParsed,this),e.off(C.Events.LEVEL_LOADING,this.onLevelLoading,this),e.off(C.Events.LEVEL_SWITCHING,this.onLevelSwitching,this),e.off(C.Events.SUBTITLE_TRACK_LOADED,this.onSubtitleTrackLoaded,this),e.off(C.Events.ERROR,this.onError,this)},p.onMediaAttached=function(e,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))},p.pollTrackChange=function(e){self.clearInterval(this.subtitlePollingInterval),this.subtitlePollingInterval=self.setInterval(this.trackChangeListener,e)},p.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 e=D(this.media.textTracks);e.forEach(function(s){Object(L.clearCurrentCues)(s)}),this.subtitleTrack=-1,this.media=null}},p.onManifestLoading=function(){this.tracks=[],this.groupId=null,this.tracksInGroup=[],this.trackId=-1,this.selectDefaultTrack=!0},p.onManifestParsed=function(e,s){this.tracks=s.subtitleTracks},p.onSubtitleTrackLoaded=function(e,s){var h=s.id,g=s.details,i=this.trackId,r=this.tracksInGroup[i];if(!r){this.warn("Invalid subtitle track id "+h);return}var o=r.details;r.details=s.details,this.log("subtitle track "+h+" loaded ["+g.startSN+"-"+g.endSN+"]"),h===this.trackId&&(this.retryCount=0,this.playlistLoaded(h,s,o))},p.onLevelLoading=function(e,s){this.switchLevel(s.level)},p.onLevelSwitching=function(e,s){this.switchLevel(s.level)},p.switchLevel=function(e){var s=this.hls.levels[e];if(!!(s!=null&&s.textGroupIds)){var h=s.textGroupIds[s.urlId];if(this.groupId!==h){var g=this.tracksInGroup?this.tracksInGroup[this.trackId]:void 0,i=this.tracks.filter(function(c){return!h||c.groupId===h});this.tracksInGroup=i;var r=this.findTrackId(g==null?void 0:g.name)||this.findTrackId();this.groupId=h;var o={subtitleTracks:i};this.log("Updating subtitle tracks, "+i.length+' track(s) found in "'+h+'" group-id'),this.hls.trigger(C.Events.SUBTITLE_TRACKS_UPDATED,o),r!==-1&&this.setSubtitleTrack(r,g)}}},p.findTrackId=function(e){for(var s=this.tracksInGroup,h=0;h<s.length;h++){var g=s[h];if((!this.selectDefaultTrack||g.default)&&(!e||e===g.name))return g.id}return-1},p.onError=function(e,s){E.prototype.onError.call(this,e,s),!(s.fatal||!s.context)&&s.context.type===w.PlaylistContextType.SUBTITLE_TRACK&&s.context.id===this.trackId&&s.context.groupId===this.groupId&&this.retryLoadingOrFail(s)},p.loadPlaylist=function(e){var s=this.tracksInGroup[this.trackId];if(this.shouldLoadTrack(s)){var h=s.id,g=s.groupId,i=s.url;if(e)try{i=e.addDirectives(i)}catch(r){this.warn("Could not construct new URL with HLS Delivery Directives: "+r)}this.log("Loading subtitle playlist for id "+h),this.hls.trigger(C.Events.SUBTITLE_TRACK_LOADING,{url:i,id:h,groupId:g,deliveryDirectives:e||null})}},p.toggleTrackModes=function(e){var s=this,h=this.media,g=this.trackId;if(!!h){var i=D(h.textTracks),r=i.filter(function(t){return t.groupId===s.groupId});if(e===-1)[].slice.call(i).forEach(function(t){t.mode="disabled"});else{var o=r[g];o&&(o.mode="disabled")}var c=r[e];c&&(c.mode=this.subtitleDisplay?"showing":"hidden")}},p.setSubtitleTrack=function(e,s){var h,g=this.tracksInGroup;if(!this.media){this.queuedDefaultTrack=e;return}if(this.trackId!==e&&this.toggleTrackModes(e),!(this.trackId===e&&(e===-1||(h=g[e])!==null&&h!==void 0&&h.details)||e<-1||e>=g.length)){this.clearTimer();var i=g[e];if(this.log("Switching to subtitle track "+e),this.trackId=e,i){var r=i.id,o=i.groupId,c=o===void 0?"":o,t=i.name,n=i.type,u=i.url;this.hls.trigger(C.Events.SUBTITLE_TRACK_SWITCH,{id:r,groupId:c,name:t,type:n,url:u});var a=this.switchParams(i.url,s==null?void 0:s.details);this.loadPlaylist(a)}else this.hls.trigger(C.Events.SUBTITLE_TRACK_SWITCH,{id:e})}},p.onTextTracksChanged=function(){if(this.useTextTrackPolling||self.clearInterval(this.subtitlePollingInterval),!(!this.media||!this.hls.config.renderTextTracksNatively)){for(var e=-1,s=D(this.media.textTracks),h=0;h<s.length;h++)if(s[h].mode==="hidden")e=h;else if(s[h].mode==="showing"){e=h;break}this.subtitleTrack!==e&&(this.subtitleTrack=e)}},b(m,[{key:"subtitleDisplay",get:function(){return this._subtitleDisplay},set:function(e){this._subtitleDisplay=e,this.trackId>-1&&this.toggleTrackModes(this.trackId)}},{key:"subtitleTracks",get:function(){return this.tracksInGroup}},{key:"subtitleTrack",get:function(){return this.trackId},set:function(e){this.selectDefaultTrack=!1;var s=this.tracksInGroup?this.tracksInGroup[this.trackId]:void 0;this.setSubtitleTrack(e,s)}}]),m}(A.default);function D(E){for(var m=[],p=0;p<E.length;p++){var f=E[p];f.kind==="subtitles"&&f.label&&m.push(E[p])}return m}R.default=x},"./src/controller/timeline-controller.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"TimelineController",function(){return E});var C=l("./src/polyfills/number.ts"),L=l("./src/events.ts"),A=l("./src/utils/cea-608-parser.ts"),w=l("./src/utils/output-filter.ts"),O=l("./src/utils/webvtt-parser.ts"),b=l("./src/utils/texttrack-utils.ts"),_=l("./src/utils/imsc1-ttml-parser.ts"),y=l("./src/utils/mp4-tools.ts"),x=l("./src/types/loader.ts"),D=l("./src/utils/logger.ts"),E=function(){function e(h){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=f(),this.captionsProperties=void 0,this.hls=h,this.config=h.config,this.Cues=h.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 g=new w.default(this,"textTrack1"),i=new w.default(this,"textTrack2"),r=new w.default(this,"textTrack3"),o=new w.default(this,"textTrack4");this.cea608Parser1=new A.default(1,g,i),this.cea608Parser2=new A.default(3,r,o)}h.on(L.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),h.on(L.Events.MEDIA_DETACHING,this.onMediaDetaching,this),h.on(L.Events.MANIFEST_LOADING,this.onManifestLoading,this),h.on(L.Events.MANIFEST_LOADED,this.onManifestLoaded,this),h.on(L.Events.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),h.on(L.Events.FRAG_LOADING,this.onFragLoading,this),h.on(L.Events.FRAG_LOADED,this.onFragLoaded,this),h.on(L.Events.FRAG_PARSING_USERDATA,this.onFragParsingUserdata,this),h.on(L.Events.FRAG_DECRYPTED,this.onFragDecrypted,this),h.on(L.Events.INIT_PTS_FOUND,this.onInitPtsFound,this),h.on(L.Events.SUBTITLE_TRACKS_CLEARED,this.onSubtitleTracksCleared,this),h.on(L.Events.BUFFER_FLUSHING,this.onBufferFlushing,this)}var s=e.prototype;return s.destroy=function(){var g=this.hls;g.off(L.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),g.off(L.Events.MEDIA_DETACHING,this.onMediaDetaching,this),g.off(L.Events.MANIFEST_LOADING,this.onManifestLoading,this),g.off(L.Events.MANIFEST_LOADED,this.onManifestLoaded,this),g.off(L.Events.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),g.off(L.Events.FRAG_LOADING,this.onFragLoading,this),g.off(L.Events.FRAG_LOADED,this.onFragLoaded,this),g.off(L.Events.FRAG_PARSING_USERDATA,this.onFragParsingUserdata,this),g.off(L.Events.FRAG_DECRYPTED,this.onFragDecrypted,this),g.off(L.Events.INIT_PTS_FOUND,this.onInitPtsFound,this),g.off(L.Events.SUBTITLE_TRACKS_CLEARED,this.onSubtitleTracksCleared,this),g.off(L.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),this.hls=this.config=this.cea608Parser1=this.cea608Parser2=null},s.addCues=function(g,i,r,o,c){for(var t=!1,n=c.length;n--;){var u=c[n],a=p(u[0],u[1],i,r);if(a>=0&&(u[0]=Math.min(u[0],i),u[1]=Math.max(u[1],r),t=!0,a/(r-i)>.5))return}if(t||c.push([i,r]),this.config.renderTextTracksNatively){var d=this.captionsTracks[g];this.Cues.newCue(d,i,r,o)}else{var v=this.Cues.newCue(null,i,r,o);this.hls.trigger(L.Events.CUES_PARSED,{type:"captions",cues:v,track:g})}},s.onInitPtsFound=function(g,i){var r=this,o=i.frag,c=i.id,t=i.initPTS,n=i.timescale,u=this.unparsedVttFrags;c==="main"&&(this.initPTS[o.cc]=t,this.timescale[o.cc]=n),u.length&&(this.unparsedVttFrags=[],u.forEach(function(a){r.onFragLoaded(L.Events.FRAG_LOADED,a)}))},s.getExistingTrack=function(g){var i=this.media;if(i)for(var r=0;r<i.textTracks.length;r++){var o=i.textTracks[r];if(o[g])return o}return null},s.createCaptionsTrack=function(g){this.config.renderTextTracksNatively?this.createNativeTrack(g):this.createNonNativeTrack(g)},s.createNativeTrack=function(g){if(!this.captionsTracks[g]){var i=this.captionsProperties,r=this.captionsTracks,o=this.media,c=i[g],t=c.label,n=c.languageCode,u=this.getExistingTrack(g);if(u)r[g]=u,Object(b.clearCurrentCues)(r[g]),Object(b.sendAddTrackEvent)(r[g],o);else{var a=this.createTextTrack("captions",t,n);a&&(a[g]=!0,r[g]=a)}}},s.createNonNativeTrack=function(g){if(!this.nonNativeCaptionsTracks[g]){var i=this.captionsProperties[g];if(!!i){var r=i.label,o={_id:g,label:r,kind:"captions",default:i.media?!!i.media.default:!1,closedCaptions:i.media};this.nonNativeCaptionsTracks[g]=o,this.hls.trigger(L.Events.NON_NATIVE_TEXT_TRACKS_FOUND,{tracks:[o]})}}},s.createTextTrack=function(g,i,r){var o=this.media;if(!!o)return o.addTextTrack(g,i,r)},s.onMediaAttaching=function(g,i){this.media=i.media,this._cleanTracks()},s.onMediaDetaching=function(){var g=this.captionsTracks;Object.keys(g).forEach(function(i){Object(b.clearCurrentCues)(g[i]),delete g[i]}),this.nonNativeCaptionsTracks={}},s.onManifestLoading=function(){this.lastSn=-1,this.lastPartIndex=-1,this.prevCC=-1,this.vttCCs=f(),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())},s._cleanTracks=function(){var g=this.media;if(!!g){var i=g.textTracks;if(i)for(var r=0;r<i.length;r++)Object(b.clearCurrentCues)(i[r])}},s.onSubtitleTracksUpdated=function(g,i){var r=this;this.textTracks=[];var o=i.subtitleTracks||[],c=o.some(function(a){return a.textCodec===_.IMSC1_CODEC});if(this.config.enableWebVTT||c&&this.config.enableIMSC1){var t=this.tracks&&o&&this.tracks.length===o.length;if(this.tracks=o||[],this.config.renderTextTracksNatively){var n=this.media?this.media.textTracks:[];this.tracks.forEach(function(a,d){var v;if(d<n.length){for(var S=null,T=0;T<n.length;T++)if(m(n[T],a)){S=n[T];break}S&&(v=S)}if(v)Object(b.clearCurrentCues)(v);else{var I=r._captionsOrSubtitlesFromCharacteristics(a);v=r.createTextTrack(I,a.name,a.lang),v&&(v.mode="disabled")}v&&(v.groupId=a.groupId,r.textTracks.push(v))})}else if(!t&&this.tracks&&this.tracks.length){var u=this.tracks.map(function(a){return{label:a.name,kind:a.type.toLowerCase(),default:a.default,subtitleTrack:a}});this.hls.trigger(L.Events.NON_NATIVE_TEXT_TRACKS_FOUND,{tracks:u})}}},s._captionsOrSubtitlesFromCharacteristics=function(g){var i;if((i=g.attrs)!==null&&i!==void 0&&i.CHARACTERISTICS){var r=/transcribes-spoken-dialog/gi.test(g.attrs.CHARACTERISTICS),o=/describes-music-and-sound/gi.test(g.attrs.CHARACTERISTICS);if(r&&o)return"captions"}return"subtitles"},s.onManifestLoaded=function(g,i){var r=this;this.config.enableCEA708Captions&&i.captions&&i.captions.forEach(function(o){var c=/(?:CC|SERVICE)([1-4])/.exec(o.instreamId);if(!!c){var t="textTrack"+c[1],n=r.captionsProperties[t];!n||(n.label=o.name,o.lang&&(n.languageCode=o.lang),n.media=o)}})},s.onFragLoading=function(g,i){var r=this.cea608Parser1,o=this.cea608Parser2,c=this.lastSn,t=this.lastPartIndex;if(!(!this.enabled||!(r&&o))&&i.frag.type===x.PlaylistLevelType.MAIN){var n,u,a=i.frag.sn,d=(n=i==null||(u=i.part)===null||u===void 0?void 0:u.index)!=null?n:-1;a===c+1||a===c&&d===t+1||(r.reset(),o.reset()),this.lastSn=a,this.lastPartIndex=d}},s.onFragLoaded=function(g,i){var r=i.frag,o=i.payload,c=this.initPTS,t=this.unparsedVttFrags;if(r.type===x.PlaylistLevelType.SUBTITLE)if(o.byteLength){if(!Object(C.isFiniteNumber)(c[r.cc])){t.push(i),c.length&&this.hls.trigger(L.Events.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:r,error:new Error("Missing initial subtitle PTS")});return}var n=r.decryptdata,u="stats"in i;if(n==null||n.key==null||n.method!=="AES-128"||u){var a=this.tracks[r.level],d=this.vttCCs;d[r.cc]||(d[r.cc]={start:r.start,prevCC:this.prevCC,new:!0},this.prevCC=r.cc),a&&a.textCodec===_.IMSC1_CODEC?this._parseIMSC1(r,o):this._parseVTTs(r,o,d)}}else this.hls.trigger(L.Events.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:r,error:new Error("Empty subtitle payload")})},s._parseIMSC1=function(g,i){var r=this,o=this.hls;Object(_.parseIMSC1)(i,this.initPTS[g.cc],this.timescale[g.cc],function(c){r._appendCues(c,g.level),o.trigger(L.Events.SUBTITLE_FRAG_PROCESSED,{success:!0,frag:g})},function(c){D.logger.log("Failed to parse IMSC1: "+c),o.trigger(L.Events.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:g,error:c})})},s._parseVTTs=function(g,i,r){var o,c=this,t=this.hls,n=(o=g.initSegment)!==null&&o!==void 0&&o.data?Object(y.appendUint8Array)(g.initSegment.data,new Uint8Array(i)):i;Object(O.parseWebVTT)(n,this.initPTS[g.cc],this.timescale[g.cc],r,g.cc,g.start,function(u){c._appendCues(u,g.level),t.trigger(L.Events.SUBTITLE_FRAG_PROCESSED,{success:!0,frag:g})},function(u){c._fallbackToIMSC1(g,i),D.logger.log("Failed to parse VTT cue: "+u),t.trigger(L.Events.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:g,error:u})})},s._fallbackToIMSC1=function(g,i){var r=this,o=this.tracks[g.level];o.textCodec||Object(_.parseIMSC1)(i,this.initPTS[g.cc],this.timescale[g.cc],function(){o.textCodec=_.IMSC1_CODEC,r._parseIMSC1(g,i)},function(){o.textCodec="wvtt"})},s._appendCues=function(g,i){var r=this.hls;if(this.config.renderTextTracksNatively){var o=this.textTracks[i];if(!o||o.mode==="disabled")return;g.forEach(function(n){return Object(b.addCueToTrack)(o,n)})}else{var c=this.tracks[i];if(!c)return;var t=c.default?"default":"subtitles"+i;r.trigger(L.Events.CUES_PARSED,{type:"subtitles",cues:g,track:t})}},s.onFragDecrypted=function(g,i){var r=i.frag;if(r.type===x.PlaylistLevelType.SUBTITLE){if(!Object(C.isFiniteNumber)(this.initPTS[r.cc])){this.unparsedVttFrags.push(i);return}this.onFragLoaded(L.Events.FRAG_LOADED,i)}},s.onSubtitleTracksCleared=function(){this.tracks=[],this.captionsTracks={}},s.onFragParsingUserdata=function(g,i){var r=this.cea608Parser1,o=this.cea608Parser2;if(!(!this.enabled||!(r&&o)))for(var c=0;c<i.samples.length;c++){var t=i.samples[c].bytes;if(t){var n=this.extractCea608Data(t);r.addData(i.samples[c].pts,n[0]),o.addData(i.samples[c].pts,n[1])}}},s.onBufferFlushing=function(g,i){var r=i.startOffset,o=i.endOffset,c=i.endOffsetSubtitles,t=i.type,n=this.media;if(!(!n||n.currentTime<o)){if(!t||t==="video"){var u=this.captionsTracks;Object.keys(u).forEach(function(d){return Object(b.removeCuesInRange)(u[d],r,o)})}if(this.config.renderTextTracksNatively&&r===0&&c!==void 0){var a=this.textTracks;Object.keys(a).forEach(function(d){return Object(b.removeCuesInRange)(a[d],r,c)})}}},s.extractCea608Data=function(g){for(var i=[[],[]],r=g[0]&31,o=2,c=0;c<r;c++){var t=g[o++],n=127&g[o++],u=127&g[o++];if(!(n===0&&u===0)){var a=(4&t)!==0;if(a){var d=3&t;(d===0||d===1)&&(i[d].push(n),i[d].push(u))}}}return i},e}();function m(e,s){return e&&e.label===s.name&&!(e.textTrack1||e.textTrack2)}function p(e,s,h,g){return Math.min(s,g)-Math.max(e,h)}function f(){return{ccOffset:0,presentationOffset:0,0:{start:0,prevCC:-1,new:!0}}}},"./src/crypt/aes-crypto.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"default",function(){return C});var C=function(){function L(w,O){this.subtle=void 0,this.aesIV=void 0,this.subtle=w,this.aesIV=O}var A=L.prototype;return A.decrypt=function(O,b){return this.subtle.decrypt({name:"AES-CBC",iv:this.aesIV},b,O)},L}()},"./src/crypt/aes-decryptor.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"removePadding",function(){return L}),l.d(R,"default",function(){return A});var C=l("./src/utils/typed-array.ts");function L(w){var O=w.byteLength,b=O&&new DataView(w.buffer).getUint8(O-1);return b?Object(C.sliceUint8)(w,0,O-b):w}var A=function(){function w(){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 O=w.prototype;return O.uint8ArrayToUint32Array_=function(_){for(var y=new DataView(_),x=new Uint32Array(4),D=0;D<4;D++)x[D]=y.getUint32(D*4);return x},O.initTable=function(){var _=this.sBox,y=this.invSBox,x=this.subMix,D=x[0],E=x[1],m=x[2],p=x[3],f=this.invSubMix,e=f[0],s=f[1],h=f[2],g=f[3],i=new Uint32Array(256),r=0,o=0,c=0;for(c=0;c<256;c++)c<128?i[c]=c<<1:i[c]=c<<1^283;for(c=0;c<256;c++){var t=o^o<<1^o<<2^o<<3^o<<4;t=t>>>8^t&255^99,_[r]=t,y[t]=r;var n=i[r],u=i[n],a=i[u],d=i[t]*257^t*16843008;D[r]=d<<24|d>>>8,E[r]=d<<16|d>>>16,m[r]=d<<8|d>>>24,p[r]=d,d=a*16843009^u*65537^n*257^r*16843008,e[t]=d<<24|d>>>8,s[t]=d<<16|d>>>16,h[t]=d<<8|d>>>24,g[t]=d,r?(r=n^i[i[i[a^n]]],o^=i[i[o]]):r=o=1}},O.expandKey=function(_){for(var y=this.uint8ArrayToUint32Array_(_),x=!0,D=0;D<y.length&&x;)x=y[D]===this.key[D],D++;if(!x){this.key=y;var E=this.keySize=y.length;if(E!==4&&E!==6&&E!==8)throw new Error("Invalid aes key size="+E);var m=this.ksRows=(E+6+1)*4,p,f,e=this.keySchedule=new Uint32Array(m),s=this.invKeySchedule=new Uint32Array(m),h=this.sBox,g=this.rcon,i=this.invSubMix,r=i[0],o=i[1],c=i[2],t=i[3],n,u;for(p=0;p<m;p++){if(p<E){n=e[p]=y[p];continue}u=n,p%E===0?(u=u<<8|u>>>24,u=h[u>>>24]<<24|h[u>>>16&255]<<16|h[u>>>8&255]<<8|h[u&255],u^=g[p/E|0]<<24):E>6&&p%E===4&&(u=h[u>>>24]<<24|h[u>>>16&255]<<16|h[u>>>8&255]<<8|h[u&255]),e[p]=n=(e[p-E]^u)>>>0}for(f=0;f<m;f++)p=m-f,f&3?u=e[p]:u=e[p-4],f<4||p<=4?s[f]=u:s[f]=r[h[u>>>24]]^o[h[u>>>16&255]]^c[h[u>>>8&255]]^t[h[u&255]],s[f]=s[f]>>>0}},O.networkToHostOrderSwap=function(_){return _<<24|(_&65280)<<8|(_&16711680)>>8|_>>>24},O.decrypt=function(_,y,x){for(var D=this.keySize+6,E=this.invKeySchedule,m=this.invSBox,p=this.invSubMix,f=p[0],e=p[1],s=p[2],h=p[3],g=this.uint8ArrayToUint32Array_(x),i=g[0],r=g[1],o=g[2],c=g[3],t=new Int32Array(_),n=new Int32Array(t.length),u,a,d,v,S,T,I,k,B,U,W,H,z,Y,$=this.networkToHostOrderSwap;y<t.length;){for(B=$(t[y]),U=$(t[y+1]),W=$(t[y+2]),H=$(t[y+3]),S=B^E[0],T=H^E[1],I=W^E[2],k=U^E[3],z=4,Y=1;Y<D;Y++)u=f[S>>>24]^e[T>>16&255]^s[I>>8&255]^h[k&255]^E[z],a=f[T>>>24]^e[I>>16&255]^s[k>>8&255]^h[S&255]^E[z+1],d=f[I>>>24]^e[k>>16&255]^s[S>>8&255]^h[T&255]^E[z+2],v=f[k>>>24]^e[S>>16&255]^s[T>>8&255]^h[I&255]^E[z+3],S=u,T=a,I=d,k=v,z=z+4;u=m[S>>>24]<<24^m[T>>16&255]<<16^m[I>>8&255]<<8^m[k&255]^E[z],a=m[T>>>24]<<24^m[I>>16&255]<<16^m[k>>8&255]<<8^m[S&255]^E[z+1],d=m[I>>>24]<<24^m[k>>16&255]<<16^m[S>>8&255]<<8^m[T&255]^E[z+2],v=m[k>>>24]<<24^m[S>>16&255]<<16^m[T>>8&255]<<8^m[I&255]^E[z+3],n[y]=$(u^i),n[y+1]=$(v^r),n[y+2]=$(d^o),n[y+3]=$(a^c),i=B,r=U,o=W,c=H,y=y+4}return n.buffer},w}()},"./src/crypt/decrypter.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"default",function(){return y});var C=l("./src/crypt/aes-crypto.ts"),L=l("./src/crypt/fast-aes-key.ts"),A=l("./src/crypt/aes-decryptor.ts"),w=l("./src/utils/logger.ts"),O=l("./src/utils/mp4-tools.ts"),b=l("./src/utils/typed-array.ts"),_=16,y=function(){function x(E,m,p){var f=p===void 0?{}:p,e=f.removePKCS7Padding,s=e===void 0?!0:e;if(this.logEnabled=!0,this.observer=void 0,this.config=void 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.observer=E,this.config=m,this.removePKCS7Padding=s,s)try{var h=self.crypto;h&&(this.subtle=h.subtle||h.webkitSubtle)}catch{}this.subtle===null&&(this.config.enableSoftwareAES=!0)}var D=x.prototype;return D.destroy=function(){this.observer=null},D.isSync=function(){return this.config.enableSoftwareAES},D.flush=function(){var m=this.currentResult;if(!m){this.reset();return}var p=new Uint8Array(m);return this.reset(),this.removePKCS7Padding?Object(A.removePadding)(p):p},D.reset=function(){this.currentResult=null,this.currentIV=null,this.remainderData=null,this.softwareDecrypter&&(this.softwareDecrypter=null)},D.decrypt=function(m,p,f,e){if(this.config.enableSoftwareAES){this.softwareDecrypt(new Uint8Array(m),p,f);var s=this.flush();s&&e(s.buffer)}else this.webCryptoDecrypt(new Uint8Array(m),p,f).then(e)},D.softwareDecrypt=function(m,p,f){var e=this.currentIV,s=this.currentResult,h=this.remainderData;this.logOnce("JS AES decrypt"),h&&(m=Object(O.appendUint8Array)(h,m),this.remainderData=null);var g=this.getValidChunk(m);if(!g.length)return null;e&&(f=e);var i=this.softwareDecrypter;i||(i=this.softwareDecrypter=new A.default),i.expandKey(p);var r=s;return this.currentResult=i.decrypt(g.buffer,0,f),this.currentIV=Object(b.sliceUint8)(g,-16).buffer,r||null},D.webCryptoDecrypt=function(m,p,f){var e=this,s=this.subtle;return(this.key!==p||!this.fastAesKey)&&(this.key=p,this.fastAesKey=new L.default(s,p)),this.fastAesKey.expandKey().then(function(h){if(!s)return Promise.reject(new Error("web crypto not initialized"));var g=new C.default(s,f);return g.decrypt(m.buffer,h)}).catch(function(h){return e.onWebCryptoError(h,m,p,f)})},D.onWebCryptoError=function(m,p,f,e){return w.logger.warn("[decrypter.ts]: WebCrypto Error, disable WebCrypto API:",m),this.config.enableSoftwareAES=!0,this.logEnabled=!0,this.softwareDecrypt(p,f,e)},D.getValidChunk=function(m){var p=m,f=m.length-m.length%_;return f!==m.length&&(p=Object(b.sliceUint8)(m,0,f),this.remainderData=Object(b.sliceUint8)(m,f)),p},D.logOnce=function(m){!this.logEnabled||(w.logger.log("[decrypter.ts]: "+m),this.logEnabled=!1)},x}()},"./src/crypt/fast-aes-key.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"default",function(){return C});var C=function(){function L(w,O){this.subtle=void 0,this.key=void 0,this.subtle=w,this.key=O}var A=L.prototype;return A.expandKey=function(){return this.subtle.importKey("raw",this.key,{name:"AES-CBC"},!1,["encrypt","decrypt"])},L}()},"./src/demux/aacdemuxer.ts":function(j,R,l){"use strict";l.r(R);var C=l("./src/demux/base-audio-demuxer.ts"),L=l("./src/demux/adts.ts"),A=l("./src/utils/logger.ts"),w=l("./src/demux/id3.ts");function O(y,x){y.prototype=Object.create(x.prototype),y.prototype.constructor=y,b(y,x)}function b(y,x){return b=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(E,m){return E.__proto__=m,E},b(y,x)}var _=function(y){O(x,y);function x(E,m){var p;return p=y.call(this)||this,p.observer=void 0,p.config=void 0,p.observer=E,p.config=m,p}var D=x.prototype;return D.resetInitSegment=function(m,p,f,e){y.prototype.resetInitSegment.call(this,m,p,f,e),this._audioTrack={container:"audio/adts",type:"audio",id:2,pid:-1,sequenceNumber:0,segmentCodec:"aac",samples:[],manifestCodec:p,duration:e,inputTimeScale:9e4,dropped:0}},x.probe=function(m){if(!m)return!1;for(var p=w.getID3Data(m,0)||[],f=p.length,e=m.length;f<e;f++)if(L.probe(m,f))return A.logger.log("ADTS sync word found !"),!0;return!1},D.canParse=function(m,p){return L.canParse(m,p)},D.appendFrame=function(m,p,f){L.initTrackConfig(m,this.observer,p,f,m.manifestCodec);var e=L.appendFrame(m,p,f,this.basePTS,this.frameIndex);if(e&&e.missing===0)return e},x}(C.default);R.default=_},"./src/demux/adts.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"getAudioConfig",function(){return w}),l.d(R,"isHeaderPattern",function(){return O}),l.d(R,"getHeaderLength",function(){return b}),l.d(R,"getFullFrameLength",function(){return _}),l.d(R,"canGetFrameLength",function(){return y}),l.d(R,"isHeader",function(){return x}),l.d(R,"canParse",function(){return D}),l.d(R,"probe",function(){return E}),l.d(R,"initTrackConfig",function(){return m}),l.d(R,"getFrameDuration",function(){return p}),l.d(R,"parseFrameHeader",function(){return f}),l.d(R,"appendFrame",function(){return e});var C=l("./src/utils/logger.ts"),L=l("./src/errors.ts"),A=l("./src/events.ts");function w(s,h,g,i){var r,o,c,t,n=navigator.userAgent.toLowerCase(),u=i,a=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350];r=((h[g+2]&192)>>>6)+1;var d=(h[g+2]&60)>>>2;if(d>a.length-1){s.trigger(A.Events.ERROR,{type:L.ErrorTypes.MEDIA_ERROR,details:L.ErrorDetails.FRAG_PARSING_ERROR,fatal:!0,reason:"invalid ADTS sampling index:"+d});return}return c=(h[g+2]&1)<<2,c|=(h[g+3]&192)>>>6,C.logger.log("manifest codec:"+i+", ADTS type:"+r+", samplingIndex:"+d),/firefox/i.test(n)?d>=6?(r=5,t=new Array(4),o=d-3):(r=2,t=new Array(2),o=d):n.indexOf("android")!==-1?(r=2,t=new Array(2),o=d):(r=5,t=new Array(4),i&&(i.indexOf("mp4a.40.29")!==-1||i.indexOf("mp4a.40.5")!==-1)||!i&&d>=6?o=d-3:((i&&i.indexOf("mp4a.40.2")!==-1&&(d>=6&&c===1||/vivaldi/i.test(n))||!i&&c===1)&&(r=2,t=new Array(2)),o=d)),t[0]=r<<3,t[0]|=(d&14)>>1,t[1]|=(d&1)<<7,t[1]|=c<<3,r===5&&(t[1]|=(o&14)>>1,t[2]=(o&1)<<7,t[2]|=2<<2,t[3]=0),{config:t,samplerate:a[d],channelCount:c,codec:"mp4a.40."+r,manifestCodec:u}}function O(s,h){return s[h]===255&&(s[h+1]&246)===240}function b(s,h){return s[h+1]&1?7:9}function _(s,h){return(s[h+3]&3)<<11|s[h+4]<<3|(s[h+5]&224)>>>5}function y(s,h){return h+5<s.length}function x(s,h){return h+1<s.length&&O(s,h)}function D(s,h){return y(s,h)&&O(s,h)&&_(s,h)<=s.length-h}function E(s,h){if(x(s,h)){var g=b(s,h);if(h+g>=s.length)return!1;var i=_(s,h);if(i<=g)return!1;var r=h+i;return r===s.length||x(s,r)}return!1}function m(s,h,g,i,r){if(!s.samplerate){var o=w(h,g,i,r);if(!o)return;s.config=o.config,s.samplerate=o.samplerate,s.channelCount=o.channelCount,s.codec=o.codec,s.manifestCodec=o.manifestCodec,C.logger.log("parsed codec:"+s.codec+", rate:"+o.samplerate+", channels:"+o.channelCount)}}function p(s){return 1024*9e4/s}function f(s,h){var g=b(s,h);if(h+g<=s.length){var i=_(s,h)-g;if(i>0)return{headerLength:g,frameLength:i}}}function e(s,h,g,i,r){var o=p(s.samplerate),c=i+r*o,t=f(h,g),n;if(t){var u=t.frameLength,a=t.headerLength,d=a+u,v=Math.max(0,g+d-h.length);v?(n=new Uint8Array(d-a),n.set(h.subarray(g+a,h.length),0)):n=h.subarray(g+a,g+d);var S={unit:n,pts:c};return v||s.samples.push(S),{sample:S,length:d,missing:v}}var T=h.length-g;n=new Uint8Array(T),n.set(h.subarray(g,h.length),0);var I={unit:n,pts:c};return{sample:I,length:T,missing:-1}}},"./src/demux/base-audio-demuxer.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"initPTSFn",function(){return y});var C=l("./src/polyfills/number.ts"),L=l("./src/demux/id3.ts"),A=l("./src/types/demuxer.ts"),w=l("./src/demux/dummy-demuxed-track.ts"),O=l("./src/utils/mp4-tools.ts"),b=l("./src/utils/typed-array.ts"),_=function(){function x(){this._audioTrack=void 0,this._id3Track=void 0,this.frameIndex=0,this.cachedData=null,this.basePTS=null,this.initPTS=null}var D=x.prototype;return D.resetInitSegment=function(m,p,f,e){this._id3Track={type:"id3",id:3,pid:-1,inputTimeScale:9e4,sequenceNumber:0,samples:[],dropped:0}},D.resetTimeStamp=function(m){this.initPTS=m,this.resetContiguity()},D.resetContiguity=function(){this.basePTS=null,this.frameIndex=0},D.canParse=function(m,p){return!1},D.appendFrame=function(m,p,f){},D.demux=function(m,p){this.cachedData&&(m=Object(O.appendUint8Array)(this.cachedData,m),this.cachedData=null);var f=L.getID3Data(m,0),e=f?f.length:0,s,h,g=this._audioTrack,i=this._id3Track,r=f?L.getTimeStamp(f):void 0,o=m.length;for((this.basePTS===null||this.frameIndex===0&&Object(C.isFiniteNumber)(r))&&(this.basePTS=y(r,p,this.initPTS)),f&&f.length>0&&i.samples.push({pts:this.basePTS,dts:this.basePTS,data:f,type:A.MetadataSchema.audioId3}),h=this.basePTS;e<o;){if(this.canParse(m,e)){var c=this.appendFrame(g,m,e);c?(this.frameIndex++,h=c.sample.pts,e+=c.length,s=e):e=o}else L.canParse(m,e)?(f=L.getID3Data(m,e),i.samples.push({pts:h,dts:h,data:f,type:A.MetadataSchema.audioId3}),e+=f.length,s=e):e++;if(e===o&&s!==o){var t=Object(b.sliceUint8)(m,s);this.cachedData?this.cachedData=Object(O.appendUint8Array)(this.cachedData,t):this.cachedData=t}}return{audioTrack:g,videoTrack:Object(w.dummyTrack)(),id3Track:i,textTrack:Object(w.dummyTrack)()}},D.demuxSampleAes=function(m,p,f){return Promise.reject(new Error("["+this+"] This demuxer does not support Sample-AES decryption"))},D.flush=function(m){var p=this.cachedData;return p&&(this.cachedData=null,this.demux(p,0)),{audioTrack:this._audioTrack,videoTrack:Object(w.dummyTrack)(),id3Track:this._id3Track,textTrack:Object(w.dummyTrack)()}},D.destroy=function(){},x}(),y=function(D,E,m){return Object(C.isFiniteNumber)(D)?D*90:E*9e4+(m||0)};R.default=_},"./src/demux/chunk-cache.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"default",function(){return C});var C=function(){function A(){this.chunks=[],this.dataLength=0}var w=A.prototype;return w.push=function(b){this.chunks.push(b),this.dataLength+=b.length},w.flush=function(){var b=this.chunks,_=this.dataLength,y;if(b.length)b.length===1?y=b[0]:y=L(b,_);else return new Uint8Array(0);return this.reset(),y},w.reset=function(){this.chunks.length=0,this.dataLength=0},A}();function L(A,w){for(var O=new Uint8Array(w),b=0,_=0;_<A.length;_++){var y=A[_];O.set(y,b),b+=y.length}return O}},"./src/demux/dummy-demuxed-track.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"dummyTrack",function(){return C});function C(L,A){return L===void 0&&(L=""),A===void 0&&(A=9e4),{type:L,id:-1,pid:-1,inputTimeScale:A,sequenceNumber:-1,samples:[],dropped:0}}},"./src/demux/exp-golomb.ts":function(j,R,l){"use strict";l.r(R);var C=l("./src/utils/logger.ts"),L=function(){function A(O){this.data=void 0,this.bytesAvailable=void 0,this.word=void 0,this.bitsAvailable=void 0,this.data=O,this.bytesAvailable=O.byteLength,this.word=0,this.bitsAvailable=0}var w=A.prototype;return w.loadWord=function(){var b=this.data,_=this.bytesAvailable,y=b.byteLength-_,x=new Uint8Array(4),D=Math.min(4,_);if(D===0)throw new Error("no bytes available");x.set(b.subarray(y,y+D)),this.word=new DataView(x.buffer).getUint32(0),this.bitsAvailable=D*8,this.bytesAvailable-=D},w.skipBits=function(b){var _;this.bitsAvailable>b?(this.word<<=b,this.bitsAvailable-=b):(b-=this.bitsAvailable,_=b>>3,b-=_>>3,this.bytesAvailable-=_,this.loadWord(),this.word<<=b,this.bitsAvailable-=b)},w.readBits=function(b){var _=Math.min(this.bitsAvailable,b),y=this.word>>>32-_;return b>32&&C.logger.error("Cannot read more than 32 bits at a time"),this.bitsAvailable-=_,this.bitsAvailable>0?this.word<<=_:this.bytesAvailable>0&&this.loadWord(),_=b-_,_>0&&this.bitsAvailable?y<<_|this.readBits(_):y},w.skipLZ=function(){var b;for(b=0;b<this.bitsAvailable;++b)if((this.word&2147483648>>>b)!==0)return this.word<<=b,this.bitsAvailable-=b,b;return this.loadWord(),b+this.skipLZ()},w.skipUEG=function(){this.skipBits(1+this.skipLZ())},w.skipEG=function(){this.skipBits(1+this.skipLZ())},w.readUEG=function(){var b=this.skipLZ();return this.readBits(b+1)-1},w.readEG=function(){var b=this.readUEG();return 1&b?1+b>>>1:-1*(b>>>1)},w.readBoolean=function(){return this.readBits(1)===1},w.readUByte=function(){return this.readBits(8)},w.readUShort=function(){return this.readBits(16)},w.readUInt=function(){return this.readBits(32)},w.skipScalingList=function(b){for(var _=8,y=8,x,D=0;D<b;D++)y!==0&&(x=this.readEG(),y=(_+x+256)%256),_=y===0?_:y},w.readSPS=function(){var b=0,_=0,y=0,x=0,D,E,m,p=this.readUByte.bind(this),f=this.readBits.bind(this),e=this.readUEG.bind(this),s=this.readBoolean.bind(this),h=this.skipBits.bind(this),g=this.skipEG.bind(this),i=this.skipUEG.bind(this),r=this.skipScalingList.bind(this);p();var o=p();if(f(5),h(3),p(),i(),o===100||o===110||o===122||o===244||o===44||o===83||o===86||o===118||o===128){var c=e();if(c===3&&h(1),i(),i(),h(1),s())for(E=c!==3?8:12,m=0;m<E;m++)s()&&(m<6?r(16):r(64))}i();var t=e();if(t===0)e();else if(t===1)for(h(1),g(),g(),D=e(),m=0;m<D;m++)g();i(),h(1);var n=e(),u=e(),a=f(1);a===0&&h(1),h(1),s()&&(b=e(),_=e(),y=e(),x=e());var d=[1,1];if(s()&&s()){var v=p();switch(v){case 1:d=[1,1];break;case 2:d=[12,11];break;case 3:d=[10,11];break;case 4:d=[16,11];break;case 5:d=[40,33];break;case 6:d=[24,11];break;case 7:d=[20,11];break;case 8:d=[32,11];break;case 9:d=[80,33];break;case 10:d=[18,11];break;case 11:d=[15,11];break;case 12:d=[64,33];break;case 13:d=[160,99];break;case 14:d=[4,3];break;case 15:d=[3,2];break;case 16:d=[2,1];break;case 255:{d=[p()<<8|p(),p()<<8|p()];break}}}return{width:Math.ceil((n+1)*16-b*2-_*2),height:(2-a)*(u+1)*16-(a?2:4)*(y+x),pixelRatio:d}},w.readSliceType=function(){return this.readUByte(),this.readUEG(),this.readUEG()},A}();R.default=L},"./src/demux/id3.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"isHeader",function(){return C}),l.d(R,"isFooter",function(){return L}),l.d(R,"getID3Data",function(){return A}),l.d(R,"canParse",function(){return O}),l.d(R,"getTimeStamp",function(){return b}),l.d(R,"isTimeStampFrame",function(){return _}),l.d(R,"getID3Frames",function(){return x}),l.d(R,"decodeFrame",function(){return D}),l.d(R,"utf8ArrayToStr",function(){return e}),l.d(R,"testables",function(){return s});var C=function(r,o){return o+10<=r.length&&r[o]===73&&r[o+1]===68&&r[o+2]===51&&r[o+3]<255&&r[o+4]<255&&r[o+6]<128&&r[o+7]<128&&r[o+8]<128&&r[o+9]<128},L=function(r,o){return o+10<=r.length&&r[o]===51&&r[o+1]===68&&r[o+2]===73&&r[o+3]<255&&r[o+4]<255&&r[o+6]<128&&r[o+7]<128&&r[o+8]<128&&r[o+9]<128},A=function(r,o){for(var c=o,t=0;C(r,o);){t+=10;var n=w(r,o+6);t+=n,L(r,o+10)&&(t+=10),o+=t}if(t>0)return r.subarray(c,c+t)},w=function(r,o){var c=0;return c=(r[o]&127)<<21,c|=(r[o+1]&127)<<14,c|=(r[o+2]&127)<<7,c|=r[o+3]&127,c},O=function(r,o){return C(r,o)&&w(r,o+6)+10<=r.length-o},b=function(r){for(var o=x(r),c=0;c<o.length;c++){var t=o[c];if(_(t))return f(t)}},_=function(r){return r&&r.key==="PRIV"&&r.info==="com.apple.streaming.transportStreamTimestamp"},y=function(r){var o=String.fromCharCode(r[0],r[1],r[2],r[3]),c=w(r,4),t=10;return{type:o,size:c,data:r.subarray(t,t+c)}},x=function(r){for(var o=0,c=[];C(r,o);){var t=w(r,o+6);o+=10;for(var n=o+t;o+8<n;){var u=y(r.subarray(o)),a=D(u);a&&c.push(a),o+=u.size+10}L(r,o)&&(o+=10)}return c},D=function(r){return r.type==="PRIV"?E(r):r.type[0]==="W"?p(r):m(r)},E=function(r){if(!(r.size<2)){var o=e(r.data,!0),c=new Uint8Array(r.data.subarray(o.length+1));return{key:r.type,info:o,data:c.buffer}}},m=function(r){if(!(r.size<2)){if(r.type==="TXXX"){var o=1,c=e(r.data.subarray(o),!0);o+=c.length+1;var t=e(r.data.subarray(o));return{key:r.type,info:c,data:t}}var n=e(r.data.subarray(1));return{key:r.type,data:n}}},p=function(r){if(r.type==="WXXX"){if(r.size<2)return;var o=1,c=e(r.data.subarray(o),!0);o+=c.length+1;var t=e(r.data.subarray(o));return{key:r.type,info:c,data:t}}var n=e(r.data);return{key:r.type,data:n}},f=function(r){if(r.data.byteLength===8){var o=new Uint8Array(r.data),c=o[3]&1,t=(o[4]<<23)+(o[5]<<15)+(o[6]<<7)+o[7];return t/=45,c&&(t+=4772185884e-2),Math.round(t)}},e=function(r,o){o===void 0&&(o=!1);var c=g();if(c){var t=c.decode(r);if(o){var n=t.indexOf("\0");return n!==-1?t.substring(0,n):t}return t.replace(/\0/g,"")}for(var u=r.length,a,d,v,S="",T=0;T<u;){if(a=r[T++],a===0&&o)return S;if(a===0||a===3)continue;switch(a>>4){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:S+=String.fromCharCode(a);break;case 12:case 13:d=r[T++],S+=String.fromCharCode((a&31)<<6|d&63);break;case 14:d=r[T++],v=r[T++],S+=String.fromCharCode((a&15)<<12|(d&63)<<6|(v&63)<<0);break;default:}}return S},s={decodeTextFrame:m},h;function g(){return!h&&typeof self.TextDecoder!="undefined"&&(h=new self.TextDecoder("utf-8")),h}},"./src/demux/mp3demuxer.ts":function(j,R,l){"use strict";l.r(R);var C=l("./src/demux/base-audio-demuxer.ts"),L=l("./src/demux/id3.ts"),A=l("./src/utils/logger.ts"),w=l("./src/demux/mpegaudio.ts");function O(y,x){y.prototype=Object.create(x.prototype),y.prototype.constructor=y,b(y,x)}function b(y,x){return b=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(E,m){return E.__proto__=m,E},b(y,x)}var _=function(y){O(x,y);function x(){return y.apply(this,arguments)||this}var D=x.prototype;return D.resetInitSegment=function(m,p,f,e){y.prototype.resetInitSegment.call(this,m,p,f,e),this._audioTrack={container:"audio/mpeg",type:"audio",id:2,pid:-1,sequenceNumber:0,segmentCodec:"mp3",samples:[],manifestCodec:p,duration:e,inputTimeScale:9e4,dropped:0}},x.probe=function(m){if(!m)return!1;for(var p=L.getID3Data(m,0)||[],f=p.length,e=m.length;f<e;f++)if(w.probe(m,f))return A.logger.log("MPEG Audio sync word found !"),!0;return!1},D.canParse=function(m,p){return w.canParse(m,p)},D.appendFrame=function(m,p,f){if(this.basePTS!==null)return w.appendFrame(m,p,f,this.basePTS,this.frameIndex)},x}(C.default);R.default=_},"./src/demux/mp4demuxer.ts":function(j,R,l){"use strict";l.r(R);var C=l("./src/polyfills/number.ts"),L=l("./src/types/demuxer.ts"),A=l("./src/utils/mp4-tools.ts"),w=l("./src/demux/dummy-demuxed-track.ts"),O=/\/emsg[-/]ID3/i,b=function(){function _(x,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 y=_.prototype;return y.resetTimeStamp=function(){},y.resetInitSegment=function(D,E,m,p){var f=Object(A.parseInitSegment)(D),e=this.videoTrack=Object(w.dummyTrack)("video",1),s=this.audioTrack=Object(w.dummyTrack)("audio",1),h=this.txtTrack=Object(w.dummyTrack)("text",1);if(this.id3Track=Object(w.dummyTrack)("id3",1),this.timeOffset=0,f.video){var g=f.video,i=g.id,r=g.timescale,o=g.codec;e.id=i,e.timescale=h.timescale=r,e.codec=o}if(f.audio){var c=f.audio,t=c.id,n=c.timescale,u=c.codec;s.id=t,s.timescale=n,s.codec=u}h.id=A.RemuxerTrackIdConfig.text,e.sampleDuration=0,e.duration=s.duration=p},y.resetContiguity=function(){},_.probe=function(D){return D=D.length>16384?D.subarray(0,16384):D,Object(A.findBox)(D,["moof"]).length>0},y.demux=function(D,E){this.timeOffset=E;var m=D,p=this.videoTrack,f=this.txtTrack;if(this.config.progressive){this.remainderData&&(m=Object(A.appendUint8Array)(this.remainderData,D));var e=Object(A.segmentValidRange)(m);this.remainderData=e.remainder,p.samples=e.valid||new Uint8Array}else p.samples=m;var s=this.extractID3Track(p,E);return f.samples=Object(A.parseSamples)(E,p),{videoTrack:p,audioTrack:this.audioTrack,id3Track:s,textTrack:this.txtTrack}},y.flush=function(){var D=this.timeOffset,E=this.videoTrack,m=this.txtTrack;E.samples=this.remainderData||new Uint8Array,this.remainderData=null;var p=this.extractID3Track(E,this.timeOffset);return m.samples=Object(A.parseSamples)(D,E),{videoTrack:E,audioTrack:Object(w.dummyTrack)(),id3Track:p,textTrack:Object(w.dummyTrack)()}},y.extractID3Track=function(D,E){var m=this.id3Track;if(D.samples.length){var p=Object(A.findBox)(D.samples,["emsg"]);p&&p.forEach(function(f){var e=Object(A.parseEmsg)(f);if(O.test(e.schemeIdUri)){var s=Object(C.isFiniteNumber)(e.presentationTime)?e.presentationTime/e.timeScale:E+e.presentationTimeDelta/e.timeScale,h=e.payload;m.samples.push({data:h,len:h.byteLength,dts:s,pts:s,type:L.MetadataSchema.emsg})}})}return m},y.demuxSampleAes=function(D,E,m){return Promise.reject(new Error("The MP4 demuxer does not support SAMPLE-AES decryption"))},y.destroy=function(){},_}();R.default=b},"./src/demux/mpegaudio.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"appendFrame",function(){return b}),l.d(R,"parseHeader",function(){return _}),l.d(R,"isHeaderPattern",function(){return y}),l.d(R,"isHeader",function(){return x}),l.d(R,"canParse",function(){return D}),l.d(R,"probe",function(){return E});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],A=[44100,48e3,32e3,22050,24e3,16e3,11025,12e3,8e3],w=[[0,72,144,12],[0,0,0,0],[0,72,144,12],[0,144,144,12]],O=[0,1,1,4];function b(m,p,f,e,s){if(!(f+24>p.length)){var h=_(p,f);if(h&&f+h.frameLength<=p.length){var g=h.samplesPerFrame*9e4/h.sampleRate,i=e+s*g,r={unit:p.subarray(f,f+h.frameLength),pts:i,dts:i};return m.config=[],m.channelCount=h.channelCount,m.samplerate=h.sampleRate,m.samples.push(r),{sample:r,length:h.frameLength,missing:0}}}}function _(m,p){var f=m[p+1]>>3&3,e=m[p+1]>>1&3,s=m[p+2]>>4&15,h=m[p+2]>>2&3;if(f!==1&&s!==0&&s!==15&&h!==3){var g=m[p+2]>>1&1,i=m[p+3]>>6,r=f===3?3-e:e===3?3:4,o=L[r*14+s-1]*1e3,c=f===3?0:f===2?1:2,t=A[c*3+h],n=i===3?1:2,u=w[f][e],a=O[e],d=u*8*a,v=Math.floor(u*o/t+g)*a;if(C===null){var S=navigator.userAgent||"",T=S.match(/Chrome\/(\d+)/i);C=T?parseInt(T[1]):0}var I=!!C&&C<=87;return I&&e===2&&o>=224e3&&i===0&&(m[p+3]=m[p+3]|128),{sampleRate:t,channelCount:n,frameLength:v,samplesPerFrame:d}}}function y(m,p){return m[p]===255&&(m[p+1]&224)===224&&(m[p+1]&6)!==0}function x(m,p){return p+1<m.length&&y(m,p)}function D(m,p){var f=4;return y(m,p)&&f<=m.length-p}function E(m,p){if(p+1<m.length&&y(m,p)){var f=4,e=_(m,p),s=f;e!=null&&e.frameLength&&(s=e.frameLength);var h=p+s;return h===m.length||x(m,h)}return!1}},"./src/demux/sample-aes.ts":function(j,R,l){"use strict";l.r(R);var C=l("./src/crypt/decrypter.ts"),L=l("./src/demux/tsdemuxer.ts"),A=function(){function w(b,_,y){this.keyData=void 0,this.decrypter=void 0,this.keyData=y,this.decrypter=new C.default(b,_,{removePKCS7Padding:!1})}var O=w.prototype;return O.decryptBuffer=function(_,y){this.decrypter.decrypt(_,this.keyData.key.buffer,this.keyData.iv.buffer,y)},O.decryptAacSample=function(_,y,x,D){var E=_[y].unit;if(!(E.length<=16)){var m=E.subarray(16,E.length-E.length%16),p=m.buffer.slice(m.byteOffset,m.byteOffset+m.length),f=this;this.decryptBuffer(p,function(e){var s=new Uint8Array(e);E.set(s,16),D||f.decryptAacSamples(_,y+1,x)})}},O.decryptAacSamples=function(_,y,x){for(;;y++){if(y>=_.length){x();return}if(!(_[y].unit.length<32)){var D=this.decrypter.isSync();if(this.decryptAacSample(_,y,x,D),!D)return}}},O.getAvcEncryptedData=function(_){for(var y=Math.floor((_.length-48)/160)*16+16,x=new Int8Array(y),D=0,E=32;E<_.length-16;E+=160,D+=16)x.set(_.subarray(E,E+16),D);return x},O.getAvcDecryptedUnit=function(_,y){for(var x=new Uint8Array(y),D=0,E=32;E<_.length-16;E+=160,D+=16)_.set(x.subarray(D,D+16),E);return _},O.decryptAvcSample=function(_,y,x,D,E,m){var p=Object(L.discardEPB)(E.data),f=this.getAvcEncryptedData(p),e=this;this.decryptBuffer(f.buffer,function(s){E.data=e.getAvcDecryptedUnit(p,s),m||e.decryptAvcSamples(_,y,x+1,D)})},O.decryptAvcSamples=function(_,y,x,D){if(_ instanceof Uint8Array)throw new Error("Cannot decrypt samples of type Uint8Array");for(;;y++,x=0){if(y>=_.length){D();return}for(var E=_[y].units;!(x>=E.length);x++){var m=E[x];if(!(m.data.length<=48||m.type!==1&&m.type!==5)){var p=this.decrypter.isSync();if(this.decryptAvcSample(_,y,x,D,m,p),!p)return}}}},w}();R.default=A},"./src/demux/transmuxer-interface.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"default",function(){return E});var C=l("./node_modules/webworkify-webpack/index.js"),L=l.n(C),A=l("./src/events.ts"),w=l("./src/demux/transmuxer.ts"),O=l("./src/utils/logger.ts"),b=l("./src/errors.ts"),_=l("./src/utils/mediasource-helper.ts"),y=l("./node_modules/eventemitter3/index.js"),x=l.n(y),D=Object(_.getMediaSource)()||{isTypeSupported:function(){return!1}},E=function(){function m(f,e,s,h){var g=this;this.hls=void 0,this.id=void 0,this.observer=void 0,this.frag=null,this.part=null,this.worker=void 0,this.onwmsg=void 0,this.transmuxer=null,this.onTransmuxComplete=void 0,this.onFlush=void 0,this.hls=f,this.id=e,this.onTransmuxComplete=s,this.onFlush=h;var i=f.config,r=function(u,a){a=a||{},a.frag=g.frag,a.id=g.id,f.trigger(u,a)};this.observer=new y.EventEmitter,this.observer.on(A.Events.FRAG_DECRYPTED,r),this.observer.on(A.Events.ERROR,r);var o={mp4:D.isTypeSupported("video/mp4"),mpeg:D.isTypeSupported("audio/mpeg"),mp3:D.isTypeSupported('audio/mp4; codecs="mp3"')},c=navigator.vendor;if(i.enableWorker&&typeof Worker!="undefined"){O.logger.log("demuxing in webworker");var t;try{t=this.worker=C("./src/demux/transmuxer-worker.ts"),this.onwmsg=this.onWorkerMessage.bind(this),t.addEventListener("message",this.onwmsg),t.onerror=function(n){f.trigger(A.Events.ERROR,{type:b.ErrorTypes.OTHER_ERROR,details:b.ErrorDetails.INTERNAL_EXCEPTION,fatal:!0,event:"demuxerWorker",error:new Error(n.message+" ("+n.filename+":"+n.lineno+")")})},t.postMessage({cmd:"init",typeSupported:o,vendor:c,id:e,config:JSON.stringify(i)})}catch(n){O.logger.warn("Error in worker:",n),O.logger.error("Error while initializing DemuxerWorker, fallback to inline"),t&&self.URL.revokeObjectURL(t.objectURL),this.transmuxer=new w.default(this.observer,o,i,c,e),this.worker=null}}else this.transmuxer=new w.default(this.observer,o,i,c,e)}var p=m.prototype;return p.destroy=function(){var e=this.worker;if(e)e.removeEventListener("message",this.onwmsg),e.terminate(),this.worker=null,this.onwmsg=void 0;else{var s=this.transmuxer;s&&(s.destroy(),this.transmuxer=null)}var h=this.observer;h&&h.removeAllListeners(),this.frag=null,this.observer=null,this.hls=null},p.push=function(e,s,h,g,i,r,o,c,t,n){var u,a,d=this;t.transmuxing.start=self.performance.now();var v=this.transmuxer,S=this.worker,T=r?r.start:i.start,I=i.decryptdata,k=this.frag,B=!(k&&i.cc===k.cc),U=!(k&&t.level===k.level),W=k?t.sn-k.sn:-1,H=this.part?t.part-this.part.index:-1,z=W===0&&t.id>1&&t.id===(k==null?void 0:k.stats.chunkCount),Y=!U&&(W===1||W===0&&(H===1||z&&H<=0)),$=self.performance.now();(U||W||i.stats.parsing.start===0)&&(i.stats.parsing.start=$),r&&(H||!Y)&&(r.stats.parsing.start=$);var ee=!(k&&((u=i.initSegment)===null||u===void 0?void 0:u.url)===((a=k.initSegment)===null||a===void 0?void 0:a.url)),q=new w.TransmuxState(B,Y,c,U,T,ee);if(!Y||B||ee){O.logger.log("[transmuxer-interface, "+i.type+"]: Starting new transmux session for sn: "+t.sn+" p: "+t.part+" level: "+t.level+" id: "+t.id+`
15
- discontinuity: `+B+`
16
- trackSwitch: `+U+`
17
- contiguous: `+Y+`
18
- accurateTimeOffset: `+c+`
19
- timeOffset: `+T+`
20
- initSegmentChange: `+ee);var re=new w.TransmuxConfig(h,g,s,o,n);this.configureTransmuxer(re)}if(this.frag=i,this.part=r,S)S.postMessage({cmd:"demux",data:e,decryptdata:I,chunkMeta:t,state:q},e instanceof ArrayBuffer?[e]:[]);else if(v){var ae=v.push(e,I,t,q);Object(w.isPromise)(ae)?ae.then(function(ne){d.handleTransmuxComplete(ne)}):this.handleTransmuxComplete(ae)}},p.flush=function(e){var s=this;e.transmuxing.start=self.performance.now();var h=this.transmuxer,g=this.worker;if(g)g.postMessage({cmd:"flush",chunkMeta:e});else if(h){var i=h.flush(e);Object(w.isPromise)(i)?i.then(function(r){s.handleFlushResult(r,e)}):this.handleFlushResult(i,e)}},p.handleFlushResult=function(e,s){var h=this;e.forEach(function(g){h.handleTransmuxComplete(g)}),this.onFlush(s)},p.onWorkerMessage=function(e){var s=e.data,h=this.hls;switch(s.event){case"init":{self.URL.revokeObjectURL(this.worker.objectURL);break}case"transmuxComplete":{this.handleTransmuxComplete(s.data);break}case"flush":{this.onFlush(s.data);break}case"workerLog":O.logger[s.data.logType]&&O.logger[s.data.logType](s.data.message);break;default:{s.data=s.data||{},s.data.frag=this.frag,s.data.id=this.id,h.trigger(s.event,s.data);break}}},p.configureTransmuxer=function(e){var s=this.worker,h=this.transmuxer;s?s.postMessage({cmd:"configure",config:e}):h&&h.configure(e)},p.handleTransmuxComplete=function(e){e.chunkMeta.transmuxing.end=self.performance.now(),this.onTransmuxComplete(e)},m}()},"./src/demux/transmuxer-worker.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"default",function(){return b});var C=l("./src/demux/transmuxer.ts"),L=l("./src/events.ts"),A=l("./src/utils/logger.ts"),w=l("./node_modules/eventemitter3/index.js"),O=l.n(w);function b(E){var m=new w.EventEmitter,p=function(s,h){E.postMessage({event:s,data:h})};m.on(L.Events.FRAG_DECRYPTED,p),m.on(L.Events.ERROR,p);var f=function(){var s=function(i){var r=function(c){p("workerLog",{logType:i,message:c})};A.logger[i]=r};for(var h in A.logger)s(h)};E.addEventListener("message",function(e){var s=e.data;switch(s.cmd){case"init":{var h=JSON.parse(s.config);E.transmuxer=new C.default(m,s.typeSupported,h,s.vendor,s.id),Object(A.enableLogs)(h.debug),f(),p("init",null);break}case"configure":{E.transmuxer.configure(s.config);break}case"demux":{var g=E.transmuxer.push(s.data,s.decryptdata,s.chunkMeta,s.state);Object(C.isPromise)(g)?g.then(function(o){_(E,o)}):_(E,g);break}case"flush":{var i=s.chunkMeta,r=E.transmuxer.flush(i);Object(C.isPromise)(r)?r.then(function(o){x(E,o,i)}):x(E,r,i);break}default:break}})}function _(E,m){if(D(m.remuxResult))return!1;var p=[],f=m.remuxResult,e=f.audio,s=f.video;return e&&y(p,e),s&&y(p,s),E.postMessage({event:"transmuxComplete",data:m},p),!0}function y(E,m){m.data1&&E.push(m.data1.buffer),m.data2&&E.push(m.data2.buffer)}function x(E,m,p){var f=m.reduce(function(e,s){return _(E,s)||e},!1);f||E.postMessage({event:"transmuxComplete",data:m[0]}),E.postMessage({event:"flush",data:p})}function D(E){return!E.audio&&!E.video&&!E.text&&!E.id3&&!E.initSegment}},"./src/demux/transmuxer.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"default",function(){return p}),l.d(R,"isPromise",function(){return s}),l.d(R,"TransmuxConfig",function(){return h}),l.d(R,"TransmuxState",function(){return g});var C=l("./src/events.ts"),L=l("./src/errors.ts"),A=l("./src/crypt/decrypter.ts"),w=l("./src/demux/aacdemuxer.ts"),O=l("./src/demux/mp4demuxer.ts"),b=l("./src/demux/tsdemuxer.ts"),_=l("./src/demux/mp3demuxer.ts"),y=l("./src/remux/mp4-remuxer.ts"),x=l("./src/remux/passthrough-remuxer.ts"),D=l("./src/utils/logger.ts"),E;try{E=self.performance.now.bind(self.performance)}catch{D.logger.debug("Unable to use Performance API on this environment"),E=self.Date.now}var m=[{demux:b.default,remux:y.default},{demux:O.default,remux:x.default},{demux:w.default,remux:y.default},{demux:_.default,remux:y.default}],p=function(){function i(o,c,t,n,u){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=o,this.typeSupported=c,this.config=t,this.vendor=n,this.id=u}var r=i.prototype;return r.configure=function(c){this.transmuxConfig=c,this.decrypter&&this.decrypter.reset()},r.push=function(c,t,n,u){var a=this,d=n.transmuxing;d.executeStart=E();var v=new Uint8Array(c),S=this.config,T=this.currentTransmuxState,I=this.transmuxConfig;u&&(this.currentTransmuxState=u);var k=u||T,B=k.contiguous,U=k.discontinuity,W=k.trackSwitch,H=k.accurateTimeOffset,z=k.timeOffset,Y=k.initSegmentChange,$=I.audioCodec,ee=I.videoCodec,q=I.defaultInitPts,re=I.duration,ae=I.initSegmentData;(U||W||Y)&&this.resetInitSegment(ae,$,ee,re),(U||Y)&&this.resetInitialTimestamp(q),B||this.resetContiguity();var ne=f(v,t);if(ne&&ne.method==="AES-128"){var te=this.getDecrypter();if(S.enableSoftwareAES){var he=te.softwareDecrypt(v,ne.key.buffer,ne.iv.buffer);if(!he)return d.executeEnd=E(),e(n);v=new Uint8Array(he)}else return this.decryptionPromise=te.webCryptoDecrypt(v,ne.key.buffer,ne.iv.buffer).then(function(Te){var pe=a.push(Te,null,n);return a.decryptionPromise=null,pe}),this.decryptionPromise}this.needsProbing(v,U,W)&&this.configureTransmuxer(v,I);var ve=this.transmux(v,ne,z,H,n),ie=this.currentTransmuxState;return ie.contiguous=!0,ie.discontinuity=!1,ie.trackSwitch=!1,d.executeEnd=E(),ve},r.flush=function(c){var t=this,n=c.transmuxing;n.executeStart=E();var u=this.decrypter,a=this.currentTransmuxState,d=this.decryptionPromise;if(d)return d.then(function(){return t.flush(c)});var v=[],S=a.timeOffset;if(u){var T=u.flush();T&&v.push(this.push(T,null,c))}var I=this.demuxer,k=this.remuxer;if(!I||!k)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"}),n.executeEnd=E(),[e(c)];var B=I.flush(S);return s(B)?B.then(function(U){return t.flushRemux(v,U,c),v}):(this.flushRemux(v,B,c),v)},r.flushRemux=function(c,t,n){var u=t.audioTrack,a=t.videoTrack,d=t.id3Track,v=t.textTrack,S=this.currentTransmuxState,T=S.accurateTimeOffset,I=S.timeOffset;D.logger.log("[transmuxer.ts]: Flushed fragment "+n.sn+(n.part>-1?" p: "+n.part:"")+" of level "+n.level);var k=this.remuxer.remux(u,a,d,v,I,T,!0,this.id);c.push({remuxResult:k,chunkMeta:n}),n.transmuxing.executeEnd=E()},r.resetInitialTimestamp=function(c){var t=this.demuxer,n=this.remuxer;!t||!n||(t.resetTimeStamp(c),n.resetTimeStamp(c))},r.resetContiguity=function(){var c=this.demuxer,t=this.remuxer;!c||!t||(c.resetContiguity(),t.resetNextTimestamp())},r.resetInitSegment=function(c,t,n,u){var a=this.demuxer,d=this.remuxer;!a||!d||(a.resetInitSegment(c,t,n,u),d.resetInitSegment(c,t,n))},r.destroy=function(){this.demuxer&&(this.demuxer.destroy(),this.demuxer=void 0),this.remuxer&&(this.remuxer.destroy(),this.remuxer=void 0)},r.transmux=function(c,t,n,u,a){var d;return t&&t.method==="SAMPLE-AES"?d=this.transmuxSampleAes(c,t,n,u,a):d=this.transmuxUnencrypted(c,n,u,a),d},r.transmuxUnencrypted=function(c,t,n,u){var a=this.demuxer.demux(c,t,!1,!this.config.progressive),d=a.audioTrack,v=a.videoTrack,S=a.id3Track,T=a.textTrack,I=this.remuxer.remux(d,v,S,T,t,n,!1,this.id);return{remuxResult:I,chunkMeta:u}},r.transmuxSampleAes=function(c,t,n,u,a){var d=this;return this.demuxer.demuxSampleAes(c,t,n).then(function(v){var S=d.remuxer.remux(v.audioTrack,v.videoTrack,v.id3Track,v.textTrack,n,u,!1,d.id);return{remuxResult:S,chunkMeta:a}})},r.configureTransmuxer=function(c,t){for(var n=this.config,u=this.observer,a=this.typeSupported,d=this.vendor,v=t.audioCodec,S=t.defaultInitPts,T=t.duration,I=t.initSegmentData,k=t.videoCodec,B,U=0,W=m.length;U<W;U++)if(m[U].demux.probe(c)){B=m[U];break}B||(D.logger.warn("Failed to find demuxer by probing frag, treating as mp4 passthrough"),B={demux:O.default,remux:x.default});var H=this.demuxer,z=this.remuxer,Y=B.remux,$=B.demux;(!z||!(z instanceof Y))&&(this.remuxer=new Y(u,n,a,d)),(!H||!(H instanceof $))&&(this.demuxer=new $(u,n,a),this.probe=$.probe),this.resetInitSegment(I,v,k,T),this.resetInitialTimestamp(S)},r.needsProbing=function(c,t,n){return!this.demuxer||!this.remuxer||t||n},r.getDecrypter=function(){var c=this.decrypter;return c||(c=this.decrypter=new A.default(this.observer,this.config)),c},i}();function f(i,r){var o=null;return i.byteLength>0&&r!=null&&r.key!=null&&r.iv!==null&&r.method!=null&&(o=r),o}var e=function(r){return{remuxResult:{},chunkMeta:r}};function s(i){return"then"in i&&i.then instanceof Function}var h=function(r,o,c,t,n){this.audioCodec=void 0,this.videoCodec=void 0,this.initSegmentData=void 0,this.duration=void 0,this.defaultInitPts=void 0,this.audioCodec=r,this.videoCodec=o,this.initSegmentData=c,this.duration=t,this.defaultInitPts=n},g=function(r,o,c,t,n,u){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=r,this.contiguous=o,this.accurateTimeOffset=c,this.trackSwitch=t,this.timeOffset=n,this.initSegmentChange=u}},"./src/demux/tsdemuxer.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"discardEPB",function(){return h});var C=l("./src/demux/adts.ts"),L=l("./src/demux/mpegaudio.ts"),A=l("./src/demux/exp-golomb.ts"),w=l("./src/demux/sample-aes.ts"),O=l("./src/events.ts"),b=l("./src/utils/mp4-tools.ts"),_=l("./src/utils/logger.ts"),y=l("./src/errors.ts"),x=l("./src/types/demuxer.ts");function D(){return D=Object.assign?Object.assign.bind():function(g){for(var i=1;i<arguments.length;i++){var r=arguments[i];for(var o in r)Object.prototype.hasOwnProperty.call(r,o)&&(g[o]=r[o])}return g},D.apply(this,arguments)}var E=function(){function g(r,o,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=r,this.config=o,this.typeSupported=c}g.probe=function(o){return o[0]===71&&o[188]===71},g.createTrack=function(o,c){return{container:o==="video"||o==="audio"?"video/mp2t":void 0,type:o,id:b.RemuxerTrackIdConfig[o],pid:-1,inputTimeScale:9e4,sequenceNumber:0,samples:[],dropped:0,duration:o==="audio"?c:void 0}};var i=g.prototype;return i.resetInitSegment=function(o,c,t,n){this.pmtParsed=!1,this._pmtId=-1,this._avcTrack=g.createTrack("video"),this._audioTrack=g.createTrack("audio",n),this._id3Track=g.createTrack("id3"),this._txtTrack=g.createTrack("text"),this._audioTrack.segmentCodec="aac",this.aacOverFlow=null,this.avcSample=null,this.remainderData=null,this.audioCodec=c,this.videoCodec=t,this._duration=n},i.resetTimeStamp=function(){},i.resetContiguity=function(){var o=this._audioTrack,c=this._avcTrack,t=this._id3Track;o&&(o.pesData=null),c&&(c.pesData=null),t&&(t.pesData=null),this.aacOverFlow=null},i.demux=function(o,c,t,n){t===void 0&&(t=!1),n===void 0&&(n=!1),t||(this.sampleAes=null);var u,a=this._avcTrack,d=this._audioTrack,v=this._id3Track,S=this._txtTrack,T=a.pid,I=a.pesData,k=d.pid,B=v.pid,U=d.pesData,W=v.pesData,H=null,z=this.pmtParsed,Y=this._pmtId,$=o.length;if(this.remainderData&&(o=Object(b.appendUint8Array)(this.remainderData,o),$=o.length,this.remainderData=null),$<188&&!n)return this.remainderData=o,{audioTrack:d,videoTrack:a,id3Track:v,textTrack:S};$-=$%188,$<o.byteLength&&!n&&(this.remainderData=new Uint8Array(o.buffer,$,o.buffer.byteLength-$));for(var ee=0,q=0;q<$;q+=188)if(o[q]===71){var re=!!(o[q+1]&64),ae=((o[q+1]&31)<<8)+o[q+2],ne=(o[q+3]&48)>>4,te=void 0;if(ne>1){if(te=q+5+o[q+4],te===q+188)continue}else te=q+4;switch(ae){case T:re&&(I&&(u=e(I))&&this.parseAVCPES(a,S,u,!1),I={data:[],size:0}),I&&(I.data.push(o.subarray(te,q+188)),I.size+=q+188-te);break;case k:if(re){if(U&&(u=e(U)))switch(d.segmentCodec){case"aac":this.parseAACPES(d,u);break;case"mp3":this.parseMPEGPES(d,u);break}U={data:[],size:0}}U&&(U.data.push(o.subarray(te,q+188)),U.size+=q+188-te);break;case B:re&&(W&&(u=e(W))&&this.parseID3PES(v,u),W={data:[],size:0}),W&&(W.data.push(o.subarray(te,q+188)),W.size+=q+188-te);break;case 0:re&&(te+=o[te]+1),Y=this._pmtId=p(o,te);break;case Y:{re&&(te+=o[te]+1);var he=f(o,te,this.typeSupported,t);T=he.avc,T>0&&(a.pid=T),k=he.audio,k>0&&(d.pid=k,d.segmentCodec=he.segmentCodec),B=he.id3,B>0&&(v.pid=B),H!==null&&!z&&(_.logger.log("unknown PID '"+H+"' in TS found"),H=null),z=this.pmtParsed=!0;break}case 17:case 8191:break;default:H=ae;break}}else ee++;ee>0&&this.observer.emit(O.Events.ERROR,O.Events.ERROR,{type:y.ErrorTypes.MEDIA_ERROR,details:y.ErrorDetails.FRAG_PARSING_ERROR,fatal:!1,reason:"Found "+ee+" TS packet/s that do not start with 0x47"}),a.pesData=I,d.pesData=U,v.pesData=W;var ve={audioTrack:d,videoTrack:a,id3Track:v,textTrack:S};return n&&this.extractRemainingSamples(ve),ve},i.flush=function(){var o=this.remainderData;this.remainderData=null;var c;return o?c=this.demux(o,-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(o){var c=o.audioTrack,t=o.videoTrack,n=o.id3Track,u=o.textTrack,a=t.pesData,d=c.pesData,v=n.pesData,S;if(a&&(S=e(a))?(this.parseAVCPES(t,u,S,!0),t.pesData=null):t.pesData=a,d&&(S=e(d))){switch(c.segmentCodec){case"aac":this.parseAACPES(c,S);break;case"mp3":this.parseMPEGPES(c,S);break}c.pesData=null}else d!=null&&d.size&&_.logger.log("last AAC PES packet truncated,might overlap between fragments"),c.pesData=d;v&&(S=e(v))?(this.parseID3PES(n,S),n.pesData=null):n.pesData=v},i.demuxSampleAes=function(o,c,t){var n=this.demux(o,t,!0,!this.config.progressive),u=this.sampleAes=new w.default(this.observer,this.config,c);return this.decrypt(n,u)},i.decrypt=function(o,c){return new Promise(function(t){var n=o.audioTrack,u=o.videoTrack;n.samples&&n.segmentCodec==="aac"?c.decryptAacSamples(n.samples,0,function(){u.samples?c.decryptAvcSamples(u.samples,0,0,function(){t(o)}):t(o)}):u.samples&&c.decryptAvcSamples(u.samples,0,0,function(){t(o)})})},i.destroy=function(){this._duration=0},i.parseAVCPES=function(o,c,t,n){var u=this,a=this.parseAVCNALu(o,t.data),d=!1,v=this.avcSample,S,T=!1;t.data=null,v&&a.length&&!o.audFound&&(s(v,o),v=this.avcSample=m(!1,t.pts,t.dts,"")),a.forEach(function(I){switch(I.type){case 1:{S=!0,v||(v=u.avcSample=m(!0,t.pts,t.dts,"")),d&&(v.debug+="NDR "),v.frame=!0;var k=I.data;if(T&&k.length>4){var B=new A.default(k).readSliceType();(B===2||B===4||B===7||B===9)&&(v.key=!0)}break}case 5:S=!0,v||(v=u.avcSample=m(!0,t.pts,t.dts,"")),d&&(v.debug+="IDR "),v.key=!0,v.frame=!0;break;case 6:{S=!0,d&&v&&(v.debug+="SEI "),Object(b.parseSEIMessageFromNALu)(h(I.data),t.pts,c.samples);break}case 7:if(S=!0,T=!0,d&&v&&(v.debug+="SPS "),!o.sps){var U=new A.default(I.data),W=U.readSPS();o.width=W.width,o.height=W.height,o.pixelRatio=W.pixelRatio,o.sps=[I.data],o.duration=u._duration;for(var H=I.data.subarray(1,4),z="avc1.",Y=0;Y<3;Y++){var $=H[Y].toString(16);$.length<2&&($="0"+$),z+=$}o.codec=z}break;case 8:S=!0,d&&v&&(v.debug+="PPS "),o.pps||(o.pps=[I.data]);break;case 9:S=!1,o.audFound=!0,v&&s(v,o),v=u.avcSample=m(!1,t.pts,t.dts,d?"AUD ":"");break;case 12:S=!0;break;default:S=!1,v&&(v.debug+="unknown NAL "+I.type+" ");break}if(v&&S){var ee=v.units;ee.push(I)}}),n&&v&&(s(v,o),this.avcSample=null)},i.getLastNalUnit=function(o){var c,t=this.avcSample,n;if((!t||t.units.length===0)&&(t=o[o.length-1]),(c=t)!==null&&c!==void 0&&c.units){var u=t.units;n=u[u.length-1]}return n},i.parseAVCNALu=function(o,c){var t=c.byteLength,n=o.naluState||0,u=n,a=[],d=0,v,S,T,I=-1,k=0;for(n===-1&&(I=0,k=c[0]&31,n=0,d=1);d<t;){if(v=c[d++],!n){n=v?0:1;continue}if(n===1){n=v?0:2;continue}if(!v)n=3;else if(v===1){if(I>=0){var B={data:c.subarray(I,d-n-1),type:k};a.push(B)}else{var U=this.getLastNalUnit(o.samples);if(U&&(u&&d<=4-u&&U.state&&(U.data=U.data.subarray(0,U.data.byteLength-u)),S=d-n-1,S>0)){var W=new Uint8Array(U.data.byteLength+S);W.set(U.data,0),W.set(c.subarray(0,S),U.data.byteLength),U.data=W,U.state=0}}d<t?(T=c[d]&31,I=d,k=T,n=0):n=-1}else n=0}if(I>=0&&n>=0){var H={data:c.subarray(I,t),type:k,state:n};a.push(H)}if(a.length===0){var z=this.getLastNalUnit(o.samples);if(z){var Y=new Uint8Array(z.data.byteLength+c.byteLength);Y.set(z.data,0),Y.set(c,z.data.byteLength),z.data=Y}}return o.naluState=n,a},i.parseAACPES=function(o,c){var t=0,n=this.aacOverFlow,u=c.data;if(n){this.aacOverFlow=null;var a=n.missing,d=n.sample.unit.byteLength;if(a===-1){var v=new Uint8Array(d+u.byteLength);v.set(n.sample.unit,0),v.set(u,d),u=v}else{var S=d-a;n.sample.unit.set(u.subarray(0,a),S),o.samples.push(n.sample),t=n.missing}}var T,I;for(T=t,I=u.length;T<I-1&&!C.isHeader(u,T);T++);if(T!==t){var k,B;if(T<I-1?(k="AAC PES did not start with ADTS header,offset:"+T,B=!1):(k="no ADTS header found in AAC PES",B=!0),_.logger.warn("parsing error:"+k),this.observer.emit(O.Events.ERROR,O.Events.ERROR,{type:y.ErrorTypes.MEDIA_ERROR,details:y.ErrorDetails.FRAG_PARSING_ERROR,fatal:B,reason:k}),B)return}C.initTrackConfig(o,this.observer,u,T,this.audioCodec);var U;if(c.pts!==void 0)U=c.pts;else if(n){var W=C.getFrameDuration(o.samplerate);U=n.sample.pts+W}else{_.logger.warn("[tsdemuxer]: AAC PES unknown PTS");return}for(var H=0,z;T<I;)if(z=C.appendFrame(o,u,T,U,H),T+=z.length,z.missing){this.aacOverFlow=z;break}else for(H++;T<I-1&&!C.isHeader(u,T);T++);},i.parseMPEGPES=function(o,c){var t=c.data,n=t.length,u=0,a=0,d=c.pts;if(d===void 0){_.logger.warn("[tsdemuxer]: MPEG PES unknown PTS");return}for(;a<n;)if(L.isHeader(t,a)){var v=L.appendFrame(o,t,a,d,u);if(v)a+=v.length,u++;else break}else a++},i.parseID3PES=function(o,c){if(c.pts===void 0){_.logger.warn("[tsdemuxer]: ID3 PES unknown PTS");return}var t=D({},c,{type:this._avcTrack?x.MetadataSchema.emsg:x.MetadataSchema.audioId3});o.samples.push(t)},g}();function m(g,i,r,o){return{key:g,frame:!1,pts:i,dts:r,units:[],debug:o,length:0}}function p(g,i){return(g[i+10]&31)<<8|g[i+11]}function f(g,i,r,o){var c={audio:-1,avc:-1,id3:-1,segmentCodec:"aac"},t=(g[i+1]&15)<<8|g[i+2],n=i+3+t-4,u=(g[i+10]&15)<<8|g[i+11];for(i+=12+u;i<n;){var a=(g[i+1]&31)<<8|g[i+2];switch(g[i]){case 207:if(!o){_.logger.log("ADTS AAC with AES-128-CBC frame encryption found in unencrypted stream");break}case 15:c.audio===-1&&(c.audio=a);break;case 21:c.id3===-1&&(c.id3=a);break;case 219:if(!o){_.logger.log("H.264 with AES-128-CBC slice encryption found in unencrypted stream");break}case 27:c.avc===-1&&(c.avc=a);break;case 3:case 4:r.mpeg!==!0&&r.mp3!==!0?_.logger.log("MPEG audio found, not supported in this browser"):c.audio===-1&&(c.audio=a,c.segmentCodec="mp3");break;case 36:_.logger.warn("Unsupported HEVC stream type found");break;default:break}i+=((g[i+3]&15)<<8|g[i+4])+5}return c}function e(g){var i=0,r,o,c,t,n,u=g.data;if(!g||g.size===0)return null;for(;u[0].length<19&&u.length>1;){var a=new Uint8Array(u[0].length+u[1].length);a.set(u[0]),a.set(u[1],u[0].length),u[0]=a,u.splice(1,1)}r=u[0];var d=(r[0]<<16)+(r[1]<<8)+r[2];if(d===1){if(o=(r[4]<<8)+r[5],o&&o>g.size-6)return null;var v=r[7];v&192&&(t=(r[9]&14)*536870912+(r[10]&255)*4194304+(r[11]&254)*16384+(r[12]&255)*128+(r[13]&254)/2,v&64?(n=(r[14]&14)*536870912+(r[15]&255)*4194304+(r[16]&254)*16384+(r[17]&255)*128+(r[18]&254)/2,t-n>60*9e4&&(_.logger.warn(Math.round((t-n)/9e4)+"s delta between PTS and DTS, align them"),t=n)):n=t),c=r[8];var S=c+9;if(g.size<=S)return null;g.size-=S;for(var T=new Uint8Array(g.size),I=0,k=u.length;I<k;I++){r=u[I];var B=r.byteLength;if(S)if(S>B){S-=B;continue}else r=r.subarray(S),B-=S,S=0;T.set(r,i),i+=B}return o&&(o-=c+3),{data:T,pts:t,dts:n,len:o}}return null}function s(g,i){if(g.units.length&&g.frame){if(g.pts===void 0){var r=i.samples,o=r.length;if(o){var c=r[o-1];g.pts=c.pts,g.dts=c.dts}else{i.dropped++;return}}i.samples.push(g)}g.debug.length&&_.logger.log(g.pts+"/"+g.dts+":"+g.debug)}function h(g){for(var i=g.byteLength,r=[],o=1;o<i-2;)g[o]===0&&g[o+1]===0&&g[o+2]===3?(r.push(o+2),o+=2):o++;if(r.length===0)return g;var c=i-r.length,t=new Uint8Array(c),n=0;for(o=0;o<c;n++,o++)n===r[0]&&(n++,r.shift()),t[o]=g[n];return t}R.default=E},"./src/errors.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"ErrorTypes",function(){return C}),l.d(R,"ErrorDetails",function(){return L});var C;(function(A){A.NETWORK_ERROR="networkError",A.MEDIA_ERROR="mediaError",A.KEY_SYSTEM_ERROR="keySystemError",A.MUX_ERROR="muxError",A.OTHER_ERROR="otherError"})(C||(C={}));var L;(function(A){A.KEY_SYSTEM_NO_KEYS="keySystemNoKeys",A.KEY_SYSTEM_NO_ACCESS="keySystemNoAccess",A.KEY_SYSTEM_NO_SESSION="keySystemNoSession",A.KEY_SYSTEM_LICENSE_REQUEST_FAILED="keySystemLicenseRequestFailed",A.KEY_SYSTEM_NO_INIT_DATA="keySystemNoInitData",A.MANIFEST_LOAD_ERROR="manifestLoadError",A.MANIFEST_LOAD_TIMEOUT="manifestLoadTimeOut",A.MANIFEST_PARSING_ERROR="manifestParsingError",A.MANIFEST_INCOMPATIBLE_CODECS_ERROR="manifestIncompatibleCodecsError",A.LEVEL_EMPTY_ERROR="levelEmptyError",A.LEVEL_LOAD_ERROR="levelLoadError",A.LEVEL_LOAD_TIMEOUT="levelLoadTimeOut",A.LEVEL_SWITCH_ERROR="levelSwitchError",A.AUDIO_TRACK_LOAD_ERROR="audioTrackLoadError",A.AUDIO_TRACK_LOAD_TIMEOUT="audioTrackLoadTimeOut",A.SUBTITLE_LOAD_ERROR="subtitleTrackLoadError",A.SUBTITLE_TRACK_LOAD_TIMEOUT="subtitleTrackLoadTimeOut",A.FRAG_LOAD_ERROR="fragLoadError",A.FRAG_LOAD_TIMEOUT="fragLoadTimeOut",A.FRAG_DECRYPT_ERROR="fragDecryptError",A.FRAG_PARSING_ERROR="fragParsingError",A.REMUX_ALLOC_ERROR="remuxAllocError",A.KEY_LOAD_ERROR="keyLoadError",A.KEY_LOAD_TIMEOUT="keyLoadTimeOut",A.BUFFER_ADD_CODEC_ERROR="bufferAddCodecError",A.BUFFER_INCOMPATIBLE_CODECS_ERROR="bufferIncompatibleCodecsError",A.BUFFER_APPEND_ERROR="bufferAppendError",A.BUFFER_APPENDING_ERROR="bufferAppendingError",A.BUFFER_STALLED_ERROR="bufferStalledError",A.BUFFER_FULL_ERROR="bufferFullError",A.BUFFER_SEEK_OVER_HOLE="bufferSeekOverHole",A.BUFFER_NUDGE_ON_STALL="bufferNudgeOnStall",A.INTERNAL_EXCEPTION="internalException",A.INTERNAL_ABORTED="aborted",A.UNKNOWN="unknown"})(L||(L={}))},"./src/events.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"Events",function(){return 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":function(j,R,l){"use strict";l.r(R),l.d(R,"default",function(){return i});var C=l("./node_modules/url-toolkit/src/url-toolkit.js"),L=l.n(C),A=l("./src/loader/playlist-loader.ts"),w=l("./src/loader/key-loader.ts"),O=l("./src/controller/id3-track-controller.ts"),b=l("./src/controller/latency-controller.ts"),_=l("./src/controller/level-controller.ts"),y=l("./src/controller/fragment-tracker.ts"),x=l("./src/controller/stream-controller.ts"),D=l("./src/is-supported.ts"),E=l("./src/utils/logger.ts"),m=l("./src/config.ts"),p=l("./node_modules/eventemitter3/index.js"),f=l.n(p),e=l("./src/events.ts"),s=l("./src/errors.ts");function h(r,o){for(var c=0;c<o.length;c++){var t=o[c];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(r,t.key,t)}}function g(r,o,c){return o&&h(r.prototype,o),c&&h(r,c),Object.defineProperty(r,"prototype",{writable:!1}),r}var i=function(){r.isSupported=function(){return Object(D.isSupported)()};function r(c){c===void 0&&(c={}),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.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 t=this.config=Object(m.mergeConfig)(r.DefaultConfig,c);this.userConfig=c,Object(E.enableLogs)(t.debug),this._autoLevelCapping=-1,t.progressive&&Object(m.enableStreamingMode)(t);var n=t.abrController,u=t.bufferController,a=t.capLevelController,d=t.fpsController,v=this.abrController=new n(this),S=this.bufferController=new u(this),T=this.capLevelController=new a(this),I=new d(this),k=new A.default(this),B=new w.default(this),U=new O.default(this),W=this.levelController=new _.default(this),H=new y.FragmentTracker(this),z=this.streamController=new x.default(this,H);T.setStreamController(z),I.setStreamController(z);var Y=[k,B,W,z];this.networkControllers=Y;var $=[v,S,T,I,U,H];this.audioTrackController=this.createController(t.audioTrackController,null,Y),this.createController(t.audioStreamController,H,Y),this.subtitleTrackController=this.createController(t.subtitleTrackController,null,Y),this.createController(t.subtitleStreamController,H,Y),this.createController(t.timelineController,null,$),this.emeController=this.createController(t.emeController,null,$),this.cmcdController=this.createController(t.cmcdController,null,$),this.latencyController=this.createController(b.default,null,$),this.coreComponents=$}var o=r.prototype;return o.createController=function(t,n,u){if(t){var a=n?new t(this,n):new t(this);return u&&u.push(a),a}return null},o.on=function(t,n,u){u===void 0&&(u=this),this._emitter.on(t,n,u)},o.once=function(t,n,u){u===void 0&&(u=this),this._emitter.once(t,n,u)},o.removeAllListeners=function(t){this._emitter.removeAllListeners(t)},o.off=function(t,n,u,a){u===void 0&&(u=this),this._emitter.off(t,n,u,a)},o.listeners=function(t){return this._emitter.listeners(t)},o.emit=function(t,n,u){return this._emitter.emit(t,n,u)},o.trigger=function(t,n){if(this.config.debug)return this.emit(t,t,n);try{return this.emit(t,t,n)}catch(u){E.logger.error("An internal error happened while handling event "+t+'. Error message: "'+u.message+'". Here is a stacktrace:',u),this.trigger(e.Events.ERROR,{type:s.ErrorTypes.OTHER_ERROR,details:s.ErrorDetails.INTERNAL_EXCEPTION,fatal:!1,event:t,error:u})}return!1},o.listenerCount=function(t){return this._emitter.listenerCount(t)},o.destroy=function(){E.logger.log("destroy"),this.trigger(e.Events.DESTROYING,void 0),this.detachMedia(),this.removeAllListeners(),this._autoLevelCapping=-1,this.url=null,this.networkControllers.forEach(function(t){return t.destroy()}),this.networkControllers.length=0,this.coreComponents.forEach(function(t){return t.destroy()}),this.coreComponents.length=0},o.attachMedia=function(t){E.logger.log("attachMedia"),this._media=t,this.trigger(e.Events.MEDIA_ATTACHING,{media:t})},o.detachMedia=function(){E.logger.log("detachMedia"),this.trigger(e.Events.MEDIA_DETACHING,void 0),this._media=null},o.loadSource=function(t){this.stopLoad();var n=this.media,u=this.url,a=this.url=C.buildAbsoluteURL(self.location.href,t,{alwaysNormalize:!0});E.logger.log("loadSource:"+a),n&&u&&u!==a&&this.bufferController.hasSourceTypes()&&(this.detachMedia(),this.attachMedia(n)),this.trigger(e.Events.MANIFEST_LOADING,{url:t})},o.startLoad=function(t){t===void 0&&(t=-1),E.logger.log("startLoad("+t+")"),this.networkControllers.forEach(function(n){n.startLoad(t)})},o.stopLoad=function(){E.logger.log("stopLoad"),this.networkControllers.forEach(function(t){t.stopLoad()})},o.swapAudioCodec=function(){E.logger.log("swapAudioCodec"),this.streamController.swapAudioCodec()},o.recoverMediaError=function(){E.logger.log("recoverMediaError");var t=this._media;this.detachMedia(),t&&this.attachMedia(t)},o.removeLevel=function(t,n){n===void 0&&(n=0),this.levelController.removeLevel(t,n)},g(r,[{key:"levels",get:function(){var t=this.levelController.levels;return t||[]}},{key:"currentLevel",get:function(){return this.streamController.currentLevel},set:function(t){E.logger.log("set currentLevel:"+t),this.loadLevel=t,this.abrController.clearTimer(),this.streamController.immediateLevelSwitch()}},{key:"nextLevel",get:function(){return this.streamController.nextLevel},set:function(t){E.logger.log("set nextLevel:"+t),this.levelController.manualLevel=t,this.streamController.nextLevelSwitch()}},{key:"loadLevel",get:function(){return this.levelController.level},set:function(t){E.logger.log("set loadLevel:"+t),this.levelController.manualLevel=t}},{key:"nextLoadLevel",get:function(){return this.levelController.nextLoadLevel},set:function(t){this.levelController.nextLoadLevel=t}},{key:"firstLevel",get:function(){return Math.max(this.levelController.firstLevel,this.minAutoLevel)},set:function(t){E.logger.log("set firstLevel:"+t),this.levelController.firstLevel=t}},{key:"startLevel",get:function(){return this.levelController.startLevel},set:function(t){E.logger.log("set startLevel:"+t),t!==-1&&(t=Math.max(t,this.minAutoLevel)),this.levelController.startLevel=t}},{key:"capLevelToPlayerSize",get:function(){return this.config.capLevelToPlayerSize},set:function(t){var n=!!t;n!==this.config.capLevelToPlayerSize&&(n?this.capLevelController.startCapping():(this.capLevelController.stopCapping(),this.autoLevelCapping=-1,this.streamController.nextLevelSwitch()),this.config.capLevelToPlayerSize=n)}},{key:"autoLevelCapping",get:function(){return this._autoLevelCapping},set:function(t){this._autoLevelCapping!==t&&(E.logger.log("set autoLevelCapping:"+t),this._autoLevelCapping=t)}},{key:"bandwidthEstimate",get:function(){var t=this.abrController.bwEstimator;return t?t.getEstimate():NaN}},{key:"autoLevelEnabled",get:function(){return this.levelController.manualLevel===-1}},{key:"manualLevel",get:function(){return this.levelController.manualLevel}},{key:"minAutoLevel",get:function(){var t=this.levels,n=this.config.minAutoBitrate;if(!t)return 0;for(var u=t.length,a=0;a<u;a++)if(t[a].maxBitrate>=n)return a;return 0}},{key:"maxAutoLevel",get:function(){var t=this.levels,n=this.autoLevelCapping,u;return n===-1&&t&&t.length?u=t.length-1:u=n,u}},{key:"nextAutoLevel",get:function(){return Math.min(Math.max(this.abrController.nextAutoLevel,this.minAutoLevel),this.maxAutoLevel)},set:function(t){this.abrController.nextAutoLevel=Math.max(this.minAutoLevel,t)}},{key:"playingDate",get:function(){return this.streamController.currentProgramDateTime}},{key:"audioTracks",get:function(){var t=this.audioTrackController;return t?t.audioTracks:[]}},{key:"audioTrack",get:function(){var t=this.audioTrackController;return t?t.audioTrack:-1},set:function(t){var n=this.audioTrackController;n&&(n.audioTrack=t)}},{key:"subtitleTracks",get:function(){var t=this.subtitleTrackController;return t?t.subtitleTracks:[]}},{key:"subtitleTrack",get:function(){var t=this.subtitleTrackController;return t?t.subtitleTrack:-1},set:function(t){var n=this.subtitleTrackController;n&&(n.subtitleTrack=t)}},{key:"media",get:function(){return this._media}},{key:"subtitleDisplay",get:function(){var t=this.subtitleTrackController;return t?t.subtitleDisplay:!1},set:function(t){var n=this.subtitleTrackController;n&&(n.subtitleDisplay=t)}},{key:"lowLatencyMode",get:function(){return this.config.lowLatencyMode},set:function(t){this.config.lowLatencyMode=t}},{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.2.3"}},{key:"Events",get:function(){return e.Events}},{key:"ErrorTypes",get:function(){return s.ErrorTypes}},{key:"ErrorDetails",get:function(){return s.ErrorDetails}},{key:"DefaultConfig",get:function(){return r.defaultConfig?r.defaultConfig:m.hlsDefaultConfig},set:function(t){r.defaultConfig=t}}]),r}();i.defaultConfig=void 0},"./src/is-supported.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"isSupported",function(){return A}),l.d(R,"changeTypeSupported",function(){return w});var C=l("./src/utils/mediasource-helper.ts");function L(){return self.SourceBuffer||self.WebKitSourceBuffer}function A(){var O=Object(C.getMediaSource)();if(!O)return!1;var b=L(),_=O&&typeof O.isTypeSupported=="function"&&O.isTypeSupported('video/mp4; codecs="avc1.42E01E,mp4a.40.2"'),y=!b||b.prototype&&typeof b.prototype.appendBuffer=="function"&&typeof b.prototype.remove=="function";return!!_&&!!y}function w(){var O,b=L();return typeof(b==null||(O=b.prototype)===null||O===void 0?void 0:O.changeType)=="function"}},"./src/loader/date-range.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"DateRangeAttribute",function(){return _}),l.d(R,"DateRange",function(){return y});var C=l("./src/polyfills/number.ts"),L=l("./src/utils/attr-list.ts"),A=l("./src/utils/logger.ts");function w(){return w=Object.assign?Object.assign.bind():function(x){for(var D=1;D<arguments.length;D++){var E=arguments[D];for(var m in E)Object.prototype.hasOwnProperty.call(E,m)&&(x[m]=E[m])}return x},w.apply(this,arguments)}function O(x,D){for(var E=0;E<D.length;E++){var m=D[E];m.enumerable=m.enumerable||!1,m.configurable=!0,"value"in m&&(m.writable=!0),Object.defineProperty(x,m.key,m)}}function b(x,D,E){return D&&O(x.prototype,D),E&&O(x,E),Object.defineProperty(x,"prototype",{writable:!1}),x}var _;(function(x){x.ID="ID",x.CLASS="CLASS",x.START_DATE="START-DATE",x.DURATION="DURATION",x.END_DATE="END-DATE",x.END_ON_NEXT="END-ON-NEXT",x.PLANNED_DURATION="PLANNED-DURATION",x.SCTE35_OUT="SCTE35-OUT",x.SCTE35_IN="SCTE35-IN"})(_||(_={}));var y=function(){function x(D,E){if(this.attr=void 0,this._startDate=void 0,this._endDate=void 0,this._badValueForSameId=void 0,E){var m=E.attr;for(var p in m)if(Object.prototype.hasOwnProperty.call(D,p)&&D[p]!==m[p]){A.logger.warn('DATERANGE tag attribute: "'+p+'" does not match for tags with ID: "'+D.ID+'"'),this._badValueForSameId=p;break}D=w(new L.AttrList({}),m,D)}if(this.attr=D,this._startDate=new Date(D[_.START_DATE]),_.END_DATE in this.attr){var f=new Date(this.attr[_.END_DATE]);Object(C.isFiniteNumber)(f.getTime())&&(this._endDate=f)}}return b(x,[{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 E=this.duration;return E!==null?new Date(this._startDate.getTime()+E*1e3):null}},{key:"duration",get:function(){if(_.DURATION in this.attr){var E=this.attr.decimalFloatingPoint(_.DURATION);if(Object(C.isFiniteNumber)(E))return E}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&&Object(C.isFiniteNumber)(this.startDate.getTime())&&(this.duration===null||this.duration>=0)&&(!this.endOnNext||!!this.class)}}]),x}()},"./src/loader/fragment-loader.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"default",function(){return E}),l.d(R,"LoadError",function(){return p});var C=l("./src/polyfills/number.ts"),L=l("./src/errors.ts");function A(f,e){f.prototype=Object.create(e.prototype),f.prototype.constructor=f,y(f,e)}function w(f){var e=typeof Map=="function"?new Map:void 0;return w=function(h){if(h===null||!_(h))return h;if(typeof h!="function")throw new TypeError("Super expression must either be null or a function");if(typeof e!="undefined"){if(e.has(h))return e.get(h);e.set(h,g)}function g(){return O(h,arguments,x(this).constructor)}return g.prototype=Object.create(h.prototype,{constructor:{value:g,enumerable:!1,writable:!0,configurable:!0}}),y(g,h)},w(f)}function O(f,e,s){return b()?O=Reflect.construct.bind():O=function(g,i,r){var o=[null];o.push.apply(o,i);var c=Function.bind.apply(g,o),t=new c;return r&&y(t,r.prototype),t},O.apply(null,arguments)}function b(){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 _(f){return Function.toString.call(f).indexOf("[native code]")!==-1}function y(f,e){return y=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(h,g){return h.__proto__=g,h},y(f,e)}function x(f){return x=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(s){return s.__proto__||Object.getPrototypeOf(s)},x(f)}var D=Math.pow(2,17),E=function(){function f(s){this.config=void 0,this.loader=null,this.partLoadTimeout=-1,this.config=s}var e=f.prototype;return e.destroy=function(){this.loader&&(this.loader.destroy(),this.loader=null)},e.abort=function(){this.loader&&this.loader.abort()},e.load=function(h,g){var i=this,r=h.url;if(!r)return Promise.reject(new p({type:L.ErrorTypes.NETWORK_ERROR,details:L.ErrorDetails.FRAG_LOAD_ERROR,fatal:!1,frag:h,networkDetails:null},"Fragment does not have a "+(r?"part list":"url")));this.abort();var o=this.config,c=o.fLoader,t=o.loader;return new Promise(function(n,u){i.loader&&i.loader.destroy();var a=i.loader=h.loader=c?new c(o):new t(o),d=m(h),v={timeout:o.fragLoadingTimeOut,maxRetry:0,retryDelay:0,maxRetryDelay:o.fragLoadingMaxRetryTimeout,highWaterMark:h.sn==="initSegment"?1/0:D};h.stats=a.stats,a.load(d,v,{onSuccess:function(T,I,k,B){i.resetLoader(h,a),n({frag:h,part:null,payload:T.data,networkDetails:B})},onError:function(T,I,k){i.resetLoader(h,a),u(new p({type:L.ErrorTypes.NETWORK_ERROR,details:L.ErrorDetails.FRAG_LOAD_ERROR,fatal:!1,frag:h,response:T,networkDetails:k}))},onAbort:function(T,I,k){i.resetLoader(h,a),u(new p({type:L.ErrorTypes.NETWORK_ERROR,details:L.ErrorDetails.INTERNAL_ABORTED,fatal:!1,frag:h,networkDetails:k}))},onTimeout:function(T,I,k){i.resetLoader(h,a),u(new p({type:L.ErrorTypes.NETWORK_ERROR,details:L.ErrorDetails.FRAG_LOAD_TIMEOUT,fatal:!1,frag:h,networkDetails:k}))},onProgress:function(T,I,k,B){g&&g({frag:h,part:null,payload:k,networkDetails:B})}})})},e.loadPart=function(h,g,i){var r=this;this.abort();var o=this.config,c=o.fLoader,t=o.loader;return new Promise(function(n,u){r.loader&&r.loader.destroy();var a=r.loader=h.loader=c?new c(o):new t(o),d=m(h,g),v={timeout:o.fragLoadingTimeOut,maxRetry:0,retryDelay:0,maxRetryDelay:o.fragLoadingMaxRetryTimeout,highWaterMark:D};g.stats=a.stats,a.load(d,v,{onSuccess:function(T,I,k,B){r.resetLoader(h,a),r.updateStatsFromPart(h,g);var U={frag:h,part:g,payload:T.data,networkDetails:B};i(U),n(U)},onError:function(T,I,k){r.resetLoader(h,a),u(new p({type:L.ErrorTypes.NETWORK_ERROR,details:L.ErrorDetails.FRAG_LOAD_ERROR,fatal:!1,frag:h,part:g,response:T,networkDetails:k}))},onAbort:function(T,I,k){h.stats.aborted=g.stats.aborted,r.resetLoader(h,a),u(new p({type:L.ErrorTypes.NETWORK_ERROR,details:L.ErrorDetails.INTERNAL_ABORTED,fatal:!1,frag:h,part:g,networkDetails:k}))},onTimeout:function(T,I,k){r.resetLoader(h,a),u(new p({type:L.ErrorTypes.NETWORK_ERROR,details:L.ErrorDetails.FRAG_LOAD_TIMEOUT,fatal:!1,frag:h,part:g,networkDetails:k}))}})})},e.updateStatsFromPart=function(h,g){var i=h.stats,r=g.stats,o=r.total;if(i.loaded+=r.loaded,o){var c=Math.round(h.duration/g.duration),t=Math.min(Math.round(i.loaded/o),c),n=c-t,u=n*Math.round(i.loaded/t);i.total=i.loaded+u}else i.total=Math.max(i.loaded,i.total);var a=i.loading,d=r.loading;a.start?a.first+=d.first-d.start:(a.start=d.start,a.first=d.first),a.end=d.end},e.resetLoader=function(h,g){h.loader=null,this.loader===g&&(self.clearTimeout(this.partLoadTimeout),this.loader=null),g.destroy()},f}();function m(f,e){e===void 0&&(e=null);var s=e||f,h={frag:f,part:e,responseType:"arraybuffer",url:s.url,headers:{},rangeStart:0,rangeEnd:0},g=s.byteRangeStartOffset,i=s.byteRangeEndOffset;return Object(C.isFiniteNumber)(g)&&Object(C.isFiniteNumber)(i)&&(h.rangeStart=g,h.rangeEnd=i),h}var p=function(f){A(e,f);function e(s){for(var h,g=arguments.length,i=new Array(g>1?g-1:0),r=1;r<g;r++)i[r-1]=arguments[r];return h=f.call.apply(f,[this].concat(i))||this,h.data=void 0,h.data=s,h}return e}(w(Error))},"./src/loader/fragment.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"ElementaryStreamTypes",function(){return E}),l.d(R,"BaseSegment",function(){return m}),l.d(R,"Fragment",function(){return p}),l.d(R,"Part",function(){return f});var C=l("./src/polyfills/number.ts"),L=l("./node_modules/url-toolkit/src/url-toolkit.js"),A=l.n(L),w=l("./src/utils/logger.ts"),O=l("./src/loader/level-key.ts"),b=l("./src/loader/load-stats.ts");function _(e,s){e.prototype=Object.create(s.prototype),e.prototype.constructor=e,y(e,s)}function y(e,s){return y=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(g,i){return g.__proto__=i,g},y(e,s)}function x(e,s){for(var h=0;h<s.length;h++){var g=s[h];g.enumerable=g.enumerable||!1,g.configurable=!0,"value"in g&&(g.writable=!0),Object.defineProperty(e,g.key,g)}}function D(e,s,h){return s&&x(e.prototype,s),h&&x(e,h),Object.defineProperty(e,"prototype",{writable:!1}),e}var E;(function(e){e.AUDIO="audio",e.VIDEO="video",e.AUDIOVIDEO="audiovideo"})(E||(E={}));var m=function(){function e(h){var g;this._byteRange=null,this._url=null,this.baseurl=void 0,this.relurl=void 0,this.elementaryStreams=(g={},g[E.AUDIO]=null,g[E.VIDEO]=null,g[E.AUDIOVIDEO]=null,g),this.baseurl=h}var s=e.prototype;return s.setByteRange=function(g,i){var r=g.split("@",2),o=[];r.length===1?o[0]=i?i.byteRangeEndOffset:0:o[0]=parseInt(r[1]),o[1]=parseInt(r[0])+o[0],this._byteRange=o},D(e,[{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=Object(L.buildAbsoluteURL)(this.baseurl,this.relurl,{alwaysNormalize:!0})),this._url||""},set:function(g){this._url=g}}]),e}(),p=function(e){_(s,e);function s(g,i){var r;return r=e.call(this,i)||this,r._decryptdata=null,r.rawProgramDateTime=null,r.programDateTime=null,r.tagList=[],r.duration=0,r.sn=0,r.levelkey=void 0,r.type=void 0,r.loader=null,r.level=-1,r.cc=0,r.startPTS=void 0,r.endPTS=void 0,r.appendedPTS=void 0,r.startDTS=void 0,r.endDTS=void 0,r.start=0,r.deltaPTS=void 0,r.maxStartPTS=void 0,r.minEndPTS=void 0,r.stats=new b.LoadStats,r.urlId=0,r.data=void 0,r.bitrateTest=!1,r.title=null,r.initSegment=null,r.type=g,r}var h=s.prototype;return h.createInitializationVector=function(i){for(var r=new Uint8Array(16),o=12;o<16;o++)r[o]=i>>8*(15-o)&255;return r},h.setDecryptDataFromLevelKey=function(i,r){var o=i;return(i==null?void 0:i.method)==="AES-128"&&i.uri&&!i.iv&&(o=O.LevelKey.fromURI(i.uri),o.method=i.method,o.iv=this.createInitializationVector(r),o.keyFormat="identity"),o},h.setElementaryStreamInfo=function(i,r,o,c,t,n){n===void 0&&(n=!1);var u=this.elementaryStreams,a=u[i];if(!a){u[i]={startPTS:r,endPTS:o,startDTS:c,endDTS:t,partial:n};return}a.startPTS=Math.min(a.startPTS,r),a.endPTS=Math.max(a.endPTS,o),a.startDTS=Math.min(a.startDTS,c),a.endDTS=Math.max(a.endDTS,t)},h.clearElementaryStreamInfo=function(){var i=this.elementaryStreams;i[E.AUDIO]=null,i[E.VIDEO]=null,i[E.AUDIOVIDEO]=null},D(s,[{key:"decryptdata",get:function(){if(!this.levelkey&&!this._decryptdata)return null;if(!this._decryptdata&&this.levelkey){var i=this.sn;typeof i!="number"&&(this.levelkey&&this.levelkey.method==="AES-128"&&!this.levelkey.iv&&w.logger.warn('missing IV for initialization segment with method="'+this.levelkey.method+'" - compliance issue'),i=0),this._decryptdata=this.setDecryptDataFromLevelKey(this.levelkey,i)}return this._decryptdata}},{key:"end",get:function(){return this.start+this.duration}},{key:"endProgramDateTime",get:function(){if(this.programDateTime===null||!Object(C.isFiniteNumber)(this.programDateTime))return null;var i=Object(C.isFiniteNumber)(this.duration)?this.duration:0;return this.programDateTime+i*1e3}},{key:"encrypted",get:function(){var i;return!!((i=this.decryptdata)!==null&&i!==void 0&&i.keyFormat&&this.decryptdata.uri)}}]),s}(m),f=function(e){_(s,e);function s(h,g,i,r,o){var c;c=e.call(this,i)||this,c.fragOffset=0,c.duration=0,c.gap=!1,c.independent=!1,c.relurl=void 0,c.fragment=void 0,c.index=void 0,c.stats=new b.LoadStats,c.duration=h.decimalFloatingPoint("DURATION"),c.gap=h.bool("GAP"),c.independent=h.bool("INDEPENDENT"),c.relurl=h.enumeratedString("URI"),c.fragment=g,c.index=r;var t=h.enumeratedString("BYTERANGE");return t&&c.setByteRange(t,o),o&&(c.fragOffset=o.fragOffset+o.duration),c}return D(s,[{key:"start",get:function(){return this.fragment.start+this.fragOffset}},{key:"end",get:function(){return this.start+this.duration}},{key:"loaded",get:function(){var g=this.elementaryStreams;return!!(g.audio||g.video||g.audiovideo)}}]),s}(m)},"./src/loader/key-loader.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"default",function(){return w});var C=l("./src/events.ts"),L=l("./src/errors.ts"),A=l("./src/utils/logger.ts"),w=function(){function O(_){this.hls=void 0,this.loaders={},this.decryptkey=null,this.decrypturl=null,this.hls=_,this.registerListeners()}var b=O.prototype;return b.startLoad=function(y){},b.stopLoad=function(){this.destroyInternalLoaders()},b.registerListeners=function(){this.hls.on(C.Events.KEY_LOADING,this.onKeyLoading,this)},b.unregisterListeners=function(){this.hls.off(C.Events.KEY_LOADING,this.onKeyLoading)},b.destroyInternalLoaders=function(){for(var y in this.loaders){var x=this.loaders[y];x&&x.destroy()}this.loaders={}},b.destroy=function(){this.unregisterListeners(),this.destroyInternalLoaders()},b.onKeyLoading=function(y,x){var D=x.frag,E=D.type,m=this.loaders[E];if(!D.decryptdata){A.logger.warn("Missing decryption data on fragment in onKeyLoading");return}var p=D.decryptdata.uri;if(p!==this.decrypturl||this.decryptkey===null){var f=this.hls.config;if(m&&(A.logger.warn("abort previous key loader for type:"+E),m.abort()),!p){A.logger.warn("key uri is falsy");return}var e=f.loader,s=D.loader=this.loaders[E]=new e(f);this.decrypturl=p,this.decryptkey=null;var h={url:p,frag:D,responseType:"arraybuffer"},g={timeout:f.fragLoadingTimeOut,maxRetry:0,retryDelay:f.fragLoadingRetryDelay,maxRetryDelay:f.fragLoadingMaxRetryTimeout,highWaterMark:0},i={onSuccess:this.loadsuccess.bind(this),onError:this.loaderror.bind(this),onTimeout:this.loadtimeout.bind(this)};s.load(h,g,i)}else this.decryptkey&&(D.decryptdata.key=this.decryptkey,this.hls.trigger(C.Events.KEY_LOADED,{frag:D}))},b.loadsuccess=function(y,x,D){var E=D.frag;if(!E.decryptdata){A.logger.error("after key load, decryptdata unset");return}this.decryptkey=E.decryptdata.key=new Uint8Array(y.data),E.loader=null,delete this.loaders[E.type],this.hls.trigger(C.Events.KEY_LOADED,{frag:E})},b.loaderror=function(y,x){var D=x.frag,E=D.loader;E&&E.abort(),delete this.loaders[D.type],this.hls.trigger(C.Events.ERROR,{type:L.ErrorTypes.NETWORK_ERROR,details:L.ErrorDetails.KEY_LOAD_ERROR,fatal:!1,frag:D,response:y})},b.loadtimeout=function(y,x){var D=x.frag,E=D.loader;E&&E.abort(),delete this.loaders[D.type],this.hls.trigger(C.Events.ERROR,{type:L.ErrorTypes.NETWORK_ERROR,details:L.ErrorDetails.KEY_LOAD_TIMEOUT,fatal:!1,frag:D})},O}()},"./src/loader/level-details.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"LevelDetails",function(){return O});var C=l("./src/polyfills/number.ts");function L(b,_){for(var y=0;y<_.length;y++){var x=_[y];x.enumerable=x.enumerable||!1,x.configurable=!0,"value"in x&&(x.writable=!0),Object.defineProperty(b,x.key,x)}}function A(b,_,y){return _&&L(b.prototype,_),y&&L(b,y),Object.defineProperty(b,"prototype",{writable:!1}),b}var w=10,O=function(){function b(y){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.needSidxRanges=!1,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.fragments=[],this.dateRanges={},this.url=y}var _=b.prototype;return _.reloaded=function(x){if(!x){this.advanced=!0,this.updated=!0;return}var D=this.lastPartSn-x.lastPartSn,E=this.lastPartIndex-x.lastPartIndex;this.updated=this.endSN!==x.endSN||!!E||!!D,this.advanced=this.endSN>x.endSN||D>0||D===0&&E>0,this.updated||this.advanced?this.misses=Math.floor(x.misses*.6):this.misses=x.misses+1,this.availabilityDelay=x.availabilityDelay},A(b,[{key:"hasProgramDateTime",get:function(){return this.fragments.length?Object(C.isFiniteNumber)(this.fragments[this.fragments.length-1].programDateTime):!1}},{key:"levelTargetDuration",get:function(){return this.averagetargetduration||this.targetduration||w}},{key:"drift",get:function(){var x=this.driftEndTime-this.driftStartTime;if(x>0){var D=this.driftEnd-this.driftStart;return D*1e3/x}return 1}},{key:"edge",get:function(){return this.partEnd||this.fragmentEnd}},{key:"partEnd",get:function(){var x;return(x=this.partList)!==null&&x!==void 0&&x.length?this.partList[this.partList.length-1].end:this.fragmentEnd}},{key:"fragmentEnd",get:function(){var x;return(x=this.fragments)!==null&&x!==void 0&&x.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 x;return(x=this.partList)!==null&&x!==void 0&&x.length?this.partList[this.partList.length-1].index:-1}},{key:"lastPartSn",get:function(){var x;return(x=this.partList)!==null&&x!==void 0&&x.length?this.partList[this.partList.length-1].fragment.sn:this.endSN}}]),b}()},"./src/loader/level-key.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"LevelKey",function(){return O});var C=l("./node_modules/url-toolkit/src/url-toolkit.js"),L=l.n(C);function A(b,_){for(var y=0;y<_.length;y++){var x=_[y];x.enumerable=x.enumerable||!1,x.configurable=!0,"value"in x&&(x.writable=!0),Object.defineProperty(b,x.key,x)}}function w(b,_,y){return _&&A(b.prototype,_),y&&A(b,y),Object.defineProperty(b,"prototype",{writable:!1}),b}var O=function(){b.fromURL=function(y,x){return new b(y,x)},b.fromURI=function(y){return new b(y)};function b(_,y){this._uri=null,this.method=null,this.keyFormat=null,this.keyFormatVersions=null,this.keyID=null,this.key=null,this.iv=null,y?this._uri=Object(C.buildAbsoluteURL)(_,y,{alwaysNormalize:!0}):this._uri=_}return w(b,[{key:"uri",get:function(){return this._uri}}]),b}()},"./src/loader/load-stats.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"LoadStats",function(){return 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":function(j,R,l){"use strict";l.r(R),l.d(R,"default",function(){return h});var C=l("./src/polyfills/number.ts"),L=l("./node_modules/url-toolkit/src/url-toolkit.js"),A=l.n(L),w=l("./src/loader/date-range.ts"),O=l("./src/loader/fragment.ts"),b=l("./src/loader/level-details.ts"),_=l("./src/loader/level-key.ts"),y=l("./src/utils/attr-list.ts"),x=l("./src/utils/logger.ts"),D=l("./src/utils/codecs.ts"),E=/#EXT-X-STREAM-INF:([^\r\n]*)(?:[\r\n](?:#[^\r\n]*)?)*([^\r\n]+)|#EXT-X-SESSION-DATA:([^\r\n]*)[\r\n]+/g,m=/#EXT-X-MEDIA:(.*)/g,p=new RegExp([/#EXTINF:\s*(\d*(?:\.\d+)?)(?:,(.*)\s+)?/.source,/(?!#) *(\S[\S ]*)/.source,/#EXT-X-BYTERANGE:*(.+)/.source,/#EXT-X-PROGRAM-DATE-TIME:(.+)/.source,/#.*/.source].join("|"),"g"),f=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("|")),e=/\.(mp4|m4s|m4v|m4a)$/i;function s(t){var n,u;return e.test((n=(u=L.parseURL(t))===null||u===void 0?void 0:u.path)!=null?n:"")}var h=function(){function t(){}return t.findGroup=function(u,a){for(var d=0;d<u.length;d++){var v=u[d];if(v.id===a)return v}},t.convertAVC1ToAVCOTI=function(u){var a=u.split(".");if(a.length>2){var d=a.shift()+".";return d+=parseInt(a.shift()).toString(16),d+=("000"+parseInt(a.shift()).toString(16)).slice(-4),d}return u},t.resolve=function(u,a){return L.buildAbsoluteURL(a,u,{alwaysNormalize:!0})},t.parseMasterPlaylist=function(u,a){var d=[],v={},S=!1;E.lastIndex=0;for(var T;(T=E.exec(u))!=null;)if(T[1]){var I=new y.AttrList(T[1]),k={attrs:I,bitrate:I.decimalInteger("AVERAGE-BANDWIDTH")||I.decimalInteger("BANDWIDTH"),name:I.NAME,url:t.resolve(T[2],a)},B=I.decimalResolution("RESOLUTION");B&&(k.width=B.width,k.height=B.height),g((I.CODECS||"").split(/[ ,]+/).filter(function(W){return W}),k),k.videoCodec&&k.videoCodec.indexOf("avc1")!==-1&&(k.videoCodec=t.convertAVC1ToAVCOTI(k.videoCodec)),d.push(k)}else if(T[3]){var U=new y.AttrList(T[3]);U["DATA-ID"]&&(S=!0,v[U["DATA-ID"]]=U)}return{levels:d,sessionData:S?v:null}},t.parseMasterPlaylistMedia=function(u,a,d,v){v===void 0&&(v=[]);var S,T=[],I=0;for(m.lastIndex=0;(S=m.exec(u))!==null;){var k=new y.AttrList(S[1]);if(k.TYPE===d){var B={attrs:k,bitrate:0,id:I++,groupId:k["GROUP-ID"],instreamId:k["INSTREAM-ID"],name:k.NAME||k.LANGUAGE||"",type:d,default:k.bool("DEFAULT"),autoselect:k.bool("AUTOSELECT"),forced:k.bool("FORCED"),lang:k.LANGUAGE,url:k.URI?t.resolve(k.URI,a):""};if(v.length){var U=t.findGroup(v,B.groupId)||v[0];i(B,U,"audioCodec"),i(B,U,"textCodec")}T.push(B)}}return T},t.parseLevelPlaylist=function(u,a,d,v,S){var T=new b.LevelDetails(a),I=T.fragments,k=null,B=0,U=0,W=0,H=0,z=null,Y=new O.Fragment(v,a),$,ee,q,re=-1,ae=!1;for(p.lastIndex=0,T.m3u8=u;($=p.exec(u))!==null;){ae&&(ae=!1,Y=new O.Fragment(v,a),Y.start=W,Y.sn=B,Y.cc=H,Y.level=d,k&&(Y.initSegment=k,Y.rawProgramDateTime=k.rawProgramDateTime,k.rawProgramDateTime=null));var ne=$[1];if(ne){Y.duration=parseFloat(ne);var te=(" "+$[2]).slice(1);Y.title=te||null,Y.tagList.push(te?["INF",ne,te]:["INF",ne])}else if($[3])Object(C.isFiniteNumber)(Y.duration)&&(Y.start=W,q&&(Y.levelkey=q),Y.sn=B,Y.level=d,Y.cc=H,Y.urlId=S,I.push(Y),Y.relurl=(" "+$[3]).slice(1),o(Y,z),z=Y,W+=Y.duration,B++,U=0,ae=!0);else if($[4]){var he=(" "+$[4]).slice(1);z?Y.setByteRange(he,z):Y.setByteRange(he)}else if($[5])Y.rawProgramDateTime=(" "+$[5]).slice(1),Y.tagList.push(["PROGRAM-DATE-TIME",Y.rawProgramDateTime]),re===-1&&(re=I.length);else{if($=$[0].match(f),!$){x.logger.warn("No matches on slow regex match for level playlist!");continue}for(ee=1;ee<$.length&&typeof $[ee]=="undefined";ee++);var ve=(" "+$[ee]).slice(1),ie=(" "+$[ee+1]).slice(1),Te=$[ee+2]?(" "+$[ee+2]).slice(1):"";switch(ve){case"PLAYLIST-TYPE":T.type=ie.toUpperCase();break;case"MEDIA-SEQUENCE":B=T.startSN=parseInt(ie);break;case"SKIP":{var pe=new y.AttrList(ie),xe=pe.decimalInteger("SKIPPED-SEGMENTS");if(Object(C.isFiniteNumber)(xe)){T.skippedSegments=xe;for(var Me=xe;Me--;)I.unshift(null);B+=xe}var Ae=pe.enumeratedString("RECENTLY-REMOVED-DATERANGES");Ae&&(T.recentlyRemovedDateranges=Ae.split(" "));break}case"TARGETDURATION":T.targetduration=parseFloat(ie);break;case"VERSION":T.version=parseInt(ie);break;case"EXTM3U":break;case"ENDLIST":T.live=!1;break;case"#":(ie||Te)&&Y.tagList.push(Te?[ie,Te]:[ie]);break;case"DISCONTINUITY":H++,Y.tagList.push(["DIS"]);break;case"GAP":Y.tagList.push([ve]);break;case"BITRATE":Y.tagList.push([ve,ie]);break;case"DATERANGE":{var We=new y.AttrList(ie),Ie=new w.DateRange(We,T.dateRanges[We.ID]);Ie.isValid||T.skippedSegments?T.dateRanges[Ie.id]=Ie:x.logger.warn('Ignoring invalid DATERANGE tag: "'+ie+'"'),Y.tagList.push(["EXT-X-DATERANGE",ie]);break}case"DISCONTINUITY-SEQUENCE":H=parseInt(ie);break;case"KEY":{var Be,be=new y.AttrList(ie),Ge=be.enumeratedString("METHOD"),He=be.URI,Qe=be.hexadecimalInteger("IV"),Ue=be.enumeratedString("KEYFORMATVERSIONS"),it=be.enumeratedString("KEYID"),we=(Be=be.enumeratedString("KEYFORMAT"))!=null?Be:"identity",nt=["com.apple.streamingkeydelivery","com.microsoft.playready","urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed","com.widevine"];if(nt.indexOf(we)>-1){x.logger.warn("Keyformat "+we+" is not supported from the manifest");continue}else if(we!=="identity")continue;Ge&&(q=_.LevelKey.fromURL(a,He),He&&["AES-128","SAMPLE-AES","SAMPLE-AES-CENC"].indexOf(Ge)>=0&&(q.method=Ge,q.keyFormat=we,it&&(q.keyID=it),Ue&&(q.keyFormatVersions=Ue),q.iv=Qe));break}case"START":{var Oe=new y.AttrList(ie),Ce=Oe.decimalFloatingPoint("TIME-OFFSET");Object(C.isFiniteNumber)(Ce)&&(T.startTimeOffset=Ce);break}case"MAP":{var Ye=new y.AttrList(ie);if(Y.duration){var Re=new O.Fragment(v,a);c(Re,Ye,d,q),k=Re,Y.initSegment=k,k.rawProgramDateTime&&!Y.rawProgramDateTime&&(Y.rawProgramDateTime=k.rawProgramDateTime)}else c(Y,Ye,d,q),k=Y,ae=!0;break}case"SERVER-CONTROL":{var Le=new y.AttrList(ie);T.canBlockReload=Le.bool("CAN-BLOCK-RELOAD"),T.canSkipUntil=Le.optionalFloat("CAN-SKIP-UNTIL",0),T.canSkipDateRanges=T.canSkipUntil>0&&Le.bool("CAN-SKIP-DATERANGES"),T.partHoldBack=Le.optionalFloat("PART-HOLD-BACK",0),T.holdBack=Le.optionalFloat("HOLD-BACK",0);break}case"PART-INF":{var at=new y.AttrList(ie);T.partTarget=at.decimalFloatingPoint("PART-TARGET");break}case"PART":{var ze=T.partList;ze||(ze=T.partList=[]);var pt=U>0?ze[ze.length-1]:void 0,xt=U++,tt=new O.Part(new y.AttrList(ie),Y,a,xt,pt);ze.push(tt),Y.duration+=tt.duration;break}case"PRELOAD-HINT":{var Ut=new y.AttrList(ie);T.preloadHint=Ut;break}case"RENDITION-REPORT":{var St=new y.AttrList(ie);T.renditionReports=T.renditionReports||[],T.renditionReports.push(St);break}default:x.logger.warn("line parsed but not handled: "+$);break}}}z&&!z.relurl?(I.pop(),W-=z.duration,T.partList&&(T.fragmentHint=z)):T.partList&&(o(Y,z),Y.cc=H,T.fragmentHint=Y);var ct=I.length,Et=I[0],ut=I[ct-1];if(W+=T.skippedSegments*T.targetduration,W>0&&ct&&ut){T.averagetargetduration=W/ct;var Ot=ut.sn;T.endSN=Ot!=="initSegment"?Ot:0,Et&&(T.startCC=Et.cc,Et.initSegment||T.fragments.every(function(yt){return yt.relurl&&s(yt.relurl)})&&(x.logger.warn("MP4 fragments found but no init segment (probably no MAP, incomplete M3U8), trying to fetch SIDX"),Y=new O.Fragment(v,a),Y.relurl=ut.relurl,Y.level=d,Y.sn="initSegment",Et.initSegment=Y,T.needSidxRanges=!0))}else T.endSN=0,T.startCC=0;return T.fragmentHint&&(W+=T.fragmentHint.duration),T.totalduration=W,T.endCC=H,re>0&&r(I,re),T},t}();function g(t,n){["video","audio","text"].forEach(function(u){var a=t.filter(function(v){return Object(D.isCodecType)(v,u)});if(a.length){var d=a.filter(function(v){return v.lastIndexOf("avc1",0)===0||v.lastIndexOf("mp4a",0)===0});n[u+"Codec"]=d.length>0?d[0]:a[0],t=t.filter(function(v){return a.indexOf(v)===-1})}}),n.unknownCodecs=t}function i(t,n,u){var a=n[u];a&&(t[u]=a)}function r(t,n){for(var u=t[n],a=n;a--;){var d=t[a];if(!d)return;d.programDateTime=u.programDateTime-d.duration*1e3,u=d}}function o(t,n){t.rawProgramDateTime?t.programDateTime=Date.parse(t.rawProgramDateTime):n!=null&&n.programDateTime&&(t.programDateTime=n.endProgramDateTime),Object(C.isFiniteNumber)(t.programDateTime)||(t.programDateTime=null,t.rawProgramDateTime=null)}function c(t,n,u,a){t.relurl=n.URI,n.BYTERANGE&&t.setByteRange(n.BYTERANGE),t.level=u,t.sn="initSegment",a&&(t.levelkey=a),t.initSegment=null}},"./src/loader/playlist-loader.ts":function(j,R,l){"use strict";l.r(R);var C=l("./src/polyfills/number.ts"),L=l("./src/events.ts"),A=l("./src/errors.ts"),w=l("./src/utils/logger.ts"),O=l("./src/utils/mp4-tools.ts"),b=l("./src/loader/m3u8-parser.ts"),_=l("./src/types/loader.ts"),y=l("./src/utils/attr-list.ts");function x(m){var p=m.type;switch(p){case _.PlaylistContextType.AUDIO_TRACK:return _.PlaylistLevelType.AUDIO;case _.PlaylistContextType.SUBTITLE_TRACK:return _.PlaylistLevelType.SUBTITLE;default:return _.PlaylistLevelType.MAIN}}function D(m,p){var f=m.url;return(f===void 0||f.indexOf("data:")===0)&&(f=p.url),f}var E=function(){function m(f){this.hls=void 0,this.loaders=Object.create(null),this.hls=f,this.registerListeners()}var p=m.prototype;return p.startLoad=function(e){},p.stopLoad=function(){this.destroyInternalLoaders()},p.registerListeners=function(){var e=this.hls;e.on(L.Events.MANIFEST_LOADING,this.onManifestLoading,this),e.on(L.Events.LEVEL_LOADING,this.onLevelLoading,this),e.on(L.Events.AUDIO_TRACK_LOADING,this.onAudioTrackLoading,this),e.on(L.Events.SUBTITLE_TRACK_LOADING,this.onSubtitleTrackLoading,this)},p.unregisterListeners=function(){var e=this.hls;e.off(L.Events.MANIFEST_LOADING,this.onManifestLoading,this),e.off(L.Events.LEVEL_LOADING,this.onLevelLoading,this),e.off(L.Events.AUDIO_TRACK_LOADING,this.onAudioTrackLoading,this),e.off(L.Events.SUBTITLE_TRACK_LOADING,this.onSubtitleTrackLoading,this)},p.createInternalLoader=function(e){var s=this.hls.config,h=s.pLoader,g=s.loader,i=h||g,r=new i(s);return e.loader=r,this.loaders[e.type]=r,r},p.getInternalLoader=function(e){return this.loaders[e.type]},p.resetInternalLoader=function(e){this.loaders[e]&&delete this.loaders[e]},p.destroyInternalLoaders=function(){for(var e in this.loaders){var s=this.loaders[e];s&&s.destroy(),this.resetInternalLoader(e)}},p.destroy=function(){this.unregisterListeners(),this.destroyInternalLoaders()},p.onManifestLoading=function(e,s){var h=s.url;this.load({id:null,groupId:null,level:0,responseType:"text",type:_.PlaylistContextType.MANIFEST,url:h,deliveryDirectives:null})},p.onLevelLoading=function(e,s){var h=s.id,g=s.level,i=s.url,r=s.deliveryDirectives;this.load({id:h,groupId:null,level:g,responseType:"text",type:_.PlaylistContextType.LEVEL,url:i,deliveryDirectives:r})},p.onAudioTrackLoading=function(e,s){var h=s.id,g=s.groupId,i=s.url,r=s.deliveryDirectives;this.load({id:h,groupId:g,level:null,responseType:"text",type:_.PlaylistContextType.AUDIO_TRACK,url:i,deliveryDirectives:r})},p.onSubtitleTrackLoading=function(e,s){var h=s.id,g=s.groupId,i=s.url,r=s.deliveryDirectives;this.load({id:h,groupId:g,level:null,responseType:"text",type:_.PlaylistContextType.SUBTITLE_TRACK,url:i,deliveryDirectives:r})},p.load=function(e){var s,h=this.hls.config,g=this.getInternalLoader(e);if(g){var i=g.context;if(i&&i.url===e.url){w.logger.trace("[playlist-loader]: playlist request ongoing");return}w.logger.log("[playlist-loader]: aborting previous loader for type: "+e.type),g.abort()}var r,o,c,t;switch(e.type){case _.PlaylistContextType.MANIFEST:r=h.manifestLoadingMaxRetry,o=h.manifestLoadingTimeOut,c=h.manifestLoadingRetryDelay,t=h.manifestLoadingMaxRetryTimeout;break;case _.PlaylistContextType.LEVEL:case _.PlaylistContextType.AUDIO_TRACK:case _.PlaylistContextType.SUBTITLE_TRACK:r=0,o=h.levelLoadingTimeOut;break;default:r=h.levelLoadingMaxRetry,o=h.levelLoadingTimeOut,c=h.levelLoadingRetryDelay,t=h.levelLoadingMaxRetryTimeout;break}if(g=this.createInternalLoader(e),(s=e.deliveryDirectives)!==null&&s!==void 0&&s.part){var n;if(e.type===_.PlaylistContextType.LEVEL&&e.level!==null?n=this.hls.levels[e.level].details:e.type===_.PlaylistContextType.AUDIO_TRACK&&e.id!==null?n=this.hls.audioTracks[e.id].details:e.type===_.PlaylistContextType.SUBTITLE_TRACK&&e.id!==null&&(n=this.hls.subtitleTracks[e.id].details),n){var u=n.partTarget,a=n.targetduration;u&&a&&(o=Math.min(Math.max(u*3,a*.8)*1e3,o))}}var d={timeout:o,maxRetry:r,retryDelay:c,maxRetryDelay:t,highWaterMark:0},v={onSuccess:this.loadsuccess.bind(this),onError:this.loaderror.bind(this),onTimeout:this.loadtimeout.bind(this)};g.load(e,d,v)},p.loadsuccess=function(e,s,h,g){if(g===void 0&&(g=null),h.isSidxRequest){this.handleSidxRequest(e,h),this.handlePlaylistLoaded(e,s,h,g);return}this.resetInternalLoader(h.type);var i=e.data;if(i.indexOf("#EXTM3U")!==0){this.handleManifestParsingError(e,h,"no EXTM3U delimiter",g);return}s.parsing.start=performance.now(),i.indexOf("#EXTINF:")>0||i.indexOf("#EXT-X-TARGETDURATION:")>0?this.handleTrackOrLevelPlaylist(e,s,h,g):this.handleMasterPlaylist(e,s,h,g)},p.loaderror=function(e,s,h){h===void 0&&(h=null),this.handleNetworkError(s,h,!1,e)},p.loadtimeout=function(e,s,h){h===void 0&&(h=null),this.handleNetworkError(s,h,!0)},p.handleMasterPlaylist=function(e,s,h,g){var i=this.hls,r=e.data,o=D(e,h),c=b.default.parseMasterPlaylist(r,o),t=c.levels,n=c.sessionData;if(!t.length){this.handleManifestParsingError(e,h,"no level found in manifest",g);return}var u=t.map(function(I){return{id:I.attrs.AUDIO,audioCodec:I.audioCodec}}),a=t.map(function(I){return{id:I.attrs.SUBTITLES,textCodec:I.textCodec}}),d=b.default.parseMasterPlaylistMedia(r,o,"AUDIO",u),v=b.default.parseMasterPlaylistMedia(r,o,"SUBTITLES",a),S=b.default.parseMasterPlaylistMedia(r,o,"CLOSED-CAPTIONS");if(d.length){var T=d.some(function(I){return!I.url});!T&&t[0].audioCodec&&!t[0].attrs.AUDIO&&(w.logger.log("[playlist-loader]: audio codec signaled in quality level, but no embedded audio track signaled, create one"),d.unshift({type:"main",name:"main",default:!1,autoselect:!1,forced:!1,id:-1,attrs:new y.AttrList({}),bitrate:0,url:""}))}i.trigger(L.Events.MANIFEST_LOADED,{levels:t,audioTracks:d,subtitles:v,captions:S,url:o,stats:s,networkDetails:g,sessionData:n})},p.handleTrackOrLevelPlaylist=function(e,s,h,g){var i=this.hls,r=h.id,o=h.level,c=h.type,t=D(e,h),n=Object(C.isFiniteNumber)(r)?r:0,u=Object(C.isFiniteNumber)(o)?o:n,a=x(h),d=b.default.parseLevelPlaylist(e.data,t,u,a,n);if(!d.fragments.length){i.trigger(L.Events.ERROR,{type:A.ErrorTypes.NETWORK_ERROR,details:A.ErrorDetails.LEVEL_EMPTY_ERROR,fatal:!1,url:t,reason:"no fragments found in level",level:typeof h.level=="number"?h.level:void 0});return}if(c===_.PlaylistContextType.MANIFEST){var v={attrs:new y.AttrList({}),bitrate:0,details:d,name:"",url:t};i.trigger(L.Events.MANIFEST_LOADED,{levels:[v],audioTracks:[],url:t,stats:s,networkDetails:g,sessionData:null})}if(s.parsing.end=performance.now(),d.needSidxRanges){var S,T=(S=d.fragments[0].initSegment)===null||S===void 0?void 0:S.url;this.load({url:T,isSidxRequest:!0,type:c,level:o,levelDetails:d,id:r,groupId:null,rangeStart:0,rangeEnd:2048,responseType:"arraybuffer",deliveryDirectives:null});return}h.levelDetails=d,this.handlePlaylistLoaded(e,s,h,g)},p.handleSidxRequest=function(e,s){var h=new Uint8Array(e.data),g=Object(O.findBox)(h,["sidx"])[0];if(!!g){var i=Object(O.parseSegmentIndex)(g);if(!!i){var r=i.references,o=s.levelDetails;r.forEach(function(c,t){var n=c.info,u=o.fragments[t];if(u.byteRange.length===0&&u.setByteRange(String(1+n.end-n.start)+"@"+String(n.start)),u.initSegment){var a=Object(O.findBox)(h,["moov"])[0],d=a?a.length:null;u.initSegment.setByteRange(String(d)+"@0")}})}}},p.handleManifestParsingError=function(e,s,h,g){this.hls.trigger(L.Events.ERROR,{type:A.ErrorTypes.NETWORK_ERROR,details:A.ErrorDetails.MANIFEST_PARSING_ERROR,fatal:s.type===_.PlaylistContextType.MANIFEST,url:e.url,reason:h,response:e,context:s,networkDetails:g})},p.handleNetworkError=function(e,s,h,g){h===void 0&&(h=!1),w.logger.warn("[playlist-loader]: A network "+(h?"timeout":"error")+" occurred while loading "+e.type+" level: "+e.level+" id: "+e.id+' group-id: "'+e.groupId+'"');var i=A.ErrorDetails.UNKNOWN,r=!1,o=this.getInternalLoader(e);switch(e.type){case _.PlaylistContextType.MANIFEST:i=h?A.ErrorDetails.MANIFEST_LOAD_TIMEOUT:A.ErrorDetails.MANIFEST_LOAD_ERROR,r=!0;break;case _.PlaylistContextType.LEVEL:i=h?A.ErrorDetails.LEVEL_LOAD_TIMEOUT:A.ErrorDetails.LEVEL_LOAD_ERROR,r=!1;break;case _.PlaylistContextType.AUDIO_TRACK:i=h?A.ErrorDetails.AUDIO_TRACK_LOAD_TIMEOUT:A.ErrorDetails.AUDIO_TRACK_LOAD_ERROR,r=!1;break;case _.PlaylistContextType.SUBTITLE_TRACK:i=h?A.ErrorDetails.SUBTITLE_TRACK_LOAD_TIMEOUT:A.ErrorDetails.SUBTITLE_LOAD_ERROR,r=!1;break}o&&this.resetInternalLoader(e.type);var c={type:A.ErrorTypes.NETWORK_ERROR,details:i,fatal:r,url:e.url,loader:o,context:e,networkDetails:s};g&&(c.response=g),this.hls.trigger(L.Events.ERROR,c)},p.handlePlaylistLoaded=function(e,s,h,g){var i=h.type,r=h.level,o=h.id,c=h.groupId,t=h.loader,n=h.levelDetails,u=h.deliveryDirectives;if(!(n!=null&&n.targetduration)){this.handleManifestParsingError(e,h,"invalid target duration",g);return}if(!!t)switch(n.live&&(t.getCacheAge&&(n.ageHeader=t.getCacheAge()||0),(!t.getCacheAge||isNaN(n.ageHeader))&&(n.ageHeader=0)),i){case _.PlaylistContextType.MANIFEST:case _.PlaylistContextType.LEVEL:this.hls.trigger(L.Events.LEVEL_LOADED,{details:n,level:r||0,id:o||0,stats:s,networkDetails:g,deliveryDirectives:u});break;case _.PlaylistContextType.AUDIO_TRACK:this.hls.trigger(L.Events.AUDIO_TRACK_LOADED,{details:n,id:o||0,groupId:c||"",stats:s,networkDetails:g,deliveryDirectives:u});break;case _.PlaylistContextType.SUBTITLE_TRACK:this.hls.trigger(L.Events.SUBTITLE_TRACK_LOADED,{details:n,id:o||0,groupId:c||"",stats:s,networkDetails:g,deliveryDirectives:u});break}},m}();R.default=E},"./src/polyfills/number.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"isFiniteNumber",function(){return C}),l.d(R,"MAX_SAFE_INTEGER",function(){return L});var C=Number.isFinite||function(A){return typeof A=="number"&&isFinite(A)},L=Number.MAX_SAFE_INTEGER||9007199254740991},"./src/remux/aac-helper.ts":function(j,R,l){"use strict";l.r(R);var C=function(){function L(){}return L.getSilentFrame=function(w,O){switch(w){case"mp4a.40.2":if(O===1)return new Uint8Array([0,200,0,128,35,128]);if(O===2)return new Uint8Array([33,0,73,144,2,25,0,35,128]);if(O===3)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,142]);if(O===4)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,128,44,128,8,2,56]);if(O===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(O===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(O===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(O===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(O===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}},L}();R.default=C},"./src/remux/mp4-generator.ts":function(j,R,l){"use strict";l.r(R);var C=Math.pow(2,32)-1,L=function(){function A(){}return A.init=function(){A.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 O;for(O in A.types)A.types.hasOwnProperty(O)&&(A.types[O]=[O.charCodeAt(0),O.charCodeAt(1),O.charCodeAt(2),O.charCodeAt(3)]);var b=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]),_=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]);A.HDLR_TYPES={video:b,audio:_};var y=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1]),x=new Uint8Array([0,0,0,0,0,0,0,0]);A.STTS=A.STSC=A.STCO=x,A.STSZ=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]),A.VMHD=new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0]),A.SMHD=new Uint8Array([0,0,0,0,0,0,0,0]),A.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]),m=new Uint8Array([0,0,0,1]);A.FTYP=A.box(A.types.ftyp,D,m,D,E),A.DINF=A.box(A.types.dinf,A.box(A.types.dref,y))},A.box=function(O){for(var b=8,_=arguments.length,y=new Array(_>1?_-1:0),x=1;x<_;x++)y[x-1]=arguments[x];for(var D=y.length,E=D;D--;)b+=y[D].byteLength;var m=new Uint8Array(b);for(m[0]=b>>24&255,m[1]=b>>16&255,m[2]=b>>8&255,m[3]=b&255,m.set(O,4),D=0,b=8;D<E;D++)m.set(y[D],b),b+=y[D].byteLength;return m},A.hdlr=function(O){return A.box(A.types.hdlr,A.HDLR_TYPES[O])},A.mdat=function(O){return A.box(A.types.mdat,O)},A.mdhd=function(O,b){b*=O;var _=Math.floor(b/(C+1)),y=Math.floor(b%(C+1));return A.box(A.types.mdhd,new Uint8Array([1,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,O>>24&255,O>>16&255,O>>8&255,O&255,_>>24,_>>16&255,_>>8&255,_&255,y>>24,y>>16&255,y>>8&255,y&255,85,196,0,0]))},A.mdia=function(O){return A.box(A.types.mdia,A.mdhd(O.timescale,O.duration),A.hdlr(O.type),A.minf(O))},A.mfhd=function(O){return A.box(A.types.mfhd,new Uint8Array([0,0,0,0,O>>24,O>>16&255,O>>8&255,O&255]))},A.minf=function(O){return O.type==="audio"?A.box(A.types.minf,A.box(A.types.smhd,A.SMHD),A.DINF,A.stbl(O)):A.box(A.types.minf,A.box(A.types.vmhd,A.VMHD),A.DINF,A.stbl(O))},A.moof=function(O,b,_){return A.box(A.types.moof,A.mfhd(O),A.traf(_,b))},A.moov=function(O){for(var b=O.length,_=[];b--;)_[b]=A.trak(O[b]);return A.box.apply(null,[A.types.moov,A.mvhd(O[0].timescale,O[0].duration)].concat(_).concat(A.mvex(O)))},A.mvex=function(O){for(var b=O.length,_=[];b--;)_[b]=A.trex(O[b]);return A.box.apply(null,[A.types.mvex].concat(_))},A.mvhd=function(O,b){b*=O;var _=Math.floor(b/(C+1)),y=Math.floor(b%(C+1)),x=new Uint8Array([1,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,O>>24&255,O>>16&255,O>>8&255,O&255,_>>24,_>>16&255,_>>8&255,_&255,y>>24,y>>16&255,y>>8&255,y&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 A.box(A.types.mvhd,x)},A.sdtp=function(O){var b=O.samples||[],_=new Uint8Array(4+b.length),y,x;for(y=0;y<b.length;y++)x=b[y].flags,_[y+4]=x.dependsOn<<4|x.isDependedOn<<2|x.hasRedundancy;return A.box(A.types.sdtp,_)},A.stbl=function(O){return A.box(A.types.stbl,A.stsd(O),A.box(A.types.stts,A.STTS),A.box(A.types.stsc,A.STSC),A.box(A.types.stsz,A.STSZ),A.box(A.types.stco,A.STCO))},A.avc1=function(O){var b=[],_=[],y,x,D;for(y=0;y<O.sps.length;y++)x=O.sps[y],D=x.byteLength,b.push(D>>>8&255),b.push(D&255),b=b.concat(Array.prototype.slice.call(x));for(y=0;y<O.pps.length;y++)x=O.pps[y],D=x.byteLength,_.push(D>>>8&255),_.push(D&255),_=_.concat(Array.prototype.slice.call(x));var E=A.box(A.types.avcC,new Uint8Array([1,b[3],b[4],b[5],255,224|O.sps.length].concat(b).concat([O.pps.length]).concat(_))),m=O.width,p=O.height,f=O.pixelRatio[0],e=O.pixelRatio[1];return A.box(A.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,m>>8&255,m&255,p>>8&255,p&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,A.box(A.types.btrt,new Uint8Array([0,28,156,128,0,45,198,192,0,45,198,192])),A.box(A.types.pasp,new Uint8Array([f>>24,f>>16&255,f>>8&255,f&255,e>>24,e>>16&255,e>>8&255,e&255])))},A.esds=function(O){var b=O.config.length;return new Uint8Array([0,0,0,0,3,23+b,0,1,0,4,15+b,64,21,0,0,0,0,0,0,0,0,0,0,0,5].concat([b]).concat(O.config).concat([6,1,2]))},A.mp4a=function(O){var b=O.samplerate;return A.box(A.types.mp4a,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,O.channelCount,0,16,0,0,0,0,b>>8&255,b&255,0,0]),A.box(A.types.esds,A.esds(O)))},A.mp3=function(O){var b=O.samplerate;return A.box(A.types[".mp3"],new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,O.channelCount,0,16,0,0,0,0,b>>8&255,b&255,0,0]))},A.stsd=function(O){return O.type==="audio"?O.segmentCodec==="mp3"&&O.codec==="mp3"?A.box(A.types.stsd,A.STSD,A.mp3(O)):A.box(A.types.stsd,A.STSD,A.mp4a(O)):A.box(A.types.stsd,A.STSD,A.avc1(O))},A.tkhd=function(O){var b=O.id,_=O.duration*O.timescale,y=O.width,x=O.height,D=Math.floor(_/(C+1)),E=Math.floor(_%(C+1));return A.box(A.types.tkhd,new Uint8Array([1,0,0,7,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,b>>24&255,b>>16&255,b>>8&255,b&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,y>>8&255,y&255,0,0,x>>8&255,x&255,0,0]))},A.traf=function(O,b){var _=A.sdtp(O),y=O.id,x=Math.floor(b/(C+1)),D=Math.floor(b%(C+1));return A.box(A.types.traf,A.box(A.types.tfhd,new Uint8Array([0,0,0,0,y>>24,y>>16&255,y>>8&255,y&255])),A.box(A.types.tfdt,new Uint8Array([1,0,0,0,x>>24,x>>16&255,x>>8&255,x&255,D>>24,D>>16&255,D>>8&255,D&255])),A.trun(O,_.length+16+20+8+16+8+8),_)},A.trak=function(O){return O.duration=O.duration||4294967295,A.box(A.types.trak,A.tkhd(O),A.mdia(O))},A.trex=function(O){var b=O.id;return A.box(A.types.trex,new Uint8Array([0,0,0,0,b>>24,b>>16&255,b>>8&255,b&255,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]))},A.trun=function(O,b){var _=O.samples||[],y=_.length,x=12+16*y,D=new Uint8Array(x),E,m,p,f,e,s;for(b+=8+x,D.set([O.type==="video"?1:0,0,15,1,y>>>24&255,y>>>16&255,y>>>8&255,y&255,b>>>24&255,b>>>16&255,b>>>8&255,b&255],0),E=0;E<y;E++)m=_[E],p=m.duration,f=m.size,e=m.flags,s=m.cts,D.set([p>>>24&255,p>>>16&255,p>>>8&255,p&255,f>>>24&255,f>>>16&255,f>>>8&255,f&255,e.isLeading<<2|e.dependsOn,e.isDependedOn<<6|e.hasRedundancy<<4|e.paddingValue<<1|e.isNonSync,e.degradPrio&240<<8,e.degradPrio&15,s>>>24&255,s>>>16&255,s>>>8&255,s&255],12+16*E);return A.box(A.types.trun,D)},A.initSegment=function(O){A.types||A.init();var b=A.moov(O),_=new Uint8Array(A.FTYP.byteLength+b.byteLength);return _.set(A.FTYP),_.set(b,A.FTYP.byteLength),_},A}();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,R.default=L},"./src/remux/mp4-remuxer.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"default",function(){return e}),l.d(R,"normalizePts",function(){return s}),l.d(R,"flushTextTrackMetadataCueSamples",function(){return g}),l.d(R,"flushTextTrackUserdataCueSamples",function(){return i});var C=l("./src/polyfills/number.ts"),L=l("./src/remux/aac-helper.ts"),A=l("./src/remux/mp4-generator.ts"),w=l("./src/events.ts"),O=l("./src/errors.ts"),b=l("./src/utils/logger.ts"),_=l("./src/types/loader.ts"),y=l("./src/utils/timescale-conversion.ts");function x(){return x=Object.assign?Object.assign.bind():function(c){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var u in n)Object.prototype.hasOwnProperty.call(n,u)&&(c[u]=n[u])}return c},x.apply(this,arguments)}var D=10*1e3,E=1024,m=1152,p=null,f=null,e=function(){function c(n,u,a,d){if(d===void 0&&(d=""),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=n,this.config=u,this.typeSupported=a,this.ISGenerated=!1,p===null){var v=navigator.userAgent||"",S=v.match(/Chrome\/(\d+)/i);p=S?parseInt(S[1]):0}if(f===null){var T=navigator.userAgent.match(/Safari\/(\d+)/i);f=T?parseInt(T[1]):0}}var t=c.prototype;return t.destroy=function(){},t.resetTimeStamp=function(u){b.logger.log("[mp4-remuxer]: initPTS & initDTS reset"),this._initPTS=this._initDTS=u},t.resetNextTimestamp=function(){b.logger.log("[mp4-remuxer]: reset next timestamp"),this.isVideoContiguous=!1,this.isAudioContiguous=!1},t.resetInitSegment=function(){b.logger.log("[mp4-remuxer]: ISGenerated flag reset"),this.ISGenerated=!1},t.getVideoStartPts=function(u){var a=!1,d=u.reduce(function(v,S){var T=S.pts-v;return T<-4294967296?(a=!0,s(v,S.pts)):T>0?v:S.pts},u[0].pts);return a&&b.logger.debug("PTS rollover detected"),d},t.remux=function(u,a,d,v,S,T,I,k){var B,U,W,H,z,Y,$=S,ee=S,q=u.pid>-1,re=a.pid>-1,ae=a.samples.length,ne=u.samples.length>0,te=I&&ae>0||ae>1,he=(!q||ne)&&(!re||te)||this.ISGenerated||I;if(he){this.ISGenerated||(W=this.generateIS(u,a,S));var ve=this.isVideoContiguous,ie=-1,Te;if(te&&(ie=h(a.samples),!ve&&this.config.forceKeyFrameOnDiscontinuity))if(Y=!0,ie>0){b.logger.warn("[mp4-remuxer]: Dropped "+ie+" out of "+ae+" video samples due to a missing keyframe");var pe=this.getVideoStartPts(a.samples);a.samples=a.samples.slice(ie),a.dropped+=ie,ee+=(a.samples[0].pts-pe)/a.inputTimeScale,Te=ee}else ie===-1&&(b.logger.warn("[mp4-remuxer]: No keyframe found out of "+ae+" video samples"),Y=!1);if(this.ISGenerated){if(ne&&te){var xe=this.getVideoStartPts(a.samples),Me=s(u.samples[0].pts,xe)-xe,Ae=Me/a.inputTimeScale;$+=Math.max(0,Ae),ee+=Math.max(0,-Ae)}if(ne){if(u.samplerate||(b.logger.warn("[mp4-remuxer]: regenerate InitSegment as audio detected"),W=this.generateIS(u,a,S)),U=this.remuxAudio(u,$,this.isAudioContiguous,T,re||te||k===_.PlaylistLevelType.AUDIO?ee:void 0),te){var We=U?U.endPTS-U.startPTS:0;a.inputTimeScale||(b.logger.warn("[mp4-remuxer]: regenerate InitSegment as video detected"),W=this.generateIS(u,a,S)),B=this.remuxVideo(a,ee,ve,We)}}else te&&(B=this.remuxVideo(a,ee,ve,0));B&&(B.firstKeyFrame=ie,B.independent=ie!==-1,B.firstKeyFramePTS=Te)}}return this.ISGenerated&&(d.samples.length&&(z=g(d,S,this._initPTS,this._initDTS)),v.samples.length&&(H=i(v,S,this._initPTS))),{audio:U,video:B,initSegment:W,independent:Y,text:H,id3:z}},t.generateIS=function(u,a,d){var v=u.samples,S=a.samples,T=this.typeSupported,I={},k=!Object(C.isFiniteNumber)(this._initPTS),B="audio/mp4",U,W,H;if(k&&(U=W=1/0),u.config&&v.length){switch(u.timescale=u.samplerate,u.segmentCodec){case"mp3":T.mpeg?(B="audio/mpeg",u.codec=""):T.mp3&&(u.codec="mp3");break}I.audio={id:"audio",container:B,codec:u.codec,initSegment:u.segmentCodec==="mp3"&&T.mpeg?new Uint8Array(0):A.default.initSegment([u]),metadata:{channelCount:u.channelCount}},k&&(H=u.inputTimeScale,U=W=v[0].pts-Math.round(H*d))}if(a.sps&&a.pps&&S.length&&(a.timescale=a.inputTimeScale,I.video={id:"main",container:"video/mp4",codec:a.codec,initSegment:A.default.initSegment([a]),metadata:{width:a.width,height:a.height}},k)){H=a.inputTimeScale;var z=this.getVideoStartPts(S),Y=Math.round(H*d);W=Math.min(W,s(S[0].dts,z)-Y),U=Math.min(U,z-Y)}if(Object.keys(I).length)return this.ISGenerated=!0,k&&(this._initPTS=U,this._initDTS=W),{tracks:I,initPTS:U,timescale:H}},t.remuxVideo=function(u,a,d,v){var S=u.inputTimeScale,T=u.samples,I=[],k=T.length,B=this._initPTS,U=this.nextAvcDts,W=8,H=this.videoSampleDuration,z,Y,$=Number.POSITIVE_INFINITY,ee=Number.NEGATIVE_INFINITY,q=!1;if(!d||U===null){var re=a*S,ae=T[0].pts-s(T[0].dts,T[0].pts);U=re-ae}for(var ne=0;ne<k;ne++){var te=T[ne];te.pts=s(te.pts-B,U),te.dts=s(te.dts-B,U),te.dts<T[ne>0?ne-1:ne].dts&&(q=!0)}q&&T.sort(function(Dt,sr){var Er=Dt.dts-sr.dts,yr=Dt.pts-sr.pts;return Er||yr}),z=T[0].dts,Y=T[T.length-1].dts;var he=Y-z,ve=he?Math.round(he/(k-1)):H||u.inputTimeScale/30;if(d){var ie=z-U,Te=ie>ve,pe=ie<-1;if(Te||pe){Te?b.logger.warn("AVC: "+Object(y.toMsFromMpegTsClock)(ie,!0)+" ms ("+ie+"dts) hole between fragments detected, filling it"):b.logger.warn("AVC: "+Object(y.toMsFromMpegTsClock)(-ie,!0)+" ms ("+ie+"dts) overlapping between fragments detected"),z=U;var xe=T[0].pts-ie;T[0].dts=z,T[0].pts=xe,b.logger.log("Video: First PTS/DTS adjusted: "+Object(y.toMsFromMpegTsClock)(xe,!0)+"/"+Object(y.toMsFromMpegTsClock)(z,!0)+", delta: "+Object(y.toMsFromMpegTsClock)(ie,!0)+" ms")}}z=Math.max(0,z);for(var Me=0,Ae=0,We=0;We<k;We++){for(var Ie=T[We],Be=Ie.units,be=Be.length,Ge=0,He=0;He<be;He++)Ge+=Be[He].data.length;Ae+=Ge,Me+=be,Ie.length=Ge,Ie.dts=Math.max(Ie.dts,z),$=Math.min(Ie.pts,$),ee=Math.max(Ie.pts,ee)}Y=T[k-1].dts;var Qe=Ae+4*Me+8,Ue;try{Ue=new Uint8Array(Qe)}catch{this.observer.emit(w.Events.ERROR,w.Events.ERROR,{type:O.ErrorTypes.MUX_ERROR,details:O.ErrorDetails.REMUX_ALLOC_ERROR,fatal:!1,bytes:Qe,reason:"fail allocating video mdat "+Qe});return}var it=new DataView(Ue.buffer);it.setUint32(0,Qe),Ue.set(A.default.types.mdat,4);for(var we=!1,nt=Number.POSITIVE_INFINITY,Oe=Number.POSITIVE_INFINITY,Ce=Number.NEGATIVE_INFINITY,Ye=Number.NEGATIVE_INFINITY,Re=0;Re<k;Re++){for(var Le=T[Re],at=Le.units,ze=0,pt=0,xt=at.length;pt<xt;pt++){var tt=at[pt],Ut=tt.data,St=tt.data.byteLength;it.setUint32(W,St),W+=4,Ue.set(Ut,W),W+=St,ze+=4+St}var ct=void 0;if(Re<k-1)H=T[Re+1].dts-Le.dts,ct=T[Re+1].pts-Le.pts;else{var Et=this.config,ut=Re>0?Le.dts-T[Re-1].dts:ve;if(ct=Re>0?Le.pts-T[Re-1].pts:ve,Et.stretchShortVideoTrack&&this.nextAudioPts!==null){var Ot=Math.floor(Et.maxBufferHole*S),yt=(v?$+v*S:this.nextAudioPts)-Le.pts;yt>Ot?(H=yt-ut,H<0?H=ut:we=!0,b.logger.log("[mp4-remuxer]: It is approximately "+yt/90+" ms to the next segment; using duration "+H/90+" ms for the last video frame.")):H=ut}else H=ut}var tr=Math.round(Le.pts-Le.dts);nt=Math.min(nt,H),Ce=Math.max(Ce,H),Oe=Math.min(Oe,ct),Ye=Math.max(Ye,ct),I.push(new r(Le.key,H,ze,tr))}if(I.length){if(p){if(p<70){var Nt=I[0].flags;Nt.dependsOn=2,Nt.isNonSync=0}}else if(f&&Ye-Oe<Ce-nt&&ve/Ce<.025&&I[0].cts===0){b.logger.warn("Found irregular gaps in sample duration. Using PTS instead of DTS to determine MP4 sample duration.");for(var Rt=z,rt=0,rr=I.length;rt<rr;rt++){var Kt=Rt+I[rt].duration,ir=Rt+I[rt].cts;if(rt<rr-1){var mr=Kt+I[rt+1].cts;I[rt].duration=mr-ir}else I[rt].duration=rt?I[rt-1].duration:ve;I[rt].cts=0,Rt=Kt}}}console.assert(H!==null,"mp4SampleDuration must be computed"),H=we||!H?ve:H,this.nextAvcDts=U=Y+H,this.videoSampleDuration=H,this.isVideoContiguous=!0;var pr=A.default.moof(u.sequenceNumber++,z,x({},u,{samples:I})),nr="video",ar={data1:pr,data2:Ue,startPTS:$/S,endPTS:(ee+H)/S,startDTS:z/S,endDTS:U/S,type:nr,hasAudio:!1,hasVideo:!0,nb:I.length,dropped:u.dropped};return u.samples=[],u.dropped=0,console.assert(Ue.length,"MDAT length must not be zero"),ar},t.remuxAudio=function(u,a,d,v,S){var T=u.inputTimeScale,I=u.samplerate?u.samplerate:T,k=T/I,B=u.segmentCodec==="aac"?E:m,U=B*k,W=this._initPTS,H=u.segmentCodec==="mp3"&&this.typeSupported.mpeg,z=[],Y=S!==void 0,$=u.samples,ee=H?0:8,q=this.nextAudioPts||-1,re=a*T;if(this.isAudioContiguous=d=d||$.length&&q>0&&(v&&Math.abs(re-q)<9e3||Math.abs(s($[0].pts-W,re)-q)<20*U),$.forEach(function(tt){tt.pts=s(tt.pts-W,re)}),!d||q<0){if($=$.filter(function(tt){return tt.pts>=0}),!$.length)return;S===0?q=0:v&&!Y?q=Math.max(0,re):q=$[0].pts}if(u.segmentCodec==="aac")for(var ae=this.config.maxAudioFramesDrift,ne=0,te=q;ne<$.length;ne++){var he=$[ne],ve=he.pts,ie=ve-te,Te=Math.abs(1e3*ie/T);if(ie<=-ae*U&&Y)ne===0&&(b.logger.warn("Audio frame @ "+(ve/T).toFixed(3)+"s overlaps nextAudioPts by "+Math.round(1e3*ie/T)+" ms."),this.nextAudioPts=q=te=ve);else if(ie>=ae*U&&Te<D&&Y){var pe=Math.round(ie/U);te=ve-pe*U,te<0&&(pe--,te+=U),ne===0&&(this.nextAudioPts=q=te),b.logger.warn("[mp4-remuxer]: Injecting "+pe+" audio frame @ "+(te/T).toFixed(3)+"s due to "+Math.round(1e3*ie/T)+" ms gap.");for(var xe=0;xe<pe;xe++){var Me=Math.max(te,0),Ae=L.default.getSilentFrame(u.manifestCodec||u.codec,u.channelCount);Ae||(b.logger.log("[mp4-remuxer]: Unable to get silent frame for given audio codec; duplicating last frame instead."),Ae=he.unit.subarray()),$.splice(ne,0,{unit:Ae,pts:Me}),te+=U,ne++}}he.pts=te,te+=U}for(var We=null,Ie=null,Be,be=0,Ge=$.length;Ge--;)be+=$[Ge].unit.byteLength;for(var He=0,Qe=$.length;He<Qe;He++){var Ue=$[He],it=Ue.unit,we=Ue.pts;if(Ie!==null){var nt=z[He-1];nt.duration=Math.round((we-Ie)/k)}else if(d&&u.segmentCodec==="aac"&&(we=q),We=we,be>0){be+=ee;try{Be=new Uint8Array(be)}catch{this.observer.emit(w.Events.ERROR,w.Events.ERROR,{type:O.ErrorTypes.MUX_ERROR,details:O.ErrorDetails.REMUX_ALLOC_ERROR,fatal:!1,bytes:be,reason:"fail allocating audio mdat "+be});return}if(!H){var Oe=new DataView(Be.buffer);Oe.setUint32(0,be),Be.set(A.default.types.mdat,4)}}else return;Be.set(it,ee);var Ce=it.byteLength;ee+=Ce,z.push(new r(!0,B,Ce,0)),Ie=we}var Ye=z.length;if(!!Ye){var Re=z[z.length-1];this.nextAudioPts=q=Ie+k*Re.duration;var Le=H?new Uint8Array(0):A.default.moof(u.sequenceNumber++,We/k,x({},u,{samples:z}));u.samples=[];var at=We/T,ze=q/T,pt="audio",xt={data1:Le,data2:Be,startPTS:at,endPTS:ze,startDTS:at,endDTS:ze,type:pt,hasAudio:!0,hasVideo:!1,nb:Ye};return this.isAudioContiguous=!0,console.assert(Be.length,"MDAT length must not be zero"),xt}},t.remuxEmptyAudio=function(u,a,d,v){var S=u.inputTimeScale,T=u.samplerate?u.samplerate:S,I=S/T,k=this.nextAudioPts,B=(k!==null?k:v.startDTS*S)+this._initDTS,U=v.endDTS*S+this._initDTS,W=I*E,H=Math.ceil((U-B)/W),z=L.default.getSilentFrame(u.manifestCodec||u.codec,u.channelCount);if(b.logger.warn("[mp4-remuxer]: remux empty Audio"),!z){b.logger.trace("[mp4-remuxer]: Unable to remuxEmptyAudio since we were unable to get a silent frame for given audio codec");return}for(var Y=[],$=0;$<H;$++){var ee=B+$*W;Y.push({unit:z,pts:ee,dts:ee})}return u.samples=Y,this.remuxAudio(u,a,d,!1)},c}();function s(c,t){var n;if(t===null)return c;for(t<c?n=-8589934592:n=8589934592;Math.abs(c-t)>4294967296;)c+=n;return c}function h(c){for(var t=0;t<c.length;t++)if(c[t].key)return t;return-1}function g(c,t,n,u){var a=c.samples.length;if(!!a){for(var d=c.inputTimeScale,v=0;v<a;v++){var S=c.samples[v];S.pts=s(S.pts-n,t*d)/d,S.dts=s(S.dts-u,t*d)/d}var T=c.samples;return c.samples=[],{samples:T}}}function i(c,t,n){var u=c.samples.length;if(!!u){for(var a=c.inputTimeScale,d=0;d<u;d++){var v=c.samples[d];v.pts=s(v.pts-n,t*a)/a}c.samples.sort(function(T,I){return T.pts-I.pts});var S=c.samples;return c.samples=[],{samples:S}}}var r=function(t,n,u,a){this.size=void 0,this.duration=void 0,this.cts=void 0,this.flags=void 0,this.duration=n,this.size=u,this.cts=a,this.flags=new o(t)},o=function(t){this.isLeading=0,this.isDependedOn=0,this.hasRedundancy=0,this.degradPrio=0,this.dependsOn=1,this.isNonSync=1,this.dependsOn=t?2:1,this.isNonSync=t?0:1}},"./src/remux/passthrough-remuxer.ts":function(j,R,l){"use strict";l.r(R);var C=l("./src/polyfills/number.ts"),L=l("./src/remux/mp4-remuxer.ts"),A=l("./src/utils/mp4-tools.ts"),w=l("./src/loader/fragment.ts"),O=l("./src/utils/logger.ts"),b=function(){function y(){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 x=y.prototype;return x.destroy=function(){},x.resetTimeStamp=function(E){this.initPTS=E,this.lastEndTime=null},x.resetNextTimestamp=function(){this.lastEndTime=null},x.resetInitSegment=function(E,m,p){this.audioCodec=m,this.videoCodec=p,this.generateInitSegment(E),this.emitInitSegment=!0},x.generateInitSegment=function(E){var m=this.audioCodec,p=this.videoCodec;if(!E||!E.byteLength){this.initTracks=void 0,this.initData=void 0;return}var f=this.initData=Object(A.parseInitSegment)(E);m||(m=_(f.audio,w.ElementaryStreamTypes.AUDIO)),p||(p=_(f.video,w.ElementaryStreamTypes.VIDEO));var e={};f.audio&&f.video?e.audiovideo={container:"video/mp4",codec:m+","+p,initSegment:E,id:"main"}:f.audio?e.audio={container:"audio/mp4",codec:m,initSegment:E,id:"audio"}:f.video?e.video={container:"video/mp4",codec:p,initSegment:E,id:"main"}:O.logger.warn("[passthrough-remuxer.ts]: initSegment does not contain moov or trak boxes."),this.initTracks=e},x.remux=function(E,m,p,f,e){var s,h=this.initPTS,g=this.lastEndTime,i={audio:void 0,video:void 0,text:f,id3:p,initSegment:void 0};Object(C.isFiniteNumber)(g)||(g=this.lastEndTime=e||0);var r=m.samples;if(!r||!r.length)return i;var o={initPTS:void 0,timescale:1},c=this.initData;if((!c||!c.length)&&(this.generateInitSegment(r),c=this.initData),!c||!c.length)return O.logger.warn("[passthrough-remuxer.ts]: Failed to generate initSegment."),i;this.emitInitSegment&&(o.tracks=this.initTracks,this.emitInitSegment=!1);var t=Object(A.getStartDTS)(c,r);Object(C.isFiniteNumber)(h)||(this.initPTS=o.initPTS=h=t-e);var n=Object(A.getDuration)(r,c),u=E?t-h:g,a=u+n;Object(A.offsetStartDTS)(c,r,h),n>0?this.lastEndTime=a:(O.logger.warn("Duration parsed from mp4 should be greater than zero"),this.resetNextTimestamp());var d=!!c.audio,v=!!c.video,S="";d&&(S+="audio"),v&&(S+="video");var T={data1:r,startPTS:u,startDTS:u,endPTS:a,endDTS:a,type:S,hasAudio:d,hasVideo:v,nb:1,dropped:0};i.audio=T.type==="audio"?T:void 0,i.video=T.type!=="audio"?T:void 0,i.initSegment=o;var I=(s=this.initPTS)!=null?s:0;return i.id3=Object(L.flushTextTrackMetadataCueSamples)(p,e,I,I),f.samples.length&&(i.text=Object(L.flushTextTrackUserdataCueSamples)(f,e,I)),i},y}();function _(y,x){var D=y==null?void 0:y.codec;return D&&D.length>4?D:D==="hvc1"||D==="hev1"?"hvc1.1.c.L120.90":D==="av01"?"av01.0.04M.08":D==="avc1"||x===w.ElementaryStreamTypes.VIDEO?"avc1.42e01e":"mp4a.40.5"}R.default=b},"./src/task-loop.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"default",function(){return 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 A=L.prototype;return A.destroy=function(){this.onHandlerDestroying(),this.onHandlerDestroyed()},A.onHandlerDestroying=function(){this.clearNextTick(),this.clearInterval()},A.onHandlerDestroyed=function(){},A.hasInterval=function(){return!!this._tickInterval},A.hasNextTick=function(){return!!this._tickTimer},A.setInterval=function(O){return this._tickInterval?!1:(this._tickInterval=self.setInterval(this._boundTick,O),!0)},A.clearInterval=function(){return this._tickInterval?(self.clearInterval(this._tickInterval),this._tickInterval=null,!0):!1},A.clearNextTick=function(){return this._tickTimer?(self.clearTimeout(this._tickTimer),this._tickTimer=null,!0):!1},A.tick=function(){this._tickCallCount++,this._tickCallCount===1&&(this.doTick(),this._tickCallCount>1&&this.tickImmediate(),this._tickCallCount=0)},A.tickImmediate=function(){this.clearNextTick(),this._tickTimer=self.setTimeout(this._boundTick,0)},A.doTick=function(){},L}()},"./src/types/cmcd.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"CMCDVersion",function(){return C}),l.d(R,"CMCDObjectType",function(){return L}),l.d(R,"CMCDStreamingFormat",function(){return A}),l.d(R,"CMCDStreamType",function(){return w});var C=1,L;(function(O){O.MANIFEST="m",O.AUDIO="a",O.VIDEO="v",O.MUXED="av",O.INIT="i",O.CAPTION="c",O.TIMED_TEXT="tt",O.KEY="k",O.OTHER="o"})(L||(L={}));var A;(function(O){O.DASH="d",O.HLS="h",O.SMOOTH="s",O.OTHER="o"})(A||(A={}));var w;(function(O){O.VOD="v",O.LIVE="l"})(w||(w={}))},"./src/types/demuxer.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"MetadataSchema",function(){return 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":function(j,R,l){"use strict";l.r(R),l.d(R,"HlsSkip",function(){return A}),l.d(R,"getSkipValue",function(){return w}),l.d(R,"HlsUrlParameters",function(){return O}),l.d(R,"Level",function(){return b});function C(_,y){for(var x=0;x<y.length;x++){var D=y[x];D.enumerable=D.enumerable||!1,D.configurable=!0,"value"in D&&(D.writable=!0),Object.defineProperty(_,D.key,D)}}function L(_,y,x){return y&&C(_.prototype,y),x&&C(_,x),Object.defineProperty(_,"prototype",{writable:!1}),_}var A;(function(_){_.No="",_.Yes="YES",_.v2="v2"})(A||(A={}));function w(_,y){var x=_.canSkipUntil,D=_.canSkipDateRanges,E=_.endSN,m=y!==void 0?y-E:0;return x&&m<x?D?A.v2:A.Yes:A.No}var O=function(){function _(x,D,E){this.msn=void 0,this.part=void 0,this.skip=void 0,this.msn=x,this.part=D,this.skip=E}var y=_.prototype;return y.addDirectives=function(D){var E=new self.URL(D);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.toString()},_}(),b=function(){function _(y){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=[y.url],this.attrs=y.attrs,this.bitrate=y.bitrate,y.details&&(this.details=y.details),this.id=y.id||0,this.name=y.name,this.width=y.width||0,this.height=y.height||0,this.audioCodec=y.audioCodec,this.videoCodec=y.videoCodec,this.unknownCodecs=y.unknownCodecs,this.codecSet=[y.videoCodec,y.audioCodec].filter(function(x){return x}).join(",").replace(/\.[^.,]+/g,"")}return L(_,[{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(x){var D=x%this.url.length;this._urlId!==D&&(this.details=void 0,this._urlId=D)}}]),_}()},"./src/types/loader.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"PlaylistContextType",function(){return C}),l.d(R,"PlaylistLevelType",function(){return L});var C;(function(A){A.MANIFEST="manifest",A.LEVEL="level",A.AUDIO_TRACK="audioTrack",A.SUBTITLE_TRACK="subtitleTrack"})(C||(C={}));var L;(function(A){A.MAIN="main",A.AUDIO="audio",A.SUBTITLE="subtitle"})(L||(L={}))},"./src/types/transmuxer.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"ChunkMetadata",function(){return C});var C=function(w,O,b,_,y,x){_===void 0&&(_=0),y===void 0&&(y=-1),x===void 0&&(x=!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=w,this.sn=O,this.id=b,this.size=_,this.part=y,this.partial=x};function L(){return{start:0,executeStart:0,executeEnd:0,end:0}}},"./src/utils/attr-list.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"AttrList",function(){return A});var C=/^(\d+)x(\d+)$/,L=/\s*(.+?)\s*=((?:\".*?\")|.*?)(?:,|$)/g,A=function(){function w(b){typeof b=="string"&&(b=w.parseAttrList(b));for(var _ in b)b.hasOwnProperty(_)&&(this[_]=b[_])}var O=w.prototype;return O.decimalInteger=function(_){var y=parseInt(this[_],10);return y>Number.MAX_SAFE_INTEGER?1/0:y},O.hexadecimalInteger=function(_){if(this[_]){var y=(this[_]||"0x").slice(2);y=(y.length&1?"0":"")+y;for(var x=new Uint8Array(y.length/2),D=0;D<y.length/2;D++)x[D]=parseInt(y.slice(D*2,D*2+2),16);return x}else return null},O.hexadecimalIntegerAsNumber=function(_){var y=parseInt(this[_],16);return y>Number.MAX_SAFE_INTEGER?1/0:y},O.decimalFloatingPoint=function(_){return parseFloat(this[_])},O.optionalFloat=function(_,y){var x=this[_];return x?parseFloat(x):y},O.enumeratedString=function(_){return this[_]},O.bool=function(_){return this[_]==="YES"},O.decimalResolution=function(_){var y=C.exec(this[_]);if(y!==null)return{width:parseInt(y[1],10),height:parseInt(y[2],10)}},w.parseAttrList=function(_){var y,x={},D='"';for(L.lastIndex=0;(y=L.exec(_))!==null;){var E=y[2];E.indexOf(D)===0&&E.lastIndexOf(D)===E.length-1&&(E=E.slice(1,-1)),x[y[1]]=E}return x},w}()},"./src/utils/binary-search.ts":function(j,R,l){"use strict";l.r(R);var C={search:function(A,w){for(var O=0,b=A.length-1,_=null,y=null;O<=b;){_=(O+b)/2|0,y=A[_];var x=w(y);if(x>0)O=_+1;else if(x<0)b=_-1;else return y}return null}};R.default=C},"./src/utils/buffer-helper.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"BufferHelper",function(){return A});var C=l("./src/utils/logger.ts"),L={length:0,start:function(){return 0},end:function(){return 0}},A=function(){function w(){}return w.isBuffered=function(b,_){try{if(b){for(var y=w.getBuffered(b),x=0;x<y.length;x++)if(_>=y.start(x)&&_<=y.end(x))return!0}}catch{}return!1},w.bufferInfo=function(b,_,y){try{if(b){var x=w.getBuffered(b),D=[],E;for(E=0;E<x.length;E++)D.push({start:x.start(E),end:x.end(E)});return this.bufferedInfo(D,_,y)}}catch{}return{len:0,start:_,end:_,nextStart:void 0}},w.bufferedInfo=function(b,_,y){_=Math.max(0,_),b.sort(function(r,o){var c=r.start-o.start;return c||o.end-r.end});var x=[];if(y)for(var D=0;D<b.length;D++){var E=x.length;if(E){var m=x[E-1].end;b[D].start-m<y?b[D].end>m&&(x[E-1].end=b[D].end):x.push(b[D])}else x.push(b[D])}else x=b;for(var p=0,f,e=_,s=_,h=0;h<x.length;h++){var g=x[h].start,i=x[h].end;if(_+y>=g&&_<i)e=g,s=i,p=s-_;else if(_+y<g){f=g;break}}return{len:p,start:e||0,end:s||0,nextStart:f}},w.getBuffered=function(b){try{return b.buffered}catch(_){return C.logger.log("failed to get media.buffered",_),L}},w}()},"./src/utils/cea-608-parser.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"Row",function(){return s}),l.d(R,"CaptionScreen",function(){return h});var C=l("./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},A=function(n){var u=n;return L.hasOwnProperty(n)&&(u=L[n]),String.fromCharCode(u)},w=15,O=100,b={17:1,18:3,21:5,22:7,23:9,16:11,19:12,20:14},_={17:2,18:4,21:6,22:8,23:10,19:13,20:15},y={25:1,26:3,29:5,30:7,31:9,24:11,27:12,28:14},x={25:2,26:4,29:6,30:8,31:10,27:13,28:15},D=["white","green","blue","cyan","red","yellow","magenta","black","transparent"],E;(function(t){t[t.ERROR=0]="ERROR",t[t.TEXT=1]="TEXT",t[t.WARNING=2]="WARNING",t[t.INFO=2]="INFO",t[t.DEBUG=3]="DEBUG",t[t.DATA=3]="DATA"})(E||(E={}));var m=function(){function t(){this.time=null,this.verboseLevel=E.ERROR}var n=t.prototype;return n.log=function(a,d){this.verboseLevel>=a&&C.logger.log(this.time+" ["+a+"] "+d)},t}(),p=function(n){for(var u=[],a=0;a<n.length;a++)u.push(n[a].toString(16));return u},f=function(){function t(u,a,d,v,S){this.foreground=void 0,this.underline=void 0,this.italics=void 0,this.background=void 0,this.flash=void 0,this.foreground=u||"white",this.underline=a||!1,this.italics=d||!1,this.background=v||"black",this.flash=S||!1}var n=t.prototype;return n.reset=function(){this.foreground="white",this.underline=!1,this.italics=!1,this.background="black",this.flash=!1},n.setStyles=function(a){for(var d=["foreground","underline","italics","background","flash"],v=0;v<d.length;v++){var S=d[v];a.hasOwnProperty(S)&&(this[S]=a[S])}},n.isDefault=function(){return this.foreground==="white"&&!this.underline&&!this.italics&&this.background==="black"&&!this.flash},n.equals=function(a){return this.foreground===a.foreground&&this.underline===a.underline&&this.italics===a.italics&&this.background===a.background&&this.flash===a.flash},n.copy=function(a){this.foreground=a.foreground,this.underline=a.underline,this.italics=a.italics,this.background=a.background,this.flash=a.flash},n.toString=function(){return"color="+this.foreground+", underline="+this.underline+", italics="+this.italics+", background="+this.background+", flash="+this.flash},t}(),e=function(){function t(u,a,d,v,S,T){this.uchar=void 0,this.penState=void 0,this.uchar=u||" ",this.penState=new f(a,d,v,S,T)}var n=t.prototype;return n.reset=function(){this.uchar=" ",this.penState.reset()},n.setChar=function(a,d){this.uchar=a,this.penState.copy(d)},n.setPenState=function(a){this.penState.copy(a)},n.equals=function(a){return this.uchar===a.uchar&&this.penState.equals(a.penState)},n.copy=function(a){this.uchar=a.uchar,this.penState.copy(a.penState)},n.isEmpty=function(){return this.uchar===" "&&this.penState.isDefault()},t}(),s=function(){function t(u){this.chars=void 0,this.pos=void 0,this.currPenState=void 0,this.cueStartTime=void 0,this.logger=void 0,this.chars=[];for(var a=0;a<O;a++)this.chars.push(new e);this.logger=u,this.pos=0,this.currPenState=new f}var n=t.prototype;return n.equals=function(a){for(var d=!0,v=0;v<O;v++)if(!this.chars[v].equals(a.chars[v])){d=!1;break}return d},n.copy=function(a){for(var d=0;d<O;d++)this.chars[d].copy(a.chars[d])},n.isEmpty=function(){for(var a=!0,d=0;d<O;d++)if(!this.chars[d].isEmpty()){a=!1;break}return a},n.setCursor=function(a){this.pos!==a&&(this.pos=a),this.pos<0?(this.logger.log(E.DEBUG,"Negative cursor position "+this.pos),this.pos=0):this.pos>O&&(this.logger.log(E.DEBUG,"Too large cursor position "+this.pos),this.pos=O)},n.moveCursor=function(a){var d=this.pos+a;if(a>1)for(var v=this.pos+1;v<d+1;v++)this.chars[v].setPenState(this.currPenState);this.setCursor(d)},n.backSpace=function(){this.moveCursor(-1),this.chars[this.pos].setChar(" ",this.currPenState)},n.insertChar=function(a){a>=144&&this.backSpace();var d=A(a);if(this.pos>=O){this.logger.log(E.ERROR,"Cannot insert "+a.toString(16)+" ("+d+") at position "+this.pos+". Skipping it!");return}this.chars[this.pos].setChar(d,this.currPenState),this.moveCursor(1)},n.clearFromPos=function(a){var d;for(d=a;d<O;d++)this.chars[d].reset()},n.clear=function(){this.clearFromPos(0),this.pos=0,this.currPenState.reset()},n.clearToEndOfRow=function(){this.clearFromPos(this.pos)},n.getTextString=function(){for(var a=[],d=!0,v=0;v<O;v++){var S=this.chars[v].uchar;S!==" "&&(d=!1),a.push(S)}return d?"":a.join("")},n.setPenStyles=function(a){this.currPenState.setStyles(a);var d=this.chars[this.pos];d.setPenState(this.currPenState)},t}(),h=function(){function t(u){this.rows=void 0,this.currRow=void 0,this.nrRollUpRows=void 0,this.lastOutputScreen=void 0,this.logger=void 0,this.rows=[];for(var a=0;a<w;a++)this.rows.push(new s(u));this.logger=u,this.currRow=w-1,this.nrRollUpRows=null,this.lastOutputScreen=null,this.reset()}var n=t.prototype;return n.reset=function(){for(var a=0;a<w;a++)this.rows[a].clear();this.currRow=w-1},n.equals=function(a){for(var d=!0,v=0;v<w;v++)if(!this.rows[v].equals(a.rows[v])){d=!1;break}return d},n.copy=function(a){for(var d=0;d<w;d++)this.rows[d].copy(a.rows[d])},n.isEmpty=function(){for(var a=!0,d=0;d<w;d++)if(!this.rows[d].isEmpty()){a=!1;break}return a},n.backSpace=function(){var a=this.rows[this.currRow];a.backSpace()},n.clearToEndOfRow=function(){var a=this.rows[this.currRow];a.clearToEndOfRow()},n.insertChar=function(a){var d=this.rows[this.currRow];d.insertChar(a)},n.setPen=function(a){var d=this.rows[this.currRow];d.setPenStyles(a)},n.moveCursor=function(a){var d=this.rows[this.currRow];d.moveCursor(a)},n.setCursor=function(a){this.logger.log(E.INFO,"setCursor: "+a);var d=this.rows[this.currRow];d.setCursor(a)},n.setPAC=function(a){this.logger.log(E.INFO,"pacData = "+JSON.stringify(a));var d=a.row-1;if(this.nrRollUpRows&&d<this.nrRollUpRows-1&&(d=this.nrRollUpRows-1),this.nrRollUpRows&&this.currRow!==d){for(var v=0;v<w;v++)this.rows[v].clear();var S=this.currRow+1-this.nrRollUpRows,T=this.lastOutputScreen;if(T){var I=T.rows[S].cueStartTime,k=this.logger.time;if(I&&k!==null&&I<k)for(var B=0;B<this.nrRollUpRows;B++)this.rows[d-this.nrRollUpRows+B+1].copy(T.rows[S+B])}}this.currRow=d;var U=this.rows[this.currRow];if(a.indent!==null){var W=a.indent,H=Math.max(W-1,0);U.setCursor(a.indent),a.color=U.chars[H].penState.foreground}var z={foreground:a.color,underline:a.underline,italics:a.italics,background:"black",flash:!1};this.setPen(z)},n.setBkgData=function(a){this.logger.log(E.INFO,"bkgData = "+JSON.stringify(a)),this.backSpace(),this.setPen(a),this.insertChar(32)},n.setRollUpRows=function(a){this.nrRollUpRows=a},n.rollUp=function(){if(this.nrRollUpRows===null){this.logger.log(E.DEBUG,"roll_up but nrRollUpRows not set yet");return}this.logger.log(E.TEXT,this.getDisplayText());var a=this.currRow+1-this.nrRollUpRows,d=this.rows.splice(a,1)[0];d.clear(),this.rows.splice(this.currRow,0,d),this.logger.log(E.INFO,"Rolling up")},n.getDisplayText=function(a){a=a||!1;for(var d=[],v="",S=-1,T=0;T<w;T++){var I=this.rows[T].getTextString();I&&(S=T+1,a?d.push("Row "+S+": '"+I+"'"):d.push(I.trim()))}return d.length>0&&(a?v="["+d.join(" | ")+"]":v=d.join(`
21
- `)),v},n.getTextAndFormat=function(){return this.rows},t}(),g=function(){function t(u,a,d){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=u,this.outputFilter=a,this.mode=null,this.verbose=0,this.displayedMemory=new h(d),this.nonDisplayedMemory=new h(d),this.lastOutputScreen=new h(d),this.currRollUpRow=this.displayedMemory.rows[w-1],this.writeScreen=this.displayedMemory,this.mode=null,this.cueStartTime=null,this.logger=d}var n=t.prototype;return n.reset=function(){this.mode=null,this.displayedMemory.reset(),this.nonDisplayedMemory.reset(),this.lastOutputScreen.reset(),this.outputFilter.reset(),this.currRollUpRow=this.displayedMemory.rows[w-1],this.writeScreen=this.displayedMemory,this.mode=null,this.cueStartTime=null},n.getHandler=function(){return this.outputFilter},n.setHandler=function(a){this.outputFilter=a},n.setPAC=function(a){this.writeScreen.setPAC(a)},n.setBkgData=function(a){this.writeScreen.setBkgData(a)},n.setMode=function(a){a!==this.mode&&(this.mode=a,this.logger.log(E.INFO,"MODE="+a),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=a)},n.insertChars=function(a){for(var d=0;d<a.length;d++)this.writeScreen.insertChar(a[d]);var v=this.writeScreen===this.displayedMemory?"DISP":"NON_DISP";this.logger.log(E.INFO,v+": "+this.writeScreen.getDisplayText(!0)),(this.mode==="MODE_PAINT-ON"||this.mode==="MODE_ROLL-UP")&&(this.logger.log(E.TEXT,"DISPLAYED: "+this.displayedMemory.getDisplayText(!0)),this.outputDataUpdate())},n.ccRCL=function(){this.logger.log(E.INFO,"RCL - Resume Caption Loading"),this.setMode("MODE_POP-ON")},n.ccBS=function(){this.logger.log(E.INFO,"BS - BackSpace"),this.mode!=="MODE_TEXT"&&(this.writeScreen.backSpace(),this.writeScreen===this.displayedMemory&&this.outputDataUpdate())},n.ccAOF=function(){},n.ccAON=function(){},n.ccDER=function(){this.logger.log(E.INFO,"DER- Delete to End of Row"),this.writeScreen.clearToEndOfRow(),this.outputDataUpdate()},n.ccRU=function(a){this.logger.log(E.INFO,"RU("+a+") - Roll Up"),this.writeScreen=this.displayedMemory,this.setMode("MODE_ROLL-UP"),this.writeScreen.setRollUpRows(a)},n.ccFON=function(){this.logger.log(E.INFO,"FON - Flash On"),this.writeScreen.setPen({flash:!0})},n.ccRDC=function(){this.logger.log(E.INFO,"RDC - Resume Direct Captioning"),this.setMode("MODE_PAINT-ON")},n.ccTR=function(){this.logger.log(E.INFO,"TR"),this.setMode("MODE_TEXT")},n.ccRTD=function(){this.logger.log(E.INFO,"RTD"),this.setMode("MODE_TEXT")},n.ccEDM=function(){this.logger.log(E.INFO,"EDM - Erase Displayed Memory"),this.displayedMemory.reset(),this.outputDataUpdate(!0)},n.ccCR=function(){this.logger.log(E.INFO,"CR - Carriage Return"),this.writeScreen.rollUp(),this.outputDataUpdate(!0)},n.ccENM=function(){this.logger.log(E.INFO,"ENM - Erase Non-displayed Memory"),this.nonDisplayedMemory.reset()},n.ccEOC=function(){if(this.logger.log(E.INFO,"EOC - End Of Caption"),this.mode==="MODE_POP-ON"){var a=this.displayedMemory;this.displayedMemory=this.nonDisplayedMemory,this.nonDisplayedMemory=a,this.writeScreen=this.nonDisplayedMemory,this.logger.log(E.TEXT,"DISP: "+this.displayedMemory.getDisplayText())}this.outputDataUpdate(!0)},n.ccTO=function(a){this.logger.log(E.INFO,"TO("+a+") - Tab Offset"),this.writeScreen.moveCursor(a)},n.ccMIDROW=function(a){var d={flash:!1};if(d.underline=a%2===1,d.italics=a>=46,d.italics)d.foreground="white";else{var v=Math.floor(a/2)-16,S=["white","green","blue","cyan","red","yellow","magenta"];d.foreground=S[v]}this.logger.log(E.INFO,"MIDROW: "+JSON.stringify(d)),this.writeScreen.setPen(d)},n.outputDataUpdate=function(a){a===void 0&&(a=!1);var d=this.logger.time;d!==null&&this.outputFilter&&(this.cueStartTime===null&&!this.displayedMemory.isEmpty()?this.cueStartTime=d:this.displayedMemory.equals(this.lastOutputScreen)||(this.outputFilter.newCue(this.cueStartTime,d,this.lastOutputScreen),a&&this.outputFilter.dispatchCue&&this.outputFilter.dispatchCue(),this.cueStartTime=this.displayedMemory.isEmpty()?null:d),this.lastOutputScreen.copy(this.displayedMemory))},n.cueSplitAtTime=function(a){this.outputFilter&&(this.displayedMemory.isEmpty()||(this.outputFilter.newCue&&this.outputFilter.newCue(this.cueStartTime,a,this.displayedMemory),this.cueStartTime=a))},t}(),i=function(){function t(u,a,d){this.channels=void 0,this.currentChannel=0,this.cmdHistory=void 0,this.logger=void 0;var v=new m;this.channels=[null,new g(u,a,v),new g(u+1,d,v)],this.cmdHistory=c(),this.logger=v}var n=t.prototype;return n.getHandler=function(a){return this.channels[a].getHandler()},n.setHandler=function(a,d){this.channels[a].setHandler(d)},n.addData=function(a,d){var v,S,T,I=!1;this.logger.time=a;for(var k=0;k<d.length;k+=2)if(S=d[k]&127,T=d[k+1]&127,!(S===0&&T===0)){if(this.logger.log(E.DATA,"["+p([d[k],d[k+1]])+"] -> ("+p([S,T])+")"),v=this.parseCmd(S,T),v||(v=this.parseMidrow(S,T)),v||(v=this.parsePAC(S,T)),v||(v=this.parseBackgroundAttributes(S,T)),!v&&(I=this.parseChars(S,T),I)){var B=this.currentChannel;if(B&&B>0){var U=this.channels[B];U.insertChars(I)}else this.logger.log(E.WARNING,"No channel found yet. TEXT-MODE?")}!v&&!I&&this.logger.log(E.WARNING,"Couldn't parse cleaned data "+p([S,T])+" orig: "+p([d[k],d[k+1]]))}},n.parseCmd=function(a,d){var v=this.cmdHistory,S=(a===20||a===28||a===21||a===29)&&d>=32&&d<=47,T=(a===23||a===31)&&d>=33&&d<=35;if(!(S||T))return!1;if(o(a,d,v))return r(null,null,v),this.logger.log(E.DEBUG,"Repeated command ("+p([a,d])+") is dropped"),!0;var I=a===20||a===21||a===23?1:2,k=this.channels[I];return a===20||a===21||a===28||a===29?d===32?k.ccRCL():d===33?k.ccBS():d===34?k.ccAOF():d===35?k.ccAON():d===36?k.ccDER():d===37?k.ccRU(2):d===38?k.ccRU(3):d===39?k.ccRU(4):d===40?k.ccFON():d===41?k.ccRDC():d===42?k.ccTR():d===43?k.ccRTD():d===44?k.ccEDM():d===45?k.ccCR():d===46?k.ccENM():d===47&&k.ccEOC():k.ccTO(d-32),r(a,d,v),this.currentChannel=I,!0},n.parseMidrow=function(a,d){var v=0;if((a===17||a===25)&&d>=32&&d<=47){if(a===17?v=1:v=2,v!==this.currentChannel)return this.logger.log(E.ERROR,"Mismatch channel in midrow parsing"),!1;var S=this.channels[v];return S?(S.ccMIDROW(d),this.logger.log(E.DEBUG,"MIDROW ("+p([a,d])+")"),!0):!1}return!1},n.parsePAC=function(a,d){var v,S=this.cmdHistory,T=(a>=17&&a<=23||a>=25&&a<=31)&&d>=64&&d<=127,I=(a===16||a===24)&&d>=64&&d<=95;if(!(T||I))return!1;if(o(a,d,S))return r(null,null,S),!0;var k=a<=23?1:2;d>=64&&d<=95?v=k===1?b[a]:y[a]:v=k===1?_[a]:x[a];var B=this.channels[k];return B?(B.setPAC(this.interpretPAC(v,d)),r(a,d,S),this.currentChannel=k,!0):!1},n.interpretPAC=function(a,d){var v,S={color:null,italics:!1,indent:null,underline:!1,row:a};return d>95?v=d-96:v=d-64,S.underline=(v&1)===1,v<=13?S.color=["white","green","blue","cyan","red","yellow","magenta","white"][Math.floor(v/2)]:v<=15?(S.italics=!0,S.color="white"):S.indent=Math.floor((v-16)/2)*4,S},n.parseChars=function(a,d){var v,S=null,T=null;if(a>=25?(v=2,T=a-8):(v=1,T=a),T>=17&&T<=19){var I;T===17?I=d+80:T===18?I=d+112:I=d+144,this.logger.log(E.INFO,"Special char '"+A(I)+"' in channel "+v),S=[I]}else a>=32&&a<=127&&(S=d===0?[a]:[a,d]);if(S){var k=p(S);this.logger.log(E.DEBUG,"Char codes = "+k.join(",")),r(a,d,this.cmdHistory)}return S},n.parseBackgroundAttributes=function(a,d){var v=(a===16||a===24)&&d>=32&&d<=47,S=(a===23||a===31)&&d>=45&&d<=47;if(!(v||S))return!1;var T,I={};a===16||a===24?(T=Math.floor((d-32)/2),I.background=D[T],d%2===1&&(I.background=I.background+"_semi")):d===45?I.background="transparent":(I.foreground="black",d===47&&(I.underline=!0));var k=a<=23?1:2,B=this.channels[k];return B.setBkgData(I),r(a,d,this.cmdHistory),!0},n.reset=function(){for(var a=0;a<Object.keys(this.channels).length;a++){var d=this.channels[a];d&&d.reset()}this.cmdHistory=c()},n.cueSplitAtTime=function(a){for(var d=0;d<this.channels.length;d++){var v=this.channels[d];v&&v.cueSplitAtTime(a)}},t}();function r(t,n,u){u.a=t,u.b=n}function o(t,n,u){return u.a===t&&u.b===n}function c(){return{a:null,b:null}}R.default=i},"./src/utils/codecs.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"isCodecType",function(){return L}),l.d(R,"isCodecSupportedInMp4",function(){return A});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,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,dvav:!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(w,O){var b=C[O];return!!b&&b[w.slice(0,4)]===!0}function A(w,O){return MediaSource.isTypeSupported((O||"video")+'/mp4;codecs="'+w+'"')}},"./src/utils/cues.ts":function(j,R,l){"use strict";l.r(R);var C=l("./src/utils/vttparser.ts"),L=l("./src/utils/webvtt-parser.ts"),A=l("./src/utils/texttrack-utils.ts"),w=/\s/,O={newCue:function(_,y,x,D){for(var E=[],m,p,f,e,s,h=self.VTTCue||self.TextTrackCue,g=0;g<D.rows.length;g++)if(m=D.rows[g],f=!0,e=0,s="",!m.isEmpty()){for(var i=0;i<m.chars.length;i++)w.test(m.chars[i].uchar)&&f?e++:(s+=m.chars[i].uchar,f=!1);m.cueStartTime=y,y===x&&(x+=1e-4),e>=16?e--:e++;var r=Object(C.fixLineBreaks)(s.trim()),o=Object(L.generateCueId)(y,x,r);(!_||!_.cues||!_.cues.getCueById(o))&&(p=new h(y,x,r),p.id=o,p.line=g+1,p.align="left",p.position=10+Math.min(80,Math.floor(e*8/32)*10),E.push(p))}return _&&E.length&&(E.sort(function(c,t){return c.line==="auto"||t.line==="auto"?0:c.line>8&&t.line>8?t.line-c.line:c.line-t.line}),E.forEach(function(c){return Object(A.addCueToTrack)(_,c)})),E}};R.default=O},"./src/utils/discontinuities.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"findFirstFragWithCC",function(){return w}),l.d(R,"shouldAlignOnDiscontinuities",function(){return O}),l.d(R,"findDiscontinuousReferenceFrag",function(){return b}),l.d(R,"adjustSlidingStart",function(){return y}),l.d(R,"alignStream",function(){return x}),l.d(R,"alignPDT",function(){return E}),l.d(R,"alignFragmentByPDTDelta",function(){return m}),l.d(R,"alignMediaPlaylistByPDT",function(){return p});var C=l("./src/polyfills/number.ts"),L=l("./src/utils/logger.ts"),A=l("./src/controller/level-helper.ts");function w(f,e){for(var s=null,h=0,g=f.length;h<g;h++){var i=f[h];if(i&&i.cc===e){s=i;break}}return s}function O(f,e,s){return!!(e.details&&(s.endCC>s.startCC||f&&f.cc<s.startCC))}function b(f,e){var s=f.fragments,h=e.fragments;if(!h.length||!s.length){L.logger.log("No fragments to align");return}var g=w(s,h[0].cc);if(!g||g&&!g.startPTS){L.logger.log("No frag in previous level to align on");return}return g}function _(f,e){if(f){var s=f.start+e;f.start=f.startPTS=s,f.endPTS=s+f.duration}}function y(f,e){for(var s=e.fragments,h=0,g=s.length;h<g;h++)_(s[h],f);e.fragmentHint&&_(e.fragmentHint,f),e.alignedSliding=!0}function x(f,e,s){!e||(D(f,s,e),!s.alignedSliding&&e.details&&E(s,e.details),!s.alignedSliding&&e.details&&!s.skippedSegments&&Object(A.adjustSliding)(e.details,s))}function D(f,e,s){if(O(f,s,e)){var h=b(s.details,e);h&&Object(C.isFiniteNumber)(h.start)&&(L.logger.log("Adjusting PTS using last level due to CC increase within current level "+e.url),y(h.start,e))}}function E(f,e){if(!(!e.fragments.length||!f.hasProgramDateTime||!e.hasProgramDateTime)){var s=e.fragments[0].programDateTime,h=f.fragments[0].programDateTime,g=(h-s)/1e3+e.fragments[0].start;g&&Object(C.isFiniteNumber)(g)&&(L.logger.log("Adjusting PTS using programDateTime delta "+(h-s)+"ms, sliding:"+g.toFixed(3)+" "+f.url+" "),y(g,f))}}function m(f,e){var s=f.programDateTime;if(!!s){var h=(s-e)/1e3;f.start=f.startPTS=h,f.endPTS=h+f.duration}}function p(f,e){if(!(!e.fragments.length||!f.hasProgramDateTime||!e.hasProgramDateTime)){var s=e.fragments[0].programDateTime,h=e.fragments[0].start,g=s-h*1e3;f.fragments.forEach(function(i){m(i,g)}),f.fragmentHint&&m(f.fragmentHint,g),f.alignedSliding=!0}}},"./src/utils/ewma-bandwidth-estimator.ts":function(j,R,l){"use strict";l.r(R);var C=l("./src/utils/ewma.ts"),L=function(){function A(O,b,_){this.defaultEstimate_=void 0,this.minWeight_=void 0,this.minDelayMs_=void 0,this.slow_=void 0,this.fast_=void 0,this.defaultEstimate_=_,this.minWeight_=.001,this.minDelayMs_=50,this.slow_=new C.default(O),this.fast_=new C.default(b)}var w=A.prototype;return w.update=function(b,_){var y=this.slow_,x=this.fast_;this.slow_.halfLife!==b&&(this.slow_=new C.default(b,y.getEstimate(),y.getTotalWeight())),this.fast_.halfLife!==_&&(this.fast_=new C.default(_,x.getEstimate(),x.getTotalWeight()))},w.sample=function(b,_){b=Math.max(b,this.minDelayMs_);var y=8*_,x=b/1e3,D=y/x;this.fast_.sample(x,D),this.slow_.sample(x,D)},w.canEstimate=function(){var b=this.fast_;return b&&b.getTotalWeight()>=this.minWeight_},w.getEstimate=function(){return this.canEstimate()?Math.min(this.fast_.getEstimate(),this.slow_.getEstimate()):this.defaultEstimate_},w.destroy=function(){},A}();R.default=L},"./src/utils/ewma.ts":function(j,R,l){"use strict";l.r(R);var C=function(){function L(w,O,b){O===void 0&&(O=0),b===void 0&&(b=0),this.halfLife=void 0,this.alpha_=void 0,this.estimate_=void 0,this.totalWeight_=void 0,this.halfLife=w,this.alpha_=w?Math.exp(Math.log(.5)/w):0,this.estimate_=O,this.totalWeight_=b}var A=L.prototype;return A.sample=function(O,b){var _=Math.pow(this.alpha_,O);this.estimate_=b*(1-_)+_*this.estimate_,this.totalWeight_+=O},A.getTotalWeight=function(){return this.totalWeight_},A.getEstimate=function(){if(this.alpha_){var O=1-Math.pow(this.alpha_,this.totalWeight_);if(O)return this.estimate_/O}return this.estimate_},L}();R.default=C},"./src/utils/fetch-loader.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"fetchSupported",function(){return m});var C=l("./src/polyfills/number.ts"),L=l("./src/loader/load-stats.ts"),A=l("./src/demux/chunk-cache.ts");function w(h,g){h.prototype=Object.create(g.prototype),h.prototype.constructor=h,x(h,g)}function O(h){var g=typeof Map=="function"?new Map:void 0;return O=function(r){if(r===null||!y(r))return r;if(typeof r!="function")throw new TypeError("Super expression must either be null or a function");if(typeof g!="undefined"){if(g.has(r))return g.get(r);g.set(r,o)}function o(){return b(r,arguments,D(this).constructor)}return o.prototype=Object.create(r.prototype,{constructor:{value:o,enumerable:!1,writable:!0,configurable:!0}}),x(o,r)},O(h)}function b(h,g,i){return _()?b=Reflect.construct.bind():b=function(o,c,t){var n=[null];n.push.apply(n,c);var u=Function.bind.apply(o,n),a=new u;return t&&x(a,t.prototype),a},b.apply(null,arguments)}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}}function y(h){return Function.toString.call(h).indexOf("[native code]")!==-1}function x(h,g){return x=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,o){return r.__proto__=o,r},x(h,g)}function D(h){return D=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(i){return i.__proto__||Object.getPrototypeOf(i)},D(h)}function E(){return E=Object.assign?Object.assign.bind():function(h){for(var g=1;g<arguments.length;g++){var i=arguments[g];for(var r in i)Object.prototype.hasOwnProperty.call(i,r)&&(h[r]=i[r])}return h},E.apply(this,arguments)}function m(){if(self.fetch&&self.AbortController&&self.ReadableStream&&self.Request)try{return new self.ReadableStream({}),!0}catch{}return!1}var p=function(){function h(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||e,this.controller=new self.AbortController,this.stats=new L.LoadStats}var g=h.prototype;return g.destroy=function(){this.loader=this.callbacks=null,this.abortInternal()},g.abortInternal=function(){var r=this.response;(!r||!r.ok)&&(this.stats.aborted=!0,this.controller.abort())},g.abort=function(){var r;this.abortInternal(),(r=this.callbacks)!==null&&r!==void 0&&r.onAbort&&this.callbacks.onAbort(this.stats,this.context,this.response)},g.load=function(r,o,c){var t=this,n=this.stats;if(n.loading.start)throw new Error("Loader can only be used once.");n.loading.start=self.performance.now();var u=f(r,this.controller.signal),a=c.onProgress,d=r.responseType==="arraybuffer",v=d?"byteLength":"length";this.context=r,this.config=o,this.callbacks=c,this.request=this.fetchSetup(r,u),self.clearTimeout(this.requestTimeout),this.requestTimeout=self.setTimeout(function(){t.abortInternal(),c.onTimeout(n,r,t.response)},o.timeout),self.fetch(this.request).then(function(S){if(t.response=t.loader=S,!S.ok){var T=S.status,I=S.statusText;throw new s(I||"fetch, bad network response",T,S)}return n.loading.first=Math.max(self.performance.now(),n.loading.start),n.total=parseInt(S.headers.get("Content-Length")||"0"),a&&Object(C.isFiniteNumber)(o.highWaterMark)?t.loadProgressively(S,n,r,o.highWaterMark,a):d?S.arrayBuffer():S.text()}).then(function(S){var T=t.response;self.clearTimeout(t.requestTimeout),n.loading.end=Math.max(self.performance.now(),n.loading.first),n.loaded=n.total=S[v];var I={url:T.url,data:S};a&&!Object(C.isFiniteNumber)(o.highWaterMark)&&a(n,r,S,T),c.onSuccess(I,n,r,T)}).catch(function(S){if(self.clearTimeout(t.requestTimeout),!n.aborted){var T=S&&S.code||0,I=S?S.message:null;c.onError({code:T,text:I},r,S?S.details:null)}})},g.getCacheAge=function(){var r=null;if(this.response){var o=this.response.headers.get("age");r=o?parseFloat(o):null}return r},g.loadProgressively=function(r,o,c,t,n){t===void 0&&(t=0);var u=new A.default,a=r.body.getReader(),d=function v(){return a.read().then(function(S){if(S.done)return u.dataLength&&n(o,c,u.flush(),r),Promise.resolve(new ArrayBuffer(0));var T=S.value,I=T.length;return o.loaded+=I,I<t||u.dataLength?(u.push(T),u.dataLength>=t&&n(o,c,u.flush(),r)):n(o,c,T,r),v()}).catch(function(){return Promise.reject()})};return d()},h}();function f(h,g){var i={method:"GET",mode:"cors",credentials:"same-origin",signal:g,headers:new self.Headers(E({},h.headers))};return h.rangeEnd&&i.headers.set("Range","bytes="+h.rangeStart+"-"+String(h.rangeEnd-1)),i}function e(h,g){return new self.Request(h.url,g)}var s=function(h){w(g,h);function g(i,r,o){var c;return c=h.call(this,i)||this,c.code=void 0,c.details=void 0,c.code=r,c.details=o,c}return g}(O(Error));R.default=p},"./src/utils/imsc1-ttml-parser.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"IMSC1_CODEC",function(){return y}),l.d(R,"parseIMSC1",function(){return m});var C=l("./src/utils/mp4-tools.ts"),L=l("./src/utils/vttparser.ts"),A=l("./src/utils/vttcue.ts"),w=l("./src/demux/id3.ts"),O=l("./src/utils/timescale-conversion.ts"),b=l("./src/utils/webvtt-parser.ts");function _(){return _=Object.assign?Object.assign.bind():function(t){for(var n=1;n<arguments.length;n++){var u=arguments[n];for(var a in u)Object.prototype.hasOwnProperty.call(u,a)&&(t[a]=u[a])}return t},_.apply(this,arguments)}var y="stpp.ttml.im1t",x=/^(\d{2,}):(\d{2}):(\d{2}):(\d{2})\.?(\d+)?$/,D=/^(\d*(?:\.\d*)?)(h|m|s|ms|f|t)$/,E={left:"start",center:"center",right:"end",start:"start",end:"end"};function m(t,n,u,a,d){var v=Object(C.findBox)(new Uint8Array(t),["mdat"]);if(v.length===0){d(new Error("Could not parse IMSC1 mdat"));return}var S=v.map(function(I){return Object(w.utf8ArrayToStr)(I)}),T=Object(O.toTimescaleFromScale)(n,1,u);try{S.forEach(function(I){return a(p(I,T))})}catch(I){d(I)}}function p(t,n){var u=new DOMParser,a=u.parseFromString(t,"text/xml"),d=a.getElementsByTagName("tt")[0];if(!d)throw new Error("Invalid ttml");var v={frameRate:30,subFrameRate:1,frameRateMultiplier:0,tickRate:0},S=Object.keys(v).reduce(function(U,W){return U[W]=d.getAttribute("ttp:"+W)||v[W],U},{}),T=d.getAttribute("xml:space")!=="preserve",I=e(f(d,"styling","style")),k=e(f(d,"layout","region")),B=f(d,"body","[begin]");return[].map.call(B,function(U){var W=s(U,T);if(!W||!U.hasAttribute("begin"))return null;var H=r(U.getAttribute("begin"),S),z=r(U.getAttribute("dur"),S),Y=r(U.getAttribute("end"),S);if(H===null)throw i(U);if(Y===null){if(z===null)throw i(U);Y=H+z}var $=new A.default(H-n,Y-n,W);$.id=Object(b.generateCueId)($.startTime,$.endTime,$.text);var ee=k[U.getAttribute("region")],q=I[U.getAttribute("style")];$.position=10,$.size=80;var re=h(ee,q,I),ae=re.textAlign;if(ae){var ne=E[ae];ne&&($.lineAlign=ne),$.align=ae}return _($,re),$}).filter(function(U){return U!==null})}function f(t,n,u){var a=t.getElementsByTagName(n)[0];return a?[].slice.call(a.querySelectorAll(u)):[]}function e(t){return t.reduce(function(n,u){var a=u.getAttribute("xml:id");return a&&(n[a]=u),n},{})}function s(t,n){return[].slice.call(t.childNodes).reduce(function(u,a,d){var v;return a.nodeName==="br"&&d?u+`
22
- `:(v=a.childNodes)!==null&&v!==void 0&&v.length?s(a,n):n?u+a.textContent.trim().replace(/\s+/g," "):u+a.textContent},"")}function h(t,n,u){var a="http://www.w3.org/ns/ttml#styling",d=null,v=["displayAlign","textAlign","color","backgroundColor","fontSize","fontFamily"],S=t!=null&&t.hasAttribute("style")?t.getAttribute("style"):null;return S&&u.hasOwnProperty(S)&&(d=u[S]),v.reduce(function(T,I){var k=g(n,a,I)||g(t,a,I)||g(d,a,I);return k&&(T[I]=k),T},{})}function g(t,n,u){return t&&t.hasAttributeNS(n,u)?t.getAttributeNS(n,u):null}function i(t){return new Error("Could not parse ttml timestamp "+t)}function r(t,n){if(!t)return null;var u=Object(L.parseTimeStamp)(t);return u===null&&(x.test(t)?u=o(t,n):D.test(t)&&(u=c(t,n))),u}function o(t,n){var u=x.exec(t),a=(u[4]|0)+(u[5]|0)/n.subFrameRate;return(u[1]|0)*3600+(u[2]|0)*60+(u[3]|0)+a/n.frameRate}function c(t,n){var u=D.exec(t),a=Number(u[1]),d=u[2];switch(d){case"h":return a*3600;case"m":return a*60;case"ms":return a*1e3;case"f":return a/n.frameRate;case"t":return a/n.tickRate}return a}},"./src/utils/logger.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"enableLogs",function(){return b}),l.d(R,"logger",function(){return _});var C=function(){},L={trace:C,debug:C,log:C,warn:C,info:C,error:C},A=L;function w(y){var x=self.console[y];return x?x.bind(self.console,"["+y+"] >"):C}function O(y){for(var x=arguments.length,D=new Array(x>1?x-1:0),E=1;E<x;E++)D[E-1]=arguments[E];D.forEach(function(m){A[m]=y[m]?y[m].bind(y):w(m)})}function b(y){if(self.console&&y===!0||typeof y=="object"){O(y,"debug","log","info","warn","error");try{A.log()}catch{A=L}}else A=L}var _=A},"./src/utils/mediakeys-helper.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"KeySystems",function(){return C}),l.d(R,"requestMediaKeySystemAccess",function(){return L});var C;(function(A){A.WIDEVINE="com.widevine.alpha",A.PLAYREADY="com.microsoft.playready"})(C||(C={}));var L=function(){return typeof self!="undefined"&&self.navigator&&self.navigator.requestMediaKeySystemAccess?self.navigator.requestMediaKeySystemAccess.bind(self.navigator):null}()},"./src/utils/mediasource-helper.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"getMediaSource",function(){return C});function C(){return self.MediaSource||self.WebKitMediaSource}},"./src/utils/mp4-tools.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"RemuxerTrackIdConfig",function(){return b}),l.d(R,"bin2str",function(){return _}),l.d(R,"readUint16",function(){return y}),l.d(R,"readUint32",function(){return x}),l.d(R,"readSint32",function(){return D}),l.d(R,"writeUint32",function(){return E}),l.d(R,"findBox",function(){return m}),l.d(R,"parseSegmentIndex",function(){return p}),l.d(R,"parseInitSegment",function(){return f}),l.d(R,"getStartDTS",function(){return e}),l.d(R,"getDuration",function(){return s}),l.d(R,"computeRawDurationFromSamples",function(){return h}),l.d(R,"offsetStartDTS",function(){return g}),l.d(R,"segmentValidRange",function(){return i}),l.d(R,"appendUint8Array",function(){return r}),l.d(R,"parseSamples",function(){return o}),l.d(R,"parseSEIMessageFromNALu",function(){return n}),l.d(R,"parseEmsg",function(){return a});var C=l("./src/utils/typed-array.ts"),L=l("./src/loader/fragment.ts"),A=l("./src/demux/id3.ts"),w=Math.pow(2,32)-1,O=[].push,b={video:1,audio:2,id3:3,text:4};function _(d){return String.fromCharCode.apply(null,d)}function y(d,v){var S=d[v]<<8|d[v+1];return S<0?65536+S:S}function x(d,v){var S=D(d,v);return S<0?4294967296+S:S}function D(d,v){return d[v]<<24|d[v+1]<<16|d[v+2]<<8|d[v+3]}function E(d,v,S){d[v]=S>>24,d[v+1]=S>>16&255,d[v+2]=S>>8&255,d[v+3]=S&255}function m(d,v){var S=[];if(!v.length)return S;for(var T=d.byteLength,I=0;I<T;){var k=x(d,I),B=_(d.subarray(I+4,I+8)),U=k>1?I+k:T;if(B===v[0])if(v.length===1)S.push(d.subarray(I+8,U));else{var W=m(d.subarray(I+8,U),v.slice(1));W.length&&O.apply(S,W)}I=U}return S}function p(d){var v=[],S=d[0],T=8,I=x(d,T);T+=4;var k=0,B=0;S===0?T+=8:T+=16,T+=2;var U=d.length+B,W=y(d,T);T+=2;for(var H=0;H<W;H++){var z=T,Y=x(d,z);z+=4;var $=Y&2147483647,ee=(Y&2147483648)>>>31;if(ee===1)return console.warn("SIDX has hierarchical references (not supported)"),null;var q=x(d,z);z+=4,v.push({referenceSize:$,subsegmentDuration:q,info:{duration:q/I,start:U,end:U+$-1}}),U+=$,z+=4,T=z}return{earliestPresentationTime:k,timescale:I,version:S,referencesCount:W,references:v}}function f(d){for(var v=[],S=m(d,["moov","trak"]),T=0;T<S.length;T++){var I=S[T],k=m(I,["tkhd"])[0];if(k){var B=k[0],U=B===0?12:20,W=x(k,U),H=m(I,["mdia","mdhd"])[0];if(H){B=H[0],U=B===0?12:20;var z=x(H,U),Y=m(I,["mdia","hdlr"])[0];if(Y){var $=_(Y.subarray(8,12)),ee={soun:L.ElementaryStreamTypes.AUDIO,vide:L.ElementaryStreamTypes.VIDEO}[$];if(ee){var q=m(I,["mdia","minf","stbl","stsd"])[0],re=void 0;q&&(re=_(q.subarray(12,16))),v[W]={timescale:z,type:ee},v[ee]={timescale:z,id:W,codec:re}}}}}}var ae=m(d,["moov","mvex","trex"]);return ae.forEach(function(ne){var te=x(ne,4),he=v[te];he&&(he.default={duration:x(ne,12),flags:x(ne,20)})}),v}function e(d,v){return m(v,["moof","traf"]).reduce(function(S,T){var I=m(T,["tfdt"])[0],k=I[0],B=m(T,["tfhd"]).reduce(function(U,W){var H=x(W,4),z=d[H];if(z){var Y=x(I,4);k===1&&(Y*=Math.pow(2,32),Y+=x(I,8));var $=z.timescale||9e4,ee=Y/$;if(isFinite(ee)&&(U===null||ee<U))return ee}return U},null);return B!==null&&isFinite(B)&&(S===null||B<S)?B:S},null)||0}function s(d,v){for(var S=0,T=0,I=0,k=m(d,["moof","traf"]),B=0;B<k.length;B++){var U=k[B],W=m(U,["tfhd"])[0],H=x(W,4),z=v[H];if(!!z){var Y=z.default,$=x(W,0)|(Y==null?void 0:Y.flags),ee=Y==null?void 0:Y.duration;$&8&&($&2?ee=x(W,12):ee=x(W,8));for(var q=z.timescale||9e4,re=m(U,["trun"]),ae=0;ae<re.length;ae++){if(S=h(re[ae]),!S&&ee){var ne=x(re[ae],4);S=ee*ne}z.type===L.ElementaryStreamTypes.VIDEO?T+=S/q:z.type===L.ElementaryStreamTypes.AUDIO&&(I+=S/q)}}}if(T===0&&I===0){for(var te=0,he=m(d,["sidx"]),ve=0;ve<he.length;ve++){var ie=p(he[ve]);ie!=null&&ie.references&&(te+=ie.references.reduce(function(Te,pe){return Te+pe.info.duration||0},0))}return te}return T||I}function h(d){var v=x(d,0),S=8;v&1&&(S+=4),v&4&&(S+=4);for(var T=0,I=x(d,4),k=0;k<I;k++){if(v&256){var B=x(d,S);T+=B,S+=4}v&512&&(S+=4),v&1024&&(S+=4),v&2048&&(S+=4)}return T}function g(d,v,S){m(v,["moof","traf"]).forEach(function(T){m(T,["tfhd"]).forEach(function(I){var k=x(I,4),B=d[k];if(!!B){var U=B.timescale||9e4;m(T,["tfdt"]).forEach(function(W){var H=W[0],z=x(W,4);if(H===0)z-=S*U,z=Math.max(z,0),E(W,4,z);else{z*=Math.pow(2,32),z+=x(W,8),z-=S*U,z=Math.max(z,0);var Y=Math.floor(z/(w+1)),$=Math.floor(z%(w+1));E(W,4,Y),E(W,8,$)}})}})})}function i(d){var v={valid:null,remainder:null},S=m(d,["moof"]);if(S){if(S.length<2)return v.remainder=d,v}else return v;var T=S[S.length-1];return v.valid=Object(C.sliceUint8)(d,0,T.byteOffset-8),v.remainder=Object(C.sliceUint8)(d,T.byteOffset-8),v}function r(d,v){var S=new Uint8Array(d.length+v.length);return S.set(d),S.set(v,d.length),S}function o(d,v){var S=[],T=v.samples,I=v.timescale,k=v.id,B=!1,U=m(T,["moof"]);return U.map(function(W){var H=W.byteOffset-8,z=m(W,["traf"]);z.map(function(Y){var $=m(Y,["tfdt"]).map(function(ee){var q=ee[0],re=x(ee,4);return q===1&&(re*=Math.pow(2,32),re+=x(ee,8)),re/I})[0];return $!==void 0&&(d=$),m(Y,["tfhd"]).map(function(ee){var q=x(ee,4),re=x(ee,0)&16777215,ae=(re&1)!==0,ne=(re&2)!==0,te=(re&8)!==0,he=0,ve=(re&16)!==0,ie=0,Te=(re&32)!==0,pe=8;q===k&&(ae&&(pe+=8),ne&&(pe+=4),te&&(he=x(ee,pe),pe+=4),ve&&(ie=x(ee,pe),pe+=4),Te&&(pe+=4),v.type==="video"&&(B=c(v.codec)),m(Y,["trun"]).map(function(xe){var Me=xe[0],Ae=x(xe,0)&16777215,We=(Ae&1)!==0,Ie=0,Be=(Ae&4)!==0,be=(Ae&256)!==0,Ge=0,He=(Ae&512)!==0,Qe=0,Ue=(Ae&1024)!==0,it=(Ae&2048)!==0,we=0,nt=x(xe,4),Oe=8;We&&(Ie=x(xe,Oe),Oe+=4),Be&&(Oe+=4);for(var Ce=Ie+H,Ye=0;Ye<nt;Ye++){if(be?(Ge=x(xe,Oe),Oe+=4):Ge=he,He?(Qe=x(xe,Oe),Oe+=4):Qe=ie,Ue&&(Oe+=4),it&&(Me===0?we=x(xe,Oe):we=D(xe,Oe),Oe+=4),v.type===L.ElementaryStreamTypes.VIDEO)for(var Re=0;Re<Qe;){var Le=x(T,Ce);Ce+=4;var at=T[Ce]&31;if(t(B,at)){var ze=T.subarray(Ce,Ce+Le);n(ze,d+we/I,S)}Ce+=Le,Re+=Le+4}d+=Ge/I}}))})})}),S}function c(d){if(!d)return!1;var v=d.indexOf("."),S=v<0?d:d.substring(0,v);return S==="hvc1"||S==="hev1"||S==="dvh1"||S==="dvhe"}function t(d,v){return d?v===39||v===40:v===6}function n(d,v,S){var T=u(d),I=0;I++;for(var k=0,B=0,U=!1,W=0;I<T.length;){k=0;do{if(I>=T.length)break;W=T[I++],k+=W}while(W===255);B=0;do{if(I>=T.length)break;W=T[I++],B+=W}while(W===255);var H=T.length-I;if(!U&&k===4&&I<T.length){U=!0;var z=T[I++];if(z===181){var Y=y(T,I);if(I+=2,Y===49){var $=x(T,I);if(I+=4,$===1195456820){var ee=T[I++];if(ee===3){var q=T[I++],re=31&q,ae=64&q,ne=ae?2+re*3:0,te=new Uint8Array(ne);if(ae){te[0]=q;for(var he=1;he<ne;he++)te[he]=T[I++]}S.push({type:ee,payloadType:k,pts:v,bytes:te})}}}}}else if(k===5&&B<H){if(U=!0,B>16){for(var ve=[],ie=0;ie<16;ie++){var Te=T[I++].toString(16);ve.push(Te.length==1?"0"+Te:Te),(ie===3||ie===5||ie===7||ie===9)&&ve.push("-")}for(var pe=B-16,xe=new Uint8Array(pe),Me=0;Me<pe;Me++)xe[Me]=T[I++];S.push({payloadType:k,pts:v,uuid:ve.join(""),userData:Object(A.utf8ArrayToStr)(xe),userDataBytes:xe})}}else if(B<H)I+=B;else if(B>H)break}}function u(d){for(var v=d.byteLength,S=[],T=1;T<v-2;)d[T]===0&&d[T+1]===0&&d[T+2]===3?(S.push(T+2),T+=2):T++;if(S.length===0)return d;var I=v-S.length,k=new Uint8Array(I),B=0;for(T=0;T<I;B++,T++)B===S[0]&&(B++,S.shift()),k[T]=d[B];return k}function a(d){var v=d[0],S="",T="",I=0,k=0,B=0,U=0,W=0,H=0;if(v===0){for(;_(d.subarray(H,H+1))!=="\0";)S+=_(d.subarray(H,H+1)),H+=1;for(S+=_(d.subarray(H,H+1)),H+=1;_(d.subarray(H,H+1))!=="\0";)T+=_(d.subarray(H,H+1)),H+=1;T+=_(d.subarray(H,H+1)),H+=1,I=x(d,12),k=x(d,16),U=x(d,20),W=x(d,24),H=28}else if(v===1){H+=4,I=x(d,H),H+=4;var z=x(d,H);H+=4;var Y=x(d,H);for(H+=4,B=Math.pow(2,32)*z+Y,Number.isSafeInteger(B)||(B=Number.MAX_SAFE_INTEGER,console.warn("Presentation time exceeds safe integer limit and wrapped to max safe integer in parsing emsg box")),U=x(d,H),H+=4,W=x(d,H),H+=4;_(d.subarray(H,H+1))!=="\0";)S+=_(d.subarray(H,H+1)),H+=1;for(S+=_(d.subarray(H,H+1)),H+=1;_(d.subarray(H,H+1))!=="\0";)T+=_(d.subarray(H,H+1)),H+=1;T+=_(d.subarray(H,H+1)),H+=1}var $=d.subarray(H,d.byteLength);return{schemeIdUri:S,value:T,timeScale:I,presentationTime:B,presentationTimeDelta:k,eventDuration:U,id:W,payload:$}}},"./src/utils/output-filter.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"default",function(){return C});var C=function(){function L(w,O){this.timelineController=void 0,this.cueRanges=[],this.trackName=void 0,this.startTime=null,this.endTime=null,this.screen=null,this.timelineController=w,this.trackName=O}var A=L.prototype;return A.dispatchCue=function(){this.startTime!==null&&(this.timelineController.addCues(this.trackName,this.startTime,this.endTime,this.screen,this.cueRanges),this.startTime=null)},A.newCue=function(O,b,_){(this.startTime===null||this.startTime>O)&&(this.startTime=O),this.endTime=b,this.screen=_,this.timelineController.createCaptionsTrack(this.trackName)},A.reset=function(){this.cueRanges=[],this.startTime=null},L}()},"./src/utils/texttrack-utils.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"sendAddTrackEvent",function(){return L}),l.d(R,"addCueToTrack",function(){return A}),l.d(R,"clearCurrentCues",function(){return w}),l.d(R,"removeCuesInRange",function(){return O}),l.d(R,"getCuesInRange",function(){return _});var C=l("./src/utils/logger.ts");function L(y,x){var D;try{D=new Event("addtrack")}catch{D=document.createEvent("Event"),D.initEvent("addtrack",!1,!1)}D.track=y,x.dispatchEvent(D)}function A(y,x){var D=y.mode;if(D==="disabled"&&(y.mode="hidden"),y.cues&&!y.cues.getCueById(x.id))try{if(y.addCue(x),!y.cues.getCueById(x.id))throw new Error("addCue is failed for: "+x)}catch(m){C.logger.debug("[texttrack-utils]: "+m);var E=new self.TextTrackCue(x.startTime,x.endTime,x.text);E.id=x.id,y.addCue(E)}D==="disabled"&&(y.mode=D)}function w(y){var x=y.mode;if(x==="disabled"&&(y.mode="hidden"),y.cues)for(var D=y.cues.length;D--;)y.removeCue(y.cues[D]);x==="disabled"&&(y.mode=x)}function O(y,x,D,E){var m=y.mode;if(m==="disabled"&&(y.mode="hidden"),y.cues&&y.cues.length>0)for(var p=_(y.cues,x,D),f=0;f<p.length;f++)(!E||E(p[f]))&&y.removeCue(p[f]);m==="disabled"&&(y.mode=m)}function b(y,x){if(x<y[0].startTime)return 0;var D=y.length-1;if(x>y[D].endTime)return-1;for(var E=0,m=D;E<=m;){var p=Math.floor((m+E)/2);if(x<y[p].startTime)m=p-1;else if(x>y[p].startTime&&E<D)E=p+1;else return p}return y[E].startTime-x<x-y[m].startTime?E:m}function _(y,x,D){var E=[],m=b(y,x);if(m>-1)for(var p=m,f=y.length;p<f;p++){var e=y[p];if(e.startTime>=x&&e.endTime<=D)E.push(e);else if(e.startTime>D)return E}return E}},"./src/utils/time-ranges.ts":function(j,R,l){"use strict";l.r(R);var C={toString:function(A){for(var w="",O=A.length,b=0;b<O;b++)w+="["+A.start(b).toFixed(3)+","+A.end(b).toFixed(3)+"]";return w}};R.default=C},"./src/utils/timescale-conversion.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"toTimescaleFromBase",function(){return L}),l.d(R,"toTimescaleFromScale",function(){return A}),l.d(R,"toMsFromMpegTsClock",function(){return w}),l.d(R,"toMpegTsClockFromTimescale",function(){return O});var C=9e4;function L(b,_,y,x){y===void 0&&(y=1),x===void 0&&(x=!1);var D=b*_*y;return x?Math.round(D):D}function A(b,_,y,x){return y===void 0&&(y=1),x===void 0&&(x=!1),L(b,_,1/y,x)}function w(b,_){return _===void 0&&(_=!1),L(b,1e3,1/C,_)}function O(b,_){return _===void 0&&(_=1),L(b,C,1/_)}},"./src/utils/typed-array.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"sliceUint8",function(){return C});function C(L,A,w){return Uint8Array.prototype.slice?L.slice(A,w):new Uint8Array(Array.prototype.slice.call(L,A,w))}},"./src/utils/vttcue.ts":function(j,R,l){"use strict";l.r(R),R.default=function(){if(typeof self!="undefined"&&self.VTTCue)return self.VTTCue;var C=["","lr","rl"],L=["start","middle","end","left","right"];function A(y,x){if(typeof x!="string"||!Array.isArray(y))return!1;var D=x.toLowerCase();return~y.indexOf(D)?D:!1}function w(y){return A(C,y)}function O(y){return A(L,y)}function b(y){for(var x=arguments.length,D=new Array(x>1?x-1:0),E=1;E<x;E++)D[E-1]=arguments[E];for(var m=1;m<arguments.length;m++){var p=arguments[m];for(var f in p)y[f]=p[f]}return y}function _(y,x,D){var E=this,m={enumerable:!0};E.hasBeenReset=!1;var p="",f=!1,e=y,s=x,h=D,g=null,i="",r=!0,o="auto",c="start",t=50,n="middle",u=50,a="middle";Object.defineProperty(E,"id",b({},m,{get:function(){return p},set:function(v){p=""+v}})),Object.defineProperty(E,"pauseOnExit",b({},m,{get:function(){return f},set:function(v){f=!!v}})),Object.defineProperty(E,"startTime",b({},m,{get:function(){return e},set:function(v){if(typeof v!="number")throw new TypeError("Start time must be set to a number.");e=v,this.hasBeenReset=!0}})),Object.defineProperty(E,"endTime",b({},m,{get:function(){return s},set:function(v){if(typeof v!="number")throw new TypeError("End time must be set to a number.");s=v,this.hasBeenReset=!0}})),Object.defineProperty(E,"text",b({},m,{get:function(){return h},set:function(v){h=""+v,this.hasBeenReset=!0}})),Object.defineProperty(E,"region",b({},m,{get:function(){return g},set:function(v){g=v,this.hasBeenReset=!0}})),Object.defineProperty(E,"vertical",b({},m,{get:function(){return i},set:function(v){var S=w(v);if(S===!1)throw new SyntaxError("An invalid or illegal string was specified.");i=S,this.hasBeenReset=!0}})),Object.defineProperty(E,"snapToLines",b({},m,{get:function(){return r},set:function(v){r=!!v,this.hasBeenReset=!0}})),Object.defineProperty(E,"line",b({},m,{get:function(){return o},set:function(v){if(typeof v!="number"&&v!=="auto")throw new SyntaxError("An invalid number or illegal string was specified.");o=v,this.hasBeenReset=!0}})),Object.defineProperty(E,"lineAlign",b({},m,{get:function(){return c},set:function(v){var S=O(v);if(!S)throw new SyntaxError("An invalid or illegal string was specified.");c=S,this.hasBeenReset=!0}})),Object.defineProperty(E,"position",b({},m,{get:function(){return t},set:function(v){if(v<0||v>100)throw new Error("Position must be between 0 and 100.");t=v,this.hasBeenReset=!0}})),Object.defineProperty(E,"positionAlign",b({},m,{get:function(){return n},set:function(v){var S=O(v);if(!S)throw new SyntaxError("An invalid or illegal string was specified.");n=S,this.hasBeenReset=!0}})),Object.defineProperty(E,"size",b({},m,{get:function(){return u},set:function(v){if(v<0||v>100)throw new Error("Size must be between 0 and 100.");u=v,this.hasBeenReset=!0}})),Object.defineProperty(E,"align",b({},m,{get:function(){return a},set:function(v){var S=O(v);if(!S)throw new SyntaxError("An invalid or illegal string was specified.");a=S,this.hasBeenReset=!0}})),E.displayState=void 0}return _.prototype.getCueAsHTML=function(){var y=self.WebVTT;return y.convertCueToDOMTree(self,this.text)},_}()},"./src/utils/vttparser.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"parseTimeStamp",function(){return A}),l.d(R,"fixLineBreaks",function(){return x}),l.d(R,"VTTParser",function(){return D});var C=l("./src/utils/vttcue.ts"),L=function(){function E(){}var m=E.prototype;return m.decode=function(f,e){if(!f)return"";if(typeof f!="string")throw new Error("Error - expected string data.");return decodeURIComponent(encodeURIComponent(f))},E}();function A(E){function m(f,e,s,h){return(f|0)*3600+(e|0)*60+(s|0)+parseFloat(h||0)}var p=E.match(/^(?:(\d+):)?(\d{2}):(\d{2})(\.\d+)?/);return p?parseFloat(p[2])>59?m(p[2],p[3],0,p[4]):m(p[1],p[2],p[3],p[4]):null}var w=function(){function E(){this.values=Object.create(null)}var m=E.prototype;return m.set=function(f,e){!this.get(f)&&e!==""&&(this.values[f]=e)},m.get=function(f,e,s){return s?this.has(f)?this.values[f]:e[s]:this.has(f)?this.values[f]:e},m.has=function(f){return f in this.values},m.alt=function(f,e,s){for(var h=0;h<s.length;++h)if(e===s[h]){this.set(f,e);break}},m.integer=function(f,e){/^-?\d+$/.test(e)&&this.set(f,parseInt(e,10))},m.percent=function(f,e){if(/^([\d]{1,3})(\.[\d]*)?%$/.test(e)){var s=parseFloat(e);if(s>=0&&s<=100)return this.set(f,s),!0}return!1},E}();function O(E,m,p,f){var e=f?E.split(f):[E];for(var s in e)if(typeof e[s]=="string"){var h=e[s].split(p);if(h.length===2){var g=h[0],i=h[1];m(g,i)}}}var b=new C.default(0,0,""),_=b.align==="middle"?"middle":"center";function y(E,m,p){var f=E;function e(){var g=A(E);if(g===null)throw new Error("Malformed timestamp: "+f);return E=E.replace(/^[^\sa-zA-Z-]+/,""),g}function s(g,i){var r=new w;O(g,function(t,n){var u;switch(t){case"region":for(var a=p.length-1;a>=0;a--)if(p[a].id===n){r.set(t,p[a].region);break}break;case"vertical":r.alt(t,n,["rl","lr"]);break;case"line":u=n.split(","),r.integer(t,u[0]),r.percent(t,u[0])&&r.set("snapToLines",!1),r.alt(t,u[0],["auto"]),u.length===2&&r.alt("lineAlign",u[1],["start",_,"end"]);break;case"position":u=n.split(","),r.percent(t,u[0]),u.length===2&&r.alt("positionAlign",u[1],["start",_,"end","line-left","line-right","auto"]);break;case"size":r.percent(t,n);break;case"align":r.alt(t,n,["start",_,"end","left","right"]);break}},/:/,/\s/),i.region=r.get("region",null),i.vertical=r.get("vertical","");var o=r.get("line","auto");o==="auto"&&b.line===-1&&(o=-1),i.line=o,i.lineAlign=r.get("lineAlign","start"),i.snapToLines=r.get("snapToLines",!0),i.size=r.get("size",100),i.align=r.get("align",_);var c=r.get("position","auto");c==="auto"&&b.position===50&&(c=i.align==="start"||i.align==="left"?0:i.align==="end"||i.align==="right"?100:50),i.position=c}function h(){E=E.replace(/^\s+/,"")}if(h(),m.startTime=e(),h(),E.slice(0,3)!=="-->")throw new Error("Malformed time stamp (time stamps must be separated by '-->'): "+f);E=E.slice(3),h(),m.endTime=e(),h(),s(E,m)}function x(E){return E.replace(/<br(?: \/)?>/gi,`
23
- `)}var D=function(){function E(){this.state="INITIAL",this.buffer="",this.decoder=new L,this.regionList=[],this.cue=null,this.oncue=void 0,this.onparsingerror=void 0,this.onflush=void 0}var m=E.prototype;return m.parse=function(f){var e=this;f&&(e.buffer+=e.decoder.decode(f,{stream:!0}));function s(){var c=e.buffer,t=0;for(c=x(c);t<c.length&&c[t]!=="\r"&&c[t]!==`
24
- `;)++t;var n=c.slice(0,t);return c[t]==="\r"&&++t,c[t]===`
25
- `&&++t,e.buffer=c.slice(t),n}function h(c){O(c,function(t,n){},/:/)}try{var g="";if(e.state==="INITIAL"){if(!/\r\n|\n/.test(e.buffer))return this;g=s();var i=g.match(/^()?WEBVTT([ \t].*)?$/);if(!i||!i[0])throw new Error("Malformed WebVTT signature.");e.state="HEADER"}for(var r=!1;e.buffer;){if(!/\r\n|\n/.test(e.buffer))return this;switch(r?r=!1:g=s(),e.state){case"HEADER":/:/.test(g)?h(g):g||(e.state="ID");continue;case"NOTE":g||(e.state="ID");continue;case"ID":if(/^NOTE($|[ \t])/.test(g)){e.state="NOTE";break}if(!g)continue;if(e.cue=new C.default(0,0,""),e.state="CUE",g.indexOf("-->")===-1){e.cue.id=g;continue}case"CUE":if(!e.cue){e.state="BADCUE";continue}try{y(g,e.cue,e.regionList)}catch{e.cue=null,e.state="BADCUE";continue}e.state="CUETEXT";continue;case"CUETEXT":{var o=g.indexOf("-->")!==-1;if(!g||o&&(r=!0)){e.oncue&&e.cue&&e.oncue(e.cue),e.cue=null,e.state="ID";continue}if(e.cue===null)continue;e.cue.text&&(e.cue.text+=`
26
- `),e.cue.text+=g}continue;case"BADCUE":g||(e.state="ID")}}}catch{e.state==="CUETEXT"&&e.cue&&e.oncue&&e.oncue(e.cue),e.cue=null,e.state=e.state==="INITIAL"?"BADWEBVTT":"BADCUE"}return this},m.flush=function(){var f=this;try{if((f.cue||f.state==="HEADER")&&(f.buffer+=`
1
+ "use strict";(()=>{var gn=Object.create;var ii=Object.defineProperty;var mn=Object.getOwnPropertyDescriptor;var pn=Object.getOwnPropertyNames;var yn=Object.getPrototypeOf,En=Object.prototype.hasOwnProperty;var ni=($,q)=>()=>(q||$((q={exports:{}}).exports,q),q.exports);var _n=($,q,X,ne)=>{if(q&&typeof q=="object"||typeof q=="function")for(let z of pn(q))!En.call($,z)&&z!==X&&ii($,z,{get:()=>q[z],enumerable:!(ne=mn(q,z))||ne.enumerable});return $};var fr=($,q,X)=>(X=$!=null?gn(yn($)):{},_n(q||!$||!$.__esModule?ii(X,"default",{value:$,enumerable:!0}):X,$));var Ir=($,q,X)=>{if(!q.has($))throw TypeError("Cannot "+X)};var lt=($,q,X)=>(Ir($,q,"read from private field"),X?X.call($):q.get($)),mt=($,q,X)=>{if(q.has($))throw TypeError("Cannot add the same private member more than once");q instanceof WeakSet?q.add($):q.set($,X)},pt=($,q,X,ne)=>(Ir($,q,"write to private field"),ne?ne.call($,X):q.set($,X),X);var bt=($,q,X)=>(Ir($,q,"access private method"),X);var oi=ni((cr,wr)=>{(function(){var $,q;$=this,q=function(){return function(){var X={80:function(N,_,C){N.exports=C(728).default},728:function(N,_,C){"use strict";C.d(_,{default:function(){return hn}});var D=C(48),M=C.n(D),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)},b=function(U){return U&&U.nodeName!==void 0?(U.muxId||(U.muxId=U.id||B()),U.muxId):U},A=function(U){var O;U&&U.nodeName!==void 0?U=b(O=U):O=document.querySelector(U);var w=O&&O.nodeName?O.nodeName.toLowerCase():"";return[O,U,w]},S=C(640),T=C.n(S),x=T().methodFactory;T().methodFactory=function(U,O,w){var W=x(U,O,w);return function(){for(var G=["[mux]"],Q=0;Q<arguments.length;Q++)G.push(arguments[Q]);W.apply(void 0,G)}},T().setLevel(T().getLevel());var f=T();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,Q=w?w.end:U.tload;return{bytesLoaded:U.total,requestStart:Math.round(O+W),responseStart:Math.round(O+G),responseEnd:Math.round(O+Q)}},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){d(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 d(U,O,w){return O in U?Object.defineProperty(U,O,{value:w,enumerable:!0,configurable:!0,writable:!0}):U[O]=w,U}var L=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],Q=o(G.url),V=G.url,Z=G.bytesLoaded,ie=new Date(G.requestStartDate).getTime(),ee=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:ie,requestResponseStart:ee,requestResponseEnd:oe,requestBytesLoaded:Z,requestResponseHeaders:W,requestMediaDuration:Ee,requestHostname:Q,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,Q){if(!(G instanceof Q))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,Q,V){return Q._eventEmitterGuid=Q._eventEmitterGuid||++F,this._listeners=this._listeners||{},this._listeners[G]=this._listeners[G]||[],V&&(Q=Q.bind(V)),this._listeners[G].push(Q),Q}},{key:"off",value:function(G,Q){var V=this._listeners&&this._listeners[G];V&&V.forEach(function(Z,ie){Z._eventEmitterGuid===Q._eventEmitterGuid&&V.splice(ie,1)})}},{key:"one",value:function(G,Q,V){var Z=this;Q._eventEmitterGuid=Q._eventEmitterGuid||++F;var ie=function ee(){Z.off(G,ee),Q.apply(V||this,arguments)};ie._eventEmitterGuid=Q._eventEmitterGuid,this.on(G,ie)}},{key:"emit",value:function(G,Q){var V=this;if(this._listeners){Q=Q||{};var Z=this._listeners["before*"]||[],ie=this._listeners[G]||[],ee=this._listeners["after"+G]||[],oe=function(Ee,ve){(Ee=Ee.slice()).forEach(function(pe){pe.call(V,{type:G},ve)})};oe(Z,Q),oe(ie,Q),oe(ee,Q)}}}],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 Q=this;(function(V,Z){if(!(V instanceof Z))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(){Q._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?Q._stopPlaybackHeartbeatInterval():Q._startPlaybackHeartbeatInterval()}),G.on("timeupdate",function(){Q._playbackHeartbeatInterval!==null&&G.emit("playbackheartbeat")}),G.on("devicesleep",function(V,Z){Q._playbackHeartbeatInterval!==null&&(M().clearInterval(Q._playbackHeartbeatInterval),G.emit("playbackheartbeatend",{viewer_time:Z.viewer_time}),Q._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 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)}}function te(U,O,w){return O&&J(U.prototype,O),w&&J(U,w),Object.defineProperty(U,"prototype",{writable:!1}),U}var ae=te(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 Q=O.errorTranslator({player_error_code:G.player_error_code,player_error_message:G.player_error_message,player_error_context:G.player_error_context});Q?(O.data.player_error_code=Q.player_error_code||G.player_error_code,O.data.player_error_message=Q.player_error_message||G.player_error_message,O.data.player_error_context=Q.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 re(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 se=function(){function U(G){(function(Q,V){if(!(Q 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,Q){var V=Q.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,Q){this._updateWatchTime(G,Q),this._watchTimeTrackerLastCheckedTime=null}}])&&re(O.prototype,w),W&&re(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(Q,V){if(!(Q 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 Q=G-this._playbackTimeTrackerLastPlayheadPosition;Q<=1e3&&l(this.pm.data,"view_content_playback_time",Q)}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 de=function(){function U(G){(function(V,Z){if(!(V instanceof Z))throw new TypeError("Cannot call a class as a function")})(this,U),this.pm=G;var Q=this._updatePlayheadTime.bind(this);G.on("playbackheartbeat",Q),G.on("playbackheartbeatend",Q),G.on("timeupdate",Q),G.on("destroy",function(){G.off("timeupdate",Q)})}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,Q){var V=this,Z=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(Q&&Q.player_playhead_time)this.pm.data.player_playhead_time=Q.player_playhead_time,Z(),this._updateMaxPlayheadPosition();else if(this.pm.getPlayheadTime){var ie=this.pm.getPlayheadTime();ie!==void 0&&(this.pm.data.player_playhead_time=ie,Z(),this._updateMaxPlayheadPosition())}}}])&&le(O.prototype,w),W&&le(O,W),Object.defineProperty(O,"prototype",{writable:!1}),U}();function fe(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 Se(U,O,w){return O&&fe(U.prototype,O),w&&fe(U,w),Object.defineProperty(U,"prototype",{writable:!1}),U}var be=Se(function U(O){if(function(Q,V){if(!(Q instanceof V))throw new TypeError("Cannot call a class as a function")}(this,U),!O.disableRebufferTracking){var w,W=function(Q,V){G(V),w=void 0},G=function(Q){if(w){var V=Q.viewer_time-w;l(O.data,"view_rebuffer_duration",V),w=Q.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(Q,V){return G(V)}),O.on("rebufferstart",function(Q,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 Oe(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 Q=this;(function(V,Z){if(!(V instanceof Z))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(){Q._cleanupRebufferTracker(null,{viewer_time:p.now()})}))}var O,w,W;return O=U,w=[{key:"_checkIfRebuffering",value:function(G,Q){if(this.pm.seekingTracker.isSeeking||this.pm.adTracker.isAdBreak||!this.pm.playbackHeartbeat._playheadShouldBeProgressing)this._cleanupRebufferTracker(G,Q);else if(this._lastCheckedTime!==null)if(this._lastPlayheadTime===this.pm.data.player_playhead_time){var V=Q.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=Q.viewer_time}else this._cleanupRebufferTracker(G,Q,!0);else this._prepareRebufferTrackerState(Q.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,Q){var V=arguments.length>2&&arguments[2]!==void 0&&arguments[2];if(this._rebuffering)this._rebuffering=!1,this.pm.emit("rebufferend",{viewer_time:Q.viewer_time});else{if(this._lastCheckedTime===null)return;var Z=this.pm.data.player_playhead_time-this._lastPlayheadTime,ie=Q.viewer_time-this._lastPlayheadTimeUpdatedTime;typeof this.pm.minimumRebufferDuration=="number"&&Z>0&&ie-Z>this.pm.minimumRebufferDuration&&(this.pm.emit("rebufferstart",{viewer_time:this._lastPlayheadTimeUpdatedTime}),this.pm.emit("rebufferend",{viewer_time:this._lastPlayheadTimeUpdatedTime+ie-Z}))}V?this._prepareRebufferTrackerState(Q.viewer_time):this._clearRebufferTrackerState()}}],w&&Oe(O.prototype,w),W&&Oe(O,W),Object.defineProperty(O,"prototype",{writable:!1}),U}(),Ce=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 Me=function(){function U(G){var Q=this;(function(V,Z){if(!(V instanceof Z))throw new TypeError("Cannot call a class as a function")})(this,U),this.pm=G,G.on("viewinit",function(){var V=G.data,Z=V.view_id;if(!V.view_program_changed){var ie=function(ee,oe){var Ee=oe.viewer_time;ee.type==="playing"&&G.data.view_time_to_first_frame===void 0?Q.calculateTimeToFirstFrame(Ee||p.now(),Z):ee.type!=="adplaying"||G.data.view_time_to_first_frame!==void 0&&!Q._inPrerollPosition()||Q.calculateTimeToFirstFrame(Ee||p.now(),Z)};G.one("playing",ie),G.one("adplaying",ie),G.one("viewend",function(){G.off("playing",ie),G.off("adplaying",ie)})}})}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,Q){Q===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 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 Fe(U,O,w){return O&&De(U.prototype,O),w&&De(U,w),Object.defineProperty(U,"prototype",{writable:!1}),U}var Ne=Fe(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 Q=Math.min(w._lastPlayerWidth/w._lastSourceWidth,w._lastPlayerHeight/w._lastSourceHeight),V=Math.max(0,Q-1),Z=Math.max(0,1-Q);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,Z),l(O.data,"view_total_content_playback_time",G),l(O.data,"view_total_upscaling",V*G),l(O.data,"view_total_downscaling",Z*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 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 Xe(U,O,w){return O&&ke(U.prototype,O),w&&ke(U,w),Object.defineProperty(U,"prototype",{writable:!1}),U}var ze=Xe(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 Q=O.data.view_max_seek_time||0;O.data.view_max_seek_time=Math.max(Q,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 Q,V,Z=[],ie=!0,ee=!1;try{for(G=G.call(w);!(ie=(Q=G.next()).done)&&(Z.push(Q.value),!W||Z.length!==W);ie=!0);}catch(oe){ee=!0,V=oe}finally{try{ie||G.return==null||G.return()}finally{if(ee)throw V}}return Z}}(U,O)||function(w,W){if(w){if(typeof w=="string")return Qe(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)?Qe(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 Qe(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"],Ke=function(){function U(G){var Q=this;(function(Z,ie){if(!(Z instanceof ie))throw new TypeError("Cannot call a class as a function")})(this,U),this.pm=G,G.on("viewinit",function(){Q.isAdBreak=!1,Q._currentAdRequestNumber=0,Q._currentAdResponseNumber=0,Q._adRequests=[],Q._adResponses=[],Q._adHasPlayed=!1,Q._wouldBeNewAdPlay=!0,Q._prerollPlayTime=void 0}),Je.forEach(function(Z){return G.on(Z,Q._updateAdData.bind(Q))});var V=function(){Q.isAdBreak=!1};G.on("adbreakstart",function(){Q.isAdBreak=!0}),G.on("play",V),G.on("playing",V),G.on("viewend",V),G.on("adrequest",function(Z,ie){ie=a()({ad_request_id:"generatedAdRequestId"+Q._currentAdRequestNumber++},ie),nt(Q._adRequests,ie),l(G.data,"view_ad_request_count"),Q.inPrerollPosition()&&(G.data.view_preroll_requested=!0,Q._adHasPlayed||l(G.data,"view_preroll_request_count"))}),G.on("adresponse",function(Z,ie){ie=a()({ad_request_id:"generatedAdRequestId"+Q._currentAdResponseNumber++},ie),nt(Q._adResponses,ie);var ee=Q.findAdRequest(ie.ad_request_id);ee&&l(G.data,"view_ad_request_time",Math.max(0,ie.viewer_time-ee.viewer_time))}),G.on("adplay",function(Z,ie){Q._adHasPlayed=!0,Q._wouldBeNewAdPlay&&(Q._wouldBeNewAdPlay=!1,l(G.data,"view_ad_played_count")),Q.inPrerollPosition()&&!G.data.view_preroll_played&&(G.data.view_preroll_played=!0,Q._adRequests.length>0&&(G.data.view_preroll_request_time=Math.max(0,ie.viewer_time-Q._adRequests[0].viewer_time)),G.data.view_start&&(G.data.view_startup_preroll_request_time=Math.max(0,ie.viewer_time-G.data.view_start)),Q._prerollPlayTime=ie.viewer_time)}),G.on("adplaying",function(Z,ie){Q.inPrerollPosition()&&G.data.view_preroll_load_time===void 0&&Q._prerollPlayTime!==void 0&&(G.data.view_preroll_load_time=ie.viewer_time-Q._prerollPlayTime,G.data.view_startup_preroll_load_time=ie.viewer_time-Q._prerollPlayTime)}),G.on("adended",function(){Q._wouldBeNewAdPlay=!0}),G.on("aderror",function(){Q._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 Q=0;Q<this._adRequests.length;Q++)if(this._adRequests[Q].ad_request_id===G)return this._adRequests[Q]}},{key:"_updateAdData",value:function(G,Q){if(this.inPrerollPosition()){if(!this.pm.data.view_preroll_ad_tag_hostname&&Q.ad_tag_url){var V=rt(n(Q.ad_tag_url),2),Z=V[0],ie=V[1];this.pm.data.view_preroll_ad_tag_domain=ie,this.pm.data.view_preroll_ad_tag_hostname=Z}if(!this.pm.data.view_preroll_ad_asset_hostname&&Q.ad_asset_url){var ee=rt(n(Q.ad_asset_url),2),oe=ee[0],Ee=ee[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 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 Ze(U,O,w){return O&&We(U.prototype,O),w&&We(U,w),Object.defineProperty(U,"prototype",{writable:!1}),U}var ct=Ze(function U(O){var w,W;(function(Z,ie){if(!(Z instanceof ie))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))},Q=!1,V=function(){Q=!1,G()};O.on("waiting",function(){Q&&(O.disableRebufferTracking||(l(O.data,"view_waiting_rebuffer_count",1),w=p.now(),W=M().setInterval(function(){if(w){var Z=p.now();l(O.data,"view_waiting_rebuffer_duration",Z-w),w=Z}},250)))}),O.on("playing",function(){G(),Q=!0}),O.on("pause",V),O.on("seeking",V)});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 qe(U,O,w){return O&&we(U.prototype,O),w&&we(U,w),Object.defineProperty(U,"prototype",{writable:!1}),U}var et=qe(function U(O){var w=this;(function(Q,V){if(!(Q 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(Q){var V=p.now(),Z=w.lastWallClockTime;w.lastWallClockTime=V,V-Z>3e4&&(O.emit("devicesleep",{viewer_time:Z}),a()(O.data,{viewer_time:Z}),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)})}),At=C(375),St=C(655),xt=C.n(St),Kt="muxData",Dt=function(){var U;try{U=At.parse(xt().get(Kt)||"")}catch{U={}}return U},ar=function(U){try{xt().set(Kt,At.stringify(U),{expires:7300})}catch{}},Wt=function(){var U=Dt();return U.mux_viewer_id=U.mux_viewer_id||P(),U.msn=U.msn||Math.random(),ar(U),{mux_viewer_id:U.mux_viewer_id,mux_sample_number:U.msn}};function yr(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 Gt=function(){var U;switch(It()){case"cellular":U="cellular";break;case"ethernet":U="wired";break;case"wifi":U="wifi";break;case void 0:break;default:U="other"}return U},It=function(){var U=M().navigator,O=U&&(U.connection||U.mozConnection||U.webkitConnection);return O&&O.type};Gt.getConnectionFromAPI=It;var dt=Gt,sr=or({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"}),Ht=or({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 or(U){var O={};for(var w in U)U.hasOwnProperty(w)&&(O[U[w]]=w);return O}function jt(U){var O={},w={};return Object.keys(U).forEach(function(W){var G=!1;if(U.hasOwnProperty(W)&&U[W]!==void 0){var Q=W.split("_"),V=Q[0],Z=sr[V];Z||(f.info("Data key word `"+Q[0]+"` not expected in "+W),Z=V+"_"),Q.splice(1).forEach(function(ie){ie==="url"&&(G=!0),Ht[ie]?Z+=Ht[ie]:Number(ie)&&Math.floor(Number(ie))===Number(ie)?Z+=ie:(f.info("Data key word `"+ie+"` not expected in "+W),Z+="_"+ie+"_")}),G?w[Z]=U[W]:O[Z]=U[W]}}),a()(O,w)}var Er={maxBeaconSize:300,maxQueueLength:3600,baseTimeBetweenBeacons:1e4,maxPayloadKBSize:500},_r=["hb","requestcompleted","requestfailed","requestcanceled"],Tr="https://img.litix.io",ft=function(U){var O=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this._beaconUrl=U||Tr,this._eventQueue=[],this._postInFlight=!1,this._failureCount=0,this._sendTimeout=!1,this._options=a()({},Er,O)};ft.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)},ft.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())},ft.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)},ft.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],jt({mux_view_message:"event queue truncated"}));var w=this._createPayload(O);Vt(this._beaconUrl,w,!0,function(){})},ft.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();Vt(this._beaconUrl,w,!1,function(G,Q){Q?(U._eventQueue=O.concat(U._eventQueue),U._failureCount+=1,f.info("Error sending beacon: "+Q)):U._failureCount=0,U._roundTripTime=p.now()-W,U._postInFlight=!1})}},ft.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},ft.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()))},ft.prototype._createPayload=function(U){var O,w,W,G=this,Q={transmission_timestamp:Math.round(p.now())};this._roundTripTime&&(Q.rtt_ms=Math.round(this._roundTripTime));var V=function(){O=JSON.stringify({metadata:Q,events:w||U}),W=O.length/1024},Z=function(){return W<=G._options.maxPayloadKBSize};return V(),Z()||(f.info("Payload size is too big ("+W+" kb). Removing unnecessary events."),w=U.filter(function(ie){return _r.indexOf(ie.e)===-1}),V()),Z()||(f.info("Payload size still too big ("+W+" kb). Cropping fields.."),w.forEach(function(ie){for(var ee in ie){var oe=ie[ee];typeof oe=="string"&&oe.length>51200&&(ie[ee]=oe.substring(0,51200))}}),V()),O};var Vt=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(Q){return W(null,Q.ok?null:"Error")}).catch(function(Q){return W(null,Q)});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=ft;function xr(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 Q,V,Z=[],ie=!0,ee=!1;try{for(G=G.call(w);!(ie=(Q=G.next()).done)&&(Z.push(Q.value),!W||Z.length!==W);ie=!0);}catch(oe){ee=!0,V=oe}finally{try{ie||G.return==null||G.return()}finally{if(ee)throw V}}return Z}}(U,O)||function(w,W){if(w){if(typeof w=="string")return Yr(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)?Yr(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 Yr(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 Xr(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 Ot(U){for(var O=1;O<arguments.length;O++){var w=arguments[O]!=null?arguments[O]:{};O%2?Xr(Object(w),!0).forEach(function(W){lr(U,W,w[W])}):Object.getOwnPropertyDescriptors?Object.defineProperties(U,Object.getOwnPropertyDescriptors(w)):Xr(Object(w)).forEach(function(W){Object.defineProperty(U,W,Object.getOwnPropertyDescriptor(w,W))})}return U}function Yt(U){return Yt=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},Yt(U)}function Oi(U,O){if(!(U instanceof O))throw new TypeError("Cannot call a class as a function")}function zr(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 lr(U,O,w){return O in U?Object.defineProperty(U,O,{value:w,enumerable:!0,configurable:!0,writable:!0}):U[O]=w,U}var Ci=["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"],Mi=["adplay","adplaying","adpause","adfirstquartile","admidpoint","adthirdquartile","adended"],wi=["viewstart","error","ended","viewend"],ki=function(){function U(G,Q){var V,Z,ie,ee,oe,Ee,ve,pe,he,ye,Le,je,Ve,at,xe,Ye=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};Oi(this,U),lr(this,"previousBeaconData",null),lr(this,"lastEventTime",0),lr(this,"rateLimited",!1),this.mux=G,this.envKey=Q,this.options=Ye,this.eventQueue=new Sr(yr(this.envKey,this.options)),this.sampleRate=(V=this.options.sampleRate)!==null&&V!==void 0?V:1,this.disableCookies=(Z=this.options.disableCookies)!==null&&Z!==void 0&&Z,this.respectDoNotTrack=(ie=this.options.respectDoNotTrack)!==null&&ie!==void 0&&ie,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:(ee=this.options.platform)===null||ee===void 0?void 0:ee.name,viewer_application_version:(oe=this.options.platform)===null||oe===void 0?void 0:oe.version,viewer_application_engine:(Ee=this.options.platform)===null||Ee===void 0?void 0:Ee.layout,viewer_device_name:(ve=this.options.platform)===null||ve===void 0?void 0:ve.product,viewer_device_category:"",viewer_device_manufacturer:(pe=this.options.platform)===null||pe===void 0?void 0:pe.manufacturer,viewer_os_family:(he=this.options.platform)===null||he===void 0||(ye=he.os)===null||ye===void 0?void 0:ye.family,viewer_os_architecture:(Le=this.options.platform)===null||Le===void 0||(je=Le.os)===null||je===void 0?void 0:je.architecture,viewer_os_version:(Ve=this.options.platform)===null||Ve===void 0||(at=Ve.os)===null||at===void 0?void 0:at.version,viewer_connection_type:dt(),page_url:M()===null||M()===void 0||(xe=M().location)===null||xe===void 0?void 0:xe.href},this.viewerData=this.disableCookies?{}:Wt()}var O,w,W;return O=U,(w=[{key:"send",value:function(G,Q){var V;if(G){if(this.respectDoNotTrack&&E())return f.info("Not sending `"+G+"` because Do Not Track is enabled");if(!Q||Yt(Q)!=="object")return f.error("A data object was expected in send() but was not provided");var Z,ie,ee=this.disableCookies?{}:(Z=Dt(),ie=p.now(),Z.session_start&&(Z.sst=Z.session_start,delete Z.session_start),Z.session_id&&(Z.sid=Z.session_id,delete Z.session_id),Z.session_expires&&(Z.sex=Z.session_expires,delete Z.session_expires),(!Z.sex||Z.sex<ie)&&(Z.sid=P(),Z.sst=ie),Z.sex=ie+15e5,ar(Z),{session_id:Z.sid,session_start:Z.sst,session_expires:Z.sex}),oe=Ot(Ot(Ot(Ot(Ot({},this.pageLevelData),Q),ee),this.viewerData),{},{event:G,env_key:this.envKey});oe.user_id&&(oe.viewer_user_id=oe.user_id,delete oe.user_id);var Ee=((V=oe.mux_sample_number)!==null&&V!==void 0?V:0)>=this.sampleRate,ve=jt(this._deduplicateBeaconData(G,oe));if(this.lastEventTime=this.mux.utils.now(),Ee)return f.info("Not sending event due to sample rate restriction",G,oe,ve);if(this.envKey||f.info("Missing environment key (envKey) - beacons will be dropped if the video source is not a valid mux video URL",G,oe,ve),!this.rateLimited){if(f.info("Sending event",G,oe,ve),this.rateLimited=!this.eventQueue.queueEvent(G,ve),this.mux.WINDOW_UNLOADING&&G==="viewend")this.eventQueue.destroy(!0);else if(this.mux.WINDOW_HIDDEN&&G==="hb"?this.eventQueue.flushEvents(!0):wi.indexOf(G)>=0&&this.eventQueue.flushEvents(),this.rateLimited)return oe.event="eventrateexceeded",ve=jt(oe),this.eventQueue.queueEvent(oe.event,ve),f.error("Beaconing disabled due to rate limit.")}}}},{key:"destroy",value:function(){this.eventQueue.destroy(!1)}},{key:"_deduplicateBeaconData",value:function(G,Q){var V=this,Z={},ie=Q.view_id;if(!ie||G==="viewstart"||G==="viewend"||!this.previousBeaconData||this.mux.utils.now()-this.lastEventTime>=6e5)Z=Ot({},Q),ie&&(this.previousBeaconData=Z),ie&&G==="viewend"&&(this.previousBeaconData=null);else{var ee=G.indexOf("request")===0;Object.entries(Q).forEach(function(oe){var Ee=xr(oe,2),ve=Ee[0],pe=Ee[1];V.previousBeaconData&&(pe!==V.previousBeaconData[ve]||Ci.indexOf(ve)>-1||V.objectHasChanged(ee,ve,pe,V.previousBeaconData[ve])||V.eventRequiresKey(G,ve))&&(Z[ve]=pe,V.previousBeaconData[ve]=pe)})}return Z}},{key:"objectHasChanged",value:function(G,Q,V,Z){return!(!G||Q.indexOf("request_")!==0||Q!=="request_response_headers"&&Yt(V)==="object"&&Yt(Z)==="object"&&Object.keys(V||{}).length===Object.keys(Z||{}).length)}},{key:"eventRequiresKey",value:function(G,Q){return G==="renditionchange"&&Q.indexOf("video_source_")===0||!(Q.indexOf("ad_")!==0||!Mi.includes(G))}}])&&zr(O.prototype,w),W&&zr(O,W),Object.defineProperty(O,"prototype",{writable:!1}),U}();function Qr(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 Fi(U,O,w){return O&&Qr(U.prototype,O),w&&Qr(U,w),Object.defineProperty(U,"prototype",{writable:!1}),U}var Ui=Fi(function U(O){(function(ee,oe){if(!(ee instanceof oe))throw new TypeError("Cannot call a class as a function")})(this,U);var w=0,W=0,G=0,Q=0,V=0,Z=0,ie=0;O.on("requestcompleted",function(ee,oe){var Ee,ve,pe=oe.request_start,he=oe.request_response_start,ye=oe.request_response_end,Le=oe.request_bytes_loaded;if(Q++,he?(Ee=he-pe,ve=ye-he):ve=ye-pe,ve>0&&Le>0){var je=Le/ve*8e3;V++,W+=Le,G+=ve,O.data.view_min_request_throughput=Math.min(O.data.view_min_request_throughput||1/0,je),O.data.view_average_request_throughput=W/G*8e3,O.data.view_request_count=Q,Ee>0&&(w+=Ee,O.data.view_max_request_latency=Math.max(O.data.view_max_request_latency||0,Ee),O.data.view_average_request_latency=w/V)}}),O.on("requestfailed",function(ee,oe){Q++,Z++,O.data.view_request_count=Q,O.data.view_request_failed_count=Z}),O.on("requestcanceled",function(ee,oe){Q++,ie++,O.data.view_request_count=Q,O.data.view_request_canceled_count=ie})});function $r(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 Bi(U,O,w){return O&&$r(U.prototype,O),w&&$r(U,w),Object.defineProperty(U,"prototype",{writable:!1}),U}var Ni=Bi(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("before*",function(W,G){var Q=G.viewer_time,V=p.now(),Z=w._lastEventTime;if(w._lastEventTime=V,Z&&V-Z>36e5){var ie=Object.keys(O.data).reduce(function(ee,oe){return oe.indexOf("video_")===0?a()(ee,function(Ee,ve,pe){return ve in Ee?Object.defineProperty(Ee,ve,{value:pe,enumerable:!0,configurable:!0,writable:!0}):Ee[ve]=pe,Ee}({},oe,O.data[oe])):ee},{});O.mux.log.info("Received event after at least an hour inactivity, creating a new view"),O.emit("viewinit",a()({viewer_time:Q},ie)),O.playbackHeartbeat._playheadShouldBeProgressing&&W.type!=="play"&&W.type!=="adbreakstart"&&(O.emit("play",{viewer_time:Q}),W.type!=="playing"&&O.emit("playing",{viewer_time:Q}))}})});function Ar(U){return Ar=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},Ar(U)}function Ki(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 Q,V,Z=[],ie=!0,ee=!1;try{for(G=G.call(w);!(ie=(Q=G.next()).done)&&(Z.push(Q.value),!W||Z.length!==W);ie=!0);}catch(oe){ee=!0,V=oe}finally{try{ie||G.return==null||G.return()}finally{if(ee)throw V}}return Z}}(U,O)||function(w,W){if(w){if(typeof w=="string")return Jr(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)?Jr(w,W):void 0}}(U,O)||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 Jr(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 Zr(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 Dr(U,O){return Dr=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(w,W){return w.__proto__=W,w},Dr(U,O)}function Wi(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=ur(U);if(O){var G=ur(this).constructor;w=Reflect.construct(W,arguments,G)}else w=W.apply(this,arguments);return Gi(this,w)}}function Gi(U,O){if(O&&(Ar(O)==="object"||typeof O=="function"))return O;if(O!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Ge(U)}function Ge(U){if(U===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return U}function ur(U){return ur=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(O){return O.__proto__||Object.getPrototypeOf(O)},ur(U)}var Hi=["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"],ji=function(U){(function(V,Z){if(typeof Z!="function"&&Z!==null)throw new TypeError("Super expression must either be null or a function");V.prototype=Object.create(Z&&Z.prototype,{constructor:{value:V,writable:!0,configurable:!0}}),Object.defineProperty(V,"prototype",{writable:!1}),Z&&Dr(V,Z)})(Q,U);var O,w,W,G=Wi(Q);function Q(V,Z,ie){var ee;(function(he,ye){if(!(he instanceof ye))throw new TypeError("Cannot call a class as a function")})(this,Q),(ee=G.call(this)).DOM_CONTENT_LOADED_EVENT_END=v.domContentLoadedEventEnd(),ee.NAVIGATION_START=v.navigationStart(),ee.mux=V,ee.id=Z,(ie=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}},ie)).data=ie.data||{},ie.data.property_key&&(ie.data.env_key=ie.data.property_key,delete ie.data.property_key),f.setLevel(ie.debug?"debug":"warn"),ee.getPlayheadTime=ie.getPlayheadTime,ee.getStateData=ie.getStateData||function(){return{}},ee.getAdData=ie.getAdData||function(){},ee.minimumRebufferDuration=ie.minimumRebufferDuration,ee.sustainedRebufferThreshold=ie.sustainedRebufferThreshold,ee.playbackHeartbeatTime=ie.playbackHeartbeatTime,ee.disableRebufferTracking=ie.disableRebufferTracking,ee.disableRebufferTracking&&ee.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."),ee.disablePlayheadRebufferTracking=ie.disablePlayheadRebufferTracking,ee.errorTranslator=ie.errorTranslator,ee.playbackEventDispatcher=new ki(V,ie.data.env_key,ie),ee.data={player_instance_id:P(),mux_sample_rate:ie.sampleRate,beacon_domain:ie.beaconCollectionDomain?ie.beaconCollectionDomain:ie.beaconDomain},ee.data.view_sequence_number=1,ee.data.player_sequence_number=1,ee.oldEmit=ee.emit,ee.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(Ge(ee));ee.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(Ge(ee));if(ee.on("videochange",function(he,ye){Ee(ye)}),ee.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")}),ee.on("fragmentchange",function(he,ye){this.currentFragmentPDT=ye.currentFragmentPDT,this.currentFragmentStart=ye.currentFragmentStart}),ee.on("destroy",ee.destroy),typeof window!="undefined"&&typeof window.addEventListener=="function"&&typeof window.removeEventListener=="function"){var ve=function(){var he=ee.data.view_start!==void 0;ee.mux.WINDOW_HIDDEN=document.visibilityState==="hidden",he&&ee.mux.WINDOW_HIDDEN&&(ee.data.player_is_paused||ee.emit("hb"))};window.addEventListener("visibilitychange",ve,!1);var pe=function(he){he.persisted||ee.destroy()};window.addEventListener("pagehide",pe,!1),ee.on("destroy",function(){window.removeEventListener("visibilitychange",ve),window.removeEventListener("pagehide",pe)})}return ee.on("playerready",function(he,ye){a()(this.data,ye)}),Hi.forEach(function(he){ee.on(he,function(ye,Le){he.indexOf("ad")!==0&&this._updateStateData(),a()(this.data,Le),this._sanitizeData()}),ee.on("after"+he,function(){(he!=="error"||this.errorTracker.viewErrored)&&this.send(he)})}),ee.on("viewend",function(he,ye){a()(ee.data,ye)}),ee.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}),ee.longResumeTracker=new Ni(Ge(ee)),ee.errorTracker=new ae(Ge(ee)),new et(Ge(ee)),ee.seekingTracker=new ze(Ge(ee)),ee.playheadTime=new de(Ge(ee)),ee.playbackHeartbeat=new Y(Ge(ee)),new Ne(Ge(ee)),ee.watchTimeTracker=new se(Ge(ee)),new ce(Ge(ee)),ee.adTracker=new Ke(Ge(ee)),new Ce(Ge(ee)),new be(Ge(ee)),new Me(Ge(ee)),new ct(Ge(ee)),new Ui(Ge(ee)),ie.hlsjs&&ee.addHLSJS(ie),ie.dashjs&&ee.addDashJS(ie),ee.emit("viewinit",ie.data),ee}return O=Q,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 Z=a()({},this.data);if(Z.video_source_is_live===void 0&&(Z.player_source_duration===1/0||Z.video_source_duration===1/0?Z.video_source_is_live=!0:(Z.player_source_duration>0||Z.video_source_duration>0)&&(Z.video_source_is_live=!1)),Z.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){Z[Ee]=void 0}),Z.video_source_url=Z.video_source_url||Z.player_source_url,Z.video_source_url){var ie=Ki(n(Z.video_source_url),2),ee=ie[0],oe=ie[1];Z.video_source_domain=oe,Z.video_source_hostname=ee}delete Z.ad_request_id,this.playbackEventDispatcher.send(V,Z),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(Z){var ie=parseInt(V.data[Z],10);V.data[Z]=isNaN(ie)?void 0:ie}),["player_source_url","video_source_url"].forEach(function(Z){if(V.data[Z]){var ie=V.data[Z].toLowerCase();ie.indexOf("data:")!==0&&ie.indexOf("blob:")!==0||(V.data[Z]="MSE style URL")}})}},{key:"_resetVideoData",value:function(V,Z){var ie=this;Object.keys(this.data).forEach(function(ee){ee.indexOf("video_")===0&&delete ie.data[ee]})}},{key:"_resetViewData",value:function(){var V=this;Object.keys(this.data).forEach(function(Z){Z.indexOf("view_")===0&&delete V.data[Z]}),this.data.view_sequence_number=1}},{key:"_resetErrorData",value:function(V,Z){delete this.data.player_error_code,delete this.data.player_error_message}},{key:"_initializeViewData",value:function(){var V=this,Z=this.data.view_id=P(),ie=function(){Z===V.data.view_id&&l(V.data,"player_view_count",1)};this.data.player_is_paused?this.one("play",ie):ie()}},{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(Z,ie,ee){var oe=arguments.length>4?arguments[4]:void 0,Ee=Z.log,ve=Z.utils.secondsToMs,pe=function(Ae){var me,_e=parseInt(oe.version);return _e===1&&Ae.programDateTime!==null&&(me=Ae.programDateTime),_e===0&&Ae.pdt!==null&&(me=Ae.pdt),me};if(v.exists()){var he=function(Ae,me){return Z.emit(ie,Ae,me)},ye=function(Ae,me){var _e=me.levels,ge=me.audioTracks,Te=me.url,Ue=me.stats,Be=me.networkDetails,st=me.sessionData,tt={},vt={};_e.forEach(function(Et,Qt){tt[Qt]={width:Et.width,height:Et.height,bitrate:Et.bitrate,attrs:Et.attrs}}),ge.forEach(function(Et,Qt){vt[Qt]={name:Et.name,language:Et.lang,bitrate:Et.bitrate}});var ot=r(Ue),yt=ot.bytesLoaded,He=ot.requestStart,gt=ot.responseStart,Rr=ot.responseEnd;he("requestcompleted",m(m({},g(st)),{},{request_event_type:Ae,request_bytes_loaded:yt,request_start:He,request_response_start:gt,request_response_end:Rr,request_type:"manifest",request_hostname:o(Te),request_response_headers:t(Be),request_rendition_lists:{media:tt,audio:vt,video:{}}}))};ee.on(oe.Events.MANIFEST_LOADED,ye);var Le=function(Ae,me){var _e=me.details,ge=me.level,Te=me.networkDetails,Ue=me.stats,Be=r(Ue),st=Be.bytesLoaded,tt=Be.requestStart,vt=Be.responseStart,ot=Be.responseEnd,yt=_e.fragments[_e.fragments.length-1],He=pe(yt)+ve(yt.duration);he("requestcompleted",{request_event_type:Ae,request_bytes_loaded:st,request_start:tt,request_response_start:vt,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(He)?void 0:He})};ee.on(oe.Events.LEVEL_LOADED,Le);var je=function(Ae,me){var _e=me.details,ge=me.networkDetails,Te=me.stats,Ue=r(Te),Be=Ue.bytesLoaded,st=Ue.requestStart,tt=Ue.responseStart,vt=Ue.responseEnd;he("requestcompleted",{request_event_type:Ae,request_bytes_loaded:Be,request_start:st,request_response_start:tt,request_response_end:vt,request_type:"manifest",request_hostname:o(_e.url),request_response_headers:t(ge)})};ee.on(oe.Events.AUDIO_TRACK_LOADED,je);var Ve=function(Ae,me){var _e=me.stats,ge=me.networkDetails,Te=me.frag;_e=_e||Te.stats;var Ue=r(_e),Be=Ue.bytesLoaded,st=Ue.requestStart,tt=Ue.responseStart,vt=Ue.responseEnd,ot=t(ge),yt=ot==null?void 0:ot["x-request-id"],He={request_event_type:Ae,request_bytes_loaded:Be,request_start:st,request_response_start:tt,request_response_end:vt,request_hostname:ge?o(ge.responseURL):void 0,request_id:yt,request_response_headers:ot,request_media_duration:Te.duration,request_url:ge==null?void 0:ge.responseURL};Te.type==="main"?(He.request_type="media",He.request_current_level=Te.level,He.request_video_width=(ee.levels[Te.level]||{}).width,He.request_video_height=(ee.levels[Te.level]||{}).height,He.request_labeled_bitrate=(ee.levels[Te.level]||{}).bitrate):He.request_type=Te.type,he("requestcompleted",He)};ee.on(oe.Events.FRAG_LOADED,Ve);var at=function(Ae,me){var _e=me.frag,ge=_e.start,Te={currentFragmentPDT:pe(_e),currentFragmentStart:ve(ge)};he("fragmentchange",Te)};ee.on(oe.Events.FRAG_CHANGED,at);var xe=function(Ae,me){var _e=me.type,ge=me.details,Te=me.response,Ue=me.fatal,Be=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||Be&&Be.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})}Ue&&he("error",{player_error_code:_e,player_error_message:ge})};ee.on(oe.Events.ERROR,xe);var Ye=function(Ae,me){var _e=me.frag,ge=_e&&_e._url||"";he("requestcanceled",{request_event_type:Ae,request_url:ge,request_type:"media",request_hostname:o(ge)})};ee.on(oe.Events.FRAG_LOAD_EMERGENCY_ABORTED,Ye);var $e=function(Ae,me){var _e=me.level,ge=ee.levels[_e];if(ge&&ge.attrs&&ge.attrs.BANDWIDTH){var Te,Ue=ge.attrs.BANDWIDTH,Be=parseFloat(ge.attrs["FRAME-RATE"]);isNaN(Be)||(Te=Be),Ue?he("renditionchange",{video_source_fps:Te,video_source_bitrate:Ue,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")}};ee.on(oe.Events.LEVEL_SWITCHED,$e),ee._stopMuxMonitor=function(){ee.off(oe.Events.MANIFEST_LOADED,ye),ee.off(oe.Events.LEVEL_LOADED,Le),ee.off(oe.Events.AUDIO_TRACK_LOADED,je),ee.off(oe.Events.FRAG_LOADED,Ve),ee.off(oe.Events.FRAG_CHANGED,at),ee.off(oe.Events.ERROR,xe),ee.off(oe.Events.FRAG_LOAD_EMERGENCY_ABORTED,Ye),ee.off(oe.Events.LEVEL_SWITCHED,$e),ee.off(oe.Events.DESTROYING,ee._stopMuxMonitor),delete ee._stopMuxMonitor},ee.on(oe.Events.DESTROYING,ee._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(Z,ie,ee){var oe=Z.log;if(ee&&ee.on){var Ee=function(xe,Ye){return Z.emit(ie,xe,Ye)},ve=function(xe){var Ye=xe.type,$e=(xe.data||{}).url;Ee("requestcompleted",{request_event_type:Ye,request_start:0,request_response_start:0,request_response_end:0,request_bytes_loaded:-1,request_type:"manifest",request_hostname:o($e),request_url:$e})};ee.on("manifestLoaded",ve);var pe={},he=function(xe){var Ye=xe.type,$e=xe.fragmentModel,Ae=(xe.chunk||{}).mediaInfo||{},me=Ae.type,_e=Ae.bitrateList,ge={};(_e=_e||[]).forEach(function(He,gt){ge[gt]={},ge[gt].width=He.width,ge[gt].height=He.height,ge[gt].bitrate=He.bandwidth,ge[gt].attrs={}}),me==="video"?pe.video=ge:me==="audio"?pe.audio=ge:pe.media=ge;var Te=L($e,ee),Ue=Te.requestStart,Be=Te.requestResponseStart,st=Te.requestResponseEnd,tt=Te.requestResponseHeaders,vt=Te.requestMediaDuration,ot=Te.requestHostname,yt=Te.requestUrl;Ee("requestcompleted",{request_event_type:Ye,request_start:Ue,request_response_start:Be,request_response_end:st,request_bytes_loaded:-1,request_type:me+"_init",request_response_headers:tt,request_hostname:ot,request_url:yt,request_media_duration:vt,request_rendition_lists:pe})};ee.on("initFragmentLoaded",he);var ye=function(xe){var Ye=xe.type,$e=xe.fragmentModel,Ae=xe.chunk||{},me=Ae.mediaInfo,_e=Ae.start,ge=(me||{}).type,Te=L($e,ee),Ue=Te.requestStart,Be=Te.requestResponseStart,st=Te.requestResponseEnd,tt=Te.requestBytesLoaded,vt=Te.requestResponseHeaders,ot=Te.requestMediaDuration,yt=Te.requestHostname,He=Te.requestUrl,gt=R(ge,ee),Rr=gt.currentLevel,Et=gt.renditionWidth,Qt=gt.renditionHeight,vn=gt.renditionBitrate;Ee("requestcompleted",{request_event_type:Ye,request_start:Ue,request_response_start:Be,request_response_end:st,request_bytes_loaded:tt,request_type:ge,request_response_headers:vt,request_hostname:yt,request_url:He,request_media_start_time:_e,request_media_duration:ot,request_current_level:Rr,request_labeled_bitrate:vn,request_video_width:Et,request_video_height:Qt})};ee.on("mediaFragmentLoaded",ye);var Le={video:void 0,audio:void 0,totalBitrate:void 0},je=function(){if(Le.video&&typeof Le.video.bitrate=="number"){if(Le.video.width&&Le.video.height){var xe=Le.video.bitrate;return Le.audio&&typeof Le.audio.bitrate=="number"&&(xe+=Le.audio.bitrate),xe!==Le.totalBitrate?(Le.totalBitrate=xe,{video_source_bitrate:xe,video_source_height:Le.video.height,video_source_width:Le.video.width,video_source_codec:I(Le.video.codec)}):void 0}oe.warn("have bitrate info for video but missing width/height")}},Ve=function(xe,Ye,$e){if(typeof xe.newQuality=="number"){var Ae=xe.mediaType;if(Ae==="audio"||Ae==="video"){var me=ee.getBitrateInfoListFor(Ae).find(function(ge){return ge.qualityIndex===xe.newQuality});if(me&&typeof me.bitrate=="number"){Le[Ae]=y(y({},me),{},{codec:ee.getCurrentTrackFor(Ae).codec});var _e=je();_e&&Ee("renditionchange",_e)}else oe.warn("missing bitrate info for ".concat(Ae))}}else oe.warn("missing evt.newQuality in qualityChangeRendered event",xe)};ee.on("qualityChangeRendered",Ve);var at=function(xe){var Ye=xe.error,$e=xe.event,Ae=($e=$e||{}).request||{},me=M().event&&M().event.currentTarget||{};Ee("requestfailed",{request_error:Ye+"_"+$e.id+"_"+Ae.type,request_url:$e.url,request_hostname:o($e.url),request_type:Ae.mediaType,request_error_code:me.status,request_error_type:me.statusText})};ee.on("error",at),ee._stopMuxMonitor=function(){ee.off("manifestLoaded",ve),ee.off("initFragmentLoaded",he),ee.off("mediaFragmentLoaded",ye),ee.off("qualityChangeRendered",Ve),ee.off("error",at),delete ee._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&&Zr(O.prototype,w),W&&Zr(O,W),Object.defineProperty(O,"prototype",{writable:!1}),Q}(H),Vi=ji,Yi=C(153),Xt=C.n(Yi);function br(U){return br=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},br(U)}function qr(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 Q,V,Z=[],ie=!0,ee=!1;try{for(G=G.call(w);!(ie=(Q=G.next()).done)&&(Z.push(Q.value),!W||Z.length!==W);ie=!0);}catch(oe){ee=!0,V=oe}finally{try{ie||G.return==null||G.return()}finally{if(ee)throw V}}return Z}}(U,O)||function(w,W){if(w){if(typeof w=="string")return ei(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)?ei(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 ei(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 Ct,Xi=["loadstart","pause","play","playing","seeking","seeked","timeupdate","ratechange","stalled","waiting","error","ended"],zi={1:"MEDIA_ERR_ABORTED",2:"MEDIA_ERR_NETWORK",3:"MEDIA_ERR_DECODE",4:"MEDIA_ERR_SRC_NOT_SUPPORTED"};M()&&M().WeakMap&&(Ct=new WeakMap);var Qi="#EXT-X-TARGETDURATION",$i="#EXT-X-PART-INF",Ji="#EXT-X-SERVER-CONTROL",Zi="#EXTINF",qi="#EXT-X-PROGRAM-DATE-TIME",en="#EXT-X-VERSION",tn="#EXT-X-SESSION-DATA",dr=function(U){return this.buffer="",this.manifest={segments:[],serverControl:{},sessionData:{}},this.currentUri={},this.process(U),this.manifest};dr.prototype.process=function(U){var O;for(this.buffer+=U,O=this.buffer.indexOf(`
6
+ `);O>-1;O=this.buffer.indexOf(`
7
+ `))this.processLine(this.buffer.substring(0,O)),this.buffer=this.buffer.substring(O+1)},dr.prototype.processLine=function(U){var O=U.indexOf(":"),w=sn(U,O),W=w[0],G=w.length===2?Pr(w[1]):void 0;if(W[0]!=="#")this.currentUri.uri=W,this.manifest.segments.push(this.currentUri),this.manifest.targetDuration&&!("duration"in this.currentUri)&&(this.currentUri.duration=this.manifest.targetDuration),this.currentUri={};else switch(W){case Qi:if(!isFinite(G)||G<0)return;this.manifest.targetDuration=G,this.setHoldBack();break;case $i:Lr(this.manifest,w),this.manifest.partInf.partTarget&&(this.manifest.partTargetDuration=this.manifest.partInf.partTarget),this.setHoldBack();break;case Ji:Lr(this.manifest,w),this.setHoldBack();break;case Zi:G===0?this.currentUri.duration=.01:G>0&&(this.currentUri.duration=G);break;case qi:var Q=G,V=new Date(Q);this.manifest.dateTimeString||(this.manifest.dateTimeString=Q,this.manifest.dateTimeObject=V),this.currentUri.dateTimeString=Q,this.currentUri.dateTimeObject=V;break;case en:Lr(this.manifest,w);break;case tn:var Z=on(w[1]),ie=g(Z);a()(this.manifest.sessionData,ie)}},dr.prototype.setHoldBack=function(){var U=this.manifest,O=U.serverControl,w=U.targetDuration,W=U.partTargetDuration;if(O){var G="holdBack",Q="partHoldBack",V=w&&3*w,Z=W&&2*W;w&&!O.hasOwnProperty(G)&&(O[G]=V),V&&O[G]<V&&(O[G]=V),W&&!O.hasOwnProperty(Q)&&(O[Q]=3*W),W&&O[Q]<Z&&(O[Q]=Z)}};var Lr=function(U,O){var w,W=ti(O[0].replace("#EXT-X-",""));an(O[1])?(w={},w=a()(nn(O[1]),w)):w=Pr(O[1]),U[W]=w},ti=function(U){return U.toLowerCase().replace(/-(\w)/g,function(O){return O[1].toUpperCase()})},Pr=function(U){if(U.toLowerCase()==="yes"||U.toLowerCase()==="no")return U.toLowerCase()==="yes";var O=U.indexOf(":")!==-1?U:parseFloat(U);return isNaN(O)?U:O},rn=function(U){var O={},w=U.split("=");return w.length>1&&(O[ti(w[0])]=Pr(w[1])),O},nn=function(U){for(var O=U.split(","),w={},W=0;O.length>W;W++){var G=O[W],Q=rn(G);w=a()(Q,w)}return w},an=function(U){return U.indexOf("=")>-1},sn=function(U,O){return O===-1?[U]:[U.substring(0,O),U.substring(O+1)]},on=function(U){var O={};if(U){var w=U.search(",");return[U.slice(0,w),U.slice(w+1)].forEach(function(W,G){for(var Q=W.replace(/['"]+/g,"").split("="),V=0;V<Q.length;V++)Q[V]==="DATA-ID"&&(O["DATA-ID"]=Q[1-V]),Q[V]==="VALUE"&&(O.VALUE=Q[1-V])}),{data:O}}},ln=dr,un={safeCall:function(U,O,w,W){var G=W;if(U&&typeof U[O]=="function")try{G=U[O].apply(U,w)}catch(Q){f.info("safeCall error",Q)}return G},safeIncrement:l,getComputedStyle:function(U,O){var w;if(U&&O&&M()&&typeof M().getComputedStyle=="function")return Ct&&Ct.has(U)&&(w=Ct.get(U)),w||(w=M().getComputedStyle(U,null),Ct&&Ct.set(U,w)),w.getPropertyValue(O)},secondsToMs:function(U){return Math.floor(1e3*U)},assign:a(),headersStringToObject:u,extractHostnameAndDomain:n,extractHostname:o,manifestParser:ln,generateShortID:B,generateUUID:P,now:p.now},dn={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 fn(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 Q,V,Z=[],ie=!0,ee=!1;try{for(G=G.call(w);!(ie=(Q=G.next()).done)&&(Z.push(Q.value),!W||Z.length!==W);ie=!0);}catch(oe){ee=!0,V=oe}finally{try{ie||G.return==null||G.return()}finally{if(ee)throw V}}return Z}}(U,O)||function(w,W){if(w){if(typeof w=="string")return ri(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)?ri(w,W):void 0}}(U,O)||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 ri(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 ht={},zt=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):f.warn("`"+O+"` is an unknown task"):typeof O=="function"?M().setTimeout(function(){O(U)},0):f.warn("`"+O+"` is invalid.")},cn={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 Q=qr(A(W),3),V=Q[0],Z=Q[1],ie=Q[2],ee=w.log,oe=w.utils.getComputedStyle,Ee=w.utils.secondsToMs;if(!V)return ee.error("No element was found with the `"+Z+"` query selector.");if(ie!=="video"&&ie!=="audio")return ee.error("The element of `"+Z+"` was not a media element.");V.mux&&(V.mux.destroy(),delete V.mux,ee.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,Le=this.dashjs&&br(this.dashjs.getSource==="function")&&this.dashjs.getSource(),je={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:Xt()&&!!(Xt().fullscreenElement||Xt().webkitFullscreenElement||Xt().mozFullScreenElement||Xt().msFullscreenElement),video_poster_url:V.poster,video_source_url:ye||Le||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},Ve=G.getPlayheadTime();if(V.getStartDate&&Ve>0){var at=V.getStartDate();if(at&&typeof at.getTime=="function"&&at.getTime()){var xe=at.getTime();if(je.player_program_time=xe+Ve,V.seekable.length>0){var Ye=xe+V.seekable.end(V.seekable.length-1);je.player_live_edge_program_time=Ye}}}return je},V.mux=V.mux||{},V.mux.deleted=!1,V.mux.emit=function(pe,he){w.emit(Z,pe,he)};var ve=function(){ee.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(Z,"destroy")},V.mux.swapElement=function(pe){var he=qr(A(pe),3),ye=he[0],Le=he[1],je=he[2];return ye?je!=="video"&&je!=="audio"?w.log.error("The element of `"+Le+"` 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(Ve){V.removeEventListener(Ve,ye.mux.listeners[Ve],!1),ye.addEventListener(Ve,ye.mux.listeners[Ve],!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 `"+Le+"` query selector.")},V.mux.addHLSJS=function(pe){w.addHLSJS(Z,pe)},V.mux.addDashJS=function(pe){w.addDashJS(Z,pe)},V.mux.removeHLSJS=function(){w.removeHLSJS(Z)},V.mux.removeDashJS=function(){w.removeDashJS(Z)},w.init(Z,G),w.emit(Z,"playerready"),V.paused||(w.emit(Z,"play"),V.readyState>2&&w.emit(Z,"playing")),V.mux.listeners={},Xi.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=zi[V.error.code]||V.error.message}w.emit(Z,pe,he)},V.addEventListener(pe,V.mux.listeners[pe],!1))})}(zt,U,O)},destroyMonitor:function(U){var O=fn(A(U),1)[0];O&&O.mux&&typeof O.mux.destroy=="function"?O.mux.destroy():f.error("A video element monitor for `"+U+"` has not been initialized via `mux.monitor`.")},addHLSJS:function(U,O){var w=b(U);ht[w]?ht[w].addHLSJS(O):f.error("A monitor for `"+w+"` has not been initialized.")},addDashJS:function(U,O){var w=b(U);ht[w]?ht[w].addDashJS(O):f.error("A monitor for `"+w+"` has not been initialized.")},removeHLSJS:function(U){var O=b(U);ht[O]?ht[O].removeHLSJS():f.error("A monitor for `"+O+"` has not been initialized.")},removeDashJS:function(U){var O=b(U);ht[O]?ht[O].removeDashJS():f.error("A monitor for `"+O+"` has not been initialized.")},init:function(U,O){E()&&O&&O.respectDoNotTrack&&f.info("The browser's Do Not Track flag is enabled - Mux beaconing is disabled.");var w=b(U);ht[w]=new Vi(zt,w,O)},emit:function(U,O,w){var W=b(U);ht[W]?(ht[W].emit(O,w),O==="destroy"&&delete ht[W]):f.error("A monitor for `"+W+"` has not been initialized.")},checkDoNotTrack:E,log:f,utils:un,events:dn,WINDOW_HIDDEN:!1,WINDOW_UNLOADING:!1};Object.assign(zt,cn),M()!==void 0&&typeof M().addEventListener=="function"&&M().addEventListener("pagehide",function(U){U.persisted||(zt.WINDOW_UNLOADING=!0)},!1);var hn=zt},655:function(N,_,C){var D,M;function P(B){return P=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(b){return typeof b}:function(b){return b&&typeof Symbol=="function"&&b.constructor===Symbol&&b!==Symbol.prototype?"symbol":typeof b},P(B);}(function(B){var b=!1;if((M=typeof(D=B)=="function"?D.call(_,C,_,N):D)===void 0||(N.exports=M),b=!0,P(_)==="object"&&(N.exports=B(),b=!0),!b){var A=window.Cookies,S=window.Cookies=B();S.noConflict=function(){return window.Cookies=A,S}}})(function(){var B=function(){for(var b=0,A={};b<arguments.length;b++){var S=arguments[b];for(var T in S)A[T]=S[T]}return A};return function b(A){function S(T,x,f){var E;if(typeof document!="undefined"){if(arguments.length>1){if(typeof(f=B({path:"/"},S.defaults,f)).expires=="number"){var p=new Date;p.setMilliseconds(p.getMilliseconds()+864e5*f.expires),f.expires=p}try{E=JSON.stringify(x),/^[\{\[]/.test(E)&&(x=E)}catch{}return x=A.write?A.write(x,T):encodeURIComponent(String(x)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent),T=(T=(T=encodeURIComponent(String(T))).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent)).replace(/[\(\)]/g,escape),document.cookie=[T,"=",x,f.expires?"; expires="+f.expires.toUTCString():"",f.path?"; path="+f.path:"",f.domain?"; domain="+f.domain:"",f.secure?"; secure":""].join("")}T||(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=A.read?A.read(v,l):A(v,l)||v.replace(a,decodeURIComponent),this.json)try{v=JSON.parse(v)}catch{}if(T===l){E=v;break}T||(E[l]=v)}catch{}}return E}}return S.set=S,S.get=function(T){return S.call(S,T)},S.getJSON=function(){return S.apply({json:!0},[].slice.call(arguments))},S.defaults={},S.remove=function(T,x){S(T,"",B(x,{expires:-1}))},S.withConverter=b,S}(function(){})})},153:function(N,_,C){var D,M=C.g!==void 0?C.g:typeof window!="undefined"?window:{},P=C(558);typeof document!="undefined"?D=document:(D=M["__GLOBAL_DOCUMENT_CACHE@4"])||(D=M["__GLOBAL_DOCUMENT_CACHE@4"]=P),N.exports=D},48:function(N,_,C){var D;D=typeof window!="undefined"?window:C.g!==void 0?C.g:typeof self!="undefined"?self:{},N.exports=D},678:function(N){var _=9007199254740991,C="[object Arguments]",D="[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 b,A,S=Object.prototype,T=S.hasOwnProperty,x=S.toString,f=S.propertyIsEnumerable,E=(b=Object.keys,A=Object,function(e){return b(A(e))}),p=Math.max,h=!f.call({valueOf:1},"valueOf");function a(e,r){var t=i(e)||function(L){return function(R){return function(I){return!!I&&typeof I=="object"}(R)&&u(R)}(L)&&T.call(L,"callee")&&(!f.call(L,"callee")||x.call(L)==C)}(e)?function(L,R){for(var I=-1,k=Array(L);++I<L;)k[I]=R(I);return k}(e.length,String):[],s=t.length,y=!!s;for(var d in e)!r&&!T.call(e,d)||y&&(d=="length"||n(d,s))||t.push(d);return t}function o(e,r,t){var s=e[r];T.call(e,r)&&l(s,t)&&(t!==void 0||r in e)||(e[r]=t)}function n(e,r){return!!(r=r==null?_: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||S)}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<=_}(e.length)&&!function(r){var t=g(r)?x.call(r):"";return t==D||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,d,L){d||(d={});for(var R=-1,I=y.length;++R<I;){var k=y[R],F=L?L(d[k],s[k],k,d,s):void 0;o(d,k,F===void 0?s[k]:F)}})(r,function(s){return u(s)?a(s):function(y){if(!v(y))return E(y);var d=[];for(var L in Object(y))T.call(y,L)&&L!="constructor"&&d.push(L);return d}(s)}(r),e);else for(var t in r)T.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),d=Array(y);++s<y;)d[s]=t[r+s];s=-1;for(var L=Array(r+1);++s<r;)L[s]=t[s];return L[r]=d,B(e,this,L)}}(function(e,r){var t=-1,s=r.length,y=s>1?r[s-1]:void 0,d=s>2?r[2]:void 0;for(y=c.length>3&&typeof y=="function"?(s--,y):void 0,d&&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],d)&&(y=s<3?void 0:y,s=1),e=Object(e);++t<s;){var L=r[t];L&&c(e,L,t,y)}return e}));N.exports=m},640:function(N,_,C){var D,M;(function(P,B){"use strict";D=function(){var b=function(){},A="undefined",S=typeof window!==A&&typeof window.navigator!==A&&/Trident\/|MSIE /.test(window.navigator.userAgent),T=["trace","debug","info","warn","error"];function x(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 f(){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!==A&&(i==="trace"&&S?f:console[i]!==void 0?x(console,i):console.log!==void 0?x(console,"log"):b)}function p(i,u){for(var g=0;g<T.length;g++){var c=T[g];this[c]=g<i?b:this.methodFactory(c,i,u)}this.log=this.debug}function h(i,u,g){return function(){typeof console!==A&&(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(d){var L=(T[d]||"silent").toUpperCase();if(typeof window!==A&&e){try{return void(window.localStorage[e]=L)}catch{}try{window.document.cookie=encodeURIComponent(e)+"="+L+";"}catch{}}}function t(){var d;if(typeof window!==A&&e){try{d=window.localStorage[e]}catch{}if(typeof d===A)try{var L=window.document.cookie,R=L.indexOf(encodeURIComponent(e)+"=");R!==-1&&(d=/^([^;]+)/.exec(L.slice(R))[1])}catch{}return m.levels[d]===void 0&&(d=void 0),d}}function s(){if(typeof window!==A&&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(d,L){if(typeof d=="string"&&m.levels[d.toUpperCase()]!==void 0&&(d=m.levels[d.toUpperCase()]),!(typeof d=="number"&&d>=0&&d<=m.levels.SILENT))throw"log.setLevel() called with invalid level: "+d;if(c=d,L!==!1&&r(d),p.call(m,d,i),typeof console===A&&d<m.levels.SILENT)return"No console available for logging"},m.setDefaultLevel=function(d){u=d,t()||m.setLevel(d,!1)},m.resetLevel=function(){m.setLevel(u,!1),s()},m.enableAll=function(d){m.setLevel(m.levels.TRACE,d)},m.disableAll=function(d){m.setLevel(m.levels.SILENT,d)};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!==A?window.log:void 0;return n.noConflict=function(){return typeof window!==A&&window.log===n&&(window.log=l),n},n.getLoggers=function(){return v},n.default=n,n},(M=typeof D=="function"?D.call(_,C,_,N):D)===void 0||(N.exports=M)})()},375:function(N,_){"use strict";var C=Object.prototype.hasOwnProperty;function D(P){try{return decodeURIComponent(P.replace(/\+/g," "))}catch{return null}}function M(P){try{return encodeURIComponent(P)}catch{return null}}_.stringify=function(P,B){B=B||"";var b,A,S=[];for(A in typeof B!="string"&&(B="?"),P)if(C.call(P,A)){if((b=P[A])||b!=null&&!isNaN(b)||(b=""),A=M(A),b=M(b),A===null||b===null)continue;S.push(A+"="+b)}return S.length?B+S.join("&"):""},_.parse=function(P){for(var B,b=/([^=?#&]+)=?([^&]*)/g,A={};B=b.exec(P);){var S=D(B[1]),T=D(B[2]);S===null||T===null||S in A||(A[S]=T)}return A}},558:function(){}},ne={};function z(N){var _=ne[N];if(_!==void 0)return _.exports;var C=ne[N]={exports:{}};return X[N].call(C.exports,C,C.exports,z),C.exports}return z.n=function(N){var _=N&&N.__esModule?function(){return N.default}:function(){return N};return z.d(_,{a:_}),_},z.d=function(N,_){for(var C in _)z.o(_,C)&&!z.o(N,C)&&Object.defineProperty(N,C,{enumerable:!0,get:_[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,_){return Object.prototype.hasOwnProperty.call(N,_)},z(80)}()},typeof cr=="object"&&typeof wr=="object"?wr.exports=q():typeof cr=="object"?cr.mux=q():$.mux=q()})()});var hr=ni((Zt,kr)=>{typeof window!="undefined"&&function(q,X){typeof Zt=="object"&&typeof kr=="object"?kr.exports=X():typeof define=="function"&&define.amd?define([],X):typeof Zt=="object"?Zt.Hls=X():q.Hls=X()}(Zt,()=>(()=>{var $={"./src/config.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{enableStreamingMode:()=>r,hlsDefaultConfig:()=>c,mergeConfig:()=>e});var C=_("./src/controller/abr-controller.ts"),D=_("./src/controller/audio-stream-controller.ts"),M=_("./src/controller/audio-track-controller.ts"),P=_("./src/controller/subtitle-stream-controller.ts"),B=_("./src/controller/subtitle-track-controller.ts"),b=_("./src/controller/buffer-controller.ts"),A=_("./src/controller/timeline-controller.ts"),S=_("./src/controller/cap-level-controller.ts"),T=_("./src/controller/fps-controller.ts"),x=_("./src/controller/eme-controller.ts"),f=_("./src/controller/cmcd-controller.ts"),E=_("./src/utils/xhr-loader.ts"),p=_("./src/utils/fetch-loader.ts"),h=_("./src/utils/cues.ts"),a=_("./src/utils/mediakeys-helper.ts"),o=_("./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 d in y)Object.prototype.hasOwnProperty.call(y,d)&&(t[d]=y[d])}return t},n.apply(this,arguments)}function v(t,s){var y=Object.keys(t);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(t);s&&(d=d.filter(function(L){return Object.getOwnPropertyDescriptor(t,L).enumerable})),y.push.apply(y,d)}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(d){i(t,d,y[d])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(y)):v(Object(y)).forEach(function(d){Object.defineProperty(t,d,Object.getOwnPropertyDescriptor(y,d))})}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 d=y.call(t,s||"default");if(typeof d!="object")return d;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:b.default,capLevelController:S.default,fpsController:T.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:A.TimelineController,audioStreamController:D.default,audioTrackController:M.default,emeController:x.default,cmcdController:f.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,_)=>{"use strict";_.r(N),_.d(N,{default:()=>E});var C=_("./src/polyfills/number.ts"),D=_("./src/utils/ewma-bandwidth-estimator.ts"),M=_("./src/events.ts"),P=_("./src/errors.ts"),B=_("./src/types/loader.ts"),b=_("./src/utils/logger.ts");function A(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,T(o.key),o)}}function S(p,h,a){return h&&A(p.prototype,h),a&&A(p,a),Object.defineProperty(p,"prototype",{writable:!1}),p}function T(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)}var f=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 D.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,d=s[o.level],L=u.total||Math.max(u.loaded,Math.round(g*d.maxBitrate/8)),R=r?u.loaded*1e3/m:0,I=R?(L-u.loaded)/R:L*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||(b.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
+ Current BW estimate: `+((0,C.isFiniteNumber)(t)?(t/1024).toFixed(3):"Unknown")+` Kb/s
10
+ Estimated load time for current fragment: `+I.toFixed(3)+` s
11
+ Estimated load time for the next fragment: `+F.toFixed(3)+` s
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;b.logger.trace((t?"rebuffering expected":"buffer is empty")+", finding optimal quality level");var y=c?Math.min(c,i.maxStarvationDelay):i.maxStarvationDelay,d=i.abrBandWidthFactor,L=i.abrBandWidthUpFactor;if(!t){var R=this.bitrateTestDelay;if(R){var I=c?Math.min(c,i.maxLoadingDelay):i.maxLoadingDelay;y=I-R,b.logger.trace("bitrate test took "+Math.round(1e3*R)+"ms, set first fragment max fetchDuration to "+Math.round(1e3*y)+" ms"),d=L=1}}return s=this.findBestLevel(e,u,l,t+y,d,L),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,d=m?m.duration:c?c.duration:0,L=v;L>=n;L--){var R=r[L];if(!(!R||y&&R.codecSet!==y)){var I=R.details,k=(m?I==null?void 0:I.partTarget:I==null?void 0:I.averagetargetduration)||d,F=void 0;L<=e?F=i*o:F=u*o;var K=r[L].maxBitrate,H=K*k/F;if(b.logger.trace("level/adjustedbw/bitrate/avgDuration/maxFetchDuration/fetchDuration: "+L+"/"+Math.round(F)+"/"+K+"/"+k+"/"+l+"/"+H),F>K&&(H===0||!(0,C.isFiniteNumber)(H)||s&&!this.bitrateTestDelay||H<l))return L}}return-1},S(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=f},"./src/controller/audio-stream-controller.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>i});var C=_("./src/polyfills/number.ts"),D=_("./src/controller/base-stream-controller.ts"),M=_("./src/events.ts"),P=_("./src/utils/buffer-helper.ts"),B=_("./src/controller/fragment-tracker.ts"),b=_("./src/types/level.ts"),A=_("./src/types/loader.ts"),S=_("./src/loader/fragment.ts"),T=_("./src/demux/chunk-cache.ts"),x=_("./src/demux/transmuxer-interface.ts"),f=_("./src/types/transmuxer.ts"),E=_("./src/controller/fragment-finders.ts"),p=_("./src/utils/discontinuities.ts"),h=_("./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 d=t.cc;this.initPTS[t.cc]=y,this.log("InitPTS for cc: "+d+" found from main: "+y),this.videoTrackCC=d,this.state===D.State.WAITING_INIT_PTS&&this.tick()}},c.startLoad=function(e){if(!this.levels){this.startPosition=e,this.state=D.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=D.State.IDLE):(this.loadedmetadata=!1,this.state=D.State.WAITING_TRACK),this.nextLoadPosition=this.startPosition=this.lastCurrentTime=e,this.tick()},c.doTick=function(){switch(this.state){case D.State.IDLE:this.doTickIdle();break;case D.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=D.State.WAITING_INIT_PTS}break}case D.State.FRAG_LOADING_WAITING_RETRY:{var y,d=performance.now(),L=this.retryDate;(!L||d>=L||(y=this.media)!==null&&y!==void 0&&y.seeking)&&(this.log("RetryDate reached, switch back to IDLE state"),this.resetStartWhenNotLoaded(this.trackId),this.state=D.State.IDLE);break}case D.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=D.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(),J=P.BufferHelper.bufferInfo(this.mediaBuffer,Y,this.config.maxBufferHole),te=(0,E.fragmentWithinToleranceTest)(J.end,this.config.maxFragLookUpTolerance,I);te<0&&(this.log("Waiting fragment cc ("+I.cc+") @ "+I.start+" cancelled because another fragment at "+J.end+" is needed"),this.clearWaitingFragment())}}else this.state=D.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=D.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 d=r[s],L=d.details;if(!L||L.live&&this.levelLastLoaded!==s||this.waitForCdnTuneIn(L)){this.state=D.State.WAITING_TRACK;return}var R=this.mediaBuffer?this.mediaBuffer:this.media;this.bufferFlushed&&R&&(this.bufferFlushed=!1,this.afterBufferFlushed(R,S.ElementaryStreamTypes.AUDIO,A.PlaylistLevelType.AUDIO));var I=this.getFwdBufferInfo(R,A.PlaylistLevelType.AUDIO);if(I!==null){var k=this.audioSwitch;if(!k&&this._streamEnded(I,L)){e.trigger(M.Events.BUFFER_EOS,{type:"audio"}),this.state=D.State.ENDED;return}var F=this.getFwdBufferInfo(this.videoBuffer?this.videoBuffer:this.media,A.PlaylistLevelType.MAIN),K=I.len,H=this.getMaxBufferLength(F==null?void 0:F.len);if(!(K>=H&&!k)){var j=L.fragments,Y=j[0].start,J=I.end;if(k&&t){var te=this.getLoadPosition();J=te,L.PTSKnown&&te<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&&J>F.end+L.targetduration)&&!((!F||!F.len)&&I.len)){var ae=this.getNextFragment(J,L);if(!ae){this.bufferFlushed=!0;return}this.loadFragment(ae,L,J)}}}}},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 b.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=D.State.IDLE):this.state=D.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,d=r.id;if(!s){this.warn("Audio tracks were reset while loading level "+d);return}this.log("Track "+d+" loaded ["+y.startSN+","+y.endSN+"],duration:"+y.totalduration);var L=s[d],R=0;if(y.live||(t=L.details)!==null&&t!==void 0&&t.live){var I=this.mainDetails;if(y.fragments[0]||(y.deltaUpdateFailed=!0),y.deltaUpdateFailed||!I)return;!L.details&&y.hasProgramDateTime&&I.hasProgramDateTime?((0,p.alignMediaPlaylistByPDT)(y,I),R=y.fragments[0].start):R=this.alignPlaylists(y,L.details)}L.details=y,this.levelLastLoaded=d,!this.startFragRequested&&(this.mainDetails||!y.live)&&this.setStartPosition(L.details,R),this.state===D.State.WAITING_TRACK&&!this.waitForCdnTuneIn(y)&&(this.state=D.State.IDLE),this.tick()},c._handleFragmentLoadProgress=function(e){var r,t=e.frag,s=e.part,y=e.payload,d=this.config,L=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[L];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=d.defaultAudioCodec||I.audioCodec||"mp4a.40.2",K=this.transmuxer;K||(K=this.transmuxer=new x.default(this.hls,A.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,J=s?s.index:-1,te=J!==-1,ae=new f.ChunkMetadata(t.level,t.sn,t.stats.chunkCount,y.byteLength,J,te);K.push(y,j,F,"",t,s,k.totalduration,Y,ae,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 "+L);var re=this.waitingData=this.waitingData||{frag:t,part:s,cache:new T.default,complete:!1},se=re.cache;se.push(new Uint8Array(y)),this.waitingVideoCC=this.videoTrackCC,this.state=D.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!==A.PlaylistLevelType.AUDIO){if(!this.loadedmetadata&&t.type===A.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(A.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(A.PlaylistLevelType.AUDIO,r);break;case h.ErrorDetails.AUDIO_TRACK_LOAD_ERROR:case h.ErrorDetails.AUDIO_TRACK_LOAD_TIMEOUT:this.state!==D.State.ERROR&&this.state!==D.State.STOPPED&&(this.state=r.fatal?D.State.ERROR:D.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===D.State.PARSING||this.state===D.State.PARSED)){var t=!0,s=this.getFwdBufferInfo(this.mediaBuffer,A.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===S.ElementaryStreamTypes.AUDIO&&(this.bufferFlushed=!0,this.state===D.State.ENDED&&(this.state=D.State.IDLE))},c._handleTransmuxComplete=function(e){var r,t="audio",s=this.hls,y=e.remuxResult,d=e.chunkMeta,L=this.getCurrentContext(d);if(!L){this.warn("The loading context changed while buffering fragment "+d.sn+" of level "+d.level+". This chunk will not be buffered."),this.resetStartWhenNotLoaded(d.level);return}var R=L.frag,I=L.part,k=L.level.details,F=y.audio,K=y.text,H=y.id3,j=y.initSegment;if(!(this.fragContextChanged(R)||!k)){if(this.state=D.State.PARSING,this.audioSwitch&&F&&this.completeAudioSwitch(),j!=null&&j.tracks&&(this._bufferInitSegment(j.tracks,R,d),s.trigger(M.Events.FRAG_PARSING_INIT_SEGMENT,{frag:R,id:t,tracks:j.tracks})),F){var Y=F.startPTS,J=F.endPTS,te=F.startDTS,ae=F.endDTS;I&&(I.elementaryStreams[S.ElementaryStreamTypes.AUDIO]={startPTS:Y,endPTS:J,startDTS:te,endDTS:ae}),R.setElementaryStreamInfo(S.ElementaryStreamTypes.AUDIO,Y,J,te,ae),this.bufferFragmentData(F,R,I,d)}if(H!=null&&(r=H.samples)!==null&&r!==void 0&&r.length){var re=a({id:t,frag:R,details:k},H);s.trigger(M.Events.FRAG_PARSING_METADATA,re)}if(K){var se=a({id:t,frag:R,details:k},K);s.trigger(M.Events.FRAG_PARSING_USERDATA,se)}}},c._bufferInitSegment=function(e,r,t){if(this.state===D.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 d={type:"audio",frag:r,part:null,chunkMeta:t,parent:r.type,data:y};this.hls.trigger(M.Events.BUFFER_APPENDING,d)}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=D.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}(D.default);let i=l},"./src/controller/audio-track-controller.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>E});var C=_("./src/events.ts"),D=_("./src/errors.ts"),M=_("./src/controller/base-playlist-controller.ts"),P=_("./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,A(o.key),o)}}function b(p,h,a){return h&&B(p.prototype,h),a&&B(p,a),Object.defineProperty(p,"prototype",{writable:!1}),p}function A(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)}function T(p,h){p.prototype=Object.create(h.prototype),p.prototype.constructor=p,x(p,h)}function x(p,h){return x=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(o,n){return o.__proto__=n,o},x(p,h)}var f=function(p){T(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:D.ErrorTypes.MEDIA_ERROR,details:D.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})}},b(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=f},"./src/controller/base-playlist-controller.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>B});var C=_("./src/types/level.ts"),D=_("./src/controller/level-helper.ts"),M=_("./src/utils/logger.ts"),P=_("./src/errors.ts"),B=function(){function b(S,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=M.logger.log.bind(M.logger,T+":"),this.warn=M.logger.warn.bind(M.logger,T+":"),this.hls=S}var A=b.prototype;return A.destroy=function(){this.clearTimer(),this.hls=this.log=this.warn=null},A.onError=function(T,x){x.fatal&&(x.type===P.ErrorTypes.NETWORK_ERROR||x.type===P.ErrorTypes.KEY_SYSTEM_ERROR)&&this.stopLoad()},A.clearTimer=function(){clearTimeout(this.timer),this.timer=-1},A.startLoad=function(){this.canLoad=!0,this.retryCount=0,this.requestScheduled=-1,this.loadPlaylist()},A.stopLoad=function(){this.canLoad=!1,this.clearTimer()},A.switchParams=function(T,x){var f=x==null?void 0:x.renditionReports;if(f)for(var E=0;E<f.length;E++){var p=f[E],h=void 0;try{h=new self.URL(p.URI,x.url).href}catch(v){M.logger.warn("Could not construct new URL for Rendition Report: "+v),h=p.URI||""}if(h===T.slice(-h.length)){var a=parseInt(p["LAST-MSN"])||(x==null?void 0:x.lastPartSn),o=parseInt(p["LAST-PART"])||(x==null?void 0:x.lastPartIndex);if(this.hls.config.lowLatencyMode){var n=Math.min(x.age-x.partTarget,x.targetduration);o>=0&&n>x.partTarget&&(o+=1)}return new C.HlsUrlParameters(a,o>=0?o:void 0,C.HlsSkip.No)}}},A.loadPlaylist=function(T){this.requestScheduled===-1&&(this.requestScheduled=self.performance.now())},A.shouldLoadTrack=function(T){return this.canLoad&&T&&!!T.url&&(!T.details||T.details.live)},A.playlistLoaded=function(T,x,f){var E=this,p=x.details,h=x.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||f!=null&&f.live){if(p.reloaded(f),f&&this.log("live playlist "+T+" "+(p.advanced?"REFRESHED "+p.lastPartSn+"-"+p.lastPartIndex:"MISSED")),f&&p.fragments.length>0&&(0,D.mergeDetails)(f,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(f&&y>f.tuneInGoal)this.warn("CDN Tune-in goal increased from: "+f.tuneInGoal+" to: "+y+" with playlist age: "+p.age),y=0;else{var d=Math.floor(y/p.targetduration);if(v+=d,l!==void 0){var L=Math.round(y%p.targetduration/p.partTarget);l+=L}this.log("CDN Tune-in age: "+p.ageHeader+"s last advanced "+t.toFixed(2)+"s goal: "+y+" skip sn "+d+" to part "+l)}p.tuneInGoal=y}if(n=this.getDeliveryDirectives(p,x.deliveryDirectives,v,l),i||!e){this.loadPlaylist(n);return}}else n=this.getDeliveryDirectives(p,x.deliveryDirectives,v,l);var R=this.hls.mainForwardBufferInfo,I=R?R.end-R.len:0,k=(p.edge-I)*1e3,F=(0,D.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 "+T+" in "+Math.round(K)+" ms"),this.timer=self.setTimeout(function(){return E.loadPlaylist(n)},K)}else this.clearTimer()},A.getDeliveryDirectives=function(T,x,f,E){var p=(0,C.getSkipValue)(T,f);return x!=null&&x.skip&&T.deltaUpdateFailed&&(f=x.msn,E=x.part,p=C.HlsSkip.No),new C.HlsUrlParameters(f,E,p)},A.retryLoadingOrFail=function(T){var x=this,f=this.hls.config,E=this.retryCount<f.levelLoadingMaxRetry;if(E){var p;if(this.requestScheduled=-1,this.retryCount++,T.details.indexOf("LoadTimeOut")>-1&&(p=T.context)!==null&&p!==void 0&&p.deliveryDirectives)this.warn("retry playlist loading #"+this.retryCount+' after "'+T.details+'"'),this.loadPlaylist();else{var h=Math.min(Math.pow(2,this.retryCount)*f.levelLoadingRetryDelay,f.levelLoadingMaxRetryTimeout);this.timer=self.setTimeout(function(){return x.loadPlaylist()},h),this.warn("retry playlist loading #"+this.retryCount+" in "+h+' ms after "'+T.details+'"')}}else this.warn('cannot recover from error "'+T.details+'"'),this.clearTimer(),T.fatal=!0;return E},b}()},"./src/controller/base-stream-controller.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{State:()=>m,default:()=>e});var C=_("./src/polyfills/number.ts"),D=_("./src/task-loop.ts"),M=_("./src/controller/fragment-tracker.ts"),P=_("./src/utils/buffer-helper.ts"),B=_("./src/utils/logger.ts"),b=_("./src/events.ts"),A=_("./src/errors.ts"),S=_("./src/types/transmuxer.ts"),T=_("./src/utils/mp4-tools.ts"),x=_("./src/utils/discontinuities.ts"),f=_("./src/controller/fragment-finders.ts"),E=_("./src/controller/level-helper.ts"),p=_("./src/loader/fragment-loader.ts"),h=_("./src/crypt/decrypter.ts"),a=_("./src/utils/time-ranges.ts"),o=_("./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,d){return y.__proto__=d,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,d,L,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=L,I.fragmentTracker=d,I.config=y.config,I.decrypter=new h.default(y.config),y.on(b.Events.LEVEL_SWITCHING,I.onLevelSwitching,u(I)),I}var s=t.prototype;return s.doTick=function(){this.onTickEnd()},s.onTickEnd=function(){},s.startLoad=function(d){},s.stopLoad=function(){this.fragmentLoader.abort(),this.keyLoader.abort();var d=this.fragCurrent;d&&(d.abortRequests(),this.fragmentTracker.removeFragment(d)),this.resetTransmuxer(),this.fragCurrent=null,this.fragPrevious=null,this.clearInterval(),this.clearNextTick(),this.state=m.STOPPED},s._streamEnded=function(d,L){if(L.live||d.nextStart||!d.end||!this.media)return!1;var R=L.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=L.fragments[L.fragments.length-1].type;return this.fragmentTracker.isEndListAppended(F)},s.getLevelDetails=function(){if(this.levels&&this.levelLastLoaded!==null){var d;return(d=this.levels[this.levelLastLoaded])===null||d===void 0?void 0:d.details}},s.onMediaAttached=function(d,L){var R=this.media=this.mediaBuffer=L.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 d=this.media;d!=null&&d.ended&&(this.log("MSE detaching and video ended, reset startPosition"),this.startPosition=this.lastCurrentTime=0),d&&this.onvseeking&&this.onvended&&(d.removeEventListener("seeking",this.onvseeking),d.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 d=this.config,L=this.fragCurrent,R=this.media,I=this.mediaBuffer,k=this.state,F=R?R.currentTime:0,K=P.BufferHelper.bufferInfo(I||R,F,d.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(L){var H=d.maxFragLookUpTolerance,j=L.start-H,Y=L.start+L.duration+H;if(!K.len||Y<K.start||j>K.end){var J=F>Y;(F<j||J)&&(J&&L.loader&&(this.log("seeking outside of buffer while fragment load in progress, cancel fragment load"),L.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(d,L){this.fragLoadError=0},s.onHandlerDestroying=function(){this.stopLoad(),r.prototype.onHandlerDestroying.call(this)},s.onHandlerDestroyed=function(){this.state=m.STOPPED,this.hls.off(b.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(d,L,R){this._loadFragForPlayback(d,L,R)},s._loadFragForPlayback=function(d,L,R){var I=this,k=function(K){if(I.fragContextChanged(d)){I.warn("Fragment "+d.sn+(K.part?" p: "+K.part.index:"")+" of level "+d.level+" was dropped during download."),I.fragmentTracker.removeFragment(d);return}d.stats.chunkCount++,I._handleFragmentLoadProgress(K)};this._doFragLoad(d,L,R,k).then(function(F){if(!!F){I.fragLoadError=0;var K=I.state;if(I.fragContextChanged(d)){(K===m.FRAG_LOADING||!I.fragCurrent&&K===m.PARSING)&&(I.fragmentTracker.removeFragment(d),I.state=m.IDLE);return}"payload"in F&&(I.log("Loaded fragment "+d.sn+" of level "+d.level),I.hls.trigger(b.Events.FRAG_LOADED,F)),I._handleFragmentLoadComplete(F)}}).catch(function(F){I.state===m.STOPPED||I.state===m.ERROR||(I.warn(F),I.resetFragmentLoading(d))})},s.flushMainBuffer=function(d,L,R){if(R===void 0&&(R=null),!!(d-L)){var I={startOffset:d,endOffset:L,type:R};this.fragLoadError=0,this.hls.trigger(b.Events.BUFFER_FLUSHING,I)}},s._loadInitSegment=function(d,L){var R=this;this._doFragLoad(d,L).then(function(I){if(!I||R.fragContextChanged(d)||!R.levels)throw new Error("init load aborted");return I}).then(function(I){var k=R.hls,F=I.payload,K=d.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(b.Events.FRAG_DECRYPTED,{frag:d,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[d.level].details;console.assert(H,"Level details are defined when init segment is loaded");var j=d.stats;R.state=m.IDLE,R.fragLoadError=0,d.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(b.Events.FRAG_BUFFERED,{stats:j,frag:k,part:null,id:d.type}),R.tick()}).catch(function(I){R.state===m.STOPPED||R.state===m.ERROR||(R.warn(I),R.resetFragmentLoading(d))})},s.fragContextChanged=function(d){var L=this.fragCurrent;return!d||!L||d.level!==L.level||d.sn!==L.sn||d.urlId!==L.urlId},s.fragBufferedComplete=function(d,L){var R,I,k=this.mediaBuffer?this.mediaBuffer:this.media;this.log("Buffered "+d.type+" sn: "+d.sn+(L?" part: "+L.index:"")+" of "+(this.logPrefix==="[stream-controller]"?"level":"track")+" "+d.level+" "+(k?a.default.toString(P.BufferHelper.getBuffered(k)):"(detached)")),this.state=m.IDLE,k&&(!this.loadedmetadata&&d.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(d){var L=this.transmuxer;if(!!L){var R=d.frag,I=d.part,k=d.partsLoaded,F=!k||k.length===0||k.some(function(H){return!H}),K=new S.ChunkMetadata(R.level,R.sn,R.stats.chunkCount+1,0,I?I.index:-1,!F);L.flush(K)}},s._handleFragmentLoadProgress=function(d){},s._doFragLoad=function(d,L,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(d.encrypted&&!((k=d.decryptdata)!==null&&k!==void 0&&k.key)?(this.log("Loading key for "+d.sn+" of ["+L.startSN+"-"+L.endSN+"], "+(this.logPrefix==="[stream-controller]"?"level":"track")+" "+d.level),this.state=m.KEY_LOADING,this.fragCurrent=d,K=this.keyLoader.load(d).then(function(te){if(!F.fragContextChanged(te.frag))return F.hls.trigger(b.Events.KEY_LOADED,te),te}),this.hls.trigger(b.Events.KEY_LOADING,{frag:d}),this.throwIfFragContextChanged("KEY_LOADING")):!d.encrypted&&L.encryptedFragments.length&&this.keyLoader.loadClear(d,L.encryptedFragments),R=Math.max(d.start,R||0),this.config.lowLatencyMode&&L){var H=L.partList;if(H&&I){R>d.end&&L.fragmentHint&&(d=L.fragmentHint);var j=this.getNextPart(H,d,R);if(j>-1){var Y=H[j];return this.log("Loading part sn: "+d.sn+" p: "+Y.index+" cc: "+d.cc+" of playlist ["+L.startSN+"-"+L.endSN+"] parts [0-"+j+"-"+(H.length-1)+"] "+(this.logPrefix==="[stream-controller]"?"level":"track")+": "+d.level+", target: "+parseFloat(R.toFixed(3))),this.nextLoadPosition=Y.start+Y.duration,this.state=m.FRAG_LOADING,this.hls.trigger(b.Events.FRAG_LOADING,{frag:d,part:H[j],targetBufferTime:R}),this.throwIfFragContextChanged("FRAG_LOADING parts"),K?K.then(function(te){return!te||F.fragContextChanged(te.frag)?null:F.doFragPartsLoad(d,H,j,I)}).catch(function(te){return F.handleFragLoadError(te)}):this.doFragPartsLoad(d,H,j,I).catch(function(te){return F.handleFragLoadError(te)})}else if(!d.url||this.loadedEndOfParts(H,R))return Promise.resolve(null)}}this.log("Loading fragment "+d.sn+" cc: "+d.cc+" "+(L?"of ["+L.startSN+"-"+L.endSN+"] ":"")+(this.logPrefix==="[stream-controller]"?"level":"track")+": "+d.level+", target: "+parseFloat(R.toFixed(3))),(0,C.isFiniteNumber)(d.sn)&&!this.bitrateTest&&(this.nextLoadPosition=d.start+d.duration),this.state=m.FRAG_LOADING,this.hls.trigger(b.Events.FRAG_LOADING,{frag:d,targetBufferTime:R}),this.throwIfFragContextChanged("FRAG_LOADING");var J=this.config.progressive;return J&&K?K.then(function(te){return!te||F.fragContextChanged(te==null?void 0:te.frag)?null:F.fragmentLoader.load(d,I)}).catch(function(te){return F.handleFragLoadError(te)}):Promise.all([this.fragmentLoader.load(d,J?I:void 0),K]).then(function(te){var ae=te[0];return!J&&ae&&I&&I(ae),ae}).catch(function(te){return F.handleFragLoadError(te)})},s.throwIfFragContextChanged=function(d){if(this.fragCurrent===null)throw new Error("frag load aborted, context changed in "+d)},s.doFragPartsLoad=function(d,L,R,I){var k=this;return new Promise(function(F,K){var H=[],j=function Y(J){var te=L[J];k.fragmentLoader.loadPart(d,te,I).then(function(ae){H[te.index]=ae;var re=ae.part;k.hls.trigger(b.Events.FRAG_LOADED,ae);var se=L[J+1];if(se&&se.fragment===d)Y(J+1);else return F({frag:d,part:re,partsLoaded:H})}).catch(K)};j(R)})},s.handleFragLoadError=function(d){if("data"in d){var L=d.data;d.data&&L.details===A.ErrorDetails.INTERNAL_ABORTED?this.handleFragLoadAborted(L.frag,L.part):this.hls.trigger(b.Events.ERROR,L)}else this.hls.trigger(b.Events.ERROR,{type:A.ErrorTypes.OTHER_ERROR,details:A.ErrorDetails.INTERNAL_EXCEPTION,err:d,fatal:!0});return null},s._handleTransmuxerFlush=function(d){var L=this.getCurrentContext(d);if(!L||this.state!==m.PARSING){!this.fragCurrent&&this.state!==m.STOPPED&&this.state!==m.ERROR&&(this.state=m.IDLE);return}var R=L.frag,I=L.part,k=L.level,F=self.performance.now();R.stats.parsing.end=F,I&&(I.stats.parsing.end=F),this.updateLevelTiming(R,I,k,d.partial)},s.getCurrentContext=function(d){var L=this.levels,R=d.level,I=d.sn,k=d.part;if(!L||!L[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=L[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(d,L,R,I){if(!(!d||this.state!==m.PARSING)){var k=d.data1,F=d.data2,K=k;if(k&&F&&(K=(0,T.appendUint8Array)(k,F)),!(!K||!K.length)){var H={type:d.type,frag:L,part:R,chunkMeta:I,parent:L.type,data:K};this.hls.trigger(b.Events.BUFFER_APPENDING,H),d.dropped&&d.independent&&!R&&this.flushBufferGap(L)}}},s.flushBufferGap=function(d){var L=this.media;if(!!L){if(!P.BufferHelper.isBuffered(L,L.currentTime)){this.flushMainBuffer(0,d.start);return}var R=L.currentTime,I=P.BufferHelper.bufferInfo(L,R,0),k=d.duration,F=Math.min(this.config.maxFragLookUpTolerance*2,k*.25),K=Math.max(Math.min(d.start-F,I.end-F),R+F);d.start-K>F&&this.flushMainBuffer(K,d.start)}},s.getFwdBufferInfo=function(d,L){var R=this.config,I=this.getLoadPosition();if(!(0,C.isFiniteNumber)(I))return null;var k=P.BufferHelper.bufferInfo(d,I,R.maxBufferHole);if(k.len===0&&k.nextStart!==void 0){var F=this.fragmentTracker.getBufferedFrag(I,L);if(F&&k.nextStart<F.end)return P.BufferHelper.bufferInfo(d,I,Math.max(k.nextStart,R.maxBufferHole))}return k},s.getMaxBufferLength=function(d){var L=this.config,R;return d?R=Math.max(8*L.maxBufferSize/d,L.maxBufferLength):R=L.maxBufferLength,Math.min(R,L.maxMaxBufferLength)},s.reduceMaxBufferLength=function(d){var L=this.config,R=d||L.maxBufferLength;return L.maxMaxBufferLength>=R?(L.maxMaxBufferLength/=2,this.warn("Reduce max buffer length to "+L.maxMaxBufferLength+"s"),!0):!1},s.getNextFragment=function(d,L){var R=L.fragments,I=R.length;if(!I)return null;var k=this.config,F=R[0].start,K;if(L.live){var H=k.initialLiveManifestSize;if(I<H)return this.warn("Not enough fragments to start playback (have: "+I+", need: "+H+")"),null;!L.PTSKnown&&!this.startFragRequested&&this.startPosition===-1&&(K=this.getInitialLiveFragment(L,R),this.startPosition=K?this.hls.liveSyncPosition||K.start:d)}else d<=F&&(K=R[0]);if(!K){var j=k.lowLatencyMode?L.partEnd:L.fragmentEnd;K=this.getFragmentAtPosition(d,j,L)}return this.mapToInitFragWhenRequired(K)},s.mapToInitFragWhenRequired=function(d){return d!=null&&d.initSegment&&!(d!=null&&d.initSegment.data)&&!this.bitrateTest?d.initSegment:d},s.getNextPart=function(d,L,R){for(var I=-1,k=!1,F=!0,K=0,H=d.length;K<H;K++){var j=d[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===L&&(I=K),k=Y}return I},s.loadedEndOfParts=function(d,L){var R=d[d.length-1];return R&&L>R.start&&R.loaded},s.getInitialLiveFragment=function(d,L){var R=this.fragPrevious,I=null;if(R){if(d.hasProgramDateTime&&(this.log("Live playlist, switching playlist, load frag with same PDT: "+R.programDateTime),I=(0,f.findFragmentByPDT)(L,R.endProgramDateTime,this.config.maxFragLookUpTolerance)),!I){var k=R.sn+1;if(k>=d.startSN&&k<=d.endSN){var F=L[k-d.startSN];R.cc===F.cc&&(I=F,this.log("Live playlist, switching playlist, load frag with next SN: "+I.sn))}I||(I=(0,f.findFragWithCC)(L,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?d.fragmentEnd:d.edge,d))}return I},s.getFragmentAtPosition=function(d,L,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 J;if(d<L){var te=d>L-j?0:j;J=(0,f.findFragmentByPTS)(k,F,d,te)}else J=F[F.length-1];if(J){var ae=J.sn-R.startSN;if(this.fragmentTracker.getState(J)===M.FragmentState.OK&&(k=J),k&&J.sn===k.sn&&!Y){var re=k&&J.level===k.level;if(re){var se=F[ae+1];J.sn<K&&this.fragmentTracker.getState(se)!==M.FragmentState.OK?(this.log("SN "+J.sn+" just loaded, load next one: "+se.sn),J=se):J=null}}}return J},s.synchronizeToLiveEdge=function(d){var L=this.config,R=this.media;if(!!R){var I=this.hls.liveSyncPosition,k=R.currentTime,F=d.fragments[0].start,K=d.edge,H=k>=F-L.maxFragLookUpTolerance&&k<=K;if(I!==null&&R.duration>I&&(k<I||!H)){var j=L.liveMaxLatencyDuration!==void 0?L.liveMaxLatencyDuration:L.liveMaxLatencyDurationCount*d.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(d,L){var R=this.levels,I=this.levelLastLoaded,k=this.fragPrevious,F=I!==null?R[I]:null,K=d.fragments.length;if(!K)return this.warn("No fragments in live playlist"),0;var H=d.fragments[0].start,j=!L,Y=d.alignedSliding&&(0,C.isFiniteNumber)(H);if(j||!Y&&!H){(0,x.alignStream)(k,F,d);var J=d.fragments[0].start;return this.log("Live playlist sliding: "+J.toFixed(2)+" start-sn: "+(L?L.startSN:"na")+"->"+d.startSN+" prev-sn: "+(k?k.sn:"na")+" fragments: "+K),J}return H},s.waitForCdnTuneIn=function(d){var L=3;return d.live&&d.canBlockReload&&d.partTarget&&d.tuneInGoal>Math.max(d.partHoldBack,d.partTarget*L)},s.setStartPosition=function(d,L){var R=this.startPosition;if(R<L&&(R=-1),R===-1||this.lastCurrentTime===-1){var I=d.startTimeOffset;(0,C.isFiniteNumber)(I)?(R=L+I,I<0&&(R+=d.totalduration),R=Math.min(Math.max(L,R),L+d.totalduration),this.log("Start time offset "+I+" found in playlist, adjust startPosition to "+R),this.startPosition=R):d.live?R=this.hls.liveSyncPosition||L:this.startPosition=R=0,this.lastCurrentTime=R}this.nextLoadPosition=R},s.getLoadPosition=function(){var d=this.media,L=0;return this.loadedmetadata&&d?L=d.currentTime:this.nextLoadPosition&&(L=this.nextLoadPosition),L},s.handleFragLoadAborted=function(d,L){this.transmuxer&&d.sn!=="initSegment"&&d.stats.aborted&&(this.warn("Fragment "+d.sn+(L?" part"+L.index:"")+" of level "+d.level+" was aborted"),this.resetFragmentLoading(d))},s.resetFragmentLoading=function(d){(!this.fragCurrent||!this.fragContextChanged(d)&&this.state!==m.FRAG_LOADING_WAITING_RETRY)&&(this.state=m.IDLE)},s.onFragmentOrKeyLoadError=function(d,L){if(L.fatal){this.stopLoad(),this.state=m.ERROR;return}var R=this.config;if(L.chunkMeta){var I=this.getCurrentContext(L.chunkMeta);I&&(L.frag=I.frag,L.levelRetry=!0,this.fragLoadError=R.fragLoadingMaxRetry)}var k=L.frag;if(!(!k||k.type!==d)){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 "+d+" "+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 L.levelRetry?(d===o.PlaylistLevelType.AUDIO&&(this.fragCurrent=null),this.fragLoadError=0,this.state=m.IDLE):(B.logger.error(L.details+" reaches max retry, redispatch as fatal ..."),L.fatal=!0,this.hls.stopLoad(),this.state=m.ERROR)}},s.afterBufferFlushed=function(d,L,R){if(!!d){var I=P.BufferHelper.getBuffered(d);this.fragmentTracker.detectEvictedFragments(L,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(d){if(!this.loadedmetadata){this.startFragRequested=!1;var L=this.levels?this.levels[d].details:null;L!=null&&L.live?(this.startPosition=-1,this.setStartPosition(L,0),this.resetLoadingState()):this.nextLoadPosition=this.startPosition}},s.updateLevelTiming=function(d,L,R,I){var k=this,F=R.details;console.assert(!!F,"level.details must be defined");var K=Object.keys(d.elementaryStreams).reduce(function(H,j){var Y=d.elementaryStreams[j];if(Y){var J=Y.endPTS-Y.startPTS;if(J<=0)return k.warn("Could not parse fragment "+d.sn+" "+j+" duration reliably ("+J+")"),H||!1;var te=I?0:(0,E.updateFragPTSDTS)(F,d,Y.startPTS,Y.endPTS,Y.startDTS,Y.endDTS);return k.hls.trigger(b.Events.LEVEL_PTS_UPDATED,{details:F,level:R,drift:te,type:j,frag:d,start:Y.startPTS,end:Y.endPTS}),!0}return H},!1);K||(this.warn("Found no media in fragment "+d.sn+" of level "+R.id+" resetting transmuxer to fallback to playlist timing"),this.resetTransmuxer()),this.state=m.PARSED,this.hls.trigger(b.Events.FRAG_PARSED,{frag:d,part:L})},s.resetTransmuxer=function(){this.transmuxer&&(this.transmuxer.destroy(),this.transmuxer=null)},v(t,[{key:"state",get:function(){return this._state},set:function(d){var L=this._state;L!==d&&(this._state=d,this.log(L+"->"+d))}}]),t}(D.default)},"./src/controller/buffer-controller.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>f});var C=_("./src/polyfills/number.ts"),D=_("./src/events.ts"),M=_("./src/utils/logger.ts"),P=_("./src/errors.ts"),B=_("./src/utils/buffer-helper.ts"),b=_("./src/utils/mediasource-helper.ts"),A=_("./src/loader/fragment.ts"),S=_("./src/controller/buffer-operation-queue.ts"),T=(0,b.getMediaSource)(),x=/([ha]vc.)(?:\.[^.,]+)+/,f=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(D.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(D.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),a.on(D.Events.MEDIA_DETACHING,this.onMediaDetaching,this),a.on(D.Events.MANIFEST_PARSED,this.onManifestParsed,this),a.on(D.Events.BUFFER_RESET,this.onBufferReset,this),a.on(D.Events.BUFFER_APPENDING,this.onBufferAppending,this),a.on(D.Events.BUFFER_CODECS,this.onBufferCodecs,this),a.on(D.Events.BUFFER_EOS,this.onBufferEos,this),a.on(D.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),a.on(D.Events.LEVEL_UPDATED,this.onLevelUpdated,this),a.on(D.Events.FRAG_PARSED,this.onFragParsed,this),a.on(D.Events.FRAG_CHANGED,this.onFragChanged,this)},p.unregisterListeners=function(){var a=this.hls;a.off(D.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),a.off(D.Events.MEDIA_DETACHING,this.onMediaDetaching,this),a.off(D.Events.MANIFEST_PARSED,this.onManifestParsed,this),a.off(D.Events.BUFFER_RESET,this.onBufferReset,this),a.off(D.Events.BUFFER_APPENDING,this.onBufferAppending,this),a.off(D.Events.BUFFER_CODECS,this.onBufferCodecs,this),a.off(D.Events.BUFFER_EOS,this.onBufferEos,this),a.off(D.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),a.off(D.Events.LEVEL_UPDATED,this.onLevelUpdated,this),a.off(D.Events.FRAG_PARSED,this.onFragParsed,this),a.off(D.Events.FRAG_CHANGED,this.onFragChanged,this)},p._initSourceBuffer=function(){this.sourceBuffer={},this.operationQueue=new S.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&&T){var v=this.mediaSource=new T;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(D.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(x,"$1"),s=(m||c).replace(x,"$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 d=i.audio,L=!1;g==="audio"&&(d==null?void 0:d.container)==="audio/mpeg"&&(L=!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(),L){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(D.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(D.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(D.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[A.ElementaryStreamTypes.AUDIOVIDEO]?i.push("audiovideo"):(u[A.ElementaryStreamTypes.AUDIO]&&i.push("audio"),u[A.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(D.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(D.Events.BACK_BUFFER_REACHED,{bufferEnd:m}),o.live)a.trigger(D.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(D.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(D.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(D.Events.ERROR,{type:P.ErrorTypes.MEDIA_ERROR,details:P.ErrorDetails.BUFFER_ADD_CODEC_ERROR,fatal:!1,error:e,mimeType:g})}}v&&this.hls.trigger(D.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(D.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,_)=>{"use strict";_.r(N),_.d(N,{default:()=>D});var C=_("./src/utils/logger.ts"),D=function(){function M(B){this.buffers=void 0,this.queues={video:[],audio:[],audiovideo:[]},this.buffers=B}var P=M.prototype;return P.append=function(b,A){var S=this.queues[A];S.push(b),S.length===1&&this.buffers[A]&&this.executeNext(A)},P.insertAbort=function(b,A){var S=this.queues[A];S.unshift(b),this.executeNext(A)},P.appendBlocker=function(b){var A,S=new Promise(function(x){A=x}),T={execute:A,onStart:function(){},onComplete:function(){},onError:function(){}};return this.append(T,b),S},P.executeNext=function(b){var A=this.buffers,S=this.queues,T=A[b],x=S[b];if(x.length){var f=x[0];try{f.execute()}catch(E){C.logger.warn("[buffer-operation-queue]: Unhandled exception executing the current operation"),f.onError(E),(!T||!T.updating)&&(x.shift(),this.executeNext(b))}}},P.shiftAndExecuteNext=function(b){this.queues[b].shift(),this.executeNext(b)},P.current=function(b){return this.queues[b][0]},M}()},"./src/controller/cap-level-controller.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>A});var C=_("./src/events.ts");function D(S,T){for(var x=0;x<T.length;x++){var f=T[x];f.enumerable=f.enumerable||!1,f.configurable=!0,"value"in f&&(f.writable=!0),Object.defineProperty(S,P(f.key),f)}}function M(S,T,x){return T&&D(S.prototype,T),x&&D(S,x),Object.defineProperty(S,"prototype",{writable:!1}),S}function P(S){var T=B(S,"string");return typeof T=="symbol"?T:String(T)}function B(S,T){if(typeof S!="object"||S===null)return S;var x=S[Symbol.toPrimitive];if(x!==void 0){var f=x.call(S,T||"default");if(typeof f!="object")return f;throw new TypeError("@@toPrimitive must return a primitive value.")}return(T==="string"?String:Number)(S)}var b=function(){function S(x){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=x,this.autoLevelCapping=Number.POSITIVE_INFINITY,this.firstLevel=-1,this.media=null,this.restrictedLevels=[],this.timer=void 0,this.clientRect=null,this.registerListeners()}var T=S.prototype;return T.setStreamController=function(f){this.streamController=f},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 f=this.hls;f.on(C.Events.FPS_DROP_LEVEL_CAPPING,this.onFpsDropLevelCapping,this),f.on(C.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),f.on(C.Events.MANIFEST_PARSED,this.onManifestParsed,this),f.on(C.Events.BUFFER_CODECS,this.onBufferCodecs,this),f.on(C.Events.MEDIA_DETACHING,this.onMediaDetaching,this)},T.unregisterListener=function(){var f=this.hls;f.off(C.Events.FPS_DROP_LEVEL_CAPPING,this.onFpsDropLevelCapping,this),f.off(C.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),f.off(C.Events.MANIFEST_PARSED,this.onManifestParsed,this),f.off(C.Events.BUFFER_CODECS,this.onBufferCodecs,this),f.off(C.Events.MEDIA_DETACHING,this.onMediaDetaching,this)},T.onFpsDropLevelCapping=function(f,E){S.isLevelAllowed(E.droppedLevel,this.restrictedLevels)&&this.restrictedLevels.push(E.droppedLevel)},T.onMediaAttaching=function(f,E){this.media=E.media instanceof HTMLVideoElement?E.media:null,this.clientRect=null},T.onManifestParsed=function(f,E){var p=this.hls;this.restrictedLevels=[],this.firstLevel=E.firstLevel,p.config.capLevelToPlayerSize&&E.video&&this.startCapping()},T.onBufferCodecs=function(f,E){var p=this.hls;p.config.capLevelToPlayerSize&&E.video&&this.startCapping()},T.onMediaDetaching=function(){this.stopCapping()},T.detectPlayerSize=function(){if(this.media&&this.mediaHeight>0&&this.mediaWidth>0){var f=this.hls.levels;if(f.length){var E=this.hls;E.autoLevelCapping=this.getMaxLevel(f.length-1),E.autoLevelCapping>this.autoLevelCapping&&this.streamController&&this.streamController.nextLevelSwitch(),this.autoLevelCapping=E.autoLevelCapping}}},T.getMaxLevel=function(f){var E=this,p=this.hls.levels;if(!p.length)return-1;var h=p.filter(function(a,o){return S.isLevelAllowed(o,E.restrictedLevels)&&o<=f});return this.clientRect=null,S.getMaxLevelByMediaSize(h,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 f=this.media,E={width:0,height:0};if(f){var p=f.getBoundingClientRect();E.width=p.width,E.height=p.height,!E.width&&!E.height&&(E.width=p.right-p.left||f.width||0,E.height=p.bottom-p.top||f.height||0)}return this.clientRect=E,E},S.isLevelAllowed=function(f,E){return E===void 0&&(E=[]),E.indexOf(f)===-1},S.getMaxLevelByMediaSize=function(f,E,p){if(!f||!f.length)return-1;for(var h=function(l,i){return i?l.width!==i.width||l.height!==i.height:!0},a=f.length-1,o=0;o<f.length;o+=1){var n=f[o];if((n.width>=E||n.height>=p)&&h(n,f[o+1])){a=o;break}}return a},M(S,[{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 f=1;if(!this.hls.config.ignoreDevicePixelRatio)try{f=self.devicePixelRatio}catch{}return f}}]),S}();let A=b},"./src/controller/cmcd-controller.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>p});var C=_("./src/events.ts"),D=_("./src/types/cmcd.ts"),M=_("./src/utils/buffer-helper.ts"),P=_("./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,A(n.key),n)}}function b(h,a,o){return a&&B(h.prototype,a),o&&B(h,o),Object.defineProperty(h,"prototype",{writable:!1}),h}function A(h){var a=S(h,"string");return typeof a=="symbol"?a:String(a)}function S(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 T(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=x(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 x(h,a){if(!!h){if(typeof h=="string")return f(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 f(h,a)}}function f(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:D.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===D.CMCDObjectType.VIDEO||c===D.CMCDObjectType.AUDIO||c==D.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:D.CMCDVersion,sf:D.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===D.CMCDObjectType.INIT||v.ot===D.CMCDObjectType.VIDEO||v.ot===D.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 D.CMCDObjectType.TIMED_TEXT;if(n.sn==="initSegment")return D.CMCDObjectType.INIT;if(v==="audio")return D.CMCDObjectType.AUDIO;if(v==="main")return this.hls.audioTracks.length?D.CMCDObjectType.VIDEO:D.CMCDObjectType.MUXED},a.getTopBandwidth=function(n){var v=0,l,i=this.hls;if(n===D.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=T(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===D.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)},b(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)},b(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=T(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 d=typeof s,L=void 0;t==="ot"||t==="sf"||t==="st"?L=t+"="+s:d==="boolean"?L=t:d==="number"?L=t+"="+s:L=t+"="+JSON.stringify(s),v.push(L)}}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,_)=>{"use strict";_.r(N),_.d(N,{default:()=>c});var C=_("./src/events.ts"),D=_("./src/errors.ts"),M=_("./src/utils/logger.ts"),P=_("./src/utils/mediakeys-helper.ts"),B=_("./src/utils/keysystem-util.ts"),b=_("./src/utils/numeric-encoding-utils.ts"),A=_("./src/loader/level-key.ts"),S=_("./src/utils/hex.ts"),T=_("./src/utils/mp4-tools.ts"),x=_("./node_modules/eventemitter3/index.js"),f=_.n(x);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,d){var L=[null];L.push.apply(L,y);var R=Function.bind.apply(s,L),I=new R;return d&&n(I,d.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,d=s.widevineLicenseUrl,L=y[t];if(L)return L.licenseUrl;if(t===P.KeySystems.WIDEVINE&&d)return d;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,d=function(k,F,K){return!!k&&K.indexOf(k)===F},L=y.map(function(I){return I.audioCodec}).filter(d),R=y.map(function(I){return I.videoCodec}).filter(d);return L.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,L,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:D.ErrorTypes.KEY_SYSTEM_ERROR,details:D.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 d="Configured requestMediaKeySystemAccess is not a function "+y;return P.requestMediaKeySystemAccess===null&&self.location.protocol==="http:"&&(d="navigator.requestMediaKeySystemAccess is not available over insecure protocol "+location.protocol),Promise.reject(new Error(d))}return y(t,s)},e.getMediaKeysPromise=function(t,s,y){var d=this,L=(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(L)),I=this.requestMediaKeySystemAccess(t,L);var k=this.keySystemAccessPromises[t]={keySystemAccess:I};return I.catch(function(F){d.log('Failed to obtain access to key-system "'+t+'": '+F)}),I.then(function(F){d.log('Access for key-system "'+F.keySystem+'" obtained');var K=d.fetchServerCertificate(t);return d.log('Create media-keys for "'+t+'"'),k.mediaKeys=F.createMediaKeys().then(function(H){return d.log('Media-keys created for "'+t+'"'),K.then(function(j){return j?d.setMediaKeysServerCertificate(H,t,j):H})}),k.mediaKeys.catch(function(H){d.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,d=t.mediaKeys;console.assert(!!d,"mediaKeys is defined"),this.log('Creating key-system session "'+y+'" keyId: '+S.default.hexDump(s.keyId||[]));var L=d.createSession(),R={decryptdata:s,keySystem:y,mediaKeys:d,mediaKeysSession:L,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),d=this.getKeyIdString(s),L="cenc";this.keyIdToKeySessionPromise[d]=this.generateRequestWithPreferredKeySession(y,L,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 S.default.hexDump(t.keyId)},e.updateKeySession=function(t,s){var y,d=t.mediaKeysSession;return this.log('Updating key-session "'+d.sessionId+'" for keyID '+S.default.hexDump(((y=t.decryptdata)===null||y===void 0?void 0:y.keyId)||[])+`
14
+ } (data length: `+(s&&s.byteLength)+")"),d.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,d){var L=(0,P.getKeySystemsForConfig)(s.config),R=t.map(P.keySystemFormatToKeySystemDomain).filter(function(I){return!!I&&L.indexOf(I)!==-1});return s.getKeySystemSelectionPromise(R).then(function(I){var k=I.keySystem,F=(0,P.keySystemDomainToKeySystemFormat)(k);F?y(F):d(new Error('Unable to find format for key-system "'+k+'"'))}).catch(d)})},e.loadKey=function(t){var s=this,y=t.keyInfo.decryptdata,d=this.getKeyIdString(y),L="(keyId: "+d+' format: "'+y.keyFormat+'" method: '+y.method+" uri: "+y.uri+")";this.log("Starting session for key "+L);var R=this.keyIdToKeySessionPromise[d];return R||(R=this.keyIdToKeySessionPromise[d]=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 "+L),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:D.ErrorTypes.KEY_SYSTEM_ERROR,details:D.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 d=(0,P.keySystemFormatToKeySystemDomain)(t.keyFormat),L=d?[d]:(0,P.getKeySystemsForConfig)(this.config);return this.attemptKeySystemAccess(L)}return y},e.getKeySystemSelectionPromise=function(t){if(t.length||(t=(0,P.getKeySystemsForConfig)(this.config)),t.length===0)throw new g({type:D.ErrorTypes.KEY_SYSTEM_ERROR,details:D.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,d=t.initData;if(this.debug('"'+t.type+'" event: init data type: "'+y+'"'),d!==null){var L,R;if(y==="sinf"&&this.config.drmSystems[P.KeySystems.FAIRPLAY]){var I=(0,T.bin2str)(new Uint8Array(d));try{var k=(0,b.base64Decode)(JSON.parse(I).sinf),F=(0,T.parseSinf)(new Uint8Array(k));if(!F)return;L=F.subarray(8,24),R=P.KeySystems.FAIRPLAY}catch{this.warn('Failed to parse sinf "encrypted" event message initData');return}}else{var K=(0,T.parsePssh)(d);if(K===null)return;K.version===0&&K.systemId===P.KeySystemIds.WIDEVINE&&K.data&&(L=K.data.subarray(8,24)),R=(0,P.keySystemIdToKeySystemDomain)(K.systemId)}if(!(!R||!L)){for(var H=S.default.hexDump(L),j=this.keyIdToKeySessionPromise,Y=this.mediaKeySessions,J=j[H],te=function(ue){var ce=Y[ue],le=ce.decryptdata;if(le.pssh||!le.keyId)return"continue";var de=S.default.hexDump(le.keyId);if(H===de||le.uri.replace(/-/g,"").indexOf(H)!==-1)return J=j[de],delete j[de],le.pssh=new Uint8Array(d),le.keyId=L,J=j[H]=J.then(function(){return s.generateRequestWithPreferredKeySession(ce,y,d,"encrypted-event-key-match")}),"break"},ae=0;ae<Y.length;ae++){var re=te(ae);if(re!=="continue"&&re==="break")break}J||(J=j[H]=this.getKeySystemSelectionPromise([R]).then(function(se){var ue,ce=se.keySystem,le=se.mediaKeys;s.throwIfDestroyed();var de=new A.LevelKey("ISO-23001-7",H,(ue=(0,P.keySystemDomainToKeySystemFormat)(ce))!=null?ue:"");return de.pssh=new Uint8Array(d),de.keyId=L,s.attemptSetMediaKeys(ce,le).then(function(){s.throwIfDestroyed();var fe=s.createMediaKeySessionContext({decryptdata:de,keySystem:ce,mediaKeys:le});return s.generateRequestWithPreferredKeySession(fe,y,d,"encrypted-event-no-match")})})),J.catch(function(se){return s.handleError(se)})}}},e._onWaitingForKey=function(t){this.log('"'+t.type+'" event')},e.attemptSetMediaKeys=function(t,s){var y=this,d=this.setMediaKeysQueue.slice();this.log('Setting media-keys for "'+t+'"');var L=Promise.all(d).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(L),L.then(function(){y.log('Media-keys set for "'+t+'"'),d.push(L),y.setMediaKeysQueue=y.setMediaKeysQueue.filter(function(R){return d.indexOf(R)===-1})})},e.generateRequestWithPreferredKeySession=function(t,s,y,d){var L,R,I=this,k=(L=this.config.drmSystems)===null||L===void 0||(R=L[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(J){var K;if(this.warn(J.message),(K=this.hls)!==null&&K!==void 0&&K.config.debug)throw J}if(y===null)return this.log('Skipping key-session request for "'+d+'" (no initData)'),Promise.resolve(t);var H=this.getKeyIdString(t.decryptdata);this.log('Generating key-session request for "'+d+'": '+H+" (init data type: "+s+" length: "+(y?y.byteLength:null)+")");var j=new(f());t.mediaKeysSession.onmessage=function(J){var te=t.mediaKeysSession;if(!te){j.emit("error",new Error("invalid state"));return}var ae=J.messageType,re=J.message;I.log('"'+ae+'" message event for session "'+te.sessionId+'" message size: '+re.byteLength),ae==="license-request"||ae==="license-renewal"?I.renewLicense(t,re).catch(function(se){I.handleError(se),j.emit("error",se)}):ae==="license-release"?t.keySystem===P.KeySystems.FAIRPLAY&&(I.updateKeySession(t,(0,B.strToUtf8array)("acknowledged")),I.removeSession(t)):I.warn('unhandled media key message type "'+ae+'"')},t.mediaKeysSession.onkeystatuseschange=function(J){var te=t.mediaKeysSession;if(!te){j.emit("error",new Error("invalid state"));return}I.onKeyStatusChange(t);var ae=t.keyStatus;j.emit("keyStatus",ae),ae==="expired"&&(I.warn(t.keySystem+" expired for key "+H),I.renewKeySession(t))};var Y=new Promise(function(J,te){j.on("error",te),j.on("keyStatus",function(ae){ae.startsWith("usable")?J():ae==="output-restricted"?te(new g({type:D.ErrorTypes.KEY_SYSTEM_ERROR,details:D.ErrorDetails.KEY_SYSTEM_STATUS_OUTPUT_RESTRICTED,fatal:!1},"HDCP level output restricted")):ae==="internal-error"?te(new g({type:D.ErrorTypes.KEY_SYSTEM_ERROR,details:D.ErrorDetails.KEY_SYSTEM_STATUS_INTERNAL_ERROR,fatal:!0},'key status changed to "'+ae+'"')):ae==="expired"?te(new Error("key expired while generating request")):I.warn('unhandled key status change "'+ae+'"')})});return t.mediaKeysSession.generateRequest(s,y).then(function(){var J;I.log('Request generated for key-session "'+((J=t.mediaKeysSession)===null||J===void 0?void 0:J.sessionId)+'" keyId: '+H)}).catch(function(J){throw new g({type:D.ErrorTypes.KEY_SYSTEM_ERROR,details:D.ErrorDetails.KEY_SYSTEM_NO_SESSION,error:J,fatal:!1},"Error generating key-session request: "+J)}).then(function(){return Y}).catch(function(J){throw j.removeAllListeners(),I.removeSession(t),J}).then(function(){return j.removeAllListeners(),t})},e.onKeyStatusChange=function(t){var s=this;t.mediaKeysSession.keyStatuses.forEach(function(y,d){s.log('key status change "'+y+'" for keyStatuses keyId: '+S.default.hexDump("buffer"in d?new Uint8Array(d.buffer,d.byteOffset,d.byteLength):new Uint8Array(d))+" session keyId: "+S.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,d){var L=s.getServerCertificateUrl(t);if(!L)return y();s.log('Fetching serverCertificate for "'+t+'"');var R=new XMLHttpRequest;R.open("GET",L,!0),R.responseType="arraybuffer",R.onreadystatechange=function(){R.readyState===XMLHttpRequest.DONE&&(R.status===200?y(R.response):d(new g({type:D.ErrorTypes.KEY_SYSTEM_ERROR,details:D.ErrorDetails.KEY_SYSTEM_SERVER_CERTIFICATE_REQUEST_FAILED,fatal:!0,networkDetails:R},'"'+t+'" certificate request XHR failed ('+L+"). Status: "+R.status+" ("+R.statusText+")")))},R.send()})},e.setMediaKeysServerCertificate=function(t,s,y){var d=this;return new Promise(function(L,R){t.setServerCertificate(y).then(function(I){d.log("setServerCertificate "+(I?"success":"not supported by CDM")+" ("+(y==null?void 0:y.byteLength)+') on "'+s+'"'),L(t)}).catch(function(I){R(new g({type:D.ErrorTypes.KEY_SYSTEM_ERROR,details:D.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(d){return y.updateKeySession(t,new Uint8Array(d)).catch(function(L){throw new g({type:D.ErrorTypes.KEY_SYSTEM_ERROR,details:D.ErrorDetails.KEY_SYSTEM_SESSION_UPDATE_FAILED,error:L,fatal:!0},L.message)})})},e.setupLicenseXHR=function(t,s,y,d){var L=this,R=this.config.licenseXhrSetup;return R?Promise.resolve().then(function(){if(!y.decryptdata)throw new Error("Key removed");return R.call(L.hls,t,s,y,d)}).catch(function(I){if(!y.decryptdata)throw I;return t.open("POST",s,!0),R.call(L.hls,t,s,y,d)}).then(function(I){t.readyState||t.open("POST",s,!0);var k=I||d;return{xhr:t,licenseChallenge:k}}):(t.open("POST",s,!0),Promise.resolve({xhr:t,licenseChallenge:d}))},e.requestLicense=function(t,s){var y=this;return new Promise(function(d,L){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 L(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)}d(k)}else if(y._requestLicenseFailureCount++,y._requestLicenseFailureCount>l||I.status>=400&&I.status<500)L(new g({type:D.ErrorTypes.KEY_SYSTEM_ERROR,details:D.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(d,L)}},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={},A.LevelKey.clearKeyUriToKeyIdMap();var d=y.length;m.CDMCleanupPromise=Promise.all(y.map(function(L){return t.removeSession(L)}).concat(s==null?void 0:s.setMediaKeys(null).catch(function(L){t.log("Could not clear media keys: "+L+". media.src: "+(s==null?void 0:s.src))}))).then(function(){d&&(t.log("finished closing key sessions and clearing media keys"),y.length=0)}).catch(function(L){t.log("Could not close sessions and clear media keys: "+L+". 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 d=y.reduce(function(L,R){return L.indexOf(R.keyFormat)===-1&&L.push(R.keyFormat),L},[]);this.log("Selecting key-system from session-keys "+d.join(", ")),this.keyFormatPromise=this.getKeyFormatPromise(d)}},e.removeSession=function(t){var s=this,y=t.mediaKeysSession,d=t.licenseXhr;if(y){this.log("Remove licenses and keys and close session "+y.sessionId),y.onmessage=null,y.onkeystatuseschange=null,d&&d.readyState!==XMLHttpRequest.DONE&&d.abort(),t.mediaKeysSession=t.decryptdata=t.licenseXhr=void 0;var L=this.mediaKeySessions.indexOf(t);return L>-1&&this.mediaKeySessions.splice(L,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,_)=>{"use strict";_.r(N),_.d(N,{default:()=>P});var C=_("./src/events.ts"),D=_("./src/utils/logger.ts"),M=function(){function B(A){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=A,this.registerListeners()}var b=B.prototype;return b.setStreamController=function(S){this.streamController=S},b.registerListeners=function(){this.hls.on(C.Events.MEDIA_ATTACHING,this.onMediaAttaching,this)},b.unregisterListeners=function(){this.hls.off(C.Events.MEDIA_ATTACHING,this.onMediaAttaching)},b.destroy=function(){this.timer&&clearInterval(this.timer),this.unregisterListeners(),this.isVideoPlaybackQualityAvailable=!1,this.media=null},b.onMediaAttaching=function(S,T){var x=this.hls.config;if(x.capLevelOnFPSDrop){var f=T.media instanceof self.HTMLVideoElement?T.media:null;this.media=f,f&&typeof f.getVideoPlaybackQuality=="function"&&(this.isVideoPlaybackQualityAvailable=!0),self.clearInterval(this.timer),this.timer=self.setInterval(this.checkFPSInterval.bind(this),x.fpsDroppedMonitoringPeriod)}},b.checkFPS=function(S,T,x){var f=performance.now();if(T){if(this.lastTime){var E=f-this.lastTime,p=x-this.lastDroppedFrames,h=T-this.lastDecodedFrames,a=1e3*p/E,o=this.hls;if(o.trigger(C.Events.FPS_DROP,{currentDropped:p,currentDecoded:h,totalDroppedFrames:x}),a>0&&p>o.config.fpsDroppedMonitoringThreshold*h){var n=o.currentLevel;D.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=f,this.lastDroppedFrames=x,this.lastDecodedFrames=T}},b.checkFPSInterval=function(){var S=this.media;if(S)if(this.isVideoPlaybackQualityAvailable){var T=S.getVideoPlaybackQuality();this.checkFPS(S,T.totalVideoFrames,T.droppedVideoFrames)}else this.checkFPS(S,S.webkitDecodedFrameCount,S.webkitDroppedFrameCount)},B}();let P=M},"./src/controller/fragment-finders.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{findFragWithCC:()=>A,findFragmentByPDT:()=>M,findFragmentByPTS:()=>P,fragmentWithinToleranceTest:()=>B,pdtWithinToleranceTest:()=>b});var C=_("./src/polyfills/number.ts"),D=_("./src/utils/binary-search.ts");function M(S,T,x){if(T===null||!Array.isArray(S)||!S.length||!(0,C.isFiniteNumber)(T))return null;var f=S[0].programDateTime;if(T<(f||0))return null;var E=S[S.length-1].endProgramDateTime;if(T>=(E||0))return null;x=x||0;for(var p=0;p<S.length;++p){var h=S[p];if(b(T,x,h))return h}return null}function P(S,T,x,f){x===void 0&&(x=0),f===void 0&&(f=0);var E=null;if(S?E=T[S.sn-T[0].sn+1]||null:x===0&&T[0].start===0&&(E=T[0]),E&&B(x,f,E)===0)return E;var p=D.default.search(T,B.bind(null,x,f));return p&&(p!==S||!E)?p:E}function B(S,T,x){if(S===void 0&&(S=0),T===void 0&&(T=0),x.start<=S&&x.start+x.duration>S)return 0;var f=Math.min(T,x.duration+(x.deltaPTS?x.deltaPTS:0));return x.start+x.duration-f<=S?1:x.start-f>S&&x.start?-1:0}function b(S,T,x){var f=Math.min(T,x.duration+(x.deltaPTS?x.deltaPTS:0))*1e3,E=x.endProgramDateTime||0;return E-f>S}function A(S,T){return D.default.search(S,function(x){return x.cc<T?1:x.cc>T?-1:0})}},"./src/controller/fragment-tracker.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{FragmentState:()=>M,FragmentTracker:()=>P});var C=_("./src/events.ts"),D=_("./src/types/loader.ts"),M;(function(A){A.NOT_LOADED="NOT_LOADED",A.APPENDING="APPENDING",A.PARTIAL="PARTIAL",A.OK="OK"})(M||(M={}));var P=function(){function A(T){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=T,this._registerListeners()}var S=A.prototype;return S._registerListeners=function(){var x=this.hls;x.on(C.Events.BUFFER_APPENDED,this.onBufferAppended,this),x.on(C.Events.FRAG_BUFFERED,this.onFragBuffered,this),x.on(C.Events.FRAG_LOADED,this.onFragLoaded,this)},S._unregisterListeners=function(){var x=this.hls;x.off(C.Events.BUFFER_APPENDED,this.onBufferAppended,this),x.off(C.Events.FRAG_BUFFERED,this.onFragBuffered,this),x.off(C.Events.FRAG_LOADED,this.onFragLoaded,this)},S.destroy=function(){this._unregisterListeners(),this.fragments=this.endListFragments=this.timeRanges=this.activeFragment=this.activeParts=null},S.getAppendedFrag=function(x,f){if(f===D.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<=x&&o!==void 0&&x<=o)return h>9&&(this.activeParts=p.slice(h-9)),a}else if(E.start<=x&&E.appendedPTS!==void 0&&x<=E.appendedPTS)return E}return this.getBufferedFrag(x,f)},S.getBufferedFrag=function(x,f){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)===f&&a.buffered){var o=a.body;if(o.start<=x&&x<=o.end)return o}}return null},S.detectEvictedFragments=function(x,f,E){var p=this;this.timeRanges&&(this.timeRanges[x]=f),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[x];!o||o.time.some(function(n){var v=!p.isTimeBuffered(n.startPTS,n.endPTS,f);return v&&p.removeFragment(a.body),v})}})},S.detectPartialFragments=function(x){var f=this,E=this.timeRanges,p=x.frag,h=x.part;if(!(!E||p.sn==="initSegment")){var a=b(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]=f.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))}},S.fragBuffered=function(x){var f=b(x),E=this.fragments[f];E&&(E.loaded=null,E.buffered=!0)},S.getBufferedTimes=function(x,f,E,p){for(var h={time:[],partial:E},a=f?f.start:x.start,o=f?f.end:x.end,n=x.minEndPTS||o,v=x.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},S.getPartialFragment=function(x){var f=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,x>=p&&x<=h&&(E=Math.min(x-p,h-x),a<=E&&(f=l.body,a=E)))}),f},S.isEndListAppended=function(x){var f=this.endListFragments[x];return f!==void 0&&(f.buffered||B(f))},S.getState=function(x){var f=b(x),E=this.fragments[f];return E?E.buffered?B(E)?M.PARTIAL:M.OK:M.APPENDING:M.NOT_LOADED},S.isTimeBuffered=function(x,f,E){for(var p,h,a=0;a<E.length;a++){if(p=E.start(a)-this.bufferPadding,h=E.end(a)+this.bufferPadding,x>=p&&f<=h)return!0;if(f<=p)return!1}return!1},S.onFragLoaded=function(x,f){var E=f.frag,p=f.part;if(!(E.sn==="initSegment"||E.bitrateTest||p)){var h=b(E);this.fragments[h]={body:E,loaded:f,buffered:!1,range:Object.create(null)}}},S.onBufferAppended=function(x,f){var E=this,p=f.frag,h=f.part,a=f.timeRanges;if(p.type===D.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===D.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}}})},S.onFragBuffered=function(x,f){this.detectPartialFragments(f)},S.hasFragment=function(x){var f=b(x);return!!this.fragments[f]},S.removeFragmentsInRange=function(x,f,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<f&&o.end>x&&p.removeFragment(o)}})},S.removeFragment=function(x){var f=b(x);x.stats.loaded=0,x.clearElementaryStreamInfo(),x.appendedPTS=void 0,delete this.fragments[f],x.endList&&delete this.endListFragments[x.type]},S.removeAllFragments=function(){this.fragments=Object.create(null),this.endListFragments=Object.create(null),this.activeFragment=null,this.activeParts=null},A}();function B(A){var S,T;return A.buffered&&(((S=A.range.video)===null||S===void 0?void 0:S.partial)||((T=A.range.audio)===null||T===void 0?void 0:T.partial))}function b(A){return A.type+"_"+A.level+"_"+A.urlId+"_"+A.sn}},"./src/controller/gap-controller.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{MAX_START_GAP_JUMP:()=>b,SKIP_BUFFER_HOLE_STEP_SECONDS:()=>A,SKIP_BUFFER_RANGE_START:()=>S,STALL_MINIMUM_DURATION_MS:()=>B,default:()=>T});var C=_("./src/utils/buffer-helper.ts"),D=_("./src/errors.ts"),M=_("./src/events.ts"),P=_("./src/utils/logger.ts"),B=250,b=2,A=.1,S=.05,T=function(){function x(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 f=x.prototype;return f.destroy=function(){this.media=null,this.hls=this.fragmentTracker=null},f.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>b,t=!e||h&&h.start<=v||e-v>b&&!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,d=this.hls.levels?this.hls.levels[this.hls.currentLevel]:null,L=d==null||(s=d.details)===null||s===void 0?void 0:s.live,R=L?d.details.targetduration*2:b;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)}}}}},f._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())}},f._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:D.ErrorTypes.MEDIA_ERROR,details:D.ErrorDetails.BUFFER_STALLED_ERROR,fatal:!1,buffer:p.len}))},f._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+S,o.currentTime+A);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:D.ErrorTypes.MEDIA_ERROR,details:D.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},f._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:D.ErrorTypes.MEDIA_ERROR,details:D.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:D.ErrorTypes.MEDIA_ERROR,details:D.ErrorDetails.BUFFER_STALLED_ERROR,fatal:!0})}},x}()},"./src/controller/id3-track-controller.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>p});var C=_("./src/polyfills/number.ts"),D=_("./src/events.ts"),M=_("./src/utils/texttrack-utils.ts"),P=_("./src/demux/id3.ts"),B=_("./src/loader/date-range.ts"),b=_("./src/types/demuxer.ts"),A=.25;function S(){return self.WebKitDataCue||self.VTTCue||self.TextTrackCue}var T=function(){var h=S();try{new h(0,Number.POSITIVE_INFINITY,"")}catch{return Number.MAX_VALUE}return Number.POSITIVE_INFINITY}();function x(h,a){return h.getTime()/1e3-a}function f(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(D.Events.MEDIA_ATTACHED,this.onMediaAttached,this),n.on(D.Events.MEDIA_DETACHING,this.onMediaDetaching,this),n.on(D.Events.MANIFEST_LOADING,this.onManifestLoading,this),n.on(D.Events.FRAG_PARSING_METADATA,this.onFragParsingMetadata,this),n.on(D.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),n.on(D.Events.LEVEL_UPDATED,this.onLevelUpdated,this)},a._unregisterListeners=function(){var n=this.hls;n.off(D.Events.MEDIA_ATTACHED,this.onMediaAttached,this),n.off(D.Events.MEDIA_DETACHING,this.onMediaDetaching,this),n.off(D.Events.MANIFEST_LOADING,this.onManifestLoading,this),n.off(D.Events.FRAG_PARSING_METADATA,this.onFragParsingMetadata,this),n.off(D.Events.BUFFER_FLUSHING,this.onBufferFlushing,this),n.off(D.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=S(),m=0;m<g.length;m++){var e=g[m].type;if(!(e===b.MetadataSchema.emsg&&!i||!u)){var r=P.getID3Frames(g[m].data);if(r){var t=g[m].pts,s=t+g[m].duration;s>T&&(s=T);var y=s-t;y<=0&&(s=t+A);for(var d=0;d<r.length;d++){var L=r[d];if(!P.isTimeStampFrame(L)){this.updateId3CueEnds(t);var R=new c(t,s,"");R.value=L,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===T&&(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===b.MetadataSchema.audioId3&&r}:u==="video"?t=function(y){return y.type===b.MetadataSchema.emsg&&e}:t=function(y){return y.type===b.MetadataSchema.audioId3&&r||y.type===b.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,d=S(),L=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,J=x(K.startDate,y),te=T,ae=K.endDate;if(ae)te=x(ae,y),Y=!0;else if(K.endOnNext&&!Y){var re=m.reduce(function(fe,Se){var be=c[Se];return be.class===K.class&&be.id!==Se&&be.startDate>K.startDate&&fe.push(be),fe},[]).sort(function(fe,Se){return fe.startDate.getTime()-Se.startDate.getTime()})[0];re&&(te=x(re.startDate,y),Y=!0)}for(var se=Object.keys(K.attr),ue=0;ue<se.length;ue++){var ce=se[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=te);else{var de=K.attr[ce];le=new d(J,te,""),(ce===B.DateRangeAttribute.SCTE35_OUT||ce===B.DateRangeAttribute.SCTE35_IN)&&(de=f(de)),le.value={key:ce,data:de},le.type=b.MetadataSchema.dateRange,l.id3Track.addCue(le),j[ce]=le}}}u[F]={cues:j,dateRange:K,durationKnown:Y}},R=0;R<m.length;R++)L(R)}}},h}();let p=E},"./src/controller/latency-controller.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>S});var C=_("./src/errors.ts"),D=_("./src/events.ts"),M=_("./src/utils/logger.ts");function P(T,x){for(var f=0;f<x.length;f++){var E=x[f];E.enumerable=E.enumerable||!1,E.configurable=!0,"value"in E&&(E.writable=!0),Object.defineProperty(T,b(E.key),E)}}function B(T,x,f){return x&&P(T.prototype,x),f&&P(T,f),Object.defineProperty(T,"prototype",{writable:!1}),T}function b(T){var x=A(T,"string");return typeof x=="symbol"?x:String(x)}function A(T,x){if(typeof T!="object"||T===null)return T;var f=T[Symbol.toPrimitive];if(f!==void 0){var E=f.call(T,x||"default");if(typeof E!="object")return E;throw new TypeError("@@toPrimitive must return a primitive value.")}return(x==="string"?String:Number)(T)}var S=function(){function T(f){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=f,this.config=f.config,this.registerListeners()}var x=T.prototype;return x.destroy=function(){this.unregisterListeners(),this.onMediaDetaching(),this.levelDetails=null,this.hls=this.timeupdateHandler=null},x.registerListeners=function(){this.hls.on(D.Events.MEDIA_ATTACHED,this.onMediaAttached,this),this.hls.on(D.Events.MEDIA_DETACHING,this.onMediaDetaching,this),this.hls.on(D.Events.MANIFEST_LOADING,this.onManifestLoading,this),this.hls.on(D.Events.LEVEL_UPDATED,this.onLevelUpdated,this),this.hls.on(D.Events.ERROR,this.onError,this)},x.unregisterListeners=function(){this.hls.off(D.Events.MEDIA_ATTACHED,this.onMediaAttached),this.hls.off(D.Events.MEDIA_DETACHING,this.onMediaDetaching),this.hls.off(D.Events.MANIFEST_LOADING,this.onManifestLoading),this.hls.off(D.Events.LEVEL_UPDATED,this.onLevelUpdated),this.hls.off(D.Events.ERROR,this.onError)},x.onMediaAttached=function(E,p){this.media=p.media,this.media.addEventListener("timeupdate",this.timeupdateHandler)},x.onMediaDetaching=function(){this.media&&(this.media.removeEventListener("timeupdate",this.timeupdateHandler),this.media=null)},x.onManifestLoading=function(){this.levelDetails=null,this._latency=null,this.stallCount=0},x.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)},x.onError=function(E,p){p.details===C.ErrorDetails.BUFFER_STALLED_ERROR&&(this.stallCount++,M.logger.warn("[playback-rate-controller]: Stall detected, adjusting target latency"))},x.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)}}}}},x.estimateLiveEdge=function(){var E=this.levelDetails;return E===null?null:E.edge+E.age},x.computeLatency=function(){var E=this.estimateLiveEdge();return E===null?null:E-this.currentTime},B(T,[{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}}]),T}()},"./src/controller/level-controller.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>o});var C=_("./src/types/level.ts"),D=_("./src/events.ts"),M=_("./src/errors.ts"),P=_("./src/utils/codecs.ts"),B=_("./src/controller/level-helper.ts"),b=_("./src/controller/base-playlist-controller.ts"),A=_("./src/types/loader.ts");function S(){return S=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},S.apply(this,arguments)}function T(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,f(i.key),i)}}function x(n,v,l){return v&&T(n.prototype,v),l&&T(n,l),Object.defineProperty(n,"prototype",{writable:!1}),n}function f(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(D.Events.MANIFEST_LOADED,this.onManifestLoaded,this),u.on(D.Events.LEVEL_LOADED,this.onLevelLoaded,this),u.on(D.Events.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),u.on(D.Events.FRAG_LOADED,this.onFragLoaded,this),u.on(D.Events.ERROR,this.onError,this)},l._unregisterListeners=function(){var u=this.hls;u.off(D.Events.MANIFEST_LOADED,this.onManifestLoaded,this),u.off(D.Events.LEVEL_LOADED,this.onLevelLoaded,this),u.off(D.Events.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),u.off(D.Events.FRAG_LOADED,this.onFragLoaded,this),u.off(D.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,d=!1,L=!1;if(g.levels.forEach(function(F){var K=F.attrs;y=y||!!(F.width&&F.height),d=d||!!F.videoCodec,L=L||!!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||d)&&L&&(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=L&&!d,k={levels:c,audioTracks:m,subtitleTracks:e,sessionData:g.sessionData,sessionKeys:g.sessionKeys,firstLevel:this._firstLevel,stats:g.stats,audio:L,video:d,altAudio:!I&&m.some(function(F){return!!F.url})};this.hls.trigger(D.Events.MANIFEST_PARSED,k),(this.hls.config.autoStartLoad||this.hls.forceStartLoad)&&this.hls.startLoad(this.hls.config.startPosition)}else this.hls.trigger(D.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===A.PlaylistContextType.AUDIO_TRACK&&r.audioGroupIds&&e.groupId===r.audioGroupIds[r.urlId]||e.type===A.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 d=g.frag.type===A.PlaylistLevelType.MAIN?g.frag.level:this.currentLevelIndex,L=this._levels[d];L?(L.fragmentError++,L.fragmentError>this.hls.config.fragLoadingMaxRetry&&(y=d)):y=d}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)===A.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,d=this._levels,L=d.length;L--;){var R=(L+this.currentLevelIndex)%d.length;if(R!==this.currentLevelIndex&&d[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===A.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(D.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(D.Events.LEVELS_UPDATED,{levels:m})},x(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(D.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=S({},t,{level:u,maxBitrate:t.maxBitrate,uri:t.uri,urlId:t.urlId});delete s._urlId,this.hls.trigger(D.Events.LEVEL_SWITCHING,s);var y=t.details;if(!y||y.live){var d=this.switchParams(t.uri,r==null?void 0:r.details);this.loadPlaylist(d)}}}},{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}(b.default)},"./src/controller/level-helper.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{addGroupId:()=>B,addSliding:()=>a,adjustSliding:()=>h,assignTrackIdsByGroup:()=>b,computeReloadInterval:()=>o,getFragmentWithSN:()=>n,getPartWith:()=>v,mapFragmentIntersection:()=>p,mapPartIntersection:()=>E,mergeDetails:()=>x,updateFragPTSDTS:()=>T,updatePTS:()=>A});var C=_("./src/polyfills/number.ts"),D=_("./src/utils/logger.ts"),M=_("./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 b(l){var i={};l.forEach(function(u){var g=u.groupId||"";u.id=i[g]=i[g]||0,i[g]++})}function A(l,i,u){var g=l[i],c=l[u];S(g,c)}function S(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 T(l,i,u,g,c,m){var e=g-u;e<=0&&(D.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 d=Math.abs(s-u);(0,C.isFiniteNumber)(i.deltaPTS)?i.deltaPTS=Math.max(d,i.deltaPTS):i.deltaPTS=d,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 L=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--)S(F[I],F[I-1]);for(I=k;I<F.length-1;I++)S(F[I],F[I+1]);return l.fragmentHint&&S(F[F.length-1],l.fragmentHint),l.PTSKnown=l.alignedSliding=!0,L}function x(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){D.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=f(l.dateRanges,i.dateRanges,i.recentlyRemovedDateranges));var y=i.fragments;if(e){D.logger.warn("discontinuity sliding from playlist, take drift into account");for(var d=0;d<y.length;d++)y[d].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?T(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 L=i.advancedDateTime;if(i.advanced&&L){var R=i.edge;i.driftStart||(i.driftStartTime=L,i.driftStart=R),i.driftEndTime=L,i.driftEnd=R}else i.driftEndTime=l.driftEndTime,i.driftEnd=l.driftEnd,i.advancedDateTime=l.advancedDateTime}function f(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:D.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],d=r[s];g&&!d&&s<g&&(d=i.fragments[s]=y),y&&d&&u(y,d)}}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,_)=>{"use strict";_.r(N),_.d(N,{default:()=>i});var C=_("./src/polyfills/number.ts"),D=_("./src/controller/base-stream-controller.ts"),M=_("./src/is-supported.ts"),P=_("./src/events.ts"),B=_("./src/utils/buffer-helper.ts"),b=_("./src/controller/fragment-tracker.ts"),A=_("./src/types/loader.ts"),S=_("./src/loader/fragment.ts"),T=_("./src/demux/transmuxer-interface.ts"),x=_("./src/types/transmuxer.ts"),f=_("./src/controller/gap-controller.ts"),E=_("./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=D.State.IDLE,this.nextLoadPosition=this.startPosition=this.lastCurrentTime=e,this.tick()}else this._forceStartLoad=!0,this.state=D.State.STOPPED},c.stopLoad=function(){this._forceStartLoad=!1,u.prototype.stopLoad.call(this)},c.doTick=function(){switch(this.state){case D.State.IDLE:this.doTickIdle();break;case D.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=D.State.IDLE;break}break}case D.State.FRAG_LOADING_WAITING_RETRY:{var y,d=self.performance.now(),L=this.retryDate;(!L||d>=L||(y=this.media)!==null&&y!==void 0&&y.seeking)&&(this.log("retryDate reached, switch back to IDLE state"),this.resetStartWhenNotLoaded(this.level),this.state=D.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,d=e.nextLoadLevel;if(!(r===null||!s&&(this.startFragRequested||!y.startFragPrefetch))&&!(this.altAudio&&this.audioOnly)&&!(!t||!t[d])){var L=t[d],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=D.State.ENDED;return}this.level=e.nextLoadLevel=d;var F=L.details;if(!F||this.state===D.State.WAITING_LEVEL||F.live&&this.levelLastLoaded!==d){this.level=d,this.state=D.State.WAITING_LEVEL;return}var K=R.len,H=this.getMaxBufferLength(L.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)!==b.FragmentState.OK){var J,te=((J=this.backtrackFragment)!=null?J:Y).sn,ae=te-F.startSN,re=F.fragments[ae-1];re&&Y.cc===re.cc&&(Y=re,this.fragmentTracker.removeFragment(re))}else this.backtrackFragment&&R.len&&(this.backtrackFragment=null);if(Y&&this.fragmentTracker.getState(Y)===b.FragmentState.OK&&this.nextLoadPosition>j){var se=this.audioOnly&&!this.altAudio?S.ElementaryStreamTypes.AUDIO:S.ElementaryStreamTypes.VIDEO,ue=(se===S.ElementaryStreamTypes.VIDEO?this.videoBuffer:this.mediaBuffer)||this.media;ue&&this.afterBufferFlushed(ue,se,A.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===b.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===b.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,A.PlaylistLevelType.MAIN);return r&&"fragment"in r?r.fragment:r},c.getBufferedFrag=function(e){return this.fragmentTracker.getBufferedFrag(e,A.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,d=e[y],L=this.fragLastKbps;L&&this.fragCurrent?t=this.fragCurrent.duration*d.maxBitrate/(1e3*L)+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 D.State.KEY_LOADING:case D.State.FRAG_LOADING:case D.State.FRAG_LOADING_WAITING_RETRY:case D.State.PARSING:case D.State.PARSED:this.state=D.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 f.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(d){y=d.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!==D.State.IDLE)){var s=t[r.level];(!s.details||s.details.live&&this.levelLastLoaded!==r.level||this.waitForCdnTuneIn(s.details))&&(this.state=D.State.WAITING_LEVEL)}},c.onLevelLoaded=function(e,r){var t,s=this.levels,y=r.level,d=r.details,L=d.totalduration;if(!s){this.warn("Levels were reset while loading level "+y);return}this.log("Level "+y+" loaded ["+d.startSN+","+d.endSN+"], cc ["+d.startCC+", "+d.endCC+"] duration:"+L);var R=this.fragCurrent;R&&(this.state===D.State.FRAG_LOADING||this.state===D.State.FRAG_LOADING_WAITING_RETRY)&&R.level!==r.level&&R.loader&&(this.state=D.State.IDLE,this.backtrackFragment=null,R.abortRequests());var I=s[y],k=0;if(d.live||(t=I.details)!==null&&t!==void 0&&t.live){if(d.fragments[0]||(d.deltaUpdateFailed=!0),d.deltaUpdateFailed)return;k=this.alignPlaylists(d,I.details)}if(I.details=d,this.levelLastLoaded=y,this.hls.trigger(P.Events.LEVEL_UPDATED,{details:d,level:y}),this.state===D.State.WAITING_LEVEL){if(this.waitForCdnTuneIn(d))return;this.state=D.State.IDLE}this.startFragRequested?d.live&&this.synchronizeToLiveEdge(d):this.setStartPosition(d,k),this.tick()},c._handleFragmentLoadProgress=function(e){var r,t=e.frag,s=e.part,y=e.payload,d=this.levels;if(!d){this.warn("Levels were reset while fragment load was in progress. Fragment "+t.sn+" of level "+t.level+" will not be buffered");return}var L=d[t.level],R=L.details;if(!R){this.warn("Dropping fragment "+t.sn+" of level "+t.level+" after level details were reset");return}var I=L.videoCodec,k=R.PTSKnown||!R.live,F=(r=t.initSegment)===null||r===void 0?void 0:r.data,K=this._getAudioCodec(L),H=this.transmuxer=this.transmuxer||new T.default(this.hls,A.PlaylistLevelType.MAIN,this._handleTransmuxComplete.bind(this),this._handleTransmuxerFlush.bind(this)),j=s?s.index:-1,Y=j!==-1,J=new x.ChunkMetadata(t.level,t.sn,t.stats.chunkCount,y.byteLength,j,Y),te=this.initPTS[t.cc];H.push(y,F,K,I,t,s,R.totalduration,k,J,te)},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 d=this.fragCurrent;d&&(this.log("Switching to main audio track, cancel main fragment load"),d.abortRequests()),this.resetTransmuxer(),this.resetLoadingState()}else this.audioOnly&&this.resetTransmuxer();var L=this.hls;t&&L.trigger(P.Events.BUFFER_FLUSHING,{startOffset:0,endOffset:Number.POSITIVE_INFINITY,type:"audio"}),L.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,d=!1;for(var L in t){var R=t[L];if(R.id==="main"){if(y=L,s=R,L==="video"){var I=t[L];I&&(this.videoBuffer=I.buffer)}}else d=!0}d&&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!==A.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===D.State.PARSED&&(this.state=D.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(A.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(A.PlaylistLevelType.MAIN,r);break;case E.ErrorDetails.LEVEL_LOAD_ERROR:case E.ErrorDetails.LEVEL_LOAD_TIMEOUT:this.state!==D.State.ERROR&&(r.fatal?(this.warn(""+r.details),this.state=D.State.ERROR):!r.levelRetry&&this.state===D.State.WAITING_LEVEL&&(this.state=D.State.IDLE));break;case E.ErrorDetails.BUFFER_FULL_ERROR:if(r.parent==="main"&&(this.state===D.State.PARSING||this.state===D.State.PARSED)){var t=!0,s=this.getFwdBufferInfo(this.media,A.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!==D.State.IDLE?this.fragCurrent:null;r.poll(this.lastCurrentTime,t)}this.lastCurrentTime=e.currentTime}},c.onFragLoadEmergencyAborted=function(){this.state=D.State.IDLE,this.loadedmetadata||(this.startFragRequested=!1,this.nextLoadPosition=this.startPosition),this.tickImmediate()},c.onBufferFlushed=function(e,r){var t=r.type;if(t!==S.ElementaryStreamTypes.AUDIO||this.audioOnly&&!this.altAudio){var s=(t===S.ElementaryStreamTypes.VIDEO?this.videoBuffer:this.mediaBuffer)||this.media;this.afterBufferFlushed(s,t,A.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,d=y-t;d>0&&(d<this.config.maxBufferHole||d<this.config.maxFragLookUpTolerance)&&(this.log("adjusting start position by "+d+" to match buffer start"),t+=d,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=D.State.IDLE,t.startFragRequested=!1,t.bitrateTest=!1;var d=e.stats;d.parsing.start=d.parsing.end=d.buffering.start=d.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,d=e.chunkMeta,L=this.getCurrentContext(d);if(!L){this.warn("The loading context changed while buffering fragment "+d.sn+" of level "+d.level+". This chunk will not be buffered."),this.resetStartWhenNotLoaded(d.level);return}var R=L.frag,I=L.part,k=L.level,F=y.video,K=y.text,H=y.id3,j=y.initSegment,Y=k.details,J=this.altAudio?void 0:y.audio;if(!this.fragContextChanged(R)){if(this.state=D.State.PARSING,j){j.tracks&&(this._bufferInitSegment(k,j.tracks,R,d),s.trigger(P.Events.FRAG_PARSING_INIT_SEGMENT,{frag:R,id:t,tracks:j.tracks}));var te=j.initPTS,ae=j.timescale;(0,C.isFiniteNumber)(te)&&(this.initPTS[R.cc]=te,s.trigger(P.Events.INIT_PTS_FOUND,{frag:R,id:t,initPTS:te,timescale:ae}))}if(F&&y.independent!==!1){if(Y){var re=F.startPTS,se=F.endPTS,ue=F.startDTS,ce=F.endDTS;if(I)I.elementaryStreams[F.type]={startPTS:re,endPTS:se,startDTS:ue,endDTS:ce};else if(F.firstKeyFrame&&F.independent&&d.id===1&&(this.couldBacktrack=!0),F.dropped&&F.independent){var le=this.getMainFwdBufferInfo(),de=(le?le.end:this.getLoadPosition())+this.config.maxBufferHole,fe=F.firstKeyFramePTS?F.firstKeyFramePTS:re;if(de<fe-this.config.maxBufferHole){this.backtrack(R);return}R.setElementaryStreamInfo(F.type,R.start,se,R.start,ce,!0)}R.setElementaryStreamInfo(F.type,re,se,ue,ce),this.backtrackFragment&&(this.backtrackFragment=R),this.bufferFragmentData(F,R,I,d)}}else if(y.independent===!1){this.backtrack(R);return}if(J){var Se=J.startPTS,be=J.endPTS,Oe=J.startDTS,Re=J.endDTS;I&&(I.elementaryStreams[S.ElementaryStreamTypes.AUDIO]={startPTS:Se,endPTS:be,startDTS:Oe,endDTS:Re}),R.setElementaryStreamInfo(S.ElementaryStreamTypes.AUDIO,Se,be,Oe,Re),this.bufferFragmentData(J,R,I,d)}if(Y&&H!==null&&H!==void 0&&(r=H.samples)!==null&&r!==void 0&&r.length){var Ce={id:t,frag:R,details:Y,samples:H.samples};s.trigger(P.Events.FRAG_PARSING_METADATA,Ce)}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===D.State.PARSING){this.audioOnly=!!r.audio&&!r.video,this.altAudio&&!this.audioOnly&&delete r.audio;var d=r.audio,L=r.video,R=r.audiovideo;if(d){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"),d.metadata.channelCount!==1&&k.indexOf("firefox")===-1&&(I="mp4a.40.5")),k.indexOf("android")!==-1&&d.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+'"'),d.levelCodec=I,d.id="main",this.log("Init audio buffer, container:"+d.container+", codecs[selected/level/parsed]=["+(I||"")+"/"+(e.audioCodec||"")+"/"+d.codec+"]")}L&&(L.levelCodec=e.videoCodec,L.id="main",this.log("Init video buffer, container:"+L.container+", codecs[level/parsed]=["+(e.videoCodec||"")+"/"+L.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,A.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=D.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}(D.default)},"./src/controller/subtitle-stream-controller.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{SubtitleStreamController:()=>n});var C=_("./src/events.ts"),D=_("./src/utils/buffer-helper.ts"),M=_("./src/controller/fragment-finders.ts"),P=_("./src/utils/discontinuities.ts"),B=_("./src/controller/level-helper.ts"),b=_("./src/controller/fragment-tracker.ts"),A=_("./src/controller/base-stream-controller.ts"),S=_("./src/types/loader.ts"),T=_("./src/types/level.ts");function x(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 f(l,i,u){return i&&x(l.prototype,i),u&&x(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=A.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=A.State.IDLE,!!r){var t=this.tracksBuffered[this.currentTrackId];if(!!t){for(var s,y=e.start,d=0;d<t.length;d++)if(y>=t[d].start&&y<=t[d].end){s=t[d];break}var L=e.start+e.duration;s?s.end=L:(s={start:y,end:L},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,d=y.targetduration,L=r-d;if(L<=0)return;m.endOffsetSubtitles=Math.max(0,L),this.tracksBuffered.forEach(function(R){for(var I=0;I<R.length;){if(R[I].end<=L){R.shift();continue}else if(R[I].start<L)R[I].start=L;else break;I++}}),this.fragmentTracker.removeFragmentsInRange(e,L,S.PlaylistLevelType.SUBTITLE)}},u.onFragBuffered=function(c,m){if(!this.loadedmetadata&&m.frag.type===S.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!==S.PlaylistLevelType.SUBTITLE||(this.fragCurrent&&this.fragCurrent.abortRequests(),this.state=A.State.IDLE)},u.onSubtitleTracksUpdated=function(c,m){var e=this,r=m.subtitleTracks;this.tracksBuffered=[],this.levels=r.map(function(t){return new T.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 d=y[s];if(!(t>=y.length||t!==s||!d)){this.mediaBuffer=this.mediaBufferTimeRanges;var L=0;if(r.live||(e=d.details)!==null&&e!==void 0&&e.live){var R=this.mainDetails;if(r.deltaUpdateFailed||!R)return;var I=R.fragments[0];d.details?(L=this.alignPlaylists(r,d.details),L===0&&I&&(L=I.start,(0,B.addSliding)(r,L))):r.hasProgramDateTime&&R.hasProgramDateTime?((0,P.alignMediaPlaylistByPDT)(r,R),L=r.fragments[0].start):I&&(L=I.start,(0,B.addSliding)(r,L))}if(d.details=r,this.levelLastLoaded=t,!this.startFragRequested&&(this.mainDetails||!r.live)&&this.setStartPosition(d.details,L),this.tick(),r.live&&!this.fragCurrent&&this.media&&this.state===A.State.IDLE){var k=(0,M.findFragmentByPTS)(null,r.fragments,this.media.currentTime,0);k||(this.warn("Subtitle playlist not aligned with playback"),d.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(d){var L=performance.now();s.trigger(C.Events.FRAG_DECRYPTED,{frag:e,payload:d,stats:{tstart:y,tdecrypt:L}})}).catch(function(d){m.warn(d.name+": "+d.message),m.state=A.State.IDLE})}},u.doTick=function(){if(!this.media){this.state=A.State.IDLE;return}if(this.state===A.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=D.BufferHelper.bufferedInfo(this.tracksBuffered[this.currentTrackId]||[],s-r,t.maxBufferHole),d=y.end,L=y.len,R=this.getFwdBufferInfo(this.media,S.PlaylistLevelType.MAIN),I=this.getMaxBufferLength(R==null?void 0:R.len)+r;if(L>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(d<K){var Y=t.maxFragLookUpTolerance;H=(0,M.findFragmentByPTS)(j,k,Math.max(k[0].start,d),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)===b.FragmentState.NOT_LOADED&&this.loadFragment(H,e,d)}},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))},f(i,[{key:"mediaBufferTimeRanges",get:function(){return new v(this.tracksBuffered[this.currentTrackId]||[])}}]),i}(A.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,_)=>{"use strict";_.r(N),_.d(N,{default:()=>p});var C=_("./src/events.ts"),D=_("./src/utils/texttrack-utils.ts"),M=_("./src/controller/base-playlist-controller.ts"),P=_("./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,A(n.key),n)}}function b(h,a,o){return a&&B(h.prototype,a),o&&B(h,o),Object.defineProperty(h,"prototype",{writable:!1}),h}function A(h){var a=S(h,"string");return typeof a=="symbol"?a:String(a)}function S(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 T(h,a){h.prototype=Object.create(a.prototype),h.prototype.constructor=h,x(h,a)}function x(h,a){return x=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(n,v){return n.__proto__=v,n},x(h,a)}var f=function(h){T(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,D.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)}},b(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=f},"./src/controller/timeline-controller.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{TimelineController:()=>f});var C=_("./src/polyfills/number.ts"),D=_("./src/events.ts"),M=_("./src/utils/cea-608-parser.ts"),P=_("./src/utils/output-filter.ts"),B=_("./src/utils/webvtt-parser.ts"),b=_("./src/utils/texttrack-utils.ts"),A=_("./src/utils/imsc1-ttml-parser.ts"),S=_("./src/utils/mp4-tools.ts"),T=_("./src/types/loader.ts"),x=_("./src/utils/logger.ts"),f=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(D.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),n.on(D.Events.MEDIA_DETACHING,this.onMediaDetaching,this),n.on(D.Events.MANIFEST_LOADING,this.onManifestLoading,this),n.on(D.Events.MANIFEST_LOADED,this.onManifestLoaded,this),n.on(D.Events.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),n.on(D.Events.FRAG_LOADING,this.onFragLoading,this),n.on(D.Events.FRAG_LOADED,this.onFragLoaded,this),n.on(D.Events.FRAG_PARSING_USERDATA,this.onFragParsingUserdata,this),n.on(D.Events.FRAG_DECRYPTED,this.onFragDecrypted,this),n.on(D.Events.INIT_PTS_FOUND,this.onInitPtsFound,this),n.on(D.Events.SUBTITLE_TRACKS_CLEARED,this.onSubtitleTracksCleared,this),n.on(D.Events.BUFFER_FLUSHING,this.onBufferFlushing,this)}var o=a.prototype;return o.destroy=function(){var v=this.hls;v.off(D.Events.MEDIA_ATTACHING,this.onMediaAttaching,this),v.off(D.Events.MEDIA_DETACHING,this.onMediaDetaching,this),v.off(D.Events.MANIFEST_LOADING,this.onManifestLoading,this),v.off(D.Events.MANIFEST_LOADED,this.onManifestLoaded,this),v.off(D.Events.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),v.off(D.Events.FRAG_LOADING,this.onFragLoading,this),v.off(D.Events.FRAG_LOADED,this.onFragLoaded,this),v.off(D.Events.FRAG_PARSING_USERDATA,this.onFragParsingUserdata,this),v.off(D.Events.FRAG_DECRYPTED,this.onFragDecrypted,this),v.off(D.Events.INIT_PTS_FOUND,this.onInitPtsFound,this),v.off(D.Events.SUBTITLE_TRACKS_CLEARED,this.onSubtitleTracksCleared,this),v.off(D.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(D.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(D.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,b.clearCurrentCues)(i[v]),(0,b.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(D.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,b.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,b.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===A.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,d=0;d<m.length;d++)if(E(m[d],r)){y=m[d];break}y&&(s=y)}if(s)(0,b.clearCurrentCues)(s);else{var L=i._captionsOrSubtitlesFromCharacteristics(r);s=i.createTextTrack(L,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(D.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===T.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===T.PlaylistLevelType.SUBTITLE)if(u.byteLength){if(!(0,C.isFiniteNumber)(g[i.cc])){c.push(l),g.length&&this.hls.trigger(D.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===A.IMSC1_CODEC?this._parseIMSC1(i,u):this._parseVTTs(i,u,t)}}else this.hls.trigger(D.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,A.parseIMSC1)(l,this.initPTS[v.cc],this.timescale[v.cc],function(g){i._appendCues(g,v.level),u.trigger(D.Events.SUBTITLE_FRAG_PROCESSED,{success:!0,frag:v})},function(g){x.logger.log("Failed to parse IMSC1: "+g),u.trigger(D.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,S.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(D.Events.SUBTITLE_FRAG_PROCESSED,{success:!0,frag:v})},function(e){g._fallbackToIMSC1(v,l),x.logger.log("Failed to parse VTT cue: "+e),c.trigger(D.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,A.parseIMSC1)(l,this.initPTS[v.cc],this.timescale[v.cc],function(){u.textCodec=A.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,b.addCueToTrack)(u,m)})}else{var g=this.tracks[l];if(!g)return;var c=g.default?"default":"subtitles"+l;i.trigger(D.Events.CUES_PARSED,{type:"subtitles",cues:v,track:c})}},o.onFragDecrypted=function(v,l){var i=l.frag;if(i.type===T.PlaylistLevelType.SUBTITLE){if(!(0,C.isFiniteNumber)(this.initPTS[i.cc])){this.unparsedVttFrags.push(l);return}this.onFragLoaded(D.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===T.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,b.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,b.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,_)=>{"use strict";_.r(N),_.d(N,{default:()=>C});var C=function(){function D(P,B){this.subtle=void 0,this.aesIV=void 0,this.subtle=P,this.aesIV=B}var M=D.prototype;return M.decrypt=function(B,b){return this.subtle.decrypt({name:"AES-CBC",iv:this.aesIV},b,B)},D}()},"./src/crypt/aes-decryptor.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>M,removePadding:()=>D});var C=_("./src/utils/typed-array.ts");function D(P){var B=P.byteLength,b=B&&new DataView(P.buffer).getUint8(B-1);return b?(0,C.sliceUint8)(P,0,B-b):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(A){for(var S=new DataView(A),T=new Uint32Array(4),x=0;x<4;x++)T[x]=S.getUint32(x*4);return T},B.initTable=function(){var A=this.sBox,S=this.invSBox,T=this.subMix,x=T[0],f=T[1],E=T[2],p=T[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,A[i]=c,S[c]=i;var m=l[i],e=l[m],r=l[e],t=l[c]*257^c*16843008;x[i]=t<<24|t>>>8,f[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(A){for(var S=this.uint8ArrayToUint32Array_(A),T=!0,x=0;x<S.length&&T;)T=S[x]===this.key[x],x++;if(!T){this.key=S;var f=this.keySize=S.length;if(f!==4&&f!==6&&f!==8)throw new Error("Invalid aes key size="+f);var E=this.ksRows=(f+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<f){m=a[p]=S[p];continue}e=m,p%f===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/f|0]<<24):f>6&&p%f===4&&(e=n[e>>>24]<<24|n[e>>>16&255]<<16|n[e>>>8&255]<<8|n[e&255]),a[p]=m=(a[p-f]^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(A){return A<<24|(A&65280)<<8|(A&16711680)>>8|A>>>24},B.decrypt=function(A,S,T){for(var x=this.keySize+6,f=this.invKeySchedule,E=this.invSBox,p=this.invSubMix,h=p[0],a=p[1],o=p[2],n=p[3],v=this.uint8ArrayToUint32Array_(T),l=v[0],i=v[1],u=v[2],g=v[3],c=new Int32Array(A),m=new Int32Array(c.length),e,r,t,s,y,d,L,R,I,k,F,K,H,j,Y=this.networkToHostOrderSwap;S<c.length;){for(I=Y(c[S]),k=Y(c[S+1]),F=Y(c[S+2]),K=Y(c[S+3]),y=I^f[0],d=K^f[1],L=F^f[2],R=k^f[3],H=4,j=1;j<x;j++)e=h[y>>>24]^a[d>>16&255]^o[L>>8&255]^n[R&255]^f[H],r=h[d>>>24]^a[L>>16&255]^o[R>>8&255]^n[y&255]^f[H+1],t=h[L>>>24]^a[R>>16&255]^o[y>>8&255]^n[d&255]^f[H+2],s=h[R>>>24]^a[y>>16&255]^o[d>>8&255]^n[L&255]^f[H+3],y=e,d=r,L=t,R=s,H=H+4;e=E[y>>>24]<<24^E[d>>16&255]<<16^E[L>>8&255]<<8^E[R&255]^f[H],r=E[d>>>24]<<24^E[L>>16&255]<<16^E[R>>8&255]<<8^E[y&255]^f[H+1],t=E[L>>>24]<<24^E[R>>16&255]<<16^E[y>>8&255]<<8^E[d&255]^f[H+2],s=E[R>>>24]<<24^E[y>>16&255]<<16^E[d>>8&255]<<8^E[L&255]^f[H+3],m[S]=Y(e^l),m[S+1]=Y(s^i),m[S+2]=Y(t^u),m[S+3]=Y(r^g),l=I,i=k,u=F,g=K,S=S+4}return m.buffer},P}()},"./src/crypt/decrypter.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>S});var C=_("./src/crypt/aes-crypto.ts"),D=_("./src/crypt/fast-aes-key.ts"),M=_("./src/crypt/aes-decryptor.ts"),P=_("./src/utils/logger.ts"),B=_("./src/utils/mp4-tools.ts"),b=_("./src/utils/typed-array.ts"),A=16,S=function(){function T(f,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=f.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 x=T.prototype;return x.destroy=function(){this.subtle=null,this.softwareDecrypter=null,this.key=null,this.fastAesKey=null,this.remainderData=null,this.currentIV=null,this.currentResult=null},x.isSync=function(){return this.useSoftware},x.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},x.reset=function(){this.currentResult=null,this.currentIV=null,this.remainderData=null,this.softwareDecrypter&&(this.softwareDecrypter=null)},x.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)},x.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,b.sliceUint8)(v,-16).buffer,i||null},x.webCryptoDecrypt=function(E,p,h){var a=this,o=this.subtle;return(this.key!==p||!this.fastAesKey)&&(this.key=p,this.fastAesKey=new D.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)})},x.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")},x.getValidChunk=function(E){var p=E,h=E.length-E.length%A;return h!==E.length&&(p=(0,b.sliceUint8)(E,0,h),this.remainderData=(0,b.sliceUint8)(E,h)),p},x.logOnce=function(E){!this.logEnabled||(P.logger.log("[decrypter]: "+E),this.logEnabled=!1)},T}()},"./src/crypt/fast-aes-key.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>C});var C=function(){function D(P,B){this.subtle=void 0,this.key=void 0,this.subtle=P,this.key=B}var M=D.prototype;return M.expandKey=function(){return this.subtle.importKey("raw",this.key,{name:"AES-CBC"},!1,["encrypt","decrypt"])},D}()},"./src/demux/aacdemuxer.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>S});var C=_("./src/demux/base-audio-demuxer.ts"),D=_("./src/demux/adts.ts"),M=_("./src/utils/logger.ts"),P=_("./src/demux/id3.ts");function B(T,x){T.prototype=Object.create(x.prototype),T.prototype.constructor=T,b(T,x)}function b(T,x){return b=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(E,p){return E.__proto__=p,E},b(T,x)}var A=function(T){B(x,T);function x(E,p){var h;return h=T.call(this)||this,h.observer=void 0,h.config=void 0,h.observer=E,h.config=p,h}var f=x.prototype;return f.resetInitSegment=function(p,h,a,o){T.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}},x.probe=function(p){if(!p)return!1;for(var h=P.getID3Data(p,0)||[],a=h.length,o=p.length;a<o;a++)if(D.probe(p,a))return M.logger.log("ADTS sync word found !"),!0;return!1},f.canParse=function(p,h){return D.canParse(p,h)},f.appendFrame=function(p,h,a){D.initTrackConfig(p,this.observer,h,a,p.manifestCodec);var o=D.appendFrame(p,h,a,this.basePTS,this.frameIndex);if(o&&o.missing===0)return o},x}(C.default);let S=A},"./src/demux/adts.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{appendFrame:()=>a,canGetFrameLength:()=>S,canParse:()=>x,getAudioConfig:()=>P,getFrameDuration:()=>p,getFullFrameLength:()=>A,getHeaderLength:()=>b,initTrackConfig:()=>E,isHeader:()=>T,isHeaderPattern:()=>B,parseFrameHeader:()=>h,probe:()=>f});var C=_("./src/utils/logger.ts"),D=_("./src/errors.ts"),M=_("./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:D.ErrorTypes.MEDIA_ERROR,details:D.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 b(o,n){return o[n+1]&1?7:9}function A(o,n){return(o[n+3]&3)<<11|o[n+4]<<3|(o[n+5]&224)>>>5}function S(o,n){return n+5<o.length}function T(o,n){return n+1<o.length&&B(o,n)}function x(o,n){return S(o,n)&&B(o,n)&&A(o,n)<=o.length-n}function f(o,n){if(T(o,n)){var v=b(o,n);if(n+v>=o.length)return!1;var l=A(o,n);if(l<=v)return!1;var i=n+l;return i===o.length||T(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=b(o,n);if(n+v<=o.length){var l=A(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 d=n.length-v;m=new Uint8Array(d),m.set(n.subarray(v,n.length),0);var L={unit:m,pts:g};return{sample:L,length:d,missing:-1}}},"./src/demux/base-audio-demuxer.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>T,initPTSFn:()=>S});var C=_("./src/polyfills/number.ts"),D=_("./src/demux/id3.ts"),M=_("./src/types/demuxer.ts"),P=_("./src/demux/dummy-demuxed-track.ts"),B=_("./src/utils/mp4-tools.ts"),b=_("./src/utils/typed-array.ts"),A=function(){function x(){this._audioTrack=void 0,this._id3Track=void 0,this.frameIndex=0,this.cachedData=null,this.basePTS=null,this.initPTS=null,this.lastPTS=null}var f=x.prototype;return f.resetInitSegment=function(p,h,a,o){this._id3Track={type:"id3",id:3,pid:-1,inputTimeScale:9e4,sequenceNumber:0,samples:[],dropped:0}},f.resetTimeStamp=function(p){this.initPTS=p,this.resetContiguity()},f.resetContiguity=function(){this.basePTS=null,this.lastPTS=null,this.frameIndex=0},f.canParse=function(p,h){return!1},f.appendFrame=function(p,h,a){},f.demux=function(p,h){this.cachedData&&(p=(0,B.appendUint8Array)(this.cachedData,p),this.cachedData=null);var a=D.getID3Data(p,0),o=a?a.length:0,n,v=this._audioTrack,l=this._id3Track,i=a?D.getTimeStamp(a):void 0,u=p.length;for((this.basePTS===null||this.frameIndex===0&&(0,C.isFiniteNumber)(i))&&(this.basePTS=S(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 D.canParse(p,o)?(a=D.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,b.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)()}},f.demuxSampleAes=function(p,h,a){return Promise.reject(new Error("["+this+"] This demuxer does not support Sample-AES decryption"))},f.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)()}},f.destroy=function(){},x}(),S=function(f,E,p){return(0,C.isFiniteNumber)(f)?f*90:E*9e4+(p||0)};let T=A},"./src/demux/chunk-cache.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>C});var C=function(){function M(){this.chunks=[],this.dataLength=0}var P=M.prototype;return P.push=function(b){this.chunks.push(b),this.dataLength+=b.length},P.flush=function(){var b=this.chunks,A=this.dataLength,S;if(b.length)b.length===1?S=b[0]:S=D(b,A);else return new Uint8Array(0);return this.reset(),S},P.reset=function(){this.chunks.length=0,this.dataLength=0},M}();function D(M,P){for(var B=new Uint8Array(P),b=0,A=0;A<M.length;A++){var S=M[A];B.set(S,b),b+=S.length}return B}},"./src/demux/dummy-demuxed-track.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{dummyTrack:()=>C});function C(D,M){return D===void 0&&(D=""),M===void 0&&(M=9e4),{type:D,id:-1,pid:-1,inputTimeScale:M,sequenceNumber:-1,samples:[],dropped:0}}},"./src/demux/exp-golomb.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>M});var C=_("./src/utils/logger.ts"),D=function(){function P(b){this.data=void 0,this.bytesAvailable=void 0,this.word=void 0,this.bitsAvailable=void 0,this.data=b,this.bytesAvailable=b.byteLength,this.word=0,this.bitsAvailable=0}var B=P.prototype;return B.loadWord=function(){var A=this.data,S=this.bytesAvailable,T=A.byteLength-S,x=new Uint8Array(4),f=Math.min(4,S);if(f===0)throw new Error("no bytes available");x.set(A.subarray(T,T+f)),this.word=new DataView(x.buffer).getUint32(0),this.bitsAvailable=f*8,this.bytesAvailable-=f},B.skipBits=function(A){var S;A=Math.min(A,this.bytesAvailable*8+this.bitsAvailable),this.bitsAvailable>A?(this.word<<=A,this.bitsAvailable-=A):(A-=this.bitsAvailable,S=A>>3,A-=S<<3,this.bytesAvailable-=S,this.loadWord(),this.word<<=A,this.bitsAvailable-=A)},B.readBits=function(A){var S=Math.min(this.bitsAvailable,A),T=this.word>>>32-S;if(A>32&&C.logger.error("Cannot read more than 32 bits at a time"),this.bitsAvailable-=S,this.bitsAvailable>0)this.word<<=S;else if(this.bytesAvailable>0)this.loadWord();else throw new Error("no bits available");return S=A-S,S>0&&this.bitsAvailable?T<<S|this.readBits(S):T},B.skipLZ=function(){var A;for(A=0;A<this.bitsAvailable;++A)if((this.word&2147483648>>>A)!==0)return this.word<<=A,this.bitsAvailable-=A,A;return this.loadWord(),A+this.skipLZ()},B.skipUEG=function(){this.skipBits(1+this.skipLZ())},B.skipEG=function(){this.skipBits(1+this.skipLZ())},B.readUEG=function(){var A=this.skipLZ();return this.readBits(A+1)-1},B.readEG=function(){var A=this.readUEG();return 1&A?1+A>>>1:-1*(A>>>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(A){for(var S=8,T=8,x,f=0;f<A;f++)T!==0&&(x=this.readEG(),T=(S+x+256)%256),S=T===0?S:T},B.readSPS=function(){var A=0,S=0,T=0,x=0,f,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(),f=o(),p=0;p<f;p++)l();i(),v(1);var e=o(),r=o(),t=a(1);t===0&&v(1),v(1),n()&&(A=o(),S=o(),T=o(),x=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-A*2-S*2),height:(2-t)*(r+1)*16-(t?2:4)*(T+x),pixelRatio:s}},B.readSliceType=function(){return this.readUByte(),this.readUEG(),this.readUEG()},P}();let M=D},"./src/demux/id3.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{canParse:()=>B,decodeFrame:()=>x,getID3Data:()=>M,getID3Frames:()=>T,getTimeStamp:()=>b,isFooter:()=>D,isHeader:()=>C,isTimeStampFrame:()=>A,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},D=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,D(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},b=function(i){for(var u=T(i),g=0;g<u.length;g++){var c=u[g];if(A(c))return h(c)}},A=function(i){return i&&i.key==="PRIV"&&i.info==="com.apple.streaming.transportStreamTimestamp"},S=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)}},T=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=S(i.subarray(u)),r=x(e);r&&g.push(r),u+=e.size+10}D(i,u)&&(u+=10)}return g},x=function(i){return i.type==="PRIV"?f(i):i.type[0]==="W"?p(i):E(i)},f=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="",d=0;d<e;){if(r=i[d++],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[d++],y+=String.fromCharCode((r&31)<<6|t&63);break;case 14:t=i[d++],s=i[d++],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,_)=>{"use strict";_.r(N),_.d(N,{default:()=>S});var C=_("./src/demux/base-audio-demuxer.ts"),D=_("./src/demux/id3.ts"),M=_("./src/utils/logger.ts"),P=_("./src/demux/mpegaudio.ts");function B(T,x){T.prototype=Object.create(x.prototype),T.prototype.constructor=T,b(T,x)}function b(T,x){return b=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(E,p){return E.__proto__=p,E},b(T,x)}var A=function(T){B(x,T);function x(){return T.apply(this,arguments)||this}var f=x.prototype;return f.resetInitSegment=function(p,h,a,o){T.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}},x.probe=function(p){if(!p)return!1;for(var h=D.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},f.canParse=function(p,h){return P.canParse(p,h)},f.appendFrame=function(p,h,a){if(this.basePTS!==null)return P.appendFrame(p,h,a,this.basePTS,this.frameIndex)},x}(C.default);let S=A},"./src/demux/mp4demuxer.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>A});var C=_("./src/polyfills/number.ts"),D=_("./src/types/demuxer.ts"),M=_("./src/utils/mp4-tools.ts"),P=_("./src/demux/dummy-demuxed-track.ts"),B=/\/emsg[-/]ID3/i,b=function(){function S(x,f){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=f}var T=S.prototype;return T.resetTimeStamp=function(){},T.resetInitSegment=function(f,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,!(!f||!f.byteLength)){var v=(0,M.parseInitSegment)(f);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}},T.resetContiguity=function(){},S.probe=function(f){return f=f.length>16384?f.subarray(0,16384):f,(0,M.findBox)(f,["moof"]).length>0},T.demux=function(f,E){this.timeOffset=E;var p=f,h=this.videoTrack,a=this.txtTrack;if(this.config.progressive){this.remainderData&&(p=(0,M.appendUint8Array)(this.remainderData,f));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}},T.flush=function(){var f=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)(f,E),{videoTrack:E,audioTrack:(0,P.dummyTrack)(),id3Track:h,textTrack:(0,P.dummyTrack)()}},T.extractID3Track=function(f,E){var p=this.id3Track;if(f.samples.length){var h=(0,M.findBox)(f.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:D.MetadataSchema.emsg,duration:v})}})}return p},T.demuxSampleAes=function(f,E,p){return Promise.reject(new Error("The MP4 demuxer does not support SAMPLE-AES decryption"))},T.destroy=function(){},S}();let A=b},"./src/demux/mpegaudio.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{appendFrame:()=>b,canParse:()=>x,isHeader:()=>T,isHeaderPattern:()=>S,parseHeader:()=>A,probe:()=>f});var C=null,D=[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 b(E,p,h,a,o){if(!(h+24>p.length)){var n=A(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 A(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=D[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||"",d=y.match(/Chrome\/(\d+)/i);C=d?parseInt(d[1]):0}var L=!!C&&C<=87;return L&&a===2&&u>=224e3&&l===0&&(E[p+3]=E[p+3]|128),{sampleRate:c,channelCount:m,frameLength:s,samplesPerFrame:t}}}function S(E,p){return E[p]===255&&(E[p+1]&224)===224&&(E[p+1]&6)!==0}function T(E,p){return p+1<E.length&&S(E,p)}function x(E,p){var h=4;return S(E,p)&&h<=E.length-p}function f(E,p){if(p+1<E.length&&S(E,p)){var h=4,a=A(E,p),o=h;a!=null&&a.frameLength&&(o=a.frameLength);var n=p+o;return n===E.length||T(E,n)}return!1}},"./src/demux/sample-aes.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>P});var C=_("./src/crypt/decrypter.ts"),D=_("./src/utils/mp4-tools.ts"),M=function(){function B(A,S,T){this.keyData=void 0,this.decrypter=void 0,this.keyData=T,this.decrypter=new C.default(S,{removePKCS7Padding:!1})}var b=B.prototype;return b.decryptBuffer=function(S){return this.decrypter.decrypt(S,this.keyData.key.buffer,this.keyData.iv.buffer)},b.decryptAacSample=function(S,T,x){var f=this,E=S[T].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),f.decrypter.isSync()||f.decryptAacSamples(S,T+1,x)})}},b.decryptAacSamples=function(S,T,x){for(;;T++){if(T>=S.length){x();return}if(!(S[T].unit.length<32)&&(this.decryptAacSample(S,T,x),!this.decrypter.isSync()))return}},b.getAvcEncryptedData=function(S){for(var T=Math.floor((S.length-48)/160)*16+16,x=new Int8Array(T),f=0,E=32;E<S.length-16;E+=160,f+=16)x.set(S.subarray(E,E+16),f);return x},b.getAvcDecryptedUnit=function(S,T){for(var x=new Uint8Array(T),f=0,E=32;E<S.length-16;E+=160,f+=16)S.set(x.subarray(f,f+16),E);return S},b.decryptAvcSample=function(S,T,x,f,E){var p=this,h=(0,D.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(S,T,x+1,f)})},b.decryptAvcSamples=function(S,T,x,f){if(S instanceof Uint8Array)throw new Error("Cannot decrypt samples of type Uint8Array");for(;;T++,x=0){if(T>=S.length){f();return}for(var E=S[T].units;!(x>=E.length);x++){var p=E[x];if(!(p.data.length<=48||p.type!==1&&p.type!==5)&&(this.decryptAvcSample(S,T,x,f,p),!this.decrypter.isSync()))return}}},B}();let P=M},"./src/demux/transmuxer-interface.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>x});var C=_("./src/demux/webworkify-webpack.js"),D=_("./src/events.ts"),M=_("./src/demux/transmuxer.ts"),P=_("./src/utils/logger.ts"),B=_("./src/errors.ts"),b=_("./src/utils/mediasource-helper.ts"),A=_("./node_modules/eventemitter3/index.js"),S=_.n(A),T=(0,b.getMediaSource)()||{isTypeSupported:function(){return!1}},x=function(){function f(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 A.EventEmitter,this.observer.on(D.Events.FRAG_DECRYPTED,l),this.observer.on(D.Events.ERROR,l);var i={mp4:T.isTypeSupported("video/mp4"),mpeg:T.isTypeSupported("audio/mpeg"),mp3:T.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(D.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=f.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,d=v.decryptdata,L=this.frag,R=!(L&&v.cc===L.cc),I=!(L&&g.level===L.level),k=L?g.sn-L.sn:-1,F=this.part?g.part-this.part.index:-1,K=k===0&&g.id>1&&g.id===(L==null?void 0:L.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=!(L&&((m=v.initSegment)===null||m===void 0?void 0:m.url)===((e=L.initSegment)===null||e===void 0?void 0:e.url)),J=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
+ trackSwitch: `+I+`
17
+ contiguous: `+H+`
18
+ accurateTimeOffset: `+u+`
19
+ timeOffset: `+y+`
20
+ initSegmentChange: `+Y);var te=new M.TransmuxConfig(o,n,a,i,c);this.configureTransmuxer(te)}if(this.frag=v,this.part=l,s)s.postMessage({cmd:"demux",data:h,decryptdata:d,chunkMeta:g,state:J},h instanceof ArrayBuffer?[h]:[]);else if(t){var ae=t.push(h,d,g,J);(0,M.isPromise)(ae)?(t.async=!0,ae.then(function(re){r.handleTransmuxComplete(re)}).catch(function(re){r.transmuxerError(re,g,"transmuxer-interface push error")})):(t.async=!1,this.handleTransmuxComplete(ae))}},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(D.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)},f}()},"./src/demux/transmuxer-worker.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>A});var C=_("./src/demux/transmuxer.ts"),D=_("./src/events.ts"),M=_("./src/utils/logger.ts"),P=_("./node_modules/eventemitter3/index.js"),B=_.n(P),b=_("./src/errors.ts");function A(E){var p=new P.EventEmitter,h=function(n,v){E.postMessage({event:n,data:v})};p.on(D.Events.FRAG_DECRYPTED,h),p.on(D.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){S(E,c)}).catch(function(c){h(D.Events.ERROR,{type:b.ErrorTypes.MEDIA_ERROR,details:b.ErrorDetails.FRAG_PARSING_ERROR,chunkMeta:n.chunkMeta,fatal:!1,error:c,err:c,reason:"transmuxer-worker push error"})})):(E.transmuxer.async=!1,S(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){x(E,c,i)}).catch(function(c){h(D.Events.ERROR,{type:b.ErrorTypes.MEDIA_ERROR,details:b.ErrorDetails.FRAG_PARSING_ERROR,chunkMeta:n.chunkMeta,fatal:!1,error:c,err:c,reason:"transmuxer-worker flush error"})})):x(E,u,i);break}default:break}})}function S(E,p){if(f(p.remuxResult))return!1;var h=[],a=p.remuxResult,o=a.audio,n=a.video;return o&&T(h,o),n&&T(h,n),E.postMessage({event:"transmuxComplete",data:p},h),!0}function T(E,p){p.data1&&E.push(p.data1.buffer),p.data2&&E.push(p.data2.buffer)}function x(E,p,h){var a=p.reduce(function(o,n){return S(E,n)||o},!1);a||E.postMessage({event:"transmuxComplete",data:p[0]}),E.postMessage({event:"flush",data:h})}function f(E){return!E.audio&&!E.video&&!E.text&&!E.id3&&!E.initSegment}},"./src/demux/transmuxer.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{TransmuxConfig:()=>n,TransmuxState:()=>v,default:()=>p,isPromise:()=>o});var C=_("./src/events.ts"),D=_("./src/errors.ts"),M=_("./src/crypt/decrypter.ts"),P=_("./src/demux/aacdemuxer.ts"),B=_("./src/demux/mp4demuxer.ts"),b=_("./src/demux/tsdemuxer.ts"),A=_("./src/demux/mp3demuxer.ts"),S=_("./src/remux/mp4-remuxer.ts"),T=_("./src/remux/passthrough-remuxer.ts"),x=_("./src/utils/logger.ts"),f;try{f=self.performance.now.bind(self.performance)}catch{x.logger.debug("Unable to use Performance API on this environment"),f=self.Date.now}var E=[{demux:B.default,remux:T.default},{demux:b.default,remux:S.default},{demux:P.default,remux:S.default},{demux:A.default,remux:S.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=f();var s=new Uint8Array(g),y=this.currentTransmuxState,d=this.transmuxConfig;e&&(this.currentTransmuxState=e);var L=e||y,R=L.contiguous,I=L.discontinuity,k=L.trackSwitch,F=L.accurateTimeOffset,K=L.timeOffset,H=L.initSegmentChange,j=d.audioCodec,Y=d.videoCodec,J=d.defaultInitPts,te=d.duration,ae=d.initSegmentData,re=h(s,c);if(re&&re.method==="AES-128"){var se=this.getDecrypter();if(se.isSync()){var ue=se.softwareDecrypt(s,re.key.buffer,re.iv.buffer);if(!ue)return t.executeEnd=f(),a(m);s=new Uint8Array(ue)}else return this.decryptionPromise=se.webCryptoDecrypt(s,re.key.buffer,re.iv.buffer).then(function(fe){var Se=r.push(fe,null,m);return r.decryptionPromise=null,Se}),this.decryptionPromise}var ce=this.needsProbing(I,k);ce&&this.configureTransmuxer(s),(I||k||H||ce)&&this.resetInitSegment(ae,j,Y,te,c),(I||H||ce)&&this.resetInitialTimestamp(J),R||this.resetContiguity();var le=this.transmux(s,re,K,F,m),de=this.currentTransmuxState;return de.contiguous=!0,de.discontinuity=!1,de.trackSwitch=!1,t.executeEnd=f(),le},i.flush=function(g){var c=this,m=g.transmuxing;m.executeStart=f();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 d=e.flush();d&&s.push(this.push(d,null,g))}var L=this.demuxer,R=this.remuxer;if(!L||!R)return this.observer.emit(C.Events.ERROR,C.Events.ERROR,{type:D.ErrorTypes.MEDIA_ERROR,details:D.ErrorDetails.FRAG_PARSING_ERROR,fatal:!0,reason:"no demux matching with content found"}),m.executeEnd=f(),[a(g)];var I=L.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,d=y.accurateTimeOffset,L=y.timeOffset;x.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,L,d,!0,this.id);g.push({remuxResult:R,chunkMeta:m}),m.transmuxing.executeEnd=f()},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,d=r.textTrack,L=this.remuxer.remux(t,s,y,d,c,m,!1,this.id);return{remuxResult:L,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||(x.logger.warn("Failed to find demuxer by probing frag, treating as mp4 passthrough"),t={demux:B.default,remux:T.default});var d=this.demuxer,L=this.remuxer,R=t.remux,I=t.demux;(!L||!(L instanceof R))&&(this.remuxer=new R(m,c,e,r)),(!d||!(d 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,_)=>{"use strict";_.r(N),_.d(N,{default:()=>v});var C=_("./src/demux/adts.ts"),D=_("./src/demux/mpegaudio.ts"),M=_("./src/demux/exp-golomb.ts"),P=_("./src/demux/sample-aes.ts"),B=_("./src/events.ts"),b=_("./src/utils/mp4-tools.ts"),A=_("./src/utils/logger.ts"),S=_("./src/errors.ts"),T=_("./src/types/demuxer.ts");function x(){return x=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},x.apply(this,arguments)}var f=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&&A.logger.warn("MPEG2-TS detected but first sync word found @ offset "+c),c!==-1},l.syncOffset=function(g){for(var c=Math.min(f*5,g.length-f*2)+1,m=0;m<c;){if(g[m]===71&&g[m+f]===71)return m;m++}return-1},l.createTrack=function(g,c){return{container:g==="video"||g==="audio"?"video/mp2t":void 0,type:g,id:b.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,d=this._txtTrack,L=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,J=g.length;if(this.remainderData&&(g=(0,b.appendUint8Array)(this.remainderData,g),J=g.length,this.remainderData=null),J<f&&!e)return this.remainderData=g,{audioTrack:s,videoTrack:t,id3Track:y,textTrack:d};var te=Math.max(0,l.syncOffset(g));J-=(J-te)%f,J<g.byteLength&&!e&&(this.remainderData=new Uint8Array(g.buffer,J,g.buffer.byteLength-J));for(var ae=0,re=te;re<J;re+=f)if(g[re]===71){var se=!!(g[re+1]&64),ue=((g[re+1]&31)<<8)+g[re+2],ce=(g[re+3]&48)>>4,le=void 0;if(ce>1){if(le=re+5+g[re+4],le===re+f)continue}else le=re+4;switch(ue){case L:se&&(R&&(r=o(R))&&this.parseAVCPES(t,d,r,!1),R={data:[],size:0}),R&&(R.data.push(g.subarray(le,re+f)),R.size+=re+f-le);break;case I:if(se){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,re+f)),F.size+=re+f-le);break;case k:se&&(K&&(r=o(K))&&this.parseID3PES(y,r),K={data:[],size:0}),K&&(K.data.push(g.subarray(le,re+f)),K.size+=re+f-le);break;case 0:se&&(le+=g[le]+1),Y=this._pmtId=h(g,le);break;case Y:{se&&(le+=g[le]+1);var de=a(g,le,this.typeSupported,m);L=de.avc,L>0&&(t.pid=L),I=de.audio,I>0&&(s.pid=I,s.segmentCodec=de.segmentCodec),k=de.id3,k>0&&(y.pid=k),H!==null&&!j&&(A.logger.log("unknown PID '"+H+"' in TS found"),H=null,re=te-188),j=this.pmtParsed=!0;break}case 17:case 8191:break;default:H=ue;break}}else ae++;ae>0&&this.observer.emit(B.Events.ERROR,B.Events.ERROR,{type:S.ErrorTypes.MEDIA_ERROR,details:S.ErrorDetails.FRAG_PARSING_ERROR,fatal:!1,reason:"Found "+ae+" TS packet/s that do not start with 0x47"}),t.pesData=R,s.pesData=F,y.pesData=K;var fe={audioTrack:s,videoTrack:t,id3Track:y,textTrack:d};return e&&this.extractRemainingSamples(fe),fe},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,d;if(t&&(d=o(t))?(this.parseAVCPES(m,r,d,!0),m.pesData=null):m.pesData=t,s&&(d=o(s))){switch(c.segmentCodec){case"aac":this.parseAACPES(c,d);break;case"mp3":this.parseMPEGPES(c,d);break}c.pesData=null}else s!=null&&s.size&&A.logger.log("last AAC PES packet truncated,might overlap between fragments"),c.pesData=s;y&&(d=o(y))?(this.parseID3PES(e,d),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,d,L=!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:{d=!0,y||(y=r.avcSample=p(!0,m.pts,m.dts,"")),s&&(y.debug+="NDR "),y.frame=!0;var I=R.data;if(L&&I.length>4){var k=new M.default(I).readSliceType();(k===2||k===4||k===7||k===9)&&(y.key=!0)}break}case 5:d=!0,y||(y=r.avcSample=p(!0,m.pts,m.dts,"")),s&&(y.debug+="IDR "),y.key=!0,y.frame=!0;break;case 6:{d=!0,s&&y&&(y.debug+="SEI "),(0,b.parseSEIMessageFromNALu)(R.data,1,m.pts,c.samples);break}case 7:if(d=!0,L=!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 J=H[Y].toString(16);J.length<2&&(J="0"+J),j+=J}g.codec=j}break;case 8:d=!0,s&&y&&(y.debug+="PPS "),g.pps||(g.pps=[R.data]);break;case 9:d=!1,g.audFound=!0,y&&n(y,g),y=r.avcSample=p(!1,m.pts,m.dts,s?"AUD ":"");break;case 12:d=!0;break;default:d=!1,y&&(y.debug+="unknown NAL "+R.type+" ");break}if(y&&d){var te=y.units;te.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,d,L,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)),d=s-e-1,d>0)){var K=new Uint8Array(F.data.byteLength+d);K.set(F.data,0),K.set(c.subarray(0,d),F.data.byteLength),F.data=K,F.state=0}}s<m?(L=c[s]&31,R=s,I=L,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 d=s-t;e.sample.unit.set(r.subarray(0,t),d),g.samples.push(e.sample),m=e.missing}}var L,R;for(L=m,R=r.length;L<R-1&&!C.isHeader(r,L);L++);if(L!==m){var I,k;if(L<R-1?(I="AAC PES did not start with ADTS header,offset:"+L,k=!1):(I="no ADTS header found in AAC PES",k=!0),A.logger.warn("parsing error:"+I),this.observer.emit(B.Events.ERROR,B.Events.ERROR,{type:S.ErrorTypes.MEDIA_ERROR,details:S.ErrorDetails.FRAG_PARSING_ERROR,fatal:k,reason:I}),k)return}C.initTrackConfig(g,this.observer,r,L,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{A.logger.warn("[tsdemuxer]: AAC PES unknown PTS");return}for(var H=0,j;L<R;)if(j=C.appendFrame(g,r,L,F,H),L+=j.length,j.missing){this.aacOverFlow=j;break}else for(H++;L<R-1&&!C.isHeader(r,L);L++);},i.parseMPEGPES=function(g,c){var m=c.data,e=m.length,r=0,t=0,s=c.pts;if(s===void 0){A.logger.warn("[tsdemuxer]: MPEG PES unknown PTS");return}for(;t<e;)if(D.isHeader(m,t)){var y=D.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){A.logger.warn("[tsdemuxer]: ID3 PES unknown PTS");return}var m=x({},c,{type:this._avcTrack?T.MetadataSchema.emsg:T.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){A.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){A.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?A.logger.log("MPEG audio found, not supported in this browser"):c.audio===-1&&(c.audio=t,c.segmentCodec="mp3");break;case 36:A.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&&(A.logger.warn(Math.round((m-e)/9e4)+"s delta between PTS and DTS, align them"),m=e)):e=m),c=u[8];var d=c+9;if(l.size<=d)return null;l.size-=d;for(var L=new Uint8Array(l.size),R=0,I=r.length;R<I;R++){u=r[R];var k=u.byteLength;if(d)if(d>k){d-=k;continue}else u=u.subarray(d),k-=d,d=0;L.set(u,i),i+=k}return g&&(g-=c+3),{data:L,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&&A.logger.log(l.pts+"/"+l.dts+":"+l.debug)}let v=E},"./src/demux/webworkify-webpack.js":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>f});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},D=C.toString().split("ENTRY_MODULE"),M="[\\.|\\-|\\+|\\w|/|@]+",P="\\(\\s*(/\\*.*?\\*/)?\\s*.*?("+M+").*?\\)";function B(E){return(E+"").replace(/[.?*+^$[\]\\(){}|-]/g,"\\$&")}function b(E){return!isNaN(1*E)}function A(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]]=_(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++)b(a[u[g]][c])&&(a[u[g]][c]=1*a[u[g]][c]);return a}function S(E){var p=Object.keys(E);return p.reduce(function(h,a){return h||E[a].length>0},!1)}function T(E,p){for(var h={main:[p]},a={main:[]},o={main:{}};S(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=A(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 x(E,p,h,a){var o=E[a].map(function(n){return'"'+n+'": '+p[a][n].toString().replace(/^"[^"]+"/,"function")}).join(",");return D[0]+"{"+o+"}"+D[1]+'"'+h+'"'+D[2]}function f(E,p){p=p||{};var h={main:_.m},a=p.all?{main:Object.keys(h.main)}:T(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+" = ("+x(a,h,g,modules)+`)();
21
+ `)}),o=o+("new (("+x(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,_)=>{"use strict";_.r(N),_.d(N,{ErrorDetails:()=>D,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 D;(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"})(D||(D={}))},"./src/events.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{Events:()=>C});var C;(function(D){D.MEDIA_ATTACHING="hlsMediaAttaching",D.MEDIA_ATTACHED="hlsMediaAttached",D.MEDIA_DETACHING="hlsMediaDetaching",D.MEDIA_DETACHED="hlsMediaDetached",D.BUFFER_RESET="hlsBufferReset",D.BUFFER_CODECS="hlsBufferCodecs",D.BUFFER_CREATED="hlsBufferCreated",D.BUFFER_APPENDING="hlsBufferAppending",D.BUFFER_APPENDED="hlsBufferAppended",D.BUFFER_EOS="hlsBufferEos",D.BUFFER_FLUSHING="hlsBufferFlushing",D.BUFFER_FLUSHED="hlsBufferFlushed",D.MANIFEST_LOADING="hlsManifestLoading",D.MANIFEST_LOADED="hlsManifestLoaded",D.MANIFEST_PARSED="hlsManifestParsed",D.LEVEL_SWITCHING="hlsLevelSwitching",D.LEVEL_SWITCHED="hlsLevelSwitched",D.LEVEL_LOADING="hlsLevelLoading",D.LEVEL_LOADED="hlsLevelLoaded",D.LEVEL_UPDATED="hlsLevelUpdated",D.LEVEL_PTS_UPDATED="hlsLevelPtsUpdated",D.LEVELS_UPDATED="hlsLevelsUpdated",D.AUDIO_TRACKS_UPDATED="hlsAudioTracksUpdated",D.AUDIO_TRACK_SWITCHING="hlsAudioTrackSwitching",D.AUDIO_TRACK_SWITCHED="hlsAudioTrackSwitched",D.AUDIO_TRACK_LOADING="hlsAudioTrackLoading",D.AUDIO_TRACK_LOADED="hlsAudioTrackLoaded",D.SUBTITLE_TRACKS_UPDATED="hlsSubtitleTracksUpdated",D.SUBTITLE_TRACKS_CLEARED="hlsSubtitleTracksCleared",D.SUBTITLE_TRACK_SWITCH="hlsSubtitleTrackSwitch",D.SUBTITLE_TRACK_LOADING="hlsSubtitleTrackLoading",D.SUBTITLE_TRACK_LOADED="hlsSubtitleTrackLoaded",D.SUBTITLE_FRAG_PROCESSED="hlsSubtitleFragProcessed",D.CUES_PARSED="hlsCuesParsed",D.NON_NATIVE_TEXT_TRACKS_FOUND="hlsNonNativeTextTracksFound",D.INIT_PTS_FOUND="hlsInitPtsFound",D.FRAG_LOADING="hlsFragLoading",D.FRAG_LOAD_EMERGENCY_ABORTED="hlsFragLoadEmergencyAborted",D.FRAG_LOADED="hlsFragLoaded",D.FRAG_DECRYPTED="hlsFragDecrypted",D.FRAG_PARSING_INIT_SEGMENT="hlsFragParsingInitSegment",D.FRAG_PARSING_USERDATA="hlsFragParsingUserdata",D.FRAG_PARSING_METADATA="hlsFragParsingMetadata",D.FRAG_PARSED="hlsFragParsed",D.FRAG_BUFFERED="hlsFragBuffered",D.FRAG_CHANGED="hlsFragChanged",D.FPS_DROP="hlsFpsDrop",D.FPS_DROP_LEVEL_CAPPING="hlsFpsDropLevelCapping",D.ERROR="hlsError",D.DESTROYING="hlsDestroying",D.KEY_LOADING="hlsKeyLoading",D.KEY_LOADED="hlsKeyLoaded",D.LIVE_BACK_BUFFER_REACHED="hlsLiveBackBufferReached",D.BACK_BUFFER_REACHED="hlsBackBufferReached"})(C||(C={}))},"./src/hls.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>g});var C=_("./node_modules/url-toolkit/src/url-toolkit.js"),D=_.n(C),M=_("./src/loader/playlist-loader.ts"),P=_("./src/controller/id3-track-controller.ts"),B=_("./src/controller/latency-controller.ts"),b=_("./src/controller/level-controller.ts"),A=_("./src/controller/fragment-tracker.ts"),S=_("./src/loader/key-loader.ts"),T=_("./src/controller/stream-controller.ts"),x=_("./src/is-supported.ts"),f=_("./src/utils/logger.ts"),E=_("./src/config.ts"),p=_("./node_modules/eventemitter3/index.js"),h=_.n(p),a=_("./src/events.ts"),o=_("./src/errors.ts"),n=_("./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,x.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,f.enableLogs)(r.debug,"Hls instance"),this._autoLevelCapping=-1,r.progressive&&(0,E.enableStreamingMode)(r);var t=r.abrController,s=r.bufferController,y=r.capLevelController,d=r.fpsController,L=this.abrController=new t(this),R=this.bufferController=new s(this),I=this.capLevelController=new y(this),k=new d(this),F=new M.default(this),K=new P.default(this),H=this.levelController=new b.default(this),j=new A.FragmentTracker(this),Y=new S.default(this.config),J=this.streamController=new T.default(this,j,Y);I.setStreamController(J),k.setStreamController(J);var te=[F,H,J];this.networkControllers=te;var ae=[L,R,I,k,K,j];this.audioTrackController=this.createController(r.audioTrackController,te);var re=r.audioStreamController;re&&te.push(new re(this,j,Y)),this.subtitleTrackController=this.createController(r.subtitleTrackController,te);var se=r.subtitleStreamController;se&&te.push(new se(this,j,Y)),this.createController(r.timelineController,ae),Y.emeController=this.emeController=this.createController(r.emeController,ae),this.cmcdController=this.createController(r.cmcdController,ae),this.latencyController=this.createController(B.default,ae),this.coreComponents=ae}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){f.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(){f.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){f.logger.log("attachMedia"),this._media=r,this.trigger(a.Events.MEDIA_ATTACHING,{media:r})},m.detachMedia=function(){f.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});f.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),f.logger.log("startLoad("+r+")"),this.networkControllers.forEach(function(t){t.startLoad(r)})},m.stopLoad=function(){f.logger.log("stopLoad"),this.networkControllers.forEach(function(r){r.stopLoad()})},m.swapAudioCodec=function(){f.logger.log("swapAudioCodec"),this.streamController.swapAudioCodec()},m.recoverMediaError=function(){f.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){f.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){f.logger.log("set nextLevel:"+r),this.levelController.manualLevel=r,this.streamController.nextLevelSwitch()}},{key:"loadLevel",get:function(){return this.levelController.level},set:function(r){f.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){f.logger.log("set firstLevel:"+r),this.levelController.firstLevel=r}},{key:"startLevel",get:function(){return this.levelController.startLevel},set:function(r){f.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&&(f.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 d=y;d--;){var L=r[d].attrs["HDCP-LEVEL"];if(L&&L<=s)return d}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,_)=>{"use strict";_.r(N),_.d(N,{changeTypeSupported:()=>P,isSupported:()=>M});var C=_("./src/utils/mediasource-helper.ts");function D(){return self.SourceBuffer||self.WebKitSourceBuffer}function M(){var B=(0,C.getMediaSource)();if(!B)return!1;var b=D(),A=B&&typeof B.isTypeSupported=="function"&&B.isTypeSupported('video/mp4; codecs="avc1.42E01E,mp4a.40.2"'),S=!b||b.prototype&&typeof b.prototype.appendBuffer=="function"&&typeof b.prototype.remove=="function";return!!A&&!!S}function P(){var B,b=D();return typeof(b==null||(B=b.prototype)===null||B===void 0?void 0:B.changeType)=="function"}},"./src/loader/date-range.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{DateRange:()=>x,DateRangeAttribute:()=>T});var C=_("./src/polyfills/number.ts"),D=_("./src/utils/attr-list.ts"),M=_("./src/utils/logger.ts");function P(){return P=Object.assign?Object.assign.bind():function(f){for(var E=1;E<arguments.length;E++){var p=arguments[E];for(var h in p)Object.prototype.hasOwnProperty.call(p,h)&&(f[h]=p[h])}return f},P.apply(this,arguments)}function B(f,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(f,A(h.key),h)}}function b(f,E,p){return E&&B(f.prototype,E),p&&B(f,p),Object.defineProperty(f,"prototype",{writable:!1}),f}function A(f){var E=S(f,"string");return typeof E=="symbol"?E:String(E)}function S(f,E){if(typeof f!="object"||f===null)return f;var p=f[Symbol.toPrimitive];if(p!==void 0){var h=p.call(f,E||"default");if(typeof h!="object")return h;throw new TypeError("@@toPrimitive must return a primitive value.")}return(E==="string"?String:Number)(f)}var T;(function(f){f.ID="ID",f.CLASS="CLASS",f.START_DATE="START-DATE",f.DURATION="DURATION",f.END_DATE="END-DATE",f.END_ON_NEXT="END-ON-NEXT",f.PLANNED_DURATION="PLANNED-DURATION",f.SCTE35_OUT="SCTE35-OUT",f.SCTE35_IN="SCTE35-IN"})(T||(T={}));var x=function(){function f(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 D.AttrList({}),h,E)}if(this.attr=E,this._startDate=new Date(E[T.START_DATE]),T.END_DATE in this.attr){var o=new Date(this.attr[T.END_DATE]);(0,C.isFiniteNumber)(o.getTime())&&(this._endDate=o)}}return b(f,[{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(T.DURATION in this.attr){var p=this.attr.decimalFloatingPoint(T.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 T.PLANNED_DURATION in this.attr?this.attr.decimalFloatingPoint(T.PLANNED_DURATION):null}},{key:"endOnNext",get:function(){return this.attr.bool(T.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)}}]),f}()},"./src/loader/fragment-loader.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{LoadError:()=>p,default:()=>f});var C=_("./src/polyfills/number.ts"),D=_("./src/errors.ts");function M(h,a){h.prototype=Object.create(a.prototype),h.prototype.constructor=h,S(h,a)}function P(h){var a=typeof Map=="function"?new Map:void 0;return P=function(n){if(n===null||!A(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,T(this).constructor)}return v.prototype=Object.create(n.prototype,{constructor:{value:v,enumerable:!1,writable:!0,configurable:!0}}),S(v,n)},P(h)}function B(h,a,o){return b()?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&&S(c,i.prototype),c},B.apply(null,arguments)}function b(){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 A(h){return Function.toString.call(h).indexOf("[native code]")!==-1}function S(h,a){return S=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(n,v){return n.__proto__=v,n},S(h,a)}function T(h){return T=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(o){return o.__proto__||Object.getPrototypeOf(o)},T(h)}var x=Math.pow(2,17),f=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:D.ErrorTypes.NETWORK_ERROR,details:D.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:x};n.stats=r.stats,r.load(t,s,{onSuccess:function(d,L,R,I){l.resetLoader(n,r);var k=d.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(d,L,R){l.resetLoader(n,r),e(new p({type:D.ErrorTypes.NETWORK_ERROR,details:D.ErrorDetails.FRAG_LOAD_ERROR,fatal:!1,frag:n,response:d,networkDetails:R}))},onAbort:function(d,L,R){l.resetLoader(n,r),e(new p({type:D.ErrorTypes.NETWORK_ERROR,details:D.ErrorDetails.INTERNAL_ABORTED,fatal:!1,frag:n,networkDetails:R}))},onTimeout:function(d,L,R){l.resetLoader(n,r),e(new p({type:D.ErrorTypes.NETWORK_ERROR,details:D.ErrorDetails.FRAG_LOAD_TIMEOUT,fatal:!1,frag:n,networkDetails:R}))},onProgress:function(d,L,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:x};v.stats=r.stats,r.load(t,s,{onSuccess:function(d,L,R,I){i.resetLoader(n,r),i.updateStatsFromPart(n,v);var k={frag:n,part:v,payload:d.data,networkDetails:I};l(k),m(k)},onError:function(d,L,R){i.resetLoader(n,r),e(new p({type:D.ErrorTypes.NETWORK_ERROR,details:D.ErrorDetails.FRAG_LOAD_ERROR,fatal:!1,frag:n,part:v,response:d,networkDetails:R}))},onAbort:function(d,L,R){n.stats.aborted=v.stats.aborted,i.resetLoader(n,r),e(new p({type:D.ErrorTypes.NETWORK_ERROR,details:D.ErrorDetails.INTERNAL_ABORTED,fatal:!1,frag:n,part:v,networkDetails:R}))},onTimeout:function(d,L,R){i.resetLoader(n,r),e(new p({type:D.ErrorTypes.NETWORK_ERROR,details:D.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,_)=>{"use strict";_.r(N),_.d(N,{BaseSegment:()=>E,ElementaryStreamTypes:()=>f,Fragment:()=>p,Part:()=>h});var C=_("./src/polyfills/number.ts"),D=_("./node_modules/url-toolkit/src/url-toolkit.js"),M=_.n(D),P=_("./src/loader/load-stats.ts");function B(a,o){a.prototype=Object.create(o.prototype),a.prototype.constructor=a,b(a,o)}function b(a,o){return b=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(v,l){return v.__proto__=l,v},b(a,o)}function A(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,T(v.key),v)}}function S(a,o,n){return o&&A(a.prototype,o),n&&A(a,n),Object.defineProperty(a,"prototype",{writable:!1}),a}function T(a){var o=x(a,"string");return typeof o=="symbol"?o:String(o)}function x(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 f;(function(a){a.AUDIO="audio",a.VIDEO="video",a.AUDIOVIDEO="audiovideo"})(f||(f={}));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[f.AUDIO]=null,v[f.VIDEO]=null,v[f.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},S(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,D.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[f.AUDIO]=null,l[f.VIDEO]=null,l[f.AUDIOVIDEO]=null},S(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 S(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,_)=>{"use strict";_.r(N),_.d(N,{default:()=>M});var C=_("./src/errors.ts"),D=_("./src/loader/fragment-loader.ts"),M=function(){function P(b){this.config=void 0,this.keyUriToKeyInfo={},this.emeController=null,this.config=b}var B=P.prototype;return B.abort=function(){for(var A in this.keyUriToKeyInfo){var S=this.keyUriToKeyInfo[A].loader;S&&S.abort()}},B.detach=function(){for(var A in this.keyUriToKeyInfo){var S=this.keyUriToKeyInfo[A];(S.mediaKeySessionContext||S.decryptdata.isCommonEncryption)&&delete this.keyUriToKeyInfo[A]}},B.destroy=function(){this.detach();for(var A in this.keyUriToKeyInfo){var S=this.keyUriToKeyInfo[A].loader;S&&S.destroy()}this.keyUriToKeyInfo={}},B.createKeyLoadError=function(A,S,T,x){return S===void 0&&(S=C.ErrorDetails.KEY_LOAD_ERROR),new D.LoadError({type:C.ErrorTypes.NETWORK_ERROR,details:S,fatal:!1,frag:A,networkDetails:T})},B.loadClear=function(A,S){var T=this;if(this.emeController&&this.config.emeEnabled)for(var x=A.sn,f=A.cc,E=function(o){var n=S[o];if(f<=n.cc&&(x==="initSegment"||x<n.sn))return T.emeController.selectKeySystemFormat(n).then(function(v){n.setKeyFormat(v)}),"break"},p=0;p<S.length;p++){var h=E(p);if(h==="break")break}},B.load=function(A){var S=this;return!A.decryptdata&&A.encrypted&&this.emeController?this.emeController.selectKeySystemFormat(A).then(function(T){return S.loadInternal(A,T)}):this.loadInternal(A)},B.loadInternal=function(A,S){var T,x;S&&A.setKeyFormat(S);var f=A.decryptdata;if(!f){var E=S?"Expected frag.decryptdata to be defined after setting format "+S:"Missing decryption data on fragment in onKeyLoading";return Promise.reject(this.createKeyLoadError(A,C.ErrorDetails.KEY_LOAD_ERROR,null,E))}var p=f.uri;if(!p)return Promise.reject(this.createKeyLoadError(A,C.ErrorDetails.KEY_LOAD_ERROR,null,'Invalid key URI: "'+p+'"'));var h=this.keyUriToKeyInfo[p];if((T=h)!==null&&T!==void 0&&T.decryptdata.key)return f.key=h.decryptdata.key,Promise.resolve({frag:A,keyInfo:h});if((x=h)!==null&&x!==void 0&&x.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:f,keyLoadPromise:null,loader:null,mediaKeySessionContext:null},f.method){case"ISO-23001-7":case"SAMPLE-AES":case"SAMPLE-AES-CENC":case"SAMPLE-AES-CTR":return f.keyFormat==="identity"?this.loadKeyHTTP(h,A):this.loadKeyEME(h,A);case"AES-128":return this.loadKeyHTTP(h,A);default:return Promise.reject(this.createKeyLoadError(A,C.ErrorDetails.KEY_LOAD_ERROR,null,'Key supplied with unsupported METHOD: "'+f.method+'"'))}},B.loadKeyEME=function(A,S){var T={frag:S,keyInfo:A};if(this.emeController&&this.config.emeEnabled){var x=this.emeController.loadKey(T);if(x)return(A.keyLoadPromise=x.then(function(f){return A.mediaKeySessionContext=f,T})).catch(function(f){throw A.keyLoadPromise=null,f})}return Promise.resolve(T)},B.loadKeyHTTP=function(A,S){var T=this,x=this.config,f=x.loader,E=new f(x);return S.keyLoader=A.loader=E,A.keyLoadPromise=new Promise(function(p,h){var a={keyInfo:A,frag:S,responseType:"arraybuffer",url:A.decryptdata.uri},o={timeout:x.fragLoadingTimeOut,maxRetry:0,retryDelay:x.fragLoadingRetryDelay,maxRetryDelay:x.fragLoadingMaxRetryTimeout,highWaterMark:0},n={onSuccess:function(l,i,u,g){var c=u.frag,m=u.keyInfo,e=u.url;if(!c.decryptdata||m!==T.keyUriToKeyInfo[e])return h(T.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){T.resetLoader(i),h(T.createKeyLoadError(S,C.ErrorDetails.KEY_LOAD_ERROR,u))},onTimeout:function(l,i,u){T.resetLoader(i),h(T.createKeyLoadError(S,C.ErrorDetails.KEY_LOAD_TIMEOUT,u))},onAbort:function(l,i,u){T.resetLoader(i),h(T.createKeyLoadError(S,C.ErrorDetails.INTERNAL_ABORTED,u))}};E.load(a,o,n)})},B.resetLoader=function(A){var S=A.frag,T=A.keyInfo,x=A.url,f=T.loader;S.keyLoader===f&&(S.keyLoader=null,T.loader=null),delete this.keyUriToKeyInfo[x],f&&f.destroy()},P}()},"./src/loader/level-details.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{LevelDetails:()=>A});var C=_("./src/polyfills/number.ts");function D(S,T){for(var x=0;x<T.length;x++){var f=T[x];f.enumerable=f.enumerable||!1,f.configurable=!0,"value"in f&&(f.writable=!0),Object.defineProperty(S,P(f.key),f)}}function M(S,T,x){return T&&D(S.prototype,T),x&&D(S,x),Object.defineProperty(S,"prototype",{writable:!1}),S}function P(S){var T=B(S,"string");return typeof T=="symbol"?T:String(T)}function B(S,T){if(typeof S!="object"||S===null)return S;var x=S[Symbol.toPrimitive];if(x!==void 0){var f=x.call(S,T||"default");if(typeof f!="object")return f;throw new TypeError("@@toPrimitive must return a primitive value.")}return(T==="string"?String:Number)(S)}var b=10,A=function(){function S(x){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=x}var T=S.prototype;return T.reloaded=function(f){if(!f){this.advanced=!0,this.updated=!0;return}var E=this.lastPartSn-f.lastPartSn,p=this.lastPartIndex-f.lastPartIndex;this.updated=this.endSN!==f.endSN||!!p||!!E,this.advanced=this.endSN>f.endSN||E>0||E===0&&p>0,this.updated||this.advanced?this.misses=Math.floor(f.misses*.6):this.misses=f.misses+1,this.availabilityDelay=f.availabilityDelay},M(S,[{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||b}},{key:"drift",get:function(){var f=this.driftEndTime-this.driftStartTime;if(f>0){var E=this.driftEnd-this.driftStart;return E*1e3/f}return 1}},{key:"edge",get:function(){return this.partEnd||this.fragmentEnd}},{key:"partEnd",get:function(){var f;return(f=this.partList)!==null&&f!==void 0&&f.length?this.partList[this.partList.length-1].end:this.fragmentEnd}},{key:"fragmentEnd",get:function(){var f;return(f=this.fragments)!==null&&f!==void 0&&f.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 f;return(f=this.partList)!==null&&f!==void 0&&f.length?this.partList[this.partList.length-1].index:-1}},{key:"lastPartSn",get:function(){var f;return(f=this.partList)!==null&&f!==void 0&&f.length?this.partList[this.partList.length-1].fragment.sn:this.endSN}}]),S}()},"./src/loader/level-key.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{LevelKey:()=>A});var C=_("./src/utils/keysystem-util.ts"),D=_("./src/utils/mediakeys-helper.ts"),M=_("./src/utils/mp4-tools.ts"),P=_("./src/utils/logger.ts"),B=_("./src/utils/numeric-encoding-utils.ts"),b={},A=function(){T.clearKeyUriToKeyIdMap=function(){b={}};function T(f,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=f,this.uri=E,this.keyFormat=p,this.keyFormatVersions=h,this.iv=a,this.encrypted=f?f!=="NONE":!1,this.isCommonEncryption=this.encrypted&&f!=="AES-128"}var x=T.prototype;return x.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 D.KeySystemFormats.FAIRPLAY:case D.KeySystemFormats.WIDEVINE:case D.KeySystemFormats.PLAYREADY:case D.KeySystemFormats.CLEARKEY:return["ISO-23001-7","SAMPLE-AES","SAMPLE-AES-CENC","SAMPLE-AES-CTR"].indexOf(this.method)!==-1}}return!1},x.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=S(E),h=new T(this.method,this.uri,"identity",this.keyFormatVersions,p);return h}var a=(0,C.convertDataUriToArrayBytes)(this.uri);if(a)switch(this.keyFormat){case D.KeySystemFormats.WIDEVINE:this.pssh=a,a.length>=22&&(this.keyId=a.subarray(a.length-22,a.length-6));break;case D.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=b[this.uri];if(!t){var s=Object.keys(b).length%Number.MAX_SAFE_INTEGER;t=new Uint8Array(16);var y=new DataView(t.buffer,12,4);y.setUint32(0,s),b[this.uri]=t}this.keyId=t}return this},T}();function S(T){for(var x=new Uint8Array(16),f=12;f<16;f++)x[f]=T>>8*(15-f)&255;return x}},"./src/loader/load-stats.ts":(z,N,_)=>{"use strict";_.r(N),_.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,_)=>{"use strict";_.r(N),_.d(N,{default:()=>o});var C=_("./src/polyfills/number.ts"),D=_("./node_modules/url-toolkit/src/url-toolkit.js"),M=_.n(D),P=_("./src/loader/date-range.ts"),B=_("./src/loader/fragment.ts"),b=_("./src/loader/level-details.ts"),A=_("./src/loader/level-key.ts"),S=_("./src/utils/attr-list.ts"),T=_("./src/utils/logger.ts"),x=_("./src/utils/codecs.ts");function f(){return f=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},f.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,D.buildAbsoluteURL)(r,e,{alwaysNormalize:!0})},c.parseMasterPlaylist=function(e,r){var t=[],s=[],y={},d=[],L=!1;E.lastIndex=0;for(var R;(R=E.exec(e))!=null;)if(R[1]){var I,k=new S.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(te){return te}),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 S.AttrList(R[3]);H["DATA-ID"]&&(L=!0,y[H["DATA-ID"]]=H)}else if(R[4]){var j=R[4],Y=n(j,r);Y.encrypted&&Y.isSupported()?d.push(Y):T.logger.warn('[Keys] Ignoring invalid EXT-X-SESSION-KEY tag: "'+j+'"')}var J=s.length>0&&s.length<t.length;return{levels:J?s:t,sessionData:L?y:null,sessionKeys:d.length?d:null}},c.parseMasterPlaylistMedia=function(e,r,t,s){s===void 0&&(s=[]);var y,d=[],L=0;for(p.lastIndex=0;(y=p.exec(e))!==null;){var R=new S.AttrList(y[1]);if(R.TYPE===t){var I={attrs:R,bitrate:0,id:L++,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")}d.push(I)}}return d},c.parseLevelPlaylist=function(e,r,t,s,y){var d=new b.LevelDetails(r),L=d.fragments,R=null,I=0,k=0,F=0,K=0,H=null,j=new B.Fragment(s,r),Y,J,te,ae=-1,re=!1;for(h.lastIndex=0,d.m3u8=e;(Y=h.exec(e))!==null;){re&&(re=!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 se=Y[1];if(se){j.duration=parseFloat(se);var ue=(" "+Y[2]).slice(1);j.title=ue||null,j.tagList.push(ue?["INF",se,ue]:["INF",se])}else if(Y[3]){if((0,C.isFiniteNumber)(j.duration)){if(j.start=F,te){j.levelkeys=te;var ce=d.encryptedFragments;j.levelkeys&&Object.keys(j.levelkeys).some(function(et){return j.levelkeys[et].isCommonEncryption})&&(!ce.length||ce[ce.length-1].levelkeys!==te)&&ce.push(j)}j.sn=I,j.level=t,j.cc=K,j.urlId=y,L.push(j),j.relurl=(" "+Y[3]).slice(1),u(j,H),H=j,F+=j.duration,I++,k=0,re=!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]),ae===-1&&(ae=L.length);else{if(Y=Y[0].match(a),!Y){T.logger.warn("No matches on slow regex match for level playlist!");continue}for(J=1;J<Y.length&&typeof Y[J]=="undefined";J++);var de=(" "+Y[J]).slice(1),fe=(" "+Y[J+1]).slice(1),Se=Y[J+2]?(" "+Y[J+2]).slice(1):"";switch(de){case"PLAYLIST-TYPE":d.type=fe.toUpperCase();break;case"MEDIA-SEQUENCE":I=d.startSN=parseInt(fe);break;case"SKIP":{var be=new S.AttrList(fe),Oe=be.decimalInteger("SKIPPED-SEGMENTS");if((0,C.isFiniteNumber)(Oe)){d.skippedSegments=Oe;for(var Re=Oe;Re--;)L.unshift(null);I+=Oe}var Ce=be.enumeratedString("RECENTLY-REMOVED-DATERANGES");Ce&&(d.recentlyRemovedDateranges=Ce.split(" "));break}case"TARGETDURATION":d.targetduration=parseFloat(fe);break;case"VERSION":d.version=parseInt(fe);break;case"EXTM3U":break;case"ENDLIST":d.live=!1;break;case"#":(fe||Se)&&j.tagList.push(Se?[fe,Se]:[fe]);break;case"DISCONTINUITY":K++,j.tagList.push(["DIS"]);break;case"GAP":j.tagList.push([de]);break;case"BITRATE":j.tagList.push([de,fe]);break;case"DATERANGE":{var Pe=new S.AttrList(fe),Me=new P.DateRange(Pe,d.dateRanges[Pe.ID]);Me.isValid||d.skippedSegments?d.dateRanges[Me.id]=Me:T.logger.warn('Ignoring invalid DATERANGE tag: "'+fe+'"'),j.tagList.push(["EXT-X-DATERANGE",fe]);break}case"DISCONTINUITY-SEQUENCE":K=parseInt(fe);break;case"KEY":{var De=n(fe,r);if(De.isSupported()){if(De.method==="NONE"){te=void 0;break}te||(te={}),te[De.keyFormat]&&(te=f({},te)),te[De.keyFormat]=De}else T.logger.warn('[Keys] Ignoring invalid EXT-X-KEY tag: "'+fe+'"');break}case"START":{var Fe=new S.AttrList(fe),Ne=Fe.decimalFloatingPoint("TIME-OFFSET");(0,C.isFiniteNumber)(Ne)&&(d.startTimeOffset=Ne);break}case"MAP":{var ke=new S.AttrList(fe);if(j.duration){var Xe=new B.Fragment(s,r);g(Xe,ke,t,te),R=Xe,j.initSegment=R,R.rawProgramDateTime&&!j.rawProgramDateTime&&(j.rawProgramDateTime=R.rawProgramDateTime)}else g(j,ke,t,te),R=j,re=!0;break}case"SERVER-CONTROL":{var ze=new S.AttrList(fe);d.canBlockReload=ze.bool("CAN-BLOCK-RELOAD"),d.canSkipUntil=ze.optionalFloat("CAN-SKIP-UNTIL",0),d.canSkipDateRanges=d.canSkipUntil>0&&ze.bool("CAN-SKIP-DATERANGES"),d.partHoldBack=ze.optionalFloat("PART-HOLD-BACK",0),d.holdBack=ze.optionalFloat("HOLD-BACK",0);break}case"PART-INF":{var rt=new S.AttrList(fe);d.partTarget=rt.decimalFloatingPoint("PART-TARGET");break}case"PART":{var Qe=d.partList;Qe||(Qe=d.partList=[]);var it=k>0?Qe[Qe.length-1]:void 0,nt=k++,Je=new B.Part(new S.AttrList(fe),j,r,nt,it);Qe.push(Je),j.duration+=Je.duration;break}case"PRELOAD-HINT":{var Ke=new S.AttrList(fe);d.preloadHint=Ke;break}case"RENDITION-REPORT":{var We=new S.AttrList(fe);d.renditionReports=d.renditionReports||[],d.renditionReports.push(We);break}default:T.logger.warn("line parsed but not handled: "+Y);break}}}H&&!H.relurl?(L.pop(),F-=H.duration,d.partList&&(d.fragmentHint=H)):d.partList&&(u(j,H),j.cc=K,d.fragmentHint=j);var Ze=L.length,ct=L[0],we=L[Ze-1];if(F+=d.skippedSegments*d.targetduration,F>0&&Ze&&we){d.averagetargetduration=F/Ze;var qe=we.sn;d.endSN=qe!=="initSegment"?qe:0,d.live||(we.endList=!0),ct&&(d.startCC=ct.cc)}else d.endSN=0,d.startCC=0;return d.fragmentHint&&(F+=d.fragmentHint.duration),d.totalduration=F,d.endCC=K,ae>0&&i(L,ae),d},c}();function n(c,m){var e,r,t=new S.AttrList(c),s=(e=t.enumeratedString("METHOD"))!=null?e:"",y=t.URI,d=t.hexadecimalInteger("IV"),L=t.enumeratedString("KEYFORMATVERSIONS"),R=(r=t.enumeratedString("KEYFORMAT"))!=null?r:"identity";y&&t.IV&&!d&&T.logger.error("Invalid IV: "+t.IV);var I=y?o.resolve(y,m):"",k=(L||"1").split("/").map(Number).filter(Number.isFinite);return new A.LevelKey(s,I,R,k,d)}function v(c,m){["video","audio","text"].forEach(function(e){var r=c.filter(function(s){return(0,x.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,_)=>{"use strict";_.r(N),_.d(N,{default:()=>f});var C=_("./src/polyfills/number.ts"),D=_("./src/events.ts"),M=_("./src/errors.ts"),P=_("./src/utils/logger.ts"),B=_("./src/loader/m3u8-parser.ts"),b=_("./src/types/loader.ts"),A=_("./src/utils/attr-list.ts");function S(E){var p=E.type;switch(p){case b.PlaylistContextType.AUDIO_TRACK:return b.PlaylistLevelType.AUDIO;case b.PlaylistContextType.SUBTITLE_TRACK:return b.PlaylistLevelType.SUBTITLE;default:return b.PlaylistLevelType.MAIN}}function T(E,p){var h=E.url;return(h===void 0||h.indexOf("data:")===0)&&(h=p.url),h}var x=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(D.Events.MANIFEST_LOADING,this.onManifestLoading,this),a.on(D.Events.LEVEL_LOADING,this.onLevelLoading,this),a.on(D.Events.AUDIO_TRACK_LOADING,this.onAudioTrackLoading,this),a.on(D.Events.SUBTITLE_TRACK_LOADING,this.onSubtitleTrackLoading,this)},p.unregisterListeners=function(){var a=this.hls;a.off(D.Events.MANIFEST_LOADING,this.onManifestLoading,this),a.off(D.Events.LEVEL_LOADING,this.onLevelLoading,this),a.off(D.Events.AUDIO_TRACK_LOADING,this.onAudioTrackLoading,this),a.off(D.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:b.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:b.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:b.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:b.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 b.PlaylistContextType.MANIFEST:i=n.manifestLoadingMaxRetry,u=n.manifestLoadingTimeOut,g=n.manifestLoadingRetryDelay,c=n.manifestLoadingMaxRetryTimeout;break;case b.PlaylistContextType.LEVEL:case b.PlaylistContextType.AUDIO_TRACK:case b.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===b.PlaylistContextType.LEVEL&&a.level!==null?m=this.hls.levels[a.level].details:a.type===b.PlaylistContextType.AUDIO_TRACK&&a.id!==null?m=this.hls.audioTracks[a.id].details:a.type===b.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=T(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),d=B.default.parseMasterPlaylistMedia(i,u,"CLOSED-CAPTIONS");if(s.length){var L=s.some(function(R){return!R.url});!L&&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 A.AttrList({}),bitrate:0,url:""}))}l.trigger(D.Events.MANIFEST_LOADED,{levels:c,audioTracks:s,subtitles:y,captions:d,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=T(a,n),m=(0,C.isFiniteNumber)(i)?i:0,e=(0,C.isFiniteNumber)(u)?u:m,r=S(n),t=B.default.parseLevelPlaylist(a.data,c,e,r,m);if(!t.fragments.length){l.trigger(D.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===b.PlaylistContextType.MANIFEST){var s={attrs:new A.AttrList({}),bitrate:0,details:t,name:"",url:c};l.trigger(D.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(D.Events.ERROR,{type:M.ErrorTypes.NETWORK_ERROR,details:M.ErrorDetails.MANIFEST_PARSING_ERROR,fatal:o.type===b.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 b.PlaylistContextType.MANIFEST:l=n?M.ErrorDetails.MANIFEST_LOAD_TIMEOUT:M.ErrorDetails.MANIFEST_LOAD_ERROR,i=!0;break;case b.PlaylistContextType.LEVEL:l=n?M.ErrorDetails.LEVEL_LOAD_TIMEOUT:M.ErrorDetails.LEVEL_LOAD_ERROR,i=!1;break;case b.PlaylistContextType.AUDIO_TRACK:l=n?M.ErrorDetails.AUDIO_TRACK_LOAD_TIMEOUT:M.ErrorDetails.AUDIO_TRACK_LOAD_ERROR,i=!1;break;case b.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(D.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 b.PlaylistContextType.MANIFEST:case b.PlaylistContextType.LEVEL:this.hls.trigger(D.Events.LEVEL_LOADED,{details:m,level:i||0,id:u||0,stats:o,networkDetails:v,deliveryDirectives:e});break;case b.PlaylistContextType.AUDIO_TRACK:this.hls.trigger(D.Events.AUDIO_TRACK_LOADED,{details:m,id:u||0,groupId:g||"",stats:o,networkDetails:v,deliveryDirectives:e});break;case b.PlaylistContextType.SUBTITLE_TRACK:this.hls.trigger(D.Events.SUBTITLE_TRACK_LOADED,{details:m,id:u||0,groupId:g||"",stats:o,networkDetails:v,deliveryDirectives:e});break}},E}();let f=x},"./src/polyfills/number.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{MAX_SAFE_INTEGER:()=>D,isFiniteNumber:()=>C});var C=Number.isFinite||function(M){return typeof M=="number"&&isFinite(M)},D=Number.MAX_SAFE_INTEGER||9007199254740991},"./src/remux/aac-helper.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>D});var C=function(){function M(){}return M.getSilentFrame=function(B,b){switch(B){case"mp4a.40.2":if(b===1)return new Uint8Array([0,200,0,128,35,128]);if(b===2)return new Uint8Array([33,0,73,144,2,25,0,35,128]);if(b===3)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,142]);if(b===4)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,128,44,128,8,2,56]);if(b===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(b===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(b===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(b===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(b===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 D=C},"./src/remux/mp4-generator.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>M});var C=Math.pow(2,32)-1,D=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 b;for(b in P.types)P.types.hasOwnProperty(b)&&(P.types[b]=[b.charCodeAt(0),b.charCodeAt(1),b.charCodeAt(2),b.charCodeAt(3)]);var A=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]),S=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:A,audio:S};var T=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1]),x=new Uint8Array([0,0,0,0,0,0,0,0]);P.STTS=P.STSC=P.STCO=x,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 f=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,f,p,f,E),P.DINF=P.box(P.types.dinf,P.box(P.types.dref,T))},P.box=function(b){for(var A=8,S=arguments.length,T=new Array(S>1?S-1:0),x=1;x<S;x++)T[x-1]=arguments[x];for(var f=T.length,E=f;f--;)A+=T[f].byteLength;var p=new Uint8Array(A);for(p[0]=A>>24&255,p[1]=A>>16&255,p[2]=A>>8&255,p[3]=A&255,p.set(b,4),f=0,A=8;f<E;f++)p.set(T[f],A),A+=T[f].byteLength;return p},P.hdlr=function(b){return P.box(P.types.hdlr,P.HDLR_TYPES[b])},P.mdat=function(b){return P.box(P.types.mdat,b)},P.mdhd=function(b,A){A*=b;var S=Math.floor(A/(C+1)),T=Math.floor(A%(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,b>>24&255,b>>16&255,b>>8&255,b&255,S>>24,S>>16&255,S>>8&255,S&255,T>>24,T>>16&255,T>>8&255,T&255,85,196,0,0]))},P.mdia=function(b){return P.box(P.types.mdia,P.mdhd(b.timescale,b.duration),P.hdlr(b.type),P.minf(b))},P.mfhd=function(b){return P.box(P.types.mfhd,new Uint8Array([0,0,0,0,b>>24,b>>16&255,b>>8&255,b&255]))},P.minf=function(b){return b.type==="audio"?P.box(P.types.minf,P.box(P.types.smhd,P.SMHD),P.DINF,P.stbl(b)):P.box(P.types.minf,P.box(P.types.vmhd,P.VMHD),P.DINF,P.stbl(b))},P.moof=function(b,A,S){return P.box(P.types.moof,P.mfhd(b),P.traf(S,A))},P.moov=function(b){for(var A=b.length,S=[];A--;)S[A]=P.trak(b[A]);return P.box.apply(null,[P.types.moov,P.mvhd(b[0].timescale,b[0].duration)].concat(S).concat(P.mvex(b)))},P.mvex=function(b){for(var A=b.length,S=[];A--;)S[A]=P.trex(b[A]);return P.box.apply(null,[P.types.mvex].concat(S))},P.mvhd=function(b,A){A*=b;var S=Math.floor(A/(C+1)),T=Math.floor(A%(C+1)),x=new Uint8Array([1,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,b>>24&255,b>>16&255,b>>8&255,b&255,S>>24,S>>16&255,S>>8&255,S&255,T>>24,T>>16&255,T>>8&255,T&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,x)},P.sdtp=function(b){var A=b.samples||[],S=new Uint8Array(4+A.length),T,x;for(T=0;T<A.length;T++)x=A[T].flags,S[T+4]=x.dependsOn<<4|x.isDependedOn<<2|x.hasRedundancy;return P.box(P.types.sdtp,S)},P.stbl=function(b){return P.box(P.types.stbl,P.stsd(b),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(b){var A=[],S=[],T,x,f;for(T=0;T<b.sps.length;T++)x=b.sps[T],f=x.byteLength,A.push(f>>>8&255),A.push(f&255),A=A.concat(Array.prototype.slice.call(x));for(T=0;T<b.pps.length;T++)x=b.pps[T],f=x.byteLength,S.push(f>>>8&255),S.push(f&255),S=S.concat(Array.prototype.slice.call(x));var E=P.box(P.types.avcC,new Uint8Array([1,A[3],A[4],A[5],255,224|b.sps.length].concat(A).concat([b.pps.length]).concat(S))),p=b.width,h=b.height,a=b.pixelRatio[0],o=b.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(b){var A=b.config.length;return new Uint8Array([0,0,0,0,3,23+A,0,1,0,4,15+A,64,21,0,0,0,0,0,0,0,0,0,0,0,5].concat([A]).concat(b.config).concat([6,1,2]))},P.mp4a=function(b){var A=b.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,b.channelCount,0,16,0,0,0,0,A>>8&255,A&255,0,0]),P.box(P.types.esds,P.esds(b)))},P.mp3=function(b){var A=b.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,b.channelCount,0,16,0,0,0,0,A>>8&255,A&255,0,0]))},P.stsd=function(b){return b.type==="audio"?b.segmentCodec==="mp3"&&b.codec==="mp3"?P.box(P.types.stsd,P.STSD,P.mp3(b)):P.box(P.types.stsd,P.STSD,P.mp4a(b)):P.box(P.types.stsd,P.STSD,P.avc1(b))},P.tkhd=function(b){var A=b.id,S=b.duration*b.timescale,T=b.width,x=b.height,f=Math.floor(S/(C+1)),E=Math.floor(S%(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,A>>24&255,A>>16&255,A>>8&255,A&255,0,0,0,0,f>>24,f>>16&255,f>>8&255,f&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,T>>8&255,T&255,0,0,x>>8&255,x&255,0,0]))},P.traf=function(b,A){var S=P.sdtp(b),T=b.id,x=Math.floor(A/(C+1)),f=Math.floor(A%(C+1));return P.box(P.types.traf,P.box(P.types.tfhd,new Uint8Array([0,0,0,0,T>>24,T>>16&255,T>>8&255,T&255])),P.box(P.types.tfdt,new Uint8Array([1,0,0,0,x>>24,x>>16&255,x>>8&255,x&255,f>>24,f>>16&255,f>>8&255,f&255])),P.trun(b,S.length+16+20+8+16+8+8),S)},P.trak=function(b){return b.duration=b.duration||4294967295,P.box(P.types.trak,P.tkhd(b),P.mdia(b))},P.trex=function(b){var A=b.id;return P.box(P.types.trex,new Uint8Array([0,0,0,0,A>>24,A>>16&255,A>>8&255,A&255,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]))},P.trun=function(b,A){var S=b.samples||[],T=S.length,x=12+16*T,f=new Uint8Array(x),E,p,h,a,o,n;for(A+=8+x,f.set([b.type==="video"?1:0,0,15,1,T>>>24&255,T>>>16&255,T>>>8&255,T&255,A>>>24&255,A>>>16&255,A>>>8&255,A&255],0),E=0;E<T;E++)p=S[E],h=p.duration,a=p.size,o=p.flags,n=p.cts,f.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,f)},P.initSegment=function(b){P.types||P.init();var A=P.moov(b),S=new Uint8Array(P.FTYP.byteLength+A.byteLength);return S.set(P.FTYP),S.set(A,P.FTYP.byteLength),S},P}();D.types=void 0,D.HDLR_TYPES=void 0,D.STTS=void 0,D.STSC=void 0,D.STCO=void 0,D.STSZ=void 0,D.VMHD=void 0,D.SMHD=void 0,D.STSD=void 0,D.FTYP=void 0,D.DINF=void 0;let M=D},"./src/remux/mp4-remuxer.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>a,flushTextTrackMetadataCueSamples:()=>v,flushTextTrackUserdataCueSamples:()=>l,normalizePts:()=>o});var C=_("./src/polyfills/number.ts"),D=_("./src/remux/aac-helper.ts"),M=_("./src/remux/mp4-generator.ts"),P=_("./src/events.ts"),B=_("./src/errors.ts"),b=_("./src/utils/logger.ts"),A=_("./src/types/loader.ts"),S=_("./src/utils/timescale-conversion.ts");function T(){return T=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},T.apply(this,arguments)}var x=10*1e3,f=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 d=navigator.userAgent.match(/Safari\/(\d+)/i);h=d?parseInt(d[1]):0}}var c=g.prototype;return c.destroy=function(){},c.resetTimeStamp=function(e){b.logger.log("[mp4-remuxer]: initPTS & initDTS reset"),this._initPTS=this._initDTS=e},c.resetNextTimestamp=function(){b.logger.log("[mp4-remuxer]: reset next timestamp"),this.isVideoContiguous=!1,this.isAudioContiguous=!1},c.resetInitSegment=function(){b.logger.log("[mp4-remuxer]: ISGenerated flag reset"),this.ISGenerated=!1},c.getVideoStartPts=function(e){var r=!1,t=e.reduce(function(s,y){var d=y.pts-s;return d<-4294967296?(r=!0,o(s,y.pts)):d>0?s:y.pts},e[0].pts);return r&&b.logger.debug("PTS rollover detected"),t},c.remux=function(e,r,t,s,y,d,L,R){var I,k,F,K,H,j,Y=y,J=y,te=e.pid>-1,ae=r.pid>-1,re=r.samples.length,se=e.samples.length>0,ue=L&&re>0||re>1,ce=(!te||se)&&(!ae||ue)||this.ISGenerated||L;if(ce){this.ISGenerated||(F=this.generateIS(e,r,y));var le=this.isVideoContiguous,de=-1,fe;if(ue&&(de=n(r.samples),!le&&this.config.forceKeyFrameOnDiscontinuity))if(j=!0,de>0){b.logger.warn("[mp4-remuxer]: Dropped "+de+" out of "+re+" video samples due to a missing keyframe");var Se=this.getVideoStartPts(r.samples);r.samples=r.samples.slice(de),r.dropped+=de,J+=(r.samples[0].pts-Se)/r.inputTimeScale,fe=J}else de===-1&&(b.logger.warn("[mp4-remuxer]: No keyframe found out of "+re+" video samples"),j=!1);if(this.ISGenerated){if(se&&ue){var be=this.getVideoStartPts(r.samples),Oe=o(e.samples[0].pts,be)-be,Re=Oe/r.inputTimeScale;Y+=Math.max(0,Re),J+=Math.max(0,-Re)}if(se){if(e.samplerate||(b.logger.warn("[mp4-remuxer]: regenerate InitSegment as audio detected"),F=this.generateIS(e,r,y)),k=this.remuxAudio(e,Y,this.isAudioContiguous,d,ae||ue||R===A.PlaylistLevelType.AUDIO?J:void 0),ue){var Ce=k?k.endPTS-k.startPTS:0;r.inputTimeScale||(b.logger.warn("[mp4-remuxer]: regenerate InitSegment as video detected"),F=this.generateIS(e,r,y)),I=this.remuxVideo(r,J,le,Ce)}}else ue&&(I=this.remuxVideo(r,J,le,0));I&&(I.firstKeyFrame=de,I.independent=de!==-1,I.firstKeyFramePTS=fe)}}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,d=this.typeSupported,L={},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":d.mpeg?(I="audio/mpeg",e.codec=""):d.mp3&&(e.codec="mp3");break}L.audio={id:"audio",container:I,codec:e.codec,initSegment:e.segmentCodec==="mp3"&&d.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,L.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(L).length)return this.ISGenerated=!0,R&&(this._initPTS=k,this._initDTS=F),{tracks:L,initPTS:k,timescale:K}},c.remuxVideo=function(e,r,t,s){var y=e.inputTimeScale,d=e.samples,L=[],R=d.length,I=this._initPTS,k=this.nextAvcDts,F=8,K=this.videoSampleDuration,H,j,Y=Number.POSITIVE_INFINITY,J=Number.NEGATIVE_INFINITY,te=!1;if(!t||k===null){var ae=r*y,re=d[0].pts-o(d[0].dts,d[0].pts);k=ae-re}for(var se=0;se<R;se++){var ue=d[se];ue.pts=o(ue.pts-I,k),ue.dts=o(ue.dts-I,k),ue.dts<d[se>0?se-1:se].dts&&(te=!0)}te&&d.sort(function(ft,Vt){var Sr=ft.dts-Vt.dts,xr=ft.pts-Vt.pts;return Sr||xr}),H=d[0].dts,j=d[d.length-1].dts;var ce=j-H,le=ce?Math.round(ce/(R-1)):K||e.inputTimeScale/30;if(t){var de=H-k,fe=de>le,Se=de<-1;if((fe||Se)&&(fe?b.logger.warn("AVC: "+(0,S.toMsFromMpegTsClock)(de,!0)+" ms ("+de+"dts) hole between fragments detected, filling it"):b.logger.warn("AVC: "+(0,S.toMsFromMpegTsClock)(-de,!0)+" ms ("+de+"dts) overlapping between fragments detected"),!Se||k>d[0].pts)){H=k;var be=d[0].pts-de;d[0].dts=H,d[0].pts=be,b.logger.log("Video: First PTS/DTS adjusted: "+(0,S.toMsFromMpegTsClock)(be,!0)+"/"+(0,S.toMsFromMpegTsClock)(H,!0)+", delta: "+(0,S.toMsFromMpegTsClock)(de,!0)+" ms")}}H=Math.max(0,H);for(var Oe=0,Re=0,Ce=0;Ce<R;Ce++){for(var Pe=d[Ce],Me=Pe.units,De=Me.length,Fe=0,Ne=0;Ne<De;Ne++)Fe+=Me[Ne].data.length;Re+=Fe,Oe+=De,Pe.length=Fe,Pe.dts=Math.max(Pe.dts,H),Y=Math.min(Pe.pts,Y),J=Math.max(Pe.pts,J)}j=d[R-1].dts;var ke=Re+4*Oe+8,Xe;try{Xe=new Uint8Array(ke)}catch{this.observer.emit(P.Events.ERROR,P.Events.ERROR,{type:B.ErrorTypes.MUX_ERROR,details:B.ErrorDetails.REMUX_ALLOC_ERROR,fatal:!1,bytes:ke,reason:"fail allocating video mdat "+ke});return}var ze=new DataView(Xe.buffer);ze.setUint32(0,ke),Xe.set(M.default.types.mdat,4);for(var rt=!1,Qe=Number.POSITIVE_INFINITY,it=Number.POSITIVE_INFINITY,nt=Number.NEGATIVE_INFINITY,Je=Number.NEGATIVE_INFINITY,Ke=0;Ke<R;Ke++){for(var We=d[Ke],Ze=We.units,ct=0,we=0,qe=Ze.length;we<qe;we++){var et=Ze[we],At=et.data,St=et.data.byteLength;ze.setUint32(F,St),F+=4,Xe.set(At,F),F+=St,ct+=4+St}var xt=void 0;if(Ke<R-1)K=d[Ke+1].dts-We.dts,xt=d[Ke+1].pts-We.pts;else{var Kt=this.config,Dt=Ke>0?We.dts-d[Ke-1].dts:le;if(xt=Ke>0?We.pts-d[Ke-1].pts:le,Kt.stretchShortVideoTrack&&this.nextAudioPts!==null){var ar=Math.floor(Kt.maxBufferHole*y),Wt=(s?Y+s*y:this.nextAudioPts)-We.pts;Wt>ar?(K=Wt-Dt,K<0?K=Dt:rt=!0,b.logger.log("[mp4-remuxer]: It is approximately "+Wt/90+" ms to the next segment; using duration "+K/90+" ms for the last video frame.")):K=Dt}else K=Dt}var yr=Math.round(We.pts-We.dts);Qe=Math.min(Qe,K),nt=Math.max(nt,K),it=Math.min(it,xt),Je=Math.max(Je,xt),L.push(new i(We.key,K,ct,yr))}if(L.length){if(p){if(p<70){var Gt=L[0].flags;Gt.dependsOn=2,Gt.isNonSync=0}}else if(h&&Je-it<nt-Qe&&le/nt<.025&&L[0].cts===0){b.logger.warn("Found irregular gaps in sample duration. Using PTS instead of DTS to determine MP4 sample duration.");for(var It=H,dt=0,sr=L.length;dt<sr;dt++){var Ht=It+L[dt].duration,or=It+L[dt].cts;if(dt<sr-1){var jt=Ht+L[dt+1].cts;L[dt].duration=jt-or}else L[dt].duration=dt?L[dt-1].duration:le;L[dt].cts=0,It=Ht}}}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 Er=M.default.moof(e.sequenceNumber++,H,T({},e,{samples:L})),_r="video",Tr={data1:Er,data2:Xe,startPTS:Y/y,endPTS:(J+K)/y,startDTS:H/y,endDTS:k/y,type:_r,hasAudio:!1,hasVideo:!0,nb:L.length,dropped:e.dropped};return e.samples=[],e.dropped=0,console.assert(Xe.length,"MDAT length must not be zero"),Tr},c.remuxAudio=function(e,r,t,s,y){var d=e.inputTimeScale,L=e.samplerate?e.samplerate:d,R=d/L,I=e.segmentCodec==="aac"?f:E,k=I*R,F=this._initPTS,K=e.segmentCodec==="mp3"&&this.typeSupported.mpeg,H=[],j=y!==void 0,Y=e.samples,J=K?0:8,te=this.nextAudioPts||-1,ae=r*d;if(this.isAudioContiguous=t=t||Y.length&&te>0&&(s&&Math.abs(ae-te)<9e3||Math.abs(o(Y[0].pts-F,ae)-te)<20*k),Y.forEach(function(et){et.pts=o(et.pts-F,ae)}),!t||te<0){if(Y=Y.filter(function(et){return et.pts>=0}),!Y.length)return;y===0?te=0:s&&!j?te=Math.max(0,ae):te=Y[0].pts}if(e.segmentCodec==="aac")for(var re=this.config.maxAudioFramesDrift,se=0,ue=te;se<Y.length;se++){var ce=Y[se],le=ce.pts,de=le-ue,fe=Math.abs(1e3*de/d);if(de<=-re*k&&j)se===0&&(b.logger.warn("Audio frame @ "+(le/d).toFixed(3)+"s overlaps nextAudioPts by "+Math.round(1e3*de/d)+" ms."),this.nextAudioPts=te=ue=le);else if(de>=re*k&&fe<x&&j){var Se=Math.round(de/k);ue=le-Se*k,ue<0&&(Se--,ue+=k),se===0&&(this.nextAudioPts=te=ue),b.logger.warn("[mp4-remuxer]: Injecting "+Se+" audio frame @ "+(ue/d).toFixed(3)+"s due to "+Math.round(1e3*de/d)+" ms gap.");for(var be=0;be<Se;be++){var Oe=Math.max(ue,0),Re=D.default.getSilentFrame(e.manifestCodec||e.codec,e.channelCount);Re||(b.logger.log("[mp4-remuxer]: Unable to get silent frame for given audio codec; duplicating last frame instead."),Re=ce.unit.subarray()),Y.splice(se,0,{unit:Re,pts:Oe}),ue+=k,se++}}ce.pts=ue,ue+=k}for(var Ce=null,Pe=null,Me,De=0,Fe=Y.length;Fe--;)De+=Y[Fe].unit.byteLength;for(var Ne=0,ke=Y.length;Ne<ke;Ne++){var Xe=Y[Ne],ze=Xe.unit,rt=Xe.pts;if(Pe!==null){var Qe=H[Ne-1];Qe.duration=Math.round((rt-Pe)/R)}else if(t&&e.segmentCodec==="aac"&&(rt=te),Ce=rt,De>0){De+=J;try{Me=new Uint8Array(De)}catch{this.observer.emit(P.Events.ERROR,P.Events.ERROR,{type:B.ErrorTypes.MUX_ERROR,details:B.ErrorDetails.REMUX_ALLOC_ERROR,fatal:!1,bytes:De,reason:"fail allocating audio mdat "+De});return}if(!K){var it=new DataView(Me.buffer);it.setUint32(0,De),Me.set(M.default.types.mdat,4)}}else return;Me.set(ze,J);var nt=ze.byteLength;J+=nt,H.push(new i(!0,I,nt,0)),Pe=rt}var Je=H.length;if(!!Je){var Ke=H[H.length-1];this.nextAudioPts=te=Pe+R*Ke.duration;var We=K?new Uint8Array(0):M.default.moof(e.sequenceNumber++,Ce/R,T({},e,{samples:H}));e.samples=[];var Ze=Ce/d,ct=te/d,we="audio",qe={data1:We,data2:Me,startPTS:Ze,endPTS:ct,startDTS:Ze,endDTS:ct,type:we,hasAudio:!0,hasVideo:!1,nb:Je};return this.isAudioContiguous=!0,console.assert(Me.length,"MDAT length must not be zero"),qe}},c.remuxEmptyAudio=function(e,r,t,s){var y=e.inputTimeScale,d=e.samplerate?e.samplerate:y,L=y/d,R=this.nextAudioPts,I=(R!==null?R:s.startDTS*y)+this._initDTS,k=s.endDTS*y+this._initDTS,F=L*f,K=Math.ceil((k-I)/F),H=D.default.getSilentFrame(e.manifestCodec||e.codec,e.channelCount);if(b.logger.warn("[mp4-remuxer]: remux empty Audio"),!H){b.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 J=I+Y*F;j.push({unit:H,pts:J,dts:J})}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 d=g.samples;return g.samples=[],{samples:d}}}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(d,L){return d.pts-L.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,_)=>{"use strict";_.r(N),_.d(N,{default:()=>S});var C=_("./src/polyfills/number.ts"),D=_("./src/remux/mp4-remuxer.ts"),M=_("./src/utils/mp4-tools.ts"),P=_("./src/loader/fragment.ts"),B=_("./src/utils/logger.ts"),b=function(){function T(){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 x=T.prototype;return x.destroy=function(){},x.resetTimeStamp=function(E){this.initPTS=E,this.lastEndTime=null},x.resetNextTimestamp=function(){this.lastEndTime=null},x.resetInitSegment=function(E,p,h,a){this.audioCodec=p,this.videoCodec=h,this.generateInitSegment((0,M.patchEncyptionData)(E,a)),this.emitInitSegment=!0},x.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=A(a.audio,P.ElementaryStreamTypes.AUDIO)),h||(h=A(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},x.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,d="";s&&(d+="audio"),y&&(d+="video");var L={data1:u,startPTS:r,startDTS:r,endPTS:t,endDTS:t,type:d,hasAudio:s,hasVideo:y,nb:1,dropped:0};i.audio=L.type==="audio"?L:void 0,i.video=L.type!=="audio"?L:void 0,i.initSegment=g;var R=(n=this.initPTS)!=null?n:0;return i.id3=(0,D.flushTextTrackMetadataCueSamples)(h,o,R,R),a.samples.length&&(i.text=(0,D.flushTextTrackUserdataCueSamples)(a,o,R)),i},T}();function A(T,x){var f=T==null?void 0:T.codec;return f&&f.length>4?f:f==="hvc1"||f==="hev1"?"hvc1.1.c.L120.90":f==="av01"?"av01.0.04M.08":f==="avc1"||x===P.ElementaryStreamTypes.VIDEO?"avc1.42e01e":"mp4a.40.5"}let S=b},"./src/task-loop.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>C});var C=function(){function D(){this._boundTick=void 0,this._tickTimer=null,this._tickInterval=null,this._tickCallCount=0,this._boundTick=this.tick.bind(this)}var M=D.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(){},D}()},"./src/types/cmcd.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{CMCDObjectType:()=>D,CMCDStreamType:()=>P,CMCDStreamingFormat:()=>M,CMCDVersion:()=>C});var C=1,D;(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"})(D||(D={}));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,_)=>{"use strict";_.r(N),_.d(N,{MetadataSchema:()=>C});var C;(function(D){D.audioId3="org.id3",D.dateRange="com.apple.quicktime.HLS",D.emsg="https://aomedia.org/emsg/ID3"})(C||(C={}))},"./src/types/level.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{HdcpLevels:()=>B,HlsSkip:()=>b,HlsUrlParameters:()=>S,Level:()=>T,getSkipValue:()=>A});function C(x,f){for(var E=0;E<f.length;E++){var p=f[E];p.enumerable=p.enumerable||!1,p.configurable=!0,"value"in p&&(p.writable=!0),Object.defineProperty(x,M(p.key),p)}}function D(x,f,E){return f&&C(x.prototype,f),E&&C(x,E),Object.defineProperty(x,"prototype",{writable:!1}),x}function M(x){var f=P(x,"string");return typeof f=="symbol"?f:String(f)}function P(x,f){if(typeof x!="object"||x===null)return x;var E=x[Symbol.toPrimitive];if(E!==void 0){var p=E.call(x,f||"default");if(typeof p!="object")return p;throw new TypeError("@@toPrimitive must return a primitive value.")}return(f==="string"?String:Number)(x)}var B=["NONE","TYPE-0","TYPE-1","TYPE-2",null],b;(function(x){x.No="",x.Yes="YES",x.v2="v2"})(b||(b={}));function A(x,f){var E=x.canSkipUntil,p=x.canSkipDateRanges,h=x.endSN,a=f!==void 0?f-h:0;return E&&a<E?p?b.v2:b.Yes:b.No}var S=function(){function x(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 f=x.prototype;return f.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},x}(),T=function(){function x(f){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=[f.url],this.attrs=f.attrs,this.bitrate=f.bitrate,f.details&&(this.details=f.details),this.id=f.id||0,this.name=f.name,this.width=f.width||0,this.height=f.height||0,this.audioCodec=f.audioCodec,this.videoCodec=f.videoCodec,this.unknownCodecs=f.unknownCodecs,this.codecSet=[f.videoCodec,f.audioCodec].filter(function(E){return E}).join(",").replace(/\.[^.,]+/g,"")}return D(x,[{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)}}]),x}()},"./src/types/loader.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{PlaylistContextType:()=>C,PlaylistLevelType:()=>D});var C;(function(M){M.MANIFEST="manifest",M.LEVEL="level",M.AUDIO_TRACK="audioTrack",M.SUBTITLE_TRACK="subtitleTrack"})(C||(C={}));var D;(function(M){M.MAIN="main",M.AUDIO="audio",M.SUBTITLE="subtitle"})(D||(D={}))},"./src/types/transmuxer.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{ChunkMetadata:()=>C});var C=function(P,B,b,A,S,T){A===void 0&&(A=0),S===void 0&&(S=-1),T===void 0&&(T=!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=D(),this.buffering={audio:D(),video:D(),audiovideo:D()},this.level=P,this.sn=B,this.id=b,this.size=A,this.part=S,this.partial=T};function D(){return{start:0,executeStart:0,executeEnd:0,end:0}}},"./src/utils/attr-list.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{AttrList:()=>M});var C=/^(\d+)x(\d+)$/,D=/\s*(.+?)\s*=((?:\".*?\")|.*?)(?:,|$)/g,M=function(){function P(b){typeof b=="string"&&(b=P.parseAttrList(b));for(var A in b)b.hasOwnProperty(A)&&(this[A]=b[A])}var B=P.prototype;return B.decimalInteger=function(A){var S=parseInt(this[A],10);return S>Number.MAX_SAFE_INTEGER?1/0:S},B.hexadecimalInteger=function(A){if(this[A]){var S=(this[A]||"0x").slice(2);S=(S.length&1?"0":"")+S;for(var T=new Uint8Array(S.length/2),x=0;x<S.length/2;x++)T[x]=parseInt(S.slice(x*2,x*2+2),16);return T}else return null},B.hexadecimalIntegerAsNumber=function(A){var S=parseInt(this[A],16);return S>Number.MAX_SAFE_INTEGER?1/0:S},B.decimalFloatingPoint=function(A){return parseFloat(this[A])},B.optionalFloat=function(A,S){var T=this[A];return T?parseFloat(T):S},B.enumeratedString=function(A){return this[A]},B.bool=function(A){return this[A]==="YES"},B.decimalResolution=function(A){var S=C.exec(this[A]);if(S!==null)return{width:parseInt(S[1],10),height:parseInt(S[2],10)}},P.parseAttrList=function(A){var S,T={},x='"';for(D.lastIndex=0;(S=D.exec(A))!==null;){var f=S[2];f.indexOf(x)===0&&f.lastIndexOf(x)===f.length-1&&(f=f.slice(1,-1)),T[S[1]]=f}return T},P}()},"./src/utils/binary-search.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>D});var C={search:function(P,B){for(var b=0,A=P.length-1,S=null,T=null;b<=A;){S=(b+A)/2|0,T=P[S];var x=B(T);if(x>0)b=S+1;else if(x<0)A=S-1;else return T}return null}};let D=C},"./src/utils/buffer-helper.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{BufferHelper:()=>M});var C=_("./src/utils/logger.ts"),D={length:0,start:function(){return 0},end:function(){return 0}},M=function(){function P(){}return P.isBuffered=function(b,A){try{if(b){for(var S=P.getBuffered(b),T=0;T<S.length;T++)if(A>=S.start(T)&&A<=S.end(T))return!0}}catch{}return!1},P.bufferInfo=function(b,A,S){try{if(b){var T=P.getBuffered(b),x=[],f;for(f=0;f<T.length;f++)x.push({start:T.start(f),end:T.end(f)});return this.bufferedInfo(x,A,S)}}catch{}return{len:0,start:A,end:A,nextStart:void 0}},P.bufferedInfo=function(b,A,S){A=Math.max(0,A),b.sort(function(i,u){var g=i.start-u.start;return g||u.end-i.end});var T=[];if(S)for(var x=0;x<b.length;x++){var f=T.length;if(f){var E=T[f-1].end;b[x].start-E<S?b[x].end>E&&(T[f-1].end=b[x].end):T.push(b[x])}else T.push(b[x])}else T=b;for(var p=0,h,a=A,o=A,n=0;n<T.length;n++){var v=T[n].start,l=T[n].end;if(A+S>=v&&A<l)a=v,o=l,p=o-A;else if(A+S<v){h=v;break}}return{len:p,start:a||0,end:o||0,nextStart:h}},P.getBuffered=function(b){try{return b.buffered}catch(A){return C.logger.log("failed to get media.buffered",A),D}},P}()},"./src/utils/cea-608-parser.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{CaptionScreen:()=>n,Row:()=>o,default:()=>c});var C=_("./src/utils/logger.ts"),D={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 D.hasOwnProperty(e)&&(r=D[e]),String.fromCharCode(r)},P=15,B=100,b={17:1,18:3,21:5,22:7,23:9,16:11,19:12,20:14},A={17:2,18:4,21:6,22:8,23:10,19:13,20:15},S={25:1,26:3,29:5,30:7,31:9,24:11,27:12,28:14},T={25:2,26:4,29:6,30:8,31:10,27:13,28:15},x=["white","green","blue","cyan","red","yellow","magenta","black","transparent"],f;(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"})(f||(f={}));var E=function(){function m(){this.time=null,this.verboseLevel=f.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,d){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=d||!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 d=s[y];t.hasOwnProperty(d)&&(this[d]=t[d])}},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,d,L){this.uchar=void 0,this.penState=void 0,this.uchar=r||" ",this.penState=new h(t,s,y,d,L)}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(f.DEBUG,"Negative cursor position "+this.pos),this.pos=0):this.pos>B&&(this.logger.log(f.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(f.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 d=this.chars[y].uchar;d!==" "&&(s=!1),t.push(d)}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(f.INFO,"setCursor: "+t);var s=this.rows[this.currRow];s.setCursor(t)},e.setPAC=function(t){this.logger.log(f.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 d=this.currRow+1-this.nrRollUpRows,L=this.lastOutputScreen;if(L){var R=L.rows[d].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(L.rows[d+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(f.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(f.DEBUG,"roll_up but nrRollUpRows not set yet");return}this.logger.log(f.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(f.INFO,"Rolling up")},e.getDisplayText=function(t){t=t||!1;for(var s=[],y="",d=-1,L=0;L<P;L++){var R=this.rows[L].getTextString();R&&(d=L+1,t?s.push("Row "+d+": '"+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(f.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 d=this.writeScreen===this.displayedMemory?"DISP":"NON_DISP";this.logger.log(f.INFO,function(){return d+": "+s.writeScreen.getDisplayText(!0)}),(this.mode==="MODE_PAINT-ON"||this.mode==="MODE_ROLL-UP")&&(this.logger.log(f.TEXT,function(){return"DISPLAYED: "+s.displayedMemory.getDisplayText(!0)}),this.outputDataUpdate())},e.ccRCL=function(){this.logger.log(f.INFO,"RCL - Resume Caption Loading"),this.setMode("MODE_POP-ON")},e.ccBS=function(){this.logger.log(f.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(f.INFO,"DER- Delete to End of Row"),this.writeScreen.clearToEndOfRow(),this.outputDataUpdate()},e.ccRU=function(t){this.logger.log(f.INFO,"RU("+t+") - Roll Up"),this.writeScreen=this.displayedMemory,this.setMode("MODE_ROLL-UP"),this.writeScreen.setRollUpRows(t)},e.ccFON=function(){this.logger.log(f.INFO,"FON - Flash On"),this.writeScreen.setPen({flash:!0})},e.ccRDC=function(){this.logger.log(f.INFO,"RDC - Resume Direct Captioning"),this.setMode("MODE_PAINT-ON")},e.ccTR=function(){this.logger.log(f.INFO,"TR"),this.setMode("MODE_TEXT")},e.ccRTD=function(){this.logger.log(f.INFO,"RTD"),this.setMode("MODE_TEXT")},e.ccEDM=function(){this.logger.log(f.INFO,"EDM - Erase Displayed Memory"),this.displayedMemory.reset(),this.outputDataUpdate(!0)},e.ccCR=function(){this.logger.log(f.INFO,"CR - Carriage Return"),this.writeScreen.rollUp(),this.outputDataUpdate(!0)},e.ccENM=function(){this.logger.log(f.INFO,"ENM - Erase Non-displayed Memory"),this.nonDisplayedMemory.reset()},e.ccEOC=function(){var t=this;if(this.logger.log(f.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(f.TEXT,function(){return"DISP: "+t.displayedMemory.getDisplayText()})}this.outputDataUpdate(!0)},e.ccTO=function(t){this.logger.log(f.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,d=["white","green","blue","cyan","red","yellow","magenta"];s.foreground=d[y]}this.logger.log(f.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,d,L,R=!1;this.logger.time=t;for(var I=0;I<s.length;I+=2)if(d=s[I]&127,L=s[I+1]&127,!(d===0&&L===0)){if(this.logger.log(f.DATA,"["+p([s[I],s[I+1]])+"] -> ("+p([d,L])+")"),y=this.parseCmd(d,L),y||(y=this.parseMidrow(d,L)),y||(y=this.parsePAC(d,L)),y||(y=this.parseBackgroundAttributes(d,L)),!y&&(R=this.parseChars(d,L),R)){var k=this.currentChannel;if(k&&k>0){var F=this.channels[k];F.insertChars(R)}else this.logger.log(f.WARNING,"No channel found yet. TEXT-MODE?")}!y&&!R&&this.logger.log(f.WARNING,"Couldn't parse cleaned data "+p([d,L])+" orig: "+p([s[I],s[I+1]]))}},e.parseCmd=function(t,s){var y=this.cmdHistory,d=(t===20||t===28||t===21||t===29)&&s>=32&&s<=47,L=(t===23||t===31)&&s>=33&&s<=35;if(!(d||L))return!1;if(u(t,s,y))return i(null,null,y),this.logger.log(f.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(f.ERROR,"Mismatch channel in midrow parsing"),!1;var d=this.channels[y];return d?(d.ccMIDROW(s),this.logger.log(f.DEBUG,"MIDROW ("+p([t,s])+")"),!0):!1}return!1},e.parsePAC=function(t,s){var y,d=this.cmdHistory,L=(t>=17&&t<=23||t>=25&&t<=31)&&s>=64&&s<=127,R=(t===16||t===24)&&s>=64&&s<=95;if(!(L||R))return!1;if(u(t,s,d))return i(null,null,d),!0;var I=t<=23?1:2;s>=64&&s<=95?y=I===1?b[t]:S[t]:y=I===1?A[t]:T[t];var k=this.channels[I];return k?(k.setPAC(this.interpretPAC(y,s)),i(t,s,d),this.currentChannel=I,!0):!1},e.interpretPAC=function(t,s){var y,d={color:null,italics:!1,indent:null,underline:!1,row:t};return s>95?y=s-96:y=s-64,d.underline=(y&1)===1,y<=13?d.color=["white","green","blue","cyan","red","yellow","magenta","white"][Math.floor(y/2)]:y<=15?(d.italics=!0,d.color="white"):d.indent=Math.floor((y-16)/2)*4,d},e.parseChars=function(t,s){var y,d=null,L=null;if(t>=25?(y=2,L=t-8):(y=1,L=t),L>=17&&L<=19){var R;L===17?R=s+80:L===18?R=s+112:R=s+144,this.logger.log(f.INFO,"Special char '"+M(R)+"' in channel "+y),d=[R]}else t>=32&&t<=127&&(d=s===0?[t]:[t,s]);if(d){var I=p(d);this.logger.log(f.DEBUG,"Char codes = "+I.join(",")),i(t,s,this.cmdHistory)}return d},e.parseBackgroundAttributes=function(t,s){var y=(t===16||t===24)&&s>=32&&s<=47,d=(t===23||t===31)&&s>=45&&s<=47;if(!(y||d))return!1;var L,R={};t===16||t===24?(L=Math.floor((s-32)/2),R.background=x[L],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,_)=>{"use strict";_.r(N),_.d(N,{isCodecSupportedInMp4:()=>M,isCodecType:()=>D});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 D(P,B){var b=C[B];return!!b&&b[P.slice(0,4)]===!0}function M(P,B){return MediaSource.isTypeSupported((B||"video")+'/mp4;codecs="'+P+'"')}},"./src/utils/cues.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>b});var C=_("./src/utils/vttparser.ts"),D=_("./src/utils/webvtt-parser.ts"),M=_("./src/utils/texttrack-utils.ts"),P=/\s/,B={newCue:function(S,T,x,f){for(var E=[],p,h,a,o,n,v=self.VTTCue||self.TextTrackCue,l=0;l<f.rows.length;l++)if(p=f.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=T,T===x&&(x+=1e-4),o>=16?o--:o++;var u=(0,C.fixLineBreaks)(n.trim()),g=(0,D.generateCueId)(T,x,u);(!S||!S.cues||!S.cues.getCueById(g))&&(h=new v(T,x,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 S&&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)(S,c)})),E}};let b=B},"./src/utils/discontinuities.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{adjustSlidingStart:()=>S,alignMediaPlaylistByPDT:()=>E,alignPDT:()=>f,alignStream:()=>T,findDiscontinuousReferenceFrag:()=>b,findFirstFragWithCC:()=>P,shouldAlignOnDiscontinuities:()=>B});var C=_("./src/polyfills/number.ts"),D=_("./src/utils/logger.ts"),M=_("./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 b(p,h,a){a===void 0&&(a=0);var o=p.fragments,n=h.fragments;if(!n.length||!o.length){D.logger.log("No fragments to align");return}var v=P(o,n[0].cc);if(!v||v&&!v.startPTS){D.logger.log("No frag in previous level to align on");return}return v}function A(p,h){if(p){var a=p.start+h;p.start=p.startPTS=a,p.endPTS=a+p.duration}}function S(p,h){for(var a=h.fragments,o=0,n=a.length;o<n;o++)A(a[o],p);h.fragmentHint&&A(h.fragmentHint,p),h.alignedSliding=!0}function T(p,h,a){!h||(x(p,a,h),!a.alignedSliding&&h.details&&f(a,h.details),!a.alignedSliding&&h.details&&!a.skippedSegments&&(0,M.adjustSliding)(h.details,a))}function x(p,h,a){if(B(p,a,h)){var o=b(a.details,h);o&&(0,C.isFiniteNumber)(o.start)&&(D.logger.log("Adjusting PTS using last level due to CC increase within current level "+h.url),S(o.start,h))}}function f(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)&&(D.logger.log("Adjusting PTS using programDateTime delta "+(o-a)+"ms, sliding:"+n.toFixed(3)+" "+p.url+" "),S(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);S(g,p)}}}}},"./src/utils/ewma-bandwidth-estimator.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>M});var C=_("./src/utils/ewma.ts"),D=function(){function P(b,A,S){this.defaultEstimate_=void 0,this.minWeight_=void 0,this.minDelayMs_=void 0,this.slow_=void 0,this.fast_=void 0,this.defaultEstimate_=S,this.minWeight_=.001,this.minDelayMs_=50,this.slow_=new C.default(b),this.fast_=new C.default(A)}var B=P.prototype;return B.update=function(A,S){var T=this.slow_,x=this.fast_;this.slow_.halfLife!==A&&(this.slow_=new C.default(A,T.getEstimate(),T.getTotalWeight())),this.fast_.halfLife!==S&&(this.fast_=new C.default(S,x.getEstimate(),x.getTotalWeight()))},B.sample=function(A,S){A=Math.max(A,this.minDelayMs_);var T=8*S,x=A/1e3,f=T/x;this.fast_.sample(x,f),this.slow_.sample(x,f)},B.canEstimate=function(){var A=this.fast_;return A&&A.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=D},"./src/utils/ewma.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>D});var C=function(){function M(B,b,A){b===void 0&&(b=0),A===void 0&&(A=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_=b,this.totalWeight_=A}var P=M.prototype;return P.sample=function(b,A){var S=Math.pow(this.alpha_,b);this.estimate_=A*(1-S)+S*this.estimate_,this.totalWeight_+=b},P.getTotalWeight=function(){return this.totalWeight_},P.getEstimate=function(){if(this.alpha_){var b=1-Math.pow(this.alpha_,this.totalWeight_);if(b)return this.estimate_/b}return this.estimate_},M}();let D=C},"./src/utils/fetch-loader.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>n,fetchSupported:()=>E});var C=_("./src/polyfills/number.ts"),D=_("./src/loader/load-stats.ts"),M=_("./src/demux/chunk-cache.ts");function P(v,l){v.prototype=Object.create(l.prototype),v.prototype.constructor=v,T(v,l)}function B(v){var l=typeof Map=="function"?new Map:void 0;return B=function(u){if(u===null||!S(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 b(u,arguments,x(this).constructor)}return g.prototype=Object.create(u.prototype,{constructor:{value:g,enumerable:!1,writable:!0,configurable:!0}}),T(g,u)},B(v)}function b(v,l,i){return A()?b=Reflect.construct.bind():b=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(t,m.prototype),t},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 S(v){return Function.toString.call(v).indexOf("[native code]")!==-1}function T(v,l){return T=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(u,g){return u.__proto__=g,u},T(v,l)}function x(v){return x=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(i){return i.__proto__||Object.getPrototypeOf(i)},x(v)}function f(){return f=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},f.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 D.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(d){if(m.response=m.loader=d,!d.ok){var L=d.status,R=d.statusText;throw new o(R||"fetch, bad network response",L,d)}return e.loading.first=Math.max(self.performance.now(),e.loading.start),e.total=parseInt(d.headers.get("Content-Length")||"0"),t&&(0,C.isFiniteNumber)(g.highWaterMark)?m.loadProgressively(d,e,u,g.highWaterMark,t):s?d.arrayBuffer():d.text()}).then(function(d){var L=m.response;self.clearTimeout(m.requestTimeout),e.loading.end=Math.max(self.performance.now(),e.loading.first);var R=d[y];R&&(e.loaded=e.total=R);var I={url:L.url,data:d};t&&!(0,C.isFiniteNumber)(g.highWaterMark)&&t(e,u,d,L),c.onSuccess(I,e,u,L)}).catch(function(d){if(self.clearTimeout(m.requestTimeout),!e.aborted){var L=d&&d.code||0,R=d?d.message:null;c.onError({code:L,text:R},u,d?d.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(d){if(d.done)return r.dataLength&&e(g,c,r.flush(),u),Promise.resolve(new ArrayBuffer(0));var L=d.value,R=L.length;return g.loaded+=R,R<m||r.dataLength?(r.push(L),r.dataLength>=m&&e(g,c,r.flush(),u)):e(g,c,L,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(f({},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,_)=>{"use strict";_.r(N),_.d(N,{default:()=>D});var C={hexDump:function(P){for(var B="",b=0;b<P.length;b++){var A=P[b].toString(16);A.length<2&&(A="0"+A),B+=A}return B}};let D=C},"./src/utils/imsc1-ttml-parser.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{IMSC1_CODEC:()=>S,parseIMSC1:()=>E});var C=_("./src/utils/mp4-tools.ts"),D=_("./src/utils/vttparser.ts"),M=_("./src/utils/vttcue.ts"),P=_("./src/demux/id3.ts"),B=_("./src/utils/timescale-conversion.ts"),b=_("./src/utils/webvtt-parser.ts");function A(){return A=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},A.apply(this,arguments)}var S="stpp.ttml.im1t",T=/^(\d{2,}):(\d{2}):(\d{2}):(\d{2})\.?(\d+)?$/,x=/^(\d*(?:\.\d*)?)(h|m|s|ms|f|t)$/,f={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(L){return(0,P.utf8ArrayToStr)(L)}),d=(0,B.toTimescaleFromScale)(m,1,e);try{y.forEach(function(L){return r(p(L,d))})}catch(L){t(L)}}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},{}),d=t.getAttribute("xml:space")!=="preserve",L=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,d);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,b.generateCueId)(Y.startTime,Y.endTime,Y.text);var J=R[k.getAttribute("region")],te=L[k.getAttribute("style")],ae=n(J,te,L),re=ae.textAlign;if(re){var se=f[re];se&&(Y.lineAlign=se),Y.align=re}return A(Y,ae),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(d,L){var R=v(m,r,L)||v(c,r,L)||v(t,r,L);return R&&(d[L]=R),d},{})}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,D.parseTimeStamp)(c);return e===null&&(T.test(c)?e=u(c,m):x.test(c)&&(e=g(c,m))),e}function u(c,m){var e=T.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=x.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,_)=>{"use strict";_.r(N),_.d(N,{changeEndianness:()=>M,convertDataUriToArrayBytes:()=>P,strToUtf8array:()=>B});var C=_("./src/utils/numeric-encoding-utils.ts");function D(b){var A=B(b).subarray(0,16),S=new Uint8Array(16);return S.set(A,16-A.length),S}function M(b){var A=function(T,x,f){var E=T[x];T[x]=T[f],T[f]=E};A(b,0,3),A(b,1,2),A(b,4,5),A(b,6,7)}function P(b){var A=b.split(":"),S=null;if(A[0]==="data"&&A.length===2){var T=A[1].split(";"),x=T[T.length-1].split(",");if(x.length===2){var f=x[0]==="base64",E=x[1];f?(T.splice(-1,1),S=(0,C.base64Decode)(E)):S=D(E)}}return S}function B(b){return Uint8Array.from(unescape(encodeURIComponent(b)),function(A){return A.charCodeAt(0)})}},"./src/utils/logger.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{enableLogs:()=>b,logger:()=>A});var C=function(){},D={trace:C,debug:C,log:C,warn:C,info:C,error:C},M=D;function P(S){var T=self.console[S];return T?T.bind(self.console,"["+S+"] >"):C}function B(S){for(var T=arguments.length,x=new Array(T>1?T-1:0),f=1;f<T;f++)x[f-1]=arguments[f];x.forEach(function(E){M[E]=S[E]?S[E].bind(S):P(E)})}function b(S,T){if(self.console&&S===!0||typeof S=="object"){B(S,"debug","log","info","warn","error");try{M.log('Debug logs enabled for "'+T+'"')}catch{M=D}}else M=D}var A=M},"./src/utils/mediakeys-helper.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{KeySystemFormats:()=>D,KeySystemIds:()=>P,KeySystems:()=>C,getKeySystemsForConfig:()=>A,getSupportedMediaKeySystemConfigurations:()=>T,keySystemDomainToKeySystemFormat:()=>b,keySystemFormatToKeySystemDomain:()=>M,keySystemIdToKeySystemDomain:()=>B,requestMediaKeySystemAccess:()=>S});var C;(function(f){f.CLEARKEY="org.w3.clearkey",f.FAIRPLAY="com.apple.fps",f.PLAYREADY="com.microsoft.playready",f.WIDEVINE="com.widevine.alpha"})(C||(C={}));var D;(function(f){f.CLEARKEY="org.w3.clearkey",f.FAIRPLAY="com.apple.streamingkeydelivery",f.PLAYREADY="com.microsoft.playready",f.WIDEVINE="urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed"})(D||(D={}));function M(f){switch(f){case D.FAIRPLAY:return C.FAIRPLAY;case D.PLAYREADY:return C.PLAYREADY;case D.WIDEVINE:return C.WIDEVINE;case D.CLEARKEY:return C.CLEARKEY}}var P;(function(f){f.WIDEVINE="edef8ba979d64acea3c827dcd51d21ed"})(P||(P={}));function B(f){if(f===P.WIDEVINE)return C.WIDEVINE}function b(f){switch(f){case C.FAIRPLAY:return D.FAIRPLAY;case C.PLAYREADY:return D.PLAYREADY;case C.WIDEVINE:return D.WIDEVINE;case C.CLEARKEY:return D.CLEARKEY}}function A(f){var E=f.drmSystems,p=f.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 S=function(){return typeof self!="undefined"&&self.navigator&&self.navigator.requestMediaKeySystemAccess?self.navigator.requestMediaKeySystemAccess.bind(self.navigator):null}();function T(f,E,p,h){var a;switch(f){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: "+f)}return x(a,E,p,h)}function x(f,E,p,h){var a={initDataTypes:f,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,_)=>{"use strict";_.r(N),_.d(N,{getMediaSource:()=>C});function C(){return self.MediaSource||self.WebKitMediaSource}},"./src/utils/mp4-tools.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{RemuxerTrackIdConfig:()=>S,appendUint8Array:()=>m,bin2str:()=>T,computeRawDurationFromSamples:()=>u,discardEPB:()=>y,findBox:()=>h,getDuration:()=>i,getStartDTS:()=>l,mp4Box:()=>L,mp4pssh:()=>R,offsetStartDTS:()=>g,parseEmsg:()=>d,parseInitSegment:()=>o,parsePssh:()=>I,parseSEIMessageFromNALu:()=>s,parseSamples:()=>e,parseSegmentIndex:()=>a,parseSinf:()=>v,patchEncyptionData:()=>n,readSint32:()=>E,readUint16:()=>x,readUint32:()=>f,segmentValidRange:()=>c,writeUint32:()=>p});var C=_("./src/loader/fragment.ts"),D=_("./src/utils/typed-array.ts"),M=_("./src/demux/id3.ts"),P=_("./src/utils/logger.ts"),B=_("./src/utils/hex.ts"),b=Math.pow(2,32)-1,A=[].push,S={video:1,audio:2,id3:3,text:4};function T(k){return String.fromCharCode.apply(null,k)}function x(k,F){var K=k[F]<<8|k[F+1];return K<0?65536+K:K}function f(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=f(k,j),J=T(k.subarray(j+4,j+8)),te=Y>1?j+Y:H;if(J===F[0])if(F.length===1)K.push(k.subarray(j+8,te));else{var ae=h(k.subarray(j+8,te),F.slice(1));ae.length&&A.apply(K,ae)}j=te}return K}function a(k){var F=[],K=k[0],H=8,j=f(k,H);H+=4;var Y=0,J=0;K===0?H+=8:H+=16,H+=2;var te=k.length+J,ae=x(k,H);H+=2;for(var re=0;re<ae;re++){var se=H,ue=f(k,se);se+=4;var ce=ue&2147483647,le=(ue&2147483648)>>>31;if(le===1)return console.warn("SIDX has hierarchical references (not supported)"),null;var de=f(k,se);se+=4,F.push({referenceSize:ce,subsegmentDuration:de,info:{duration:de/j,start:te,end:te+ce-1}}),te+=ce,se+=4,H=se}return{earliestPresentationTime:Y,timescale:j,version:K,referencesCount:ae,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 J=Y[0],te=J===0?12:20,ae=f(Y,te),re=h(j,["mdia","mdhd"])[0];if(re){J=re[0],te=J===0?12:20;var se=f(re,te),ue=h(j,["mdia","hdlr"])[0];if(ue){var ce=T(ue.subarray(8,12)),le={soun:C.ElementaryStreamTypes.AUDIO,vide:C.ElementaryStreamTypes.VIDEO}[ce];if(le){var de=h(j,["mdia","minf","stbl","stsd"])[0],fe=void 0;de&&(fe=T(de.subarray(12,16))),F[ae]={timescale:se,type:le},F[le]={timescale:se,id:ae,codec:fe}}}}}}var Se=h(k,["moov","mvex","trex"]);return Se.forEach(function(be){var Oe=f(be,4),Re=F[Oe];Re&&(Re.default={duration:f(be,12),flags:f(be,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],J=Y.subarray(8),te=h(J,["enca"]),ae=te.length>0;ae||(te=h(J,["encv"])),te.forEach(function(re){var se=ae?re.subarray(28):re.subarray(78),ue=h(se,["sinf"]);ue.forEach(function(ce){var le=v(ce);if(le){var de=le.subarray(8,24);de.some(function(fe){return fe!==0})||(P.logger.log("[eme] Patching keyId in 'enc"+(ae?"a":"v")+">sinf>>tenc' box: "+B.default.hexDump(de)+" -> "+B.default.hexDump(K)),le.set(K,8))}})})})}return k}function v(k){var F=h(k,["schm"])[0];if(F){var K=T(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],J=h(H,["tfhd"]).reduce(function(te,ae){var re=f(ae,4),se=k[re];if(se){var ue=f(j,4);Y===1&&(ue*=Math.pow(2,32),ue+=f(j,8));var ce=se.timescale||9e4,le=ue/ce;if(isFinite(le)&&(te===null||le<te))return le}return te},null);return J!==null&&isFinite(J)&&(K===null||J<K)?J:K},null)||0}function i(k,F){for(var K=0,H=0,j=0,Y=h(k,["moof","traf"]),J=0;J<Y.length;J++){var te=Y[J],ae=h(te,["tfhd"])[0],re=f(ae,4),se=F[re];if(!!se){var ue=se.default,ce=f(ae,0)|(ue==null?void 0:ue.flags),le=ue==null?void 0:ue.duration;ce&8&&(ce&2?le=f(ae,12):le=f(ae,8));for(var de=se.timescale||9e4,fe=h(te,["trun"]),Se=0;Se<fe.length;Se++){if(K=u(fe[Se]),!K&&le){var be=f(fe[Se],4);K=le*be}se.type===C.ElementaryStreamTypes.VIDEO?H+=K/de:se.type===C.ElementaryStreamTypes.AUDIO&&(j+=K/de)}}}if(H===0&&j===0){for(var Oe=0,Re=h(k,["sidx"]),Ce=0;Ce<Re.length;Ce++){var Pe=a(Re[Ce]);Pe!=null&&Pe.references&&(Oe+=Pe.references.reduce(function(Me,De){return Me+De.info.duration||0},0))}return Oe}return H||j}function u(k){var F=f(k,0),K=8;F&1&&(K+=4),F&4&&(K+=4);for(var H=0,j=f(k,4),Y=0;Y<j;Y++){if(F&256){var J=f(k,K);H+=J,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=f(j,4),J=k[Y];if(!!J){var te=J.timescale||9e4;h(H,["tfdt"]).forEach(function(ae){var re=ae[0],se=f(ae,4);if(re===0)se-=K*te,se=Math.max(se,0),p(ae,4,se);else{se*=Math.pow(2,32),se+=f(ae,8),se-=K*te,se=Math.max(se,0);var ue=Math.floor(se/(b+1)),ce=Math.floor(se%(b+1));p(ae,4,ue),p(ae,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,D.sliceUint8)(k,0,H.byteOffset-8),F.remainder=(0,D.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,J=!1,te=h(H,["moof"]);return te.map(function(ae){var re=ae.byteOffset-8,se=h(ae,["traf"]);se.map(function(ue){var ce=h(ue,["tfdt"]).map(function(le){var de=le[0],fe=f(le,4);return de===1&&(fe*=Math.pow(2,32),fe+=f(le,8)),fe/j})[0];return ce!==void 0&&(k=ce),h(ue,["tfhd"]).map(function(le){var de=f(le,4),fe=f(le,0)&16777215,Se=(fe&1)!==0,be=(fe&2)!==0,Oe=(fe&8)!==0,Re=0,Ce=(fe&16)!==0,Pe=0,Me=(fe&32)!==0,De=8;de===Y&&(Se&&(De+=8),be&&(De+=4),Oe&&(Re=f(le,De),De+=4),Ce&&(Pe=f(le,De),De+=4),Me&&(De+=4),F.type==="video"&&(J=r(F.codec)),h(ue,["trun"]).map(function(Fe){var Ne=Fe[0],ke=f(Fe,0)&16777215,Xe=(ke&1)!==0,ze=0,rt=(ke&4)!==0,Qe=(ke&256)!==0,it=0,nt=(ke&512)!==0,Je=0,Ke=(ke&1024)!==0,We=(ke&2048)!==0,Ze=0,ct=f(Fe,4),we=8;Xe&&(ze=f(Fe,we),we+=4),rt&&(we+=4);for(var qe=ze+re,et=0;et<ct;et++){if(Qe?(it=f(Fe,we),we+=4):it=Re,nt?(Je=f(Fe,we),we+=4):Je=Pe,Ke&&(we+=4),We&&(Ne===0?Ze=f(Fe,we):Ze=E(Fe,we),we+=4),F.type===C.ElementaryStreamTypes.VIDEO)for(var At=0;At<Je;){var St=f(H,qe);if(qe+=4,t(J,H[qe])){var xt=H.subarray(qe,qe+St);s(xt,J?2:1,k+Ze/j,K)}qe+=St,At+=St+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 J=0,te=0,ae=!1,re=0;Y<j.length;){J=0;do{if(Y>=j.length)break;re=j[Y++],J+=re}while(re===255);te=0;do{if(Y>=j.length)break;re=j[Y++],te+=re}while(re===255);var se=j.length-Y;if(!ae&&J===4&&Y<j.length){ae=!0;var ue=j[Y++];if(ue===181){var ce=x(j,Y);if(Y+=2,ce===49){var le=f(j,Y);if(Y+=4,le===1195456820){var de=j[Y++];if(de===3){var fe=j[Y++],Se=31&fe,be=64&fe,Oe=be?2+Se*3:0,Re=new Uint8Array(Oe);if(be){Re[0]=fe;for(var Ce=1;Ce<Oe;Ce++)Re[Ce]=j[Y++]}H.push({type:de,payloadType:J,pts:K,bytes:Re})}}}}}else if(J===5&&te<se){if(ae=!0,te>16){for(var Pe=[],Me=0;Me<16;Me++){var De=j[Y++].toString(16);Pe.push(De.length==1?"0"+De:De),(Me===3||Me===5||Me===7||Me===9)&&Pe.push("-")}for(var Fe=te-16,Ne=new Uint8Array(Fe),ke=0;ke<Fe;ke++)Ne[ke]=j[Y++];H.push({payloadType:J,pts:K,uuid:Pe.join(""),userData:(0,M.utf8ArrayToStr)(Ne),userDataBytes:Ne})}}else if(te<se)Y+=te;else if(te>se)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),J=0;for(H=0;H<j;J++,H++)J===K[0]&&(J++,K.shift()),Y[H]=k[J];return Y}function d(k){var F=k[0],K="",H="",j=0,Y=0,J=0,te=0,ae=0,re=0;if(F===0){for(;T(k.subarray(re,re+1))!=="\0";)K+=T(k.subarray(re,re+1)),re+=1;for(K+=T(k.subarray(re,re+1)),re+=1;T(k.subarray(re,re+1))!=="\0";)H+=T(k.subarray(re,re+1)),re+=1;H+=T(k.subarray(re,re+1)),re+=1,j=f(k,12),Y=f(k,16),te=f(k,20),ae=f(k,24),re=28}else if(F===1){re+=4,j=f(k,re),re+=4;var se=f(k,re);re+=4;var ue=f(k,re);for(re+=4,J=Math.pow(2,32)*se+ue,Number.isSafeInteger(J)||(J=Number.MAX_SAFE_INTEGER,console.warn("Presentation time exceeds safe integer limit and wrapped to max safe integer in parsing emsg box")),te=f(k,re),re+=4,ae=f(k,re),re+=4;T(k.subarray(re,re+1))!=="\0";)K+=T(k.subarray(re,re+1)),re+=1;for(K+=T(k.subarray(re,re+1)),re+=1;T(k.subarray(re,re+1))!=="\0";)H+=T(k.subarray(re,re+1)),re+=1;H+=T(k.subarray(re,re+1)),re+=1}var ce=k.subarray(re,k.byteLength);return{schemeIdUri:K,value:H,timeScale:j,presentationTime:J,presentationTimeDelta:Y,eventDuration:te,id:ae,payload:ce}}function L(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,J=j;J--;)Y+=K[J].byteLength;var te=new Uint8Array(Y);for(te[0]=Y>>24&255,te[1]=Y>>16&255,te[2]=Y>>8&255,te[3]=Y&255,te.set(k,4),J=0,Y=8;J<j;J++)te.set(K[J],Y),Y+=K[J].byteLength;return te}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 J=F[Y];if(J.byteLength!==16)throw new RangeError("Invalid key");j.set(J,Y*16)}}else H=0,j=new Uint8Array;var te;H>0?(te=new Uint8Array(4),F.length>0&&new DataView(te.buffer).setUint32(0,F.length,!1)):te=new Uint8Array;var ae=new Uint8Array(4);return K&&K.byteLength>0&&new DataView(ae.buffer).setUint32(0,K.byteLength,!1),L([112,115,115,104],new Uint8Array([H,0,0,0]),k,te,j,ae,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 J=0;J<Y;J++)F.kids.push(new Uint8Array(k,32+J*16,16))}return F}},"./src/utils/numeric-encoding-utils.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{base64Decode:()=>b,base64DecodeToStr:()=>M,base64Encode:()=>P,base64ToBase64Url:()=>C,base64UrlEncode:()=>B,strToBase64Encode:()=>D});function C(A){return A.replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}function D(A){return btoa(A)}function M(A){return atob(A)}function P(A){return btoa(String.fromCharCode.apply(String,A))}function B(A){return C(P(A))}function b(A){return Uint8Array.from(atob(A),function(S){return S.charCodeAt(0)})}},"./src/utils/output-filter.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>C});var C=function(){function D(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=D.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,b,A){(this.startTime===null||this.startTime>B)&&(this.startTime=B),this.endTime=b,this.screen=A,this.timelineController.createCaptionsTrack(this.trackName)},M.reset=function(){this.cueRanges=[],this.startTime=null},D}()},"./src/utils/texttrack-utils.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{addCueToTrack:()=>M,clearCurrentCues:()=>P,getCuesInRange:()=>A,removeCuesInRange:()=>B,sendAddTrackEvent:()=>D});var C=_("./src/utils/logger.ts");function D(S,T){var x;try{x=new Event("addtrack")}catch{x=document.createEvent("Event"),x.initEvent("addtrack",!1,!1)}x.track=S,T.dispatchEvent(x)}function M(S,T){var x=S.mode;if(x==="disabled"&&(S.mode="hidden"),S.cues&&!S.cues.getCueById(T.id))try{if(S.addCue(T),!S.cues.getCueById(T.id))throw new Error("addCue is failed for: "+T)}catch(E){C.logger.debug("[texttrack-utils]: "+E);var f=new self.TextTrackCue(T.startTime,T.endTime,T.text);f.id=T.id,S.addCue(f)}x==="disabled"&&(S.mode=x)}function P(S){var T=S.mode;if(T==="disabled"&&(S.mode="hidden"),S.cues)for(var x=S.cues.length;x--;)S.removeCue(S.cues[x]);T==="disabled"&&(S.mode=T)}function B(S,T,x,f){var E=S.mode;if(E==="disabled"&&(S.mode="hidden"),S.cues&&S.cues.length>0)for(var p=A(S.cues,T,x),h=0;h<p.length;h++)(!f||f(p[h]))&&S.removeCue(p[h]);E==="disabled"&&(S.mode=E)}function b(S,T){if(T<S[0].startTime)return 0;var x=S.length-1;if(T>S[x].endTime)return-1;for(var f=0,E=x;f<=E;){var p=Math.floor((E+f)/2);if(T<S[p].startTime)E=p-1;else if(T>S[p].startTime&&f<x)f=p+1;else return p}return S[f].startTime-T<T-S[E].startTime?f:E}function A(S,T,x){var f=[],E=b(S,T);if(E>-1)for(var p=E,h=S.length;p<h;p++){var a=S[p];if(a.startTime>=T&&a.endTime<=x)f.push(a);else if(a.startTime>x)return f}return f}},"./src/utils/time-ranges.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>D});var C={toString:function(P){for(var B="",b=P.length,A=0;A<b;A++)B+="["+P.start(A).toFixed(3)+","+P.end(A).toFixed(3)+"]";return B}};let D=C},"./src/utils/timescale-conversion.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{toMpegTsClockFromTimescale:()=>B,toMsFromMpegTsClock:()=>P,toTimescaleFromBase:()=>D,toTimescaleFromScale:()=>M});var C=9e4;function D(b,A,S,T){S===void 0&&(S=1),T===void 0&&(T=!1);var x=b*A*S;return T?Math.round(x):x}function M(b,A,S,T){return S===void 0&&(S=1),T===void 0&&(T=!1),D(b,A,1/S,T)}function P(b,A){return A===void 0&&(A=!1),D(b,1e3,1/C,A)}function B(b,A){return A===void 0&&(A=1),D(b,C,1/A)}},"./src/utils/typed-array.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{sliceUint8:()=>C});function C(D,M,P){return Uint8Array.prototype.slice?D.slice(M,P):new Uint8Array(Array.prototype.slice.call(D,M,P))}},"./src/utils/vttcue.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>C});let C=function(){if(typeof self!="undefined"&&self.VTTCue)return self.VTTCue;var D=["","lr","rl"],M=["start","middle","end","left","right"];function P(T,x){if(typeof x!="string"||!Array.isArray(T))return!1;var f=x.toLowerCase();return~T.indexOf(f)?f:!1}function B(T){return P(D,T)}function b(T){return P(M,T)}function A(T){for(var x=arguments.length,f=new Array(x>1?x-1:0),E=1;E<x;E++)f[E-1]=arguments[E];for(var p=1;p<arguments.length;p++){var h=arguments[p];for(var a in h)T[a]=h[a]}return T}function S(T,x,f){var E=this,p={enumerable:!0};E.hasBeenReset=!1;var h="",a=!1,o=T,n=x,v=f,l=null,i="",u=!0,g="auto",c="start",m=50,e="middle",r=50,t="middle";Object.defineProperty(E,"id",A({},p,{get:function(){return h},set:function(y){h=""+y}})),Object.defineProperty(E,"pauseOnExit",A({},p,{get:function(){return a},set:function(y){a=!!y}})),Object.defineProperty(E,"startTime",A({},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",A({},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",A({},p,{get:function(){return v},set:function(y){v=""+y,this.hasBeenReset=!0}})),Object.defineProperty(E,"region",A({},p,{get:function(){return l},set:function(y){l=y,this.hasBeenReset=!0}})),Object.defineProperty(E,"vertical",A({},p,{get:function(){return i},set:function(y){var d=B(y);if(d===!1)throw new SyntaxError("An invalid or illegal string was specified.");i=d,this.hasBeenReset=!0}})),Object.defineProperty(E,"snapToLines",A({},p,{get:function(){return u},set:function(y){u=!!y,this.hasBeenReset=!0}})),Object.defineProperty(E,"line",A({},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",A({},p,{get:function(){return c},set:function(y){var d=b(y);if(!d)throw new SyntaxError("An invalid or illegal string was specified.");c=d,this.hasBeenReset=!0}})),Object.defineProperty(E,"position",A({},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",A({},p,{get:function(){return e},set:function(y){var d=b(y);if(!d)throw new SyntaxError("An invalid or illegal string was specified.");e=d,this.hasBeenReset=!0}})),Object.defineProperty(E,"size",A({},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",A({},p,{get:function(){return t},set:function(y){var d=b(y);if(!d)throw new SyntaxError("An invalid or illegal string was specified.");t=d,this.hasBeenReset=!0}})),E.displayState=void 0}return S.prototype.getCueAsHTML=function(){var T=self.WebVTT;return T.convertCueToDOMTree(self,this.text)},S}()},"./src/utils/vttparser.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{VTTParser:()=>x,fixLineBreaks:()=>T,parseTimeStamp:()=>M});var C=_("./src/utils/vttcue.ts"),D=function(){function f(){}var E=f.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))},f}();function M(f){function E(h,a,o,n){return(h|0)*3600+(a|0)*60+(o|0)+parseFloat(n||0)}var p=f.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 f(){this.values=Object.create(null)}var E=f.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},f}();function B(f,E,p,h){var a=h?f.split(h):[f];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 b=new C.default(0,0,""),A=b.align==="middle"?"middle":"center";function S(f,E,p){var h=f;function a(){var v=M(f);if(v===null)throw new Error("Malformed timestamp: "+h);return f=f.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",A,"end"]);break;case"position":e=m.split(","),i.percent(c,e[0]),e.length===2&&i.alt("positionAlign",e[1],["start",A,"end","line-left","line-right","auto"]);break;case"size":i.percent(c,m);break;case"align":i.alt(c,m,["start",A,"end","left","right"]);break}},/:/,/\s/),l.region=i.get("region",null),l.vertical=i.get("vertical","");var u=i.get("line","auto");u==="auto"&&b.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",A);var g=i.get("position","auto");g==="auto"&&b.position===50&&(g=l.align==="start"||l.align==="left"?0:l.align==="end"||l.align==="right"?100:50),l.position=g}function n(){f=f.replace(/^\s+/,"")}if(n(),E.startTime=a(),n(),f.slice(0,3)!=="-->")throw new Error("Malformed time stamp (time stamps must be separated by '-->'): "+h);f=f.slice(3),n(),E.endTime=a(),n(),o(f,E)}function T(f){return f.replace(/<br(?: \/)?>/gi,`
24
+ `)}var x=function(){function f(){this.state="INITIAL",this.buffer="",this.decoder=new D,this.regionList=[],this.cue=null,this.oncue=void 0,this.onparsingerror=void 0,this.onflush=void 0}var E=f.prototype;return E.parse=function(h){var a=this;h&&(a.buffer+=a.decoder.decode(h,{stream:!0}));function o(){var g=a.buffer,c=0;for(g=T(g);c<g.length&&g[c]!=="\r"&&g[c]!==`
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{S(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+=`
27
28
 
28
- `,f.parse()),f.state==="INITIAL"||f.state==="BADWEBVTT")throw new Error("Malformed WebVTT signature.")}catch(e){f.onparsingerror&&f.onparsingerror(e)}return f.onflush&&f.onflush(),this},E}()},"./src/utils/webvtt-parser.ts":function(j,R,l){"use strict";l.r(R),l.d(R,"generateCueId",function(){return D}),l.d(R,"parseWebVTT",function(){return m});var C=l("./src/polyfills/number.ts"),L=l("./src/utils/vttparser.ts"),A=l("./src/demux/id3.ts"),w=l("./src/utils/timescale-conversion.ts"),O=l("./src/remux/mp4-remuxer.ts"),b=/\r\n|\n\r|\n|\r/g,_=function(f,e,s){return s===void 0&&(s=0),f.slice(s,s+e.length)===e},y=function(f){var e=parseInt(f.slice(-3)),s=parseInt(f.slice(-6,-4)),h=parseInt(f.slice(-9,-7)),g=f.length>9?parseInt(f.substring(0,f.indexOf(":"))):0;if(!Object(C.isFiniteNumber)(e)||!Object(C.isFiniteNumber)(s)||!Object(C.isFiniteNumber)(h)||!Object(C.isFiniteNumber)(g))throw Error("Malformed X-TIMESTAMP-MAP: Local:"+f);return e+=1e3*s,e+=60*1e3*h,e+=60*60*1e3*g,e},x=function(f){for(var e=5381,s=f.length;s;)e=e*33^f.charCodeAt(--s);return(e>>>0).toString()};function D(p,f,e){return x(p.toString())+x(f.toString())+x(e)}var E=function(f,e,s){var h=f[e],g=f[h.prevCC];if(!g||!g.new&&h.new){f.ccOffset=f.presentationOffset=h.start,h.new=!1;return}for(;(i=g)!==null&&i!==void 0&&i.new;){var i;f.ccOffset+=h.start-g.start,h.new=!1,h=g,g=f[h.prevCC]}f.presentationOffset=s};function m(p,f,e,s,h,g,i,r){var o=new L.VTTParser,c=Object(A.utf8ArrayToStr)(new Uint8Array(p)).trim().replace(b,`
29
+ `,h.parse()),h.state==="INITIAL"||h.state==="BADWEBVTT")throw new Error("Malformed WebVTT signature.")}catch(a){h.onparsingerror&&h.onparsingerror(a)}return h.onflush&&h.onflush(),this},f}()},"./src/utils/webvtt-parser.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{generateCueId:()=>x,parseWebVTT:()=>E});var C=_("./src/polyfills/number.ts"),D=_("./src/utils/vttparser.ts"),M=_("./src/demux/id3.ts"),P=_("./src/utils/timescale-conversion.ts"),B=_("./src/remux/mp4-remuxer.ts"),b=/\r\n|\n\r|\n|\r/g,A=function(h,a,o){return o===void 0&&(o=0),h.slice(o,o+a.length)===a},S=function(h){var a=parseInt(h.slice(-3)),o=parseInt(h.slice(-6,-4)),n=parseInt(h.slice(-9,-7)),v=h.length>9?parseInt(h.substring(0,h.indexOf(":"))):0;if(!(0,C.isFiniteNumber)(a)||!(0,C.isFiniteNumber)(o)||!(0,C.isFiniteNumber)(n)||!(0,C.isFiniteNumber)(v))throw Error("Malformed X-TIMESTAMP-MAP: Local:"+h);return a+=1e3*o,a+=60*1e3*n,a+=60*60*1e3*v,a},T=function(h){for(var a=5381,o=h.length;o;)a=a*33^h.charCodeAt(--o);return(a>>>0).toString()};function x(p,h,a){return T(p.toString())+T(h.toString())+T(a)}var f=function(h,a,o){var n=h[a],v=h[n.prevCC];if(!v||!v.new&&n.new){h.ccOffset=h.presentationOffset=n.start,n.new=!1;return}for(;(l=v)!==null&&l!==void 0&&l.new;){var l;h.ccOffset+=n.start-v.start,n.new=!1,n=v,v=h[n.prevCC]}h.presentationOffset=o};function E(p,h,a,o,n,v,l,i){var u=new D.VTTParser,g=(0,M.utf8ArrayToStr)(new Uint8Array(p)).trim().replace(b,`
29
30
  `).split(`
30
- `),t=[],n=Object(w.toMpegTsClockFromTimescale)(f,e),u="00:00.000",a=0,d=0,v,S=!0;o.oncue=function(T){var I=s[h],k=s.ccOffset,B=(a-n)/9e4;I!=null&&I.new&&(d!==void 0?k=s.ccOffset=I.start:E(s,h,B)),B&&(k=B-s.presentationOffset);var U=T.endTime-T.startTime,W=Object(O.normalizePts)((T.startTime+k-d)*9e4,g*9e4)/9e4;T.startTime=Math.max(W,0),T.endTime=Math.max(W+U,0);var H=T.text.trim();T.text=decodeURIComponent(encodeURIComponent(H)),T.id||(T.id=D(T.startTime,T.endTime,H)),T.endTime>0&&t.push(T)},o.onparsingerror=function(T){v=T},o.onflush=function(){if(v){r(v);return}i(t)},c.forEach(function(T){if(S)if(_(T,"X-TIMESTAMP-MAP=")){S=!1,T.slice(16).split(",").forEach(function(I){_(I,"LOCAL:")?u=I.slice(6):_(I,"MPEGTS:")&&(a=parseInt(I.slice(7)))});try{d=y(u)/1e3}catch(I){v=I}return}else T===""&&(S=!1);o.parse(T+`
31
- `)}),o.flush()}},"./src/utils/xhr-loader.ts":function(j,R,l){"use strict";l.r(R);var C=l("./src/utils/logger.ts"),L=l("./src/loader/load-stats.ts"),A=/^age:\s*[\d.]+\s*$/m,w=function(){function O(_){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=_?_.xhrSetup:null,this.stats=new L.LoadStats,this.retryDelay=0}var b=O.prototype;return b.destroy=function(){this.callbacks=null,this.abortInternal(),this.loader=null,this.config=null},b.abortInternal=function(){var y=this.loader;self.clearTimeout(this.requestTimeout),self.clearTimeout(this.retryTimeout),y&&(y.onreadystatechange=null,y.onprogress=null,y.readyState!==4&&(this.stats.aborted=!0,y.abort()))},b.abort=function(){var y;this.abortInternal(),(y=this.callbacks)!==null&&y!==void 0&&y.onAbort&&this.callbacks.onAbort(this.stats,this.context,this.loader)},b.load=function(y,x,D){if(this.stats.loading.start)throw new Error("Loader can only be used once.");this.stats.loading.start=self.performance.now(),this.context=y,this.config=x,this.callbacks=D,this.retryDelay=x.retryDelay,this.loadInternal()},b.loadInternal=function(){var y=this.config,x=this.context;if(!!y){var D=this.loader=new self.XMLHttpRequest,E=this.stats;E.loading.first=0,E.loaded=0;var m=this.xhrSetup;try{if(m)try{m(D,x.url)}catch{D.open("GET",x.url,!0),m(D,x.url)}D.readyState||D.open("GET",x.url,!0);var p=this.context.headers;if(p)for(var f in p)D.setRequestHeader(f,p[f])}catch(e){this.callbacks.onError({code:D.status,text:e.message},x,D);return}x.rangeEnd&&D.setRequestHeader("Range","bytes="+x.rangeStart+"-"+(x.rangeEnd-1)),D.onreadystatechange=this.readystatechange.bind(this),D.onprogress=this.loadprogress.bind(this),D.responseType=x.responseType,self.clearTimeout(this.requestTimeout),this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),y.timeout),D.send()}},b.readystatechange=function(){var y=this.context,x=this.loader,D=this.stats;if(!(!y||!x)){var E=x.readyState,m=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){x.onreadystatechange=null,x.onprogress=null;var p=x.status;if(p>=200&&p<300){D.loading.end=Math.max(self.performance.now(),D.loading.first);var f,e;if(y.responseType==="arraybuffer"?(f=x.response,e=f.byteLength):(f=x.responseText,e=f.length),D.loaded=D.total=e,!this.callbacks)return;var s=this.callbacks.onProgress;if(s&&s(D,y,f,x),!this.callbacks)return;var h={url:x.responseURL,data:f};this.callbacks.onSuccess(h,D,y,x)}else D.retry>=m.maxRetry||p>=400&&p<499?(C.logger.error(p+" while loading "+y.url),this.callbacks.onError({code:p,text:x.statusText},y,x)):(C.logger.warn(p+" while loading "+y.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,m.maxRetryDelay),D.retry++)}else self.clearTimeout(this.requestTimeout),this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),m.timeout)}},b.loadtimeout=function(){C.logger.warn("timeout while loading "+this.context.url);var y=this.callbacks;y&&(this.abortInternal(),y.onTimeout(this.stats,this.context,this.loader))},b.loadprogress=function(y){var x=this.stats;x.loaded=y.loaded,y.lengthComputable&&(x.total=y.total)},b.getCacheAge=function(){var y=null;if(this.loader&&A.test(this.loader.getAllResponseHeaders())){var x=this.loader.getResponseHeader("age");y=x?parseFloat(x):null}return y},O}();R.default=w}}).default})});var Ct=class{addEventListener(){}removeEventListener(){}dispatchEvent(R){return!0}};if(typeof DocumentFragment=="undefined"){class j extends Ct{}globalThis.DocumentFragment=j}var Vt=class extends Ct{},br=class extends Ct{},pn={get(j){},define(j,R,l){},upgrade(j){},whenDefined(j){return Promise.resolve(Vt)}},Yt,Or=class{constructor(R,l={}){ft(this,Yt,void 0);dt(this,Yt,l==null?void 0:l.detail)}get detail(){return qe(this,Yt)}initCustomEvent(){}};Yt=new WeakMap;function En(j,R){return new Vt}var ti={document:{createElement:En},DocumentFragment,customElements:pn,CustomEvent:Or,EventTarget:Ct,HTMLElement:Vt,HTMLVideoElement:br},ri=typeof window=="undefined"||typeof globalThis.customElements=="undefined",gt=ri?ti:globalThis,Rr=ri?ti.document:globalThis.document;var vr=fr(ii(),1),Lt=fr(cr(),1),Mr=fr(cr(),1),Mt=fr(cr(),1),Xt=class extends Error{constructor(j,R=Xt.MEDIA_ERR_CUSTOM,l){var C;super(j),this.name="MediaError",this.code=R,this.fatal=l!=null?l:R>=Xt.MEDIA_ERR_NETWORK&&R<=Xt.MEDIA_ERR_ENCRYPTED,this.message||(this.message=(C=Xt.defaultMessages[this.code])!=null?C:"")}},et=Xt;et.MEDIA_ERR_ABORTED=1,et.MEDIA_ERR_NETWORK=2,et.MEDIA_ERR_DECODE=3,et.MEDIA_ERR_SRC_NOT_SUPPORTED=4,et.MEDIA_ERR_ENCRYPTED=5,et.MEDIA_ERR_CUSTOM=100,et.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 yn=j=>j==null,ui=(j,R)=>yn(R)?!1:j in R,wr={ANY:"any",MUTED:"muted"},hr={VOD:"on-demand",ON_DEMAND:"on-demand",LIVE:"live",LL_LIVE:"ll-live",DVR:"live:dvr",LL_DVR:"ll-live:dvr"},_t={MSE:"mse",NATIVE:"native"},Fr={HEADER:"header",QUERY:"query",NONE:"none"},Qn=Object.values(Fr),wt={M3U8:"application/vnd.apple.mpegurl",MP4:"video/mp4"},kr={HLS:wt.M3U8},$n=Object.keys(kr),Jn=[...Object.values(wt),"hls","HLS"],Qt=(j,R,l,C)=>{j.addEventListener(R,l,C),j.addEventListener("teardown",()=>{j.removeEventListener(R,l)},{once:!0})};function Tn(j,R,l){R&&l>R&&(l=R);for(let C=0;C<j.length;C++)if(j.start(C)<=l&&j.end(C)>=l)return!0;return!1}var xn=j=>{let R=j.indexOf("?");if(R<0)return[j];let l=j.slice(0,R),C=j.slice(R);return[l,C]},fi=j=>{let R=j.type;if(R){let C=R.toUpperCase();return ui(C,kr)?kr[C]:R}let{src:l}=j;return l?Sn(l):""},Sn=j=>{let R="";try{R=new URL(j).pathname}catch{console.error("invalid url")}let l=R.lastIndexOf(".");if(l<0)return"";let C=R.slice(l+1).toUpperCase();return ui(C,wt)?wt[C]:""},Dn=Object.values(wr),ni=j=>typeof j=="boolean"||typeof j=="string"&&Dn.includes(j),An=({autoplay:j},R,l)=>{let C=!1,L=!1,A=ni(j)?j:!!j,w=()=>{C||Qt(R,"playing",()=>{C=!0},{once:!0})};if(w(),Qt(R,"loadstart",()=>{C=!1,w(),Cr(R,A)},{once:!0}),Qt(R,"loadstart",()=>{l||(L=!Number.isFinite(R.duration)),Cr(R,A)},{once:!0}),l&&l.once(Mr.default.Events.LEVEL_LOADED,(O,b)=>{var _;L=(_=b.details.live)!=null?_:!1}),!A){let O=()=>{!L||(l!=null&&l.liveSyncPosition?R.currentTime=l.liveSyncPosition:Number.isFinite(R.seekable.end(0))&&(R.currentTime=R.seekable.end(0)))};l&&Qt(R,"play",()=>{R.preload==="metadata"?l.once(Mr.default.Events.LEVEL_UPDATED,O):O()},{once:!0})}return O=>{C||(A=ni(O)?O:!!O,Cr(R,A))}},Cr=(j,R)=>{if(!R)return;let l=j.muted,C=()=>j.muted=l;switch(R){case wr.ANY:j.play().catch(()=>{j.muted=!0,j.play().catch(C)});break;case wr.MUTED:j.muted=!0,j.play().catch(C);break;default:j.play().catch(()=>{});break}},Ln=({preload:j,src:R},l,C)=>{let L=x=>{x!=null&&["","none","metadata","auto"].includes(x)?l.setAttribute("preload",x):l.removeAttribute("preload")};if(!C)return L(j),L;let A=!1,w=!1,O=C.config.maxBufferLength,b=C.config.maxBufferSize,_=x=>{L(x);let D=x!=null?x:l.preload;w||D==="none"||(D==="metadata"?(C.config.maxBufferLength=1,C.config.maxBufferSize=1):(C.config.maxBufferLength=O,C.config.maxBufferSize=b),y())},y=()=>{!A&&R&&(A=!0,C.loadSource(R))};return Qt(l,"play",()=>{w=!0,C.config.maxBufferLength=O,C.config.maxBufferSize=b,y()},{once:!0}),_(j),_};function _n(j,R){R.on(Mt.default.Events.NON_NATIVE_TEXT_TRACKS_FOUND,(L,{tracks:A})=>{A.forEach(w=>{var O;let b=(O=w.subtitleTrack)!=null?O:w.closedCaptions,_=R.subtitleTracks.findIndex(({lang:y,name:x,type:D})=>y==(b==null?void 0:b.lang)&&x===w.label&&D.toLowerCase()===w.kind);bn(j,w.kind,w.label,b==null?void 0:b.lang,`${w.kind}${_}`)})});let l=()=>{var L;if(!R.subtitleTracks.length)return;let A=Array.from(j.textTracks).find(O=>O.id&&O.mode==="showing"&&["subtitles","captions"].includes(O.kind)),w=`${(L=R.subtitleTracks[R.subtitleTrack])==null?void 0:L.type.toLowerCase()}${R.subtitleTrack}`;if(A&&(R.subtitleTrack<0||(A==null?void 0:A.id)!==w)){let O=R.subtitleTracks.findIndex(({lang:b,name:_,type:y})=>b==A.language&&_===A.label&&y.toLowerCase()===A.kind);R.subtitleTrack=O}A&&(A==null?void 0:A.id)===w&&A.cues&&Array.from(A.cues).forEach(O=>{A.addCue(O)})};j.textTracks.addEventListener("change",l),R.on(Mt.default.Events.CUES_PARSED,(L,{track:A,cues:w})=>{let O=j.textTracks.getTrackById(A);if(!O)return;let b=O.mode==="disabled";b&&(O.mode="hidden"),w.forEach(_=>{var y;(y=O.cues)!=null&&y.getCueById(_.id)||O.addCue(_)}),b&&(O.mode="disabled")}),R.once(Mt.default.Events.DESTROYING,()=>{j.textTracks.removeEventListener("change",l),j.querySelectorAll("track[data-removeondestroy]").forEach(L=>{L.remove()})});let C=()=>{Array.from(j.textTracks).forEach(L=>{var A,w;if(!["subtitles","caption"].includes(L.kind)&&L.label==="thumbnails"){if(!((A=L.cues)!=null&&A.length)){let O=j.querySelector('track[label="thumbnails"]'),b=(w=O==null?void 0:O.getAttribute("src"))!=null?w:"";O==null||O.removeAttribute("src"),setTimeout(()=>{O==null||O.setAttribute("src",b)},0)}L.mode!=="hidden"&&(L.mode="hidden")}})};R.once(Mt.default.Events.MANIFEST_LOADED,C),R.once(Mt.default.Events.MEDIA_ATTACHED,C)}function bn(j,R,l,C,L){let A=document.createElement("track");return A.kind=R,A.label=l,C&&(A.srclang=C),L&&(A.id=L),A.track.mode="disabled",A.setAttribute("data-removeondestroy",""),j.append(A),A.track}var ai,si,On=(si=(ai=globalThis==null?void 0:globalThis.navigator)==null?void 0:ai.userAgent)!=null?si:"",Rn=On.toLowerCase().indexOf("android")!==-1,$t=new WeakMap,di="mux.com",oi,li,ci=(li=(oi=Lt.default).isSupported)==null?void 0:li.call(oi),In=Rn,hi=()=>vr.default.utils.now(),Pn=vr.default.utils.generateUUID,vi=(j,{domain:R=di}={})=>{if(!j)return;let[l,C=""]=xn(j);return`https://stream.${R}/${l}.m3u8${C}`},Cn=j=>{if(!j)return;let[R]=j.split("?");return R||void 0},Mn=j=>{if(!j||!j.startsWith("https://stream."))return;let[R]=new URL(j).pathname.slice(1).split(".m3u8");return R||void 0},wn=j=>{var R,l,C;return(R=j==null?void 0:j.metadata)!=null&&R.video_id?j.metadata.video_id:pi(j)&&(C=(l=Cn(j.playbackId))!=null?l:Mn(j.src))!=null?C:j.src};var gi=(j,R,l)=>{Ur(R,l);let{metadata:C={}}=j,{view_session_id:L=Pn()}=C,A=wn(j);C.view_session_id=L,C.video_id=A,j.metadata=C,$t.set(R,{});let w=Fn(j,R);Bn(j,R,w),Un(j,R,w);let O=An(j,R,w),b=Ln(j,R,w);return{engine:w,setAutoplay:O,setPreload:b}},Ur=(j,R)=>{let l=R==null?void 0:R.engine;l&&(l.detachMedia(),l.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",yi),j.removeEventListener("error",Br),j.removeEventListener("durationchange",Ei),$t.delete(j),j.dispatchEvent(new Event("teardown")))};function mi(j,R){var l;let C=fi(j);if(C!==wt.M3U8)return!0;let L=!C||((l=R.canPlayType(C))!=null?l:!0),{preferPlayback:A}=j,w=A===_t.MSE,O=A===_t.NATIVE;return L&&(O||!(ci&&(w||In)))}var Fn=(j,R)=>{let{debug:l,streamType:C,startTime:L=-1,metadata:A,preferCmcd:w}=j,O=fi(j)===wt.M3U8,b=mi(j,R);if(O&&!b&&ci){let _={backBufferLength:30,renderTextTracksNatively:!1,liveDurationInfinity:!0},y=kn(C),x=w!==Fr.NONE?{useHeaders:w===Fr.HEADER,sessionId:A.view_session_id,contentId:A.video_id}:void 0;return new Lt.default({debug:l,startPosition:L,cmcd:x,..._,...y})}},kn=j=>[hr.LIVE,hr.DVR].includes(j)?{backBufferLength:8}:[hr.LL_LIVE,hr.LL_DVR].includes(j)?{backBufferLength:4,maxFragLookUpTolerance:.001}:{},pi=({playbackId:j,src:R,customDomain:l})=>{if(j)return!0;if(typeof R!="string")return!1;let C=window==null?void 0:window.location.href,L=new URL(R,C).hostname.toLocaleLowerCase();return L.includes(di)||!!l&&L.includes(l.toLocaleLowerCase())},Bn=(j,R,l)=>{var C;let{envKey:L}=j,A=pi(j);if(L||A){let{playerInitTime:w,playerSoftwareName:O,playerSoftwareVersion:b,beaconCollectionDomain:_,debug:y,disableCookies:x}=j,D={...j.metadata,video_title:((C=j==null?void 0:j.metadata)==null?void 0:C.video_title)||void 0},E=m=>typeof m.player_error_code=="string"?!1:typeof j.errorTranslator=="function"?j.errorTranslator(m):m;vr.default.monitor(R,{debug:y,beaconCollectionDomain:_,hlsjs:l,Hls:l?Lt.default:void 0,automaticErrorTracking:!1,errorTranslator:E,disableCookies:x,data:{...L?{env_key:L}:{},player_software_name:O,player_software:O,player_software_version:b,player_init_time:w,...D}})}},Un=(j,R,l)=>{var C;let L=mi(j,R),{src:A}=j;R&&L?(typeof A=="string"?(R.setAttribute("src",A),j.startTime&&(((C=$t.get(R))!=null?C:{}).startTime=j.startTime,R.addEventListener("durationchange",Ei,{once:!0}))):R.removeAttribute("src"),R.addEventListener("error",yi),R.addEventListener("error",Br)):l&&A?(l.on(Lt.default.Events.ERROR,(w,O)=>{let b={[Lt.default.ErrorTypes.NETWORK_ERROR]:et.MEDIA_ERR_NETWORK,[Lt.default.ErrorTypes.MEDIA_ERROR]:et.MEDIA_ERR_DECODE},_=new et("",b[O.type]);_.fatal=O.fatal,_.data=O,R.dispatchEvent(new CustomEvent("error",{detail:_}))}),R.addEventListener("error",Br),_n(R,l),l.attachMedia(R)):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 Ei(j){var R;let l=j.target,C=(R=$t.get(l))==null?void 0:R.startTime;if(!!C&&Tn(l.seekable,l.duration,C)){let L=l.preload==="auto";L&&(l.preload="none"),l.currentTime=C,L&&(l.preload="auto")}}async function yi(j){if(!j.isTrusted)return;j.stopImmediatePropagation();let R=j.target;if(!(R!=null&&R.error))return;let{message:l,code:C}=R.error,L=new et(l,C);if(R.src&&(C!==et.MEDIA_ERR_DECODE||C!==void 0))try{let{status:A}=await fetch(R.src);L.data={response:{code:A}}}catch{}R.dispatchEvent(new CustomEvent("error",{detail:L}))}function Br(j){var R,l;if(!(j instanceof CustomEvent)||!(j.detail instanceof et))return;let C=j.target,L=j.detail;!L||!L.fatal||(((R=$t.get(C))!=null?R:{}).error=L,(l=C.mux)==null||l.emit("error",{player_error_code:L.code,player_error_message:L.message}))}var Nn=()=>{try{return"0.9.1"}catch{}return"UNKNOWN"},Kn=Nn(),Ti=()=>Kn;var xi=["abort","canplay","canplaythrough","durationchange","emptied","ended","error","loadeddata","loadedmetadata","loadstart","pause","play","playing","progress","ratechange","seeked","seeking","stalled","suspend","timeupdate","volumechange","waiting"],Si=Rr.createElement("template");Si.innerHTML=`
31
+ `),c=[],m=(0,P.toMpegTsClockFromTimescale)(h,a),e="00:00.000",r=0,t=0,s,y=!0;u.oncue=function(d){var L=o[n],R=o.ccOffset,I=(r-m)/9e4;L!=null&&L.new&&(t!==void 0?R=o.ccOffset=L.start:f(o,n,I)),I&&(R=I-o.presentationOffset);var k=d.endTime-d.startTime,F=(0,B.normalizePts)((d.startTime+R-t)*9e4,v*9e4)/9e4;d.startTime=Math.max(F,0),d.endTime=Math.max(F+k,0);var K=d.text.trim();d.text=decodeURIComponent(encodeURIComponent(K)),d.id||(d.id=x(d.startTime,d.endTime,K)),d.endTime>0&&c.push(d)},u.onparsingerror=function(d){s=d},u.onflush=function(){if(s){i(s);return}l(c)},g.forEach(function(d){if(y)if(A(d,"X-TIMESTAMP-MAP=")){y=!1,d.slice(16).split(",").forEach(function(L){A(L,"LOCAL:")?e=L.slice(6):A(L,"MPEGTS:")&&(r=parseInt(L.slice(7)))});try{t=S(e)/1e3}catch(L){s=L}return}else d===""&&(y=!1);u.parse(d+`
32
+ `)}),u.flush()}},"./src/utils/xhr-loader.ts":(z,N,_)=>{"use strict";_.r(N),_.d(N,{default:()=>B});var C=_("./src/utils/logger.ts"),D=_("./src/loader/load-stats.ts"),M=/^age:\s*[\d.]+\s*$/m,P=function(){function b(S){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=S?S.xhrSetup:null,this.stats=new D.LoadStats,this.retryDelay=0}var A=b.prototype;return A.destroy=function(){this.callbacks=null,this.abortInternal(),this.loader=null,this.config=null},A.abortInternal=function(){var T=this.loader;self.clearTimeout(this.requestTimeout),self.clearTimeout(this.retryTimeout),T&&(T.onreadystatechange=null,T.onprogress=null,T.readyState!==4&&(this.stats.aborted=!0,T.abort()))},A.abort=function(){var T;this.abortInternal(),(T=this.callbacks)!==null&&T!==void 0&&T.onAbort&&this.callbacks.onAbort(this.stats,this.context,this.loader)},A.load=function(T,x,f){if(this.stats.loading.start)throw new Error("Loader can only be used once.");this.stats.loading.start=self.performance.now(),this.context=T,this.config=x,this.callbacks=f,this.retryDelay=x.retryDelay,this.loadInternal()},A.loadInternal=function(){var T=this.config,x=this.context;if(!!T){var f=this.loader=new self.XMLHttpRequest,E=this.stats;E.loading.first=0,E.loaded=0;var p=this.xhrSetup;try{if(p)try{p(f,x.url)}catch{f.open("GET",x.url,!0),p(f,x.url)}f.readyState||f.open("GET",x.url,!0);var h=this.context.headers;if(h)for(var a in h)f.setRequestHeader(a,h[a])}catch(o){this.callbacks.onError({code:f.status,text:o.message},x,f);return}x.rangeEnd&&f.setRequestHeader("Range","bytes="+x.rangeStart+"-"+(x.rangeEnd-1)),f.onreadystatechange=this.readystatechange.bind(this),f.onprogress=this.loadprogress.bind(this),f.responseType=x.responseType,self.clearTimeout(this.requestTimeout),this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),T.timeout),f.send()}},A.readystatechange=function(){var T=this.context,x=this.loader,f=this.stats;if(!(!T||!x)){var E=x.readyState,p=this.config;if(!f.aborted&&E>=2)if(self.clearTimeout(this.requestTimeout),f.loading.first===0&&(f.loading.first=Math.max(self.performance.now(),f.loading.start)),E===4){x.onreadystatechange=null,x.onprogress=null;var h=x.status,a=x.responseType==="arraybuffer";if(h>=200&&h<300&&(a&&x.response||x.responseText!==null)){f.loading.end=Math.max(self.performance.now(),f.loading.first);var o,n;if(a?(o=x.response,n=o.byteLength):(o=x.responseText,n=o.length),f.loaded=f.total=n,!this.callbacks)return;var v=this.callbacks.onProgress;if(v&&v(f,T,o,x),!this.callbacks)return;var l={url:x.responseURL,data:o};this.callbacks.onSuccess(l,f,T,x)}else f.retry>=p.maxRetry||h>=400&&h<499?(C.logger.error(h+" while loading "+T.url),this.callbacks.onError({code:h,text:x.statusText},T,x)):(C.logger.warn(h+" while loading "+T.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),f.retry++)}else self.clearTimeout(this.requestTimeout),this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),p.timeout)}},A.loadtimeout=function(){C.logger.warn("timeout while loading "+this.context.url);var T=this.callbacks;T&&(this.abortInternal(),T.onTimeout(this.stats,this.context,this.loader))},A.loadprogress=function(T){var x=this.stats;x.loaded=T.loaded,T.lengthComputable&&(x.total=T.total)},A.getCacheAge=function(){var T=null;if(this.loader&&M.test(this.loader.getAllResponseHeaders())){var x=this.loader.getResponseHeader("age");T=x?parseFloat(x):null}return T},b}();let B=P},"./node_modules/eventemitter3/index.js":z=>{"use strict";var N=Object.prototype.hasOwnProperty,_="~";function C(){}Object.create&&(C.prototype=Object.create(null),new C().__proto__||(_=!1));function D(b,A,S){this.fn=b,this.context=A,this.once=S||!1}function M(b,A,S,T,x){if(typeof S!="function")throw new TypeError("The listener must be a function");var f=new D(S,T||b,x),E=_?_+A:A;return b._events[E]?b._events[E].fn?b._events[E]=[b._events[E],f]:b._events[E].push(f):(b._events[E]=f,b._eventsCount++),b}function P(b,A){--b._eventsCount===0?b._events=new C:delete b._events[A]}function B(){this._events=new C,this._eventsCount=0}B.prototype.eventNames=function(){var A=[],S,T;if(this._eventsCount===0)return A;for(T in S=this._events)N.call(S,T)&&A.push(_?T.slice(1):T);return Object.getOwnPropertySymbols?A.concat(Object.getOwnPropertySymbols(S)):A},B.prototype.listeners=function(A){var S=_?_+A:A,T=this._events[S];if(!T)return[];if(T.fn)return[T.fn];for(var x=0,f=T.length,E=new Array(f);x<f;x++)E[x]=T[x].fn;return E},B.prototype.listenerCount=function(A){var S=_?_+A:A,T=this._events[S];return T?T.fn?1:T.length:0},B.prototype.emit=function(A,S,T,x,f,E){var p=_?_+A:A;if(!this._events[p])return!1;var h=this._events[p],a=arguments.length,o,n;if(h.fn){switch(h.once&&this.removeListener(A,h.fn,void 0,!0),a){case 1:return h.fn.call(h.context),!0;case 2:return h.fn.call(h.context,S),!0;case 3:return h.fn.call(h.context,S,T),!0;case 4:return h.fn.call(h.context,S,T,x),!0;case 5:return h.fn.call(h.context,S,T,x,f),!0;case 6:return h.fn.call(h.context,S,T,x,f,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(A,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,S);break;case 3:h[n].fn.call(h[n].context,S,T);break;case 4:h[n].fn.call(h[n].context,S,T,x);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(A,S,T){return M(this,A,S,T,!1)},B.prototype.once=function(A,S,T){return M(this,A,S,T,!0)},B.prototype.removeListener=function(A,S,T,x){var f=_?_+A:A;if(!this._events[f])return this;if(!S)return P(this,f),this;var E=this._events[f];if(E.fn)E.fn===S&&(!x||E.once)&&(!T||E.context===T)&&P(this,f);else{for(var p=0,h=[],a=E.length;p<a;p++)(E[p].fn!==S||x&&!E[p].once||T&&E[p].context!==T)&&h.push(E[p]);h.length?this._events[f]=h.length===1?h[0]:h:P(this,f)}return this},B.prototype.removeAllListeners=function(A){var S;return A?(S=_?_+A:A,this._events[S]&&P(this,S)):(this._events=new C,this._eventsCount=0),this},B.prototype.off=B.prototype.removeListener,B.prototype.addListener=B.prototype.on,B.prefixed=_,B.EventEmitter=B,z.exports=B},"./node_modules/url-toolkit/src/url-toolkit.js":function(z){(function(N){var _=/^(?=((?:[a-zA-Z0-9+\-.]+:)?))\1(?=((?:\/\/[^\/?#]*)?))\2(?=((?:(?:[^?#\/]*\/)*[^;?#\/]*)?))\3((?:;[^?#]*)?)(\?[^#]*)?(#[^]*)?$/,C=/^(?=([^\/?#]*))\1([^]*)$/,D=/(?:\/|^)\.(?=\/)/g,M=/(?:\/|^)\.\.\/(?!\.\.\/)[^\/]*(?=\/)/g,P={buildAbsoluteURL:function(B,b,A){if(A=A||{},B=B.trim(),b=b.trim(),!b){if(!A.alwaysNormalize)return B;var S=P.parseURL(B);if(!S)throw new Error("Error trying to parse base URL.");return S.path=P.normalizePath(S.path),P.buildURLFromParts(S)}var T=P.parseURL(b);if(!T)throw new Error("Error trying to parse relative URL.");if(T.scheme)return A.alwaysNormalize?(T.path=P.normalizePath(T.path),P.buildURLFromParts(T)):b;var x=P.parseURL(B);if(!x)throw new Error("Error trying to parse base URL.");if(!x.netLoc&&x.path&&x.path[0]!=="/"){var f=C.exec(x.path);x.netLoc=f[1],x.path=f[2]}x.netLoc&&!x.path&&(x.path="/");var E={scheme:x.scheme,netLoc:T.netLoc,path:null,params:T.params,query:T.query,fragment:T.fragment};if(!T.netLoc&&(E.netLoc=x.netLoc,T.path[0]!=="/"))if(!T.path)E.path=x.path,T.params||(E.params=x.params,T.query||(E.query=x.query));else{var p=x.path,h=p.substring(0,p.lastIndexOf("/")+1)+T.path;E.path=P.normalizePath(h)}return E.path===null&&(E.path=A.alwaysNormalize?P.normalizePath(T.path):T.path),P.buildURLFromParts(E)},parseURL:function(B){var b=_.exec(B);return b?{scheme:b[1]||"",netLoc:b[2]||"",path:b[3]||"",params:b[4]||"",query:b[5]||"",fragment:b[6]||""}:null},normalizePath:function(B){for(B=B.split("").reverse().join("").replace(D,"");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)}},q={};function X(z){var N=q[z];if(N!==void 0)return N.exports;var _=q[z]={exports:{}};return $[z].call(_.exports,_,_.exports,X),_.exports}X.m=$,X.n=z=>{var N=z&&z.__esModule?()=>z.default:()=>z;return X.d(N,{a:N}),N},X.d=(z,N)=>{for(var _ in N)X.o(N,_)&&!X.o(z,_)&&Object.defineProperty(z,_,{enumerable:!0,get:N[_]})},X.o=(z,N)=>Object.prototype.hasOwnProperty.call(z,N),X.r=z=>{typeof Symbol!="undefined"&&Symbol.toStringTag&&Object.defineProperty(z,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(z,"__esModule",{value:!0})};var ne=X("./src/hls.ts");return ne=ne.default,ne})())});var Mt=class{addEventListener(){}removeEventListener(){}dispatchEvent(q){return!0}};if(typeof DocumentFragment=="undefined"){class $ extends Mt{}globalThis.DocumentFragment=$}var $t=class extends Mt{},Or=class extends Mt{},Tn={get($){},define($,q,X){},upgrade($){},whenDefined($){return Promise.resolve($t)}},Jt,Cr=class{constructor(q,X={}){mt(this,Jt,void 0);pt(this,Jt,X==null?void 0:X.detail)}get detail(){return lt(this,Jt)}initCustomEvent(){}};Jt=new WeakMap;function Sn($,q){return new $t}var ai={document:{createElement:Sn},DocumentFragment,customElements:Tn,CustomEvent:Cr,EventTarget:Mt,HTMLElement:$t,HTMLVideoElement:Or},si=typeof window=="undefined"||typeof globalThis.customElements=="undefined",_t=si?ai:globalThis,Mr=si?ai.document:globalThis.document;var gr=fr(oi(),1),Lt=fr(hr(),1),Ur=fr(hr(),1),wt=fr(hr(),1),qt=class extends Error{constructor($,q=qt.MEDIA_ERR_CUSTOM,X){var ne;super($),this.name="MediaError",this.code=q,this.fatal=X!=null?X:q>=qt.MEDIA_ERR_NETWORK&&q<=qt.MEDIA_ERR_ENCRYPTED,this.message||(this.message=(ne=qt.defaultMessages[this.code])!=null?ne:"")}},ut=qt;ut.MEDIA_ERR_ABORTED=1,ut.MEDIA_ERR_NETWORK=2,ut.MEDIA_ERR_DECODE=3,ut.MEDIA_ERR_SRC_NOT_SUPPORTED=4,ut.MEDIA_ERR_ENCRYPTED=5,ut.MEDIA_ERR_CUSTOM=100,ut.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 xn=$=>$==null,hi=($,q)=>xn(q)?!1:$ in q,Br={ANY:"any",MUTED:"muted"},vr={VOD:"on-demand",ON_DEMAND:"on-demand",LIVE:"live",LL_LIVE:"ll-live",DVR:"live:dvr",LL_DVR:"ll-live:dvr"},Pt={MSE:"mse",NATIVE:"native"},Nr={HEADER:"header",QUERY:"query",NONE:"none"},ra=Object.values(Nr),Ft={M3U8:"application/vnd.apple.mpegurl",MP4:"video/mp4"},Kr={HLS:Ft.M3U8},ia=Object.keys(Kr),na=[...Object.values(Ft),"hls","HLS"],kt=($,q,X,ne,z=$)=>{z.addEventListener(q,X,ne),$.addEventListener("teardown",()=>{z.removeEventListener(q,X)},{once:!0})};function An($,q,X){q&&X>q&&(X=q);for(let ne=0;ne<$.length;ne++)if($.start(ne)<=X&&$.end(ne)>=X)return!0;return!1}var Dn=$=>{let q=$.indexOf("?");if(q<0)return[$];let X=$.slice(0,q),ne=$.slice(q);return[X,ne]},vi=$=>{let q=$.type;if(q){let ne=q.toUpperCase();return hi(ne,Kr)?Kr[ne]:q}let{src:X}=$;return X?bn(X):""},bn=$=>{let q="";try{q=new URL($).pathname}catch{console.error("invalid url")}let X=q.lastIndexOf(".");if(X<0)return"";let ne=q.slice(X+1).toUpperCase();return hi(ne,Ft)?Ft[ne]:""},Ln=Object.values(Br),li=$=>typeof $=="boolean"||typeof $=="string"&&Ln.includes($),Pn=({autoplay:$},q,X)=>{let ne=!1,z=!1,N=li($)?$:!!$,_=()=>{ne||kt(q,"playing",()=>{ne=!0},{once:!0})};if(_(),kt(q,"loadstart",()=>{ne=!1,_(),Fr(q,N)},{once:!0}),kt(q,"loadstart",()=>{X||(z=!Number.isFinite(q.duration)),Fr(q,N)},{once:!0}),X&&X.once(Ur.default.Events.LEVEL_LOADED,(C,D)=>{var M;z=(M=D.details.live)!=null?M:!1}),!N){let C=()=>{!z||(X!=null&&X.liveSyncPosition?q.currentTime=X.liveSyncPosition:Number.isFinite(q.seekable.end(0))&&(q.currentTime=q.seekable.end(0)))};X&&kt(q,"play",()=>{q.preload==="metadata"?X.once(Ur.default.Events.LEVEL_UPDATED,C):C()},{once:!0})}return C=>{ne||(N=li(C)?C:!!C,Fr(q,N))}},Fr=($,q)=>{if(!q)return;let X=$.muted,ne=()=>$.muted=X;switch(q){case Br.ANY:$.play().catch(()=>{$.muted=!0,$.play().catch(ne)});break;case Br.MUTED:$.muted=!0,$.play().catch(ne);break;default:$.play().catch(()=>{});break}},Rn=({preload:$,src:q},X,ne)=>{let z=B=>{B!=null&&["","none","metadata","auto"].includes(B)?X.setAttribute("preload",B):X.removeAttribute("preload")};if(!ne)return z($),z;let N=!1,_=!1,C=ne.config.maxBufferLength,D=ne.config.maxBufferSize,M=B=>{z(B);let b=B!=null?B:X.preload;_||b==="none"||(b==="metadata"?(ne.config.maxBufferLength=1,ne.config.maxBufferSize=1):(ne.config.maxBufferLength=C,ne.config.maxBufferSize=D),P())},P=()=>{!N&&q&&(N=!0,ne.loadSource(q))};return kt(X,"play",()=>{_=!0,ne.config.maxBufferLength=C,ne.config.maxBufferSize=D,P()},{once:!0}),M($),M};function In($,q){q.on(wt.default.Events.NON_NATIVE_TEXT_TRACKS_FOUND,(z,{tracks:N})=>{N.forEach(_=>{var C;let D=(C=_.subtitleTrack)!=null?C:_.closedCaptions,M=q.subtitleTracks.findIndex(({lang:P,name:B,type:b})=>P==(D==null?void 0:D.lang)&&B===_.label&&b.toLowerCase()===_.kind);gi($,_.kind,_.label,D==null?void 0:D.lang,`${_.kind}${M}`)})});let X=()=>{var z;if(!q.subtitleTracks.length)return;let N=Array.from($.textTracks).find(C=>C.id&&C.mode==="showing"&&["subtitles","captions"].includes(C.kind)),_=`${(z=q.subtitleTracks[q.subtitleTrack])==null?void 0:z.type.toLowerCase()}${q.subtitleTrack}`;if(N&&(q.subtitleTrack<0||(N==null?void 0:N.id)!==_)){let C=q.subtitleTracks.findIndex(({lang:D,name:M,type:P})=>D==N.language&&M===N.label&&P.toLowerCase()===N.kind);q.subtitleTrack=C}N&&(N==null?void 0:N.id)===_&&N.cues&&Array.from(N.cues).forEach(C=>{N.addCue(C)})};$.textTracks.addEventListener("change",X),q.on(wt.default.Events.CUES_PARSED,(z,{track:N,cues:_})=>{let C=$.textTracks.getTrackById(N);if(!C)return;let D=C.mode==="disabled";D&&(C.mode="hidden"),_.forEach(M=>{var P;(P=C.cues)!=null&&P.getCueById(M.id)||C.addCue(M)}),D&&(C.mode="disabled")}),q.once(wt.default.Events.DESTROYING,()=>{$.textTracks.removeEventListener("change",X),$.querySelectorAll("track[data-removeondestroy]").forEach(z=>{z.remove()})});let ne=()=>{Array.from($.textTracks).forEach(z=>{var N,_;if(!["subtitles","caption"].includes(z.kind)&&z.label==="thumbnails"){if(!((N=z.cues)!=null&&N.length)){let C=$.querySelector('track[label="thumbnails"]'),D=(_=C==null?void 0:C.getAttribute("src"))!=null?_:"";C==null||C.removeAttribute("src"),setTimeout(()=>{C==null||C.setAttribute("src",D)},0)}z.mode!=="hidden"&&(z.mode="hidden")}})};q.once(wt.default.Events.MANIFEST_LOADED,ne),q.once(wt.default.Events.MEDIA_ATTACHED,ne)}function gi($,q,X,ne,z){let N=document.createElement("track");return N.kind=q,N.label=X,ne&&(N.srclang=ne),z&&(N.id=z),N.track.mode="disabled",N.setAttribute("data-removeondestroy",""),$.append(N),N.track}var mr="cuepoints",Gr=Object.freeze({label:mr}),mi=($,{label:q=mr}=Gr)=>{var X;return(X=Array.from($.querySelectorAll("track")).find(ne=>ne.track.label===q&&ne.track.kind==="metadata"))==null?void 0:X.track};async function On($,q,X=Gr){let ne=mi($,X);if(!ne){let{label:z=mr}=X;ne=gi($,"metadata",z),ne.mode="hidden",await new Promise(N=>setTimeout(()=>N(void 0),0))}return[...q].sort(({time:z},{time:N})=>N-z).forEach(({time:z,value:N})=>{var _,C;let D=Array.prototype.findIndex.call(ne==null?void 0:ne.cues,A=>A.startTime>=z),M=(_=ne==null?void 0:ne.cues)==null?void 0:_[D],P=M?M.startTime:Number.isFinite($.duration)?$.duration:Number.MAX_SAFE_INTEGER,B=(C=ne==null?void 0:ne.cues)==null?void 0:C[D-1];B&&(B.endTime=z);let b=new VTTCue(z,P,JSON.stringify(N!=null?N:null));ne.addCue(b)}),ne}var Cn=$=>({time:$.startTime,value:JSON.parse($.text)});function Mn($,q={label:mr}){var X;let ne=mi($,q);if((X=ne==null?void 0:ne.activeCues)!=null&&X.length)return Cn(ne.activeCues[0])}async function wn($,q=Gr){let X=await On($,[],q);return kt($,"cuechange",()=>{let ne=Mn($);if(ne){let z=new CustomEvent("cuepointchange",{composed:!0,bubbles:!0,detail:ne});$.dispatchEvent(z)}},{},X),X}var ui,di,kn=(di=(ui=globalThis==null?void 0:globalThis.navigator)==null?void 0:ui.userAgent)!=null?di:"",Fn=kn.toLowerCase().indexOf("android")!==-1,er=new WeakMap,pi="mux.com",fi,ci,yi=(ci=(fi=Lt.default).isSupported)==null?void 0:ci.call(fi),Un=Fn,Ei=()=>gr.default.utils.now(),Bn=gr.default.utils.generateUUID,_i=($,{domain:q=pi}={})=>{if(!$)return;let[X,ne=""]=Dn($);return`https://stream.${q}/${X}.m3u8${ne}`},Nn=$=>{if(!$)return;let[q]=$.split("?");return q||void 0},Kn=$=>{if(!$||!$.startsWith("https://stream."))return;let[q]=new URL($).pathname.slice(1).split(".m3u8");return q||void 0},Wn=$=>{var q,X,ne;return(q=$==null?void 0:$.metadata)!=null&&q.video_id?$.metadata.video_id:xi($)&&(ne=(X=Nn($.playbackId))!=null?X:Kn($.src))!=null?ne:$.src};var Ti=($,q,X)=>{Hr(q,X);let{metadata:ne={}}=$,{view_session_id:z=Bn()}=ne,N=Wn($);ne.view_session_id=z,ne.video_id=N,$.metadata=ne,er.set(q,{});let _=Gn($,q);jn($,q,_),Vn($,q,_),wn(q);let C=Pn($,q,_),D=Rn($,q,_);return{engine:_,setAutoplay:C,setPreload:D}},Hr=($,q)=>{let X=q==null?void 0:q.engine;X&&(X.detachMedia(),X.destroy()),($==null?void 0:$.mux)&&!$.mux.deleted&&($.mux.destroy(),delete $.mux),$&&($.removeAttribute("src"),$.load(),$.removeEventListener("error",Di),$.removeEventListener("error",Wr),$.removeEventListener("durationchange",Ai),er.delete($),$.dispatchEvent(new Event("teardown")))};function Si($,q){var X;let ne=vi($);if(ne!==Ft.M3U8)return!0;let z=!ne||((X=q.canPlayType(ne))!=null?X:!0),{preferPlayback:N}=$,_=N===Pt.MSE,C=N===Pt.NATIVE;return z&&(C||!(yi&&(_||Un)))}var Gn=($,q)=>{let{debug:X,streamType:ne,startTime:z=-1,metadata:N,preferCmcd:_}=$,C=vi($)===Ft.M3U8,D=Si($,q);if(C&&!D&&yi){let M={backBufferLength:30,renderTextTracksNatively:!1,liveDurationInfinity:!0},P=Hn(ne),B=_!==Nr.NONE?{useHeaders:_===Nr.HEADER,sessionId:N.view_session_id,contentId:N.video_id}:void 0;return new Lt.default({debug:X,startPosition:z,cmcd:B,...M,...P})}},Hn=$=>[vr.LIVE,vr.DVR].includes($)?{backBufferLength:8}:[vr.LL_LIVE,vr.LL_DVR].includes($)?{backBufferLength:4,maxFragLookUpTolerance:.001}:{},xi=({playbackId:$,src:q,customDomain:X})=>{if($)return!0;if(typeof q!="string")return!1;let ne=window==null?void 0:window.location.href,z=new URL(q,ne).hostname.toLocaleLowerCase();return z.includes(pi)||!!X&&z.includes(X.toLocaleLowerCase())},jn=($,q,X)=>{var ne;let{envKey:z}=$,N=xi($);if(z||N){let{playerInitTime:_,playerSoftwareName:C,playerSoftwareVersion:D,beaconCollectionDomain:M,debug:P,disableCookies:B}=$,b={...$.metadata,video_title:((ne=$==null?void 0:$.metadata)==null?void 0:ne.video_title)||void 0},A=S=>typeof S.player_error_code=="string"?!1:typeof $.errorTranslator=="function"?$.errorTranslator(S):S;gr.default.monitor(q,{debug:P,beaconCollectionDomain:M,hlsjs:X,Hls:X?Lt.default:void 0,automaticErrorTracking:!1,errorTranslator:A,disableCookies:B,data:{...z?{env_key:z}:{},player_software_name:C,player_software:C,player_software_version:D,player_init_time:_,...b}})}},Vn=($,q,X)=>{var ne;let z=Si($,q),{src:N}=$;q&&z?(typeof N=="string"?(q.setAttribute("src",N),$.startTime&&(((ne=er.get(q))!=null?ne:{}).startTime=$.startTime,q.addEventListener("durationchange",Ai,{once:!0}))):q.removeAttribute("src"),q.addEventListener("error",Di),q.addEventListener("error",Wr)):X&&N?(X.on(Lt.default.Events.ERROR,(_,C)=>{let D={[Lt.default.ErrorTypes.NETWORK_ERROR]:ut.MEDIA_ERR_NETWORK,[Lt.default.ErrorTypes.MEDIA_ERROR]:ut.MEDIA_ERR_DECODE},M=new ut("",D[C.type]);M.fatal=C.fatal,M.data=C,q.dispatchEvent(new CustomEvent("error",{detail:M}))}),q.addEventListener("error",Wr),In(q,X),X.attachMedia(q)):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 Ai($){var q;let X=$.target,ne=(q=er.get(X))==null?void 0:q.startTime;if(!!ne&&An(X.seekable,X.duration,ne)){let z=X.preload==="auto";z&&(X.preload="none"),X.currentTime=ne,z&&(X.preload="auto")}}async function Di($){if(!$.isTrusted)return;$.stopImmediatePropagation();let q=$.target;if(!(q!=null&&q.error))return;let{message:X,code:ne}=q.error,z=new ut(X,ne);if(q.src&&(ne!==ut.MEDIA_ERR_DECODE||ne!==void 0))try{let{status:N}=await fetch(q.src);z.data={response:{code:N}}}catch{}q.dispatchEvent(new CustomEvent("error",{detail:z}))}function Wr($){var q,X;if(!($ instanceof CustomEvent)||!($.detail instanceof ut))return;let ne=$.target,z=$.detail;!z||!z.fatal||(((q=er.get(ne))!=null?q:{}).error=z,(X=ne.mux)==null||X.emit("error",{player_error_code:z.code,player_error_message:z.message}))}var Yn=()=>{try{return"0.9.2"}catch{}return"UNKNOWN"},Xn=Yn(),bi=()=>Xn;var Li=["abort","canplay","canplaythrough","durationchange","emptied","ended","error","loadeddata","loadedmetadata","loadstart","pause","play","playing","progress","ratechange","seeked","seeking","stalled","suspend","timeupdate","volumechange","waiting"],Pi=Mr.createElement("template");Pi.innerHTML=`
32
33
  <style>
33
34
  :host {
34
35
  /* display:inline (like the native el) makes it so you can't fill
@@ -51,7 +52,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
51
52
 
52
53
  <audio part="audio" crossorigin></audio>
53
54
  <slot></slot>
54
- `;var Jt,Ft,gr,bt=class extends gt.HTMLElement{constructor(){super();ft(this,Ft);ft(this,Jt,void 0);this.attachShadow({mode:"open"}),this.isConnected&&At(this,Ft,gr).call(this)}static get observedAttributes(){let l=[];Object.getOwnPropertyNames(this.prototype).forEach(L=>{let A=!1;try{typeof this.prototype[L]=="function"&&(A=!0)}catch{}!A&&L!==L.toUpperCase()&&l.push(L.toLowerCase())});let C=Object.getPrototypeOf(this).observedAttributes;return C&&(l=l.concat(C)),l}attributeChangedCallback(l,C,L){At(this,Ft,gr).call(this),this.forwardAttribute(l,C,L)}forwardAttribute(l,C,L){let A=Object.getOwnPropertyNames(Object.getPrototypeOf(this)),w=Wn(A,l),O=Object.getPrototypeOf(this.constructor).toString().indexOf("function HTMLElement")===0;w&&!O?typeof this[w]=="boolean"?L===null?this[w]=!1:this[w]=!0:this[w]=L:L===null?this.nativeEl.removeAttribute(l):["id","class"].indexOf(l)===-1&&this.nativeEl.setAttribute(l,L)}connectedCallback(){At(this,Ft,gr).call(this)}};Jt=new WeakMap,Ft=new WeakSet,gr=function(){if(qe(this,Jt))return;dt(this,Jt,!0),this.shadowRoot.append(Si.content.cloneNode(!0));let l=this.nativeEl=this.shadowRoot.querySelector("audio");xi.forEach(L=>{l.addEventListener(L,A=>{this.dispatchEvent(new CustomEvent(A.type,{detail:A.detail}))})});let C=this.shadowRoot.querySelector("slot");C.addEventListener("slotchange",()=>{C.assignedElements().forEach(L=>{!["track","source"].includes(L.localName)||l.append(L)})}),Array.from(this.attributes).forEach(L=>{this.forwardAttribute(L.name,null,L.value)}),l.defaultMuted&&(l.muted=!0)};var Di=[],Ai=Rr.createElement("audio"),jn=["webkitDisplayingFullscreen","webkitSupportsFullscreen"];for(let j=Object.getPrototypeOf(Ai);j&&j!==gt.HTMLElement.prototype;j=Object.getPrototypeOf(j))Object.keys(j).forEach(R=>{jn.indexOf(R)===-1&&Di.push(R)});Di.forEach(j=>{if(typeof Ai[j]=="function")bt.prototype[j]=function(){return this.nativeEl[j].apply(this.nativeEl,arguments)};else{let l={get(){return this.nativeEl[j]}};j!==j.toUpperCase()&&(l.set=function(C){this.nativeEl[j]=C}),Object.defineProperty(bt.prototype,j,l)}});function Wn(j,R){let l=null;return j.forEach(C=>{C.toLowerCase()==R.toLowerCase()&&(l=C)}),l}gt.customElements.get("custom-audio")||(gt.customElements.define("custom-audio",bt),gt.CustomAudioElement=bt);var Nr=bt;var De={ENV_KEY:"env-key",DEBUG:"debug",PLAYBACK_ID:"playback-id",METADATA_URL:"metadata-url",PREFER_PLAYBACK:"prefer-playback",BEACON_COLLECTION_DOMAIN:"beacon-collection-domain",DISABLE_COOKIES:"disable-cookies",TYPE:"type",STREAM_TYPE:"stream-type",START_TIME:"start-time"},Gn=Object.values(De),Hn=Ti(),Vn="mux-audio",mt,kt,qt,Bt,er,Kr,Zt=class extends Nr{constructor(){super();ft(this,er);ft(this,mt,void 0);ft(this,kt,void 0);ft(this,qt,void 0);ft(this,Bt,{});dt(this,qt,hi())}static get observedAttributes(){var l;return[...Gn,...(l=Nr.observedAttributes)!=null?l:[]]}get playerInitTime(){return qe(this,qt)}get playerSoftwareName(){return Vn}get playerSoftwareVersion(){return Hn}get _hls(){var l;return(l=qe(this,mt))==null?void 0:l.engine}get mux(){return this.nativeEl.mux}get src(){return this.getAttribute("src")}set src(l){l!==this.src&&(l==null?this.removeAttribute("src"):this.setAttribute("src",l))}get preload(){let l=this.getAttribute("preload");return l===""?"auto":["none","metadata","auto"].includes(l)?l:super.preload}set preload(l){l!=this.getAttribute("preload")&&(["","none","metadata","auto"].includes(l)?this.setAttribute("preload",l):this.removeAttribute("preload"))}get debug(){return this.getAttribute(De.DEBUG)!=null}set debug(l){l!==this.debug&&(l?this.setAttribute(De.DEBUG,""):this.removeAttribute(De.DEBUG))}get disableCookies(){return this.hasAttribute(De.DISABLE_COOKIES)}set disableCookies(l){l!==this.disableCookies&&(l?this.setAttribute(De.DISABLE_COOKIES,""):this.removeAttribute(De.DISABLE_COOKIES))}get startTime(){let l=this.getAttribute(De.START_TIME);if(l==null)return;let C=+l;return Number.isNaN(C)?void 0:C}set startTime(l){l!==this.startTime&&(l==null?this.removeAttribute(De.START_TIME):this.setAttribute(De.START_TIME,`${l}`))}get playbackId(){var l;return(l=this.getAttribute(De.PLAYBACK_ID))!=null?l:void 0}set playbackId(l){l!==this.playbackId&&(l?this.setAttribute(De.PLAYBACK_ID,l):this.removeAttribute(De.PLAYBACK_ID))}get envKey(){var l;return(l=this.getAttribute(De.ENV_KEY))!=null?l:void 0}set envKey(l){l!==this.envKey&&(l?this.setAttribute(De.ENV_KEY,l):this.removeAttribute(De.ENV_KEY))}get beaconCollectionDomain(){var l;return(l=this.getAttribute(De.BEACON_COLLECTION_DOMAIN))!=null?l:void 0}set beaconCollectionDomain(l){l!==this.beaconCollectionDomain&&(l?this.setAttribute(De.BEACON_COLLECTION_DOMAIN,l):this.removeAttribute(De.BEACON_COLLECTION_DOMAIN))}get streamType(){var l;return(l=this.getAttribute(De.STREAM_TYPE))!=null?l:void 0}set streamType(l){l!==this.streamType&&(l?this.setAttribute(De.STREAM_TYPE,l):this.removeAttribute(De.STREAM_TYPE))}get preferPlayback(){let l=this.getAttribute(De.PREFER_PLAYBACK);if(l===_t.MSE||l===_t.NATIVE)return l}set preferPlayback(l){l!==this.preferPlayback&&(l===_t.MSE||l===_t.NATIVE?this.setAttribute(De.PREFER_PLAYBACK,l):this.removeAttribute(De.PREFER_PLAYBACK))}get metadata(){return{...this.getAttributeNames().filter(C=>C.startsWith("metadata-")&&![De.METADATA_URL].includes(C)).reduce((C,L)=>{let A=this.getAttribute(L);return A!=null&&(C[L.replace(/^metadata-/,"").replace(/-/g,"_")]=A),C},{}),...qe(this,Bt)}}set metadata(l){dt(this,Bt,l!=null?l:{}),this.mux&&(console.info("Some metadata values may not be overridable at this time. Make sure you set all metadata to override before setting the src."),this.mux.emit("hb",qe(this,Bt)))}load(){dt(this,mt,gi(this,this.nativeEl,qe(this,mt)))}unload(){Ur(this.nativeEl,qe(this,mt)),dt(this,mt,void 0)}attributeChangedCallback(l,C,L){var A,w;switch(super.attributeChangedCallback(l,C,L),l){case"src":{let O=!!C,b=!!L;!O&&b?At(this,er,Kr).call(this):O&&!b?this.unload():O&&b&&(this.unload(),At(this,er,Kr).call(this));break}case"autoplay":if(L===C)break;(A=qe(this,mt))==null||A.setAutoplay(this.autoplay);break;case"preload":if(L===C)break;(w=qe(this,mt))==null||w.setPreload(L);break;case De.PLAYBACK_ID:this.src=vi(L!=null?L:void 0);break;case De.DEBUG:{let O=this.debug;this.mux&&console.info("Cannot toggle debug mode of mux data after initialization. Make sure you set all metadata to override before setting the src."),this._hls&&(this._hls.config.debug=O);break}case De.METADATA_URL:L&&fetch(L).then(O=>O.json()).then(O=>this.metadata=O).catch(()=>console.error(`Unable to load or parse metadata JSON from metadata-url ${L}!`));break;default:break}}disconnectedCallback(){this.unload()}};mt=new WeakMap,kt=new WeakMap,qt=new WeakMap,Bt=new WeakMap,er=new WeakSet,Kr=async function(){qe(this,kt)||(await dt(this,kt,Promise.resolve()),dt(this,kt,null),this.load())};gt.customElements.get("mux-audio")||(gt.customElements.define("mux-audio",Zt),gt.MuxAudioElement=Zt);var ca=Zt;})();
55
+ `;var tr,Ut,pr,Rt=class extends _t.HTMLElement{constructor(){super();mt(this,Ut);mt(this,tr,void 0);this.attachShadow({mode:"open"}),this.isConnected&&bt(this,Ut,pr).call(this)}static get observedAttributes(){let X=[];Object.getOwnPropertyNames(this.prototype).forEach(z=>{let N=!1;try{typeof this.prototype[z]=="function"&&(N=!0)}catch{}!N&&z!==z.toUpperCase()&&X.push(z.toLowerCase())});let ne=Object.getPrototypeOf(this).observedAttributes;return ne&&(X=X.concat(ne)),X}attributeChangedCallback(X,ne,z){bt(this,Ut,pr).call(this),this.forwardAttribute(X,ne,z)}forwardAttribute(X,ne,z){let N=Object.getOwnPropertyNames(Object.getPrototypeOf(this)),_=Qn(N,X),C=Object.getPrototypeOf(this.constructor).toString().indexOf("function HTMLElement")===0;_&&!C?typeof this[_]=="boolean"?z===null?this[_]=!1:this[_]=!0:this[_]=z:z===null?this.nativeEl.removeAttribute(X):["id","class"].indexOf(X)===-1&&this.nativeEl.setAttribute(X,z)}connectedCallback(){bt(this,Ut,pr).call(this)}};tr=new WeakMap,Ut=new WeakSet,pr=function(){if(lt(this,tr))return;pt(this,tr,!0),this.shadowRoot.append(Pi.content.cloneNode(!0));let X=this.nativeEl=this.shadowRoot.querySelector("audio");Li.forEach(z=>{X.addEventListener(z,N=>{this.dispatchEvent(new CustomEvent(N.type,{detail:N.detail}))})});let ne=this.shadowRoot.querySelector("slot");ne.addEventListener("slotchange",()=>{ne.assignedElements().forEach(z=>{!["track","source"].includes(z.localName)||X.append(z)})}),Array.from(this.attributes).forEach(z=>{this.forwardAttribute(z.name,null,z.value)}),X.defaultMuted&&(X.muted=!0)};var Ri=[],Ii=Mr.createElement("audio"),zn=["webkitDisplayingFullscreen","webkitSupportsFullscreen"];for(let $=Object.getPrototypeOf(Ii);$&&$!==_t.HTMLElement.prototype;$=Object.getPrototypeOf($))Object.keys($).forEach(q=>{zn.indexOf(q)===-1&&Ri.push(q)});Ri.forEach($=>{if(typeof Ii[$]=="function")Rt.prototype[$]=function(){return this.nativeEl[$].apply(this.nativeEl,arguments)};else{let X={get(){return this.nativeEl[$]}};$!==$.toUpperCase()&&(X.set=function(ne){this.nativeEl[$]=ne}),Object.defineProperty(Rt.prototype,$,X)}});function Qn($,q){let X=null;return $.forEach(ne=>{ne.toLowerCase()==q.toLowerCase()&&(X=ne)}),X}_t.customElements.get("custom-audio")||(_t.customElements.define("custom-audio",Rt),_t.CustomAudioElement=Rt);var jr=Rt;var Ie={ENV_KEY:"env-key",DEBUG:"debug",PLAYBACK_ID:"playback-id",METADATA_URL:"metadata-url",PREFER_PLAYBACK:"prefer-playback",BEACON_COLLECTION_DOMAIN:"beacon-collection-domain",DISABLE_COOKIES:"disable-cookies",TYPE:"type",STREAM_TYPE:"stream-type",START_TIME:"start-time"},$n=Object.values(Ie),Jn=bi(),Zn="mux-audio",Tt,Bt,ir,Nt,nr,Vr,rr=class extends jr{constructor(){super();mt(this,nr);mt(this,Tt,void 0);mt(this,Bt,void 0);mt(this,ir,void 0);mt(this,Nt,{});pt(this,ir,Ei())}static get observedAttributes(){var X;return[...$n,...(X=jr.observedAttributes)!=null?X:[]]}get playerInitTime(){return lt(this,ir)}get playerSoftwareName(){return Zn}get playerSoftwareVersion(){return Jn}get _hls(){var X;return(X=lt(this,Tt))==null?void 0:X.engine}get mux(){return this.nativeEl.mux}get src(){return this.getAttribute("src")}set src(X){X!==this.src&&(X==null?this.removeAttribute("src"):this.setAttribute("src",X))}get preload(){let X=this.getAttribute("preload");return X===""?"auto":["none","metadata","auto"].includes(X)?X:super.preload}set preload(X){X!=this.getAttribute("preload")&&(["","none","metadata","auto"].includes(X)?this.setAttribute("preload",X):this.removeAttribute("preload"))}get debug(){return this.getAttribute(Ie.DEBUG)!=null}set debug(X){X!==this.debug&&(X?this.setAttribute(Ie.DEBUG,""):this.removeAttribute(Ie.DEBUG))}get disableCookies(){return this.hasAttribute(Ie.DISABLE_COOKIES)}set disableCookies(X){X!==this.disableCookies&&(X?this.setAttribute(Ie.DISABLE_COOKIES,""):this.removeAttribute(Ie.DISABLE_COOKIES))}get startTime(){let X=this.getAttribute(Ie.START_TIME);if(X==null)return;let ne=+X;return Number.isNaN(ne)?void 0:ne}set startTime(X){X!==this.startTime&&(X==null?this.removeAttribute(Ie.START_TIME):this.setAttribute(Ie.START_TIME,`${X}`))}get playbackId(){var X;return(X=this.getAttribute(Ie.PLAYBACK_ID))!=null?X:void 0}set playbackId(X){X!==this.playbackId&&(X?this.setAttribute(Ie.PLAYBACK_ID,X):this.removeAttribute(Ie.PLAYBACK_ID))}get envKey(){var X;return(X=this.getAttribute(Ie.ENV_KEY))!=null?X:void 0}set envKey(X){X!==this.envKey&&(X?this.setAttribute(Ie.ENV_KEY,X):this.removeAttribute(Ie.ENV_KEY))}get beaconCollectionDomain(){var X;return(X=this.getAttribute(Ie.BEACON_COLLECTION_DOMAIN))!=null?X:void 0}set beaconCollectionDomain(X){X!==this.beaconCollectionDomain&&(X?this.setAttribute(Ie.BEACON_COLLECTION_DOMAIN,X):this.removeAttribute(Ie.BEACON_COLLECTION_DOMAIN))}get streamType(){var X;return(X=this.getAttribute(Ie.STREAM_TYPE))!=null?X:void 0}set streamType(X){X!==this.streamType&&(X?this.setAttribute(Ie.STREAM_TYPE,X):this.removeAttribute(Ie.STREAM_TYPE))}get preferPlayback(){let X=this.getAttribute(Ie.PREFER_PLAYBACK);if(X===Pt.MSE||X===Pt.NATIVE)return X}set preferPlayback(X){X!==this.preferPlayback&&(X===Pt.MSE||X===Pt.NATIVE?this.setAttribute(Ie.PREFER_PLAYBACK,X):this.removeAttribute(Ie.PREFER_PLAYBACK))}get metadata(){return{...this.getAttributeNames().filter(ne=>ne.startsWith("metadata-")&&![Ie.METADATA_URL].includes(ne)).reduce((ne,z)=>{let N=this.getAttribute(z);return N!=null&&(ne[z.replace(/^metadata-/,"").replace(/-/g,"_")]=N),ne},{}),...lt(this,Nt)}}set metadata(X){pt(this,Nt,X!=null?X:{}),this.mux&&(console.info("Some metadata values may not be overridable at this time. Make sure you set all metadata to override before setting the src."),this.mux.emit("hb",lt(this,Nt)))}load(){pt(this,Tt,Ti(this,this.nativeEl,lt(this,Tt)))}unload(){Hr(this.nativeEl,lt(this,Tt)),pt(this,Tt,void 0)}attributeChangedCallback(X,ne,z){var N,_;switch(super.attributeChangedCallback(X,ne,z),X){case"src":{let C=!!ne,D=!!z;!C&&D?bt(this,nr,Vr).call(this):C&&!D?this.unload():C&&D&&(this.unload(),bt(this,nr,Vr).call(this));break}case"autoplay":if(z===ne)break;(N=lt(this,Tt))==null||N.setAutoplay(this.autoplay);break;case"preload":if(z===ne)break;(_=lt(this,Tt))==null||_.setPreload(z);break;case Ie.PLAYBACK_ID:this.src=_i(z!=null?z:void 0);break;case Ie.DEBUG:{let C=this.debug;this.mux&&console.info("Cannot toggle debug mode of mux data after initialization. Make sure you set all metadata to override before setting the src."),this._hls&&(this._hls.config.debug=C);break}case Ie.METADATA_URL:z&&fetch(z).then(C=>C.json()).then(C=>this.metadata=C).catch(()=>console.error(`Unable to load or parse metadata JSON from metadata-url ${z}!`));break;default:break}}disconnectedCallback(){this.unload()}};Tt=new WeakMap,Bt=new WeakMap,ir=new WeakMap,Nt=new WeakMap,nr=new WeakSet,Vr=async function(){lt(this,Bt)||(await pt(this,Bt,Promise.resolve()),pt(this,Bt,null),this.load())};_t.customElements.get("mux-audio")||(_t.customElements.define("mux-audio",rr),_t.MuxAudioElement=rr);var Ea=rr;})();
55
56
  /*!
56
57
  * JavaScript Cookie v2.1.3
57
58
  * https://github.com/js-cookie/js-cookie