"use strict";(self.__LOADABLE_LOADED_CHUNKS__=self.__LOADABLE_LOADED_CHUNKS__||[]).push([[5817],{43507:(e,t,i)=>{i.d(t,{A:()=>h});var r=i(65907),n=i(96865);function a(e,t){for(var i=0;ie.length)&&(t=e.length);for(var i=0,r=new Array(t);i100&&t.emit(c.DETECT_LARGE_GAP,"video",e)},get:function(){return t.___videoLargeGap||0}},_audioLargeGap:{set:function(e){t.___audioLargeGap=e,Math.abs(e)>100&&t.emit(c.DETECT_LARGE_GAP,"audio",e)},get:function(){return t.___audioLargeGap||0}}}),this.audioUnsyncTime=0}var t,i,r;return t=e,r=[{key:"sortAudioSamples",value:function(e){return 1===e.length?e:o(e).sort((function(e,t){return e.dts-t.dts}))}},{key:"isRefSampleDurationValid",value:function(e){return e&&e>0&&!Number.isNaN(e)}},{key:"findFirstAudioSample",value:function(t){return t&&0!==t.length?e.sortAudioSamples(t)[0]:null}},{key:"findFirstVideoSample",value:function(e){if(!e.length)return null;for(var t=o(e).sort((function(e,t){return e.dts-t.dts})),i=0,r=t.length;i=1e4||t-e>=1e4}},{key:"detectAudioLargeGap",value:function(e,t){if(null!==e)return e-t>=5e3||t-e>=5e3}},{key:"doFixLargeGap",value:function(e,t){for(var i=0,r=e.length;i2*s.refSampleDuration&&p<10*s.refSampleDuration){for(var y=Math.floor(p/s.refSampleDuration),v=0;v2*s.refSampleDuration&&!this._videoLargeGap&&(this._videoLargeGap=-1*p,this.doFixLargeVideoGap(a,-1*p))}var g=a.pop();if(a.length&&(a[a.length-1].duration=g.dts-a[a.length-1].dts),this.videoLastSample){var m=this.videoLastSample;m.duration=h.dts-m.dts,a.unshift(this.videoLastSample)}this.videoLastSample=g,a[a.length-1]&&(this.lastVideoDuration=a[a.length-1].duration,this.lastVideoDts=a[a.length-1].dts),this.videoTrack.samples=a}}},{key:"doFixAudio",value:function(t,i){var r=this,a=this.audioTrack,o=a.samples,u=a.meta;if(o&&o.length){this.fixAudioRefSampleDuration(u);for(var l=0,h=o.length;lu.refSampleDuration&&k<10*u.refSampleDuration){for(var A=Math.floor((_.dts-b)/u.refSampleDuration),T=0;T=v&&f<1e4&&y){for(var R=Math.ceil(f/v),L=0;Lthis.nextAudioDts?B:this.nextAudioDts,pts:B>this.nextAudioDts?B:this.nextAudioDts,datasize:y.byteLength,filtered:0,data:y};this.filledAudioSamples.push({dts:O.dts,size:O.data.byteLength}),this.audioTrack.samples.unshift(O),g=O}this.emit(c.DETECT_AUDIO_GAP,f,R)}else D0?(g.dts=this.nextAudioDts,g.pts=this.nextAudioDts):f<0&&D=10*v){var I=Math.round(P/v);if(I>1e3)break;n.A.warn(this.TAG,"inject ".concat(I," audio frame for ").concat(P," ms gap"));for(var M=0;M=1&&(e.duration+=1,r.audioUnsyncTime-=1)}));var V=o[o.length-1];this.lastAudioDts=V.dts;var N=V.duration;this.lastAudioSamplesLen=p,this.nextAudioDts=this.lastAudioDts+(N||v),this.lastAudioOriginDts=V.originDts,this.audioTrack.samples=e.sortAudioSamples(o),this.audioLastSample=V}}},{key:"fixChangeStreamVideo",value:function(e){n.A.log(this.TAG,"fixChangeStreamVideo(), changeIdx=",e);var t=this.videoTrack,i=t.samples,r=t.meta,a=0===e&&this.lastVideoDuration?this.lastVideoDuration:r.refSampleDuration,s=0===e?this.lastVideoDts?this.lastVideoDts:this.getStreamChangeStart(i[0]):i[e-1].dts,o=i[e].dts,u=Math.abs(s-o)<=1e4;if(this.emit(c.DETECT_CHANGE_STREAM,"video",o),u)return i[e].options?i[e].options.isContinue=!0:i[e].options={isContinue:!0},!1;this.emit(c.DETECT_CHANGE_STREAM_DISCONTINUE,"video",{prevDts:s,curDts:o,duration:a});var l,h=i.slice(0,e),d=i.slice(e),f=i[e];return this._videoLargeGap=0,this.videoLastSample=null,this.lastVideoDts=null,this.lastVideoDuration=null,l=f.options&&void 0!==f.options.start?f.options.start:s-this.videoDtsBase,this.videoTrack.samples=i.slice(0,e),this.doFixVideo(!1),this.videoTrack.samples=i.slice(e),this.doFixVideo(!1,l),this.videoTrack.samples=h.concat(d),!0}},{key:"fixChangeStreamAudio",value:function(e){n.A.log(this.TAG,"fixChangeStreamAudio(), changeIdx=",e);var t=this.audioTrack,i=t.samples,r=t.meta,a=0===e?this.lastAudioDts:i[e-1].dts,s=i[e].dts,o=Math.abs(a-s)<=1e4;if(this.emit(c.DETECT_CHANGE_STREAM,"audio",s),o)return i[e].options?i[e].options.isContinue=!0:i[e].options={isContinue:!0},!1;this.emit(c.DETECT_CHANGE_STREAM_DISCONTINUE,"audio",{prevDts:a,curDts:s,duration:r.refSampleDuration}),this._audioLargeGap=0;var u=this.nextAudioDts;this.nextAudioDts=null;var l,h=i.slice(0,e),d=i.slice(e),f=i[e];return f.options&&void 0!==f.options.start?l=f.options.start:(l=u,f.options.isContinue=!0),this.audioTrack.samples=h,this.doFixAudio(!1),this.audioTrack.samples=d,this.doFixAudio(!1,l),this.audioTrack.samples=h.concat(d),!0}},{key:"getFirstSample",value:function(){var t=this.videoTrack.samples,i=this.audioTrack.samples,r=!1,n=!1;return!this._firstVideoSample&&t.length&&(this._firstVideoSample=e.findFirstVideoSample(t),this.removeInvalidSamples(),r=!0),!this._firstAudioSample&&i.length&&(this._firstAudioSample=e.findFirstAudioSample(i),this.removeInvalidSamples(),n=!0),{isFirstVideoSamples:r,isFirstAudioSamples:n}}},{key:"fixVideoRefSampleDuration",value:function(t,i){if(t){var r=this.allVideoSamplesCount,n=this._firstVideoSample.dts,a=this.filledVideoSamples.length;if(e.isRefSampleDurationValid(t.refSampleDuration)){if(t.refSampleDuration&&i.length>=5){var s=(i[i.length-1].dts-i[0].dts)/(i.length-1);if(s>0&&s<1e3){var o=Math.floor(Math.abs(t.refSampleDuration-s)<=5?t.refSampleDuration:s);e.isRefSampleDurationValid(o)&&(t.refSampleDuration=o)}}}else if(i.length>=1){var u=i[i.length-1].dts;if(Math.abs(u-n)<100*i.length){var l=Math.floor((u-n)/(r+a-1));e.isRefSampleDurationValid(l)&&(t.refSampleDuration=l)}}e.isRefSampleDurationValid(t.refSampleDuration)||(t.refSampleDuration=66)}}},{key:"fixAudioRefSampleDuration",value:function(e){e&&(e.refSampleDuration=1024*e.timescale/e.sampleRate)}},{key:"recordSamplesCount",value:function(){var e=this.audioTrack,t=this.videoTrack;this.allAudioSamplesCount+=e.samples.length,this.allVideoSamplesCount+=t.samples.length}},{key:"removeInvalidSamples",value:function(){var e=this.audioTrack.samples[0],t=this.videoTrack.samples[0];e&&(this.audioTrack.samples=this.audioTrack.samples.filter((function(t,i){return t===e||t.dts>=e.dts}))),t&&(this.videoTrack.samples=this.videoTrack.samples.filter((function(e,i){return e===t||e.dts>=t.dts})))}},{key:"getStreamChangeStart",value:function(e){return e.options&&e.options.start?e.options.start-this.dtsBase:1/0}},{key:"doFixLargeVideoGap",value:function(e,t){for(var i=0,r=e.length;i1e6&&(this._videoLargeGap=t=this._audioLargeGap,n.dts+=t,n.pts&&(n.pts+=t))}}},{key:"tracks",get:function(){return this._context.getInstance("TRACKS")}},{key:"audioTrack",get:function(){return this.tracks&&this.tracks.audioTrack?this.tracks.audioTrack:{samples:[],meta:{}}}},{key:"videoTrack",get:function(){return this.tracks&&this.tracks.videoTrack?this.tracks.videoTrack:{samples:[],meta:{}}}},{key:"dtsBase",get:function(){var e=this._context.getInstance("MP4_REMUXER");return e?e._dtsBase:0}},{key:"audioDtsBase",get:function(){var e=this._context.getInstance("MP4_REMUXER");return e&&null!==e._audioDtsBase?e._audioDtsBase:this.dtsBase}},{key:"videoDtsBase",get:function(){var e=this._context.getInstance("MP4_REMUXER");return e&&null!==e._videoDtsBase?e._videoDtsBase:this.dtsBase}}])&&l(t.prototype,i),r&&l(t,r),e}()},16216:(e,t,i)=>{function r(e,t){for(var i=0;is});var a=function e(){n(this,e),this.mimetype="",this.init=null,this.data=[],this.bufferDuration=0};const s=function(){function e(){n(this,e),this.sources={}}var t,i;return t=e,(i=[{key:"getSource",value:function(e){return this.sources[e]}},{key:"createSource",value:function(e){return this.sources[e]=new a,this.sources[e]}},{key:"clear",value:function(){this.sources={}}},{key:"destroy",value:function(){this.clear()}}])&&r(t.prototype,i),e}()},4682:(e,t,i)=>{function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function n(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&a(e,t)}function a(e,t){return a=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},a(e,t)}function s(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var i,n=o(e);if(t){var a=o(this).constructor;i=Reflect.construct(n,arguments,a)}else i=n.apply(this,arguments);return function(e,t){return!t||"object"!==r(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}(this,i)}}function o(e){return o=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},o(e)}function u(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function l(e,t){for(var i=0;ih,Dc:()=>f,IT:()=>d});var h=function(){function e(){u(this,e),this.id=-1,this.sequenceNumber=0,this.samples=[],this.droppedSamples=[],this.length=0}return c(e,[{key:"reset",value:function(){this.sequenceNumber=0,this.samples=[],this.length=0}},{key:"destroy",value:function(){this.reset(),this.id=-1}}]),e}(),d=function(e){n(i,e);var t=s(i);function i(){var e;return u(this,i),(e=t.call(this)).TAG="AudioTrack",e.type="audio",e}return i}(h),f=function(e){n(i,e);var t=s(i);function i(){var e;return u(this,i),(e=t.call(this)).TAG="VideoTrack",e.type="video",e.dropped=0,e.sequenceNumber=0,e}return c(i,[{key:"reset",value:function(){this.sequenceNumber=0,this.samples=[],this.length=0,this.dropped=0}}]),i}(h)},55384:(e,t,i)=>{function r(e,t){for(var i=0;in});const n=function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.length=t||0,this.historyLen=t||0,this.array=[],this.offset=0}var t,i;return t=e,(i=[{key:"push",value:function(e){this.array.push(e),this.length+=e.byteLength,this.historyLen+=e.byteLength}},{key:"shift",value:function(e){if(this.array.length<1)return new Uint8Array(0);if(void 0===e)return this._shiftBuffer();if(this.offset+e===this.array[0].length){var t=this.array[0].slice(this.offset,this.offset+e);return this.offset=0,this.array.shift(),this.length-=e,t}if(this.offset+e0&&e>0;){if(this.offset+e{i.d(t,{A:()=>Le});var r=function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.filtered=-1,this.tagType=-1,this.datasize=-1,this.dts=-1};function n(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){for(var i=0;i0&&e.readByte(this.dataview,r)}},{key:"readUint8",value:function(){return e.readByte(this.dataview,1)}},{key:"readUint16",value:function(){return e.readByte(this.dataview,2)}},{key:"readUint24",value:function(){return e.readByte(this.dataview,3)}},{key:"readUint32",value:function(){return e.readByte(this.dataview,4)}},{key:"readUint64",value:function(){return e.readByte(this.dataview,8)}},{key:"readInt8",value:function(){return e.readByte(this.dataview,1,!0)}},{key:"readInt16",value:function(){return e.readByte(this.dataview,2,!0)}},{key:"readInt32",value:function(){return e.readByte(this.dataview,4,!0)}},{key:"writeUint32",value:function(e){return new Uint8Array([e>>>24&255,e>>>16&255,e>>>8&255,255&e])}}])&&h(t.prototype,i),r&&h(t,r),e}();function f(e,t){for(var i=0;i>>32-t;if(e>32)throw new Error("Cannot read more than 32 bits at a time");return this._currentWordBitsLeft-=t,this._currentWordBitsLeft>0?this._currentWord<<=t:this._totalBytes-this._bufferIndex>0&&this._fillCurrentWord(),(t=e-t)>0&&this._currentWordBitsLeft?i<>>e)return this._currentWord<<=e,this._currentWordBitsLeft-=e,e;return this._fillCurrentWord(),e+this._skipLeadingZero()}},{key:"readUEG",value:function(){var e=this._skipLeadingZero();return this.readBits(e+1)-1}},{key:"readSEG",value:function(){var e=this.readUEG();return 1&e?e+1>>>1:-1*(e>>>1)}},{key:"readSliceType",value:function(){return this.readByte(),this.readUEG(),this.readUEG()}}])&&f(t.prototype,i),e}();function y(e,t){for(var i=0;i=2&&3===t[a]&&0===t[a-1]&&0===t[a-2]||(r[n]=t[a],n++);return new Uint8Array(r.buffer,0,n)}},{key:"parseSPS",value:function(t){var i=e._ebsp2rbsp(t),r=new p(i);r.readByte();var n=r.readByte();r.readByte();var a=r.readByte();r.readUEG();var s=e.getProfileString(n),o=e.getLevelString(a),u=1,l=420,c=8;if((100===n||110===n||122===n||244===n||44===n||83===n||86===n||118===n||128===n||138===n||144===n)&&(3===(u=r.readUEG())&&r.readBits(1),u<=3&&(l=[0,420,422,444][u]),c=r.readUEG()+8,r.readUEG(),r.readBits(1),r.readBool()))for(var h=3!==u?8:12,d=0;d0&&B<16?(T=[1,12,10,16,40,24,20,32,80,18,15,64,160,4,3,2][B-1],S=[1,11,11,11,33,11,11,11,33,11,11,33,99,3,2,1][B-1]):255===B&&(T=r.readByte()<<8|r.readByte(),S=r.readByte()<<8|r.readByte())}if(r.readBool()&&r.readBool(),r.readBool()&&(r.readBits(4),r.readBool()&&r.readBits(24)),r.readBool()&&(r.readUEG(),r.readUEG()),r.readBool()){var O=r.readBits(32),C=r.readBits(32);D=r.readBool(),w=(R=C)/(L=2*O)}}var U=1;1===T&&1===S||(U=T/S);var x=0,P=0;0===u?(x=1,P=2-m):(x=3===u?1:2,P=(1===u?2:1)*(2-m));var I=16*(_+1),M=16*(g+1)*(2-m);I-=(E+b)*x,M-=(k+A)*P;var G=Math.ceil(I*U);return r.destroy(),r=null,{profile_string:s,level_string:o,bit_depth:c,chroma_format:l,chroma_format_string:e.getChromaFormatString(l),frame_rate:{fixed:D,fps:w,fps_den:L,fps_num:R},par_ratio:{width:T,height:S},codec_size:{width:I,height:M},present_size:{width:G,height:M}}}},{key:"_skipScalingList",value:function(e,t){for(var i=8,r=8,n=0;n=1?m.EBSP2SODB(m.EBSP2RBSP(e.slice(1))):null}},{key:"parse",value:function(t){var i=e._resolveNalu(t),r=e.switchPayloadType(i),n=r.payloadType,a=r.offset,s=i.slice(a);if(5===n)return e.user_data_unregistered(s);var o=e.getPayloadLength(s),u=o.payloadLength,l=o.offset;return{code:n,content:s.slice(l),size:u}}},{key:"switchPayloadType",value:function(e){for(var t=new DataView(e.buffer),i=0,r=0;255===t.getUint8(r);)r++,i+=255;return{payloadType:i+=t.getUint8(r++),offset:r}}},{key:"getPayloadLength",value:function(e){for(var t=new DataView(e.buffer),i=0,r=0;255===t.getUint8(r);)r++,i+=255;return{payloadLength:i+=t.getUint8(r++),offset:r}}},{key:"user_data_unregistered",value:function(t){var i=e.getPayloadLength(t),r=i.payloadLength,n=i.offset;if(r<16)return{uuid:"",content:null};var a=t.slice(n);return{code:5,uuid:b(a.slice(0,16)),content:b(a.slice(16,r)),size:r}}}],null&&E(t.prototype,null),i&&E(t,i),e}();function A(e,t){for(var i=0;i=r))break;var n=t.buffer.slice(t.position,t.position+4);t.skip(4);var a=new Uint8Array(t.buffer.slice(t.position,t.position+r));t.skip(r);var s={header:n,body:a};e.analyseNal(s),s.type<=9&&0!==s.type&&i.push(s)}return i}},{key:"analyseNal",value:function(e){var t=31&e.body[0];switch(e.type=t,t){case 1:e.ndr=!0;break;case 5:e.idr=!0;break;case 6:try{e.sei=k.parse(e.body)}catch(e){}break;case 7:e.sps=_.parseSPS(e.body);break;case 8:e.pps=!0}}},{key:"getHeaderPositionAnnexB",value:function(e){for(var t=e.position,i=0,r=e.length;3!==i&&4!==i&&t>>8&255,255&e.byteLength]),r),r+=2,i.set(e,r),i[r+=e.byteLength]=1,r++,i.set(new Uint8Array([t.byteLength>>>8&255,255&t.byteLength]),r),r+=2,i.set(t,r),i}}],null&&A(t.prototype,null),i&&A(t,i),e}();const S=T;function w(e,t){for(var i=0;i>>32-t;if(e>32)throw new Error("Cannot read more than 32 bits at a time");return this._currentWordBitsLeft-=t,this._currentWordBitsLeft>0?this._currentWord<<=t:this._totalBytes-this._bufferIndex>0&&this._fillCurrentWord(),(t=e-t)>0&&this._currentWordBitsLeft?i<>>e)return this._currentWord<<=e,this._currentWordBitsLeft-=e,e;return this._fillCurrentWord(),e+this._skipLeadingZero()}},{key:"readUEG",value:function(){var e=this._skipLeadingZero();return this.readBits(e+1)-1}},{key:"readSEG",value:function(){var e=this.readUEG();return 1&e?e+1>>>1:-1*(e>>>1)}},{key:"readSliceType",value:function(){return this.readByte(),this.readUEG(),this.readUEG()}}])&&w(t.prototype,i),e}();function R(e,t){for(var i=0;i=2&&3===t[a]&&0===t[a-1]&&0===t[a-2]||(r[n]=t[a],n++);return new Uint8Array(r.buffer,0,n)}},{key:"parseSPS",value:function(t){var i,r,n,a,s,o,u=e._ebsp2rbsp(t),l=new D(u),c=0,h=0,d=0,f=0,p=0,y=0,v=0,_=0,g=0;return l.readByte(),l.readByte(),l.readBits(4),i=l.readBits(3),l.readBits(1),o=e._readProfileTierLevel(l,i),l.readUEG(),3===(r=l.readUEG())&&(c=l.readBits(1)),h=l.readUEG(),d=l.readUEG(),1===(n=l.readBits(1))&&(f=l.readUEG(),p=l.readUEG(),y=l.readUEG(),v=l.readUEG()),a=l.readUEG(),s=l.readUEG(),1===n&&(h-=(_=1!==r&&2!==r||0!==c?1:2)*p+_*f,d-=(g=1===r&&0===c?2:1)*v+g*y),l.destroy(),l=null,{width:h,height:d,general_profile_space:o.general_profile_space,general_tier_flag:o.general_tier_flag,general_profile_idc:o.general_profile_idc,general_level_idc:o.general_level_idc,chromaFormatIdc:r,bitDepthLumaMinus8:a,bitDepthChromaMinus8:s}}},{key:"_readProfileTierLevel",value:function(e,t){var i,r,n,a;i=e.readBits(2)||0,r=e.readBits(1)||0,n=e.readBits(5)||0,e.readBits(16),e.readBits(16),e.readBits(1),e.readBits(1),e.readBits(1),e.readBits(1),e.readBits(16),e.readBits(16),e.readBits(12),a=e.readBits(8)||0;for(var s=[],o=[],u=0;u0&&e.readBits(2*(8-t));for(var l=0;l=1?C.EBSP2SODB(C.EBSP2RBSP(e.slice(1))):null}},{key:"parse",value:function(t){var i=e._resolveNalu(t),r=e.switchPayloadType(i),n=r.payloadType,a=r.offset,s=i.slice(a);if(5===n)return e.user_data_unregistered(s);var o=e.getPayloadLength(s),u=o.payloadLength,l=o.offset;return{code:n,content:s.slice(l),size:u}}},{key:"switchPayloadType",value:function(e){for(var t=new DataView(e.buffer),i=0,r=0;255===t.getUint8(r);)r++,i+=255;return{payloadType:i+=t.getUint8(r++),offset:r}}},{key:"getPayloadLength",value:function(e){for(var t=new DataView(e.buffer),i=0,r=0;255===t.getUint8(r);)r++,i+=255;return{payloadLength:i+=t.getUint8(r++),offset:r}}},{key:"user_data_unregistered",value:function(t){var i=e.getPayloadLength(t),r=i.payloadLength,n=i.offset;if(r<16)return{uuid:"",content:null};var a=t.slice(n);return{code:5,uuid:x(a.slice(0,16)),content:x(a.slice(16,r)),size:r}}}],null&&U(t.prototype,null),i&&U(t,i),e}();function I(e,t){for(var i=0;i=r))break;var n=t.buffer.slice(t.position,t.position+4);t.skip(4);var a=new Uint8Array(t.buffer.slice(t.position,t.position+r));t.skip(r);var s={header:n,body:a};try{e.analyseNal(s)}catch(e){continue}s.type<=40&&i.push(s)}return i}},{key:"analyseNal",value:function(e){var t=e.body[0]>>>1&63;switch(e.type=t,t){case 0:e.slice_trail_n=!0;break;case 1:e.slice_trail_r=!0;break;case 2:e.slice_tsa_n=!0;break;case 3:e.slice_tsa_r=!0,e.key=!0;break;case 4:e.slice_stsa_n=!0;break;case 5:e.slice_stsa_r=!0,e.key=!0;break;case 6:e.slice_radl_n=!0;break;case 7:e.slice_radl_r=!0,e.key=!0;break;case 8:e.slice_rasl_n=!0;break;case 9:e.slice_rasl_r=!0,e.key=!0;break;case 16:e.slice_bla_w_lp=!0;break;case 17:e.slice_bla_w_radl=!0;break;case 18:e.slice_bla_n_lp=!0;break;case 19:e.slice_idl_w_radl=!0,e.key=!0;break;case 20:e.slice_idr_n_lp=!0,e.key=!0;break;case 21:e.slice_cra_nut=!0,e.key=!0;break;case 32:e.vps=!0;break;case 33:e.sps=B.parseSPS(e.body);break;case 34:e.pps=!0;break;case 35:default:break;case 36:e.aud=!0;break;case 37:e.eob=!0;break;case 38:e.fd=!0;break;case 39:try{e.sei=P.parse(e.body.slice(1))}catch(e){}break;case 40:e.sei=P.parse(e.body.slice(1))}}},{key:"getHeaderPositionAnnexB",value:function(e){for(var t=e.position,i=0,r=e.length;3!==i&&4!==i&&t=128){i.push(String.fromCharCode(65535&s)),n+=2;continue}}}else if(r[n]<240){if(e._checkContinuation(r,n,2)){var o=(15&r[n])<<12|(63&r[n+1])<<6|63&r[n+2];if(o>=2048&&55296!=(63488&o)){i.push(String.fromCharCode(65535&o)),n+=3;continue}}}else if(r[n]<248&&e._checkContinuation(r,n,3)){var u=(7&r[n])<<18|(63&r[n+1])<<12|(63&r[n+2])<<6|63&r[n+3];if(u>65536&&u<1114112){u-=65536,i.push(String.fromCharCode(u>>>10|55296)),i.push(String.fromCharCode(1023&u|56320)),n+=4;continue}}i.push(String.fromCharCode(65533)),++n}return i.join("")}},{key:"_checkContinuation",value:function(e,t,i){var r=e;if(t+i0?z.decode(new Uint8Array(e,this.readOffset+2,i)):"";var r=i+2;return this.readOffset+=r,{data:t,bodySize:i+2}}},{key:"parseDate",value:function(e,t){var i=new DataView(e,this.readOffset,t),r=i.getFloat64(0,!X);return r+=60*i.getInt16(8,!X)*1e3,this.readOffset+=10,{data:new Date(r),bodySize:10}}},{key:"parseObject",value:function(e,t){var i=this.parseString(e,t),r=this.parseValue(e,t-i.bodySize);return{data:{name:i.data,value:r.data},bodySize:i.bodySize+r.bodySize,isObjEnd:r.isObjEnd}}},{key:"parseLongString",value:function(e){var t,i=new DataView(e,this.readOffset).getUint32(0,!X);return t=i>0?z.decode(new Uint8Array(e,this.readOffset+2,i)):"",this.readOffset+=i+4,{data:t,bodySize:i+4}}},{key:"parseValue",value:function(e,t){var i=new ArrayBuffer;i=e instanceof ArrayBuffer?e:e.buffer;var r=new DataView(i,this.readOffset,t),n=!1,a=r.getUint8(0),s=1;this.readOffset+=1;var o=null;switch(a){case 0:o=r.getFloat64(1,!X),this.readOffset+=8,s+=8;break;case 1:o=!!r.getUint8(1),this.readOffset+=1,s+=1;break;case 2:var u=this.parseString(i);o=u.data,s+=u.bodySize;break;case 3:o={};var l=0;for(16777215&r.getUint32(t-4,!X)&&(l=3);se)this._word<<=e,this._bitsAvailable-=e;else{e-=this._bitsAvailable;var t=Math.floor(e/8);e-=8*t,this._bytesAvailable-=t,this._loadWord(),this._word<<=e,this._bitsAvailable-=e}}},{key:"readBits",value:function(e){if(e>32)throw new Error("Cannot read more than 32 bits");var t=Math.min(this._bitsAvailable,e),i=this._word>>>32-t;return this._bitsAvailable-=t,this._bitsAvailable>0?this._word<<=t:this._bytesAvailable>0&&this._loadWord(),(t=e-t)>0&&this._bitsAvailable?i<>>e)return this._word<<=e,this._bitsAvailable-=e,e;return this._loadWord(),e+this.skipLZ()}},{key:"skipUEG",value:function(){this.skipBits(1+this.skipLZ())}},{key:"readUEG",value:function(){var e=this.skipLZ();return this.readBits(e+1)-1}},{key:"readEG",value:function(){var e=this.readUEG();return 1&e?1+e>>>1:-1*(e>>>1)}},{key:"readBool",value:function(){return 1===this.readBits(1)}},{key:"readUByte",value:function(){return this.readBits(8)}},{key:"skipScalingList",value:function(e){for(var t=8,i=8,r=0;r1&&void 0!==arguments[1]?arguments[1]:{};if(!(t.length<23)){i=i||{};for(var r,n,a,s,o,u=1+(3&t[21]),l=[],c=[],h=[],d=23,f=t[22],p=0;p1&&void 0!==arguments[1]?arguments[1]:{};i=i||{};var r=new J(t);r.readUByte(),r.readUByte(),r.readBits(4);var n=r.readBits(3);i.numTemporalLayers=Math.max(n+1,i.numTemporalLayers||0),i.temporalIdNested=r.readBits(1),e._parseProfileTierLevel(r,n,i),r.readUEG();var a=i.chromaFormatIdc=r.readUEG(),s=420;a<=3&&(s=[0,420,422,444][a]);var o=0;3===a&&(o=r.readBits(1));var u,l,c,h,d=r.readUEG(),f=r.readUEG(),p=r.readBits(1);return 1===p&&(u=r.readUEG(),l=r.readUEG(),c=r.readUEG(),h=r.readUEG()),i.bitDepthLumaMinus8=r.readUEG(),i.bitDepthChromaMinus8=r.readUEG(),1===p&&(d-=(1!==a&&2!==a||0!==o?1:2)*(l+u),f-=(1===a&&0===o?2:1)*(h+c)),{codec:"hev1.1.6.L93.B0",width:d,height:f,chromaFormat:s,hvcC:i}}},{key:"_parseProfileTierLevel",value:function(e,t,i){var r=i.generalTierFlag||0;i.generalProfileSpace=e.readBits(2),i.generalTierFlag=Math.max(e.readBits(1),r),i.generalProfileIdc=Math.max(e.readBits(5),i.generalProfileIdc||0),i.generalProfileCompatibilityFlags=e.readBits(32),i.generalConstraintIndicatorFlags=[e.readBits(8),e.readBits(8),e.readBits(8),e.readBits(8),e.readBits(8),e.readBits(8)];var n=e.readBits(8);r0&&e.readBits(2*(8-t));for(var u=0;u>this._numHeldBits-e&(1<1){e.streamRead1Bytes();for(var f=0,p=t-2;p>=0;--p)f|=e.extractBits(1)<1;++y)e.extractBits(1);for(var v=t-2;v>=0;--v)f&1<=i))break;var r=e.buffer.slice(e.position,e.position+4);e.skip(4);var n=new Uint8Array(e.buffer.slice(e.position,e.position+i));e.skip(i),t.push({header:r,body:n})}return t}},{key:"analyseNal",value:function(e){var t=(248&e.body[1])>>3;switch(e.type=t,t){case 23:case 24:try{e.sei=se.parse(e.body.slice(1))}catch(e){}break;case 7:case 8:e.key=!0;break;case 14:e.vps=!0;break;case 15:e.sps=!0;break;case 16:e.pps=!0;break;case 17:e.aps=!0}}},{key:"removeEPB",value:function(e){for(var t=e.byteLength,i=[],r=1;r=0;--p)h[p]=t.readBits(1);for(;!t.byteAligned();)t.readBits(1);for(var y=c;y>=0;--y)h[y]&&(d[y]=t.readUByte());if(i)for(var v=t.readUByte(),_=0;_0)}else{if(this._decryptor&&!this._decryptorReady)return;if(e.length<13)return;var r=e.shift(13);this.parseFlvHeader(r),this.demux(e)}}},{key:"parseFlvHeader",value:function(e){if(!h.isFlvFile(e))throw new Error("invalid flv file,".concat(e.join(",")));this._headerParsed=!0;var t=e[4]>>>2==1,i=!(1&~e[4]);this.emit(h.EVENTS.FILE_HEADER_PARSED,{hasVideo:i,hasAudio:t})}},{key:"_parseFlvTag",value:function(e){var t=e.toInt(1,3);if(e.length<11+t+4)return null;var i=this._parseFlvTagHeader(e);if(i&&(this._processTagData(i,e),!this._datasizeValidator(i.datasize,e)))throw new Error("TAG length error at "+i.datasize);return i}},{key:"_parseFlvTagHeader",value:function(e){var t=0,i=new r,n=e.toInt(t,1);if(t+=1,i.filtered=(32&n)>>>5,i.tagType=31&n,i.datasize=e.toInt(t,3),t+=3,8!==i.tagType&&9!==i.tagType&&11!==i.tagType&&18!==i.tagType)throw e&&e.length>0&&e.shift(1),new Error("tagType "+i.tagType);if(e.length0&&(a+=16777216*s),i.dts=a,e.shift(3),i}},{key:"_processTagData",value:function(e,t){switch(e.tagType){case 18:this._parseScriptData(e,t);break;case 8:this._parseAudioTag(e,t);break;case 9:this._parseVideoData(e,t);break;case 11:t.shift(3);break;default:t.shift(1)}}},{key:"_parseScriptData",value:function(e,t){e.data=t.shift(e.datasize);var i=(new Y).resolve(e.data,e.data.length);if(this._onMetaData=i?i.onMetaData:void 0,this.emit(h.EVENTS.SCRIPT_TAG_PARSED,this._onMetaData),!this._isEncrypt){var r=this._onMetaData.encrypt_method;if(r){if("SAMPLE-AES"!==r)throw new Error("invalid encrypt method: ".concat(r));if(!this._cfg.keyStr)throw new Error("no decrypt key found");this._isEncrypt=1}}}},{key:"_aacSequenceHeaderParser",value:function(e){var t,i,r={hasSpecificConfig:!0};r.objectType=e[1]>>>3,r.originObjectType=r.objectType,r.sampleRateIndex=(7&e[1])<<1|e[2]>>>7,r.audiosamplerate=this._switchAudioSampleRate(r.sampleRateIndex),r.channelCount=(120&e[2])>>>3,r.frameLength=(4&e[2])>>>2,r.dependsOnCoreCoder=(2&e[2])>>>1,r.extensionFlagIndex=1&e[2];var n=r.sampleRateIndex;return this._userAgent&&-1!==this._userAgent.indexOf("firefox")?r.sampleRateIndex>=8?(r.objectType=5,i=new Array(4),t=n-3):(r.objectType=2,i=new Array(2),t=n):this._userAgent&&-1!==this._userAgent.indexOf("android")||this._userAgent&&-1!==this._userAgent.indexOf("iphone")?(r.objectType=2,i=new Array(2),t=n):(r.objectType=5,t=r.sampleRateIndex,i=new Array(4),r.sampleRateIndex>=6?t=r.sampleRateIndex-3:1===r.channelCount&&(r.objectType=2,i=new Array(2),t=r.sampleRateIndex)),r.codec="mp4a.40.".concat(r.objectType),i[0]=r.objectType<<3,i[0]|=(15&r.sampleRateIndex)>>>1,i[1]=(15&r.sampleRateIndex)<<7,i[1]|=(15&r.channelCount)<<3,5===r.objectType&&(i[1]|=(15&t)>>>1,i[2]=(1&t)<<7,i[2]|=8,i[3]=0),r.config=i,r}},{key:"_parseAudioTag",value:function(e,t){var i=new o,r=t.shift(1)[0];e.data=t.shift(e.datasize-1);var n=(240&r)>>>4;if(10!==n)throw new Error("invalid audio format: ".concat(n));10===n&&(i.sampleRate=this._switchAudioSamplingFrequency(r),i.sampleRateIndex=(12&r)>>>2,i.frameLenth=(2&r)>>>1,i.channelCount=1&r,i.refSampleDuration=Math.floor(1024/i.audioSampleRate*i.timescale));var a=i.audioSampleRate,s=i.sampleRateIndex,u=i.refSampleDuration;if(0===e.data[0]){var l=this._aacSequenceHeaderParser(e.data);a=l.audiosamplerate||i.audioSampleRate,s=l.sampleRateIndex||i.sampleRateIndex,u=Math.floor(1024/a*i.timescale),i.channelCount=l.channelCount,i.sampleRate=a,i.sampleRateIndex=s,i.refSampleDuration=u,i.duration=this._onMetaData?this._onMetaData.duration*i.timescale:0,i.config=l.config,i.objectType=l.objectType,i.originObjectType=l.originObjectType,this.emit(h.EVENTS.AUDIO_META_PARSED,i),this._audioMetaParsed=!0}else{if(!this._audioMetaParsed&&!this.foundAudioMetaFromScriptTag)throw new Error("flv stream without audio metadata detected");e.data=e.data.slice(1,e.data.length),this._isEncrypt&&this._decryptor&&(e.data=this._decryptor.decryptAudio(e.data)),this.emit(h.EVENTS.AUDIO_SAMPLE_PARSED,e)}}},{key:"_parseVideoData",value:function(e,t){var i=t.shift(1)[0],r=new c(e),n=(240&i)>>>4;r.isKeyframe=1===n;var a=15&i;if(e.avcPacketType=t.shift(1)[0],r.cts=t.toInt(0,3),r.cts=r.cts<<8>>8,t.shift(3),7!==a&&12!==a&&14!==a)throw new Error("video codeid is ".concat(a));var s,o=12===a,u=14===a,l=t.shift(e.datasize-5);if(0===l[4]&&0===l[5]&&0===l[6]&&1===l[7]){for(var f=0,p=0;p<4;p++)f=256*f+l[p];f-=4,(l=l.slice(4,l.length))[3]=f%256,f=(f-l[3])/256,l[2]=f%256,f=(f-l[2])/256,l[1]=f%256,l[0]=(f-l[1])/256}if(l.length)if(r.data=l,0===e.avcPacketType)(s=o?this._hevcSequenceHeaderParser(l):u?this._vvcSequenceHeaderParser(l):this._avcSequenceHeaderParser(l)).codecID=a,this._videoRecentMetadata=s,this._vSeqHeaderIndex++,this.emit(h.EVENTS.VIDEO_META_PARSED,s);else{for(var y=new d(l.buffer),v=u?ue.getAvccNals(y):o?_e.getHvccNals(y):ye.getAvccNals(y),_=o?ge:me,g=!1,m=0;m10&&this.emit(h.EVENTS.VIDEO_SEI_PARSED,Object.assign(E.sei,{dts:e.dts})),_&&_.indexOf(E.type)>-1&&(r.firstInGop=!0,this._gopId++)}this._isEncrypt&&this._decryptor&&(r.data=this._doDecryptNals(v,o)),g||this._checkAppendMetadataNals(r),r.gopId=this._gopId,r.nals=v,this.emit(h.EVENTS.VIDEO_SAMPLE_PARSED,r)}}},{key:"_doDecryptNals",value:function(e,t){for(var i=0,r=[],n=0;n>>1&63:31&a.body[0];(t&&Ee.includes(s)||!t&&be.includes(s))&&(a.body=Q(a.body),a.body=this._decryptor.decryptVideo(a.body));var o=a.body.length;a.header=new Uint8Array([o>>24,o>>16,o>>8,o]),r.push(a.header),r.push(a.body),i+=o+4}var u=new Uint8Array(i),l=0;return r.forEach((function(e){u.set(e,l),l+=e.length})),u}},{key:"_checkAppendMetadataNals",value:function(e){if(this._vSeqHeaderIndex>1&&this._videoRecentMetadata&&e.firstInGop){var t,i,r,n=this._videoRecentMetadata.hvcCConfigParsed;n?(t=n.vpsArr[n.vpsArr.length-1],i=n.spsArr[n.spsArr.length-1],r=n.ppsArr[n.ppsArr.length-1]):(t=this._videoRecentMetadata.vps,i=this._videoRecentMetadata.sps,r=this._videoRecentMetadata.pps);var a=[t?[0,0,t.length>>8,t.length%256]:0,t,[0,0,i.length>>8,i.length%256],i,[0,0,r.length>>8,r.length%256],r,e.data].filter(Boolean),s=a.reduce((function(e,t){return e+t.length}),0),o=new Uint8Array(s),u=0;a.forEach((function(e){o.set(e,u),u+=e.length})),this._videoRecentMetadata=null,e.data=o}}},{key:"_avcSequenceHeaderParser",value:function(e){var t,i=0,r=new u;r.configurationVersion=e[0],r.avcProfileIndication=e[1],r.profileCompatibility=e[2],r.avcLevelIndication=e[3]/10,r.nalUnitLength=1+(3&e[4]);var n=31&e[5];i=6;for(var a={},s=0;s>>6,i.hevcTierFlag=(32&e[1])>>>5,i.hevcProfileIdc=31&e[1],i.hevcProfileCompatibilityFlags=[e[2],e[3],e[4],e[5]],i.hevcConstraintIndicatorFlags=[e[6],e[7],e[8],e[9],e[10],e[11]],i.hevcLevelIdc=e[12],i.minSpatialSegmentationIdc=e[13]&15+e[14]<<4,i.parallelismType=3&e[15],i.chromaFormat=3&e[16],i.bitDepthLumaMinus8=7&e[17],i.bitDepthChromaMinus8=7&e[18],i.avgFrameRate=256*e[19]+e[20],i.constantFrameRate=(192&e[21])>>>6,i.numTemporalLayers=(56&e[21])>>>3,i.temporalIdNested=(4&e[21])>>>2,i.lengthSizeMinusOne=3&e[21];var n=e[22];r=23;for(var a,s,o,l={},c=0,h=0,d=0,f=!1,p=!1,y=!1,v=0;v>>2]}},{key:"_switchAudioChannel",value:function(e){return[1,2][1&e]}},{key:"_datasizeValidator",value:function(e,t){var i=t.toInt(0,4);return t.shift(4),i===e+11}},{key:"destroy",value:function(){he(fe(h.prototype),"removeAllListeners",this).call(this),this._decryptor&&(this._decryptor.destroy(),this._decryptor=null)}}],n=[{key:"EVENTS",get:function(){return{FILE_HEADER_PARSED:"FILE_HEADER_PARSED",SCRIPT_TAG_PARSED:"SCRIPT_TAG_PARSED",AUDIO_META_PARSED:"AUDIO_META_PARSED",VIDEO_META_PARSED:"VIDEO_META_PARSED",VIDEO_SAMPLE_PARSED:"VIDEO_SAMPLE_PARSED",AUDIO_SAMPLE_PARSED:"AUDIO_SAMPLE_PARSED",VIDEO_SEI_PARSED:"VIDEO_SEI_PARSED",PARSE_ERROR:"PARSE_ERROR"}}},{key:"isFlvFile",value:function(e){return!(70!==e[0]||76!==e[1]||86!==e[2]||1!==e[3])}},{key:"getPlayType",value:function(e){var t={hasVideo:!1,hasAudio:!1};return!0&e&&(t.hasVideo=!0),!0&e&&(t.hasAudio=!0),t}}],i&&ce(t.prototype,i),n&&ce(t,n),h}(q());const Ae=ke;var Te=i(4682);function Se(e,t){for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:{};!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.TAG="FLV_DEMUXER",this._cfg=t,this._firstFragmentLoaded=!1,this._trackNum=0,this._hasScript=!1,this._videoMetaChange=!1,this._audioMetaChange=!1,this._hasVideoSequence=!1,this._hasAudioSequence=!1,this._onMetaData=null,this.demuxer=new Ae(t)}var t,i,r;return t=e,r=[{key:"getPlayType",value:function(e){var t={hasVideo:!1,hasAudio:!1};return!0&e&&(t.hasVideo=!0),!0&e&&(t.hasAudio=!0),t}}],(i=[{key:"init",value:function(){this.on(we.DEMUX_START,this.demux.bind(this)),this.demuxer.on(De.FILE_HEADER_PARSED,this.handleFileHeaderParsed.bind(this)),this.demuxer.on(De.SCRIPT_TAG_PARSED,this.handleScriptTagParsed.bind(this)),this.demuxer.on(De.AUDIO_META_PARSED,this.handleAudioMetaParsed.bind(this)),this.demuxer.on(De.VIDEO_META_PARSED,this.handleVideoMetaParsed.bind(this)),this.demuxer.on(De.VIDEO_SAMPLE_PARSED,this.handleVideoSampleParsed.bind(this)),this.demuxer.on(De.AUDIO_SAMPLE_PARSED,this.handleAudioSampleParsed.bind(this)),this.demuxer.on(De.VIDEO_SEI_PARSED,this.handleSeiParsed.bind(this)),this.demuxer.on(De.VIDEO_SEI_PARSED,this.handleSeiParsed.bind(this)),this.demuxer.on(De.PARSE_ERROR,this.handlePraseError.bind(this))}},{key:"handleAudioMetaParsed",value:function(e){this._cfg.onlyVideo||this.tracks&&this.tracks.audioTrack&&(this._context.mediaInfo.hasAudio=!0,this.tracks.audioTrack.meta=e,this.tracks.audioTrack.hasSpecificConfig=!0,e.channelCount?this._hasAudioSequence?this.emit(we.AUDIO_METADATA_CHANGE,"audio"):this.emit(we.METADATA_PARSED,"audio"):this._context.mediaInfo.hasAudio=!1)}},{key:"handleVideoMetaParsed",value:function(e){this._cfg.onlyAudio||this.tracks&&this.tracks.videoTrack&&(this._onMetaData&&this._onMetaData.framerate&&e.frameRate&&(e.frameRate.fps=this._onMetaData.framerate),this._context.mediaInfo.hasVideo=!0,this.tracks.videoTrack.meta=e,this.tracks.videoTrack.hasSpecificConfig=!0,this._hasVideoSequence?this.emit(we.VIDEO_METADATA_CHANGE,"video"):(this.emit(we.METADATA_PARSED,"video"),this._hasVideoSequence=!0))}},{key:"handleSeiParsed",value:function(e){this.emit(we.SEI_PARSED,e)}},{key:"handleVideoSampleParsed",value:function(e){this._cfg.onlyAudio||this.tracks&&this.tracks.videoTrack&&(e.isKeyframe&&this.emit(we.ISKEYFRAME,e.dts+e.cts,e.cts),this.tracks.videoTrack.samples.push(e))}},{key:"handleAudioSampleParsed",value:function(e){var t;this._cfg.onlyVideo||this.tracks&&this.tracks.audioTrack&&null!==(t=this.tracks.audioTrack)&&void 0!==t&&t.meta.channelCount&&this.tracks.audioTrack.samples.push(e)}},{key:"handleScriptTagParsed",value:function(e){if(e){this._onMetaData=e;var t=this.tracks,i=t.videoTrack,r=t.audioTrack;if(this._context.mediaInfo.duration=e.duration,"boolean"==typeof e.hasAudio&&(this._context.mediaInfo.hsaAudio=!this._cfg.onlyVideo&&e.hasAudio),"boolean"==typeof e.hasVideo&&(this._context.mediaInfo.hasVideo=!this._cfg.onlyAudio&&e.hasVideo),this.emit(we.MEDIA_INFO),this._hasScript=!0,r&&!r.hasSpecificConfig){var n=r.meta;switch(e.audiosamplerate&&(n.sampleRate=e.audiosamplerate),e.audiochannels&&(n.channelCount=e.audiochannels),e.audiosamplerate){case 44100:n.sampleRateIndex=4;break;case 22050:n.sampleRateIndex=7;break;case 11025:n.sampleRateIndex=10}}if(i&&!i.hasSpecificConfig){var a=i.meta;if("number"==typeof e.framerate){var s=Math.floor(1e3*e.framerate);if(s>0){var o=s/1e3;a.frameRate||(a.frameRate={}),a.frameRate.fixed=!0,a.frameRate.fps=o,a.frameRate.fps_num=s,a.frameRate.fps_den=1e3}}}}}},{key:"handleFileHeaderParsed",value:function(e){var t=e.hasVideo,i=e.hasAudio;this._context.mediaInfo.hasVideo=!this._cfg.onlyAudio&&t,this._context.mediaInfo.hasAudio=!this._cfg.onlyVideo&&i,this.initVideoTrack(),this.initAudioTrack()}},{key:"handlePraseError",value:function(e){this.emit(we.DEMUX_ERROR,this.TAG,e)}},{key:"demux",value:function(){if(this.loaderBuffer){try{this.demuxer.demux(this.loaderBuffer)}catch(e){return void this.emit(we.DEMUX_ERROR,this.TAG,e)}this.emit(we.DEMUX_COMPLETE)}}},{key:"initVideoTrack",value:function(){this._trackNum++;var e=new Te.Dc;e.meta=new u,e.id=e.meta.id=this._trackNum,this.tracks.videoTrack=e}},{key:"initAudioTrack",value:function(){this._trackNum++;var e=new Te.IT;e.meta=new o,e.id=e.meta.id=this._trackNum,this.tracks.audioTrack=e}},{key:"loaderBuffer",get:function(){var e=this._context.getInstance("LOADER_BUFFER");if(e)return e;this.emit(we.DEMUX_ERROR,this.TAG,new Error("no found loaderBuffer"))}},{key:"tracks",get:function(){return this._context.getInstance("TRACKS")}},{key:"logger",get:function(){return this._context.getInstance("LOGGER")}},{key:"destroy",value:function(){this.demuxer&&this.demuxer.destroy()}}])&&Se(t.prototype,i),r&&Se(t,r),e}();const Le=Re},57759:(e,t,i)=>{i.d(t,{A:()=>T});var r=i(65907),n=i(96865),a=i(42990),s=i.n(a),o=i(23722),u=i.n(o);function l(e,t){for(var i=0;i>24,e>>16&255,e>>8&255,255&e])}},{key:"readAsInt",value:function(e){var t="";return e.forEach((function(e){t+=e.toString(16).padStart(2,"0")})),parseInt(t,16)}}],i&&l(t.prototype,i),r&&l(t,r),e}();function h(e){return function(e){if(Array.isArray(e))return d(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return d(e,t);var i=Object.prototype.toString.call(e).slice(8,-1);return"Object"===i&&e.constructor&&(i=e.constructor.name),"Map"===i||"Set"===i?Array.from(e):"Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)?d(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,r=new Array(t);i2?n-2:0),s=2;s>16&255,t>>8&255,255&t])}},{key:"ftyp",value:function(){return e.initBox(24,"ftyp",new Uint8Array([105,115,111,109,0,0,0,1,105,115,111,109,97,118,99,49]))}},{key:"ftypHEVC",value:function(){return e.initBox(24,"ftyp",new Uint8Array([105,115,111,109,0,0,0,1,105,115,111,109,100,97,115,104]))}},{key:"moov",value:function(t){var i,r=t.type,n=t.meta,a=8,s=e.mvhd(n.duration,n.timescale);i="video"===r?e.videoTrak(n):e.audioTrak(n);var o=e.mvex(n.duration,n.timescale||1e3,n.id);return[s,i,o].forEach((function(e){a+=e.byteLength})),e.initBox(a,"moov",s,i,o)}},{key:"mvhd",value:function(t){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3,r=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,i>>>24&255,i>>>16&255,i>>>8&255,255&i,t>>>24&255,t>>>16&255,t>>>8&255,255&t,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255]);return e.initBox(8+r.length,"mvhd",new Uint8Array(r))}},{key:"videoTrak",value:function(t){var i=8,r=e.tkhd({id:1,duration:t.duration,timescale:t.timescale||1e3,width:t.presentWidth,height:t.presentHeight,type:"video"}),n=e.mdia({type:"video",timescale:t.timescale||1e3,duration:t.duration,avcc:t.avcc,vvcC:t.vvcC,hvcCConfigParsed:t.hvcCConfigParsed,parRatio:t.parRatio,width:t.presentWidth,height:t.presentHeight,streamType:t.streamType});return[r,n].forEach((function(e){i+=e.byteLength})),e.initBox(i,"trak",r,n)}},{key:"audioTrak",value:function(t){var i=8,r=e.tkhd({id:2,duration:t.duration,timescale:t.timescale||1e3,width:0,height:0,type:"audio"}),n=e.mdia({type:"audio",timescale:t.timescale||1e3,duration:t.duration,channelCount:t.channelCount,samplerate:t.sampleRate,config:t.config});return[r,n].forEach((function(e){i+=e.byteLength})),e.initBox(i,"trak",r,n)}},{key:"tkhd",value:function(t){var i=t.id,r=t.duration,n=t.width,a=t.height,s=new Uint8Array([0,0,0,7,0,0,0,0,0,0,0,0,i>>>24&255,i>>>16&255,i>>>8&255,255&i,0,0,0,0,r>>>24&255,r>>>16&255,r>>>8&255,255&r,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,n>>>8&255,255&n,0,0,a>>>8&255,255&a,0,0]);return e.initBox(8+s.byteLength,"tkhd",s)}},{key:"edts",value:function(t){var i=new c,r=t.duration,n=t.mediaTime;return i.write(e.size(36),e.type("edts")),i.write(e.size(28),e.type("elst")),i.write(new Uint8Array([0,0,0,1,r>>24&255,r>>16&255,r>>8&255,255&r,n>>24&255,n>>16&255,n>>8&255,255&n,0,0,0,1])),i.buffer}},{key:"mdia",value:function(t){var i=8,r=e.mdhd(t.timescale,t.duration),n=e.hdlr(t.type),a=e.minf(t);return[r,n,a].forEach((function(e){i+=e.byteLength})),e.initBox(i,"mdia",r,n,a)}},{key:"mdhd",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1e3,i=arguments.length>1?arguments[1]:void 0,r=new Uint8Array([0,0,0,0,0,0,0,0,t>>>24&255,t>>>16&255,t>>>8&255,255&t,i>>>24&255,i>>>16&255,i>>>8&255,255&i,85,196,0,0]);return e.initBox(12+r.byteLength,"mdhd",e.extension(0,0),r)}},{key:"hdlr",value:function(t){var i=[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];return"audio"===t&&(i.splice.apply(i,[8,4].concat([115,111,117,110])),i.splice.apply(i,[24,13].concat([83,111,117,110,100,72,97,110,100,108,101,114,0]))),e.initBox(8+i.length,"hdlr",new Uint8Array(i))}},{key:"minf",value:function(t){var i=8,r="video"===t.type?e.vmhd():e.smhd(),n=e.dinf(),a=e.stbl(t);return[r,n,a].forEach((function(e){i+=e.byteLength})),e.initBox(i,"minf",r,n,a)}},{key:"vmhd",value:function(){return e.initBox(20,"vmhd",new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0]))}},{key:"smhd",value:function(){return e.initBox(16,"smhd",new Uint8Array([0,0,0,0,0,0,0,0]))}},{key:"dinf",value:function(){var t=new c;return t.write(e.size(36),e.type("dinf"),e.size(28),e.type("dref"),new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1])),t.buffer}},{key:"stbl",value:function(t){var i=8,r=e.stsd(t),n=e.stts(),a=e.stsc(),s=e.stsz(),o=e.stco();return[r,n,a,s,o].forEach((function(e){i+=e.byteLength})),e.initBox(i,"stbl",r,n,a,s,o)}},{key:"stsd",value:function(t){var i;return i="audio"===t.type?e.mp4a(t):36===t.streamType||t.vvcC?e.hvc1vvc1(t):e.avc1(t),e.initBox(16+i.byteLength,"stsd",e.extension(0,0),new Uint8Array([0,0,0,1]),i)}},{key:"mp4a",value:function(t){var i=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,t.channelCount,0,16,0,0,0,0,t.samplerate>>8&255,255&t.samplerate,0,0]),r=e.esds(t.config);return e.initBox(8+i.byteLength+r.byteLength,"mp4a",i,r)}},{key:"esds",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[43,146,8,0],i=t.length,r=new c,n=new Uint8Array([0,0,0,0,3,23+i,0,1,0,4,15+i,64,21,0,0,0,0,0,0,0,0,0,0,0,5].concat([i]).concat(t).concat([6,1,2]));return r.write(e.size(8+n.byteLength),e.type("esds"),n),r.buffer}},{key:"avc1",value:function(t){var i=new c,r=t.width,n=t.height,a=t.parRatio.width,s=t.parRatio.height,o=t.avcc,u=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,r>>8&255,255&r,n>>8&255,255&n,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]),l=new Uint8Array([0,28,156,128,0,45,198,192,0,45,198,192]),h=new Uint8Array([a>>24,a>>16&255,a>>8&255,255&a,s>>24,s>>16&255,s>>8&255,255&s]);return i.write(e.size(40+u.byteLength+o.byteLength+l.byteLength),e.type("avc1"),u,e.size(8+o.byteLength),e.type("avcC"),o,e.size(20),e.type("btrt"),l,e.size(16),e.type("pasp"),h),i.buffer}},{key:"hvc1vvc1",value:function(t){var i=new c,r=[0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,t.width>>8&255,255&t.width,t.height>>8&255,255&t.height,0,72,0,0,0,72,0,0,0,0,0,0,0,1,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,0,0,0,0,0,0,24,17,17],n=!!t.vvcC,a=n?e.vvcC(t):e.hvcC(t),s=[e.type(n?"vvc1":"hvc1"),new Uint8Array(r)].concat(h(a));t.parRatio&&s.push.apply(s,h(e.pasp(t.parRatio)));var o=4+s.reduce((function(e,t){return e+t.byteLength}),0);return s.unshift(e.size(o)),i.write.apply(i,h(s)),i.buffer}},{key:"hvcC",value:function(t){var i;if(t.hvcCConfigParsed){var r=t.hvcCConfigParsed,n=r.vpsArr,a=r.spsArr,s=r.ppsArr,o=r.hvcC,u=o.generalProfileCompatibilityFlags,l=o.generalConstraintIndicatorFlags,c=(n.length&&1)+(a.length&&1)+(s.length&&1);i=[1,o.generalProfileSpace<<6|o.generalTierFlag<<5|o.generalProfileIdc,u>>>24,u>>>16,u>>>8,u,l[0],l[1],l[2],l[3],l[4],l[5],o.generalLevelIdc,240,0,252,252|o.chromaFormatIdc,248|o.bitDepthLumaMinus8,248|o.bitDepthChromaMinus8,0,0,o.numTemporalLayers<<3|o.temporalIdNested<<2|3,c];var d=function(e){var t;i.push(e.length>>8,e.length),(t=i).push.apply(t,h(e))};n.length&&(i.push(160,0,n.length),n.forEach(d)),a.length&&(i.push(161,0,a.length),a.forEach(d)),s.length&&(i.push(162,0,s.length),s.forEach(d))}else i=[1,1,96,0,0,0,144,0,0,0,0,0,93,240,0,252,253,248,248,0,0,15,3,160,0,1,0,24,64,1,12,1,255,255,1,96,0,0,3,0,144,0,0,3,0,0,3,0,93,153,152,9,161,0,1,0,45,66,1,1,1,96,0,0,3,0,144,0,0,3,0,0,3,0,93,160,2,128,128,45,22,89,153,164,147,43,154,128,128,128,130,0,0,3,0,2,0,0,3,0,50,16,162,0,1,0,7,68,1,193,114,180,98,64];return[e.size(8+i.length),e.type("hvcC"),new Uint8Array(i)]}},{key:"vvcC",value:function(t){var i=t.vvcC;return[e.size(8+i.byteLength),e.type("vvcC"),i]}},{key:"fiel",value:function(){return[e.size(10),e.type("fiel"),new Uint8Array([1,0])]}},{key:"pasp",value:function(t){if(t.width&&t.height){var i=t.width,r=t.height;return[e.size(16),e.type("pasp"),new Uint8Array([i>>24,i>>16&255,i>>8&255,255&i,r>>24,r>>16&255,r>>8&255,255&r])]}return[]}},{key:"stts",value:function(){var t=new Uint8Array([0,0,0,0,0,0,0,0]);return e.initBox(16,"stts",t)}},{key:"stsc",value:function(){var t=new Uint8Array([0,0,0,0,0,0,0,0]);return e.initBox(16,"stsc",t)}},{key:"stco",value:function(){var t=new Uint8Array([0,0,0,0,0,0,0,0]);return e.initBox(16,"stco",t)}},{key:"stsz",value:function(){var t=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]);return e.initBox(20,"stsz",t)}},{key:"mvex",value:function(t){var i=arguments.length>2?arguments[2]:void 0,r=new c,n=c.writeUint32(t);return r.write(e.size(56),e.type("mvex"),e.size(16),e.type("mehd"),e.extension(0,0),n,e.trex(i)),r.buffer}},{key:"trex",value:function(t){var i=new Uint8Array([0,0,0,0,t>>24,t>>16&255,t>>8&255,255&t,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]);return e.initBox(8+i.byteLength,"trex",i)}},{key:"moof",value:function(t){var i=8,r=e.mfhd(),n=e.traf(t);return[r,n].forEach((function(e){i+=e.byteLength})),e.initBox(i,"moof",r,n)}},{key:"mfhd",value:function(){var t=c.writeUint32(e.sequence);return e.sequence+=1,e.initBox(16,"mfhd",e.extension(0,0),t)}},{key:"traf",value:function(t){var i=8,r=e.tfhd(t.id),n=e.tfdt(t.time),a=e.sdtp(t),s=e.trun(t,a.byteLength);return[r,n,s,a].forEach((function(e){i+=e.byteLength})),e.initBox(i,"traf",r,n,s,a)}},{key:"tfhd",value:function(t){var i=c.writeUint32(t);return e.initBox(16,"tfhd",e.extension(0,0),i)}},{key:"tfdt",value:function(t){return e.initBox(16,"tfdt",e.extension(0,0),c.writeUint32(t))}},{key:"trun",value:function(t,i){var r=new c,n=c.writeUint32(t.samples.length),a=c.writeUint32(92+16*t.samples.length+i);return r.write(e.size(20+16*t.samples.length),e.type("trun"),new Uint8Array([0,0,15,1]),n,a),t.samples.forEach((function(e){var t=e.flags;r.write(new Uint8Array([e.duration>>>24&255,e.duration>>>16&255,e.duration>>>8&255,255&e.duration,e.size>>>24&255,e.size>>>16&255,e.size>>>8&255,255&e.size,t.isLeading<<2|t.dependsOn,t.isDependedOn<<6|t.hasRedundancy<<4|t.isNonSync,0,0,e.cts>>>24&255,e.cts>>>16&255,e.cts>>>8&255,255&e.cts]))})),r.buffer}},{key:"sdtp",value:function(t){var i=new c;return i.write(e.size(12+t.samples.length),e.type("sdtp"),e.extension(0,0)),t.samples.forEach((function(e){var t=e.flags,r=t.isLeading<<6|t.dependsOn<<4|t.isDependedOn<<2|t.hasRedundancy;i.write(new Uint8Array([r]))})),i.buffer}},{key:"mdat",value:function(t){var i=new c,r=8;t.samples.forEach((function(e){r+=e.size})),i.write(e.size(r),e.type("mdat"));var n=new Uint8Array(r),a=0;return n.set(i.buffer,a),a+=8,t.samples.forEach((function(e){e.buffer.forEach((function(e){n.set(e,a),a+=e.byteLength}))})),n}}],null&&f(t.prototype,null),i&&f(t,i),e}();p.type=function(e){return new Uint8Array([e.charCodeAt(0),e.charCodeAt(1),e.charCodeAt(2),e.charCodeAt(3)])},p.sequence=1;const y=p;function v(e){return v="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},v(e)}function _(e,t){for(var i=0;i0;){var f=r.shift(),p=f.isKeyframe,v=f.options;if(!this.isFirstVideo&&v&&v.meta){s=this.remuxInitSegment("video",v.meta),v.meta=null,r.unshift(f),v.isContinue||(this._videoDtsBase=0);break}var _=Math.max(0,f.dts-this.videoDtsBase);-1===a&&(a=_);var g=void 0,m=void 0;void 0!==f.pts&&(g=(m=f.pts-this._dtsBase)-_),void 0!==f.cts&&(m=f.cts+_,g=f.cts);var E,b={buffer:[],size:0};E=f.duration?f.duration:r.length>=1?r[0].dts-this.videoDtsBase-_:o.length>=1?o[o.length-1].duration:this._videoMeta.refSampleDuration,this.videoAllDuration+=E,n.A.long&&n.A.log(this.TAG,"video dts ".concat(_),"pts ".concat(m),"cts: ".concat(g),p,"originDts ".concat(f.originDts),"duration ".concat(E),d),E>=0&&(l.samples.push(b),b.buffer.push(f.data),b.size+=f.data.byteLength,o.push({dts:_,cts:g,pts:m,data:f.data,size:f.data.byteLength,isKeyframe:p,duration:E,flags:{isLeading:0,dependsOn:p||this.forceFirstIDR&&d?2:1,isDependedOn:p?1:0,hasRedundancy:0,isNonSync:p||this.forceFirstIDR&&d?0:1},originDts:_,type:"video"}),d=!1,this.mp4Durations[m]=E,this.mp4Durations.keys.push(m)),p&&this.emit(u.EVENTS.RANDOM_ACCESS_POINT,m)}if(this.mp4Durations.keys.length>1e4){var k=this.mp4Durations;this.mp4Durations={},this.mp4Durations.keys=k.keys.slice(-100),this.mp4Durations.keys.forEach((function(e){t.mp4Durations[e]=k[e]}))}o.length&&n.A.log(this.TAG,"remux to mp4 video:",[a/1e3,o[o.length-1].dts/1e3]);var A=new c;if(o.length&&i.meta){var T=y.moof({id:i.meta.id,time:a,samples:o}),S=y.mdat(l);A.write(T,S),this.segmentRemuxed("video",A,o[o.length-1].pts-o[0].pts)}if(s&&(this.segmentRemuxed("video",s),r.length))return i.samples=r,this.remuxVideo(i);this.isFirstVideo=!1,this.emit(u.EVENTS.TRACK_REMUXED,"video",A),i.samples=[],i.length=0}}}},{key:"remuxAudio",value:function(e){var t=(e||{}).samples,i=-1,r=[],a=null,s={samples:[]};if(t&&t.length){for(var o=1e4,l=!1;t.length&&o-- >0;){var h=t.shift(),d=h.data,f=h.options;if(!this.isFirstAudio&&f&&f.meta){a=this.remuxInitSegment("audio",f.meta),f.meta=null,t.unshift(h),f.isContinue||(this._audioDtsBase=0);break}var p=Math.max(0,h.dts-this.audioDtsBase),v=h.originDts;l||(i=p,l=!0);var _;_=h.duration?h.duration:this._audioMeta.refSampleDurationFixed?this._audioMeta.refSampleDurationFixed:t.length>=1?t[0].dts-this.audioDtsBase-p:r.length>=1?r[r.length-1].duration:this._audioMeta.refSampleDuration,n.A.long&&n.A.log(this.TAG,"audio dts ".concat(p),"pts ".concat(p),"originDts ".concat(v),"duration ".concat(_)),this.audioAllDuration+=_;var g={dts:p,pts:p,cts:0,size:d.byteLength,duration:h.duration?h.duration:_,flags:{isLeading:0,dependsOn:1,isDependedOn:0,hasRedundancy:0,isNonSync:0},isKeyframe:!0,originDts:v,type:"audio"},m={buffer:[],size:0};_>=0&&(m.buffer.push(d),m.size+=d.byteLength,s.samples.push(m),r.push(g))}var E=new c;if(r.length&&e.meta){n.A.log(this.TAG,"remux to mp4 audio:",[i/1e3,r[r.length-1].dts/1e3]);var b=y.moof({id:e.meta.id,time:i,samples:r}),k=y.mdat(s);E.write(b,k),this.segmentRemuxed("audio",E,r[r.length-1].dts-r[0].dts)}if(a&&(this.segmentRemuxed("audio",a),t.length))return e.samples=t,this.remuxAudio(e);this.isFirstAudio=!1,this.emit(u.EVENTS.TRACK_REMUXED,"audio",E),e.samples=[],e.length=0}}},{key:"segmentRemuxed",value:function(e,t,i){this.emit(u.EVENTS.MEDIA_SEGMENT,e,t,i)}},{key:"videoDtsBase",get:function(){return null!==this._videoDtsBase?this._videoDtsBase:this._dtsBase},set:function(e){this._videoDtsBase=e}},{key:"audioDtsBase",get:function(){return null!==this._audioDtsBase?this._audioDtsBase:this._dtsBase}}])&&_(t.prototype,i),r&&_(t,r),u}(s());function b(e,t){for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:0;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.TAG="Mp4Remuxer",this._curTime=t,this.remuxer||this.initRemuxer()}var t,i;return t=e,(i=[{key:"init",value:function(){this.on(k.REMUX_MEDIA,this.remux.bind(this)),this.on(k.REMUX_METADATA,this.onMetaDataReady.bind(this)),this.on(k.DETECT_CHANGE_STREAM,this.resetDtsBase.bind(this)),this.on(k.DETECT_FRAG_ID_DISCONTINUE,this.seek.bind(this)),this.on(A.SEEK,this.seek.bind(this))}},{key:"initRemuxer",value:function(){this.remuxer=new E({audioMeta:null,videoMeta:null,curTime:this._curTime}),this.remuxer.on(E.EVENTS.MEDIA_SEGMENT,this.writeToSource.bind(this)),this.remuxer.on(E.EVENTS.TRACK_REMUXED,this.onTrackRemuxed.bind(this))}},{key:"remux",value:function(){if(this.remuxer&&this.videoTrack)try{this.remuxer._videoMeta||(this.remuxer._videoMeta=this.videoMeta,this.remuxer._audioMeta=this.audioMeta);var e=this._context.getInstance("TRACKS"),t=e.audioTrack,i=e.videoTrack;this.remuxer.remux(t,i)}catch(e){console.log(e),this.emit(k.REMUX_ERROR,this.TAG,e)}}},{key:"resetDtsBase",value:function(){this.remuxer&&this.remuxer.resetDtsBase()}},{key:"seek",value:function(e){this.remuxer&&this.remuxer.seek(e)}},{key:"onMetaDataReady",value:function(e,t){var i;this.remuxer||this.initRemuxer(),i="audio"===e?this._context.getInstance("TRACKS").audioTrack:this._context.getInstance("TRACKS").videoTrack;var r=this._context.getInstance("PRE_SOURCE_BUFFER"),n=r.getSource(e);n||(n=r.createSource(e)),n.mimetype=i.meta.codec,n.init=this.remuxer.remuxInitSegment(e,i.meta),t&&this.writeToSource(e,n.init,0),this.emit(k.INIT_SEGMENT,e)}},{key:"onTrackRemuxed",value:function(e){this.emit(k.MEDIA_SEGMENT,e)}},{key:"writeToSource",value:function(e,t,i){var r=this._context.getInstance("PRE_SOURCE_BUFFER"),n=r.getSource(e);n||(n=r.createSource(e)),n.data.push(t),i&&(n.bufferDuration=i+(n.bufferDuration||0))}},{key:"videoTrack",get:function(){return this._context.getInstance("TRACKS").videoTrack}},{key:"audioTrack",get:function(){return this._context.getInstance("TRACKS").audioTrack}},{key:"videoMeta",get:function(){return this.videoTrack.meta}},{key:"audioMeta",get:function(){return this.audioTrack.meta}},{key:"destroy",value:function(){this.remuxer&&this.remuxer.destroy(),this.remuxer=null}}])&&b(t.prototype,i),e}()},96865:(e,t,i)=>{function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,r=new Array(t);ia});const a=new(function(){function e(){var t=this;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e);try{var i=/xgd=(\d)/.exec(document.cookie);this._status=!!i,this._level=i&&i[1]}catch(e){this._status=!1}["group","groupEnd","log","warn","error","trace"].forEach((function(e){t[e]=function(i,n,a,s,o,u,l,c,h,d){var f,p;if(t._status){var y=i,v=[n,a,s,o,u,l,c,h,d].filter((function(e){return void 0!==e}));(f=console)[e].apply(f,["["+y+"]:"].concat(function(e){if(Array.isArray(e))return r(e)}(p=v)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(p)||function(e,t){if(e){if("string"==typeof e)return r(e,t);var i=Object.prototype.toString.call(e).slice(8,-1);return"Object"===i&&e.constructor&&(i=e.constructor.name),"Map"===i||"Set"===i?Array.from(e):"Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)?r(e,t):void 0}}(p)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()))}}}))}var t,i;return t=e,(i=[{key:"enable",get:function(){return this._status}},{key:"long",get:function(){return"2"===this._level}}])&&n(t.prototype,i),e}())},60877:(e,t,i)=>{i.d(t,{A:()=>_});var r=i(65907);function n(e,t){for(var i=0;i2&&void 0!==arguments[2]?arguments[2]:[];f(this,e),this._emitter=new(u()),this._emitter.off||(this._emitter.off=this._emitter.removeListener),this.mediaInfo=new s,this._instanceMap={},this._clsMap={},this._inited=!1,this.allowedEvents=r,this._configs=i,this._player=t,this._hooks={}}return y(e,[{key:"getInstance",value:function(e){return this._instanceMap[e]||null}},{key:"initInstance",value:function(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),r=1;r1?i-1:0),o=1;o2?i-2:0),s=2;s{i.d(t,{A:()=>y});var r={VISIBILITY_CHANGE:"VISIBILITY_CHANGE"},n={SEEK:"SEEK"},a={LADER_START:"LOADER_START",LOADER_DATALOADED:"LOADER_DATALOADED",LOADER_COMPLETE:"LOADER_COMPLETE",LOADER_RESPONSE_HEADERS:"LOADER_RESPONSE_HEADERS",LOADER_ERROR:"LOADER_ERROR",LOADER_RETRY:"LOADER_RETRY",LOADER_TTFB:"LOADER_TTFB"},s={DEMUX_START:"DEMUX_START",DEMUX_COMPLETE:"DEMUX_COMPLETE",DEMUX_ERROR:"DEMUX_ERROR",METADATA_PARSED:"METADATA_PARSED",SEI_PARSED:"SEI_PARSED",VIDEO_METADATA_CHANGE:"VIDEO_METADATA_CHANGE",AUDIO_METADATA_CHANGE:"AUDIO_METADATA_CHANGE",MEDIA_INFO:"MEDIA_INFO",ISKEYFRAME:"ISKEYFRAME"},o={REMUX_METADATA:"REMUX_METADATA",REMUX_MEDIA:"REMUX_MEDIA",MEDIA_SEGMENT:"MEDIA_SEGMENT",REMUX_ERROR:"REMUX_ERROR",INIT_SEGMENT:"INIT_SEGMENT",DETECT_CHANGE_STREAM:"DETECT_CHANGE_STREAM",DETECT_CHANGE_STREAM_DISCONTINUE:"DETECT_CHANGE_STREAM_DISCONTINUE",DETECT_AUDIO_GAP:"DETECT_AUDIO_GAP",DETECT_LARGE_GAP:"DETECT_LARGE_GAP",DETECT_AUDIO_OVERLAP:"DETECT_AUDIO_OVERLAP",RANDOM_ACCESS_POINT:"RANDOM_ACCESS_POINT",DETECT_FRAG_ID_DISCONTINUE:"DETECT_FRAG_ID_DISCONTINUE"},u={SOURCE_UPDATE_END:"SOURCE_UPDATE_END",MSE_ERROR:"MSE_ERROR",MSE_WRONG_TRACK_ADD:"MSE_WRONG_TRACK_ADD",MSE_CHANGE_CODEC_ERROR:"MSE_CHANGE_CODEC_ERROR"},l={RETRY_TIME_EXCEEDED:"RETRY_TIME_EXCEEDED"},c=Object.assign({},a,s,o,u,l,n,r),h=[],d=[];for(var f in c)c.hasOwnProperty(f)&&h.push(c[f]);for(var p in c)c.hasOwnProperty(p)&&d.push(c[p]);const y={ALLEVENTS:c,HLS_EVENTS:l,REMUX_EVENTS:o,DEMUX_EVENTS:s,MSE_EVENTS:u,LOADER_EVENTS:a,FlvAllowedEvents:h,HlsAllowedEvents:d,CRYPTO_EVENTS:{START_DECRYPTOO:"START_DECRYPTO",DECRYPTED:"DECRYPTED"},PLAYER_EVENTS:n,BROWSER_EVENTS:r}},93425:(e,t,i)=>{i.d(t,{A:()=>c});var r=i(65907);function n(e,t){for(var i=0;i3&&(this._sampleQueue=[]),this._sampleQueue.push(e),this._calcAvgSpeed(this._sampleQueue)}},{key:"_calcAvgSpeed",value:function(e){var t=e.length,i=e.reduce((function(e,t){return e+t}),0)/t;this._speed=1e3*Math.floor(i)}},{key:"_cleanTimer",value:function(){clearTimeout(this._timer),this._timer=0}},{key:"clean",value:function(){this._cleanTimer()}},{key:"destroy",value:function(){clearTimeout(this._timer)}},{key:"totalByteSize",get:function(){return this._totalByteSize}},{key:"avgSpeed",get:function(){return this._speed||this._addSample(this._calcSampleSpeed()),8*this._speed}},{key:"recentSpeed",get:function(){return this._recentSpeed||this._addSample(this._calcSampleSpeed()),8*this._recentSpeed}}])&&n(t.prototype,i),e}();function o(e){return o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o(e)}function u(e,t){for(var i=0;i4&&void 0!==arguments[4]?arguments[4]:0,s=arguments.length>5?arguments[5]:void 0,o=arguments.length>6?arguments[6]:void 0;if(!this._destroyed)return this.loading=!0,this.fetch(this.url,t,s).then((function(u){if(!n._destroyed&&n.emit(l.LOADER_RESPONSE_HEADERS,n.TAG,u.headers),n._responseHeader=u.headers,u.ok)return n.status=u.status,Promise.resolve().then((function(){n._onFetchResponse(u,o)})),Promise.resolve(u);i-- >0?n._retryTimer=setTimeout((function(){return n.emit(l.LOADER_RETRY,n.TAG,{response:u,reason:"response not ok",retryTime:r-i}),n.internalLoad(e,t,i,r,a,s,o)}),a):(n.loading=!1,n.emit(l.LOADER_ERROR,n.TAG,{code:u.status||21,message:"".concat(u.status," (").concat(u.statusText,")")}))})).catch((function(u){if(n._destroyed||u&&"AbortError"===u.name)n.loading=!1;else if(i-- >0)n._retryTimer=setTimeout((function(){return n.emit(l.LOADER_RETRY,n.TAG,{error:u,reason:"fetch error",retryTime:r-i}),n.internalLoad(e,t,i,r,a,s,o)}),a);else{if(n.loading=!1,u&&"AbortError"===u.name)return;n.emit(l.LOADER_ERROR,n.TAG,Object.assign({code:21},u))}}))}},{key:"load",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=i.retryCount,n=i.retryDelay,a=i.loadTimeout,s=i.maxReaderInterval;if(e){r=void 0===r?3:r,this.url=e,this._canceled=!1;var o=this.getParams(t);return this.internalLoad(e,o,r,r,n,a,s)}this.emit(l.LOADER_ERROR,this.TAG,{code:0,message:"empty url"})}},{key:"_onFetchResponse",value:function(e,t){var i=this,r=this,n=this._context.getInstance(this.buffer);this._loaderTaskNo++;var a=this._loaderTaskNo;if(!0===e.ok){var s;switch(this.readtype){case 2:s=e.json();break;case 1:s=e.text();break;case 3:s=e.arrayBuffer();break;default:return this._onReader(e.body.getReader(),a,t)}if(!s)return;s.then((function(e){var t;null===(t=i._speed)||void 0===t||t.recordLoaded(),r.loading=!1,r._canceled||r._destroyed||(n?(n.push(e instanceof ArrayBuffer?new Uint8Array(e):e),r.emit(l.LOADER_COMPLETE,n)):r.emit(l.LOADER_COMPLETE,e))})).catch((function(){}))}}},{key:"_onReader",value:function(e,t,i){var r=this,n=this._context.getInstance(this.buffer);if(!n&&this._reader||this._destroyed)try{this._reader.cancel()}catch(e){}this._reader=e,!1!==this.loading&&(this._noDataTimer=setTimeout((function(){!1!==r.loading&&r.emit(l.LOADER_COMPLETE,"nobuffer")}),i||3e3),this._reader&&this._reader.read().then((function(a){var s,o;if(clearTimeout(r._noDataTimer),!r._canceled&&!r._destroyed)return a.done?(r.loading=!1,r.status=0,null===(o=r._speed)||void 0===o||o.destroy(),void Promise.resolve().then((function(){r.emit(l.LOADER_COMPLETE,"done")}))):(n.push(a.value),null===(s=r._speed)||void 0===s||s.recordChunk(a.value.byteLength),Promise.resolve().then((function(){r.emit(l.LOADER_DATALOADED,n)})),r._onReader(e,t,i));if(r._reader)try{r._reader.cancel()}catch(e){}})).catch((function(e){clearTimeout(r._noDataTimer),r.loading=!1,(!e||"AbortError"!==e.name&&"network error"!==e.message)&&r.emit(l.LOADER_ERROR,r.TAG,e)})))}},{key:"getParams",value:function(e){var t=Object.assign({},e),i=new Headers,r={method:"GET",headers:i,mode:"cors",cache:"default"};if("object"===o(this.configs.headers)){var n=this.configs.headers;for(var a in n)n.hasOwnProperty(a)&&i.append(a,n[a])}if("object"===o(t.headers)){var s=t.headers;for(var u in s)s.hasOwnProperty(u)&&i.append(u,s[u])}return!1===t.cors&&(r.mode="same-origin"),t.withCredentials&&(r.credentials="include"),r}},{key:"ttfbInfo",get:function(){return this._ttfbInfo}},{key:"avgSpeed",get:function(){var e;return(null===(e=this._speed)||void 0===e?void 0:e.avgSpeed)||0}},{key:"recentSpeed",get:function(){var e;return(null===(e=this._speed)||void 0===e?void 0:e.recentSpeed)||0}},{key:"currentSpeed",get:function(){var e;return(null===(e=this._speed)||void 0===e?void 0:e.avgSpeed)/8e3}},{key:"totalByteSize",get:function(){var e;return null===(e=this._speed)||void 0===e?void 0:e.totalByteSize}},{key:"responseHeader",get:function(){return this._responseHeader}},{key:"cancel",value:function(){var e;if(this._reader){try{var t=this._reader.cancel();t.catch&&t.catch((function(e){}))}catch(e){}this._reader=null,this.loading=!1}clearTimeout(this._noDataTimer),this._canceled=!0,this.abortController&&this.abortController.abort(),null===(e=this._speed)||void 0===e||e.clean()}},{key:"destroy",value:function(){var e;this._destroyed=!0,this._responseHeader=null,clearTimeout(this._retryTimer),clearTimeout(this._noDataTimer),this.cancel(),null===(e=this._speed)||void 0===e||e.destroy(),this._speed=null}}],r=[{key:"isSupported",value:function(){return!!window.fetch}},{key:"type",get:function(){return"loader"}}],i&&u(t.prototype,i),r&&u(t,r),e}()},87429:(e,t,i)=>{i.d(t,{A:()=>o});var r=i(65907),n=i(96865);function a(e,t){for(var i=0;i1)return;for(var l=0,c=Object.keys(t).length;l0)return this.emit(s.MSE_WRONG_TRACK_ADD,h);this.emit(s.MSE_ERROR,this.TAG,new Error(e.message))}}}Object.keys(this.sourceBuffers).length===this.sourceBufferLen&&this.doAppend()}}}}},{key:"doAppend",value:function(){if(this.mediaSource&&"closed"!==this.mediaSource.readyState){try{this._doCleanupSourceBuffer()}catch(e){}var e=this._context.getInstance("PRE_SOURCE_BUFFER");if(e&&!(Object.keys(this.sourceBuffers).length1&&void 0!==arguments[1]?arguments[1]:0;try{for(var i=0;it&&r.remove(t,e)}}catch(e){}}},{key:"_doCleanupSourceBuffer",value:function(){for(var e=this.container.currentTime,t={video:[],audio:[]},i=0;i=180){s=!0;var c=e-180;t[r].push({start:u,end:c})}}else l=180&&(s=!0,t[r].push({start:u,end:l}))}s&&!n.updating&&this._doRemoveRanges(t)}}},{key:"_doRemoveRanges",value:function(e){for(var t in e)if(this.sourceBuffers[t]&&!this.sourceBuffers[t].updating)for(var i=this.sourceBuffers[t],r=e[t];r.length&&!i.updating;){var n=r.shift();try{n&&n.end>n.start&&i.remove(n.start,n.end)}catch(e){}}}},{key:"cleanBuffers",value:function(){for(var t=this,i=[],r=function(r){var n,a=t.sourceBuffers[Object.keys(t.sourceBuffers)[r]];n=a.updating?new Promise((function(t){a.addEventListener("updateend",(function i(){var r=3;setTimeout((function i(){a.updating?r>0?(setTimeout(i,200),r--):t():(e.clearBuffer(a),a.addEventListener("updateend",(function(){t()})))}),200),a.removeEventListener("updateend",i)}))})):new Promise((function(t){a.buffered.length?(e.clearBuffer(a),a.addEventListener("updateend",(function(){t()}))):t()})).catch((function(){})),i.push(n)},n=0;n0?(setTimeout(i,200),r--):t():(e.clearBuffer(n),n.addEventListener("updateend",(function(){t()})))}),200),n.removeEventListener("updateend",i)}))})):new Promise((function(t){n.buffered.length?(e.clearBuffer(n),n.addEventListener("updateend",(function(){t()}))):t()})).catch((function(){})),i.push(a)},n=0;n{i.r(t),i.d(t,{HlsLiveMobilePlayer:()=>xi,HlsLiveMsePlayer:()=>yi,default:()=>Pi});var r=i(77116),n=i(85821),a={VISIBILITY_CHANGE:"VISIBILITY_CHANGE"},s={SEEK:"SEEK"},o={LADER_START:"LOADER_START",LOADER_DATALOADED:"LOADER_DATALOADED",LOADER_COMPLETE:"LOADER_COMPLETE",LOADER_RESPONSE_HEADERS:"LOADER_RESPONSE_HEADERS",LOADER_ERROR:"LOADER_ERROR",LOADER_RETRY:"LOADER_RETRY",LOADER_TTFB:"LOADER_TTFB"},u={DEMUX_START:"DEMUX_START",DEMUX_COMPLETE:"DEMUX_COMPLETE",DEMUX_ERROR:"DEMUX_ERROR",METADATA_PARSED:"METADATA_PARSED",SEI_PARSED:"SEI_PARSED",VIDEO_METADATA_CHANGE:"VIDEO_METADATA_CHANGE",AUDIO_METADATA_CHANGE:"AUDIO_METADATA_CHANGE",MEDIA_INFO:"MEDIA_INFO",ISKEYFRAME:"ISKEYFRAME"},l={REMUX_METADATA:"REMUX_METADATA",REMUX_MEDIA:"REMUX_MEDIA",MEDIA_SEGMENT:"MEDIA_SEGMENT",REMUX_ERROR:"REMUX_ERROR",INIT_SEGMENT:"INIT_SEGMENT",DETECT_CHANGE_STREAM:"DETECT_CHANGE_STREAM",DETECT_CHANGE_STREAM_DISCONTINUE:"DETECT_CHANGE_STREAM_DISCONTINUE",DETECT_AUDIO_GAP:"DETECT_AUDIO_GAP",DETECT_LARGE_GAP:"DETECT_LARGE_GAP",DETECT_AUDIO_OVERLAP:"DETECT_AUDIO_OVERLAP",RANDOM_ACCESS_POINT:"RANDOM_ACCESS_POINT",DETECT_FRAG_ID_DISCONTINUE:"DETECT_FRAG_ID_DISCONTINUE"},c={SOURCE_UPDATE_END:"SOURCE_UPDATE_END",MSE_ERROR:"MSE_ERROR",MSE_WRONG_TRACK_ADD:"MSE_WRONG_TRACK_ADD",MSE_CHANGE_CODEC_ERROR:"MSE_CHANGE_CODEC_ERROR"},h={RETRY_TIME_EXCEEDED:"RETRY_TIME_EXCEEDED"},d=Object.assign({},o,u,l,c,h,s,a),f=[],p=[];for(var y in d)d.hasOwnProperty(y)&&f.push(d[y]);for(var v in d)d.hasOwnProperty(v)&&p.push(d[v]);const _={ALLEVENTS:d,HLS_EVENTS:h,REMUX_EVENTS:l,DEMUX_EVENTS:u,MSE_EVENTS:c,LOADER_EVENTS:o,FlvAllowedEvents:f,HlsAllowedEvents:p,CRYPTO_EVENTS:{START_DECRYPTOO:"START_DECRYPTO",DECRYPTED:"DECRYPTED"},PLAYER_EVENTS:s,BROWSER_EVENTS:a};function g(e,t){for(var i=0;i2&&void 0!==arguments[2]?arguments[2]:[];D(this,e),this._emitter=new(k()),this._emitter.off||(this._emitter.off=this._emitter.removeListener),this.mediaInfo=new E,this._instanceMap={},this._clsMap={},this._inited=!1,this.allowedEvents=r,this._configs=i,this._player=t,this._hooks={}}return L(e,[{key:"getInstance",value:function(e){return this._instanceMap[e]||null}},{key:"initInstance",value:function(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),r=1;r1?i-1:0),o=1;o2?i-2:0),s=2;se.length)&&(t=e.length);for(var i=0,r=new Array(t);i1)return;for(var o=0,u=Object.keys(t).length;o0)return this.emit(M.MSE_WRONG_TRACK_ADD,l);this.emit(M.MSE_ERROR,this.TAG,new Error(e.message))}}}Object.keys(this.sourceBuffers).length===this.sourceBufferLen&&this.doAppend()}}}}},{key:"doAppend",value:function(){if(this.mediaSource&&"closed"!==this.mediaSource.readyState){try{this._doCleanupSourceBuffer()}catch(e){}var e=this._context.getInstance("PRE_SOURCE_BUFFER");if(e&&!(Object.keys(this.sourceBuffers).length1&&void 0!==arguments[1]?arguments[1]:0;try{for(var i=0;it&&r.remove(t,e)}}catch(e){}}},{key:"_doCleanupSourceBuffer",value:function(){for(var e=this.container.currentTime,t={video:[],audio:[]},i=0;i=180){s=!0;var c=e-180;t[r].push({start:u,end:c})}}else l=180&&(s=!0,t[r].push({start:u,end:l}))}s&&!n.updating&&this._doRemoveRanges(t)}}},{key:"_doRemoveRanges",value:function(e){for(var t in e)if(this.sourceBuffers[t]&&!this.sourceBuffers[t].updating)for(var i=this.sourceBuffers[t],r=e[t];r.length&&!i.updating;){var n=r.shift();try{n&&n.end>n.start&&i.remove(n.start,n.end)}catch(e){}}}},{key:"cleanBuffers",value:function(){for(var t=this,i=[],r=function(r){var n,a=t.sourceBuffers[Object.keys(t.sourceBuffers)[r]];n=a.updating?new Promise((function(t){a.addEventListener("updateend",(function i(){var r=3;setTimeout((function i(){a.updating?r>0?(setTimeout(i,200),r--):t():(e.clearBuffer(a),a.addEventListener("updateend",(function(){t()})))}),200),a.removeEventListener("updateend",i)}))})):new Promise((function(t){a.buffered.length?(e.clearBuffer(a),a.addEventListener("updateend",(function(){t()}))):t()})).catch((function(){})),i.push(n)},n=0;n0?(setTimeout(i,200),r--):t():(e.clearBuffer(n),n.addEventListener("updateend",(function(){t()})))}),200),n.removeEventListener("updateend",i)}))})):new Promise((function(t){n.buffered.length?(e.clearBuffer(n),n.addEventListener("updateend",(function(){t()}))):t()})).catch((function(){})),i.push(a)},n=0;n3&&(this._sampleQueue=[]),this._sampleQueue.push(e),this._calcAvgSpeed(this._sampleQueue)}},{key:"_calcAvgSpeed",value:function(e){var t=e.length,i=e.reduce((function(e,t){return e+t}),0)/t;this._speed=1e3*Math.floor(i)}},{key:"_cleanTimer",value:function(){clearTimeout(this._timer),this._timer=0}},{key:"clean",value:function(){this._cleanTimer()}},{key:"destroy",value:function(){clearTimeout(this._timer)}},{key:"totalByteSize",get:function(){return this._totalByteSize}},{key:"avgSpeed",get:function(){return this._speed||this._addSample(this._calcSampleSpeed()),8*this._speed}},{key:"recentSpeed",get:function(){return this._recentSpeed||this._addSample(this._calcSampleSpeed()),8*this._recentSpeed}}])&&V(t.prototype,i),e}();function H(e){return H="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},H(e)}function z(e,t){for(var i=0;i4&&void 0!==arguments[4]?arguments[4]:0,s=arguments.length>5?arguments[5]:void 0,o=arguments.length>6?arguments[6]:void 0;if(!this._destroyed)return this.loading=!0,this.fetch(this.url,t,s).then((function(u){if(!n._destroyed&&n.emit(W.LOADER_RESPONSE_HEADERS,n.TAG,u.headers),n._responseHeader=u.headers,u.ok)return n.status=u.status,Promise.resolve().then((function(){n._onFetchResponse(u,o)})),Promise.resolve(u);i-- >0?n._retryTimer=setTimeout((function(){return n.emit(W.LOADER_RETRY,n.TAG,{response:u,reason:"response not ok",retryTime:r-i}),n.internalLoad(e,t,i,r,a,s,o)}),a):(n.loading=!1,n.emit(W.LOADER_ERROR,n.TAG,{code:u.status||21,message:"".concat(u.status," (").concat(u.statusText,")")}))})).catch((function(u){if(n._destroyed||u&&"AbortError"===u.name)n.loading=!1;else if(i-- >0)n._retryTimer=setTimeout((function(){return n.emit(W.LOADER_RETRY,n.TAG,{error:u,reason:"fetch error",retryTime:r-i}),n.internalLoad(e,t,i,r,a,s,o)}),a);else{if(n.loading=!1,u&&"AbortError"===u.name)return;n.emit(W.LOADER_ERROR,n.TAG,Object.assign({code:21},u))}}))}},{key:"load",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=i.retryCount,n=i.retryDelay,a=i.loadTimeout,s=i.maxReaderInterval;if(e){r=void 0===r?3:r,this.url=e,this._canceled=!1;var o=this.getParams(t);return this.internalLoad(e,o,r,r,n,a,s)}this.emit(W.LOADER_ERROR,this.TAG,{code:0,message:"empty url"})}},{key:"_onFetchResponse",value:function(e,t){var i=this,r=this,n=this._context.getInstance(this.buffer);this._loaderTaskNo++;var a=this._loaderTaskNo;if(!0===e.ok){var s;switch(this.readtype){case 2:s=e.json();break;case 1:s=e.text();break;case 3:s=e.arrayBuffer();break;default:return this._onReader(e.body.getReader(),a,t)}if(!s)return;s.then((function(e){var t;null===(t=i._speed)||void 0===t||t.recordLoaded(),r.loading=!1,r._canceled||r._destroyed||(n?(n.push(e instanceof ArrayBuffer?new Uint8Array(e):e),r.emit(W.LOADER_COMPLETE,n)):r.emit(W.LOADER_COMPLETE,e))})).catch((function(){}))}}},{key:"_onReader",value:function(e,t,i){var r=this,n=this._context.getInstance(this.buffer);if(!n&&this._reader||this._destroyed)try{this._reader.cancel()}catch(e){}this._reader=e,!1!==this.loading&&(this._noDataTimer=setTimeout((function(){!1!==r.loading&&r.emit(W.LOADER_COMPLETE,"nobuffer")}),i||3e3),this._reader&&this._reader.read().then((function(a){var s,o;if(clearTimeout(r._noDataTimer),!r._canceled&&!r._destroyed)return a.done?(r.loading=!1,r.status=0,null===(o=r._speed)||void 0===o||o.destroy(),void Promise.resolve().then((function(){r.emit(W.LOADER_COMPLETE,"done")}))):(n.push(a.value),null===(s=r._speed)||void 0===s||s.recordChunk(a.value.byteLength),Promise.resolve().then((function(){r.emit(W.LOADER_DATALOADED,n)})),r._onReader(e,t,i));if(r._reader)try{r._reader.cancel()}catch(e){}})).catch((function(e){clearTimeout(r._noDataTimer),r.loading=!1,(!e||"AbortError"!==e.name&&"network error"!==e.message)&&r.emit(W.LOADER_ERROR,r.TAG,e)})))}},{key:"getParams",value:function(e){var t=Object.assign({},e),i=new Headers,r={method:"GET",headers:i,mode:"cors",cache:"default"};if("object"===H(this.configs.headers)){var n=this.configs.headers;for(var a in n)n.hasOwnProperty(a)&&i.append(a,n[a])}if("object"===H(t.headers)){var s=t.headers;for(var o in s)s.hasOwnProperty(o)&&i.append(o,s[o])}return!1===t.cors&&(r.mode="same-origin"),t.withCredentials&&(r.credentials="include"),r}},{key:"ttfbInfo",get:function(){return this._ttfbInfo}},{key:"avgSpeed",get:function(){var e;return(null===(e=this._speed)||void 0===e?void 0:e.avgSpeed)||0}},{key:"recentSpeed",get:function(){var e;return(null===(e=this._speed)||void 0===e?void 0:e.recentSpeed)||0}},{key:"currentSpeed",get:function(){var e;return(null===(e=this._speed)||void 0===e?void 0:e.avgSpeed)/8e3}},{key:"totalByteSize",get:function(){var e;return null===(e=this._speed)||void 0===e?void 0:e.totalByteSize}},{key:"responseHeader",get:function(){return this._responseHeader}},{key:"cancel",value:function(){var e;if(this._reader){try{var t=this._reader.cancel();t.catch&&t.catch((function(e){}))}catch(e){}this._reader=null,this.loading=!1}clearTimeout(this._noDataTimer),this._canceled=!0,this.abortController&&this.abortController.abort(),null===(e=this._speed)||void 0===e||e.clean()}},{key:"destroy",value:function(){var e;this._destroyed=!0,this._responseHeader=null,clearTimeout(this._retryTimer),clearTimeout(this._noDataTimer),this.cancel(),null===(e=this._speed)||void 0===e||e.destroy(),this._speed=null}}],r=[{key:"isSupported",value:function(){return!!window.fetch}},{key:"type",get:function(){return"loader"}}],i&&z(t.prototype,i),r&&z(t,r),e}();const Y=X;function K(e){return K="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},K(e)}function q(e,t){for(var i=0;i1&&void 0!==arguments[1]?arguments[1]:{},i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,n=Object.assign({},t);this._requestInfo={url:e,options:n,retryTimes:i,totalRetry:i,delayTime:r},this._xhr=this._createXhr(),this.loading=!0;try{this._bindEvents(),this._loadInternal(e,n)}catch(e){this._whenError({code:this._xhr.status,message:e&&e.message})}}},{key:"_loadInternal",value:function(e,t){var i=this._xhr;i.open("GET",e,!0),this._setTimeout(i,t),this._setCredentails(i,t),this._setHeaders(i,t),this._setResponseType(i),i.send()}},{key:"_bindEvents",value:function(){var e=this._xhr;e.addEventListener("readystatechange",this._onReadyStateChange),e.addEventListener("timeout",this._onTimeout),e.addEventListener("error",this._onError),e.addEventListener("abort",this._onAbort)}},{key:"_setTimeout",value:function(e,t){e.timeout=t.timeout||2e3}},{key:"_setCredentails",value:function(e,t){t.withCredentials&&(e.withCredentials=!0)}},{key:"_setHeaders",value:function(e,t){if("object"===K(t.headers)){var i=t.headers;for(var r in i)i.hasOwnProperty(r)&&e.setRequestHeader(r,i[r])}}},{key:"_setResponseType",value:function(e){switch(this._readtype){case 3:e.responseType="arraybuffer";break;case 2:e.responseType="json";break;default:e.responseType=""}}},{key:"_onReadyStateChange",value:function(){var e=this._xhr,t=e.readyState,i=e.status;if(4===t){if(i>=200&&i<300)return void this._onComplete(this._xhr);if(0===i)return;this._onError()}}},{key:"_onComplete",value:function(e){var t;switch(this._readtype){case 2:try{t=JSON.parse(e.responseText)}catch(e){}break;case 3:var i=e.response;t=new Uint8Array(i);break;default:t=e.responseText}this.bufferIns?(this.bufferIns.push(t),this.emit(Q.LOADER_COMPLETE,this.bufferIns)):this.emit(Q.LOADER_COMPLETE,t),this.loading=!1}},{key:"_onError",value:function(){var e=this._xhr,t={code:e.status||21,message:e.statusText};this._whenError(t)}},{key:"_onTimeout",value:function(){console.warn("timeout"),this._whenError({code:999,message:"fetch timeout"})}},{key:"_onAbort",value:function(){console.warn("abort")}},{key:"_whenError",value:function(e){var t=this,i=this._requestInfo,r=i.url,n=i.options,a=i.totalRetry,s=i.retryTimes,o=i.delayTime;if(!s)return this.loading=!1,void this.emit(Q.LOADER_ERROR,this.TAG,e);s--,setTimeout((function(){t.emit(Q.LOADER_RETRY,t.TAG,{response:e,reason:"response not ok",retryTime:a-s}),t.load(r,n,s,o)}),o)}},{key:"cancel",value:function(){4!==this._xhr.readyState&&this._xhr.abort()}},{key:"destroy",value:function(){this.cancel(),this._xhr&&(this._xhr.removeEventListener("readystatechange",this._onReadyStateChange),this._xhr.removeEventListener("timeout",this._onTimeout),this._xhr.removeEventListener("error",this._onError),this._xhr.removeEventListener("abort",this._onAbort),this._xhr=null)}}],r=[{key:"type",get:function(){return"loader"}}],i&&q(t.prototype,i),r&&q(t,r),e}();const $=Z;function J(e,t){for(var i=0;i>24,e>>16&255,e>>8&255,255&e])}},{key:"readAsInt",value:function(e){var t="";return e.forEach((function(e){t+=e.toString(16).padStart(2,"0")})),parseInt(t,16)}}],i&&ae(t.prototype,i),r&&ae(t,r),e}();const oe=se;function ue(e){return function(e){if(Array.isArray(e))return le(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return le(e,t);var i=Object.prototype.toString.call(e).slice(8,-1);return"Object"===i&&e.constructor&&(i=e.constructor.name),"Map"===i||"Set"===i?Array.from(e):"Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)?le(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function le(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,r=new Array(t);i2?n-2:0),s=2;s>16&255,t>>8&255,255&t])}},{key:"ftyp",value:function(){return e.initBox(24,"ftyp",new Uint8Array([105,115,111,109,0,0,0,1,105,115,111,109,97,118,99,49]))}},{key:"ftypHEVC",value:function(){return e.initBox(24,"ftyp",new Uint8Array([105,115,111,109,0,0,0,1,105,115,111,109,100,97,115,104]))}},{key:"moov",value:function(t){var i,r=t.type,n=t.meta,a=8,s=e.mvhd(n.duration,n.timescale);i="video"===r?e.videoTrak(n):e.audioTrak(n);var o=e.mvex(n.duration,n.timescale||1e3,n.id);return[s,i,o].forEach((function(e){a+=e.byteLength})),e.initBox(a,"moov",s,i,o)}},{key:"mvhd",value:function(t){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3,r=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,i>>>24&255,i>>>16&255,i>>>8&255,255&i,t>>>24&255,t>>>16&255,t>>>8&255,255&t,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255]);return e.initBox(8+r.length,"mvhd",new Uint8Array(r))}},{key:"videoTrak",value:function(t){var i=8,r=e.tkhd({id:1,duration:t.duration,timescale:t.timescale||1e3,width:t.presentWidth,height:t.presentHeight,type:"video"}),n=e.mdia({type:"video",timescale:t.timescale||1e3,duration:t.duration,avcc:t.avcc,vvcC:t.vvcC,hvcCConfigParsed:t.hvcCConfigParsed,parRatio:t.parRatio,width:t.presentWidth,height:t.presentHeight,streamType:t.streamType});return[r,n].forEach((function(e){i+=e.byteLength})),e.initBox(i,"trak",r,n)}},{key:"audioTrak",value:function(t){var i=8,r=e.tkhd({id:2,duration:t.duration,timescale:t.timescale||1e3,width:0,height:0,type:"audio"}),n=e.mdia({type:"audio",timescale:t.timescale||1e3,duration:t.duration,channelCount:t.channelCount,samplerate:t.sampleRate,config:t.config});return[r,n].forEach((function(e){i+=e.byteLength})),e.initBox(i,"trak",r,n)}},{key:"tkhd",value:function(t){var i=t.id,r=t.duration,n=t.width,a=t.height,s=new Uint8Array([0,0,0,7,0,0,0,0,0,0,0,0,i>>>24&255,i>>>16&255,i>>>8&255,255&i,0,0,0,0,r>>>24&255,r>>>16&255,r>>>8&255,255&r,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,n>>>8&255,255&n,0,0,a>>>8&255,255&a,0,0]);return e.initBox(8+s.byteLength,"tkhd",s)}},{key:"edts",value:function(t){var i=new oe,r=t.duration,n=t.mediaTime;return i.write(e.size(36),e.type("edts")),i.write(e.size(28),e.type("elst")),i.write(new Uint8Array([0,0,0,1,r>>24&255,r>>16&255,r>>8&255,255&r,n>>24&255,n>>16&255,n>>8&255,255&n,0,0,0,1])),i.buffer}},{key:"mdia",value:function(t){var i=8,r=e.mdhd(t.timescale,t.duration),n=e.hdlr(t.type),a=e.minf(t);return[r,n,a].forEach((function(e){i+=e.byteLength})),e.initBox(i,"mdia",r,n,a)}},{key:"mdhd",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1e3,i=arguments.length>1?arguments[1]:void 0,r=new Uint8Array([0,0,0,0,0,0,0,0,t>>>24&255,t>>>16&255,t>>>8&255,255&t,i>>>24&255,i>>>16&255,i>>>8&255,255&i,85,196,0,0]);return e.initBox(12+r.byteLength,"mdhd",e.extension(0,0),r)}},{key:"hdlr",value:function(t){var i=[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];return"audio"===t&&(i.splice.apply(i,[8,4].concat([115,111,117,110])),i.splice.apply(i,[24,13].concat([83,111,117,110,100,72,97,110,100,108,101,114,0]))),e.initBox(8+i.length,"hdlr",new Uint8Array(i))}},{key:"minf",value:function(t){var i=8,r="video"===t.type?e.vmhd():e.smhd(),n=e.dinf(),a=e.stbl(t);return[r,n,a].forEach((function(e){i+=e.byteLength})),e.initBox(i,"minf",r,n,a)}},{key:"vmhd",value:function(){return e.initBox(20,"vmhd",new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0]))}},{key:"smhd",value:function(){return e.initBox(16,"smhd",new Uint8Array([0,0,0,0,0,0,0,0]))}},{key:"dinf",value:function(){var t=new oe;return t.write(e.size(36),e.type("dinf"),e.size(28),e.type("dref"),new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1])),t.buffer}},{key:"stbl",value:function(t){var i=8,r=e.stsd(t),n=e.stts(),a=e.stsc(),s=e.stsz(),o=e.stco();return[r,n,a,s,o].forEach((function(e){i+=e.byteLength})),e.initBox(i,"stbl",r,n,a,s,o)}},{key:"stsd",value:function(t){var i;return i="audio"===t.type?e.mp4a(t):36===t.streamType||t.vvcC?e.hvc1vvc1(t):e.avc1(t),e.initBox(16+i.byteLength,"stsd",e.extension(0,0),new Uint8Array([0,0,0,1]),i)}},{key:"mp4a",value:function(t){var i=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,t.channelCount,0,16,0,0,0,0,t.samplerate>>8&255,255&t.samplerate,0,0]),r=e.esds(t.config);return e.initBox(8+i.byteLength+r.byteLength,"mp4a",i,r)}},{key:"esds",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[43,146,8,0],i=t.length,r=new oe,n=new Uint8Array([0,0,0,0,3,23+i,0,1,0,4,15+i,64,21,0,0,0,0,0,0,0,0,0,0,0,5].concat([i]).concat(t).concat([6,1,2]));return r.write(e.size(8+n.byteLength),e.type("esds"),n),r.buffer}},{key:"avc1",value:function(t){var i=new oe,r=t.width,n=t.height,a=t.parRatio.width,s=t.parRatio.height,o=t.avcc,u=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,r>>8&255,255&r,n>>8&255,255&n,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]),l=new Uint8Array([0,28,156,128,0,45,198,192,0,45,198,192]),c=new Uint8Array([a>>24,a>>16&255,a>>8&255,255&a,s>>24,s>>16&255,s>>8&255,255&s]);return i.write(e.size(40+u.byteLength+o.byteLength+l.byteLength),e.type("avc1"),u,e.size(8+o.byteLength),e.type("avcC"),o,e.size(20),e.type("btrt"),l,e.size(16),e.type("pasp"),c),i.buffer}},{key:"hvc1vvc1",value:function(t){var i=new oe,r=[0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,t.width>>8&255,255&t.width,t.height>>8&255,255&t.height,0,72,0,0,0,72,0,0,0,0,0,0,0,1,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,0,0,0,0,0,0,24,17,17],n=!!t.vvcC,a=n?e.vvcC(t):e.hvcC(t),s=[e.type(n?"vvc1":"hvc1"),new Uint8Array(r)].concat(ue(a));t.parRatio&&s.push.apply(s,ue(e.pasp(t.parRatio)));var o=4+s.reduce((function(e,t){return e+t.byteLength}),0);return s.unshift(e.size(o)),i.write.apply(i,ue(s)),i.buffer}},{key:"hvcC",value:function(t){var i;if(t.hvcCConfigParsed){var r=t.hvcCConfigParsed,n=r.vpsArr,a=r.spsArr,s=r.ppsArr,o=r.hvcC,u=o.generalProfileCompatibilityFlags,l=o.generalConstraintIndicatorFlags,c=(n.length&&1)+(a.length&&1)+(s.length&&1);i=[1,o.generalProfileSpace<<6|o.generalTierFlag<<5|o.generalProfileIdc,u>>>24,u>>>16,u>>>8,u,l[0],l[1],l[2],l[3],l[4],l[5],o.generalLevelIdc,240,0,252,252|o.chromaFormatIdc,248|o.bitDepthLumaMinus8,248|o.bitDepthChromaMinus8,0,0,o.numTemporalLayers<<3|o.temporalIdNested<<2|3,c];var h=function(e){var t;i.push(e.length>>8,e.length),(t=i).push.apply(t,ue(e))};n.length&&(i.push(160,0,n.length),n.forEach(h)),a.length&&(i.push(161,0,a.length),a.forEach(h)),s.length&&(i.push(162,0,s.length),s.forEach(h))}else i=[1,1,96,0,0,0,144,0,0,0,0,0,93,240,0,252,253,248,248,0,0,15,3,160,0,1,0,24,64,1,12,1,255,255,1,96,0,0,3,0,144,0,0,3,0,0,3,0,93,153,152,9,161,0,1,0,45,66,1,1,1,96,0,0,3,0,144,0,0,3,0,0,3,0,93,160,2,128,128,45,22,89,153,164,147,43,154,128,128,128,130,0,0,3,0,2,0,0,3,0,50,16,162,0,1,0,7,68,1,193,114,180,98,64];return[e.size(8+i.length),e.type("hvcC"),new Uint8Array(i)]}},{key:"vvcC",value:function(t){var i=t.vvcC;return[e.size(8+i.byteLength),e.type("vvcC"),i]}},{key:"fiel",value:function(){return[e.size(10),e.type("fiel"),new Uint8Array([1,0])]}},{key:"pasp",value:function(t){if(t.width&&t.height){var i=t.width,r=t.height;return[e.size(16),e.type("pasp"),new Uint8Array([i>>24,i>>16&255,i>>8&255,255&i,r>>24,r>>16&255,r>>8&255,255&r])]}return[]}},{key:"stts",value:function(){var t=new Uint8Array([0,0,0,0,0,0,0,0]);return e.initBox(16,"stts",t)}},{key:"stsc",value:function(){var t=new Uint8Array([0,0,0,0,0,0,0,0]);return e.initBox(16,"stsc",t)}},{key:"stco",value:function(){var t=new Uint8Array([0,0,0,0,0,0,0,0]);return e.initBox(16,"stco",t)}},{key:"stsz",value:function(){var t=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]);return e.initBox(20,"stsz",t)}},{key:"mvex",value:function(t){var i=arguments.length>2?arguments[2]:void 0,r=new oe,n=oe.writeUint32(t);return r.write(e.size(56),e.type("mvex"),e.size(16),e.type("mehd"),e.extension(0,0),n,e.trex(i)),r.buffer}},{key:"trex",value:function(t){var i=new Uint8Array([0,0,0,0,t>>24,t>>16&255,t>>8&255,255&t,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]);return e.initBox(8+i.byteLength,"trex",i)}},{key:"moof",value:function(t){var i=8,r=e.mfhd(),n=e.traf(t);return[r,n].forEach((function(e){i+=e.byteLength})),e.initBox(i,"moof",r,n)}},{key:"mfhd",value:function(){var t=oe.writeUint32(e.sequence);return e.sequence+=1,e.initBox(16,"mfhd",e.extension(0,0),t)}},{key:"traf",value:function(t){var i=8,r=e.tfhd(t.id),n=e.tfdt(t.time),a=e.sdtp(t),s=e.trun(t,a.byteLength);return[r,n,s,a].forEach((function(e){i+=e.byteLength})),e.initBox(i,"traf",r,n,s,a)}},{key:"tfhd",value:function(t){var i=oe.writeUint32(t);return e.initBox(16,"tfhd",e.extension(0,0),i)}},{key:"tfdt",value:function(t){return e.initBox(16,"tfdt",e.extension(0,0),oe.writeUint32(t))}},{key:"trun",value:function(t,i){var r=new oe,n=oe.writeUint32(t.samples.length),a=oe.writeUint32(92+16*t.samples.length+i);return r.write(e.size(20+16*t.samples.length),e.type("trun"),new Uint8Array([0,0,15,1]),n,a),t.samples.forEach((function(e){var t=e.flags;r.write(new Uint8Array([e.duration>>>24&255,e.duration>>>16&255,e.duration>>>8&255,255&e.duration,e.size>>>24&255,e.size>>>16&255,e.size>>>8&255,255&e.size,t.isLeading<<2|t.dependsOn,t.isDependedOn<<6|t.hasRedundancy<<4|t.isNonSync,0,0,e.cts>>>24&255,e.cts>>>16&255,e.cts>>>8&255,255&e.cts]))})),r.buffer}},{key:"sdtp",value:function(t){var i=new oe;return i.write(e.size(12+t.samples.length),e.type("sdtp"),e.extension(0,0)),t.samples.forEach((function(e){var t=e.flags,r=t.isLeading<<6|t.dependsOn<<4|t.isDependedOn<<2|t.hasRedundancy;i.write(new Uint8Array([r]))})),i.buffer}},{key:"mdat",value:function(t){var i=new oe,r=8;t.samples.forEach((function(e){r+=e.size})),i.write(e.size(r),e.type("mdat"));var n=new Uint8Array(r),a=0;return n.set(i.buffer,a),a+=8,t.samples.forEach((function(e){e.buffer.forEach((function(e){n.set(e,a),a+=e.byteLength}))})),n}}],null&&ce(t.prototype,null),i&&ce(t,i),e}();he.type=function(e){return new Uint8Array([e.charCodeAt(0),e.charCodeAt(1),e.charCodeAt(2),e.charCodeAt(3)])},he.sequence=1;const de=he;function fe(e){return fe="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},fe(e)}function pe(e,t){for(var i=0;i0;){var h=r.shift(),d=h.isKeyframe,f=h.options;if(!this.isFirstVideo&&f&&f.meta){a=this.remuxInitSegment("video",f.meta),f.meta=null,r.unshift(h),f.isContinue||(this._videoDtsBase=0);break}var p=Math.max(0,h.dts-this.videoDtsBase);-1===n&&(n=p);var y=void 0,v=void 0;void 0!==h.pts&&(y=(v=h.pts-this._dtsBase)-p),void 0!==h.cts&&(v=h.cts+p,y=h.cts);var _,g={buffer:[],size:0};_=h.duration?h.duration:r.length>=1?r[0].dts-this.videoDtsBase-p:s.length>=1?s[s.length-1].duration:this._videoMeta.refSampleDuration,this.videoAllDuration+=_,P.long&&P.log(this.TAG,"video dts ".concat(p),"pts ".concat(v),"cts: ".concat(y),d,"originDts ".concat(h.originDts),"duration ".concat(_),c),_>=0&&(u.samples.push(g),g.buffer.push(h.data),g.size+=h.data.byteLength,s.push({dts:p,cts:y,pts:v,data:h.data,size:h.data.byteLength,isKeyframe:d,duration:_,flags:{isLeading:0,dependsOn:d||this.forceFirstIDR&&c?2:1,isDependedOn:d?1:0,hasRedundancy:0,isNonSync:d||this.forceFirstIDR&&c?0:1},originDts:p,type:"video"}),c=!1,this.mp4Durations[v]=_,this.mp4Durations.keys.push(v)),d&&this.emit(o.EVENTS.RANDOM_ACCESS_POINT,v)}if(this.mp4Durations.keys.length>1e4){var m=this.mp4Durations;this.mp4Durations={},this.mp4Durations.keys=m.keys.slice(-100),this.mp4Durations.keys.forEach((function(e){t.mp4Durations[e]=m[e]}))}s.length&&P.log(this.TAG,"remux to mp4 video:",[n/1e3,s[s.length-1].dts/1e3]);var E=new oe;if(s.length&&i.meta){var b=de.moof({id:i.meta.id,time:n,samples:s}),k=de.mdat(u);E.write(b,k),this.segmentRemuxed("video",E,s[s.length-1].pts-s[0].pts)}if(a&&(this.segmentRemuxed("video",a),r.length))return i.samples=r,this.remuxVideo(i);this.isFirstVideo=!1,this.emit(o.EVENTS.TRACK_REMUXED,"video",E),i.samples=[],i.length=0}}}},{key:"remuxAudio",value:function(e){var t=(e||{}).samples,i=-1,r=[],n=null,a={samples:[]};if(t&&t.length){for(var s=1e4,u=!1;t.length&&s-- >0;){var l=t.shift(),c=l.data,h=l.options;if(!this.isFirstAudio&&h&&h.meta){n=this.remuxInitSegment("audio",h.meta),h.meta=null,t.unshift(l),h.isContinue||(this._audioDtsBase=0);break}var d=Math.max(0,l.dts-this.audioDtsBase),f=l.originDts;u||(i=d,u=!0);var p;p=l.duration?l.duration:this._audioMeta.refSampleDurationFixed?this._audioMeta.refSampleDurationFixed:t.length>=1?t[0].dts-this.audioDtsBase-d:r.length>=1?r[r.length-1].duration:this._audioMeta.refSampleDuration,P.long&&P.log(this.TAG,"audio dts ".concat(d),"pts ".concat(d),"originDts ".concat(f),"duration ".concat(p)),this.audioAllDuration+=p;var y={dts:d,pts:d,cts:0,size:c.byteLength,duration:l.duration?l.duration:p,flags:{isLeading:0,dependsOn:1,isDependedOn:0,hasRedundancy:0,isNonSync:0},isKeyframe:!0,originDts:f,type:"audio"},v={buffer:[],size:0};p>=0&&(v.buffer.push(c),v.size+=c.byteLength,a.samples.push(v),r.push(y))}var _=new oe;if(r.length&&e.meta){P.log(this.TAG,"remux to mp4 audio:",[i/1e3,r[r.length-1].dts/1e3]);var g=de.moof({id:e.meta.id,time:i,samples:r}),m=de.mdat(a);_.write(g,m),this.segmentRemuxed("audio",_,r[r.length-1].dts-r[0].dts)}if(n&&(this.segmentRemuxed("audio",n),t.length))return e.samples=t,this.remuxAudio(e);this.isFirstAudio=!1,this.emit(o.EVENTS.TRACK_REMUXED,"audio",_),e.samples=[],e.length=0}}},{key:"segmentRemuxed",value:function(e,t,i){this.emit(o.EVENTS.MEDIA_SEGMENT,e,t,i)}},{key:"videoDtsBase",get:function(){return null!==this._videoDtsBase?this._videoDtsBase:this._dtsBase},set:function(e){this._videoDtsBase=e}},{key:"audioDtsBase",get:function(){return null!==this._audioDtsBase?this._audioDtsBase:this._dtsBase}}],r=[{key:"EVENTS",get:function(){return{MEDIA_SEGMENT:"MEDIA_SEGMENT",INIT_SEGMENT:"INIT_SEGMENT",RANDOM_ACCESS_POINT:"RANDOM_ACCESS_POINT",TRACK_REMUXED:"TRACK_REMUXED"}}}],i&&pe(t.prototype,i),r&&pe(t,r),o}(k());function ge(e,t){for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:0;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.TAG="Mp4Remuxer",this._curTime=t,this.remuxer||this.initRemuxer()}var t,i;return t=e,(i=[{key:"init",value:function(){this.on(me.REMUX_MEDIA,this.remux.bind(this)),this.on(me.REMUX_METADATA,this.onMetaDataReady.bind(this)),this.on(me.DETECT_CHANGE_STREAM,this.resetDtsBase.bind(this)),this.on(me.DETECT_FRAG_ID_DISCONTINUE,this.seek.bind(this)),this.on(Ee.SEEK,this.seek.bind(this))}},{key:"initRemuxer",value:function(){this.remuxer=new _e({audioMeta:null,videoMeta:null,curTime:this._curTime}),this.remuxer.on(_e.EVENTS.MEDIA_SEGMENT,this.writeToSource.bind(this)),this.remuxer.on(_e.EVENTS.TRACK_REMUXED,this.onTrackRemuxed.bind(this))}},{key:"remux",value:function(){if(this.remuxer)try{this.remuxer._videoMeta||(this.remuxer._videoMeta=this.videoMeta,this.remuxer._audioMeta=this.audioMeta);var e=this._context.getInstance("TRACKS"),t=e.audioTrack,i=e.videoTrack;this.remuxer.remux(t,i)}catch(e){this.emit(me.REMUX_ERROR,this.TAG,e)}}},{key:"resetDtsBase",value:function(){this.remuxer&&this.remuxer.resetDtsBase()}},{key:"seek",value:function(e){this.remuxer&&this.remuxer.seek(e)}},{key:"onMetaDataReady",value:function(e,t){var i;this.remuxer||this.initRemuxer(),i="audio"===e?this._context.getInstance("TRACKS").audioTrack:this._context.getInstance("TRACKS").videoTrack;var r=this._context.getInstance("PRE_SOURCE_BUFFER"),n=r.getSource(e);n||(n=r.createSource(e)),n.mimetype=i.meta.codec,n.init=this.remuxer.remuxInitSegment(e,i.meta),t&&this.writeToSource(e,n.init,0),this.emit(me.INIT_SEGMENT,e)}},{key:"onTrackRemuxed",value:function(e){this.emit(me.MEDIA_SEGMENT,e)}},{key:"writeToSource",value:function(e,t,i){var r=this._context.getInstance("PRE_SOURCE_BUFFER"),n=r.getSource(e);n||(n=r.createSource(e)),n.data.push(t),i&&(n.bufferDuration=i+(n.bufferDuration||0))}},{key:"videoMeta",get:function(){return this._context.getInstance("TRACKS").videoTrack.meta}},{key:"audioMeta",get:function(){return this._context.getInstance("TRACKS").audioTrack.meta}},{key:"destroy",value:function(){this.remuxer&&this.remuxer.destroy(),this.remuxer=null}}])&&ge(t.prototype,i),e}();function ke(e,t){for(var i=0;i1&&void 0!==arguments[1]?arguments[1]:"",r={duration:0};if(!t||!t.includes("#EXTM3U"))throw new Error("Invalid m3u8 file");var n=t.split(/\r|\n/);n=n.filter((function(e){return e}));var a=n.shift();if(!a.match("#EXTM3U"))throw new Error('Invalid m3u8 file: not "#EXTM3U"');a=n.shift();for(var s=!1,o=0;a;){var u=a.match(/#(.[A-Z|-]*):(.*)/),l=a.match(/#(.[A-Z|-]*)/);if(l&&u&&u.length>2)switch(u[1]){case"EXT-X-VERSION":r.version=parseInt(u[2]);break;case"EXT-X-MEDIA-SEQUENCE":r.sequence=parseInt(u[2]);break;case"EXT-X-TARGETDURATION":r.targetduration=parseFloat(u[2]);break;case"EXTINF":o=e.parseFrag(u,n,r,i,s,o),s=!1;break;case"EXT-X-KEY":e.parseDecrypt(u[2],r)}if(l&&l.length>1)switch(l[1]){case"EXT-X-DISCONTINUITY":s=!0;break;case"EXT-X-ENDLIST":r.frags[r.frags.length-1].isLast=!0,r.end=!0}a=n[o++]}return r}},{key:"parseFrag",value:function(t,i,r,n,a,s){r.frags||(r.frags=[]);var o=new Ae({start:r.duration,duration:parseInt(1e3*parseFloat(t[2]))});if(o.duration<200)return s;r.duration+=o.duration;var u=i[s++];if((u.match(/#(.*):(.*)/)||u.match(/^#/))&&(u=i[s++]),u.length>0&&"/"===u.charAt(0)&&n.match(/.*\/\/.*\.\w+/g)&&(n=n.match(/.*\/\/.*\.\w+/g)[0]),u.match(/.*:\/\/.*/)){var l=e.isHTTPS;!e.envisHttps&&!(e.envisHttps=l(window.location.href))||l(u)||(u=u.replace("http:","https:")),o.url=u}else o.url=n+u;if(o.discontinue=a,r.frags.length){var c=r.frags[r.frags.length-1];o.id=c.id+1,o.cc=a?c.cc+1:c.cc}else o.id=r.sequence||1,o.cc=0;return r.frags.push(o),s}},{key:"parseURL",value:function(e){var t="",i=e.match(/(.*\/).*\.m3u8/);if(i&&i.length>0)for(var r=0;rt.length&&(t=i[r]);return t}},{key:"parseDecrypt",value:function(e,t){t.encrypt={};var i=e.split(",");for(var r in i){var n=i[r];if(n.match(/METHOD=(.*)/)&&(t.encrypt.method=n.match(/METHOD=(.*)/)[1]),n.match(/URI="(.*)"/)&&(t.encrypt.uri=n.match(/URI="(.*)"/)[1]),n.match(/IV=0x(.*)/)){var a=n.match(/IV=0x(.*)/)[1],s=Math.ceil(a.length/2);t.encrypt.ivb=new Uint8Array(s);for(var o=s-1;o>=0;o--){var u=parseInt(a.substr(2*o,2),16);t.encrypt.ivb[o]=u}t.encrypt.iv=a}}}},{key:"isHTTPS",value:function(e){return/^https:\/\//i.test(e)}}],null&&Te(t.prototype,null),i&&Te(t,i),e}();function we(e){return we="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},we(e)}function De(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&Re(e,t)}function Re(e,t){return Re=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},Re(e,t)}function Le(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var i,r=Be(e);if(t){var n=Be(this).constructor;i=Reflect.construct(r,arguments,n)}else i=r.apply(this,arguments);return function(e,t){return!t||"object"!==we(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}(this,i)}}function Be(e){return Be=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},Be(e)}function Oe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Ce(e,t){for(var i=0;i0&&e.readByte(this.dataview,r)}},{key:"readUint8",value:function(){return e.readByte(this.dataview,1)}},{key:"readUint16",value:function(){return e.readByte(this.dataview,2)}},{key:"readUint24",value:function(){return e.readByte(this.dataview,3)}},{key:"readUint32",value:function(){return e.readByte(this.dataview,4)}},{key:"readUint64",value:function(){return e.readByte(this.dataview,8)}},{key:"readInt8",value:function(){return e.readByte(this.dataview,1,!0)}},{key:"readInt16",value:function(){return e.readByte(this.dataview,2,!0)}},{key:"readInt32",value:function(){return e.readByte(this.dataview,4,!0)}},{key:"writeUint32",value:function(e){return new Uint8Array([e>>>24&255,e>>>16&255,e>>>8&255,255&e])}}])&&Me(t.prototype,i),r&&Me(t,r),e}();function Fe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Ve(e,t){for(var i=0;i>>32-t;if(e>32)throw new Error("Cannot read more than 32 bits at a time");return this._currentWordBitsLeft-=t,this._currentWordBitsLeft>0?this._currentWord<<=t:this._totalBytes-this._bufferIndex>0&&this._fillCurrentWord(),(t=e-t)>0&&this._currentWordBitsLeft?i<>>e)return this._currentWord<<=e,this._currentWordBitsLeft-=e,e;return this._fillCurrentWord(),e+this._skipLeadingZero()}},{key:"readUEG",value:function(){var e=this._skipLeadingZero();return this.readBits(e+1)-1}},{key:"readSEG",value:function(){var e=this.readUEG();return 1&e?e+1>>>1:-1*(e>>>1)}},{key:"readSliceType",value:function(){return this.readByte(),this.readUEG(),this.readUEG()}}])&&qe(t.prototype,i),e}();function Ze(e,t){for(var i=0;i=2&&3===t[a]&&0===t[a-1]&&0===t[a-2]||(r[n]=t[a],n++);return new Uint8Array(r.buffer,0,n)}},{key:"parseSPS",value:function(t){var i=e._ebsp2rbsp(t),r=new Qe(i);r.readByte();var n=r.readByte();r.readByte();var a=r.readByte();r.readUEG();var s=e.getProfileString(n),o=e.getLevelString(a),u=1,l=420,c=8;if((100===n||110===n||122===n||244===n||44===n||83===n||86===n||118===n||128===n||138===n||144===n)&&(3===(u=r.readUEG())&&r.readBits(1),u<=3&&(l=[0,420,422,444][u]),c=r.readUEG()+8,r.readUEG(),r.readBits(1),r.readBool()))for(var h=3!==u?8:12,d=0;d0&&L<16?(A=[1,12,10,16,40,24,20,32,80,18,15,64,160,4,3,2][L-1],T=[1,11,11,11,33,11,11,11,33,11,11,33,99,3,2,1][L-1]):255===L&&(A=r.readByte()<<8|r.readByte(),T=r.readByte()<<8|r.readByte())}if(r.readBool()&&r.readBool(),r.readBool()&&(r.readBits(4),r.readBool()&&r.readBits(24)),r.readBool()&&(r.readUEG(),r.readUEG()),r.readBool()){var B=r.readBits(32),O=r.readBits(32);w=r.readBool(),S=(D=O)/(R=2*B)}}var C=1;1===A&&1===T||(C=A/T);var U=0,x=0;0===u?(U=1,x=2-g):(U=3===u?1:2,x=(1===u?2:1)*(2-g));var P=16*(v+1),I=16*(_+1)*(2-g);P-=(m+E)*U,I-=(b+k)*x;var M=Math.ceil(P*C);return r.destroy(),r=null,{profile_string:s,level_string:o,bit_depth:c,chroma_format:l,chroma_format_string:e.getChromaFormatString(l),frame_rate:{fixed:w,fps:S,fps_den:R,fps_num:D},par_ratio:{width:A,height:T},codec_size:{width:P,height:I},present_size:{width:M,height:I}}}},{key:"_skipScalingList",value:function(e,t){for(var i=8,r=8,n=0;n=1?tt.EBSP2SODB(tt.EBSP2RBSP(e.slice(1))):null}},{key:"parse",value:function(t){var i=e._resolveNalu(t),r=e.switchPayloadType(i),n=r.payloadType,a=r.offset,s=i.slice(a);return 5===n?e.user_data_unregistered(s):{code:n,content:s}}},{key:"switchPayloadType",value:function(e){for(var t=new DataView(e.buffer),i=0,r=0;255===t.getUint8(r);)r++,i+=255;return{payloadType:i+=t.getUint8(r++),offset:r}}},{key:"getPayloadLength",value:function(e){for(var t=new DataView(e.buffer),i=0,r=0;255===t.getUint8(r);)r++,i+=255;return{payloadLength:i+=t.getUint8(r++),offset:r}}},{key:"user_data_unregistered",value:function(t){var i=e.getPayloadLength(t),r=i.payloadLength,n=i.offset;if(r<16)return{uuid:"",content:null};var a=t.slice(n);return{code:5,uuid:rt(a.slice(0,16)),content:rt(a.slice(16,r))}}}],null&&it(t.prototype,null),i&&it(t,i),e}();function at(e,t){for(var i=0;i=r))break;var n=t.buffer.slice(t.position,t.position+4);t.skip(4);var a=new Uint8Array(t.buffer.slice(t.position,t.position+r));t.skip(r);var s={header:n,body:a};e.analyseNal(s),s.type<=9&&0!==s.type&&i.push(s)}return i}},{key:"analyseNal",value:function(e){var t=31&e.body[0];switch(e.type=t,t){case 1:e.ndr=!0;break;case 5:e.idr=!0;break;case 6:try{e.sei=nt.parse(e.body)}catch(e){}break;case 7:e.sps=Je.parseSPS(e.body);break;case 8:e.pps=!0}}},{key:"getHeaderPositionAnnexB",value:function(e){for(var t=e.position,i=0,r=e.length;3!==i&&4!==i&&t>>8&255,255&e.byteLength]),r),r+=2,i.set(e,r),i[r+=e.byteLength]=1,r++,i.set(new Uint8Array([t.byteLength>>>8&255,255&t.byteLength]),r),r+=2,i.set(t,r),i}}],null&&at(t.prototype,null),i&&at(t,i),e}();function ot(e,t){for(var i=0;i>>32-t;if(e>32)throw new Error("Cannot read more than 32 bits at a time");return this._currentWordBitsLeft-=t,this._currentWordBitsLeft>0?this._currentWord<<=t:this._totalBytes-this._bufferIndex>0&&this._fillCurrentWord(),(t=e-t)>0&&this._currentWordBitsLeft?i<>>e)return this._currentWord<<=e,this._currentWordBitsLeft-=e,e;return this._fillCurrentWord(),e+this._skipLeadingZero()}},{key:"readUEG",value:function(){var e=this._skipLeadingZero();return this.readBits(e+1)-1}},{key:"readSEG",value:function(){var e=this.readUEG();return 1&e?e+1>>>1:-1*(e>>>1)}},{key:"readSliceType",value:function(){return this.readByte(),this.readUEG(),this.readUEG()}}])&&ot(t.prototype,i),e}();function lt(e,t){for(var i=0;i=2&&3===t[a]&&0===t[a-1]&&0===t[a-2]||(r[n]=t[a],n++);return new Uint8Array(r.buffer,0,n)}},{key:"parseSPS",value:function(t){var i,r,n,a,s,o,u=e._ebsp2rbsp(t),l=new ut(u),c=0,h=0,d=0,f=0,p=0,y=0,v=0,_=0,g=0;return l.readByte(),l.readByte(),l.readBits(4),i=l.readBits(3),l.readBits(1),o=e._readProfileTierLevel(l,i),l.readUEG(),3===(r=l.readUEG())&&(c=l.readBits(1)),h=l.readUEG(),d=l.readUEG(),1===(n=l.readBits(1))&&(f=l.readUEG(),p=l.readUEG(),y=l.readUEG(),v=l.readUEG()),a=l.readUEG(),s=l.readUEG(),1===n&&(h-=(_=1!==r&&2!==r||0!==c?1:2)*p+_*f,d-=(g=1===r&&0===c?2:1)*v+g*y),l.destroy(),l=null,{width:h,height:d,general_profile_space:o.general_profile_space,general_tier_flag:o.general_tier_flag,general_profile_idc:o.general_profile_idc,general_level_idc:o.general_level_idc,chromaFormatIdc:r,bitDepthLumaMinus8:a,bitDepthChromaMinus8:s}}},{key:"_readProfileTierLevel",value:function(e,t){var i,r,n,a;i=e.readBits(2)||0,r=e.readBits(1)||0,n=e.readBits(5)||0,e.readBits(16),e.readBits(16),e.readBits(1),e.readBits(1),e.readBits(1),e.readBits(1),e.readBits(16),e.readBits(16),e.readBits(12),a=e.readBits(8)||0;for(var s=[],o=[],u=0;u0&&e.readBits(2*(8-t));for(var l=0;l=1?ft.EBSP2SODB(ft.EBSP2RBSP(e.slice(1))):null}},{key:"parse",value:function(t){var i=e._resolveNalu(t),r=e.switchPayloadType(i),n=r.payloadType,a=r.offset,s=i.slice(a);return 5===n?e.user_data_unregistered(s):{code:n,content:s}}},{key:"switchPayloadType",value:function(e){for(var t=new DataView(e.buffer),i=0,r=0;255===t.getUint8(r);)r++,i+=255;return{payloadType:i+=t.getUint8(r++),offset:r}}},{key:"getPayloadLength",value:function(e){for(var t=new DataView(e.buffer),i=0,r=0;255===t.getUint8(r);)r++,i+=255;return{payloadLength:i+=t.getUint8(r++),offset:r}}},{key:"user_data_unregistered",value:function(t){var i=e.getPayloadLength(t),r=i.payloadLength,n=i.offset;if(r<16)return{uuid:"",content:null};var a=t.slice(n);return{code:5,uuid:yt(a.slice(0,16)),content:yt(a.slice(16,r))}}}],null&&pt(t.prototype,null),i&&pt(t,i),e}();function _t(e,t){for(var i=0;i=r))break;var n=t.buffer.slice(t.position,t.position+4);t.skip(4);var a=new Uint8Array(t.buffer.slice(t.position,t.position+r));t.skip(r);var s={header:n,body:a};try{e.analyseNal(s)}catch(e){continue}s.type<=40&&i.push(s)}return i}},{key:"analyseNal",value:function(e){var t=e.body[0]>>>1&63;switch(e.type=t,t){case 0:e.slice_trail_n=!0;break;case 1:e.slice_trail_r=!0;break;case 2:e.slice_tsa_n=!0;break;case 3:e.slice_tsa_r=!0,e.key=!0;break;case 4:e.slice_stsa_n=!0;break;case 5:e.slice_stsa_r=!0,e.key=!0;break;case 6:e.slice_radl_n=!0;break;case 7:e.slice_radl_r=!0,e.key=!0;break;case 8:e.slice_rasl_n=!0;break;case 9:e.slice_rasl_r=!0,e.key=!0;break;case 16:e.slice_bla_w_lp=!0;break;case 17:e.slice_bla_w_radl=!0;break;case 18:e.slice_bla_n_lp=!0;break;case 19:e.slice_idl_w_radl=!0,e.key=!0;break;case 20:e.slice_idr_n_lp=!0,e.key=!0;break;case 21:e.slice_cra_nut=!0,e.key=!0;break;case 32:e.vps=!0;break;case 33:e.sps=ht.parseSPS(e.body);break;case 34:e.pps=!0;break;case 35:default:break;case 36:e.aud=!0;break;case 37:e.eob=!0;break;case 38:e.fd=!0;break;case 39:try{e.sei=vt.parse(e.body.slice(1))}catch(e){}break;case 40:e.sei=vt.parse(e.body.slice(1))}}},{key:"getHeaderPositionAnnexB",value:function(e){for(var t=e.position,i=0,r=e.length;3!==i&&4!==i&&t>>5}},{key:"parseFrameHeader",value:function(t,i,r,n,a){var s,o,u=t.length;if(s=e.getHeaderLength(t,i),o=e.getFullFrameLength(t,i),(o-=s)>0&&i+s+o<=u)return{headerLength:s,frameLength:o,stamp:r+n*a}}},{key:"appendFrame",value:function(t,i,r,n,a){var s=e.getFrameDuration(t),o=e.parseFrameHeader(i,r,n,a,s);if(o){var u=o.stamp,l=o.headerLength,c=o.frameLength;return{sample:{unit:i.subarray(r+l,r+l+c),pts:u,dts:u},length:c+l}}}}],null&&mt(t.prototype,null),i&&mt(t,i),e}();function bt(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,r=new Array(t);i=1&&71!==t.array[0][t.offset];)t.shift(1);if(!(t.length<188)){var a=t.shift(188),s=new Ge(a.buffer),u={};o.read(s,u,r);var l=n[u.header.pid];u.pes?(u.pes.codec=u.header.codec,u.pes.streamType=u.header.streamType,n[u.header.pid]||(n[u.header.pid]=[]),n[u.header.pid].push(u.pes),u.pes.ES.buffer=[u.pes.ES.buffer]):l&&l[l.length-1].ES.buffer.push(u.payload.stream)}}for(var c=Object.assign({},e),h=Object.assign({},e),d=i&&this._hasVideoMeta&&!this._hasAudioMeta,f=i&&this._hasAudioMeta&&!this._hasVideoMeta,p=0;p=9)){var E=m.body.byteLength;m.idr&&(_=!0),m.pps||m.sps||m.sei||(y.set(new Uint8Array([E>>>24&255,E>>>16&255,E>>>8&255,255&E]),v),v+=4,y.set(m.body,v),v+=E)}}var b=parseInt(e.dts/90),k=parseInt(e.pts/90);l.length&&l.forEach((function(e){e.dts=b,i.emit(o.EVENTS.SEI_PARSED,e)}));var A=new Ke({dts:b,pts:k,cts:k-b,originDts:e.dts,purePts:e.purePts,isKeyframe:_,data:y,nals:r,options:t,firstInGop:_,gopId:_?++this.gopId:this.gopId});this.emit(o.EVENTS.VIDEO_SAMPLE_PARSED,A)}},{key:"pushVideoSampleHEVC",value:function(e,t){var i=this,r=Dt.getNalunits(e.ES.buffer);r=r.filter((function(e){return e.body&&e.body.length}));var n=new He;n.streamType=36;for(var a=0,s=!1,u=!1,l=!1,c=[],h=!1,d=!1,f=!1,p=!1,y=0;y40)){if(k.vps){if(h)continue;h=!0}else if(k.sps){if(d)continue;d=!0}else if(k.pps){if(f)continue;f=!0}else if(k.key);else if(0===k.type);else if(35===k.type)continue;var A=k.body.byteLength;k.key&&(E=!0),g.set(new Uint8Array([A>>>24&255,A>>>16&255,A>>>8&255,255&A]),m),m+=4,g.set(k.body,m),m+=A}}var T=parseInt(e.dts/90),S=parseInt(e.pts/90);c&&c.forEach((function(e){e.dts=T,i.emit(o.EVENTS.SEI_PARSED,e)}));var w=new Ke({dts:T,pts:S,cts:S-T,originDts:e.dts,purePts:e.purePts,isKeyframe:E,data:g,nals:r,options:t,firstInGop:p,gopId:p?++this.gopId:this.gopId});this.emit(o.EVENTS.VIDEO_SAMPLE_PARSED,w)}},{key:"destroy",value:function(){this.removeAllListeners(),this.configs={},this.demuxing=!1,this.pat=[],this.pmt=[],this._hasVideoMeta=!1,this._hasAudioMeta=!1}}],r=[{key:"EVENTS",get:function(){return{DEMUX_COMPLETE:"DEMUX_COMPLETE",METADATA_PARSED:"METADATA_PARSED",VIDEO_SAMPLE_PARSED:"VIDEO_SAMPLE_PARSED",AUDIO_SAMPLE_PARSED:"AUDIO_SAMPLES_PARSED",SEI_PARSED:"SEI_PARSED"}}},{key:"compareArray",value:function(e,t,i){var r=0,n=0;if("Uint8Array"===i?(r=e.byteLength,n=t.byteLength):"Array"===i&&(r=e.length,n=t.length),r!==n)return!1;for(var a=0;a0){var h=u[0].streamType;o.Media(e,t,h)}else t.unknownPIDs=!0}}}},{key:"readHeader",value:function(e,t){var i={};i.sync=e.readUint8();var r=e.readUint16();i.error=r>>>15,i.payload=r>>>14&1,i.priority=r>>>13&1,i.pid=8191&r,r=e.readUint8(),i.scrambling=r>>6&3,i.adaptation=r>>4&3,i.continuity=15&r,i.packet=0===i.pid?"PAT":"MEDIA",t.header=i}},{key:"PAT",value:function(e,t,i){var r={},n=e.readUint8();e.skip(n),n=e.readUint8(),r.tabelID=n,n=e.readUint16(),r.error=n>>>7,r.zero=n>>>6&1,r.sectionLength=4095&n,r.streamID=e.readUint16(),r.current=1&e.readUint8(),r.sectionNumber=e.readUint8(),r.lastSectionNumber=e.readUint8();for(var a=(r.sectionLength-9)/4,s=[],o=0;o0&&(i.pat=i.pat.concat(s)),r.list=s,r.program=e.readUint16(),r.pid=8191&e.readUint16(),t.payload=r}},{key:"PMT",value:function(e,t,i){t.header.packet="PMT";var r=e.position;r+=e.getUint8(r);var n=(r+=1)+3+((15&e.getUint8(r+1))<<8|e.getUint8(r+2))-4;r+=12+((15&e.getUint8(r+10))<<8|e.getUint8(r+11));for(var a=[];r0)){var u=e.readUint8();n.discontinue=u>>>7,n.access=u>>>6&1,n.priority=u>>>5&1,n.PCR=u>>>4&1,n.OPCR=u>>>3&1,n.splicePoint=u>>>2&1,n.transportPrivate=u>>>1&1,n.adaptationField=1&u;var l=e.position;if(1===n.PCR&&(n.programClockBase=e.readUint32()<<1,u=e.readUint16(),n.programClockBase|=u>>>15,n.programClockExtension=511&u),1===n.OPCR&&(n.originProgramClockBase=e.readUint32()<<1,u=e.readUint16(),n.originProgramClockBase+=u>>>15,n.originProgramClockExtension=511&u),1===n.splicePoint&&(n.spliceCountdown=e.readUint8()),1===n.transportPrivate)for(var c=e.readUint8(),h=[],d=0;d>>6&1,_=p>>>5&1;1==p>>>7&&(p=e.readUint16(),n.ltwValid=p>>>15,n.ltwOffset=61439&p),1===v&&(p=e.readUint24(),n.piecewiseRate=4194303&p),1===_&&(p=e.readInt8(),n.spliceType=p>>>4,n.dtsNextAU1=p>>>1&7,n.marker1=1&p,p=e.readUint16(),n.dtsNextAU2=p>>>1,n.marker2=1&p,p=e.readUint16(),n.dtsNextAU3=p),e.skip(f-1-(e.position-y))}var g=n.adaptationLength-1-(e.position-l);e.skip(g)}n.stream=new Ge(e.buffer.slice(e.position)),t.payload=n}},{key:"PES",value:function(e){var t={},i=e.payload.stream;if(1!==i.readUint24())t.ES={},t.ES.buffer=i;else{var r=i.readUint8();r>=224&&r<=239&&(t.type="video"),r>=192&&r<=223&&(t.type="audio");var n=i.readUint16();if(t.packetLength=n,"video"!==t.type&&"audio"!==t.type)throw new Error("format is not supported");var a=i.readUint8();if(2!=a>>>6)throw new Error("error when parse pes header");a=i.readUint8(),t.ptsDTSFlag=a>>>6,t.escrFlag=a>>>5&1,t.esRateFlag=a>>>4&1,t.dsmFlag=a>>>3&1,t.additionalFlag=a>>>2&1,t.crcFlag=a>>>1&1,t.extensionFlag=1&a,t.pesHeaderLength=i.readUint8();var s=t.pesHeaderLength,u=[];u.push(i.readUint8()),u.push(i.readUint8()),u.push(i.readUint8()),u.push(i.readUint8()),u.push(i.readUint8());var l=536870912*(14&u[0])+4194304*(255&u[1])+16384*(254&u[2])+128*(255&u[3])+(254&u[4])/2;if(t.purePts=l,i.dataview.position-=5,u=[],a=i.readUint8(),u.push(a>>>1&7),a=i.readUint16(),u.push(a>>>1),a=i.readUint16(),u.push(a>>>1),t.pts=u[0]<<30|u[1]<<15|u[2],s-=5,"video"===t.type&&(t.dts=t.pts),3===t.ptsDTSFlag){var c=[];a=i.readUint8(),c.push(a>>>1&7),a=i.readUint16(),c.push(a>>>1),a=i.readUint16(),c.push(a>>>1),t.dts=c[0]<<30|c[1]<<15|c[2],s-=5}if(1===t.escrFlag){var h=[],d=[];a=i.readUint8(),h.push(a>>>3&7),h.push(3&a),a=i.readUint16(),h.push(a>>>13),h.push(3&a),a=i.readUint16(),h.push(a>>>13),d.push(3&a),a=i.readUint8(),d.push(a>>>1),t.escr=300*(h[0]<<30|h[1]<<28|h[2]<<15|h[3]<<13|h[4])+(d[0]<<7|d[1]),s-=6}if(1===t.esRateFlag&&(a=i.readUint24(),t.esRate=a>>>1&4194303,s-=3),1===t.dsmFlag)throw new Error("not support DSM_trick_mode");if(1===t.additionalFlag&&(a=i.readUint8(),t.additionalCopyInfo=127&a,s-=1),1===t.crcFlag&&(t.pesCRC=i.readUint16(),s-=2),1===t.extensionFlag)throw new Error("not support extension");s>0&&i.skip(s),t.dts>t.pts&&(t.dts=t.pts),t.ES=o.ES(i,t.type,e.header.streamType)}return t}},{key:"ES",value:function(e,t,i){var r={};if("video"===t)r.buffer=e;else{if("audio"!==t)throw new Error("ES ".concat(t," is not supported"));15!==i&&17!==i||(r=o.parseADTSHeader(e)),r.buffer=e}return r}},{key:"parseADTSHeader",value:function(e){var t={},i=e.readUint16();if(i>>>4!=4095)throw new Error("aac ES parse Error");return t.id=i>>>3&1?"MPEG-2":"MPEG-4",t.layer=i>>>1&3,t.absent=1&i,i=e.readUint16(),t.audioObjectType=1+(i>>>14&3),t.profile=t.audioObjectType-1,t.frequencyIndex=i>>>10&15,t.frequence=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350][t.frequencyIndex],t.channel=i>>>6&7,t.frameLength=(3&i)<<11|e.readUint16()>>>5,o.getAudioConfig(t),e.skip(1),t.buffer=e,t}},{key:"TSDT",value:function(e,t,i){t.payload={}}},{key:"CAT",value:function(e,t,i){var r={};r.tableID=e.readUint8();var n=e.readUint16();r.sectionIndicator=n>>>7,r.sectionLength=4095&n,e.skip(2),n=e.readUint8(),r.version=n>>>3,r.currentNextIndicator=1&n,r.sectionNumber=e.readUint8(),r.lastSectionNumber=e.readUint8();for(var a=(this.sectionLength-9)/4,s=[],o=0;o=8?(e.audioObjectType=5,t=new Array(4),i=e.frequencyIndex-3):(e.audioObjectType=2,t=new Array(2),i=e.frequencyIndex):-1!==r.indexOf("android")?(e.audioObjectType=2,t=new Array(2),i=e.frequencyIndex):(e.audioObjectType=5,t=new Array(4),e.frequencyIndex>=6?i=e.frequencyIndex-3:(1===e.channel&&(e.audioObjectType=2,t=new Array(2)),i=e.frequencyIndex)),t[0]=e.audioObjectType<<3,t[0]|=(14&e.frequencyIndex)>>1,t[1]=(1&e.frequencyIndex)<<7,t[1]|=e.channel<<3,5===e.audioObjectType&&(t[1]|=(14&i)>>1,t[2]=(1&i)<<7,t[2]|=8,t[3]=0),e.audioConfig=t}}],i&&At(t.prototype,i),r&&At(t,r),o}(k());const Bt=Lt;function Ot(e,t){for(var i=0;ie.length)&&(t=e.length);for(var i=0,r=new Array(t);i0&&!Number.isNaN(e)}},{key:"findFirstAudioSample",value:function(t){return t&&0!==t.length?e.sortAudioSamples(t)[0]:null}},{key:"findFirstVideoSample",value:function(e){if(!e.length)return null;for(var t=Mt(e).sort((function(e,t){return e.dts-t.dts})),i=0,r=t.length;i=1e3||t-e>=1e3}},{key:"detectAudioLargeGap",value:function(e,t){if(null!==e)return e-t>=1e3||t-e>=1e3}},{key:"doFixLargeGap",value:function(e,t){for(var i=0,r=e.length;i2*a.refSampleDuration&&h<10*a.refSampleDuration){for(var d=Math.floor(h/a.refSampleDuration),f=0;f2*a.refSampleDuration&&!this._videoLargeGap&&(this._videoLargeGap=-1*h,e.doFixLargeGap(n,-1*h))}for(var y=n.length,v=1;v1e4&&(_.dts=g.dts+a.refSampleDuration,_.pts=g.pts+a.refSampleDuration)}var E=n.pop();if(n.length&&(n[n.length-1].duration=E.dts-n[n.length-1].dts),y<4){var b=n[n.length-1],k=(b=b||E).options&&b.options.duration,A=a.refSampleDuration;if(k&&A&&k/A>5)for(var T=b.pts,S=b.dts,w=0;w<3;w++){S+=A,T+=A;var D=Object.assign({},b,{dts:S,pts:T});2===w&&(D.duration=k),n.push(D)}E=null}if(this.videoLastSample){var R=this.videoLastSample;R.duration=l.dts-R.dts,n.unshift(this.videoLastSample)}this.videoLastSample=E,n[n.length-1]&&(this.lastVideoDts=n[n.length-1].dts),this.videoTrack.samples=n}}},{key:"_appendSampleForLastSegment",value:function(e){e&&this.videoLastSample&&this.videoTrack.samples.push(this.videoLastSample)}},{key:"doFixAudio",value:function(t,i){var r=this,n=this.audioTrack,a=n.samples,s=n.meta;if(a&&a.length){this.fixAudioRefSampleDuration(s);for(var o=0,u=a.length;os.refSampleDuration&&g<10*s.refSampleDuration){for(var m=Math.floor((p.dts-_)/s.refSampleDuration),E=0;E=f&&c<1e4&&d){for(var T=Math.ceil(c/f),S=0;Sthis.nextAudioDts?w:this.nextAudioDts,pts:w>this.nextAudioDts?w:this.nextAudioDts,datasize:d.byteLength,filtered:0,data:d};this.filledAudioSamples.push({dts:D.dts,size:D.data.byteLength}),this.audioTrack.samples.unshift(D),y=D}this.emit(Vt.DETECT_AUDIO_GAP,c,T)}else A0?(y.dts=this.nextAudioDts,y.pts=this.nextAudioDts):c<0&&A=10*f){var C=Math.round(O/f);if(C>1e3)break;P.warn(this.TAG,"inject ".concat(C," audio frame for ").concat(O," ms gap"));for(var U=0;U=1&&(e.duration+=1,r.audioUnsyncTime-=1)}));var M=a[a.length-1];this.lastAudioDts=M.dts;var G=M.duration;this.lastAudioSamplesLen=h,this.nextAudioDts=this.lastAudioDts+(G||f),this.lastAudioOriginDts=M.originDts,this.audioTrack.samples=e.sortAudioSamples(a)}}},{key:"fixChangeStreamVideo",value:function(e){P.log(this.TAG,"fixChangeStreamVideo(), changeIdx=",e);var t=this.videoTrack.samples,i=0===e?this.lastVideoDts?this.lastVideoDts:this.getStreamChangeStart(t[0]):t[e-1].dts,r=t[e].dts,n=Math.abs(i-r)<=1e4;if(this.emit(Vt.DETECT_CHANGE_STREAM,"video",r),n)return t[e].options?t[e].options.isContinue=!0:t[e].options={isContinue:!0},!1;this.emit(Vt.DETECT_CHANGE_STREAM_DISCONTINUE,"video",{prevDts:i,curDts:r});var a,s=t.slice(0,e),o=t.slice(e),u=t[e];return this._videoLargeGap=0,this.videoLastSample=null,this.lastVideoDts=null,a=u.options&&void 0!==u.options.start?u.options.start:i-this.videoDtsBase,this.videoTrack.samples=t.slice(0,e),this.doFixVideo(!1),this.videoTrack.samples=t.slice(e),this.doFixVideo(!1,a),this.videoTrack.samples=s.concat(o),!0}},{key:"fixChangeStreamAudio",value:function(e){P.log(this.TAG,"fixChangeStreamAudio(), changeIdx=",e);var t=this.audioTrack.samples,i=0===e?this.lastAudioDts:t[e-1].dts,r=t[e].dts,n=Math.abs(i-r)<=1e4;if(this.emit(Vt.DETECT_CHANGE_STREAM,"audio",r),n)return t[e].options?t[e].options.isContinue=!0:t[e].options={isContinue:!0},!1;this.emit(Vt.DETECT_CHANGE_STREAM_DISCONTINUE,"audio",{prevDts:i,curDts:r}),this._audioLargeGap=0;var a=this.nextAudioDts;this.nextAudioDts=null;var s,o=t.slice(0,e),u=t.slice(e),l=t[e];return l.options&&void 0!==l.options.start?s=l.options.start:(s=a,l.options.isContinue=!0),this.audioTrack.samples=o,this.doFixAudio(!1),this.audioTrack.samples=u,this.doFixAudio(!1,s),this.audioTrack.samples=o.concat(u),!0}},{key:"getFirstSample",value:function(){var t=this.videoTrack.samples,i=this.audioTrack.samples,r=!1,n=!1;return!this._firstVideoSample&&t.length&&(this._firstVideoSample=e.findFirstVideoSample(t),this.removeInvalidSamples(),r=!0),!this._firstAudioSample&&i.length&&(this._firstAudioSample=e.findFirstAudioSample(i),this.removeInvalidSamples(),n=!0),{isFirstVideoSamples:r,isFirstAudioSamples:n}}},{key:"fixVideoRefSampleDuration",value:function(t,i){if(t){var r=this.allVideoSamplesCount,n=this._firstVideoSample.dts,a=this.filledVideoSamples.length;if(e.isRefSampleDurationValid(t.refSampleDuration)){if(t.refSampleDuration&&i.length>=5){var s=(i[i.length-1].dts-i[0].dts)/(i.length-1);if(s>0&&s<1e3){var o=Math.floor(Math.abs(t.refSampleDuration-s)<=5?t.refSampleDuration:s);e.isRefSampleDurationValid(o)&&(t.refSampleDuration=o)}}}else if(i.length>=1){var u=i[i.length-1].dts,l=Math.floor((u-n)/(r+a-1));e.isRefSampleDurationValid(l)&&(t.refSampleDuration=l)}e.isRefSampleDurationValid(t.refSampleDuration)||(t.refSampleDuration=66)}}},{key:"fixAudioRefSampleDuration",value:function(e){e&&(e.refSampleDuration=1024*e.timescale/e.sampleRate)}},{key:"recordSamplesCount",value:function(){var e=this.audioTrack,t=this.videoTrack;this.allAudioSamplesCount+=e.samples.length,this.allVideoSamplesCount+=t.samples.length}},{key:"removeInvalidSamples",value:function(){var e=this.audioTrack.samples[0],t=this.videoTrack.samples[0];e&&(this.audioTrack.samples=this.audioTrack.samples.filter((function(t,i){return t===e||t.dts>=e.dts}))),t&&(this.videoTrack.samples=this.videoTrack.samples.filter((function(e,i){return e===t||e.dts>=t.dts})))}},{key:"getStreamChangeStart",value:function(e){return e.options&&e.options.start?e.options.start-this.dtsBase:1/0}},{key:"tracks",get:function(){return this._context.getInstance("TRACKS")}},{key:"audioTrack",get:function(){return this.tracks&&this.tracks.audioTrack?this.tracks.audioTrack:{samples:[],meta:{}}}},{key:"videoTrack",get:function(){return this.tracks&&this.tracks.videoTrack?this.tracks.videoTrack:{samples:[],meta:{}}}},{key:"dtsBase",get:function(){var e=this._context.getInstance("MP4_REMUXER");return e?e._dtsBase:0}},{key:"audioDtsBase",get:function(){var e=this._context.getInstance("MP4_REMUXER");return e&&null!==e._audioDtsBase?e._audioDtsBase:this.dtsBase}},{key:"videoDtsBase",get:function(){var e=this._context.getInstance("MP4_REMUXER");return e&&null!==e._videoDtsBase?e._videoDtsBase:this.dtsBase}}])&&Ft(t.prototype,i),r&&Ft(t,r),e}();function jt(e,t){for(var i=0;i0&&e>0;){if(this.offset+ethis._lastget.time&&(this._lastget={duration:this._ts[e].duration,time:this._ts[e].start,downloaded:!1,downloading:!1,url:e,id:this._ts[e].id}),delete this._list[this._ts[e].start],delete this._ts[e],this.fragLength-=1)}},{key:"_calcAvgFrgmentDuration",value:function(e){if(!e.frags)return e.targetduration;var t=e.frags.length;return Math.floor(e.duration/t/1e3)}},{key:"pushM3U8",value:function(e,t){if(!e)throw new Error("No m3u8 data received.");if(this.version=e.version,this.targetduration=e.targetduration,this._avgSegmentDuration=Math.min(this.targetduration,this._calcAvgFrgmentDuration(e)),e.encrypt&&!this.encrypt&&(this.encrypt=e.encrypt),this.end=e.end||!1,e.sequence||(e.sequence=0),!(e.sequence>this.sequence))throw new Error("Old m3u8 file received, ".concat(e.sequence));var i=e.frags.length;this.logger&&this.logger.log("PLAYLIST","new playlist [".concat(e.sequence,", ").concat(e.sequence+i-1,"]")),this.sequence=e.sequence;for(var r=[],n=0;n=this.duration)){i=i.sort((function(e,t){return parseFloat(e)-parseFloat(t)}));for(var r=0;r=parseInt(i[r]);r++){var n=this._list[i[r]];t={url:n,downloaded:this._ts[n].downloaded,downloading:this._ts[n].downloading,time:parseInt(i[r]),duration:parseInt(this._ts[n].duration),id:this._ts[n].id,cc:this._ts[n].cc,isLast:this._ts[n].isLast},this.autoclear&&this._lastget&&(delete this._ts[this._lastget.url],delete this._list[this._lastget.time]),this._lastget=t}return t&&this.downloadedUrls.push(t.url),t}}},{key:"getLastDownloadedTs",value:function(){for(var e,t=Object.keys(this._list).sort((function(e,t){return Number(e)-Number(t)})),i=0;i0?(this.retrytimes--,this._preload()):(this.emit(ii.RETRY_TIME_EXCEEDED),this.mse.endOfStream()));try{this._playlist.pushM3U8(u,!0)}catch(e){this._onError("M3U8_PARSER_ERROR","PLAYLIST",e,!1)}if(this._playlist.encrypt&&this._playlist.encrypt.uri&&!this._playlist.encrypt.key){this._context.registry("DECRYPT_BUFFER",r)(),this._context.registry("KEY_BUFFER",r)(),this._tsloader.buffer="DECRYPT_BUFFER",this._keyLoader=this._context.registry("KEY_LOADER",o)({buffer:"KEY_BUFFER",readtype:3});var h=this._player.config.retry||{},d=h.count,f=h.delay,p=void 0===d?this._pluginConfig.retryCount:d,y=void 0===f?this._pluginConfig.retryDelay:f;this.emitTo("KEY_LOADER",Jt.LADER_START,this._playlist.encrypt.uri,{},{retryCount:p,retryDelay:y,loadTimeout:this._pluginConfig.loadTimeout})}else this._m3u8Loaded(u)}else if("TS_BUFFER"===e.TAG){this.retrytimes=this._pluginConfig.retrytimes||3,this._playlist.downloaded(this._tsloader.url,!0);var v=Object.assign({url:this._tsloader.url},this._playlist._ts[this._tsloader.url]);this._downloadedFragmentQueue.push(v),0!==this._player.buffered.length&&1!==this._downloadedFragmentQueue.length||this.emit(ti.DEMUX_START,v,this._playlist.end)}else"DECRYPT_BUFFER"===e.TAG?(this.retrytimes=this._pluginConfig.retrytimes||3,this._playlist.downloaded(this._tsloader.url,!0),this.emitTo("CRYPTO",ri.START_DECRYPTO)):"KEY_BUFFER"===e.TAG&&(this.retrytimes=this._pluginConfig.retrytimes||3,this._playlist.encrypt.key=e.shift(),this._crypto=this._context.registry("CRYPTO",s)({key:this._playlist.encrypt.key,iv:this._playlist.encrypt.ivb,method:this._playlist.encrypt.method,inputbuffer:"DECRYPT_BUFFER",outputbuffer:"TS_BUFFER"}),this._crypto.on(ri.DECRYPTED,this._onDcripted.bind(this)))}},{key:"_handleFetchRetry",value:function(e,t){this._player.emit("retry",Object.assign({tag:e},t))}},{key:"_onDcripted",value:function(){this.emit(ti.DEMUX_START)}},{key:"_m3u8Loaded",value:function(){this.m3u8FlushDuration=this._playlist.avgSegmentDuration||this.m3u8FlushDuration,this.preloadTime||(this.preloadTime=this._playlist.targetduration?this._playlist.targetduration:5)}},{key:"_checkStatus",value:function(){var e,t=null===(e=this._player)||void 0===e?void 0:e.video;if(t){if(!t.buffered.length||!t.paused)if(t.buffered.length<1)this._preload();else{var i=t.currentTime,r=t.buffered.end(t.buffered.length-1);ithis.m3u8FlushDuration&&(this._m3u8lasttime=u,this.emitTo("M3U8_LOADER",Jt.LADER_START,this.url,o,{retryCount:n,retryDelay:a,loadTimeout:this._pluginConfig.loadTimeout}))}}},{key:"_handleSourceUpdateEnd",value:function(){if(this._playlist.end){var e=this._playlist.list,t=e[Object.keys(e).map((function(e){return Number(e)})).sort((function(e,t){return e>t?1:-1})).pop()],i=this._playlist._ts[t];i&&i.downloaded&&(P.warn(this.TAG,"直播结束,断流"),this.mse.endOfStream())}}},{key:"_logDownSegment",value:function(e){e&&(P.groupEnd(),P.group(this.TAG,"load ".concat(e.id,": [").concat(e.time/1e3," , ").concat((e.time+e.duration)/1e3,"], downloading: ").concat(e.downloading," , donwloaded: ").concat(e.downloaded)))}},{key:"load",value:function(e){this.baseurl=this._pluginConfig.M3U8Parser.parseURL(e),this.url=e,this._playlist.resetSequence(),this._preload()}},{key:"destroy",value:function(){this._timmer&&clearInterval(this._timmer),this._player&&(this._player.off("waiting",this._onWaiting),this._player.off("ended",this._onEnded)),this.mse=null,this.m3u8Text=null}}],i&&$t(t.prototype,i),e}();const oi=si;function ui(e){return ui="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ui(e)}function li(e,t){for(var i=0;i0?(this.retryTimes--,this._preload()):(this.emit(bi.RETRY_TIME_EXCEEDED),this._player.video&&this._player.video.handleEnded()));try{this._playlist.pushM3U8(s,!0)}catch(e){this._onError("M3U8_PARSER_ERROR","PLAYLIST",e,!1)}if(this._playlist.encrypt&&this._playlist.encrypt.uri&&!this._playlist.encrypt.key){this._context.registry("DECRYPT_BUFFER",r)(),this._context.registry("KEY_BUFFER",r)(),this._tsloader.buffer="DECRYPT_BUFFER",this._keyLoader=this._context.registry("KEY_LOADER",n)({buffer:"KEY_BUFFER",readtype:3});var u=this._player.config.retry||{},l=u.count,c=u.delay,h=void 0===l?this._pluginConfig.retryCount:l,d=void 0===c?this._pluginConfig.retryDelay:c;this.emitTo("KEY_LOADER",mi.LADER_START,this._playlist.encrypt.uri,{},{retryCount:h,retryDelay:d,loadTimeout:this._pluginConfig.loadTimeout})}else this._m3u8Loaded(s)}else"TS_BUFFER"===e.TAG?(this.retryTimes=this._pluginConfig.retryTimes,this._playlist.downloaded(this._tsloader.url,!0),this._downloadedFragmentQueue.push(Object.assign({url:this._tsloader.url},this._playlist._ts[this._tsloader.url])),this._consumeFragment()):"DECRYPT_BUFFER"===e.TAG?(this.retryTimes=this._pluginConfig.retryTimes,this._playlist.downloaded(this._tsloader.url,!0),this.emitTo("CRYPTO",ki.START_DECRYPTO)):"KEY_BUFFER"===e.TAG&&(this.retryTimes=this._pluginConfig.retryTimes,this._playlist.encrypt.key=e.shift(),this._crypto=this._context.registry("CRYPTO",a)({key:this._playlist.encrypt.key,iv:this._playlist.encrypt.ivb,method:this._playlist.encrypt.method,inputbuffer:"DECRYPT_BUFFER",outputbuffer:"TS_BUFFER"}),this._crypto.on(ki.DECRYPTED,this._onDcripted.bind(this)))}},{key:"_consumeFragment",value:function(e){if(!(!e&&this.inWaiting&&this._downloadedFragmentQueue.length<2)){var t=this._downloadedFragmentQueue.shift();t&&(this.emit(Ei.DEMUX_START,t,this._playlist.end),this.inWaiting=!1)}}},{key:"_onDcripted",value:function(){this.emit(Ei.DEMUX_START)}},{key:"_m3u8Loaded",value:function(e){this.m3u8FlushDuration=this._playlist.avgSegmentDuration||this.m3u8FlushDuration,this._playlist.fragLength>0?this.retryTimes=this._pluginConfig.retryTimes:this.retryTimes>0?(this.retryTimes--,this._preload()):(this.emit(bi.RETRY_TIME_EXCEEDED),this._player.video&&this._player.video.handleEnded())}},{key:"_checkStatus",value:function(){if(!(this.retryTimes<1&&(new Date).getTime()-this._lastCheck<1e4))if(this._lastCheck=(new Date).getTime(),this._player.buffered.length<1)this._preload();else{var e=this._player.currentTime;this._player.readyState<=2&&this._preload(),e>this._player.buffered.end(this._player.buffered.length-1)-this.preloadTime&&this._preload()}}},{key:"_preload",value:function(){if(!(this.retryTimes<1||this._tsloader.loading||this._m3u8loader.loading)){var e=this._playlist.getTs(),t=this._player.config.retry||{},i=t.count,r=t.delay,n=void 0===i?this._pluginConfig.retryCount:i,a=void 0===r?this._pluginConfig.retryDelay:r;if(!e||e.downloaded||e.downloading){this._consumeFragment(!0);var s=(new Date).getTime();(!e||e.downloaded)&&(s-this._m3u8lasttime)/1e3>this.m3u8FlushDuration&&(this._m3u8lasttime=s,this.emitTo("M3U8_LOADER",mi.LADER_START,this.url,{},{retryCount:n,retryDelay:a,loadTimeout:this._pluginConfig.loadTimeout}))}else this._logDownSegment(e),this._playlist.downloading(e.url,!0),this.emitTo("TS_LOADER",mi.LADER_START,e.url,{},{retryCount:n,retryDelay:a,loadTimeout:this._pluginConfig.loadTimeout})}}},{key:"_logDownSegment",value:function(e){e&&(P.groupEnd(),P.group(this.TAG,"load ".concat(e.id,": [").concat(e.time/1e3," , ").concat((e.time+e.duration)/1e3,"], downloading: ").concat(e.downloading," , donwloaded: ").concat(e.downloaded)))}},{key:"_isHEVC",value:function(e){return e&&"hev1.1.6.L93.B0"===e.codec}},{key:"load",value:function(e){this.baseurl=this._pluginConfig.M3U8Parser.parseURL(e),this.url=e,this._preload()}},{key:"resetLoaderIdle",value:function(){this._m3u8loader.loading=!1,this._tsloader.loading=!1}},{key:"resetPlayList",value:function(){this._playlist.clear()}},{key:"destroy",value:function(){clearInterval(this._timmer),this.off(mi.LOADER_COMPLETE,this._onLoadComplete),this.off(Ei.METADATA_PARSED,this._onMetadataParsed),this.off(Ei.DEMUX_COMPLETE,this._onDemuxComplete),this._player.off("waiting",this._onWaiting),this._player.off("playing",this._onPlaying),this.m3u8Text=null}}],i&&gi(t.prototype,i),e}();const Si=Ti;function wi(e){return wi="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},wi(e)}function Di(e,t){for(var i=0;i