From c4f3571bbc80a9d7b7d0b43bc62ec6e55bf76b92 Mon Sep 17 00:00:00 2001 From: wancheng1990 <25022549@qq.com> Date: Thu, 9 Jun 2022 14:26:49 +0800 Subject: [PATCH] Update jessibuca-pro.js --- ui/jessibuca-pro.js | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/ui/jessibuca-pro.js b/ui/jessibuca-pro.js index a049a77..5335bc0 100644 --- a/ui/jessibuca-pro.js +++ b/ui/jessibuca-pro.js @@ -1,10 +1,10 @@ -!function(e){"function"==typeof define&&define.amd?define(e):e()}(function(){"use strict";const d="flv",P="webTransport",M={videoBuffer:1e3,isResize:!0,isFullResize:!1,isFlv:!1,isHls:!1,isWebrtc:!1,debug:!1,hotKey:!1,loadingTimeout:10,heartTimeout:10,timeout:10,loadingTimeoutReplay:!1,heartTimeoutReplay:!1,loadingTimeoutReplayTimes:3,heartTimeoutReplayTimes:3,supportDblclickFullscreen:!1,showBandwidth:!1,keepScreenOn:!1,isNotMute:!1,hasAudio:!0,hasVideo:!0,operateBtns:{fullscreen:!1,screenshot:!1,play:!1,audio:!1,record:!1},controlAutoHide:!1,hasControl:!1,loadingText:"",background:"",decoder:"decoder.js",url:"",rotate:0,forceNoOffscreen:!0,hiddenAutoPause:!1,protocol:2,demuxType:d,useWCS:!1,wcsUseVideoRender:!1,wasmUseVideoRender:!1,useMSE:!1,useOffscreen:!1,autoWasm:!0,wasmDecodeErrorReplay:!0,openWebglAlignment:!1},U="init",N="initVideo",j="initAudio",G="audioCode",V="videoCode",H="decode",u={fullscreen:"fullscreen$2",webFullscreen:"webFullscreen",decoderWorkerInit:"decoderWorkerInit",play:"play",playing:"playing",pause:"pause",mute:"mute",load:"load",loading:"loading",videoInfo:"videoInfo",timeUpdate:"timeUpdate",audioInfo:"audioInfo",log:"log",error:"error",kBps:"kBps",timeout:"timeout",delayTimeout:"delayTimeout",loadingTimeout:"loadingTimeout",stats:"stats",performance:"performance",record:"record",recording:"recording",recordingTimestamp:"recordingTimestamp",recordStart:"recordStart",recordEnd:"recordEnd",recordCreateError:"recordCreateError",buffer:"buffer",videoFrame:"videoFrame",start:"start",metadata:"metadata",resize:"resize",streamEnd:"streamEnd",streamSuccess:"streamSuccess",streamMessage:"streamMessage",streamError:"streamError",volumechange:"volumechange",destroy:"destroy",mseSourceOpen:"mseSourceOpen",mseSourceClose:"mseSourceClose",mseSourceBufferError:"mseSourceBufferError",mseSourceBufferBusy:"mseSourceBufferBusy",videoWaiting:"videoWaiting",videoTimeUpdate:"videoTimeUpdate",videoSyncAudio:"videoSyncAudio",playToRenderTimes:"playToRenderTimes"},c={load:u.load,timeUpdate:u.timeUpdate,videoInfo:u.videoInfo,audioInfo:u.audioInfo,error:u.error,kBps:u.kBps,log:u.log,start:u.start,timeout:u.timeout,loadingTimeout:u.loadingTimeout,delayTimeout:u.delayTimeout,fullscreen:"fullscreen",play:u.play,pause:u.pause,mute:u.mute,stats:u.stats,performance:u.performance,recordingTimestamp:u.recordingTimestamp,recordStart:u.recordStart,recordEnd:u.recordEnd,playToRenderTimes:u.playToRenderTimes},h={playError:"playIsNotPauseOrUrlIsNull",fetchError:"fetchError",websocketError:"websocketError",webcodecsH265NotSupport:"webcodecsH265NotSupport",mediaSourceH265NotSupport:"mediaSourceH265NotSupport",wasmDecodeError:"wasmDecodeError",hlsError:"hlsError",webrtcError:"webrtcError"},W="notConnect",a={download:"download",base64:"base64",blob:"blob"},K={7:"H264(AVC)",12:"H265(HEVC)"},Y={10:"AAC",7:"ALAW",8:"MULAW"},s="webm",t="webcodecs",r="webgl",i="offscreen",Q='video/mp4; codecs="avc1.64002A"';function z(){}function q(e){let t=0{URL.revokeObjectURL(e)},$()?1e3:0)}function l(){return(new Date).getTime()}function g(e,t,r){return Math.max(Math.min(e,Math.max(t,r)),Math.min(t,r))}function p(t,r,e){t&&("object"==typeof r&&Object.keys(r).forEach(e=>{p(t,e,r[e])}),t.style[r]=e)}function J(e,t,r){r=!(2{i+=e;var e=Z(),t=e-n;1e3<=t&&(r(i/t*1e3),n=e,i=0)}}function f(){return/iphone|ipod|android.*mobile|windows.*phone|blackberry.*mobile/i.test(window.navigator.userAgent.toLowerCase())}function $(){var e=window.navigator.userAgent.toLowerCase();return e&&/iphone|ipad|ipod|ios/.test(e)}function n(e){return null==e}function o(e){return!n(e)}function A(e,t){var r,i,t=(t=void 0===t?{}:t).insertAt;e&&"undefined"!=typeof document&&(r=document.head||document.getElementsByTagName("head")[0],(i=document.createElement("style")).type="text/css","top"===t&&r.firstChild?r.insertBefore(i,r.firstChild):r.appendChild(i),i.styleSheet?i.styleSheet.cssText=e:i.appendChild(document.createTextNode(e)))}try{if("object"==typeof WebAssembly&&"function"==typeof WebAssembly.instantiate){var m=new WebAssembly.Module(Uint8Array.of(0,97,115,109,1,0,0,0));if(m instanceof WebAssembly.Module)new WebAssembly.Instance(m),WebAssembly.Instance}}catch(e){}A(".jessibuca-pro-wrap{margin:100px auto 0;background:rgba(13,14,27,.7);width:640px!important;height:398px!important}.jessibuca-pro-btns{margin:10px auto 0;width:640px!important;height:40px;display:flex;align-items:center}.jessibuca-pro-btns #typeSelect{height:30px;margin-right:10px}.jessibuca-pro-btns #changeType{height:30px;line-height:30px;padding:0 10px}@media (max-width:720px){.jessibuca-pro-wrap{width:90vw!important;height:52.7vw!important}}");class ee{constructor(n){this.log=function(e){if(n._opt.debug){for(var t=arguments.length,r=new Array(1this.proxy(t,e,r,i));t.addEventListener(e,r,i);var n=()=>t.removeEventListener(e,r,i);return this.destroys.push(n),n}}destroy(){this.master.debug&&this.master.debug.log("Events","destroy"),this.destroys.forEach(e=>e())}}var _="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function v(e,t){return e(t={exports:{}},t.exports),t.exports}var y=v(function(e){var a,t,o,r,i;a="undefined"!=typeof window&&void 0!==window.document?window.document:{},t=e.exports,o=function(){for(var e,t=[["requestFullscreen","exitFullscreen","fullscreenElement","fullscreenEnabled","fullscreenchange","fullscreenerror"],["webkitRequestFullscreen","webkitExitFullscreen","webkitFullscreenElement","webkitFullscreenEnabled","webkitfullscreenchange","webkitfullscreenerror"],["webkitRequestFullScreen","webkitCancelFullScreen","webkitCurrentFullScreenElement","webkitCancelFullScreen","webkitfullscreenchange","webkitfullscreenerror"],["mozRequestFullScreen","mozCancelFullScreen","mozFullScreenElement","mozFullScreenEnabled","mozfullscreenchange","mozfullscreenerror"],["msRequestFullscreen","msExitFullscreen","msFullscreenElement","msFullscreenEnabled","MSFullscreenChange","MSFullscreenError"]],r=0,i=t.length,n={};r{delete t[e]}),void delete this.e;const i=t[e],n=[];if(i&&r)for(let e=0,t=i.length;e{this.bitmaprenderer.transferFromImageBitmap(e)});break;case r:this.contextGl.clear(this.contextGl.COLOR_BUFFER_BIT);break;case t:this.context2D.clearRect(0,0,this.$videoElement.width,this.$videoElement.height)}}resize(){this.player.debug.log("canvasVideo","resize");var e=this.player._opt;let t=this.player.width,r=this.player.height,i=(e.hasControl&&!e.controlAutoHide&&(f()&&this.player.fullscreen?t-=38:r-=38),this.$videoElement.width),n=this.$videoElement.height;var s=e.rotate,a=(t-i)/2,o=(r-n)/2,l=(270!==s&&90!==s||(i=this.$videoElement.height,n=this.$videoElement.width),t/i),d=r/n;let u=d{this.player.debug.log("Video","canplay")}),r(this.$videoElement,"waiting",()=>{this.player.debug.log("Video","waiting")}),r(this.$videoElement,"timeupdate",e=>{this.player.emit(u.videoTimeUpdate,e.timeStamp),t.handleRender()}),this.player.debug.log("Video","init")}destroy(){this.player.$container.removeChild(this.$videoElement),this.$videoElement&&(this.$videoElement.src="",this.$videoElement=null),this.trackGenerator&&(this.trackGenerator=null),this.vwriter&&(this.trackGenerator=null),this.init=!1,this.off(),this.player.debug.log("Video","destroy")}play(){this.player.debug.log("Video","play"),this.$videoElement.play()}pause(){setTimeout(()=>{this.$videoElement.pause()},100)}clearView(){}screenshot(e,t,r,i){e=e||l(),i=i||a.download;let n=.92;!{png:"image/png",jpeg:"image/jpeg",webp:"image/webp"}[t]&&a[t]&&(i=t,t="png",r=void 0),"string"==typeof r&&(i=r,r=void 0),void 0!==r&&(n=Number(r));r=this.$videoElement;let s=document.createElement("canvas");s.width=r.videoWidth,s.height=r.videoHeight,s.getContext("2d").drawImage(r,0,0,s.width,s.height);r=s.toDataURL(a[t]||a.png,n),t=q(r);return i===a.base64?r:i===a.blob?t:void(i===a.download&&X(t,e))}initCanvasViewSize(){this.resize()}render(e){var t;this.vwriter&&(e.videoFrame?this.vwriter.write(e.videoFrame):e.output&&(t=[...e.output[0],...e.output[1],...e.output[2]],t=Uint8Array.from(t),e={format:"I420",codedWidth:this.videoInfo.width,codedHeight:this.videoInfo.height,timestamp:e.ts},t=new VideoFrame(t,e),this.vwriter.write(t)))}resize(){let e=this.player.width,t=this.player.height;var r=this.player._opt,i=r.rotate;r.hasControl&&!r.controlAutoHide&&(f()&&this.player.fullscreen?e-=38:t-=38),this.$videoElement.width=e,this.$videoElement.height=t,270!==i&&90!==i||(this.$videoElement.width=t,this.$videoElement.height=e);let n=(e-this.$videoElement.width)/2,s=(t-this.$videoElement.height)/2,a="contain";r.isResize||(a="fill"),r.isFullResize&&(a="none"),this.$videoElement.style.objectFit=a,this.$videoElement.style.transform="rotate("+i+"deg)",this.$videoElement.style.left=n+"px",this.$videoElement.style.top=s+"px"}}class ne{constructor(e){return new(ne.getLoaderFactory(e._opt))(e)}static getLoaderFactory(e){return e.useMSE||e.isHls||e.isWebrtc?E:e.useWCS?!e.useOffscreen&&e.wcsUseVideoRender?E:ie:e.wasmUseVideoRender?E:ie}}class se extends b{constructor(e){super(),this.bufferList=[],this.player=e,this.scriptNode=null,this.hasInitScriptNode=!1,this.audioContextChannel=null,this.audioContext=new(window.AudioContext||window.webkitAudioContext),this.gainNode=this.audioContext.createGain();const t=this.audioContext.createBufferSource();t.buffer=this.audioContext.createBuffer(1,1,22050),t.connect(this.audioContext.destination),t.noteOn?t.noteOn(0):t.start(0),this.audioBufferSourceNode=t,this.mediaStreamAudioDestinationNode=this.audioContext.createMediaStreamDestination(),this.audioEnabled(!0),this.gainNode.gain.value=0,this.playing=!1,this.audioSyncVideoOption={diff:null},this.audioInfo={encType:"",channels:"",sampleRate:""},this.init=!1,this.hasAudio=!1,this.on(u.videoSyncAudio,e=>{this.audioSyncVideoOption=e}),this.player.debug.log("AudioContext","init")}destroy(){this.closeAudio(),this.audioContext.close(),this.audioContext=null,this.gainNode=null,this.init=!1,this.hasAudio=!1,this.playing=!1,this.scriptNode&&(this.scriptNode.onaudioprocess=z,this.scriptNode=null),this.audioBufferSourceNode=null,this.mediaStreamAudioDestinationNode=null,this.hasInitScriptNode=!1,this.audioSyncVideoOption={diff:null},this.audioInfo={encType:"",channels:"",sampleRate:""},this.off(),this.player.debug.log("AudioContext","destroy")}updateAudioInfo(e){e.encTypeCode&&(this.audioInfo.encType=Y[e.encTypeCode]),e.channels&&(this.audioInfo.channels=e.channels),e.sampleRate&&(this.audioInfo.sampleRate=e.sampleRate),this.audioInfo.sampleRate&&this.audioInfo.channels&&this.audioInfo.encType&&!this.init&&(this.player.emit(u.audioInfo,this.audioInfo),this.init=!0)}get isPlaying(){return this.playing}get isMute(){return 0===this.gainNode.gain.value||this.isStateSuspended()}get volume(){return this.gainNode.gain.value}get bufferSize(){return this.bufferList.length}initScriptNode(){if(this.playing=!0,!this.hasInitScriptNode){const n=this.audioInfo.channels,e=this.audioContext.createScriptProcessor(1024,0,n);e.onaudioprocess=t=>{const r=t.outputBuffer;if(this.bufferList.length&&this.playing){if(!this.player._opt.useWCS&&!this.player._opt.useMSE){if(1e3{t.emit(u.kBps,(e/1024).toFixed(2))}),t.debug.log("FetchStream","init")}destroy(){this.abort(),this.off(),this.streamRate=null,this.player.debug.log("FetchStream","destroy")}fetchStream(e){const t=this.player["demux"];this.player._times.streamStart=l(),fetch(e,{signal:this.abortController.signal}).then(e=>{this.emit(u.streamSuccess),e.body.pipeTo(new WritableStream({write:e=>(this.streamRate&&this.streamRate(e.byteLength),t.input.write(e)),close:()=>{t.close()},abort:e=>{t.close(),this.emit(h.fetchError,e),this.player.emit(u.error,h.fetchError),this.abort()}}))}).catch(e=>{this.abort(),this.emit(h.fetchError,e),this.player.emit(u.error,h.fetchError)})}abort(){this.abortController&&(this.abortController.abort(),this.abortController=null)}}class de extends b{constructor(t){super(),this.player=t,this.socket=null,this.socketStatus=W,this.wsUrl=null,this.streamRate=e(e=>{t.emit(u.kBps,(e/1024).toFixed(2))}),t.debug.log("WebsocketStream","init")}destroy(){this.socket&&(this.socket.close(),this.socket=null),this.socketStatus=W,this.streamRate=null,this.wsUrl=null,this.off(),this.player.debug.log("WebsocketStream","destroy")}_createWebSocket(){const e=this.player,{debug:t,events:{proxy:r},demux:i}=e;this.socket=new WebSocket(this.wsUrl),this.socket.binaryType="arraybuffer",r(this.socket,"open",()=>{this.emit(u.streamSuccess),t.log("WebsocketStream","socket open"),this.socketStatus="open"}),r(this.socket,"message",e=>{this.streamRate&&this.streamRate(e.data.byteLength),this._handleMessage(e.data)}),r(this.socket,"close",()=>{t.log("WebsocketStream","socket close"),this.emit(u.streamEnd),this.socketStatus="close"}),r(this.socket,"error",e=>{t.log("WebsocketStream","socket error"),this.emit(h.websocketError,e),this.player.emit(u.error,h.websocketError),this.socketStatus="error",i.close(),t.log("WebsocketStream","socket error:",e)})}_handleMessage(e){const t=this.player["demux"];t?t.dispatch(e):this.player.debug.warn("WebsocketStream","websocket handle message demux is null")}fetchStream(e){this.player._times.streamStart=l(),this.wsUrl=e,this._createWebSocket()}}class ue extends b{constructor(e){super(),(this.player=e).debug.log("HlsStream","init")}destroy(){this.off(),this.player.debug.log("HlsStream","destroy")}fetchStream(e){const t=this.player["hls"];this.player._times.streamStart=l(),t.loadSource(e).then(()=>{this.player.debug.log("HlsStream","loadSource success"),this.emit(u.streamSuccess)}).catch(e=>{this.emit(h.hlsError,e),this.emit(u.error,h.hlsError)})}}class ce extends b{constructor(e){super(),this.player=e,this.webrctUrl=null,e.debug.log("WebrtcStream","init")}destroy(){this.webrctUrl=null,this.off(),this.player.debug.log("WebrtcStream","destroy")}fetchStream(e){const t=this.player["webrtc"];this.player._times.streamStart=l(),this.webrctUrl=e.replace("webrtc:",window.location.protocol),t.loadSource(this.webrctUrl).then(()=>{this.player.debug.log("WebrtcStream","loadSource success"),this.emit(u.streamSuccess)}).catch(e=>{this.emit(h.webrtcError,e),this.emit(u.error,h.webrtcError)})}}class he extends b{constructor(t){super(),this.player=t,this.transport=null,this.wtUrl=null,this.streamRate=e(e=>{t.emit(u.kBps,(e/1024).toFixed(2))}),t.debug.log("WebTransportLoader","init")}destroy(){this.abort(),this.off(),this.player.debug.log("WebTransportLoader","destroy")}_createWebTransport(){const e=this.player,{events:{},demux:t}=e;try{this.transport=new WebTransport(this.wtUrl),this.transport.ready.then(()=>{this.emit(u.streamSuccess),this.transport.createBidirectionalStream().then(e=>{e.readable.pipeTo(new WritableStream(t.input))})}).catch(e=>{this.player.debug.warn("WebTransportLoader","_createWebTransport-ready",e)})}catch(e){this.player.debug.warn("WebTransportLoader","_createWebTransport",e)}}fetchStream(e){this.player._times.streamStart=l(),this.wtUrl=e.replace(/^wt/,"https"),this._createWebTransport()}abort(){if(this.transport)try{this.transport.close(),this.transport=null}catch(e){this.transport=null}}}class fe{constructor(e){return new(fe.getLoaderFactory(e._opt.protocol))(e)}static getLoaderFactory(e){return 2===e?le:1===e?de:3===e?ue:4===e?ce:5===e?he:void 0}}var Ae=v(function(e){function S(r,n){if(!r)throw"First parameter is required.";n=new A(r,n=n||{type:"video"});var s=this;function t(e){e&&(n.initCallback=function(){e(),e=n.initCallback=null});var t=new g(r,n);(u=new t(r,n)).record(),d("recording"),n.disableLogs||console.log("Initialized recorderType:",u.constructor.name,"for output-type:",n.type)}function a(i){if(i=i||function(){},u){if("paused"===s.state)return s.resumeRecording(),void setTimeout(function(){a(i)},1);"recording"===s.state||n.disableLogs||console.warn('Recording state should be: "recording", however current state is: ',s.state),n.disableLogs||console.log("Stopped recording "+n.type+" stream."),"gif"!==n.type?u.stop(e):(u.stop(),e()),d("stopped")}else c();function e(e){if(u){Object.keys(u).forEach(function(e){"function"!=typeof u[e]&&(s[e]=u[e])});var t,r=u.blob;if(!r){if(!e)throw"Recording failed.";u.blob=r=e}if(r&&!n.disableLogs&&console.log(r.type,"->",v(r.size)),i){try{t=w.createObjectURL(r)}catch(e){}"function"==typeof i.call?i.call(s,t):i(t)}n.autoWriteToDisk&&l(function(e){var t={};t[n.type+"Blob"]=e,L.Store(t)})}else"function"==typeof i.call?i.call(s,""):i("")}}function o(e){postMessage((new FileReaderSync).readAsDataURL(e))}function l(t,e){if(!t)throw"Pass a callback function over getDataURL.";var r,i=(e||u||{}).blob;if(!i)return n.disableLogs||console.warn("Blob encoder did not finish its job yet."),void setTimeout(function(){l(t,e)},1e3);"undefined"==typeof Worker||navigator.mozGetUserMedia?((r=new FileReader).readAsDataURL(i),r.onload=function(e){t(e.target.result)}):((r=function(e){try{var t=w.createObjectURL(new Blob([e.toString(),"this.onmessage = function (eee) {"+e.name+"(eee.data);}"],{type:"application/javascript"})),r=new Worker(t);return w.revokeObjectURL(t),r}catch(e){}}(o)).onmessage=function(e){t(e.data)},r.postMessage(i))}function i(e){e=e||0,"paused"!==s.state?"stopped"!==s.state&&(e>=s.recordingDuration?a(s.onRecordingStopped):(e+=1e3,setTimeout(function(){i(e)},1e3))):setTimeout(function(){i(e)},1e3)}function d(e){s&&(s.state=e,"function"==typeof s.onStateChanged.call?s.onStateChanged.call(s,e):s.onStateChanged(e))}var u,e='It seems that recorder is destroyed or "startRecording" is not invoked for '+n.type+" recorder.";function c(){!0!==n.disableLogs&&console.warn(e)}var h,f={startRecording:function(e){return n.disableLogs||console.log("RecordRTC version: ",s.version),(n=e?new A(r,e):n).disableLogs||console.log("started recording "+n.type+" stream."),u?(u.clearRecordedData(),u.record(),d("recording"),s.recordingDuration&&i()):t(function(){s.recordingDuration&&i()}),s},stopRecording:a,pauseRecording:function(){u?"recording"===s.state?(d("paused"),u.pause(),n.disableLogs||console.log("Paused recording.")):n.disableLogs||console.warn("Unable to pause the recording. Recording state: ",s.state):c()},resumeRecording:function(){u?"paused"===s.state?(d("recording"),u.resume(),n.disableLogs||console.log("Resumed recording.")):n.disableLogs||console.warn("Unable to resume the recording. Recording state: ",s.state):c()},initRecorder:t,setRecordingDuration:function(e,t){if(void 0===e)throw"recordingDuration is required.";if("number"!=typeof e)throw"recordingDuration must be a number.";return s.recordingDuration=e,s.onRecordingStopped=t||function(){},{onRecordingStopped:function(e){s.onRecordingStopped=e}}},clearRecordedData:function(){u?(u.clearRecordedData(),n.disableLogs||console.log("Cleared old recorded data.")):c()},getBlob:function(){if(u)return u.blob;c()},getDataURL:l,toURL:function(){if(u)return w.createObjectURL(u.blob);c()},getInternalRecorder:function(){return u},save:function(e){u?y(u.blob,e):c()},getFromDisk:function(e){u?S.getFromDisk(n.type,e):c()},setAdvertisementArray:function(e){n.advertisement=[];for(var t=e.length,r=0;r>=8;return new Uint8Array(t.reverse())}(e[r].id)),t.push(a(s)),t.push(i)}return new Blob(t,{type:"video/webm"})}function o(e){for(var t=0,r={};t 127 not supported";return[128|e.trackNum,e.timecode>>8,255&e.timecode,t].map(function(e){return String.fromCharCode(e)}).join("")+e.frame}({discardable:0,frame:e.data.slice(4),invisible:0,keyframe:1,lacing:0,trackNum:1,timecode:Math.round(r)});return r+=e.duration,{data:t,id:163}}))}(s,0,a)};i[1].data.push(l),s+=o}return d(i)}(e.map(function(e){var t=function(e){for(var t=e.RIFF[0].WEBP[0],r=t.indexOf("*"),i=0,n=[];i<4;i++)n[i]=t.charCodeAt(r+3+i);return{width:16383&(n[1]<<8|n[0]),height:16383&(n[3]<<8|n[2]),data:t,riff:e}}(o(atob(e.image.slice(23))));return t.duration=e.duration,t}));postMessage(e)}S.Whammy=D;var L={init:function(){var r,e,t,i=this;function n(e){e.createObjectStore(i.dataStoreName)}function s(){var e=r.transaction([i.dataStoreName],"readwrite");function t(t){e.objectStore(i.dataStoreName).get(t).onsuccess=function(e){i.callback&&i.callback(e.target.result,t)}}i.videoBlob&&e.objectStore(i.dataStoreName).put(i.videoBlob,"videoBlob"),i.gifBlob&&e.objectStore(i.dataStoreName).put(i.gifBlob,"gifBlob"),i.audioBlob&&e.objectStore(i.dataStoreName).put(i.audioBlob,"audioBlob"),t("audioBlob"),t("videoBlob"),t("gifBlob")}"undefined"!=typeof indexedDB&&void 0!==indexedDB.open?(e=this.dbName||location.href.replace(/\/|:|#|%|\.|\[|\]/g,""),(t=indexedDB.open(e,1)).onerror=i.onError,t.onsuccess=function(){(r=t.result).onerror=i.onError,r.setVersion&&1!==r.version?r.setVersion(1).onsuccess=function(){n(r),s()}:s()},t.onupgradeneeded=function(e){n(e.target.result)}):console.error("IndexedDB API are not available in this browser.")},Fetch:function(e){return this.callback=e,this.init(),this},Store:function(e){return this.audioBlob=e.audioBlob,this.videoBlob=e.videoBlob,this.gifBlob=e.gifBlob,this.init(),this},onError:function(e){console.error(JSON.stringify(e,null,"\t"))},dataStoreName:"recordRTC",dbName:null};function I(e,r){"undefined"==typeof GIFEncoder&&((t=document.createElement("script")).src="https://www.webrtc-experiment.com/gif-recorder.js",(document.body||document.documentElement).appendChild(t)),r=r||{};var t,i,n=e instanceof CanvasRenderingContext2D||e instanceof HTMLCanvasElement,s=(this.record=function(){"undefined"!=typeof GIFEncoder&&l?(n||(r.width||(r.width=i.offsetWidth||320),r.height||(r.height=i.offsetHeight||240),r.video||(r.video={width:r.width,height:r.height}),r.canvas||(r.canvas={width:r.width,height:r.height}),a.width=r.canvas.width||320,a.height=r.canvas.height||240,i.width=r.video.width||320,i.height=r.video.height||240),(u=new GIFEncoder).setRepeat(0),u.setDelay(r.frameRate||200),u.setQuality(r.quality||10),u.start(),"function"==typeof r.onGifRecordingStarted&&r.onGifRecordingStarted(),c=f(function e(t){if(!0!==h.clearedRecordedData){if(s)return setTimeout(function(){e(t)},100);c=f(e),t-d<90||(!n&&i.paused&&i.play(),n||o.drawImage(i,0,0,a.width,a.height),r.onGifPreview&&r.onGifPreview(a.toDataURL("image/png")),u.addFrame(o),d=t)}}),r.initCallback&&r.initCallback()):setTimeout(h.record,1e3)},!(this.stop=function(e){e=e||function(){},c&&p(c),this.blob=new Blob([new Uint8Array(u.stream().bin)],{type:"image/gif"}),e(this.blob),u.stream().bin=[]})),a=(this.pause=function(){s=!0},this.resume=function(){s=!1},this.clearRecordedData=function(){h.clearedRecordedData=!0,u&&(u.stream().bin=[])},this.name="GifRecorder",this.toString=function(){return this.name},document.createElement("canvas")),o=a.getContext("2d"),l=(n&&(e instanceof CanvasRenderingContext2D?a=(o=e).canvas:e instanceof HTMLCanvasElement&&(o=e.getContext("2d"),a=e)),!0);n||((i=document.createElement("video")).muted=!0,i.autoplay=!0,i.playsInline=!0,l=!1,i.onloadedmetadata=function(){l=!0},T(e,i),i.play());var d,u,c=null,h=this}function x(i,n){n=n||"multi-streams-mixer";var s=[],a=!1,o=document.createElement("canvas"),l=o.getContext("2d"),d=(o.style.opacity=0,o.style.position="absolute",o.style.zIndex=-1,o.style.top="-1000em",o.style.left="-1000em",o.className=n,(document.body||document.documentElement).appendChild(o),this.disableLogs=!1,this.frameInterval=10,this.width=360,this.height=240,this.useGainNode=!0,this),e=window.AudioContext;void 0===e&&("undefined"!=typeof webkitAudioContext&&(e=webkitAudioContext),"undefined"!=typeof mozAudioContext&&(e=mozAudioContext));window.URL,"undefined"!=typeof navigator&&void 0===navigator.getUserMedia&&(void 0!==navigator.webkitGetUserMedia&&(navigator.getUserMedia=navigator.webkitGetUserMedia),void 0!==navigator.mozGetUserMedia&&(navigator.getUserMedia=navigator.mozGetUserMedia));var u=window.MediaStream,c=(void 0!==(u=void 0===u&&"undefined"!=typeof webkitMediaStream?webkitMediaStream:u)&&void 0===u.prototype.stop&&(u.prototype.stop=function(){this.getTracks().forEach(function(e){e.stop()})}),{});function h(){var e,t,r;a||(e=s.length,t=!1,r=[],s.forEach(function(e){e.stream||(e.stream={}),e.stream.fullcanvas?t=e:r.push(e)}),t?(o.width=t.stream.width,o.height=t.stream.height):r.length?(o.width=1{t.log("Recorder","record timestamp :"+e)},disableLogs:!this.player._opt.debug};try{const t=this.player.video.$videoElement.captureStream(25);if(this.player.audio&&this.player.audio.mediaStreamAudioDestinationNode&&this.player.audio.mediaStreamAudioDestinationNode.stream&&!this.player.audio.isStateSuspended()&&this.player.audio.hasAudio&&this.player._opt.hasAudio){const e=this.player.audio.mediaStreamAudioDestinationNode.stream;var r;0{this.recordingTimestamp+=1,this.player.emit(u.recordingTimestamp,this.recordingTimestamp)},1e3))}stopRecordAndSave(){this.recorder&&this.isRecording&&this.recorder.stopRecording(()=>{this.player.debug.log("Recorder","stop recording"),this.player.emit(u.recordEnd);{var e=this.recorder.getBlob(),t=this.fileName,r=this.fileType;const i=window.URL.createObjectURL(e),n=document.createElement("a");n.href=i,n.download=(t||l())+"."+(r||s),n.click(),setTimeout(()=>{window.URL.revokeObjectURL(i)},$()?1e3:0)}this._reset(),this.player.emit(u.recording,!1)})}_reset(){this.isRecording=!1,this.recordingTimestamp=0,this.recorder&&(this.recorder.destroy(),this.recorder=null),this.fileName=null,this.recordingInterval&&clearInterval(this.recordingInterval),this.recordingInterval=null}}class pe{constructor(e){return new(pe.getLoaderFactory())(e)}static getLoaderFactory(){return ge}}class me{constructor(e){this.player=e,this.decoderWorker=new Worker(e._opt.decoder),this._initDecoderWorker(),e.debug.log("decoderWorker","init")}destroy(){this.decoderWorker.postMessage({cmd:"close"}),this.decoderWorker.terminate(),this.decoderWorker=null,this.player.debug.log("decoderWorker","destroy")}_initDecoderWorker(){const{debug:r,events:{}}=this.player;this.decoderWorker.onmessage=e=>{const t=e.data;switch(t.cmd){case U:r.log("decoderWorker","onmessage:",U),this.player.loaded||this.player.emit(u.load),this.player.emit(u.decoderWorkerInit),this._initWork();break;case V:r.log("decoderWorker","onmessage:",V,t.code),this.player._times.decodeStart||(this.player._times.decodeStart=l()),this.player.video.updateVideoInfo({encTypeCode:t.code});break;case G:r.log("decoderWorker","onmessage:",G,t.code),this.player.audio&&this.player.audio.updateAudioInfo({encTypeCode:t.code});break;case N:r.log("decoderWorker","onmessage:",N,`width:${t.w},height:`+t.h),this.player.video.updateVideoInfo({width:t.w,height:t.h}),this.player.video.initCanvasViewSize();break;case j:r.log("decoderWorker","onmessage:",j,`channels:${t.channels},sampleRate:`+t.sampleRate),this.player.audio&&(this.player.audio.updateAudioInfo(t),this.player.audio.initScriptNode(t));break;case"render":this.player.handleRender(),this.player.video.render(t),this.player.emit(u.timeUpdate,t.ts),this.player.updateStats({fps:!0,ts:t.ts,buf:t.delay}),this.player._times.videoStart||(this.player._times.videoStart=l(),this.player.handlePlayToRenderTimes());break;case"playAudio":this.player.playing&&this.player.audio&&this.player.audio.play(t.buffer,t.ts);break;case"wasmError":t.message&&-1!==t.message.indexOf("Invalid NAL unit size")&&(this.player.emit(u.error,h.wasmDecodeError),this.player.emit(h.wasmDecodeError));break;default:this.player[t.cmd]&&this.player[t.cmd](t)}}}_initWork(){var e={debug:this.player._opt.debug,forceNoOffscreen:this.player._opt.forceNoOffscreen,useWCS:this.player._opt.useWCS,videoBuffer:this.player._opt.videoBuffer,openWebglAlignment:this.player._opt.openWebglAlignment};this.decoderWorker.postMessage({cmd:"init",opt:JSON.stringify(e),sampleRate:this.player.audio&&this.player.audio.audioContext.sampleRate||0})}decodeVideo(e,t,r){t={type:2,ts:Math.max(t,0),isIFrame:r};this.decoderWorker.postMessage({cmd:H,buffer:e,options:t},[e.buffer])}decodeAudio(e,t){this.player._opt.useWCS&&!this.player._opt.useOffscreen||this.player._opt.useMSE?this._decodeAudioNoDelay(e,t):this._decodeAudio(e,t)}_decodeAudio(e,t){t={type:1,ts:Math.max(t,0)};this.decoderWorker.postMessage({cmd:H,buffer:e,options:t},[e.buffer])}_decodeAudioNoDelay(e,t){this.decoderWorker.postMessage({cmd:"audioDecode",buffer:e,ts:Math.max(t,0)},[e.buffer])}updateWorkConfig(e){this.decoderWorker.postMessage({cmd:"updateConfig",key:e.key,value:e.value})}}class ve extends b{constructor(e){super(),this.player=e,this.stopId=null,this.firstTimestamp=null,this.startTimestamp=null,this.delay=-1,this.bufferList=[],this.dropping=!1,this.initInterval()}destroy(){this.stopId&&(clearInterval(this.stopId),this.stopId=null),this.firstTimestamp=null,this.startTimestamp=null,this.delay=-1,this.bufferList=[],this.dropping=!1,this.off()}getDelay(e){return e?(this.firstTimestamp?e&&(this.delay=Date.now()-this.startTimestamp-(e-this.firstTimestamp)):(this.firstTimestamp=e,this.startTimestamp=Date.now(),this.delay=-1),this.delay):-1}resetDelay(){this.firstTimestamp=null,this.startTimestamp=null,this.delay=-1,this.dropping=!1}initInterval(){this.player.debug.log("common dumex","init Interval");var e=()=>{let e;var t=this.player._opt.videoBuffer;if(this.bufferList.length)if(this.dropping){for(1===(e=this.bufferList.shift()).type&&0===e.payload[1]&&this._doDecoderDecode(e);!e.isIFrame&&this.bufferList.length;)1===(e=this.bufferList.shift()).type&&0===e.payload[1]&&this._doDecoderDecode(e);e.isIFrame&&(this.dropping=!1,this._doDecoderDecode(e))}else if(e=this.bufferList[0],-1===this.getDelay(e.ts))this.bufferList.shift(),this._doDecoderDecode(e);else if(this.delay>t+1e3)this.resetDelay(),this.dropping=!0;else for(;this.bufferList.length&&(e=this.bufferList[0],this.getDelay(e.ts)>t);)this.bufferList.shift(),this._doDecoderDecode(e)};e(),this.stopId=setInterval(e,10)}_doDecode(e,t,r,i){const n=this.player;let s={ts:r,type:t,isIFrame:!1};n._opt.useWCS&&!n._opt.useOffscreen||n._opt.useMSE?(2===t&&(s.isIFrame=i),this.pushBuffer(e,s)):2===t?n.decoderWorker&&n.decoderWorker.decodeVideo(e,r,i):1===t&&n._opt.hasAudio&&n.decoderWorker&&n.decoderWorker.decodeAudio(e,r)}_doDecoderDecode(e){const t=this.player,{webcodecsDecoder:r,mseDecoder:i}=t;1===e.type?t._opt.hasAudio&&t.decoderWorker&&t.decoderWorker.decodeAudio(e.payload,e.ts):2===e.type&&(t._opt.useWCS&&!t._opt.useOffscreen?r.decodeVideo(e.payload,e.ts,e.isIFrame):t._opt.useMSE&&i.decodeVideo(e.payload,e.ts,e.isIFrame))}pushBuffer(e,t){1===t.type?this.bufferList.push({ts:t.ts,payload:e,type:1}):2===t.type&&this.bufferList.push({ts:t.ts,payload:e,type:2,isIFrame:t.isIFrame})}close(){}}const ye=[[Uint8Array,Int8Array],[Uint16Array,Int16Array],[Uint32Array,Int32Array,Float32Array],[Float64Array]],T=Symbol(32),S=Symbol(16),w=Symbol(8),R=new Map;ye.forEach((e,t)=>e.forEach(e=>R.set(e,t)));class D{constructor(e){this.g=e,this.consumed=0,e&&(this.need=e.next().value)}fillFromReader(r){return e=this,l=function*(){var{done:e,value:t}=yield r.read();return e?void this.close():(this.write(t),this.fillFromReader(r))},new(o=(o=a=void 0)||Promise)(function(r,t){function i(e){try{s(l.next(e))}catch(e){t(e)}}function n(e){try{s(l.throw(e))}catch(e){t(e)}}function s(e){var t;e.done?r(e.value):((t=e.value)instanceof o?t:new o(function(e){e(t)})).then(i,n)}s((l=l.apply(e,a||[])).next())});var e,a,o,l}consume(){this.buffer&&this.consumed&&(this.buffer.copyWithin(0,this.consumed),this.buffer=this.buffer.subarray(0,this.buffer.length-this.consumed),this.consumed=0)}demand(e,t){return t&&this.consume(),this.need=e,this.flush()}read(r){return new Promise((t,e)=>{if(this.resolve)return e("last read not complete yet");this.resolve=e=>{delete this.resolve,delete this.need,t(e)},this.demand(r,!0)})}readU32(){return this.read(T)}readU16(){return this.read(S)}readU8(){return this.read(w)}close(){this.g&&this.g.return()}flush(){if(this.buffer&&this.need){let e=null;const i=this.buffer.subarray(this.consumed);let t=0;var r=e=>i.length<(t=e);if("number"==typeof this.need){if(r(this.need))return;e=i.subarray(0,t)}else if(this.need instanceof ArrayBuffer){if(r(this.need.byteLength))return;new Uint8Array(this.need).set(i.subarray(0,t)),e=this.need}else if(this.need===T){if(r(4))return;e=i[0]<<24|i[1]<<16|i[2]<<8|i[3]}else if(this.need===S){if(r(2))return;e=i[0]<<8|i[1]}else if(this.need===w){if(r(1))return;e=i[0]}else if(R.has(this.need.constructor)){if(r(this.need.length<>24&255,e>>16&255,e>>8&255,255&e]),this.flush()}writeU16(e){this.malloc(2).set([e>>8&255,255&e]),this.flush()}writeU8(e){this.malloc(1)[0]=e,this.flush()}malloc(e){if(this.buffer){var t=this.buffer.length,r=t+e;if(r<=this.buffer.buffer.byteLength-this.buffer.byteOffset)this.buffer=new Uint8Array(this.buffer.buffer,this.buffer.byteOffset,r);else{const e=new Uint8Array(r);e.set(this.buffer),this.buffer=e}return this.buffer.subarray(t,r)}return this.buffer=new Uint8Array(e),this.buffer}}D.U32=T,D.U16=S,D.U8=w;class be extends ve{constructor(e){super(e),this.input=new D(this.demux()),e.debug.log("FlvDemux","init")}destroy(){super.destroy(),this.player.debug.log("FlvDemux","destroy")}dispatch(e){this.input.write(e)}*demux(){yield 9;const t=new ArrayBuffer(4),r=new Uint8Array(t),i=new Uint32Array(t),n=this.player;for(;;){r[3]=0;const t=yield 15,o=t[4];r[0]=t[7],r[1]=t[6],r[2]=t[5];var s=i[0];r[0]=t[10],r[1]=t[9],r[2]=t[8];let e=i[0];16777215===e&&(r[3]=t[11],e=i[0]);var a=(yield s).slice();switch(o){case 8:n._opt.hasAudio&&(n.updateStats({abps:a.byteLength}),0>4==1;0>4==1,t.updateStats({vbps:s.byteLength}),0(e[t]=` +!function(e){"function"==typeof define&&define.amd?define(e):e()}(function(){"use strict";const d="flv",P="webTransport",M={videoBuffer:1e3,isResize:!0,isFullResize:!1,isFlv:!1,isHls:!1,isWebrtc:!1,debug:!1,hotKey:!1,loadingTimeout:10,heartTimeout:10,timeout:10,loadingTimeoutReplay:!1,heartTimeoutReplay:!1,loadingTimeoutReplayTimes:3,heartTimeoutReplayTimes:3,supportDblclickFullscreen:!1,showBandwidth:!1,keepScreenOn:!1,isNotMute:!1,hasAudio:!0,hasVideo:!0,operateBtns:{fullscreen:!1,screenshot:!1,play:!1,audio:!1,record:!1},controlAutoHide:!1,hasControl:!1,loadingText:"",background:"",decoder:"decoder.js",url:"",rotate:0,forceNoOffscreen:!0,hiddenAutoPause:!1,protocol:2,demuxType:d,useWCS:!1,wcsUseVideoRender:!1,wasmUseVideoRender:!1,useMSE:!1,useOffscreen:!1,autoWasm:!0,wasmDecodeErrorReplay:!0,openWebglAlignment:!1},U="init",N="initVideo",j="initAudio",G="audioCode",V="videoCode",H="decode",u={fullscreen:"fullscreen$2",webFullscreen:"webFullscreen",decoderWorkerInit:"decoderWorkerInit",play:"play",playing:"playing",pause:"pause",mute:"mute",load:"load",loading:"loading",videoInfo:"videoInfo",timeUpdate:"timeUpdate",audioInfo:"audioInfo",log:"log",error:"error",kBps:"kBps",timeout:"timeout",delayTimeout:"delayTimeout",loadingTimeout:"loadingTimeout",stats:"stats",performance:"performance",record:"record",recording:"recording",recordingTimestamp:"recordingTimestamp",recordStart:"recordStart",recordEnd:"recordEnd",recordCreateError:"recordCreateError",buffer:"buffer",videoFrame:"videoFrame",start:"start",metadata:"metadata",resize:"resize",streamEnd:"streamEnd",streamSuccess:"streamSuccess",streamMessage:"streamMessage",streamError:"streamError",volumechange:"volumechange",destroy:"destroy",mseSourceOpen:"mseSourceOpen",mseSourceClose:"mseSourceClose",mseSourceBufferError:"mseSourceBufferError",mseSourceBufferBusy:"mseSourceBufferBusy",videoWaiting:"videoWaiting",videoTimeUpdate:"videoTimeUpdate",videoSyncAudio:"videoSyncAudio",playToRenderTimes:"playToRenderTimes"},c={load:u.load,timeUpdate:u.timeUpdate,videoInfo:u.videoInfo,audioInfo:u.audioInfo,error:u.error,kBps:u.kBps,log:u.log,start:u.start,timeout:u.timeout,loadingTimeout:u.loadingTimeout,delayTimeout:u.delayTimeout,fullscreen:"fullscreen",play:u.play,pause:u.pause,mute:u.mute,stats:u.stats,performance:u.performance,recordingTimestamp:u.recordingTimestamp,recordStart:u.recordStart,recordEnd:u.recordEnd,playToRenderTimes:u.playToRenderTimes},h={playError:"playIsNotPauseOrUrlIsNull",fetchError:"fetchError",websocketError:"websocketError",webcodecsH265NotSupport:"webcodecsH265NotSupport",mediaSourceH265NotSupport:"mediaSourceH265NotSupport",wasmDecodeError:"wasmDecodeError",hlsError:"hlsError",webrtcError:"webrtcError"},W="notConnect",a={download:"download",base64:"base64",blob:"blob"},K={7:"H264(AVC)",12:"H265(HEVC)"},Y={10:"AAC",7:"ALAW",8:"MULAW"},s="webm",t="webcodecs",r="webgl",i="offscreen",Q='video/mp4; codecs="avc1.64002A"';function z(){}function q(e){let t=0{URL.revokeObjectURL(e)},$()?1e3:0)}function l(){return(new Date).getTime()}function g(e,t,r){return Math.max(Math.min(e,Math.max(t,r)),Math.min(t,r))}function p(t,r,e){t&&("object"==typeof r&&Object.keys(r).forEach(e=>{p(t,e,r[e])}),t.style[r]=e)}function J(e,t,r){r=!(2{i+=e;var e=Z(),t=e-n;1e3<=t&&(r(i/t*1e3),n=e,i=0)}}function f(){return/iphone|ipod|android.*mobile|windows.*phone|blackberry.*mobile/i.test(window.navigator.userAgent.toLowerCase())}function $(){var e=window.navigator.userAgent.toLowerCase();return e&&/iphone|ipad|ipod|ios/.test(e)}function n(e){return null==e}function o(e){return!n(e)}function A(e,t){var r,i,t=(t=void 0===t?{}:t).insertAt;e&&"undefined"!=typeof document&&(r=document.head||document.getElementsByTagName("head")[0],(i=document.createElement("style")).type="text/css","top"===t&&r.firstChild?r.insertBefore(i,r.firstChild):r.appendChild(i),i.styleSheet?i.styleSheet.cssText=e:i.appendChild(document.createTextNode(e)))}try{if("object"==typeof WebAssembly&&"function"==typeof WebAssembly.instantiate){var m=new WebAssembly.Module(Uint8Array.of(0,97,115,109,1,0,0,0));if(m instanceof WebAssembly.Module)new WebAssembly.Instance(m),WebAssembly.Instance}}catch(e){}A(".jessibuca-pro-wrap{margin:100px auto 0;background:rgba(13,14,27,.7);width:640px!important;height:398px!important}.jessibuca-pro-btns{margin:10px auto 0;width:640px!important;height:40px;display:flex;align-items:center}.jessibuca-pro-btns #typeSelect{height:30px;margin-right:10px}.jessibuca-pro-btns #changeType{height:30px;line-height:30px;padding:0 10px}@media (max-width:720px){.jessibuca-pro-wrap{width:90vw!important;height:52.7vw!important}}");class ee{constructor(n){this.log=function(e){if(n._opt.debug){for(var t=arguments.length,r=new Array(1this.proxy(t,e,r,i));t.addEventListener(e,r,i);var n=()=>t.removeEventListener(e,r,i);return this.destroys.push(n),n}}destroy(){this.master.debug&&this.master.debug.log("Events","destroy"),this.destroys.forEach(e=>e())}}var _="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function v(e,t){return e(t={exports:{}},t.exports),t.exports}var y=v(function(e){var a,t,o,r,i;a="undefined"!=typeof window&&void 0!==window.document?window.document:{},t=e.exports,o=function(){for(var e,t=[["requestFullscreen","exitFullscreen","fullscreenElement","fullscreenEnabled","fullscreenchange","fullscreenerror"],["webkitRequestFullscreen","webkitExitFullscreen","webkitFullscreenElement","webkitFullscreenEnabled","webkitfullscreenchange","webkitfullscreenerror"],["webkitRequestFullScreen","webkitCancelFullScreen","webkitCurrentFullScreenElement","webkitCancelFullScreen","webkitfullscreenchange","webkitfullscreenerror"],["mozRequestFullScreen","mozCancelFullScreen","mozFullScreenElement","mozFullScreenEnabled","mozfullscreenchange","mozfullscreenerror"],["msRequestFullscreen","msExitFullscreen","msFullscreenElement","msFullscreenEnabled","MSFullscreenChange","MSFullscreenError"]],r=0,i=t.length,n={};r{delete t[e]}),void delete this.e;const i=t[e],n=[];if(i&&r)for(let e=0,t=i.length;e{this.bitmaprenderer.transferFromImageBitmap(e)});break;case r:this.contextGl.clear(this.contextGl.COLOR_BUFFER_BIT);break;case t:this.context2D.clearRect(0,0,this.$videoElement.width,this.$videoElement.height)}}resize(){this.player.debug.log("canvasVideo","resize");var e=this.player._opt;let t=this.player.width,r=this.player.height,i=(e.hasControl&&!e.controlAutoHide&&(f()&&this.player.fullscreen?t-=38:r-=38),this.$videoElement.width),n=this.$videoElement.height;var s=e.rotate,a=(t-i)/2,o=(r-n)/2,l=(270!==s&&90!==s||(i=this.$videoElement.height,n=this.$videoElement.width),t/i),d=r/n;let u=d{this.player.debug.log("Video","canplay")}),r(this.$videoElement,"waiting",()=>{this.player.debug.log("Video","waiting")}),r(this.$videoElement,"timeupdate",e=>{this.player.emit(u.videoTimeUpdate,e.timeStamp),t.handleRender()}),this.player.debug.log("Video","init")}destroy(){this.player.$container.removeChild(this.$videoElement),this.$videoElement&&(this.$videoElement.src="",this.$videoElement=null),this.trackGenerator&&(this.trackGenerator=null),this.vwriter&&(this.trackGenerator=null),this.init=!1,this.off(),this.player.debug.log("Video","destroy")}play(){this.player.debug.log("Video","play"),this.$videoElement.play()}pause(){setTimeout(()=>{this.$videoElement.pause()},100)}clearView(){}screenshot(e,t,r,i){e=e||l(),i=i||a.download;let n=.92;!{png:"image/png",jpeg:"image/jpeg",webp:"image/webp"}[t]&&a[t]&&(i=t,t="png",r=void 0),"string"==typeof r&&(i=r,r=void 0),void 0!==r&&(n=Number(r));r=this.$videoElement;let s=document.createElement("canvas");s.width=r.videoWidth,s.height=r.videoHeight,s.getContext("2d").drawImage(r,0,0,s.width,s.height);r=s.toDataURL(a[t]||a.png,n),t=q(r);return i===a.base64?r:i===a.blob?t:void(i===a.download&&X(t,e))}initCanvasViewSize(){this.resize()}render(e){var t;this.vwriter&&(e.videoFrame?this.vwriter.write(e.videoFrame):e.output&&(t=[...e.output[0],...e.output[1],...e.output[2]],t=Uint8Array.from(t),e={format:"I420",codedWidth:this.videoInfo.width,codedHeight:this.videoInfo.height,timestamp:e.ts},t=new VideoFrame(t,e),this.vwriter.write(t)))}resize(){let e=this.player.width,t=this.player.height;var r=this.player._opt,i=r.rotate;r.hasControl&&!r.controlAutoHide&&(f()&&this.player.fullscreen?e-=38:t-=38),this.$videoElement.width=e,this.$videoElement.height=t,270!==i&&90!==i||(this.$videoElement.width=t,this.$videoElement.height=e);let n=(e-this.$videoElement.width)/2,s=(t-this.$videoElement.height)/2,a="contain";r.isResize||(a="fill"),r.isFullResize&&(a="none"),this.$videoElement.style.objectFit=a,this.$videoElement.style.transform="rotate("+i+"deg)",this.$videoElement.style.left=n+"px",this.$videoElement.style.top=s+"px"}}class ne{constructor(e){return new(ne.getLoaderFactory(e._opt))(e)}static getLoaderFactory(e){return e.useMSE||e.isHls||e.isWebrtc?E:e.useWCS?!e.useOffscreen&&e.wcsUseVideoRender?E:ie:e.wasmUseVideoRender?E:ie}}class se extends b{constructor(e){super(),this.bufferList=[],this.player=e,this.scriptNode=null,this.hasInitScriptNode=!1,this.audioContextChannel=null,this.audioContext=new(window.AudioContext||window.webkitAudioContext),this.gainNode=this.audioContext.createGain();const t=this.audioContext.createBufferSource();t.buffer=this.audioContext.createBuffer(1,1,22050),t.connect(this.audioContext.destination),t.noteOn?t.noteOn(0):t.start(0),this.audioBufferSourceNode=t,this.mediaStreamAudioDestinationNode=this.audioContext.createMediaStreamDestination(),this.audioEnabled(!0),this.gainNode.gain.value=0,this.playing=!1,this.audioSyncVideoOption={diff:null},this.audioInfo={encType:"",channels:"",sampleRate:""},this.init=!1,this.hasAudio=!1,this.on(u.videoSyncAudio,e=>{this.audioSyncVideoOption=e}),this.player.debug.log("AudioContext","init")}destroy(){this.closeAudio(),this.audioContext.close(),this.audioContext=null,this.gainNode=null,this.init=!1,this.hasAudio=!1,this.playing=!1,this.scriptNode&&(this.scriptNode.onaudioprocess=z,this.scriptNode=null),this.audioBufferSourceNode=null,this.mediaStreamAudioDestinationNode=null,this.hasInitScriptNode=!1,this.audioSyncVideoOption={diff:null},this.audioInfo={encType:"",channels:"",sampleRate:""},this.off(),this.player.debug.log("AudioContext","destroy")}updateAudioInfo(e){e.encTypeCode&&(this.audioInfo.encType=Y[e.encTypeCode]),e.channels&&(this.audioInfo.channels=e.channels),e.sampleRate&&(this.audioInfo.sampleRate=e.sampleRate),this.audioInfo.sampleRate&&this.audioInfo.channels&&this.audioInfo.encType&&!this.init&&(this.player.emit(u.audioInfo,this.audioInfo),this.init=!0)}get isPlaying(){return this.playing}get isMute(){return 0===this.gainNode.gain.value||this.isStateSuspended()}get volume(){return this.gainNode.gain.value}get bufferSize(){return this.bufferList.length}initScriptNode(){if(this.playing=!0,!this.hasInitScriptNode){const n=this.audioInfo.channels,e=this.audioContext.createScriptProcessor(1024,0,n);e.onaudioprocess=t=>{const r=t.outputBuffer;if(this.bufferList.length&&this.playing){if(!this.player._opt.useWCS&&!this.player._opt.useMSE){if(1e3{t.emit(u.kBps,(e/1024).toFixed(2))}),t.debug.log("FetchStream","init")}destroy(){this.abort(),this.off(),this.streamRate=null,this.player.debug.log("FetchStream","destroy")}fetchStream(e){const t=this.player["demux"];this.player._times.streamStart=l(),fetch(e,{signal:this.abortController.signal}).then(e=>{this.emit(u.streamSuccess),e.body.pipeTo(new WritableStream({write:e=>(this.streamRate&&this.streamRate(e.byteLength),t.input.write(e)),close:()=>{t.close()},abort:e=>{t.close(),this.emit(h.fetchError,e),this.player.emit(u.error,h.fetchError),this.abort()}}))}).catch(e=>{this.abort(),this.emit(h.fetchError,e),this.player.emit(u.error,h.fetchError)})}abort(){this.abortController&&(this.abortController.abort(),this.abortController=null)}}class de extends b{constructor(t){super(),this.player=t,this.socket=null,this.socketStatus=W,this.wsUrl=null,this.streamRate=e(e=>{t.emit(u.kBps,(e/1024).toFixed(2))}),t.debug.log("WebsocketStream","init")}destroy(){this.socket&&(this.socket.close(),this.socket=null),this.socketStatus=W,this.streamRate=null,this.wsUrl=null,this.off(),this.player.debug.log("WebsocketStream","destroy")}_createWebSocket(){const e=this.player,{debug:t,events:{proxy:r},demux:i}=e;this.socket=new WebSocket(this.wsUrl),this.socket.binaryType="arraybuffer",r(this.socket,"open",()=>{this.emit(u.streamSuccess),t.log("WebsocketStream","socket open"),this.socketStatus="open"}),r(this.socket,"message",e=>{this.streamRate&&this.streamRate(e.data.byteLength),this._handleMessage(e.data)}),r(this.socket,"close",()=>{t.log("WebsocketStream","socket close"),this.emit(u.streamEnd),this.socketStatus="close"}),r(this.socket,"error",e=>{t.log("WebsocketStream","socket error"),this.emit(h.websocketError,e),this.player.emit(u.error,h.websocketError),this.socketStatus="error",i.close(),t.log("WebsocketStream","socket error:",e)})}_handleMessage(e){const t=this.player["demux"];t?t.dispatch(e):this.player.debug.warn("WebsocketStream","websocket handle message demux is null")}fetchStream(e){this.player._times.streamStart=l(),this.wsUrl=e,this._createWebSocket()}}class ue extends b{constructor(e){super(),(this.player=e).debug.log("HlsStream","init")}destroy(){this.off(),this.player.debug.log("HlsStream","destroy")}fetchStream(e){const t=this.player["hls"];this.player._times.streamStart=l(),t.loadSource(e).then(()=>{this.player.debug.log("HlsStream","loadSource success"),this.emit(u.streamSuccess)}).catch(e=>{this.emit(h.hlsError,e),this.emit(u.error,h.hlsError)})}}class ce extends b{constructor(e){super(),this.player=e,this.webrctUrl=null,e.debug.log("WebrtcStream","init")}destroy(){this.webrctUrl=null,this.off(),this.player.debug.log("WebrtcStream","destroy")}fetchStream(e){const t=this.player["webrtc"];this.player._times.streamStart=l(),this.webrctUrl=e.replace("webrtc:",window.location.protocol),t.loadSource(this.webrctUrl).then(()=>{this.player.debug.log("WebrtcStream","loadSource success"),this.emit(u.streamSuccess)}).catch(e=>{this.emit(h.webrtcError,e),this.emit(u.error,h.webrtcError)})}}class he extends b{constructor(t){super(),this.player=t,this.transport=null,this.wtUrl=null,this.streamRate=e(e=>{t.emit(u.kBps,(e/1024).toFixed(2))}),t.debug.log("WebTransportLoader","init")}destroy(){this.abort(),this.off(),this.player.debug.log("WebTransportLoader","destroy")}_createWebTransport(){const e=this.player,{events:{},demux:t}=e;try{this.transport=new WebTransport(this.wtUrl),this.transport.ready.then(()=>{this.emit(u.streamSuccess),this.transport.createBidirectionalStream().then(e=>{e.readable.pipeTo(new WritableStream(t.input))})}).catch(e=>{this.player.debug.warn("WebTransportLoader","_createWebTransport-ready",e)})}catch(e){this.player.debug.warn("WebTransportLoader","_createWebTransport",e)}}fetchStream(e){this.player._times.streamStart=l(),this.wtUrl=e.replace(/^wt/,"https"),this._createWebTransport()}abort(){if(this.transport)try{this.transport.close(),this.transport=null}catch(e){this.transport=null}}}class fe{constructor(e){return new(fe.getLoaderFactory(e._opt.protocol))(e)}static getLoaderFactory(e){return 2===e?le:1===e?de:3===e?ue:4===e?ce:5===e?he:void 0}}var Ae=v(function(e){function S(r,n){if(!r)throw"First parameter is required.";n=new A(r,n=n||{type:"video"});var s=this;function t(e){e&&(n.initCallback=function(){e(),e=n.initCallback=null});var t=new g(r,n);(u=new t(r,n)).record(),d("recording"),n.disableLogs||console.log("Initialized recorderType:",u.constructor.name,"for output-type:",n.type)}function a(i){if(i=i||function(){},u){if("paused"===s.state)return s.resumeRecording(),void setTimeout(function(){a(i)},1);"recording"===s.state||n.disableLogs||console.warn('Recording state should be: "recording", however current state is: ',s.state),n.disableLogs||console.log("Stopped recording "+n.type+" stream."),"gif"!==n.type?u.stop(e):(u.stop(),e()),d("stopped")}else c();function e(e){if(u){Object.keys(u).forEach(function(e){"function"!=typeof u[e]&&(s[e]=u[e])});var t,r=u.blob;if(!r){if(!e)throw"Recording failed.";u.blob=r=e}if(r&&!n.disableLogs&&console.log(r.type,"->",v(r.size)),i){try{t=w.createObjectURL(r)}catch(e){}"function"==typeof i.call?i.call(s,t):i(t)}n.autoWriteToDisk&&l(function(e){var t={};t[n.type+"Blob"]=e,L.Store(t)})}else"function"==typeof i.call?i.call(s,""):i("")}}function o(e){postMessage((new FileReaderSync).readAsDataURL(e))}function l(t,e){if(!t)throw"Pass a callback function over getDataURL.";var r,i=(e||u||{}).blob;if(!i)return n.disableLogs||console.warn("Blob encoder did not finish its job yet."),void setTimeout(function(){l(t,e)},1e3);"undefined"==typeof Worker||navigator.mozGetUserMedia?((r=new FileReader).readAsDataURL(i),r.onload=function(e){t(e.target.result)}):((r=function(e){try{var t=w.createObjectURL(new Blob([e.toString(),"this.onmessage = function (eee) {"+e.name+"(eee.data);}"],{type:"application/javascript"})),r=new Worker(t);return w.revokeObjectURL(t),r}catch(e){}}(o)).onmessage=function(e){t(e.data)},r.postMessage(i))}function i(e){e=e||0,"paused"!==s.state?"stopped"!==s.state&&(e>=s.recordingDuration?a(s.onRecordingStopped):(e+=1e3,setTimeout(function(){i(e)},1e3))):setTimeout(function(){i(e)},1e3)}function d(e){s&&(s.state=e,"function"==typeof s.onStateChanged.call?s.onStateChanged.call(s,e):s.onStateChanged(e))}var u,e='It seems that recorder is destroyed or "startRecording" is not invoked for '+n.type+" recorder.";function c(){!0!==n.disableLogs&&console.warn(e)}var h,f={startRecording:function(e){return n.disableLogs||console.log("RecordRTC version: ",s.version),(n=e?new A(r,e):n).disableLogs||console.log("started recording "+n.type+" stream."),u?(u.clearRecordedData(),u.record(),d("recording"),s.recordingDuration&&i()):t(function(){s.recordingDuration&&i()}),s},stopRecording:a,pauseRecording:function(){u?"recording"===s.state?(d("paused"),u.pause(),n.disableLogs||console.log("Paused recording.")):n.disableLogs||console.warn("Unable to pause the recording. Recording state: ",s.state):c()},resumeRecording:function(){u?"paused"===s.state?(d("recording"),u.resume(),n.disableLogs||console.log("Resumed recording.")):n.disableLogs||console.warn("Unable to resume the recording. Recording state: ",s.state):c()},initRecorder:t,setRecordingDuration:function(e,t){if(void 0===e)throw"recordingDuration is required.";if("number"!=typeof e)throw"recordingDuration must be a number.";return s.recordingDuration=e,s.onRecordingStopped=t||function(){},{onRecordingStopped:function(e){s.onRecordingStopped=e}}},clearRecordedData:function(){u?(u.clearRecordedData(),n.disableLogs||console.log("Cleared old recorded data.")):c()},getBlob:function(){if(u)return u.blob;c()},getDataURL:l,toURL:function(){if(u)return w.createObjectURL(u.blob);c()},getInternalRecorder:function(){return u},save:function(e){u?y(u.blob,e):c()},getFromDisk:function(e){u?S.getFromDisk(n.type,e):c()},setAdvertisementArray:function(e){n.advertisement=[];for(var t=e.length,r=0;r>=8;return new Uint8Array(t.reverse())}(e[r].id)),t.push(a(s)),t.push(i)}return new Blob(t,{type:"video/webm"})}function o(e){for(var t=0,r={};t 127 not supported";return[128|e.trackNum,e.timecode>>8,255&e.timecode,t].map(function(e){return String.fromCharCode(e)}).join("")+e.frame}({discardable:0,frame:e.data.slice(4),invisible:0,keyframe:1,lacing:0,trackNum:1,timecode:Math.round(r)});return r+=e.duration,{data:t,id:163}}))}(s,0,a)};i[1].data.push(l),s+=o}return d(i)}(e.map(function(e){var t=function(e){for(var t=e.RIFF[0].WEBP[0],r=t.indexOf("*"),i=0,n=[];i<4;i++)n[i]=t.charCodeAt(r+3+i);return{width:16383&(n[1]<<8|n[0]),height:16383&(n[3]<<8|n[2]),data:t,riff:e}}(o(atob(e.image.slice(23))));return t.duration=e.duration,t}));postMessage(e)}S.Whammy=D;var L={init:function(){var r,e,t,i=this;function n(e){e.createObjectStore(i.dataStoreName)}function s(){var e=r.transaction([i.dataStoreName],"readwrite");function t(t){e.objectStore(i.dataStoreName).get(t).onsuccess=function(e){i.callback&&i.callback(e.target.result,t)}}i.videoBlob&&e.objectStore(i.dataStoreName).put(i.videoBlob,"videoBlob"),i.gifBlob&&e.objectStore(i.dataStoreName).put(i.gifBlob,"gifBlob"),i.audioBlob&&e.objectStore(i.dataStoreName).put(i.audioBlob,"audioBlob"),t("audioBlob"),t("videoBlob"),t("gifBlob")}"undefined"!=typeof indexedDB&&void 0!==indexedDB.open?(e=this.dbName||location.href.replace(/\/|:|#|%|\.|\[|\]/g,""),(t=indexedDB.open(e,1)).onerror=i.onError,t.onsuccess=function(){(r=t.result).onerror=i.onError,r.setVersion&&1!==r.version?r.setVersion(1).onsuccess=function(){n(r),s()}:s()},t.onupgradeneeded=function(e){n(e.target.result)}):console.error("IndexedDB API are not available in this browser.")},Fetch:function(e){return this.callback=e,this.init(),this},Store:function(e){return this.audioBlob=e.audioBlob,this.videoBlob=e.videoBlob,this.gifBlob=e.gifBlob,this.init(),this},onError:function(e){console.error(JSON.stringify(e,null,"\t"))},dataStoreName:"recordRTC",dbName:null};function I(e,r){"undefined"==typeof GIFEncoder&&((t=document.createElement("script")).src="https://www.webrtc-experiment.com/gif-recorder.js",(document.body||document.documentElement).appendChild(t)),r=r||{};var t,i,n=e instanceof CanvasRenderingContext2D||e instanceof HTMLCanvasElement,s=(this.record=function(){"undefined"!=typeof GIFEncoder&&l?(n||(r.width||(r.width=i.offsetWidth||320),r.height||(r.height=i.offsetHeight||240),r.video||(r.video={width:r.width,height:r.height}),r.canvas||(r.canvas={width:r.width,height:r.height}),a.width=r.canvas.width||320,a.height=r.canvas.height||240,i.width=r.video.width||320,i.height=r.video.height||240),(u=new GIFEncoder).setRepeat(0),u.setDelay(r.frameRate||200),u.setQuality(r.quality||10),u.start(),"function"==typeof r.onGifRecordingStarted&&r.onGifRecordingStarted(),c=f(function e(t){if(!0!==h.clearedRecordedData){if(s)return setTimeout(function(){e(t)},100);c=f(e),t-d<90||(!n&&i.paused&&i.play(),n||o.drawImage(i,0,0,a.width,a.height),r.onGifPreview&&r.onGifPreview(a.toDataURL("image/png")),u.addFrame(o),d=t)}}),r.initCallback&&r.initCallback()):setTimeout(h.record,1e3)},!(this.stop=function(e){e=e||function(){},c&&p(c),this.blob=new Blob([new Uint8Array(u.stream().bin)],{type:"image/gif"}),e(this.blob),u.stream().bin=[]})),a=(this.pause=function(){s=!0},this.resume=function(){s=!1},this.clearRecordedData=function(){h.clearedRecordedData=!0,u&&(u.stream().bin=[])},this.name="GifRecorder",this.toString=function(){return this.name},document.createElement("canvas")),o=a.getContext("2d"),l=(n&&(e instanceof CanvasRenderingContext2D?a=(o=e).canvas:e instanceof HTMLCanvasElement&&(o=e.getContext("2d"),a=e)),!0);n||((i=document.createElement("video")).muted=!0,i.autoplay=!0,i.playsInline=!0,l=!1,i.onloadedmetadata=function(){l=!0},T(e,i),i.play());var d,u,c=null,h=this}function x(i,n){n=n||"multi-streams-mixer";var s=[],a=!1,o=document.createElement("canvas"),l=o.getContext("2d"),d=(o.style.opacity=0,o.style.position="absolute",o.style.zIndex=-1,o.style.top="-1000em",o.style.left="-1000em",o.className=n,(document.body||document.documentElement).appendChild(o),this.disableLogs=!1,this.frameInterval=10,this.width=360,this.height=240,this.useGainNode=!0,this),e=window.AudioContext;void 0===e&&("undefined"!=typeof webkitAudioContext&&(e=webkitAudioContext),"undefined"!=typeof mozAudioContext&&(e=mozAudioContext));window.URL,"undefined"!=typeof navigator&&void 0===navigator.getUserMedia&&(void 0!==navigator.webkitGetUserMedia&&(navigator.getUserMedia=navigator.webkitGetUserMedia),void 0!==navigator.mozGetUserMedia&&(navigator.getUserMedia=navigator.mozGetUserMedia));var u=window.MediaStream,c=(void 0!==(u=void 0===u&&"undefined"!=typeof webkitMediaStream?webkitMediaStream:u)&&void 0===u.prototype.stop&&(u.prototype.stop=function(){this.getTracks().forEach(function(e){e.stop()})}),{});function h(){var e,t,r;a||(e=s.length,t=!1,r=[],s.forEach(function(e){e.stream||(e.stream={}),e.stream.fullcanvas?t=e:r.push(e)}),t?(o.width=t.stream.width,o.height=t.stream.height):r.length?(o.width=1{t.log("Recorder","record timestamp :"+e)},disableLogs:!this.player._opt.debug};try{const t=this.player.video.$videoElement.captureStream(25);if(this.player.audio&&this.player.audio.mediaStreamAudioDestinationNode&&this.player.audio.mediaStreamAudioDestinationNode.stream&&!this.player.audio.isStateSuspended()&&this.player.audio.hasAudio&&this.player._opt.hasAudio){const e=this.player.audio.mediaStreamAudioDestinationNode.stream;var r;0{this.recordingTimestamp+=1,this.player.emit(u.recordingTimestamp,this.recordingTimestamp)},1e3))}stopRecordAndSave(){this.recorder&&this.isRecording&&this.recorder.stopRecording(()=>{this.player.debug.log("Recorder","stop recording"),this.player.emit(u.recordEnd);{var e=this.recorder.getBlob(),t=this.fileName,r=this.fileType;const i=window.URL.createObjectURL(e),n=document.createElement("a");n.href=i,n.download=(t||l())+"."+(r||s),n.click(),setTimeout(()=>{window.URL.revokeObjectURL(i)},$()?1e3:0)}this._reset(),this.player.emit(u.recording,!1)})}_reset(){this.isRecording=!1,this.recordingTimestamp=0,this.recorder&&(this.recorder.destroy(),this.recorder=null),this.fileName=null,this.recordingInterval&&clearInterval(this.recordingInterval),this.recordingInterval=null}}class pe{constructor(e){return new(pe.getLoaderFactory())(e)}static getLoaderFactory(){return ge}}class me{constructor(e){this.player=e,this.decoderWorker=new Worker(e._opt.decoder),this._initDecoderWorker(),e.debug.log("decoderWorker","init")}destroy(){this.decoderWorker.postMessage({cmd:"close"}),this.decoderWorker.terminate(),this.decoderWorker=null,this.player.debug.log("decoderWorker","destroy")}_initDecoderWorker(){const{debug:r,events:{}}=this.player;this.decoderWorker.onmessage=e=>{const t=e.data;switch(t.cmd){case U:r.log("decoderWorker","onmessage:",U),this.player.loaded||this.player.emit(u.load),this.player.emit(u.decoderWorkerInit),this._initWork();break;case V:r.log("decoderWorker","onmessage:",V,t.code),this.player._times.decodeStart||(this.player._times.decodeStart=l()),this.player.video.updateVideoInfo({encTypeCode:t.code});break;case G:r.log("decoderWorker","onmessage:",G,t.code),this.player.audio&&this.player.audio.updateAudioInfo({encTypeCode:t.code});break;case N:r.log("decoderWorker","onmessage:",N,`width:${t.w},height:`+t.h),this.player.video.updateVideoInfo({width:t.w,height:t.h}),this.player.video.initCanvasViewSize();break;case j:r.log("decoderWorker","onmessage:",j,`channels:${t.channels},sampleRate:`+t.sampleRate),this.player.audio&&(this.player.audio.updateAudioInfo(t),this.player.audio.initScriptNode(t));break;case"render":this.player.handleRender(),this.player.video.render(t),this.player.emit(u.timeUpdate,t.ts),this.player.updateStats({fps:!0,ts:t.ts,buf:t.delay}),this.player._times.videoStart||(this.player._times.videoStart=l(),this.player.handlePlayToRenderTimes());break;case"playAudio":this.player.playing&&this.player.audio&&this.player.audio.play(t.buffer,t.ts);break;case"wasmError":t.message&&-1!==t.message.indexOf("Invalid NAL unit size")&&(this.player.emit(u.error,h.wasmDecodeError),this.player.emit(h.wasmDecodeError));break;default:this.player[t.cmd]&&this.player[t.cmd](t)}}}_initWork(){var e={debug:this.player._opt.debug,forceNoOffscreen:this.player._opt.forceNoOffscreen,useWCS:this.player._opt.useWCS,videoBuffer:this.player._opt.videoBuffer,openWebglAlignment:this.player._opt.openWebglAlignment};this.decoderWorker.postMessage({cmd:"init",opt:JSON.stringify(e),sampleRate:this.player.audio&&this.player.audio.audioContext.sampleRate||0})}decodeVideo(e,t,r){t={type:2,ts:Math.max(t,0),isIFrame:r};this.decoderWorker.postMessage({cmd:H,buffer:e,options:t},[e.buffer])}decodeAudio(e,t){this.player._opt.useWCS&&!this.player._opt.useOffscreen||this.player._opt.useMSE?this._decodeAudioNoDelay(e,t):this._decodeAudio(e,t)}_decodeAudio(e,t){t={type:1,ts:Math.max(t,0)};this.decoderWorker.postMessage({cmd:H,buffer:e,options:t},[e.buffer])}_decodeAudioNoDelay(e,t){this.decoderWorker.postMessage({cmd:"audioDecode",buffer:e,ts:Math.max(t,0)},[e.buffer])}updateWorkConfig(e){this.decoderWorker.postMessage({cmd:"updateConfig",key:e.key,value:e.value})}}class ve extends b{constructor(e){super(),this.player=e,this.stopId=null,this.firstTimestamp=null,this.startTimestamp=null,this.delay=-1,this.bufferList=[],this.dropping=!1,this.initInterval()}destroy(){this.stopId&&(clearInterval(this.stopId),this.stopId=null),this.firstTimestamp=null,this.startTimestamp=null,this.delay=-1,this.bufferList=[],this.dropping=!1,this.off()}getDelay(e){return e?(this.firstTimestamp?e&&(this.delay=Date.now()-this.startTimestamp-(e-this.firstTimestamp)):(this.firstTimestamp=e,this.startTimestamp=Date.now(),this.delay=-1),this.delay):-1}resetDelay(){this.firstTimestamp=null,this.startTimestamp=null,this.delay=-1,this.dropping=!1}initInterval(){this.player.debug.log("common dumex","init Interval");var e=()=>{let e;var t=this.player._opt.videoBuffer;if(this.bufferList.length)if(this.dropping){for(1===(e=this.bufferList.shift()).type&&0===e.payload[1]&&this._doDecoderDecode(e);!e.isIFrame&&this.bufferList.length;)1===(e=this.bufferList.shift()).type&&0===e.payload[1]&&this._doDecoderDecode(e);e.isIFrame&&(this.dropping=!1,this._doDecoderDecode(e))}else if(e=this.bufferList[0],-1===this.getDelay(e.ts))this.bufferList.shift(),this._doDecoderDecode(e);else if(this.delay>t+1e3)this.resetDelay(),this.dropping=!0;else for(;this.bufferList.length&&(e=this.bufferList[0],this.getDelay(e.ts)>t);)this.bufferList.shift(),this._doDecoderDecode(e)};e(),this.stopId=setInterval(e,10)}_doDecode(e,t,r,i){const n=this.player;let s={ts:r,type:t,isIFrame:!1};n._opt.useWCS&&!n._opt.useOffscreen||n._opt.useMSE?(2===t&&(s.isIFrame=i),this.pushBuffer(e,s)):2===t?n.decoderWorker&&n.decoderWorker.decodeVideo(e,r,i):1===t&&n._opt.hasAudio&&n.decoderWorker&&n.decoderWorker.decodeAudio(e,r)}_doDecoderDecode(e){const t=this.player,{webcodecsDecoder:r,mseDecoder:i}=t;1===e.type?t._opt.hasAudio&&t.decoderWorker&&t.decoderWorker.decodeAudio(e.payload,e.ts):2===e.type&&(t._opt.useWCS&&!t._opt.useOffscreen?r.decodeVideo(e.payload,e.ts,e.isIFrame):t._opt.useMSE&&i.decodeVideo(e.payload,e.ts,e.isIFrame))}pushBuffer(e,t){1===t.type?this.bufferList.push({ts:t.ts,payload:e,type:1}):2===t.type&&this.bufferList.push({ts:t.ts,payload:e,type:2,isIFrame:t.isIFrame})}close(){}}const ye=[[Uint8Array,Int8Array],[Uint16Array,Int16Array],[Uint32Array,Int32Array,Float32Array],[Float64Array]],T=Symbol(32),S=Symbol(16),w=Symbol(8),R=new Map;ye.forEach((e,t)=>e.forEach(e=>R.set(e,t)));class D{constructor(e){this.g=e,this.consumed=0,e&&(this.need=e.next().value)}fillFromReader(r){return e=this,l=function*(){var{done:e,value:t}=yield r.read();return e?void this.close():(this.write(t),this.fillFromReader(r))},new(o=(o=a=void 0)||Promise)(function(r,t){function i(e){try{s(l.next(e))}catch(e){t(e)}}function n(e){try{s(l.throw(e))}catch(e){t(e)}}function s(e){var t;e.done?r(e.value):((t=e.value)instanceof o?t:new o(function(e){e(t)})).then(i,n)}s((l=l.apply(e,a||[])).next())});var e,a,o,l}consume(){this.buffer&&this.consumed&&(this.buffer.copyWithin(0,this.consumed),this.buffer=this.buffer.subarray(0,this.buffer.length-this.consumed),this.consumed=0)}demand(e,t){return t&&this.consume(),this.need=e,this.flush()}read(r){return new Promise((t,e)=>{if(this.resolve)return e("last read not complete yet");this.resolve=e=>{delete this.resolve,delete this.need,t(e)},this.demand(r,!0)})}readU32(){return this.read(T)}readU16(){return this.read(S)}readU8(){return this.read(w)}close(){this.g&&this.g.return()}flush(){if(this.buffer&&this.need){let e=null;const i=this.buffer.subarray(this.consumed);let t=0;var r=e=>i.length<(t=e);if("number"==typeof this.need){if(r(this.need))return;e=i.subarray(0,t)}else if(this.need instanceof ArrayBuffer){if(r(this.need.byteLength))return;new Uint8Array(this.need).set(i.subarray(0,t)),e=this.need}else if(this.need===T){if(r(4))return;e=i[0]<<24|i[1]<<16|i[2]<<8|i[3]}else if(this.need===S){if(r(2))return;e=i[0]<<8|i[1]}else if(this.need===w){if(r(1))return;e=i[0]}else if(R.has(this.need.constructor)){if(r(this.need.length<>24&255,e>>16&255,e>>8&255,255&e]),this.flush()}writeU16(e){this.malloc(2).set([e>>8&255,255&e]),this.flush()}writeU8(e){this.malloc(1)[0]=e,this.flush()}malloc(e){if(this.buffer){var t=this.buffer.length,r=t+e;if(r<=this.buffer.buffer.byteLength-this.buffer.byteOffset)this.buffer=new Uint8Array(this.buffer.buffer,this.buffer.byteOffset,r);else{const e=new Uint8Array(r);e.set(this.buffer),this.buffer=e}return this.buffer.subarray(t,r)}return this.buffer=new Uint8Array(e),this.buffer}}D.U32=T,D.U16=S,D.U8=w;class be extends ve{constructor(e){super(e),this.input=new D(this.demux()),e.debug.log("FlvDemux","init")}destroy(){super.destroy(),this.player.debug.log("FlvDemux","destroy")}dispatch(e){this.input.write(e)}*demux(){yield 9;const t=new ArrayBuffer(4),r=new Uint8Array(t),i=new Uint32Array(t),n=this.player;for(;;){r[3]=0;const t=yield 15,o=t[4];r[0]=t[7],r[1]=t[6],r[2]=t[5];var s=i[0];r[0]=t[10],r[1]=t[9],r[2]=t[8];let e=i[0];16777215===e&&(r[3]=t[11],e=i[0]);var a=(yield s).slice();switch(o){case 8:n._opt.hasAudio&&(n.updateStats({abps:a.byteLength}),0>4==1;0>4==1,t.updateStats({vbps:s.byteLength}),0(e[t]=` - ${k[t]?`${k[t]}`:""} -`,e),{}),Re=(i,n)=>{const{proxy:e}=i["events"],t=document.createElement("object");t.setAttribute("aria-hidden","true"),t.setAttribute("tabindex",-1),t.type="text/html",t.data="about:blank",p(t,{display:"block",position:"absolute",top:"0",left:"0",height:"100%",width:"100%",overflow:"hidden",pointerEvents:"none",zIndex:"-1"});let r=i.width,s=i.height;e(t,"load",()=>{e(t.contentDocument.defaultView,"resize",()=>{i.width===r&&i.height===s||(r=i.width,s=i.height,i.emit(u.resize))})}),i.$container.appendChild(t),i.on(u.destroy,()=>{i.$container.removeChild(t)}),i.on(u.volumechange,()=>{var e,t,r;0===(e=i.volume)?(p(n.$volumeOn,"display","none"),p(n.$volumeOff,"display","flex"),p(n.$volumeHandle,"top","48px")):n.$volumeHandle&&n.$volumePanel&&(t=J(n.$volumePanel,"height")||60,r=J(n.$volumeHandle,"height"),p(n.$volumeHandle,"top",t-(t-r)*e-r+"px"),p(n.$volumeOn,"display","flex"),p(n.$volumeOff,"display","none")),n.$volumePanelText&&(n.$volumePanelText.innerHTML=parseInt(100*e))}),i.on(u.loading,e=>{p(n.$loading,"display",e?"flex":"none"),p(n.$poster,"display","none"),e&&p(n.$playBig,"display","none")});const a=e=>{e=!0===e||!1===e?e:i.fullscreen;p(n.$fullscreenExit,"display",e?"flex":"none"),p(n.$fullscreen,"display",e?"none":"flex")};try{y.on("change",a),i.events.destroys.push(()=>{y.off("change",a)})}catch(i){}i.on(u.webFullscreen,e=>{a(e)}),i.on(u.recording,()=>{p(n.$record,"display",i.recording?"none":"flex"),p(n.$recordStop,"display",i.recording?"flex":"none")}),i.on(u.recordingTimestamp,e=>{}),i.on(u.playing,e=>{p(n.$play,"display",e?"none":"flex"),p(n.$playBig,"display",e?"none":"block"),p(n.$pause,"display",e?"flex":"none"),p(n.$screenshot,"display",e?"flex":"none"),p(n.$record,"display",e?"flex":"none"),p(n.$fullscreen,"display",e?"flex":"none"),e||n.$speed&&(n.$speed.innerHTML="0 KB/S")}),i.on(u.kBps,e=>{e=function(e){if(null==e||""===e)return"0 KB/S";var t=new Array("KB/S","MB/S","GB/S","TB/S","PB/S","EB/S","ZB/S","YB/S"),e=parseFloat(e),r=Math.floor(Math.log(e)/Math.log(1024));return(e/Math.pow(1024,r)).toFixed(2)+t[r]}(e);n.$speed&&(n.$speed.innerHTML=e)})};A('@keyframes rotation{0%{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(1turn)}}.jessibuca-container .jessibuca-icon{cursor:pointer;width:16px;height:16px}.jessibuca-container .jessibuca-poster{position:absolute;z-index:10;left:0;top:0;right:0;bottom:0;height:100%;width:100%;background-position:50%;background-repeat:no-repeat;background-size:contain;pointer-events:none}.jessibuca-container .jessibuca-play-big{position:absolute;display:none;height:100%;width:100%;background:rgba(0,0,0,.4)}.jessibuca-container .jessibuca-play-big:after{cursor:pointer;content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:block;width:48px;height:48px;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAACgklEQVRoQ+3ZPYsTQRjA8eeZZCFlWttAwCIkZOaZJt8hlvkeHrlccuAFT6wEG0FQOeQQLCIWih6chQgKgkkKIyqKCVYip54IWmiQkTmyYhFvd3Zn3yDb7szu/7cv7GaDkPEFM94PK0DSZ9DzDAyHw7uI2HRDlVJX5/N5r9FoHCYdr/fvCRiNRmpJ6AEidoUQ15NG+AH8BgD2n9AHANAmohdJQfwAfgGA4xF4bjabnW21Whob62ILoKNfAsAGEd2PU2ATcNSNiDf0/cE5/xAHxDpgEf0NADaJ6HLUiKgAbvcjpdSGlPJZVJCoAUfdSqkLxWLxTLlc/mkbEgtgET1TSnWklLdtIuIEuN23crlcp16vv7cBSQKgu38AwBYRXQyLSArg3hsjRDxNRE+CQhIF/BN9qVAobFYqle+mkLQAdLd+8K0T0U0TRJoAbvc9fVkJId75gaQRoLv1C2STiPTb7rFLWgE6+g0RncwyYEJEtawCvjDGmpzzp5kD6NfxfD7frtVqB17xen2a7oG3ALBm+oMoFQBEPD+dTvtBfpImDXjIGFvjnD/3c7ksG5MU4HDxWeZa0HB3XhKAXcdxOn5vUi9gnIDXSqm2lHLPK8pkfVyAbSLqm4T5HRs1YB8RO0KIid8g03FRAT4rpbpSyh3TINPxUQB2GGM9zvkn05gg420CJovLZT9ISNA5tgB9ItoOGhFmnh/AcZ/X9xhj65zzV2Eiwsz1A1j2B8dHAOgS0W6YnduY6wkYj8d3lFKn/j66Ea84jtOrVqtfbQSE3YYnYDAY5Eql0hYAnNDv6kKIx2F3anO+J8DmzqLY1goQxVE12ebqDJgcrSjGrs5AFEfVZJt/AF0m+jHzUTtnAAAAAElFTkSuQmCC");background-repeat:no-repeat;background-position:50%}.jessibuca-container .jessibuca-play-big:hover:after{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAACEElEQVRoQ+2ZXStEQRjH/3/yIXwDdz7J+i7kvdisXCk3SiFJW27kglBcSFFKbqwQSa4krykuKB09Naf2Yndn5jgzc06d53Znd36/mWfeniVyHsw5PwqB0DOonYEoijYBlOpAFwCMkHwLDS/9mwhEDUCfAAyTXA4tYSLwC6CtCegegH6S56FETAR+AHRoACcBTJAUWa+RloBAXwAYIrnt0yBNgZi7qtbHgw8RFwLC/QFglOScawlXAjH3gUqrE1cirgVi7mkAYyS/0xbxJSDcdwAGSa6nKeFTIOZeUyL3aYiEEBDuLwDjJGf+KxFKIOY+BdBL8iipSGiBmHtWbbuftiJZERBuOfgGSK7aSGRJIObeUml1ayKSRQHhlgtkiaTcdltGVgUE+ppkV54FaiS78yrwqlLoOI8Cch2XV548W7WRpTVwA6DP9kGUFYEpAOUkT9LQAvtq1M+0udKkQSgBqSlJWWYxKXj8vRACK+o6bbRIdYI+Ba7U7rKjg7L53JdAhWTZBsy0rWuBXZUuNVMg23auBF7UIl2yBbJt70JAoKV6/WwLk6R9mgKSJlJ1kLTxFmkJyCla8UZd15GJQKvyumyJ8gy8DAEvfZoINPqD41EtUjmUgoaJwAaAnjrKebVI34OSq85NBNqlCAWgE0CV5GEWwI3vQlmCbcSinYFCwPEIFDPgeIC1P1/MgHaIHDf4Aydx2TF7wnKeAAAAAElFTkSuQmCC")}.jessibuca-container .jessibuca-loading{display:none;flex-direction:column;justify-content:center;align-items:center;position:absolute;z-index:20;left:0;top:0;right:0;bottom:0;width:100%;height:100%;pointer-events:none}.jessibuca-container .jessibuca-loading-text{line-height:20px;font-size:13px;color:#fff;margin-top:10px}.jessibuca-container .jessibuca-controls{background-color:#161616;box-sizing:border-box;display:flex;flex-direction:column;justify-content:flex-end;position:absolute;z-index:40;left:0;right:0;bottom:0;height:38px;padding-left:13px;padding-right:13px;font-size:14px;color:#fff;opacity:0;visibility:hidden;transition:all .2s ease-in-out;-webkit-user-select:none;user-select:none;transition:width .5s ease-in}.jessibuca-container .jessibuca-controls .jessibuca-controls-item{position:relative;display:flex;justify-content:center;padding:0 8px}.jessibuca-container .jessibuca-controls .jessibuca-controls-item:hover .icon-title-tips{visibility:visible;opacity:1}.jessibuca-container .jessibuca-controls .jessibuca-fullscreen,.jessibuca-container .jessibuca-controls .jessibuca-fullscreen-exit,.jessibuca-container .jessibuca-controls .jessibuca-icon-audio,.jessibuca-container .jessibuca-controls .jessibuca-microphone-close,.jessibuca-container .jessibuca-controls .jessibuca-pause,.jessibuca-container .jessibuca-controls .jessibuca-play,.jessibuca-container .jessibuca-controls .jessibuca-record,.jessibuca-container .jessibuca-controls .jessibuca-record-stop,.jessibuca-container .jessibuca-controls .jessibuca-screenshot{display:none}.jessibuca-container .jessibuca-controls .jessibuca-icon-audio,.jessibuca-container .jessibuca-controls .jessibuca-icon-mute{z-index:1}.jessibuca-container .jessibuca-controls .jessibuca-controls-bottom{display:flex;justify-content:space-between;height:100%}.jessibuca-container .jessibuca-controls .jessibuca-controls-bottom .jessibuca-controls-left,.jessibuca-container .jessibuca-controls .jessibuca-controls-bottom .jessibuca-controls-right{display:flex;align-items:center}.jessibuca-container.jessibuca-controls-show .jessibuca-controls{opacity:1;visibility:visible}.jessibuca-container.jessibuca-controls-show-auto-hide .jessibuca-controls{opacity:.8;visibility:visible;display:none}.jessibuca-container.jessibuca-hide-cursor *{cursor:none!important}.jessibuca-container .jessibuca-icon-loading{width:50px;height:50px;background:url("data:image/png;base64,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") no-repeat 50%;background-size:100% 100%;animation:rotation 1s linear infinite}.jessibuca-container .jessibuca-icon-screenshot{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAE5UlEQVRoQ+1YW2sdVRT+1s7JxbsoVkEUrIIX0ouz15zYNA+N1RdtQfCltlUfvLbqL/BCwZ8grbHtizQqPojgBSr0JkiMmT2nxgapqBURtPVCq7HxJCeZJVPmxDlzZubMmXOSEsnAvOy917fXt9e39tp7E5b4R0vcfywTuNgRbBgBx3HuJqLVzPzmYjprjHkcwAlmLqXNm4XAISLaSESPaq2HF4OE67rbRGRYRA7btn1fbgLGmKsA/Azg0gBkGzO/vZAkHMd5hIiqc5wHcCMz/5k0Z2oExsfHV1QqldPAf8lORNu11m8tBAljzFYAYWxRSl1vWdZvuQj4RsYYF4AVBlgIOVVlE55HRIxt23ZuCfmGjuOsJ6LPoiAistW27XfaEYmIbOYhPc9bXywWR1oiEJDYQkR1zrYjEjGyqfqbKd8a7kJVtLgQ+30i8pht2wfyRKIdmJkJBPkQTbILfudJ7CTZNBvVpggEcgpvc/ML38zESbLJsxBNE/A9biX0rdjGyTQXgbxyapdsarb0PMlXtWnGoXbKpm0Essqp3bJpK4E0OXmed3+hUBDP8w5FI91M0rdcyLLILElOCbaZilSWeXMncRx4klTCY1spfG3dhZJWx3GcDUR0EEB3ZMw0ET2gtT6SZWWzjmlrBIJCl0hAKfWgZVmHszqXZVxbCSxpCS2JJA6umIhe8ZKKVLPbaBJ+S9toqVRa53nedgAbAKwIwH4FcAzAa0R0l4i8F7PPz189k6RFRA+LyNcAXojDV0oNW5b1eW4Cxpg9AHZkSaaa6hhzb065uDSCH2LmRB8Sk9gY4293g43Qo/1pV80m8yQMfZSZ781cB1zXHRKRZ2IMpgD8A+DamL4ZItqitX4/jbQx5iEA7wLoihn3V/ACckWMJN/QWj9b1x5tGBsbW6uUOh5pPy0iL3Z2dn6ilJqanp5ep5TaJSLhF4NppdRNaU8gPmapVLrO87yfIoXuWyJ6uVKp+HmFjo6OQSJ6FcBtYT+UUmstyxqvkWuUgDFmP4AnQu2/e563qlgs+u9DNZ8xZhRAX7VRRPbath0XuXk7Y8xeAE+FgL6fnJzsHRwcLIfBR0ZGLunq6poAsDLUvp+Zw7b1r9PGmJMAbg8Z7WDmoThZuK67WkS+DD18fcPMdzSQUBR/EzN/nIC/SUQ+DPXV4dclsTHmHAD/SfHCNzc3t7Kvr++HJKeMMacA3BL0nyuXyzcPDAxMxo0fHR29slAo/Ajg6qD/fE9Pzw29vb1/x42fmJi4vFwu+5G/LOg/y8zXNJLQ2dAES5JANMQ7mfn1jBI6ycx3NiMhItqstf4oAX+ziHwQ6qvDj5NQNIn/ALCKmX+JSeIvABRD7fuY+ekGBPYBeDI05tTMzExvf3+/vz2Hk91/ET8RSeI6/DoCpVJpjed5fmKGvzMAXpqdnT3oed5Ud3d3v4jsAqBr9Ei0Rmv9VRqBBPzvROQVETnq2xJRdRu9tRF+bCVOKWT+Kvl/TSIFk6SW/LAjKfjV5K8rZABi8dOOEv7FI7Z8x6zwEWbemLbyMfJr5qiSiJ96oclymBOR3bZtP9+M89WxxpjdAHY2sN3DzM8ljWl4I3Nd9x7/OE1ENcdpETnmH3e11n41zv0l4J8RkU+J6AAz+xtF4teQQG7PFslwmcAiLfSyhC72Qv9/I/Avns2OT7QJskoAAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-screenshot:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAED0lEQVRoQ+2ZycsdRRTFf2ejqHFAMQqiYBTUoElUHLNx3GgCgpuYRF2o0UT9CxwQ/BMkMSbZSKLiQgQHUDCJgjiAxiEiESdEcJbEedgcKaj3UV+/6q7u/jovPPkK3qbr1ql76p5bt6qemPKmKfefeQKHOoLFCNg+H1gi6fFJOmv7VmCvpD1N87Yh8ApwNXCzpB2TIGF7DRDm2inpmt4EbB8LfAMcGUHWSHryYJKwfRMwmuMP4BRJv9TN2RgB2wuB72BWsq+V9MTBIGF7NZBiGzhJ0o+9CIRBtt8FLqgADC6nRDbpVO9Iuqi3hCKB5cDrGZDVkp4aIhIV2aSQyyW9MScCkcQqIOfsnCORkc3I31b5VtyFRmg1IQ7dt0ja3icSQ2C2JhAjUU2ykd+dE7tBNp2i2olAJJFuc+nCt564QTadF6IzgUhiVGiqyinKaQjZpJP2ItBXTkPJZhACXeU0pGwGI9BWTkPLZlACBTldG4o5EA6E1dY66edcyNrs8Q36zg1vVaTazNs7iXPgDVJJzYs7VRvHRzaDEohyugJ4CTi84sg/wHWSdnVxsGQ7aQLXS9pZcqpL/6AEplpCU5HE8YpJ9YrXUKQ6baN1+HPaRm1fBqwFQnKGK2ZoPwCvAo8Ai4FnMpPMHMwapHUj8DFwbw3+Dklv9iZgexOwvktSRduxU2VDlErwmyXV+lCbxLbDdndlCT3TX3vV7JgnKfRuSVflfMkSsL0ZuDMz4E/gL+CETN+/wCpJzzaRtn0D8DRwWMbu1/gCcnSm7zFJd1W/jxGwvQx4r2IYnlbuA14GAomQFw8B6YtBKFSnNj2BxEJ3IvB1pdB9CjwQ8yqYhcg/DJxZ8WOZpA/SbzkC24DbEqOfgPMkBRKzmu23gEuSj1sk5SI3Y2J7C3BHMuZz4FxJf6fgto8APgIWJd+3SUrHjr9O294HnJUMWi8pSGqs2V4CvJ88fH0i6eyChKr4KyS9WIO/Ang+6RvDz0XgABCeFEdtkaQv65yy/QVweuwPY0+T9FuNQ8cAXwHHxf7wdHiypN9r7BfEl8GjYv9+SceXJLQ/mSDYTh2Baog3SHq0pYT2STqno4RWSnqhBn8l8FzSN4bfJol/jkn8bXUS228DFyfft0paVyCwFbg9sQkSDEkctueZZju8iO+tJPEYfo7A0piYKd73wP3xnB+20cvjNnphxdmlkj4sEMjhfwY8COyOY0fb6Bkl/K6FLKxS+M1KpDhJY8mvrG5doRwlf66QZfGbjhLh4pEt35kV3iUp/IvTunU8qtTil/7gaHOY2yjpntaez9b5RmBDYewmSXfX2RRvZLYvbThOh+NuqMa9Ww1+yLnXgO2SwkZR24oEens2oYHzBCa00PMSOtQL/f+NwH+Hg8hAnbrYgQAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-play{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAACgklEQVRoQ+3ZPYsTQRjA8eeZZCFlWttAwCIkZOaZJt8hlvkeHrlccuAFT6wEG0FQOeQQLCIWih6chQgKgkkKIyqKCVYip54IWmiQkTmyYhFvd3Zn3yDb7szu/7cv7GaDkPEFM94PK0DSZ9DzDAyHw7uI2HRDlVJX5/N5r9FoHCYdr/fvCRiNRmpJ6AEidoUQ15NG+AH8BgD2n9AHANAmohdJQfwAfgGA4xF4bjabnW21Whob62ILoKNfAsAGEd2PU2ATcNSNiDf0/cE5/xAHxDpgEf0NADaJ6HLUiKgAbvcjpdSGlPJZVJCoAUfdSqkLxWLxTLlc/mkbEgtgET1TSnWklLdtIuIEuN23crlcp16vv7cBSQKgu38AwBYRXQyLSArg3hsjRDxNRE+CQhIF/BN9qVAobFYqle+mkLQAdLd+8K0T0U0TRJoAbvc9fVkJId75gaQRoLv1C2STiPTb7rFLWgE6+g0RncwyYEJEtawCvjDGmpzzp5kD6NfxfD7frtVqB17xen2a7oG3ALBm+oMoFQBEPD+dTvtBfpImDXjIGFvjnD/3c7ksG5MU4HDxWeZa0HB3XhKAXcdxOn5vUi9gnIDXSqm2lHLPK8pkfVyAbSLqm4T5HRs1YB8RO0KIid8g03FRAT4rpbpSyh3TINPxUQB2GGM9zvkn05gg420CJovLZT9ISNA5tgB9ItoOGhFmnh/AcZ/X9xhj65zzV2Eiwsz1A1j2B8dHAOgS0W6YnduY6wkYj8d3lFKn/j66Ea84jtOrVqtfbQSE3YYnYDAY5Eql0hYAnNDv6kKIx2F3anO+J8DmzqLY1goQxVE12ebqDJgcrSjGrs5AFEfVZJt/AF0m+jHzUTtnAAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-play:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAACEElEQVRoQ+2ZXStEQRjH/3/yIXwDdz7J+i7kvdisXCk3SiFJW27kglBcSFFKbqwQSa4krykuKB09Naf2Yndn5jgzc06d53Znd36/mWfeniVyHsw5PwqB0DOonYEoijYBlOpAFwCMkHwLDS/9mwhEDUCfAAyTXA4tYSLwC6CtCegegH6S56FETAR+AHRoACcBTJAUWa+RloBAXwAYIrnt0yBNgZi7qtbHgw8RFwLC/QFglOScawlXAjH3gUqrE1cirgVi7mkAYyS/0xbxJSDcdwAGSa6nKeFTIOZeUyL3aYiEEBDuLwDjJGf+KxFKIOY+BdBL8iipSGiBmHtWbbuftiJZERBuOfgGSK7aSGRJIObeUml1ayKSRQHhlgtkiaTcdltGVgUE+ppkV54FaiS78yrwqlLoOI8Cch2XV548W7WRpTVwA6DP9kGUFYEpAOUkT9LQAvtq1M+0udKkQSgBqSlJWWYxKXj8vRACK+o6bbRIdYI+Ba7U7rKjg7L53JdAhWTZBsy0rWuBXZUuNVMg23auBF7UIl2yBbJt70JAoKV6/WwLk6R9mgKSJlJ1kLTxFmkJyCla8UZd15GJQKvyumyJ8gy8DAEvfZoINPqD41EtUjmUgoaJwAaAnjrKebVI34OSq85NBNqlCAWgE0CV5GEWwI3vQlmCbcSinYFCwPEIFDPgeIC1P1/MgHaIHDf4Aydx2TF7wnKeAAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-pause{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAABA0lEQVRoQ+1YwQqCUBAcfWXXsLr2AXWTPXno8yVB8AP6Aa3oHI+kCDqYaawJljSe133uzO44bx0M/HEG/v1gAd9mkAyQgY4I/F8LJUlyrQFtD2AtIkcNoFEU+Z7n7QD4DfFHEVlocrVmgAUAIAOl3mILPcDgEFcUhyrUKMGUUcroc3NQRimj9XJBGaWMvvPydKN0o6/9QTdKN6rZANxj6EbpRulGuZnjYqs8BbyR8Ub2Izeys+u6yyAIDpo/ehzHM2NMDsA0xFsRmWhyfTIDWSXxCEBmrd2EYXjSHJqm6bQoii2AOYBL5Z0xgFxEVppcrQvQJO0zhgX0iXbdWWSADHRE4AZQ731AhEUeNwAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-pause:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAA7klEQVRoQ+2YSwrCQBBEX6HiVvxsPYDewfN7By/gD9ciQkvERQwJdBSiYs0mEDo96aruombEjy/9+P/jAj7NoBkwA28i8H8tFBFRA9oeWEo6ZgCNiDGwAYpn3TpKmmVytWbABQBmoNRbbqEHGB7iiuJYhRol2DJqGX1uDsuoZdRmLuNZSzGWUcuoZdRHSp/IylNgK2ErYSthK3FHwLcSvpXIjoLt9Jfa6TMwl3TIMBkRE2AH9BriL5KGmVyvWIltJXEfKN6tJJ0ym0bECFgDU+Ba+WZQFCdpkcnVuoBM0i5jXECXaNftZQbMwJsI3AAPN3dAQflHegAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-record{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAC+UlEQVRoQ+1ZS2sTURT+zlDJYE3XSq219QHVuEjnJDT+Bff9Abqw2voAEfGxqygUqWhVFHGl/yMLu9BwByxk5SNI66ML6U7axjhHbmhgWiftncxoOiV3FcI53z3f/e65594zhIQPSnj86BBot4IdBToKRFyBnbeFlFIScVEiuYvIWC6Xe2YK8pcC7SYA4CMzH4mDQBXAqilQBDsLQLfPf9FxnF4i8kwwmypARI+Wl5dvmIBEsUmlUkNE9NaHsVCpVAZGR0d/m+A2JSAid3K53E0TkCg2pVKpz7KseR/GfKVSGYxMAMA0M1+JEpyJb6lUOm5ZVnkrAsVisaunp+esiByr1Wp3R0ZGvmifzZK4XQQWHMc52MgBpdQuAOcAXABwuB400ZTjONdaIjA7O5u2bVsnWU1EujzP+5nP5xdMVjvIJkCBD8x8VCm1G8AYgAkAAxt8Z5j5YmgCSqlTAJ4D2OcD/AXgATNfbYVEAIFPIvKKiE4D6GuCea8xX6gtpJT6DmBvECgRFRzHeROWRAABE4iWCbwHEFhkPM/L5vP5dyaz+23+KwHXdR3P854S0YG1ILSCuthNMfNM2OC1/RYENLY+ygcBnPfht6ZAA6BYLNr6dyqVokKhsGpaNQ2TWJstreXaE2aed133sojcj41AKyvdzCdAgSXLsk4MDw9/a/i4rntbRPxFNZoC/5jAV2be759DKTUJ4FZSFFi0bbs/k8noy2R9dAjEuWU2YgXkQOK3kD6BMsysi2Z9JC2Jdcw/ALzwPO+xvmcl7Rj177JVEbkO4BARjSflFDJJuW1dBxJPoCIiL4noDIB1BS0pW6j+oJmbm+uuVqvjRKQfLr0bZHnIzJf0f6HeAybahrUJqAPruhLlcnnPysqKfpXp11n/Gv62zoHAroS+AafT6QkiGrIsazKbzX7eVIHEt1US39gCkOzWYthkjNE+tuZujDGZQ8XRXn8N4KT5lLFZ6uaYPt+nwyDuvC80YdhvB9uOAu1WoaNAR4GIK/AHvdr+QAexB7EAAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-record:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAACfUlEQVRoQ+2ZSYsUQRCFvycK4nJXXEbHBdwO4kn/gv9CD467ICIutxEFkREdFUU86T/xojcPntyQcT2INw+uISFVkD1Wd2dWlU7nUHlqisiX+fJFZGREi8yHMt8/HYG5VrBToFOg4QnMPxcyM2t4KE2nT0i6EwvylwIjQOCFpE1tEPgGfI0FamC3AFgazP8IrJL0KwZzkAI3gLMxIA1ttgCPA4w3wHpJP2NwBxG4KOlcDEgTGzNbA8wEGP57vA0CU5JONtlczFwz2wY8HUbAzBYCB4CtwCVJb33OIAXmioC70LoyBsxsEXAQOApsLIhelnS6FgEzW+5BBvwA/FS+SPJFa40KBZ5L2mxmS4AJ4IjHxCzwaUnHkgmY2V7gLrAyAPwOXJN0qg6DCgIvgQfAPsDjo2pcKddLciEz+wCs6AO6W9KjVBIVBGIgahN4BvRLMjslPYlZPbT53wR2AbeBtcUmXEFPdh5U06mbd/shBBzbr/Jx4FCAX0+BEsDMFocEYrNmFcE+BD4XsXZL0oyZnQCutkagzkn3m1NBwDe/Q9L74MAuFEqUn5op8I8JvJO0elacTALnc1HAH3Njkvwx+WeYWUegTa/pwaqIgexdyIN4uyRPmqULZRXEvulPwD3gpr+zcrtGQxfzRHYG2AAczuUWiom3kc4D2RN4BdwH9gM9CS0XFyoLGu9UuN974eIFVDiuSzruH5LqgRhtU20q8kBPV8LMlhVVmVdnYwX+SMdAZVeieAF7eeltmElJr4cpkH1bJfvGVvatxdR4bMu+teZuWxtKxWncXn8I7EldtQV7vz79fp9KwZp//9CksB8F206BuVahU6BToOEJ/Ab7+KdABdTt8AAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-recordStop{background:url("data:image/png;base64,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") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-recordStop:hover{background:url("data:image/png;base64,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") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-fullscreen{background:url("data:image/png;base64,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") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-fullscreen:hover{background:url("data:image/png;base64,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") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-fullscreenExit{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAADd0lEQVRoQ+2Zz2sdVRTHv+fJBDW6anDVXen6wZszYxYBiYgtFGst3VSDunKjpS0GpUlqfjVpsVVs6aaL0or4YxMVFCJZ2ZLdPUP+gq5bQnTxtNAkfTnlhnnlkmQy9yV9780rudt77tzv5/y4v4bQ4Y06XD/2ANodwec/AiJygJnvtdvTWfPnRkBEJAiCN8rl8kMfiPn5+Ve7u7v3rays0Orq6lJfX99/PuN2auMDoAD+BvA2M6/mTWSMOUtE48D6AjHGzN/kjdlNvy+AnWOOmQ/lTSYiEwDOWzsimgrDcCRvzG76GwGw8/zJzO9sN6GInAMwbW1UdSSKoqndCMwb6wNwGsB39Q+p6h/M/C4R2dTa1AoHYBWKyCkA1+pqiWi2Wq0e7e/vf7yRoJAAKcQggMtuJKIoOtoxACnE0/xOi/SXMAxPuhCFjUBdpIjYVWXSEf0TM3/g9BeriDMKdSPEz8z8vrU1xgwT0YXCrEJZy1iSJKOqOub0/8jMA0mSfKKqNwoPkHp7ioiGHIhRIvpHVa93BEBa2JcAfOlALAHo6RgAKzRJkk9V1S6xL7kpV4idOM31taxaIKJHqmpPnMMA9hcOQES2PDJkAT1XAAC+ZebPfWB3auNzmLObVsNRUNUXVHUujuM7OxXnMy4XwOcj29mIyOuq+lapVGrYCelKpkEQ3CyXy4tbzdN0AGPMxr2iYZ+sra3FcRybtgCIiK2BKw2rdgaUSqWoUqlIkQAepFDdAF7cBq5ERI9rtdr1OI7tmE2t6SmUEYFHAEaexYW/1QC2EF+ru5GIvg7D0D2GNJxprQY4o6qv1I/b6SpzOYqiLxpWng5oOQAzXxWRWwA+dkRfYOb1p5hGW6sBJpn5KytSRG4D+KguWFXHoyhy7xdeLC0F2ChSRL4H8OFuINoKYIUbY34gogHH3eeZef1K6tPaDpCm068A3nMEDzHzxY4BUNWSiPxORO6z5aDPPlGICNQ9bYyZIaLjjudzIQoFkKbTbwCO+UI0HcB9J/LdeY0xs0R02IGYYObRrWqiFQCfEZEtSHsfmGZm+4qxbbM/hQD8BeBNa0hEM2EYnmgLgP3lFARBT1dXly4vL//b29tbzQNIU+llAHeJaLFSqRzJes5vegR8xGbZLCwsHKzVav8z8/0sm0ID+MDvAfh4qZk2exFopnd9vv0ELrXBQO7fD10AAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-fullscreenExit:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAC/ElEQVRoQ+2Zy49NQRCHvx+ReK6IlZ34E7CUiCAR4xEbTLCyQRATYswwb2IQZDYWgojHZpCQECts+ResiQwLj0RClNSkb9Lu3HtPz7mZc8+V6eXt6tP1VVV3VdcVbT7U5vozC9BqD/7/HjCzlZLet9rS9fbP9ICZvQPWSfqRAmFmS4ClMHm+JiR9S1mXVyYFwIBXwEZJv7I2MrPjQH8A6JN0OWtNM/OpAL7HS0mbsjYzswGgN8gNS+rJWtPM/HQAfJ9nkrY22tDMTgMjQaZH0nAzCmatTQE4ClyNPvQU2CbJQ2vKKB2Aa2hmR4DrkbbPgQ5Jv6sJSgkQILqA0dgTkjraBiBAxPHtPz2UtDuGKK0HKkqamd8qg5HS9yXtjebLdYjrHNRqiAeS9gQvnQGGSnML1bvGzOwc0BfN35PUaWYHgRulBwjW9ju+O4JwqM/AWFsABIgLwKkIYgJY1jYAAeJQuGIXVIVcKTKxh8WfBin9J+AVpx/eFWUEqFkyNACKp0rhgWYArkg6kQibSyylmPOklQdibijBX+fSLHFRJkDid+qKmdlaYENOI0zeEcBNSZ9qbVIEQHWuyGOTNZLetgrAz8ClPFpHa1ZL8rf5lFGEB2oBfAxQi4D5DeDmAP7mGJPka0oD4LnDr9imH/xFe8AP4vLIjBclxWXItCOtaIBjwOKo3HaFRyWdnLbmYUHhAJKumdkt4ECk9JCkSitmWixFAwxKOjt5uZvdBvZH2vZLit8XSSBFA/yjpJndAfY1A9FSgOCJu0BnBNErqfIkzfRCywECxCNgR6Rtt6TzmdqHBmyKXG4ZM4sTWc04NzNPWE+AuG3ZlZInSuGBinXMbBzYGVkrE6JUACGcHgPbUyGKAIj7REmZ18y897o5ghiQ5E/bltRChwE/kF7Xj0jyLkbDYWbzgBfA+iA4LmlXqwD8LydvszjAF0lfswBCKC0E3gBeP22p186f8RBKUbaejJmtAr5L+lBPptQAKfCzAClWmkmZWQ/MpHVTvv0X9iFAQGQyevIAAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-audio{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAACrUlEQVRoQ+2ZPYgTURCAZzbBXJnCeL2Cnb87b9MEtPBUrrMQFAtrtT5/ClGs9LBWWz0RtbBUFCF4oJDsbO68wsLA2YqQSmLlvpEHu7IuMdlLcus+yUKKhJfZ+ebnvZl5CJY/aLn+MAP41x7M1QPMfFtr/crzvHfTAs8FoNPp1LTWzwHgqIg0lFLvrQHwfX8BER8DwC6jNCIecF13wwoA3/dvIuKNpLJa60Oe560XGoCZd4rICiKeTCtaeABmPg4AJmRqg6xcaABmvg4At4aFRyEBhoVM4UMoCplHADCfJTEL5YEsIVNID5iQAYCHALCYxeq5b6PMfF5EBAAEESthGK7W6/XPRpFWq7W3VCqtZg2ZcT3g+/6i4zjzIlLSWn/yPO/DIGMNLCWY2Sj/+xGRK0qpZfNDEASnROTFVi0fr8+aA8z8Ld6KEfGt67oLYwMAwEUium8EREn7OgeAjwCwPyo/nrque3YSgAtE9GDaAM1mc65arc4Zuf1+P2w0Gt9jJZl5DQAORt+fENG5wgEw8zUAMB/zbBBRwyqAIAjuiMjlSOlNItpjFUCqWl0josMzgChR/9hGAWBbknjmAdPhDdqa0gfZzAMJKyVP4v8hhJYRcSni+0JEu63ahZj5anyQici6UuqIVQDdbrfS6/UqRulyufyTiH5sF8AlIro37VpoWEHIzGZ2tM+sEZFnSqkzk9RCS0R01wjIsZz+mug53hDRia0AnI4bGgDYISItz/M2jYC8Gpp2u30MEWuO4zha665Sqp0ZYFStX/iWchRAItFGzoHSsrJ2ZFl1mHg6bfVYJeGJv85CC++BpIJZ5kSFC6G0ha0e7mYJqcJ7IOkRay84UhD2XjHFIFZf8iW9YcYoYRi+tO6aNeupOs66iU/icV46zf/MAKZpzXFk/QL+JG1PUPhRiQAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-audio:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAACSElEQVRoQ+2Zu4sUQRCHf5+C+gf4yBXMfMYHGvjCzEBQDIzV+HwEohipGKupD0QNDE8UEwUFTe68wEDhTMVUMFJ+0tArzbjs9u3Ojt0wBR0M9MzUV1XdXVWNKhcq1189wP/2YKcesH1d0nPgdVvgnQDY3iTpqaT9kuaAt9UA2D4o6aGkzVHpXcByFQC2r0q60lB2D7BUNIDtjZIeSDoyRNGyAWwfiiET4n6YlAtg+7Kka2PCozyAMSHT5CkLIIbMfUlbMhdmOQCZIVOeB2LI3JN0NNPq6bTZe8D2aUmOY72kN8DnoIXt7eF5FSEzkQdsB+OEsFwr6RPwbpixhqYStoPyqVwAbkaAY5KeTWD5wStZHrD9XdJgK34FhBP9H8kFOAvciQBhn3/RAcBHSTvjfx4DJ6cBOAPcbRvA9gZJYQT5DfwYKGl7UdLu+PwIOFUiwCVJYQRZBuZqA7gh6XxUegXYVhtAmq0uAnt7gLhQm9vorBZx74Hcc6D3QLKH/z2JGyVnlYs4pCfzEe4rsLW2XehicpAtAftqAwiZbhhBfgE/ZwVwDrjddi40KiG0HXpHO+KcJ8CJaXKheeBWBOgqnf6W1BwvgcOrATieFDTrJL0HViJAVwXNgVgPrJH0BfiQDTDKtREiNK7KLSnHASQLLacP1PxcVkWWq8PU3emq2yqJJ0b1Qsv2QKpdZp+orBBqmrfq5m5mSJXtgUZI1XnB0YCo94opCal6L/ka3ghtlIXqrllzT9VJ5k19Ek/y0zbf6QHatOYk3/oDujC8QMWgjf4AAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-mute{background:url("data:image/png;base64,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") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-mute:hover{background:url("data:image/png;base64,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") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-text{font-size:14px;width:30px}.jessibuca-container .jessibuca-speed{font-size:14px;color:#fff}.jessibuca-container .jessibuca-quality-menu-list{position:absolute;left:50%;bottom:100%;visibility:hidden;opacity:0;transform:translateX(-50%);transition:visibility .3s,opacity .3s;background-color:rgba(0,0,0,.5);border-radius:4px}.jessibuca-container .jessibuca-quality-menu-list.jessibuca-quality-menu-shown{visibility:visible;opacity:1}.jessibuca-container .icon-title-tips{pointer-events:none;position:absolute;left:50%;bottom:100%;visibility:hidden;opacity:0;transform:translateX(-50%);transition:visibility .3s ease 0s,opacity .3s ease 0s;background-color:rgba(0,0,0,.5);border-radius:4px}.jessibuca-container .icon-title{display:inline-block;padding:5px 10px;font-size:12px;white-space:nowrap;color:#fff}.jessibuca-container .jessibuca-quality-menu{padding:8px 0}.jessibuca-container .jessibuca-quality-menu-item{display:block;height:25px;margin:0;padding:0 10px;cursor:pointer;font-size:14px;text-align:center;width:50px;color:hsla(0,0%,100%,.5);transition:color .3s,background-color .3s}.jessibuca-container .jessibuca-quality-menu-item:hover{background-color:hsla(0,0%,100%,.2)}.jessibuca-container .jessibuca-quality-menu-item:focus{outline:none}.jessibuca-container .jessibuca-quality-menu-item.jessibuca-quality-menu-item-active{color:#2298fc}.jessibuca-container .jessibuca-volume-panel-wrap{position:absolute;left:50%;bottom:100%;visibility:hidden;opacity:0;transform:translateX(-50%) translateY(22%);transition:visibility .3s,opacity .3s;background-color:rgba(0,0,0,.5);border-radius:4px;height:120px;width:50px;overflow:hidden}.jessibuca-container .jessibuca-volume-panel-wrap.jessibuca-volume-panel-wrap-show{visibility:visible;opacity:1}.jessibuca-container .jessibuca-volume-panel{cursor:pointer;position:absolute;top:21px;height:60px;width:50px;overflow:hidden}.jessibuca-container .jessibuca-volume-panel-text{position:absolute;left:0;top:0;width:50px;height:20px;line-height:20px;text-align:center;color:#fff;font-size:12px}.jessibuca-container .jessibuca-volume-panel-handle{position:absolute;top:48px;left:50%;width:12px;height:12px;border-radius:12px;margin-left:-6px;background:#fff}.jessibuca-container .jessibuca-volume-panel-handle:before{bottom:-54px;background:#fff}.jessibuca-container .jessibuca-volume-panel-handle:after{bottom:6px;background:hsla(0,0%,100%,.2)}.jessibuca-container .jessibuca-volume-panel-handle:after,.jessibuca-container .jessibuca-volume-panel-handle:before{content:"";position:absolute;display:block;left:50%;width:3px;margin-left:-1px;height:60px}.jessibuca-container.jessibuca-fullscreen-web .jessibuca-controls{width:100vh;transform:translateX(-13vw) translateY(-47.8vh) rotate(270deg);transition:width .5s ease-in}.jessibuca-container.jessibuca-fullscreen-web .jessibuca-play-big:after{transform:rotate(270deg)}.jessibuca-container.jessibuca-fullscreen-web .jessibuca-loading{flex-direction:row}.jessibuca-container.jessibuca-fullscreen-web .jessibuca-loading-text{transform:rotate(270deg)}');class De{constructor(e){var t,r,i,n,s;this.player=e,i=this,(r=e)._opt.hasControl&&r._opt.controlAutoHide?r.$container.classList.add("jessibuca-controls-show-auto-hide"):r.$container.classList.add("jessibuca-controls-show"),n=r._opt,s=n.operateBtns,r.$container.insertAdjacentHTML("beforeend",` + ${Re[t]?`${Re[t]}`:""} +`,e),{}),De=(i,n)=>{const{proxy:e}=i["events"],t=document.createElement("object");t.setAttribute("aria-hidden","true"),t.setAttribute("tabindex",-1),t.type="text/html",t.data="about:blank",p(t,{display:"block",position:"absolute",top:"0",left:"0",height:"100%",width:"100%",overflow:"hidden",pointerEvents:"none",zIndex:"-1"});let r=i.width,s=i.height;e(t,"load",()=>{e(t.contentDocument.defaultView,"resize",()=>{i.width===r&&i.height===s||(r=i.width,s=i.height,i.emit(u.resize))})}),i.$container.appendChild(t),i.on(u.destroy,()=>{i.$container.removeChild(t)}),i.on(u.volumechange,()=>{var e,t,r;0===(e=i.volume)?(p(n.$volumeOn,"display","none"),p(n.$volumeOff,"display","flex"),p(n.$volumeHandle,"top","48px")):n.$volumeHandle&&n.$volumePanel&&(t=J(n.$volumePanel,"height")||60,r=J(n.$volumeHandle,"height"),p(n.$volumeHandle,"top",t-(t-r)*e-r+"px"),p(n.$volumeOn,"display","flex"),p(n.$volumeOff,"display","none")),n.$volumePanelText&&(n.$volumePanelText.innerHTML=parseInt(100*e))}),i.on(u.loading,e=>{p(n.$loading,"display",e?"flex":"none"),p(n.$poster,"display","none"),e&&p(n.$playBig,"display","none")});const a=e=>{e=!0===e||!1===e?e:i.fullscreen;p(n.$fullscreenExit,"display",e?"flex":"none"),p(n.$fullscreen,"display",e?"none":"flex")};try{y.on("change",a),i.events.destroys.push(()=>{y.off("change",a)})}catch(i){}i.on(u.webFullscreen,e=>{a(e)}),i.on(u.recording,()=>{p(n.$record,"display",i.recording?"none":"flex"),p(n.$recordStop,"display",i.recording?"flex":"none")}),i.on(u.recordingTimestamp,e=>{}),i.on(u.playing,e=>{p(n.$play,"display",e?"none":"flex"),p(n.$playBig,"display",e?"none":"block"),p(n.$pause,"display",e?"flex":"none"),p(n.$screenshot,"display",e?"flex":"none"),p(n.$record,"display",e?"flex":"none"),p(n.$fullscreen,"display",e?"flex":"none"),e||n.$speed&&(n.$speed.innerHTML="0 KB/S")}),i.on(u.kBps,e=>{e=function(e){if(null==e||""===e)return"0 KB/S";var t=new Array("KB/S","MB/S","GB/S","TB/S","PB/S","EB/S","ZB/S","YB/S"),e=parseFloat(e),r=Math.floor(Math.log(e)/Math.log(1024));return(e/Math.pow(1024,r)).toFixed(2)+t[r]}(e);n.$speed&&(n.$speed.innerHTML=e)})};A('@keyframes rotation{0%{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(1turn)}}.jessibuca-container .jessibuca-icon{cursor:pointer;width:16px;height:16px}.jessibuca-container .jessibuca-poster{position:absolute;z-index:10;left:0;top:0;right:0;bottom:0;height:100%;width:100%;background-position:50%;background-repeat:no-repeat;background-size:contain;pointer-events:none}.jessibuca-container .jessibuca-play-big{position:absolute;display:none;height:100%;width:100%;background:rgba(0,0,0,.4)}.jessibuca-container .jessibuca-play-big:after{cursor:pointer;content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:block;width:48px;height:48px;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAACgklEQVRoQ+3ZPYsTQRjA8eeZZCFlWttAwCIkZOaZJt8hlvkeHrlccuAFT6wEG0FQOeQQLCIWih6chQgKgkkKIyqKCVYip54IWmiQkTmyYhFvd3Zn3yDb7szu/7cv7GaDkPEFM94PK0DSZ9DzDAyHw7uI2HRDlVJX5/N5r9FoHCYdr/fvCRiNRmpJ6AEidoUQ15NG+AH8BgD2n9AHANAmohdJQfwAfgGA4xF4bjabnW21Whob62ILoKNfAsAGEd2PU2ATcNSNiDf0/cE5/xAHxDpgEf0NADaJ6HLUiKgAbvcjpdSGlPJZVJCoAUfdSqkLxWLxTLlc/mkbEgtgET1TSnWklLdtIuIEuN23crlcp16vv7cBSQKgu38AwBYRXQyLSArg3hsjRDxNRE+CQhIF/BN9qVAobFYqle+mkLQAdLd+8K0T0U0TRJoAbvc9fVkJId75gaQRoLv1C2STiPTb7rFLWgE6+g0RncwyYEJEtawCvjDGmpzzp5kD6NfxfD7frtVqB17xen2a7oG3ALBm+oMoFQBEPD+dTvtBfpImDXjIGFvjnD/3c7ksG5MU4HDxWeZa0HB3XhKAXcdxOn5vUi9gnIDXSqm2lHLPK8pkfVyAbSLqm4T5HRs1YB8RO0KIid8g03FRAT4rpbpSyh3TINPxUQB2GGM9zvkn05gg420CJovLZT9ISNA5tgB9ItoOGhFmnh/AcZ/X9xhj65zzV2Eiwsz1A1j2B8dHAOgS0W6YnduY6wkYj8d3lFKn/j66Ea84jtOrVqtfbQSE3YYnYDAY5Eql0hYAnNDv6kKIx2F3anO+J8DmzqLY1goQxVE12ebqDJgcrSjGrs5AFEfVZJt/AF0m+jHzUTtnAAAAAElFTkSuQmCC");background-repeat:no-repeat;background-position:50%}.jessibuca-container .jessibuca-play-big:hover:after{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAACEElEQVRoQ+2ZXStEQRjH/3/yIXwDdz7J+i7kvdisXCk3SiFJW27kglBcSFFKbqwQSa4krykuKB09Naf2Yndn5jgzc06d53Znd36/mWfeniVyHsw5PwqB0DOonYEoijYBlOpAFwCMkHwLDS/9mwhEDUCfAAyTXA4tYSLwC6CtCegegH6S56FETAR+AHRoACcBTJAUWa+RloBAXwAYIrnt0yBNgZi7qtbHgw8RFwLC/QFglOScawlXAjH3gUqrE1cirgVi7mkAYyS/0xbxJSDcdwAGSa6nKeFTIOZeUyL3aYiEEBDuLwDjJGf+KxFKIOY+BdBL8iipSGiBmHtWbbuftiJZERBuOfgGSK7aSGRJIObeUml1ayKSRQHhlgtkiaTcdltGVgUE+ppkV54FaiS78yrwqlLoOI8Cch2XV548W7WRpTVwA6DP9kGUFYEpAOUkT9LQAvtq1M+0udKkQSgBqSlJWWYxKXj8vRACK+o6bbRIdYI+Ba7U7rKjg7L53JdAhWTZBsy0rWuBXZUuNVMg23auBF7UIl2yBbJt70JAoKV6/WwLk6R9mgKSJlJ1kLTxFmkJyCla8UZd15GJQKvyumyJ8gy8DAEvfZoINPqD41EtUjmUgoaJwAaAnjrKebVI34OSq85NBNqlCAWgE0CV5GEWwI3vQlmCbcSinYFCwPEIFDPgeIC1P1/MgHaIHDf4Aydx2TF7wnKeAAAAAElFTkSuQmCC")}.jessibuca-container .jessibuca-loading{display:none;flex-direction:column;justify-content:center;align-items:center;position:absolute;z-index:20;left:0;top:0;right:0;bottom:0;width:100%;height:100%;pointer-events:none}.jessibuca-container .jessibuca-loading-text{line-height:20px;font-size:13px;color:#fff;margin-top:10px}.jessibuca-container .jessibuca-controls{background-color:#161616;box-sizing:border-box;display:flex;flex-direction:column;justify-content:flex-end;position:absolute;z-index:40;left:0;right:0;bottom:0;height:38px;padding-left:13px;padding-right:13px;font-size:14px;color:#fff;opacity:0;visibility:hidden;transition:all .2s ease-in-out;-webkit-user-select:none;user-select:none;transition:width .5s ease-in}.jessibuca-container .jessibuca-controls .jessibuca-controls-item{position:relative;display:flex;justify-content:center;padding:0 8px}.jessibuca-container .jessibuca-controls .jessibuca-controls-item:hover .icon-title-tips{visibility:visible;opacity:1}.jessibuca-container .jessibuca-controls .jessibuca-fullscreen,.jessibuca-container .jessibuca-controls .jessibuca-fullscreen-exit,.jessibuca-container .jessibuca-controls .jessibuca-icon-audio,.jessibuca-container .jessibuca-controls .jessibuca-microphone-close,.jessibuca-container .jessibuca-controls .jessibuca-pause,.jessibuca-container .jessibuca-controls .jessibuca-play,.jessibuca-container .jessibuca-controls .jessibuca-record,.jessibuca-container .jessibuca-controls .jessibuca-record-stop,.jessibuca-container .jessibuca-controls .jessibuca-screenshot{display:none}.jessibuca-container .jessibuca-controls .jessibuca-icon-audio,.jessibuca-container .jessibuca-controls .jessibuca-icon-mute{z-index:1}.jessibuca-container .jessibuca-controls .jessibuca-controls-bottom{display:flex;justify-content:space-between;height:100%}.jessibuca-container .jessibuca-controls .jessibuca-controls-bottom .jessibuca-controls-left,.jessibuca-container .jessibuca-controls .jessibuca-controls-bottom .jessibuca-controls-right{display:flex;align-items:center}.jessibuca-container.jessibuca-controls-show .jessibuca-controls{opacity:1;visibility:visible}.jessibuca-container.jessibuca-controls-show-auto-hide .jessibuca-controls{opacity:.8;visibility:visible;display:none}.jessibuca-container.jessibuca-hide-cursor *{cursor:none!important}.jessibuca-container .jessibuca-icon-loading{width:50px;height:50px;background:url("data:image/png;base64,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") no-repeat 50%;background-size:100% 100%;animation:rotation 1s linear infinite}.jessibuca-container .jessibuca-icon-screenshot{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAE5UlEQVRoQ+1YW2sdVRT+1s7JxbsoVkEUrIIX0ouz15zYNA+N1RdtQfCltlUfvLbqL/BCwZ8grbHtizQqPojgBSr0JkiMmT2nxgapqBURtPVCq7HxJCeZJVPmxDlzZubMmXOSEsnAvOy917fXt9e39tp7E5b4R0vcfywTuNgRbBgBx3HuJqLVzPzmYjprjHkcwAlmLqXNm4XAISLaSESPaq2HF4OE67rbRGRYRA7btn1fbgLGmKsA/Azg0gBkGzO/vZAkHMd5hIiqc5wHcCMz/5k0Z2oExsfHV1QqldPAf8lORNu11m8tBAljzFYAYWxRSl1vWdZvuQj4RsYYF4AVBlgIOVVlE55HRIxt23ZuCfmGjuOsJ6LPoiAistW27XfaEYmIbOYhPc9bXywWR1oiEJDYQkR1zrYjEjGyqfqbKd8a7kJVtLgQ+30i8pht2wfyRKIdmJkJBPkQTbILfudJ7CTZNBvVpggEcgpvc/ML38zESbLJsxBNE/A9biX0rdjGyTQXgbxyapdsarb0PMlXtWnGoXbKpm0Essqp3bJpK4E0OXmed3+hUBDP8w5FI91M0rdcyLLILElOCbaZilSWeXMncRx4klTCY1spfG3dhZJWx3GcDUR0EEB3ZMw0ET2gtT6SZWWzjmlrBIJCl0hAKfWgZVmHszqXZVxbCSxpCS2JJA6umIhe8ZKKVLPbaBJ+S9toqVRa53nedgAbAKwIwH4FcAzAa0R0l4i8F7PPz189k6RFRA+LyNcAXojDV0oNW5b1eW4Cxpg9AHZkSaaa6hhzb065uDSCH2LmRB8Sk9gY4293g43Qo/1pV80m8yQMfZSZ781cB1zXHRKRZ2IMpgD8A+DamL4ZItqitX4/jbQx5iEA7wLoihn3V/ACckWMJN/QWj9b1x5tGBsbW6uUOh5pPy0iL3Z2dn6ilJqanp5ep5TaJSLhF4NppdRNaU8gPmapVLrO87yfIoXuWyJ6uVKp+HmFjo6OQSJ6FcBtYT+UUmstyxqvkWuUgDFmP4AnQu2/e563qlgs+u9DNZ8xZhRAX7VRRPbath0XuXk7Y8xeAE+FgL6fnJzsHRwcLIfBR0ZGLunq6poAsDLUvp+Zw7b1r9PGmJMAbg8Z7WDmoThZuK67WkS+DD18fcPMdzSQUBR/EzN/nIC/SUQ+DPXV4dclsTHmHAD/SfHCNzc3t7Kvr++HJKeMMacA3BL0nyuXyzcPDAxMxo0fHR29slAo/Ajg6qD/fE9Pzw29vb1/x42fmJi4vFwu+5G/LOg/y8zXNJLQ2dAES5JANMQ7mfn1jBI6ycx3NiMhItqstf4oAX+ziHwQ6qvDj5NQNIn/ALCKmX+JSeIvABRD7fuY+ekGBPYBeDI05tTMzExvf3+/vz2Hk91/ET8RSeI6/DoCpVJpjed5fmKGvzMAXpqdnT3oed5Ud3d3v4jsAqBr9Ei0Rmv9VRqBBPzvROQVETnq2xJRdRu9tRF+bCVOKWT+Kvl/TSIFk6SW/LAjKfjV5K8rZABi8dOOEv7FI7Z8x6zwEWbemLbyMfJr5qiSiJ96oclymBOR3bZtP9+M89WxxpjdAHY2sN3DzM8ljWl4I3Nd9x7/OE1ENcdpETnmH3e11n41zv0l4J8RkU+J6AAz+xtF4teQQG7PFslwmcAiLfSyhC72Qv9/I/Avns2OT7QJskoAAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-screenshot:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAED0lEQVRoQ+2ZycsdRRTFf2ejqHFAMQqiYBTUoElUHLNx3GgCgpuYRF2o0UT9CxwQ/BMkMSbZSKLiQgQHUDCJgjiAxiEiESdEcJbEedgcKaj3UV+/6q7u/jovPPkK3qbr1ql76p5bt6qemPKmKfefeQKHOoLFCNg+H1gi6fFJOmv7VmCvpD1N87Yh8ApwNXCzpB2TIGF7DRDm2inpmt4EbB8LfAMcGUHWSHryYJKwfRMwmuMP4BRJv9TN2RgB2wuB72BWsq+V9MTBIGF7NZBiGzhJ0o+9CIRBtt8FLqgADC6nRDbpVO9Iuqi3hCKB5cDrGZDVkp4aIhIV2aSQyyW9MScCkcQqIOfsnCORkc3I31b5VtyFRmg1IQ7dt0ja3icSQ2C2JhAjUU2ykd+dE7tBNp2i2olAJJFuc+nCt564QTadF6IzgUhiVGiqyinKaQjZpJP2ItBXTkPJZhACXeU0pGwGI9BWTkPLZlACBTldG4o5EA6E1dY66edcyNrs8Q36zg1vVaTazNs7iXPgDVJJzYs7VRvHRzaDEohyugJ4CTi84sg/wHWSdnVxsGQ7aQLXS9pZcqpL/6AEplpCU5HE8YpJ9YrXUKQ6baN1+HPaRm1fBqwFQnKGK2ZoPwCvAo8Ai4FnMpPMHMwapHUj8DFwbw3+Dklv9iZgexOwvktSRduxU2VDlErwmyXV+lCbxLbDdndlCT3TX3vV7JgnKfRuSVflfMkSsL0ZuDMz4E/gL+CETN+/wCpJzzaRtn0D8DRwWMbu1/gCcnSm7zFJd1W/jxGwvQx4r2IYnlbuA14GAomQFw8B6YtBKFSnNj2BxEJ3IvB1pdB9CjwQ8yqYhcg/DJxZ8WOZpA/SbzkC24DbEqOfgPMkBRKzmu23gEuSj1sk5SI3Y2J7C3BHMuZz4FxJf6fgto8APgIWJd+3SUrHjr9O294HnJUMWi8pSGqs2V4CvJ88fH0i6eyChKr4KyS9WIO/Ang+6RvDz0XgABCeFEdtkaQv65yy/QVweuwPY0+T9FuNQ8cAXwHHxf7wdHiypN9r7BfEl8GjYv9+SceXJLQ/mSDYTh2Baog3SHq0pYT2STqno4RWSnqhBn8l8FzSN4bfJol/jkn8bXUS228DFyfft0paVyCwFbg9sQkSDEkctueZZju8iO+tJPEYfo7A0piYKd73wP3xnB+20cvjNnphxdmlkj4sEMjhfwY8COyOY0fb6Bkl/K6FLKxS+M1KpDhJY8mvrG5doRwlf66QZfGbjhLh4pEt35kV3iUp/IvTunU8qtTil/7gaHOY2yjpntaez9b5RmBDYewmSXfX2RRvZLYvbThOh+NuqMa9Ww1+yLnXgO2SwkZR24oEens2oYHzBCa00PMSOtQL/f+NwH+Hg8hAnbrYgQAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-play{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAACgklEQVRoQ+3ZPYsTQRjA8eeZZCFlWttAwCIkZOaZJt8hlvkeHrlccuAFT6wEG0FQOeQQLCIWih6chQgKgkkKIyqKCVYip54IWmiQkTmyYhFvd3Zn3yDb7szu/7cv7GaDkPEFM94PK0DSZ9DzDAyHw7uI2HRDlVJX5/N5r9FoHCYdr/fvCRiNRmpJ6AEidoUQ15NG+AH8BgD2n9AHANAmohdJQfwAfgGA4xF4bjabnW21Whob62ILoKNfAsAGEd2PU2ATcNSNiDf0/cE5/xAHxDpgEf0NADaJ6HLUiKgAbvcjpdSGlPJZVJCoAUfdSqkLxWLxTLlc/mkbEgtgET1TSnWklLdtIuIEuN23crlcp16vv7cBSQKgu38AwBYRXQyLSArg3hsjRDxNRE+CQhIF/BN9qVAobFYqle+mkLQAdLd+8K0T0U0TRJoAbvc9fVkJId75gaQRoLv1C2STiPTb7rFLWgE6+g0RncwyYEJEtawCvjDGmpzzp5kD6NfxfD7frtVqB17xen2a7oG3ALBm+oMoFQBEPD+dTvtBfpImDXjIGFvjnD/3c7ksG5MU4HDxWeZa0HB3XhKAXcdxOn5vUi9gnIDXSqm2lHLPK8pkfVyAbSLqm4T5HRs1YB8RO0KIid8g03FRAT4rpbpSyh3TINPxUQB2GGM9zvkn05gg420CJovLZT9ISNA5tgB9ItoOGhFmnh/AcZ/X9xhj65zzV2Eiwsz1A1j2B8dHAOgS0W6YnduY6wkYj8d3lFKn/j66Ea84jtOrVqtfbQSE3YYnYDAY5Eql0hYAnNDv6kKIx2F3anO+J8DmzqLY1goQxVE12ebqDJgcrSjGrs5AFEfVZJt/AF0m+jHzUTtnAAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-play:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAACEElEQVRoQ+2ZXStEQRjH/3/yIXwDdz7J+i7kvdisXCk3SiFJW27kglBcSFFKbqwQSa4krykuKB09Naf2Yndn5jgzc06d53Znd36/mWfeniVyHsw5PwqB0DOonYEoijYBlOpAFwCMkHwLDS/9mwhEDUCfAAyTXA4tYSLwC6CtCegegH6S56FETAR+AHRoACcBTJAUWa+RloBAXwAYIrnt0yBNgZi7qtbHgw8RFwLC/QFglOScawlXAjH3gUqrE1cirgVi7mkAYyS/0xbxJSDcdwAGSa6nKeFTIOZeUyL3aYiEEBDuLwDjJGf+KxFKIOY+BdBL8iipSGiBmHtWbbuftiJZERBuOfgGSK7aSGRJIObeUml1ayKSRQHhlgtkiaTcdltGVgUE+ppkV54FaiS78yrwqlLoOI8Cch2XV548W7WRpTVwA6DP9kGUFYEpAOUkT9LQAvtq1M+0udKkQSgBqSlJWWYxKXj8vRACK+o6bbRIdYI+Ba7U7rKjg7L53JdAhWTZBsy0rWuBXZUuNVMg23auBF7UIl2yBbJt70JAoKV6/WwLk6R9mgKSJlJ1kLTxFmkJyCla8UZd15GJQKvyumyJ8gy8DAEvfZoINPqD41EtUjmUgoaJwAaAnjrKebVI34OSq85NBNqlCAWgE0CV5GEWwI3vQlmCbcSinYFCwPEIFDPgeIC1P1/MgHaIHDf4Aydx2TF7wnKeAAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-pause{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAABA0lEQVRoQ+1YwQqCUBAcfWXXsLr2AXWTPXno8yVB8AP6Aa3oHI+kCDqYaawJljSe133uzO44bx0M/HEG/v1gAd9mkAyQgY4I/F8LJUlyrQFtD2AtIkcNoFEU+Z7n7QD4DfFHEVlocrVmgAUAIAOl3mILPcDgEFcUhyrUKMGUUcroc3NQRimj9XJBGaWMvvPydKN0o6/9QTdKN6rZANxj6EbpRulGuZnjYqs8BbyR8Ub2Izeys+u6yyAIDpo/ehzHM2NMDsA0xFsRmWhyfTIDWSXxCEBmrd2EYXjSHJqm6bQoii2AOYBL5Z0xgFxEVppcrQvQJO0zhgX0iXbdWWSADHRE4AZQ731AhEUeNwAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-pause:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAA7klEQVRoQ+2YSwrCQBBEX6HiVvxsPYDewfN7By/gD9ciQkvERQwJdBSiYs0mEDo96aruombEjy/9+P/jAj7NoBkwA28i8H8tFBFRA9oeWEo6ZgCNiDGwAYpn3TpKmmVytWbABQBmoNRbbqEHGB7iiuJYhRol2DJqGX1uDsuoZdRmLuNZSzGWUcuoZdRHSp/IylNgK2ErYSthK3FHwLcSvpXIjoLt9Jfa6TMwl3TIMBkRE2AH9BriL5KGmVyvWIltJXEfKN6tJJ0ym0bECFgDU+Ba+WZQFCdpkcnVuoBM0i5jXECXaNftZQbMwJsI3AAPN3dAQflHegAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-record{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAC+UlEQVRoQ+1ZS2sTURT+zlDJYE3XSq219QHVuEjnJDT+Bff9Abqw2voAEfGxqygUqWhVFHGl/yMLu9BwByxk5SNI66ML6U7axjhHbmhgWiftncxoOiV3FcI53z3f/e65594zhIQPSnj86BBot4IdBToKRFyBnbeFlFIScVEiuYvIWC6Xe2YK8pcC7SYA4CMzH4mDQBXAqilQBDsLQLfPf9FxnF4i8kwwmypARI+Wl5dvmIBEsUmlUkNE9NaHsVCpVAZGR0d/m+A2JSAid3K53E0TkCg2pVKpz7KseR/GfKVSGYxMAMA0M1+JEpyJb6lUOm5ZVnkrAsVisaunp+esiByr1Wp3R0ZGvmifzZK4XQQWHMc52MgBpdQuAOcAXABwuB400ZTjONdaIjA7O5u2bVsnWU1EujzP+5nP5xdMVjvIJkCBD8x8VCm1G8AYgAkAAxt8Z5j5YmgCSqlTAJ4D2OcD/AXgATNfbYVEAIFPIvKKiE4D6GuCea8xX6gtpJT6DmBvECgRFRzHeROWRAABE4iWCbwHEFhkPM/L5vP5dyaz+23+KwHXdR3P854S0YG1ILSCuthNMfNM2OC1/RYENLY+ygcBnPfht6ZAA6BYLNr6dyqVokKhsGpaNQ2TWJstreXaE2aed133sojcj41AKyvdzCdAgSXLsk4MDw9/a/i4rntbRPxFNZoC/5jAV2be759DKTUJ4FZSFFi0bbs/k8noy2R9dAjEuWU2YgXkQOK3kD6BMsysi2Z9JC2Jdcw/ALzwPO+xvmcl7Rj177JVEbkO4BARjSflFDJJuW1dBxJPoCIiL4noDIB1BS0pW6j+oJmbm+uuVqvjRKQfLr0bZHnIzJf0f6HeAybahrUJqAPruhLlcnnPysqKfpXp11n/Gv62zoHAroS+AafT6QkiGrIsazKbzX7eVIHEt1US39gCkOzWYthkjNE+tuZujDGZQ8XRXn8N4KT5lLFZ6uaYPt+nwyDuvC80YdhvB9uOAu1WoaNAR4GIK/AHvdr+QAexB7EAAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-record:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAACfUlEQVRoQ+2ZSYsUQRCFvycK4nJXXEbHBdwO4kn/gv9CD467ICIutxEFkREdFUU86T/xojcPntyQcT2INw+uISFVkD1Wd2dWlU7nUHlqisiX+fJFZGREi8yHMt8/HYG5VrBToFOg4QnMPxcyM2t4KE2nT0i6EwvylwIjQOCFpE1tEPgGfI0FamC3AFgazP8IrJL0KwZzkAI3gLMxIA1ttgCPA4w3wHpJP2NwBxG4KOlcDEgTGzNbA8wEGP57vA0CU5JONtlczFwz2wY8HUbAzBYCB4CtwCVJb33OIAXmioC70LoyBsxsEXAQOApsLIhelnS6FgEzW+5BBvwA/FS+SPJFa40KBZ5L2mxmS4AJ4IjHxCzwaUnHkgmY2V7gLrAyAPwOXJN0qg6DCgIvgQfAPsDjo2pcKddLciEz+wCs6AO6W9KjVBIVBGIgahN4BvRLMjslPYlZPbT53wR2AbeBtcUmXEFPdh5U06mbd/shBBzbr/Jx4FCAX0+BEsDMFocEYrNmFcE+BD4XsXZL0oyZnQCutkagzkn3m1NBwDe/Q9L74MAuFEqUn5op8I8JvJO0elacTALnc1HAH3Njkvwx+WeYWUegTa/pwaqIgexdyIN4uyRPmqULZRXEvulPwD3gpr+zcrtGQxfzRHYG2AAczuUWiom3kc4D2RN4BdwH9gM9CS0XFyoLGu9UuN974eIFVDiuSzruH5LqgRhtU20q8kBPV8LMlhVVmVdnYwX+SMdAZVeieAF7eeltmElJr4cpkH1bJfvGVvatxdR4bMu+teZuWxtKxWncXn8I7EldtQV7vz79fp9KwZp//9CksB8F206BuVahU6BToOEJ/Ab7+KdABdTt8AAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-recordStop{background:url("data:image/png;base64,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") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-recordStop:hover{background:url("data:image/png;base64,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") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-fullscreen{background:url("data:image/png;base64,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") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-fullscreen:hover{background:url("data:image/png;base64,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") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-fullscreenExit{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAADd0lEQVRoQ+2Zz2sdVRTHv+fJBDW6anDVXen6wZszYxYBiYgtFGst3VSDunKjpS0GpUlqfjVpsVVs6aaL0or4YxMVFCJZ2ZLdPUP+gq5bQnTxtNAkfTnlhnnlkmQy9yV9780rudt77tzv5/y4v4bQ4Y06XD/2ANodwec/AiJygJnvtdvTWfPnRkBEJAiCN8rl8kMfiPn5+Ve7u7v3rays0Orq6lJfX99/PuN2auMDoAD+BvA2M6/mTWSMOUtE48D6AjHGzN/kjdlNvy+AnWOOmQ/lTSYiEwDOWzsimgrDcCRvzG76GwGw8/zJzO9sN6GInAMwbW1UdSSKoqndCMwb6wNwGsB39Q+p6h/M/C4R2dTa1AoHYBWKyCkA1+pqiWi2Wq0e7e/vf7yRoJAAKcQggMtuJKIoOtoxACnE0/xOi/SXMAxPuhCFjUBdpIjYVWXSEf0TM3/g9BeriDMKdSPEz8z8vrU1xgwT0YXCrEJZy1iSJKOqOub0/8jMA0mSfKKqNwoPkHp7ioiGHIhRIvpHVa93BEBa2JcAfOlALAHo6RgAKzRJkk9V1S6xL7kpV4idOM31taxaIKJHqmpPnMMA9hcOQES2PDJkAT1XAAC+ZebPfWB3auNzmLObVsNRUNUXVHUujuM7OxXnMy4XwOcj29mIyOuq+lapVGrYCelKpkEQ3CyXy4tbzdN0AGPMxr2iYZ+sra3FcRybtgCIiK2BKw2rdgaUSqWoUqlIkQAepFDdAF7cBq5ERI9rtdr1OI7tmE2t6SmUEYFHAEaexYW/1QC2EF+ru5GIvg7D0D2GNJxprQY4o6qv1I/b6SpzOYqiLxpWng5oOQAzXxWRWwA+dkRfYOb1p5hGW6sBJpn5KytSRG4D+KguWFXHoyhy7xdeLC0F2ChSRL4H8OFuINoKYIUbY34gogHH3eeZef1K6tPaDpCm068A3nMEDzHzxY4BUNWSiPxORO6z5aDPPlGICNQ9bYyZIaLjjudzIQoFkKbTbwCO+UI0HcB9J/LdeY0xs0R02IGYYObRrWqiFQCfEZEtSHsfmGZm+4qxbbM/hQD8BeBNa0hEM2EYnmgLgP3lFARBT1dXly4vL//b29tbzQNIU+llAHeJaLFSqRzJes5vegR8xGbZLCwsHKzVav8z8/0sm0ID+MDvAfh4qZk2exFopnd9vv0ELrXBQO7fD10AAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-fullscreenExit:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAC/ElEQVRoQ+2Zy49NQRCHvx+ReK6IlZ34E7CUiCAR4xEbTLCyQRATYswwb2IQZDYWgojHZpCQECts+ResiQwLj0RClNSkb9Lu3HtPz7mZc8+V6eXt6tP1VVV3VdcVbT7U5vozC9BqD/7/HjCzlZLet9rS9fbP9ICZvQPWSfqRAmFmS4ClMHm+JiR9S1mXVyYFwIBXwEZJv7I2MrPjQH8A6JN0OWtNM/OpAL7HS0mbsjYzswGgN8gNS+rJWtPM/HQAfJ9nkrY22tDMTgMjQaZH0nAzCmatTQE4ClyNPvQU2CbJQ2vKKB2Aa2hmR4DrkbbPgQ5Jv6sJSgkQILqA0dgTkjraBiBAxPHtPz2UtDuGKK0HKkqamd8qg5HS9yXtjebLdYjrHNRqiAeS9gQvnQGGSnML1bvGzOwc0BfN35PUaWYHgRulBwjW9ju+O4JwqM/AWFsABIgLwKkIYgJY1jYAAeJQuGIXVIVcKTKxh8WfBin9J+AVpx/eFWUEqFkyNACKp0rhgWYArkg6kQibSyylmPOklQdibijBX+fSLHFRJkDid+qKmdlaYENOI0zeEcBNSZ9qbVIEQHWuyGOTNZLetgrAz8ClPFpHa1ZL8rf5lFGEB2oBfAxQi4D5DeDmAP7mGJPka0oD4LnDr9imH/xFe8AP4vLIjBclxWXItCOtaIBjwOKo3HaFRyWdnLbmYUHhAJKumdkt4ECk9JCkSitmWixFAwxKOjt5uZvdBvZH2vZLit8XSSBFA/yjpJndAfY1A9FSgOCJu0BnBNErqfIkzfRCywECxCNgR6Rtt6TzmdqHBmyKXG4ZM4sTWc04NzNPWE+AuG3ZlZInSuGBinXMbBzYGVkrE6JUACGcHgPbUyGKAIj7REmZ18y897o5ghiQ5E/bltRChwE/kF7Xj0jyLkbDYWbzgBfA+iA4LmlXqwD8LydvszjAF0lfswBCKC0E3gBeP22p186f8RBKUbaejJmtAr5L+lBPptQAKfCzAClWmkmZWQ/MpHVTvv0X9iFAQGQyevIAAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-audio{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAACrUlEQVRoQ+2ZPYgTURCAZzbBXJnCeL2Cnb87b9MEtPBUrrMQFAtrtT5/ClGs9LBWWz0RtbBUFCF4oJDsbO68wsLA2YqQSmLlvpEHu7IuMdlLcus+yUKKhJfZ+ebnvZl5CJY/aLn+MAP41x7M1QPMfFtr/crzvHfTAs8FoNPp1LTWzwHgqIg0lFLvrQHwfX8BER8DwC6jNCIecF13wwoA3/dvIuKNpLJa60Oe560XGoCZd4rICiKeTCtaeABmPg4AJmRqg6xcaABmvg4At4aFRyEBhoVM4UMoCplHADCfJTEL5YEsIVNID5iQAYCHALCYxeq5b6PMfF5EBAAEESthGK7W6/XPRpFWq7W3VCqtZg2ZcT3g+/6i4zjzIlLSWn/yPO/DIGMNLCWY2Sj/+xGRK0qpZfNDEASnROTFVi0fr8+aA8z8Ld6KEfGt67oLYwMAwEUium8EREn7OgeAjwCwPyo/nrque3YSgAtE9GDaAM1mc65arc4Zuf1+P2w0Gt9jJZl5DQAORt+fENG5wgEw8zUAMB/zbBBRwyqAIAjuiMjlSOlNItpjFUCqWl0josMzgChR/9hGAWBbknjmAdPhDdqa0gfZzAMJKyVP4v8hhJYRcSni+0JEu63ahZj5anyQici6UuqIVQDdbrfS6/UqRulyufyTiH5sF8AlIro37VpoWEHIzGZ2tM+sEZFnSqkzk9RCS0R01wjIsZz+mug53hDRia0AnI4bGgDYISItz/M2jYC8Gpp2u30MEWuO4zha665Sqp0ZYFStX/iWchRAItFGzoHSsrJ2ZFl1mHg6bfVYJeGJv85CC++BpIJZ5kSFC6G0ha0e7mYJqcJ7IOkRay84UhD2XjHFIFZf8iW9YcYoYRi+tO6aNeupOs66iU/icV46zf/MAKZpzXFk/QL+JG1PUPhRiQAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-audio:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAACSElEQVRoQ+2Zu4sUQRCHf5+C+gf4yBXMfMYHGvjCzEBQDIzV+HwEohipGKupD0QNDE8UEwUFTe68wEDhTMVUMFJ+0tArzbjs9u3Ojt0wBR0M9MzUV1XdXVWNKhcq1189wP/2YKcesH1d0nPgdVvgnQDY3iTpqaT9kuaAt9UA2D4o6aGkzVHpXcByFQC2r0q60lB2D7BUNIDtjZIeSDoyRNGyAWwfiiET4n6YlAtg+7Kka2PCozyAMSHT5CkLIIbMfUlbMhdmOQCZIVOeB2LI3JN0NNPq6bTZe8D2aUmOY72kN8DnoIXt7eF5FSEzkQdsB+OEsFwr6RPwbpixhqYStoPyqVwAbkaAY5KeTWD5wStZHrD9XdJgK34FhBP9H8kFOAvciQBhn3/RAcBHSTvjfx4DJ6cBOAPcbRvA9gZJYQT5DfwYKGl7UdLu+PwIOFUiwCVJYQRZBuZqA7gh6XxUegXYVhtAmq0uAnt7gLhQm9vorBZx74Hcc6D3QLKH/z2JGyVnlYs4pCfzEe4rsLW2XehicpAtAftqAwiZbhhBfgE/ZwVwDrjddi40KiG0HXpHO+KcJ8CJaXKheeBWBOgqnf6W1BwvgcOrATieFDTrJL0HViJAVwXNgVgPrJH0BfiQDTDKtREiNK7KLSnHASQLLacP1PxcVkWWq8PU3emq2yqJJ0b1Qsv2QKpdZp+orBBqmrfq5m5mSJXtgUZI1XnB0YCo94opCal6L/ka3ghtlIXqrllzT9VJ5k19Ek/y0zbf6QHatOYk3/oDujC8QMWgjf4AAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-mute{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAKYklEQVRoQ+1Z+3NV1Rld397nXJIbIGBARTQgohGNQZJLEtFSMmpfan10aJ1OZzqd/jOd/g3t9AetD2KLCiigNFUgj/tIQoh1SqBRwVqNYgp53XvP2V9nped0Lpebl/LQmZ4ZZpjkZJ+99voe61tb8C1/5Fu+f/wfwPVm8DIG+vv7H1bVWufcp9baUefcWCqVKi5lo11dXV5NTc06EblPRNoAtABYqapD1tq9zrmelpaWaRHRpaxb6d3LAGSz2d+IyAbn3FljTG+xWEy3t7efW+yHuru7q621t3med7+qPgigGcCdAPIAuowxzyUSiaONjY2Fxa4533uVABwEsA3ARQDHAez1fb9769atn823kKrKyZMnVxUKhdtFJKWq3wWQAnAzgBoAH6vqQWvtH8nAUlmd69uXAcjlci+q6sMA1gL4BMB+Vd2fSCR6K4HYs2eP3bRp0zJjDN/f7Jzjphk2PPkN0YcDACOqekhVO5PJZPZqMvBLAI8BeATAagBnARwRkT97ntdXDmJ4eHj59PT0emPMVufcA9y8iNwBoA6AjQCEAE5dEwDpdPo2EXlQRJ4G8B0A6yImDqjqvnImstnsOlVtFZHvA9gJ4C4AfhnlLAJnABxW1T3V1dWZq8aAqppMJrM+AvE4gB8CuKGUCd/3jzU1NX3JuB8cHNwchuGjBKyq7QCWV4jXawcg/ng6nb7ZWrtTVX8C4CEAtxCEiLzBZAzD8ERNTc1YoVBY6ZxjtXkyYoDvxaETL3ftAfDLvb29t1prufnHohBZQxCqmmVJVNVjQRB8VF1dXeece0hVfxAlcD1wSZe/dgCy2Wy97/sz1topAIWpqambRKTDGPOsqu4AUAvgPICMiBxU1SMzMzMfJJPJG1SVYB+P6n8pE6xCpxebA8PDw4mJiYkqHqLnedPzldxKZfRXqvqliJwtFosjXEBVG0Xkp9wcgMYoLr4EMAjgDRE5PD09PVpTU1MXhiHrP6sY8+G2kjIaJ/HLCyXxiRMnbiwWi7cqk0zkbCqV+nzRfSCbzXay6ojISQDHVq5c+Y+JiYl1zrmnnHNPiwjre5yoFwAwnN6MQfi+v8bzvF0EoaqsYgw7wyokIm86515aCEAul9vinNtujHFBEKTb2tpOLQXApwA+EJHjzrnX8/l8jicbBAE3z4S+P+qs8ZrjERMHABxiOFVVVd2oqruMMT9WVTY2gjgXFYCXAfTNFxa5XI7sMRT57Nu+fXt6KQAosNj2uwB0iki3tXZ1GIbPAOA/hlCybMF/A8gxnBjnQRB86Ps+QbAZMrG3RlqIDfGlCxcu9OzatcsNDg5S4NWqqm+tpbgbb2pqmh4YGHjIOfczfoPvt7S0HF0qgDEROaKqPK1jUeKyzj8jIk1lDJQzsb8ExHrn3E4RmZUmqsqceWV0dLS3oaGhKp/P3yMid3N9Y8xnVKuFQoHgm0WEADwRefGrAPhYRP5CBoIg6BaRWmstw4EMUOhValYEEjNxwDl3yPf9j4MguMkYs9M5x80yPA9fvHhxqKamZo21ltKd+ULBNyoiB/L5fMbzvDuMMVQCy5xzf2ptbe1eKgPUP7MACoVCj+d5q4wxTwCIc2DFPMqUOdEP4HWWWM/zzhWLRXb2LSISOOeGkskkf7YhyitulKLvfRF5XkQOOeduFpEnVLVaRF5taWnpXSqAD6NG1VksFnuXCIDfIog0O7Yx5kgYhp8ZYyipYa39Ynx8fKa2trbBOccDeRbA7QCGVfX3IkLgdSLCUsxcey2VSvVdawD8XtwnWJ2YR2dqa2svnjt3jsrUiwAwJH8OYBMBAPgdN/xNAVCaE2855w4mk8m/UYVGM8RG6iwRoXznxDYLwDm3T0TWiAibZlJEXrseIVTKeJwTrzKcEonEaYIYGhpanc/nycCvRaRRVf8uIn+IBiiG0DcGAMF8QW3IzYVheKitrW2UP0yn048YY34BoDV655UwDF83xqyKc4A5cb0ZiNn4XFXfBfCC53lHtm3bNp7NZjm5dQCgHE+q6lFjzEHn3IqIgerrmcSVCgfdjTe5Kd/3M9PT0zO+76+PbBdK8DOq2kPpEZXRqq+aAx+xjLIPhGHYW9LIWPYoC+brA/O0CLhosnuHGkdV+4wxDC+OpRxlLyQSidGZmZnN1tonnXMJ+kjNzc0EVfGpZKtQC/2LjYzzK0VdJCWeiqrGffN04rm+w3mAQ00imtZo0bxFJpxzRycnJ8fr6uqqwzBU3/enpqamUiKyW0SoYjtTqRTL8JIA0E75K4A9xpjjFFwAqIXIAAGUi7n5Tp2/m4yaG4f9G6OXeUizboeI9J4+ffrT3bt3kyFkMpkHjDEssRKG4StLlRKcxCglqAD3MoRokVhr2fJ3A6CYK3cdFgLAuYGHwpLqAWDcU/9QwB02xuwLw/Dd1tZWgmJ1utcY8wgNBpbelpaWoaUwMCAiH3Hudc4dcc4Ne55H04oDCk+ldKBZaOPx78kAxdowLUsRIQBWn1nLRkTeJtu+7x+n28GJrFAo3Gmttc65kVQqRfCLC6FMJvPbSDWeofCanJz854oVK2hwcd79UVTyKL4Yz4t9ZiJfiALxqIgkVPVRAN8r8Z32s+aLSF8ikaCqTUxOTi6bmpqa7Ojo4N8vDkB/fz/dNYbRuLX2cw4YuVyuyhhzZxiG7SLCmZdT2UYArNOLeWjkciamOfaqqn5ijGmKGOXAE7sdbxtj9pY6gP8di+d2sS+rQl1dXVVr1651Y2NjrqOjg9UDXKSnp2d1IpHgpptVdbuI0DKnilwVzbzzAZm1VTgTR0NSfxAEN/i+z1mA1S2eCRgqByImepubm8cWOp1F39Awod57771ksVjkgH+3qpIpzrtbANy0QGLPAqC85ogYy2P6Tr7vP6iqnDViB5DNjjlBWdHb1tbGPjHns2gA8QpUkhs3blxrjOHGyQJ1zD2RhcIGV2nNS4ytVCrVIyKzJTM2zyIvlt4qq9MsE5W82HIkSwYQh1Qul1sJoF5EtkbOA9mgLGbFKl/3EgATExN9peHZ19e3ng5gpH8uYWIuVzwG8pUAxH+czWbpJqwPw/DeyMjaDoD/Z7MqrVIEMOvMOef2VLofKGMidsU5Qx+iig2CoGf58uXjjY2NE6UsfC0AXIgh1dDQQEeOecEEZ25QL3HKihveggCYY319fbdUYIJ9gobYc6p6prW1lU32f8/XBhCvxAGF10uqui262GNusGpRhvDhnM24fkFE0nMZW2TC8zzmAjs/c4ylukdVOa29H88SVySEyhMqm81yBKSpu4VMiMgOVaX0YCOcva4yxjw/3x0ZmcjlcrxnI5Ps+mtUdYTgwzD8sLwqXTEGSqtUfX09PR/aKIxldvAGOt0A3nHOvRwEwfEdO3ZMz1UbR0ZGlp0/f/4WEam31vL+4by19hQ7dPnNzhUHEG9qYGBgVRAEd0UNj2YYWThjjHmrUChk2tvbKfDmfHjX7Pt+te/7nAnYUKcqhd1VA8Dkrq+vXxcxQdnAewbOAb1BEAwtBCAq16azs3N2j5TalSTFVQMw3+leyd996wH8BxA4v3x6wGifAAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-mute:hover{background:url("data:image/png;base64,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") no-repeat 50%;background-size:100% 100%}.jessibuca-container .jessibuca-icon-text{font-size:14px;width:30px}.jessibuca-container .jessibuca-speed{font-size:14px;color:#fff}.jessibuca-container .jessibuca-quality-menu-list{position:absolute;left:50%;bottom:100%;visibility:hidden;opacity:0;transform:translateX(-50%);transition:visibility .3s,opacity .3s;background-color:rgba(0,0,0,.5);border-radius:4px}.jessibuca-container .jessibuca-quality-menu-list.jessibuca-quality-menu-shown{visibility:visible;opacity:1}.jessibuca-container .icon-title-tips{pointer-events:none;position:absolute;left:50%;bottom:100%;visibility:hidden;opacity:0;transform:translateX(-50%);transition:visibility .3s ease 0s,opacity .3s ease 0s;background-color:rgba(0,0,0,.5);border-radius:4px}.jessibuca-container .icon-title{display:inline-block;padding:5px 10px;font-size:12px;white-space:nowrap;color:#fff}.jessibuca-container .jessibuca-quality-menu{padding:8px 0}.jessibuca-container .jessibuca-quality-menu-item{display:block;height:25px;margin:0;padding:0 10px;cursor:pointer;font-size:14px;text-align:center;width:50px;color:hsla(0,0%,100%,.5);transition:color .3s,background-color .3s}.jessibuca-container .jessibuca-quality-menu-item:hover{background-color:hsla(0,0%,100%,.2)}.jessibuca-container .jessibuca-quality-menu-item:focus{outline:none}.jessibuca-container .jessibuca-quality-menu-item.jessibuca-quality-menu-item-active{color:#2298fc}.jessibuca-container .jessibuca-volume-panel-wrap{position:absolute;left:50%;bottom:100%;visibility:hidden;opacity:0;transform:translateX(-50%) translateY(22%);transition:visibility .3s,opacity .3s;background-color:rgba(0,0,0,.5);border-radius:4px;height:120px;width:50px;overflow:hidden}.jessibuca-container .jessibuca-volume-panel-wrap.jessibuca-volume-panel-wrap-show{visibility:visible;opacity:1}.jessibuca-container .jessibuca-volume-panel{cursor:pointer;position:absolute;top:21px;height:60px;width:50px;overflow:hidden}.jessibuca-container .jessibuca-volume-panel-text{position:absolute;left:0;top:0;width:50px;height:20px;line-height:20px;text-align:center;color:#fff;font-size:12px}.jessibuca-container .jessibuca-volume-panel-handle{position:absolute;top:48px;left:50%;width:12px;height:12px;border-radius:12px;margin-left:-6px;background:#fff}.jessibuca-container .jessibuca-volume-panel-handle:before{bottom:-54px;background:#fff}.jessibuca-container .jessibuca-volume-panel-handle:after{bottom:6px;background:hsla(0,0%,100%,.2)}.jessibuca-container .jessibuca-volume-panel-handle:after,.jessibuca-container .jessibuca-volume-panel-handle:before{content:"";position:absolute;display:block;left:50%;width:3px;margin-left:-1px;height:60px}.jessibuca-container.jessibuca-fullscreen-web .jessibuca-controls{width:100vh;transform:translateX(-13vw) translateY(-47.8vh) rotate(270deg);transition:width .5s ease-in}.jessibuca-container.jessibuca-fullscreen-web .jessibuca-play-big:after{transform:rotate(270deg)}.jessibuca-container.jessibuca-fullscreen-web .jessibuca-loading{flex-direction:row}.jessibuca-container.jessibuca-fullscreen-web .jessibuca-loading-text{transform:rotate(270deg)}');class ke{constructor(e){var t,r,i,n,s;this.player=e,i=this,(r=e)._opt.hasControl&&r._opt.controlAutoHide?r.$container.classList.add("jessibuca-controls-show-auto-hide"):r.$container.classList.add("jessibuca-controls-show"),n=r._opt,s=n.operateBtns,r.$container.insertAdjacentHTML("beforeend",` ${n.background?`
`:""}
- ${C.loading} + ${k.loading} ${n.loadingText?`
${n.loadingText}
`:""}
${n.hasControl&&s.play?'
':""} @@ -17,8 +17,8 @@
${s.audio?`
- ${C.audio} - ${C.mute} + ${k.audio} + ${k.mute}
@@ -27,18 +27,18 @@
`:""} - ${s.play?`
${C.play}
${C.pause}
`:""} - ${s.screenshot?`
${C.screenshot}
`:""} - ${s.record?`
${C.record}
${C.recordStop}
`:""} - ${s.fullscreen?`
${C.fullscreen}
${C.fullscreenExit}
`:""} + ${s.play?`
${k.play}
${k.pause}
`:""} + ${s.screenshot?`
${k.screenshot}
`:""} + ${s.record?`
${k.record}
${k.recordStop}
`:""} + ${s.fullscreen?`
${k.fullscreen}
${k.fullscreenExit}
`:""}
`:""} - `),Object.defineProperty(i,"$poster",{value:r.$container.querySelector(".jessibuca-poster")}),Object.defineProperty(i,"$loading",{value:r.$container.querySelector(".jessibuca-loading")}),Object.defineProperty(i,"$play",{value:r.$container.querySelector(".jessibuca-play")}),Object.defineProperty(i,"$playBig",{value:r.$container.querySelector(".jessibuca-play-big")}),Object.defineProperty(i,"$pause",{value:r.$container.querySelector(".jessibuca-pause")}),Object.defineProperty(i,"$controls",{value:r.$container.querySelector(".jessibuca-controls")}),Object.defineProperty(i,"$fullscreen",{value:r.$container.querySelector(".jessibuca-fullscreen")}),Object.defineProperty(i,"$fullscreen",{value:r.$container.querySelector(".jessibuca-fullscreen")}),Object.defineProperty(i,"$volume",{value:r.$container.querySelector(".jessibuca-volume")}),Object.defineProperty(i,"$volumePanelWrap",{value:r.$container.querySelector(".jessibuca-volume-panel-wrap")}),Object.defineProperty(i,"$volumePanelText",{value:r.$container.querySelector(".jessibuca-volume-panel-text")}),Object.defineProperty(i,"$volumePanel",{value:r.$container.querySelector(".jessibuca-volume-panel")}),Object.defineProperty(i,"$volumeHandle",{value:r.$container.querySelector(".jessibuca-volume-panel-handle")}),Object.defineProperty(i,"$volumeOn",{value:r.$container.querySelector(".jessibuca-icon-audio")}),Object.defineProperty(i,"$volumeOff",{value:r.$container.querySelector(".jessibuca-icon-mute")}),Object.defineProperty(i,"$fullscreen",{value:r.$container.querySelector(".jessibuca-fullscreen")}),Object.defineProperty(i,"$fullscreenExit",{value:r.$container.querySelector(".jessibuca-fullscreen-exit")}),Object.defineProperty(i,"$record",{value:r.$container.querySelector(".jessibuca-record")}),Object.defineProperty(i,"$recordStop",{value:r.$container.querySelector(".jessibuca-record-stop")}),Object.defineProperty(i,"$screenshot",{value:r.$container.querySelector(".jessibuca-screenshot")}),Object.defineProperty(i,"$speed",{value:r.$container.querySelector(".jessibuca-speed")}),Re(e,this),t=this,Object.defineProperty(t,"controlsRect",{get:()=>t.$controls.getBoundingClientRect()});{var a=e,o=this;const h=a["events"]["proxy"];function l(e){var{bottom:t,height:r}=o.$volumePanel.getBoundingClientRect(),i=o.$volumeHandle.getBoundingClientRect()["height"];return g(t-e.y-i/2,0,r-i/2)/(r-i)}h(window,["click","contextmenu"],e=>{-1{setTimeout(()=>{a.resize()},300)}),h(o.$controls,"click",e=>{e.stopPropagation()}),h(o.$pause,"click",e=>{a.pause()}),h(o.$play,"click",e=>{a.play()}),h(o.$playBig,"click",e=>{a.play()}),h(o.$volume,"mouseover",()=>{o.$volumePanelWrap.classList.add("jessibuca-volume-panel-wrap-show")}),h(o.$volume,"mouseout",()=>{o.$volumePanelWrap.classList.remove("jessibuca-volume-panel-wrap-show")}),h(o.$volumeOn,"click",e=>{e.stopPropagation(),p(o.$volumeOn,"display","none"),p(o.$volumeOff,"display","block"),a.lastVolume=a.volume,a.volume=0}),h(o.$volumeOff,"click",e=>{e.stopPropagation(),p(o.$volumeOn,"display","block"),p(o.$volumeOff,"display","none"),a.volume=a.lastVolume||.5}),h(o.$screenshot,"click",e=>{e.stopPropagation(),a.video.screenshot()}),h(o.$volumePanel,"click",e=>{e.stopPropagation(),a.volume=l(e)}),h(o.$volumeHandle,"mousedown",()=>{o.isVolumeDroging=!0}),h(o.$volumeHandle,"mousemove",e=>{o.isVolumeDroging&&(a.volume=l(e))}),h(document,"mouseup",()=>{o.isVolumeDroging&&(o.isVolumeDroging=!1)}),h(o.$record,"click",e=>{e.stopPropagation(),a.recording=!0}),h(o.$recordStop,"click",e=>{e.stopPropagation(),a.recording=!1}),h(o.$fullscreen,"click",e=>{e.stopPropagation(),a.fullscreen=!0}),h(o.$fullscreenExit,"click",e=>{e.stopPropagation(),a.fullscreen=!1}),a._opt.hasControl&&a._opt.controlAutoHide&&(h(a.$container,"mouseover",()=>{a.fullscreen||p(o.$controls,"display","block")}),h(a.$container,"mouseout",()=>{p(o.$controls,"display","none")}))}if(e._opt.hotKey){var d=e,u=this;const f=d["events"]["proxy"],A={};function c(e,t){A[e]?A[e].push(t):A[e]=[t]}c(27,()=>{d.fullscreen&&(d.fullscreen=!1)}),c(38,()=>{d.volume+=.05}),c(40,()=>{d.volume-=.05}),f(window,"keydown",e=>{if(u.isFocus){const u=document.activeElement.tagName.toUpperCase(),t=document.activeElement.getAttribute("contenteditable");if("INPUT"!==u&&"TEXTAREA"!==u&&""!==t&&"true"!==t){const u=A[e.keyCode];u&&(e.preventDefault(),u.forEach(e=>e()))}}})}this.player.debug.log("Control","init")}destroy(){this.$poster&&this.player.$container.removeChild(this.$poster),this.$loading&&this.player.$container.removeChild(this.$loading),this.$controls&&this.player.$container.removeChild(this.$controls),this.$playBig&&this.player.$container.removeChild(this.$playBig),this.player.debug.log("control","destroy")}autoSize(){const e=this.player,t=(e.$container.style.padding="0 0",e.width),r=e.height,i=t/r,n=e.video.$videoElement.width/e.video.$videoElement.height;if(i>n){const i=(t-r*n)/2;e.$container.style.padding=`0 ${i}px`}else{const i=(r-t/n)/2;e.$container.style.padding=i+"px 0"}}}A(".jessibuca-container{position:relative;width:100%;height:100%;overflow:hidden}.jessibuca-container.jessibuca-fullscreen-web{position:fixed;z-index:9999;left:0;top:0;right:0;bottom:0;width:100vw!important;height:100vh!important;background:#000}");class L{static init(){for(var e in L.types={avc1:[],avcC:[],hvc1:[],hvcC:[],btrt:[],dinf:[],dref:[],esds:[],ftyp:[],hdlr:[],mdat:[],mdhd:[],mdia:[],mfhd:[],minf:[],moof:[],moov:[],mp4a:[],mvex:[],mvhd:[],sdtp:[],stbl:[],stco:[],stsc:[],stsd:[],stsz:[],stts:[],tfdt:[],tfhd:[],traf:[],trak:[],trun:[],trex:[],tkhd:[],vmhd:[],smhd:[]},L.types)L.types.hasOwnProperty(e)&&(L.types[e]=[e.charCodeAt(0),e.charCodeAt(1),e.charCodeAt(2),e.charCodeAt(3)]);let t=L.constants={};t.FTYP=new Uint8Array([105,115,111,109,0,0,0,1,105,115,111,109,97,118,99,49]),t.STSD_PREFIX=new Uint8Array([0,0,0,0,0,0,0,1]),t.STTS=new Uint8Array([0,0,0,0,0,0,0,0]),t.STSC=t.STCO=t.STTS,t.STSZ=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]),t.HDLR_VIDEO=new Uint8Array([0,0,0,0,0,0,0,0,118,105,100,101,0,0,0,0,0,0,0,0,0,0,0,0,86,105,100,101,111,72,97,110,100,108,101,114,0]),t.HDLR_AUDIO=new Uint8Array([0,0,0,0,0,0,0,0,115,111,117,110,0,0,0,0,0,0,0,0,0,0,0,0,83,111,117,110,100,72,97,110,100,108,101,114,0]),t.DREF=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1]),t.SMHD=new Uint8Array([0,0,0,0,0,0,0,0]),t.VMHD=new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0])}static box(e){let t=8,r=null,i=Array.prototype.slice.call(arguments,1),n=i.length;for(let e=0;e>>24&255,r[1]=t>>>16&255,r[2]=t>>>8&255,r[3]=255&t,r.set(e,4);let s=8;for(let e=0;e>>24&255,e>>>16&255,e>>>8&255,255&e,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]))}static trak(e){return L.box(L.types.trak,L.tkhd(e),L.mdia(e))}static tkhd(e){var t=e.id,r=e.duration,i=e.presentWidth,e=e.presentHeight;return L.box(L.types.tkhd,new Uint8Array([0,0,0,7,0,0,0,0,0,0,0,0,t>>>24&255,t>>>16&255,t>>>8&255,255&t,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,i>>>8&255,255&i,0,0,e>>>8&255,255&e,0,0]))}static mdia(e){return L.box(L.types.mdia,L.mdhd(e),L.hdlr(e),L.minf(e))}static mdhd(e){var t=e.timescale,e=e.duration;return L.box(L.types.mdhd,new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,t>>>24&255,t>>>16&255,t>>>8&255,255&t,e>>>24&255,e>>>16&255,e>>>8&255,255&e,85,196,0,0]))}static hdlr(e){e="audio"===e.type?L.constants.HDLR_AUDIO:L.constants.HDLR_VIDEO;return L.box(L.types.hdlr,e)}static minf(e){var t="audio"===e.type?L.box(L.types.smhd,L.constants.SMHD):L.box(L.types.vmhd,L.constants.VMHD);return L.box(L.types.minf,t,L.dinf(),L.stbl(e))}static dinf(){return L.box(L.types.dinf,L.box(L.types.dref,L.constants.DREF))}static stbl(e){return L.box(L.types.stbl,L.stsd(e),L.box(L.types.stts,L.constants.STTS),L.box(L.types.stsc,L.constants.STSC),L.box(L.types.stsz,L.constants.STSZ),L.box(L.types.stco,L.constants.STCO))}static stsd(e){return"audio"===e.type?L.box(L.types.stsd,L.constants.STSD_PREFIX,L.mp4a(e)):"avc"===e.videoType?L.box(L.types.stsd,L.constants.STSD_PREFIX,L.avc1(e)):L.box(L.types.stsd,L.constants.STSD_PREFIX,L.hvc1(e))}static mp4a(e){var t=e.channelCount,r=e.audioSampleRate,t=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,t,0,16,0,0,0,0,r>>>8&255,255&r,0,0]);return L.box(L.types.mp4a,t,L.esds(e))}static esds(e){var e=e.config||[],t=e.length,t=new Uint8Array([0,0,0,0,3,23+t,0,1,0,4,15+t,64,21,0,0,0,0,0,0,0,0,0,0,0,5].concat([t]).concat(e).concat([6,1,2]));return L.box(L.types.esds,t)}static avc1(e){var t=e.avcc,r=e.codecWidth,e=e.codecHeight,r=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,e>>>8&255,255&e,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,255,255]);return L.box(L.types.avc1,r,L.box(L.types.avcC,t))}static hvc1(e){var t=e.avcc,r=e.codecWidth,e=e.codecHeight,r=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,e>>>8&255,255&e,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,255,255]);return L.box(L.types.hvc1,r,L.box(L.types.hvcC,t))}static mvex(e){return L.box(L.types.mvex,L.trex(e))}static trex(e){e=e.id,e=new Uint8Array([0,0,0,0,e>>>24&255,e>>>16&255,e>>>8&255,255&e,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]);return L.box(L.types.trex,e)}static moof(e,t){return L.box(L.types.moof,L.mfhd(e.sequenceNumber),L.traf(e,t))}static mfhd(e){e=new Uint8Array([0,0,0,0,e>>>24&255,e>>>16&255,e>>>8&255,255&e]);return L.box(L.types.mfhd,e)}static traf(e,t){var r=e.id,r=L.box(L.types.tfhd,new Uint8Array([0,0,0,0,r>>>24&255,r>>>16&255,r>>>8&255,255&r])),t=L.box(L.types.tfdt,new Uint8Array([0,0,0,0,t>>>24&255,t>>>16&255,t>>>8&255,255&t])),i=L.sdtp(e),e=L.trun(e,i.byteLength+16+16+8+16+8+8);return L.box(L.types.traf,r,t,e,i)}static sdtp(e){let t=new Uint8Array(5),r=e.flags;return t[4]=r.isLeading<<6|r.dependsOn<<4|r.isDependedOn<<2|r.hasRedundancy,L.box(L.types.sdtp,t)}static trun(e,t){let r=new Uint8Array(28);t+=36,r.set([0,0,15,1,0,0,0,1,t>>>24&255,t>>>16&255,t>>>8&255,255&t],0);var t=e.duration,i=e.size,n=e.flags,e=e.cts;return r.set([t>>>24&255,t>>>16&255,t>>>8&255,255&t,i>>>24&255,i>>>16&255,i>>>8&255,255&i,n.isLeading<<2|n.dependsOn,n.isDependedOn<<6|n.hasRedundancy<<4|n.isNonSync,0,0,e>>>24&255,e>>>16&255,e>>>8&255,255&e],12),L.box(L.types.trun,r)}static mdat(e){return L.box(L.types.mdat,e)}}L.init();class ke{constructor(e){this.TAG="ExpGolomb",this._buffer=e,this._buffer_index=0,this._total_bytes=e.byteLength,this._total_bits=8*e.byteLength,this._current_word=0,this._current_word_bits_left=0}destroy(){this._buffer=null}_fillCurrentWord(){let e=this._total_bytes-this._buffer_index,t=Math.min(4,e),r=new Uint8Array(4);r.set(this._buffer.subarray(this._buffer_index,this._buffer_index+t)),this._current_word=new DataView(r.buffer).getUint32(0,!1),this._buffer_index+=t,this._current_word_bits_left=8*t}readBits(e){if(e<=this._current_word_bits_left)return t=this._current_word>>>32-e,this._current_word<<=e,this._current_word_bits_left-=e,t;var t=this._current_word_bits_left?this._current_word:0,e=(t>>>=32-this._current_word_bits_left,e-this._current_word_bits_left),e=(this._fillCurrentWord(),Math.min(e,this._current_word_bits_left)),r=this._current_word>>>32-e;return this._current_word<<=e,this._current_word_bits_left-=e,t<>>e))return this._current_word<<=e,this._current_word_bits_left-=e,e;return this._fillCurrentWord(),e+this._skipLeadingZero()}readUEG(){var e=this._skipLeadingZero();return this.readBits(e+1)-1}readSEG(){var e=this.readUEG();return 1&e?e+1>>>1:-1*(e>>>1)}}class I{static _ebsp2rbsp(e){let t=e,r=t.byteLength,i=new Uint8Array(r),n=0;for(let e=0;e{this.mediaSourceOpen=!0,this.player.emit(u.mseSourceOpen)}),t(this.mediaSource,"sourceclose",()=>{this.player.emit(u.mseSourceClose)}),e.debug.log("MediaSource","init")}destroy(){this.stop(),this.bufferList=[],this.mediaSource=null,this.mediaSourceOpen=!1,this.sourceBuffer=null,this.hasInit=!1,this.isInitInfo=!1,this.sequenceNumber=0,this.cacheTrack=null,this.timeInit=!1,this.off(),this.player.debug.log("MediaSource","destroy")}get state(){return this.mediaSource.readyState}get isStateOpen(){return"open"===this.state}get isStateClosed(){return"closed"===this.state}get isStateEnded(){return"ended"===this.state}get duration(){return this.mediaSource.duration}set duration(e){this.mediaSource.duration=e}decodeVideo(e,t,r){const i=this.player;var n;this.hasInit?this._decodeVideo(e,t,r):r&&0===e[1]&&(n=15&e[0],i.video.updateVideoInfo({encTypeCode:n}),12==n?this.emit(h.mediaSourceH265NotSupport):(i._times.decodeStart||(i._times.decodeStart=l()),this._decodeConfigurationRecord(e,t,r,n),this.hasInit=!0))}_doDecode(){var e=this.bufferList.shift();e&&this._decodeVideo(e.payload,e.ts,e.isIframe)}_decodeConfigurationRecord(e,t,r,i){let n=e.slice(5),s={};7===i?s=function(i){const n={},s=new DataView(i.buffer);var e=s.getUint8(0),t=s.getUint8(1);if(s.getUint8(2),s.getUint8(3),1===e&&0!==t){e=1+(3&s.getUint8(4));if(3==e||4==e){var a=31&s.getUint8(5);if(0!=a){let r=6;for(let t=0;tthis.cacheTrack.dts){let e=8+this.cacheTrack.size,t=new Uint8Array(e),r=(t[0]=e>>>24&255,t[1]=e>>>16&255,t[2]=e>>>8&255,t[3]=255&e,t.set(L.types.mdat,4),t.set(this.cacheTrack.data,8),this.cacheTrack.duration=a-this.cacheTrack.dts,L.moof(this.cacheTrack,this.cacheTrack.dts)),i=new Uint8Array(r.byteLength+t.byteLength);i.set(r,0),i.set(t,r.byteLength),this.appendBuffer(i.buffer),s.handleRender(),s.updateStats({fps:!0,ts:n,buf:s.demux.delay}),s._times.videoStart||(s._times.videoStart=l(),s.handlePlayToRenderTimes())}else s.debug.log("MediaSource","timeInit set false , cacheTrack = {}"),this.timeInit=!1,this.cacheTrack={};this.cacheTrack.id=1,this.cacheTrack.sequenceNumber=++this.sequenceNumber,this.cacheTrack.size=r,this.cacheTrack.dts=a,this.cacheTrack.cts=0,this.cacheTrack.isKeyframe=t,this.cacheTrack.data=e,this.cacheTrack.flags={isLeading:0,dependsOn:t?2:1,isDependedOn:t?1:0,hasRedundancy:0,isNonSync:t?0:1},this.timeInit||1!==i.buffered.length||(s.debug.log("MediaSource","timeInit set true"),this.timeInit=!0,i.currentTime=i.buffered.end(0)),!this.isInitInfo&&0{this.player.emit(u.mseSourceBufferError,e)})),!1===this.sourceBuffer.updating&&this.isStateOpen?this.sourceBuffer.appendBuffer(e):this.isStateClosed?this.player.emit(u.mseSourceBufferError,"mediaSource is not attached to video or mediaSource is closed"):this.isStateEnded?this.player.emit(u.mseSourceBufferError,"mediaSource is closed"):!0===this.sourceBuffer.updating&&this.player.emit(u.mseSourceBufferBusy)}stop(){this.isStateOpen&&this.sourceBuffer&&this.sourceBuffer.abort(),this.endOfStream()}dropSourceBuffer(e){const t=this.player.video.$videoElement;this.dropping=e,0"undefined"!=typeof navigator&&parseFloat((""+(/CPU.*OS ([0-9_]{3,4})[0-9_]{0,1}|(CPU like).*AppleWebKit.*Mobile/i.exec(navigator.userAgent)||[0,""])[1]).replace("undefined","3_2").replace("_",".").replace("_",""))<10&&!window.MSStream,xe=()=>"wakeLock"in navigator;class Oe{constructor(e){if(this.player=e,this.enabled=!1,xe()){this._wakeLock=null;const e=()=>{null!==this._wakeLock&&"visible"===document.visibilityState&&this.enable()};document.addEventListener("visibilitychange",e),document.addEventListener("fullscreenchange",e)}else Ie()?this.noSleepTimer=null:(this.noSleepVideo=document.createElement("video"),this.noSleepVideo.setAttribute("title","No Sleep"),this.noSleepVideo.setAttribute("playsinline",""),this._addSourceToVideo(this.noSleepVideo,"webm","data:video/webm;base64,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"),this._addSourceToVideo(this.noSleepVideo,"mp4","data:video/mp4;base64,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"),this.noSleepVideo.addEventListener("loadedmetadata",()=>{this.noSleepVideo.duration<=1?this.noSleepVideo.setAttribute("loop",""):this.noSleepVideo.addEventListener("timeupdate",()=>{.5{this._wakeLock=e,this.enabled=!0,t.log("wakeLock","Wake Lock active."),this._wakeLock.addEventListener("release",()=>{t.log("wakeLock","Wake Lock released.")})}).catch(e=>{throw this.enabled=!1,t.error("wakeLock",e.name+", "+e.message),e}):Ie()?(this.disable(),this.noSleepTimer=window.setInterval(()=>{document.hidden||(window.location.href=window.location.href.split("#")[0],window.setTimeout(window.stop,0))},15e3),this.enabled=!0,Promise.resolve()):this.noSleepVideo.play().then(e=>(this.enabled=!0,e)).catch(e=>{throw this.enabled=!1,e})}disable(){const e=this.player.debug;xe()?(this._wakeLock&&this._wakeLock.release(),this._wakeLock=null):Ie()?this.noSleepTimer&&(e.warn("wakeLock","NoSleep now disabled for older iOS devices."),window.clearInterval(this.noSleepTimer),this.noSleepTimer=null):this.noSleepVideo.pause(),this.enabled=!1}}var x=(m=v(function(e,t){"undefined"!=typeof window&&(e.exports=function(){return r={"./node_modules/eventemitter3/index.js":function(e,t,r){var i=Object.prototype.hasOwnProperty,f="~";function n(){}function s(e,t,r){this.fn=e,this.context=t,this.once=r||!1}function a(e,t,r,i,n){if("function"!=typeof r)throw new TypeError("The listener must be a function");r=new s(r,i||e,n),i=f?f+t:t;return e._events[i]?e._events[i].fn?e._events[i]=[e._events[i],r]:e._events[i].push(r):(e._events[i]=r,e._eventsCount++),e}function l(e,t){0==--e._eventsCount?e._events=new n:delete e._events[t]}function o(){this._events=new n,this._eventsCount=0}Object.create&&(n.prototype=Object.create(null),(new n).__proto__||(f=!1)),o.prototype.eventNames=function(){var e,t,r=[];if(0===this._eventsCount)return r;for(t in e=this._events)i.call(e,t)&&r.push(f?t.slice(1):t);return Object.getOwnPropertySymbols?r.concat(Object.getOwnPropertySymbols(e)):r},o.prototype.listeners=function(e){var e=f?f+e:e,t=this._events[e];if(!t)return[];if(t.fn)return[t.fn];for(var r=0,i=t.length,n=new Array(i);rs||t.nextStart)&&(this.log("Alt audio track ahead of main track, seek to start of alt audio track"),r.currentTime=s+.05)),this.getNextFragment(i,n));a?"identity"!==(null==(e=a.decryptdata)?void 0:e.keyFormat)||null!=(t=a.decryptdata)&&t.key?this.loadFragment(a,n,i):this.loadKey(a,n):this.bufferFlushed=!0}}}}},E.getMaxBufferLength=function(){var e=b.prototype.getMaxBufferLength.call(this),t=this.getFwdBufferInfo(this.videoBuffer||this.media,u.PlaylistLevelType.MAIN);return null===t?e:Math.max(e,t.len)},E.onMediaDetaching=function(){this.videoBuffer=null,b.prototype.onMediaDetaching.call(this)},E.onAudioTracksUpdated=function(e,t){t=t.audioTracks;this.resetTransmuxer(),this.levels=t.map(function(e){return new i.Level(e)})},E.onAudioTrackSwitching=function(e,t){var r=!!t.url,t=(this.trackId=t.id,this.fragCurrent);null!=t&&t.loader&&t.loader.abort(),this.fragCurrent=null,this.clearWaitingFragment(),r?this.setInterval(100):this.resetTransmuxer(),r?(this.audioSwitch=!0,this.state=h.State.IDLE):this.state=h.State.STOPPED,this.tick()},E.onManifestLoading=function(){this.mainDetails=null,this.fragmentTracker.removeAllFragments(),this.startPosition=this.lastCurrentTime=0,this.bufferFlushed=!1},E.onLevelLoaded=function(e,t){this.mainDetails=t.details},E.onAudioTrackLoaded=function(e,t){var r=this.levels,i=t.details,t=t.id;if(r){this.log("Track "+t+" loaded ["+i.startSN+","+i.endSN+"],duration:"+i.totalduration);var r=r[t],n=0;if(i.live||null!=(s=r.details)&&s.live){var s=this.mainDetails;if(i.fragments[0]||(i.deltaUpdateFailed=!0),i.deltaUpdateFailed||!s)return;n=!r.details&&i.hasProgramDateTime&&s.hasProgramDateTime?(Object(l.alignMediaPlaylistByPDT)(i,s),i.fragments[0].start):this.alignPlaylists(i,r.details)}r.details=i,this.levelLastLoaded=t,this.startFragRequested||!this.mainDetails&&i.live||this.setStartPosition(r.details,n),this.state!==h.State.WAITING_TRACK||this.waitForCdnTuneIn(i)||(this.state=h.State.IDLE),this.tick()}else this.warn("Audio tracks were reset while loading level "+t)},E._handleFragmentLoadProgress=function(e){var t,r,i,n,s=e.frag,a=e.part,e=e.payload,o=this.config,l=this.trackId,d=this.levels;d?(d=d[l],console.assert(d,"Audio track is defined on fragment load progress"),t=d.details,console.assert(t,"Audio track details are defined on fragment load progress"),o=o.defaultAudioCodec||d.audioCodec||"mp4a.40.2",d=(d=this.transmuxer)||(this.transmuxer=new g.default(this.hls,u.PlaylistLevelType.AUDIO,this._handleTransmuxComplete.bind(this),this._handleTransmuxerFlush.bind(this))),r=this.initPTS[s.cc],i=null==(i=s.initSegment)?void 0:i.data,void 0!==r?(n=a?a.index:-1,n=new p.ChunkMetadata(s.level,s.sn,s.stats.chunkCount,e.byteLength,n,-1!==n),d.push(e,i,o,"",s,a,t.totalduration,!1,n,r)):(m.logger.log("Unknown video PTS for cc "+s.cc+", waiting for video PTS before demuxing audio frag "+s.sn+" of ["+t.startSN+" ,"+t.endSN+"],track "+l),(this.waitingData=this.waitingData||{frag:s,part:a,cache:new c.default,complete:!1}).cache.push(new Uint8Array(e)),this.waitingVideoCC=this.videoTrackCC,this.state=h.State.WAITING_INIT_PTS)):this.warn("Audio tracks were reset while fragment load was in progress. Fragment "+s.sn+" of level "+s.level+" will not be buffered")},E._handleFragmentLoadComplete=function(e){this.waitingData?this.waitingData.complete=!0:b.prototype._handleFragmentLoadComplete.call(this,e)},E.onBufferReset=function(){this.mediaBuffer=this.videoBuffer=null,this.loadedmetadata=!1},E.onBufferCreated=function(e,t){var r=t.tracks.audio;r&&(this.mediaBuffer=r.buffer),t.tracks.video&&(this.videoBuffer=t.tracks.video.buffer)},E.onFragBuffered=function(e,t){var r=t.frag,t=t.part;r.type===u.PlaylistLevelType.AUDIO&&(this.fragContextChanged(r)?this.warn("Fragment "+r.sn+(t?" p: "+t.index:"")+" of level "+r.level+" finished buffering, but was aborted. state: "+this.state+", audioSwitch: "+this.audioSwitch):("initSegment"!==r.sn&&(this.fragPrevious=r,this.audioSwitch&&(this.audioSwitch=!1,this.hls.trigger(f.Events.AUDIO_TRACK_SWITCHED,{id:this.trackId}))),this.fragBufferedComplete(r,t)))},E.onError=function(e,t){switch(t.details){case d.ErrorDetails.FRAG_LOAD_ERROR:case d.ErrorDetails.FRAG_LOAD_TIMEOUT:case d.ErrorDetails.KEY_LOAD_ERROR:case d.ErrorDetails.KEY_LOAD_TIMEOUT:this.onFragmentOrKeyLoadError(u.PlaylistLevelType.AUDIO,t);break;case d.ErrorDetails.AUDIO_TRACK_LOAD_ERROR:case d.ErrorDetails.AUDIO_TRACK_LOAD_TIMEOUT:this.state!==h.State.ERROR&&this.state!==h.State.STOPPED&&(this.state=t.fatal?h.State.ERROR:h.State.IDLE,this.warn(t.details+" while loading frag, switching to "+this.state+" state"));break;case d.ErrorDetails.BUFFER_FULL_ERROR:var r,i;"audio"!==t.parent||this.state!==h.State.PARSING&&this.state!==h.State.PARSED||(r=!0,(r=(i=this.getFwdBufferInfo(this.mediaBuffer,u.PlaylistLevelType.AUDIO))&&.5=o.length?this.warn("Invalid id passed to audio-track controller"):(this.clearTimer(),t=o[this.trackId],this.log("Now switching to audio-track index "+e),r=(o=o[e]).id,i=void 0===(i=o.groupId)?"":i,n=o.name,s=o.type,a=o.url,this.trackId=e,this.trackName=n,this.selectDefaultTrack=!1,this.hls.trigger(l.Events.AUDIO_TRACK_SWITCHING,{id:r,groupId:i,name:n,type:s,url:a}),o.details&&!o.details.live||(e=this.switchParams(o.url,null==t?void 0:t.details),this.loadPlaylist(e)))},n.selectInitialTrack=function(){var e=this.tracksInGroup,e=(console.assert(e.length,"Initial audio track should be selected when tracks are known"),this.trackName),e=this.findTrackId(e)||this.findTrackId();-1!==e?this.setAudioTrack(e):(this.warn("No track found for running audio group-ID: "+this.groupId),this.hls.trigger(l.Events.ERROR,{type:i.ErrorTypes.MEDIA_ERROR,details:i.ErrorDetails.AUDIO_TRACK_LOAD_ERROR,fatal:!0}))},n.findTrackId=function(e){for(var t=this.tracksInGroup,r=0;rt.partTarget&&(n+=1)),Object(o.isFiniteNumber)(s))return new l.HlsUrlParameters(s,Object(o.isFiniteNumber)(n)?n:void 0,l.HlsSkip.No)}}},t.loadPlaylist=function(e){},t.shouldLoadTrack=function(e){return this.canLoad&&e&&!!e.url&&(!e.details||e.details.live)},t.playlistLoaded=function(e,t,r){var i=this,n=t.details,s=t.stats,a=s.loading.end?Math.max(0,self.performance.now()-s.loading.end):0;if(n.advancedDateTime=Date.now()-a,n.live||null!=r&&r.live){if(n.reloaded(r),r&&this.log("live playlist "+e+" "+(n.advanced?"REFRESHED "+n.lastPartSn+"-"+n.lastPartIndex:"MISSED")),r&&0r.tuneInGoal?(this.warn("CDN Tune-in goal increased from: "+r.tuneInGoal+" to: "+c+" with playlist age: "+n.age),c=0):(a+=h=Math.floor(c/n.targetduration),void 0!==l&&(l+=Math.round(c%n.targetduration/n.partTarget)),this.log("CDN Tune-in age: "+n.ageHeader+"s last advanced "+u.toFixed(2)+"s goal: "+c+" skip sn "+h+" to part "+l)),n.tuneInGoal=c),o=this.getDeliveryDirectives(n,t.deliveryDirectives,a,l),d||!f)return void this.loadPlaylist(o)}else o=this.getDeliveryDirectives(n,t.deliveryDirectives,a,l);r=Object(A.computeReloadInterval)(n,s);void 0!==a&&n.canBlockReload&&(r-=n.partTarget||1),this.log("reload live playlist "+e+" in "+Math.round(r)+" ms"),this.timer=self.setTimeout(function(){return i.loadPlaylist(o)},r)}}else this.clearTimer()},t.getDeliveryDirectives=function(e,t,r,i){var n=Object(l.getSkipValue)(e,r);return null!=t&&t.skip&&e.deltaUpdateFailed&&(r=t.msn,i=t.part,n=l.HlsSkip.No),new l.HlsUrlParameters(r,i,n)},t.retryLoadingOrFail=function(e){var t,r=this,i=this.hls.config,n=this.retryCount=t.endSN&&!e.nextStart){e=t.partList;if(null!=e&&e.length)return t=e[e.length-1],a.BufferHelper.isBuffered(this.media,t.start+t.duration/2);e=i.getState(r);return e===c.FragmentState.PARTIAL||e===c.FragmentState.OK}return!1},t.onMediaAttached=function(e,t){t=this.media=this.mediaBuffer=t.media,this.onvseeking=this.onMediaSeeking.bind(this),this.onvended=this.onMediaEnded.bind(this),t.addEventListener("seeking",this.onvseeking),t.addEventListener("ended",this.onvended),t=this.config;this.levels&&t.autoStartLoad&&this.state===E.STOPPED&&this.startLoad(t.startPosition)},t.onMediaDetaching=function(){var e=this.media;null!=e&&e.ended&&(this.log("MSE detaching and video ended, reset startPosition"),this.startPosition=this.lastCurrentTime=0),e&&(e.removeEventListener("seeking",this.onvseeking),e.removeEventListener("ended",this.onvended),this.onvseeking=this.onvended=null),this.media=this.mediaBuffer=null,this.loadedmetadata=!1,this.fragmentTracker.removeAllFragments(),this.stopLoad()},t.onMediaSeeking=function(){var e=this.config,t=this.fragCurrent,r=this.media,i=this.mediaBuffer,n=this.state,s=r?r.currentTime:0,i=a.BufferHelper.bufferInfo(i||r,s,e.maxBufferHole);this.log("media seeking to "+(Object(l.isFiniteNumber)(s)?s.toFixed(3):s)+", state: "+n),n===E.ENDED?this.resetLoadingState():t&&!i.len&&(n=e.maxFragLookUpTolerance,e=t.start-n,n=s>t.start+t.duration+n,(se.end&&t.fragmentHint&&(e=t.fragmentHint);var a,o=this.getNextPart(s,e,r);if(-1r&&this.flushMainBuffer(i,e.start)):this.flushMainBuffer(0,e.start))},t.getFwdBufferInfo=function(e,t){var r=this.config,i=this.getLoadPosition();if(!Object(l.isFiniteNumber)(i))return null;var n=a.BufferHelper.bufferInfo(e,i,r.maxBufferHole);if(0===n.len&&void 0!==n.nextStart){t=this.fragmentTracker.getBufferedFrag(i,t);if(t&&n.nextStart=e&&(t.maxMaxBufferLength/=2,this.warn("Reduce max buffer length to "+t.maxMaxBufferLength+"s"),!0)},t.getNextFragment=function(e,t){var r=t.fragments,i=r.length;if(!i)return null;var n,s=this.config,a=r[0].start;if(t.live){var o=s.initialLiveManifestSize;if(ie.start&&e.loaded},t.getInitialLiveFragment=function(e,t){var r,i=this.fragPrevious,n=null;return i?(e.hasProgramDateTime&&(this.log("Live playlist, switching playlist, load frag with same PDT: "+i.programDateTime),n=Object(f.findFragmentByPDT)(t,i.endProgramDateTime,this.config.maxFragLookUpTolerance)),n||((r=i.sn+1)>=e.startSN&&r<=e.endSN&&(r=t[r-e.startSN],i.cc===r.cc&&this.log("Live playlist, switching playlist, load frag with next SN: "+(n=r).sn)),n||(n=Object(f.findFragWithCC)(t,i.cc))&&this.log("Live playlist, switching playlist, load frag with same CC: "+n.sn))):null!==(r=this.hls.liveSyncPosition)&&(n=this.getFragmentAtPosition(r,this.bitrateTest?e.fragmentEnd:e.edge,e)),n},t.getFragmentAtPosition=function(e,t,r){var i,n=this.config,s=this.fragPrevious,a=r.fragments,o=r.endSN,l=r.fragmentHint,d=n.maxFragLookUpTolerance,n=!!(n.lowLatencyMode&&r.partList&&l);if(n&&l&&!this.bitrateTest&&(a=a.concat(l),o=l.sn),i=e=n-s.maxFragLookUpTolerance&&r<=i,null!==t&&a.duration>t&&(r"+e.startSN+" prev-sn: "+(n?n.sn:"na")+" fragments: "+i),a):s},t.waitForCdnTuneIn=function(e){return e.live&&e.canBlockReload&&e.tuneInGoal>Math.max(e.partHoldBack,3*e.partTarget)},t.setStartPosition=function(e,t){var r,i=this.startPosition;-1!==(i=i"+e))}}]),S);function S(e,t,r){var i;return(i=b.call(this)||this).hls=void 0,i.fragPrevious=null,i.fragCurrent=null,i.fragmentTracker=void 0,i.transmuxer=null,i._state=E.STOPPED,i.media=void 0,i.mediaBuffer=void 0,i.config=void 0,i.bitrateTest=!1,i.lastCurrentTime=0,i.nextLoadPosition=0,i.startPosition=0,i.loadedmetadata=!1,i.fragLoadError=0,i.retryDate=0,i.levels=null,i.fragmentLoader=void 0,i.levelLastLoaded=null,i.startFragRequested=!1,i.decrypter=void 0,i.initPTS=[],i.onvseeking=null,i.onvended=null,i.logPrefix="",i.log=void 0,i.warn=void 0,i.logPrefix=r,i.log=n.logger.log.bind(n.logger,r+":"),i.warn=n.logger.warn.bind(n.logger,r+":"),i.hls=e,i.fragmentLoader=new A.default(e.config),i.fragmentTracker=t,i.config=e.config,i.decrypter=new g.default(e,e.config),e.on(h.Events.KEY_LOADED,i.onKeyLoaded,function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(i)),i}},"./src/controller/buffer-controller.ts":function(e,t,r){r.r(t),r.d(t,"default",function(){return s});var l=r("./src/polyfills/number.ts"),g=r("./src/events.ts"),p=r("./src/utils/logger.ts"),m=r("./src/errors.ts"),v=r("./src/utils/buffer-helper.ts"),t=r("./src/utils/mediasource-helper.ts"),a=r("./src/loader/fragment.ts"),i=r("./src/controller/buffer-operation-queue.ts"),n=Object(t.getMediaSource)(),d=/([ha]vc.)(?:\.[^.,]+)+/,s=((r=o.prototype).hasSourceTypes=function(){return 0r.config.appendErrorMaxRetry&&(p.logger.error("[buffer-controller]: Failed "+r.config.appendErrorMaxRetry+" times to append segment in sourceBuffer"),t.fatal=!0)),r.trigger(g.Events.ERROR,t)}},o)},r.onBufferFlushing=function(e,r){function t(t){return{execute:i.removeExecutor.bind(i,t,r.startOffset,r.endOffset),onStart:function(){},onComplete:function(){i.hls.trigger(g.Events.BUFFER_FLUSHED,{type:t})},onError:function(e){p.logger.warn("[buffer-controller]: Failed to remove from "+t+" SourceBuffer",e)}}}var i=this,n=this.operationQueue;r.type?n.append(t(r.type),r.type):this.getSourceBufferTypes().forEach(function(e){n.append(t(e),e)})},r.onFragParsed=function(e,t){var r=this,i=t.frag,n=t.part,t=[],s=(n||i).elementaryStreams;s[a.ElementaryStreamTypes.AUDIOVIDEO]?t.push("audiovideo"):(s[a.ElementaryStreamTypes.AUDIO]&&t.push("audio"),s[a.ElementaryStreamTypes.VIDEO]&&t.push("video")),0===t.length&&p.logger.warn("Fragments must have at least one ElementaryStreamType set. type: "+i.type+" level: "+i.level+" sn: "+i.sn),this.blockBuffers(function(){var e=self.performance.now(),e=(i.stats.buffering.end=e,n&&(n.stats.buffering.end=e),(n||i).stats);r.hls.trigger(g.Events.FRAG_BUFFERED,{frag:i,part:n,stats:e,id:i.type})},t)},r.onFragChanged=function(e,t){this.flushBackBuffer()},r.onBufferEos=function(e,i){var n=this;this.getSourceBufferTypes().reduce(function(e,t){var r=n.sourceBuffer[t];return i.type&&i.type!==t||r&&!r.ended&&(r.ended=!0,p.logger.log("[buffer-controller]: "+t+" sourceBuffer now EOS")),e&&!(r&&!r.ended)},!0)&&this.blockBuffers(function(){var e=n.mediaSource;e&&"open"===e.readyState&&e.endOfStream()})},r.onLevelUpdated=function(e,t){t=t.details;t.fragments.length&&(this.details=t,this.getSourceBufferTypes().length?this.blockBuffers(this.updateMediaElementDuration.bind(this)):this.updateMediaElementDuration())},r.flushBackBuffer=function(){var e,t,r,i,n=this.hls,s=this.details,a=this.media,o=this.sourceBuffer;a&&null!==s&&(e=this.getSourceBufferTypes()).length&&(r=s.live&&null!==n.config.liveBackBufferLength?n.config.liveBackBufferLength:n.config.backBufferLength,!Object(l.isFiniteNumber)(r)||r<0||(a=a.currentTime,t=s.levelTargetDuration,r=Math.max(r,t),i=Math.floor(a/t)*t-r,e.forEach(function(e){var t=o[e];t&&0<(t=v.BufferHelper.getBuffered(t)).length&&i>t.start(0)&&(n.trigger(g.Events.BACK_BUFFER_REACHED,{bufferEnd:i}),s.live&&n.trigger(g.Events.LIVE_BACK_BUFFER_REACHED,{bufferEnd:i}),n.trigger(g.Events.BUFFER_FLUSHING,{startOffset:0,endOffset:i,type:e}))})))},r.updateMediaElementDuration=function(){var e,t,r,i,n,s;this.details&&this.media&&this.mediaSource&&"open"===this.mediaSource.readyState&&(e=this.details,t=this.hls,n=this.media,r=this.mediaSource,i=e.fragments[0].start+e.totalduration,n=n.duration,s=Object(l.isFiniteNumber)(r.duration)?r.duration:0,e.live&&t.config.liveDurationInfinity?(p.logger.log("[buffer-controller]: Media Source duration is set to Infinity"),r.duration=1/0,this.updateSeekableRange(e)):(sthis.autoLevelCapping&&this.streamController&&this.streamController.nextLevelSwitch(),this.autoLevelCapping=t.autoLevelCapping))},r.getMaxLevel=function(r){var i=this,e=this.hls.levels;if(!e.length)return-1;e=e.filter(function(e,t){return a.isLevelAllowed(t,i.restrictedLevels)&&t<=r});return this.clientRect=null,a.getMaxLevelByMediaSize(e,this.mediaWidth,this.mediaHeight)},r.startCapping=function(){this.timer||(this.autoLevelCapping=Number.POSITIVE_INFINITY,this.hls.firstLevel=this.getMaxLevel(this.firstLevel),self.clearInterval(this.timer),this.timer=self.setInterval(this.detectPlayerSize.bind(this),1e3),this.detectPlayerSize())},r.stopCapping=function(){this.restrictedLevels=[],this.firstLevel=-1,this.autoLevelCapping=Number.POSITIVE_INFINITY,this.timer&&(self.clearInterval(this.timer),this.timer=void 0)},r.getDimensions=function(){if(this.clientRect)return this.clientRect;var e,t=this.media,r={width:0,height:0};return t&&(e=t.getBoundingClientRect(),r.width=e.width,r.height=e.height,r.width||r.height||(r.width=e.right-e.left||t.width||0,r.height=e.bottom-e.top||t.height||0)),this.clientRect=r},a.isLevelAllowed=function(e,t){return-1===(t=void 0===t?[]:t).indexOf(e)},a.getMaxLevelByMediaSize=function(e,t,r){if(!e||!e.length)return-1;for(var i,n=e.length-1,s=0;s=t||a.height>=r)&&(!(i=e[s+1])||a.width!==i.width||a.height!==i.height)){n=s;break}}return n},r=[{key:"contentScaleFactor",get:function(){var e=1;try{e=self.devicePixelRatio}catch(e){}return e}}],n((s=a).prototype,[{key:"mediaWidth",get:function(){return this.getDimensions().width*a.contentScaleFactor}},{key:"mediaHeight",get:function(){return this.getDimensions().height*a.contentScaleFactor}}]),n(s,r);var s=a;function a(e){this.autoLevelCapping=void 0,this.firstLevel=void 0,this.media=void 0,this.restrictedLevels=void 0,this.timer=void 0,this.hls=void 0,this.streamController=void 0,this.clientRect=void 0,this.hls=e,this.autoLevelCapping=Number.POSITIVE_INFINITY,this.firstLevel=-1,this.media=null,this.restrictedLevels=[],this.timer=void 0,this.clientRect=null,this.registerListeners()}t.default=s},"./src/controller/cmcd-controller.ts":function(e,t,r){r.r(t),r.d(t,"default",function(){return h});var i=r("./src/events.ts"),a=r("./src/types/cmcd.ts"),n=r("./src/utils/buffer-helper.ts"),o=r("./src/utils/logger.ts");function s(e,t){for(var r=0;r=e.length?{done:!0}:{done:!1,value:e[r++]}};throw new TypeError("Invalid attempt to iterate 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 r=0,i=new Array(t);rt&&(t=n.bitrate)}return 0s.config.fpsDroppedMonitoringThreshold*n&&(a=s.currentLevel,d.logger.warn("drop FPS ratio greater than max allowed value for currentLevel: "+a),0=a)&&(s.trigger(l.Events.FPS_DROP_LEVEL_CAPPING,{level:--a,droppedLevel:s.currentLevel}),s.autoLevelCapping=a,this.streamController.nextLevelSwitch()))),this.lastTime=o,this.lastDroppedFrames=r,this.lastDecodedFrames=t)},r.checkFPSInterval=function(){var e,t=this.media;t&&(this.isVideoPlaybackQualityAvailable?(e=t.getVideoPlaybackQuality(),this.checkFPS(t,e.totalVideoFrames,e.droppedVideoFrames)):this.checkFPS(t,t.webkitDecodedFrameCount,t.webkitDroppedFrameCount))},t.default=i},"./src/controller/fragment-finders.ts":function(e,t,r){r.r(t),r.d(t,"findFragmentByPDT",function(){return i}),r.d(t,"findFragmentByPTS",function(){return n}),r.d(t,"fragmentWithinToleranceTest",function(){return o}),r.d(t,"pdtWithinToleranceTest",function(){return l}),r.d(t,"findFragWithCC",function(){return d});var s=r("./src/polyfills/number.ts"),a=r("./src/utils/binary-search.ts");function i(e,t,r){if(null===t||!Array.isArray(e)||!e.length||!Object(s.isFiniteNumber)(t))return null;if(t<(e[0].programDateTime||0))return null;if(t>=(e[e.length-1].endProgramDateTime||0))return null;r=r||0;for(var i=0;ie&&r.start?-1:0}function l(e,t,r){t=1e3*Math.min(t,r.duration+(r.deltaPTS||0));return(r.endProgramDateTime||0)-t>e}function d(e,t){return a.default.search(e,function(e){return e.cct?-1:0})}},"./src/controller/fragment-tracker.ts":function(e,t,r){r.r(t),r.d(t,"FragmentState",function(){return i}),r.d(t,"FragmentTracker",function(){return s});var i,n=r("./src/events.ts"),o=r("./src/types/loader.ts"),s=((t=i=i||{}).NOT_LOADED="NOT_LOADED",t.BACKTRACKED="BACKTRACKED",t.APPENDING="APPENDING",t.PARTIAL="PARTIAL",t.OK="OK",(r=a.prototype)._registerListeners=function(){var e=this.hls;e.on(n.Events.BUFFER_APPENDED,this.onBufferAppended,this),e.on(n.Events.FRAG_BUFFERED,this.onFragBuffered,this),e.on(n.Events.FRAG_LOADED,this.onFragLoaded,this)},r._unregisterListeners=function(){var e=this.hls;e.off(n.Events.BUFFER_APPENDED,this.onBufferAppended,this),e.off(n.Events.FRAG_BUFFERED,this.onFragBuffered,this),e.off(n.Events.FRAG_LOADED,this.onFragLoaded,this)},r.destroy=function(){this._unregisterListeners(),this.fragments=this.timeRanges=null},r.getAppendedFrag=function(e,t){if(t===o.PlaylistLevelType.MAIN){var r=this.activeFragment,i=this.activeParts;if(!r)return null;if(i)for(var n=i.length;n--;){var s=i[n],a=s?s.end:r.appendedPTS;if(s.start<=e&&void 0!==a&&e<=a)return 9t&&n.removeFragment(e))})},r.removeFragment=function(e){var t=d(e);e.stats.loaded=0,e.clearElementaryStreamInfo(),delete this.fragments[t]},r.removeAllFragments=function(){this.fragments=Object.create(null),this.activeFragment=null,this.activeParts=null},a);function a(e){this.activeFragment=null,this.activeParts=null,this.fragments=Object.create(null),this.timeRanges=Object.create(null),this.bufferPadding=.2,this.hls=void 0,this.hls=e,this._registerListeners()}function l(e){var t;return e.buffered&&(null!=(t=e.range.video)&&t.partial||null!=(t=e.range.audio)&&t.partial)}function d(e){return e.type+"_"+e.level+"_"+e.urlId+"_"+e.sn}},"./src/controller/gap-controller.ts":function(e,t,r){r.r(t),r.d(t,"STALL_MINIMUM_DURATION_MS",function(){return f}),r.d(t,"MAX_START_GAP_JUMP",function(){return A}),r.d(t,"SKIP_BUFFER_HOLE_STEP_SECONDS",function(){return g}),r.d(t,"SKIP_BUFFER_RANGE_START",function(){return p}),r.d(t,"default",function(){return i});var d=r("./src/utils/buffer-helper.ts"),u=r("./src/errors.ts"),c=r("./src/events.ts"),h=r("./src/utils/logger.ts"),f=250,A=2,g=.1,p=.05,i=((t=n.prototype).destroy=function(){this.hls=this.fragmentTracker=this.media=null},t.poll=function(e){var t=this.config,r=this.media,i=this.stalled,n=r.currentTime,s=r.seeking,a=this.seeking&&!s,o=!this.seeking&&s;if(this.seeking=s,n===e){if((o||a)&&(this.stalled=null),!r.paused&&!r.ended&&0!==r.playbackRate&&d.BufferHelper.getBuffered(r).length){e=d.BufferHelper.bufferInfo(r,n,0),o=0A,l=!a||Ar.maxBufferHole&&t>1e3*r.highBufferWatchdogPeriod&&(h.logger.warn("Trying to nudge playhead over buffer-hole"),this.stalled=null,this._tryNudgeBuffer())},t._reportStall=function(e){var t=this.hls,r=this.media;this.stallReported||(this.stallReported=!0,h.logger.warn("Playback stalling at @"+r.currentTime+" due to low buffer (buffer="+e+")"),t.trigger(c.Events.ERROR,{type:u.ErrorTypes.MEDIA_ERROR,details:u.ErrorDetails.BUFFER_STALLED_ERROR,fatal:!1,buffer:e}))},t._trySkipBufferHole=function(e){for(var t=this.config,r=this.hls,i=this.media,n=i.currentTime,s=0,a=d.BufferHelper.getBuffered(i),o=0;o=s&&nthis.hls.config.fragLoadingMaxRetry&&(i=t.frag.level)):i=t.frag.level);break;case g.ErrorDetails.LEVEL_LOAD_ERROR:case g.ErrorDetails.LEVEL_LOAD_TIMEOUT:r&&(r.deliveryDirectives&&(a=!1),i=r.level),s=!0;break;case g.ErrorDetails.REMUX_ALLOC_ERROR:i=t.level,s=!0}void 0!==i&&this.recoverLevel(t,i,s,a)}}},t.recoverLevel=function(e,t,r,i){var n=e.details,s=this._levels[t];if(s.loadError++,r){if(!this.retryLoadingOrFail(e))return void(this.currentLevelIndex=-1);e.levelRetry=!0}i&&(1<(r=s.url.length)&&s.loadError=t.length){var r=e<0;if(this.hls.trigger(A.Events.ERROR,{type:g.ErrorTypes.OTHER_ERROR,details:g.ErrorDetails.LEVEL_SWITCH_ERROR,level:e,fatal:r,reason:"invalid level idx"}),r)return;e=Math.min(e,t.length-1)}this.clearTimer();var r=this.currentLevelIndex,i=t[r],t=t[e],r=(this.log("switching to level "+e+" from "+r),n({},t,{level:this.currentLevelIndex=e,maxBitrate:t.maxBitrate,uri:t.uri,urlId:t.urlId})),e=(delete r._urlId,this.hls.trigger(A.Events.LEVEL_SWITCHING,r),t.details);e&&!e.live||(r=this.switchParams(t.uri,null==i?void 0:i.details),this.loadPlaylist(r))}}},{key:"manualLevel",get:function(){return this.manualLevelIndex},set:function(e){this.manualLevelIndex=e,void 0===this._startLevel&&(this._startLevel=e),-1!==e&&(this.level=e)}},{key:"firstLevel",get:function(){return this._firstLevel},set:function(e){this._firstLevel=e}},{key:"startLevel",get:function(){var e;return void 0===this._startLevel?void 0!==(e=this.hls.config.startLevel)?e:this._firstLevel:this._startLevel},set:function(e){this._startLevel=e}},{key:"nextLoadLevel",get:function(){return-1!==this.manualLevelIndex?this.manualLevelIndex:this.hls.nextAutoLevel},set:function(e){this.level=e,-1===this.manualLevelIndex&&(this.hls.nextAutoLevel=e)}}]),d);function d(e){return(e=l.call(this,e,"[level-controller]")||this)._levels=[],e._firstLevel=-1,e._startLevel=void 0,e.currentLevelIndex=-1,e.manualLevelIndex=-1,e.onParsedComplete=void 0,e._registerListeners(),e}},"./src/controller/level-helper.ts":function(e,t,r){r.r(t),r.d(t,"addGroupId",function(){return i}),r.d(t,"assignTrackIdsByGroup",function(){return n}),r.d(t,"updatePTS",function(){return s}),r.d(t,"updateFragPTSDTS",function(){return p}),r.d(t,"mergeDetails",function(){return a}),r.d(t,"mapPartIntersection",function(){return m}),r.d(t,"mapFragmentIntersection",function(){return v}),r.d(t,"adjustSliding",function(){return y}),r.d(t,"addSliding",function(){return o}),r.d(t,"computeReloadInterval",function(){return l}),r.d(t,"getFragmentWithSN",function(){return d}),r.d(t,"getPartWith",function(){return u});var f=r("./src/polyfills/number.ts"),A=r("./src/utils/logger.ts");function i(e,t,r){switch(t){case"audio":e.audioGroupIds||(e.audioGroupIds=[]),e.audioGroupIds.push(r);break;case"text":e.textGroupIds||(e.textGroupIds=[]),e.textGroupIds.push(r)}}function n(e){var r={};e.forEach(function(e){var t=e.groupId||"";e.id=r[t]=r[t]||0,r[t]++})}function s(e,t,r){g(e[t],e[r])}function g(e,t){var r,i=t.startPTS;Object(f.isFiniteNumber)(i)?(r=0,(i=t.sn>e.sn?(r=i-e.start,e):(r=e.start-i,t)).duration!==r&&(i.duration=r)):t.sn>e.sn?e.cc===t.cc&&e.minEndPTS?t.start=e.start+(e.minEndPTS-e.start):t.start=e.start+e.duration:t.start=Math.max(e.start-t.duration,0)}function p(e,t,r,i,n,s){i-r<=0&&(A.logger.warn("Fragment should have a positive duration",t),i=r+t.duration,s=n+t.duration);var a=r,o=i,l=t.startPTS,d=t.endPTS,u=(Object(f.isFiniteNumber)(l)&&(u=Math.abs(l-r),Object(f.isFiniteNumber)(t.deltaPTS)?t.deltaPTS=Math.max(u,t.deltaPTS):t.deltaPTS=u,a=Math.max(r,l),r=Math.min(r,l),n=Math.min(n,t.startDTS),o=Math.min(i,d),i=Math.max(i,d),s=Math.max(s,t.endDTS)),t.duration=i-r,r-t.start);t.appendedPTS=i,t.start=t.startPTS=r,t.maxStartPTS=a,t.startDTS=n,t.endPTS=i,t.minEndPTS=o,t.endDTS=s;var c,l=t.sn;if(!e||le.endSN)return 0;var d=l-e.startSN,h=e.fragments;for(h[d]=t,c=d;0=e.length||o(t,e[r].start)}function o(e,t){if(t){for(var r=e.fragments,i=e.skippedSegments;i=this.getMaxBufferLength(t.maxBitrate))){if(this._streamEnded(r,n))return e={},this.altAudio&&(e.type="video"),this.hls.trigger(p.Events.BUFFER_EOS,e),void(this.state=g.State.ENDED);s=r.end,t=this.getNextFragment(s,n);!this.couldBacktrack||this.fragPrevious||!t||"initSegment"===t.sn||1<(e=t.sn-n.startSN)&&(t=n.fragments[e-1],this.fragmentTracker.removeFragment(t)),t&&this.fragmentTracker.getState(t)===a.FragmentState.OK&&this.nextLoadPosition>s&&(r=this.audioOnly&&!this.altAudio?m.ElementaryStreamTypes.AUDIO:m.ElementaryStreamTypes.VIDEO,this.afterBufferFlushed(i,r,c.PlaylistLevelType.MAIN),t=this.getNextFragment(this.nextLoadPosition,n)),t&&("identity"!==(null==(e=(t=!t.initSegment||t.initSegment.data||this.bitrateTest?t:t.initSegment).decryptdata)?void 0:e.keyFormat)||null!=(i=t.decryptdata)&&i.key?this.loadFragment(t,n,s):this.loadKey(t,n))}}}},r.loadFragment=function(e,t,r){var i=this.fragmentTracker.getState(e);if(this.fragCurrent=e,i===a.FragmentState.BACKTRACKED){var n=this.fragmentTracker.getBacktrackData(e);if(n)return this._handleFragmentLoadProgress(n),void this._handleFragmentLoadComplete(n);i=a.FragmentState.NOT_LOADED}i===a.FragmentState.NOT_LOADED||i===a.FragmentState.PARTIAL?"initSegment"===e.sn?this._loadInitSegment(e):this.bitrateTest?(e.bitrateTest=!0,this.log("Fragment "+e.sn+" of level "+e.level+" is being downloaded to test bitrate and will not be buffered"),this._loadBitrateTestFrag(e)):(this.startFragRequested=!0,v.prototype.loadFragment.call(this,e,t,r)):i===a.FragmentState.APPENDING?this.reduceMaxBufferLength(e.duration)&&this.fragmentTracker.removeFragment(e):0===(null==(n=this.media)?void 0:n.buffered.length)&&this.fragmentTracker.removeAllFragments()},r.getAppendedFrag=function(e){e=this.fragmentTracker.getAppendedFrag(e,c.PlaylistLevelType.MAIN);return e&&"fragment"in e?e.fragment:e},r.getBufferedFrag=function(e){return this.fragmentTracker.getBufferedFrag(e,c.PlaylistLevelType.MAIN)},r.followingBufferedFrag=function(e){return e?this.getBufferedFrag(e.end+.5):null},r.immediateLevelSwitch=function(){this.abortCurrentFrag(),this.flushMainBuffer(0,Number.POSITIVE_INFINITY)},r.nextLevelSwitch=function(){var e,t=this.levels,r=this.media;null!=r&&r.readyState&&((e=this.getAppendedFrag(r.currentTime))&&1=i[a].start&&s<=i[a].end){n=i[a];break}t=r.start+r.duration;n?n.end=t:i.push(n={start:s,end:t}),this.fragmentTracker.fragBuffered(r)}}},r.onBufferFlushing=function(e,t){var r,i,n,s=t.startOffset,a=t.endOffset;0===s&&a!==Number.POSITIVE_INFINITY&&(r=this.currentTrackId,(i=this.levels).length&&i[r]&&i[r].details&&((n=a-i[r].details.targetduration)<=0||(t.endOffsetSubtitles=Math.max(0,n),this.tracksBuffered.forEach(function(e){for(var t=0;t=n.length||t!==i)&&s){if(this.mediaBuffer=this.mediaBufferTimeRanges,r.live||null!=(n=s.details)&&n.live){i=this.mainDetails;if(r.deltaUpdateFailed||!i)return;n=i.fragments[0];s.details?0===this.alignPlaylists(r,s.details)&&n&&Object(o.addSliding)(r,n.start):r.hasProgramDateTime&&i.hasProgramDateTime?Object(a.alignMediaPlaylistByPDT)(r,i):n&&Object(o.addSliding)(r,n.start)}s.details=r,this.levelLastLoaded=t,this.tick(),!r.live||this.fragCurrent||!this.media||this.state!==c.State.IDLE||Object(d.findFragmentByPTS)(null,r.fragments,this.media.currentTime,0)||(this.warn("Subtitle playlist not aligned with playback"),s.details=void 0)}}},r._handleFragmentLoadComplete=function(e){var r,i=e.frag,e=e.payload,t=i.decryptdata,n=this.hls;!this.fragContextChanged(i)&&e&&0this.getMaxBufferLength()+s||(console.assert(e,"Subtitle track details are defined on idle subtitle stream controller tick"),s=(n=e.fragments).length,o=e.edge,a=this.fragPrevious,r=o.length||(this.clearTimer(),r=o[e],this.log("Switching to subtitle track "+e),this.trackId=e,r?(o=r.id,i=r.groupId,n=r.name,s=r.type,a=r.url,this.hls.trigger(l.Events.SUBTITLE_TRACK_SWITCH,{id:o,groupId:void 0===i?"":i,name:n,type:s,url:a}),o=this.switchParams(r.url,null==t?void 0:t.details),this.loadPlaylist(o)):this.hls.trigger(l.Events.SUBTITLE_TRACK_SWITCH,{id:e}))):this.queuedDefaultTrack=e},n.onTextTracksChanged=function(){if(this.useTextTrackPolling||self.clearInterval(this.subtitlePollingInterval),this.media&&this.hls.config.renderTextTracksNatively){for(var e=-1,t=c(this.media.textTracks),r=0;r>>8^255&g^99,c[t[g]=h]),m=c[p],v=c[m],y=257*c[g]^16843008*g;i[h]=y<<24|y>>>8,n[h]=y<<16|y>>>16,s[h]=y<<8|y>>>24,a[h]=y,o[g]=(y=16843009*v^65537*m^257*p^16843008*h)<<24|y>>>8,l[g]=y<<16|y>>>16,d[g]=y<<8|y>>>24,u[g]=y,h?(h=p^c[c[c[v^p]]],f^=c[c[f]]):h=f=1}},t.expandKey=function(e){for(var t=this.uint8ArrayToUint32Array_(e),r=!0,i=0;i>>6),u=(60&t[r+2])>>>2;if(!(l.length-1>>6,c.logger.log("manifest codec:"+i+", ADTS type:"+d+", samplingIndex:"+u),t=/firefox/i.test(a)?6<=u?(d=5,s=new Array(4),u-3):(d=2,s=new Array(2),u):-1!==a.indexOf("android")?(d=2,s=new Array(2),u):(d=5,s=new Array(4),i&&(-1!==i.indexOf("mp4a.40.29")||-1!==i.indexOf("mp4a.40.5"))||!i&&6<=u?u-3:((i&&-1!==i.indexOf("mp4a.40.2")&&(6<=u&&1==n||/vivaldi/i.test(a))||!i&&1==n)&&(d=2,s=new Array(2)),u)),s[0]=d<<3,s[0]|=(14&u)>>1,s[1]|=(1&u)<<7,s[1]|=n<<3,5===d&&(s[1]|=(14&t)>>1,s[2]=(1&t)<<7,s[2]|=8,s[3]=0),{config:s,samplerate:l[u],channelCount:n,codec:"mp4a.40."+d,manifestCodec:o};e.trigger(f.Events.ERROR,{type:h.ErrorTypes.MEDIA_ERROR,details:h.ErrorDetails.FRAG_PARSING_ERROR,fatal:!0,reason:"invalid ADTS sampling index:"+u})}function i(e,t){return 255===e[t]&&240==(246&e[t+1])}function a(e,t){return 1&e[t+1]?7:9}function o(e,t){return(3&e[t+3])<<11|e[t+4]<<3|(224&e[t+5])>>>5}function n(e,t){return t+5=e.length)return!1;var i=o(e,t);if(i<=r)return!1;r=t+i;return r===e.length||l(e,r)}return!1}function A(e,t,r,i,n){e.samplerate||(t=s(t,r,i,n))&&(e.config=t.config,e.samplerate=t.samplerate,e.channelCount=t.channelCount,e.codec=t.codec,e.manifestCodec=t.manifestCodec,c.logger.log("parsed codec:"+e.codec+", rate:"+t.samplerate+", channels:"+t.channelCount))}function g(e){return 9216e4/e}function p(e,t,r,i,n){var s=a(e,t),e=o(e,t);if(0<(e-=s))return{headerLength:s,frameLength:e,stamp:r+i*n}}function m(e,t,r,i,n){var s,a,o,i=p(t,r,i,n,g(e.samplerate));if(i)return n=i.frameLength,a=i.headerLength,i=i.stamp,n=a+n,(o=Math.max(0,r+n-t.length))?(s=new Uint8Array(n-a)).set(t.subarray(r+a,t.length),0):s=t.subarray(r+a,r+n),t={unit:s,pts:i},o||e.samples.push(t),{sample:t,length:n,missing:o}}},"./src/demux/base-audio-demuxer.ts":function(e,t,r){r.r(t),r.d(t,"initPTSFn",function(){return g});var i=r("./src/polyfills/number.ts"),c=r("./src/demux/id3.ts"),h=r("./src/demux/dummy-demuxed-track.ts"),f=r("./src/utils/mp4-tools.ts"),A=r("./src/utils/typed-array.ts");(r=n.prototype).resetInitSegment=function(e,t,r){this._id3Track={type:"id3",id:3,pid:-1,inputTimeScale:9e4,sequenceNumber:0,samples:[],dropped:0}},r.resetTimeStamp=function(){},r.resetContiguity=function(){},r.canParse=function(e,t){return!1},r.appendFrame=function(e,t,r){},r.demux=function(e,t){this.cachedData&&(e=Object(f.appendUint8Array)(this.cachedData,e),this.cachedData=null);var r,i,n,s=c.getID3Data(e,0),a=s?s.length:0,o=this._audioTrack,l=this._id3Track,d=s?c.getTimeStamp(s):void 0,u=e.length;for(0!==this.frameIndex&&null!==this.initPTS||(this.initPTS=g(d,t)),s&&0e||(e=(e-=this.bitsAvailable)-((t=e>>3)>>3),this.bytesAvailable-=t,this.loadWord()),this.word<<=e,this.bitsAvailable-=e},r.readBits=function(e){var t=Math.min(this.bitsAvailable,e),r=this.word>>>32-t;return 32>>e))return this.word<<=e,this.bitsAvailable-=e,e;return this.loadWord(),e+this.skipLZ()},r.skipUEG=function(){this.skipBits(1+this.skipLZ())},r.skipEG=function(){this.skipBits(1+this.skipLZ())},r.readUEG=function(){var e=this.skipLZ();return this.readBits(e+1)-1},r.readEG=function(){var e=this.readUEG();return 1&e?1+e>>>1:-1*(e>>>1)},r.readBoolean=function(){return 1===this.readBits(1)},r.readUByte=function(){return this.readBits(8)},r.readUShort=function(){return this.readBits(16)},r.readUInt=function(){return this.readBits(32)},r.skipScalingList=function(e){for(var t=8,r=8,i=0;i>4){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:l+=String.fromCharCode(n);break;case 12:case 13:s=e[d++],l+=String.fromCharCode((31&n)<<6|63&s);break;case 14:s=e[d++],a=e[d++],l+=String.fromCharCode((15&n)<<12|(63&s)<<6|(63&a)<<0)}}return l},y={decodeTextFrame:g}},"./src/demux/mp3demuxer.ts":function(e,t,r){r.r(t);var i=r("./src/demux/base-audio-demuxer.ts"),n=r("./src/demux/id3.ts"),s=r("./src/utils/logger.ts"),a=r("./src/demux/mpegaudio.ts");function o(e,t){return(o=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}l=i.default,r=l,(i=d).prototype=Object.create(r.prototype),o(i.prototype.constructor=i,r),(i=d.prototype).resetInitSegment=function(e,t,r){l.prototype.resetInitSegment.call(this,e,t,r),this._audioTrack={container:"audio/mpeg",type:"audio",id:2,pid:-1,sequenceNumber:0,isAAC:!1,samples:[],manifestCodec:e,duration:r,inputTimeScale:9e4,dropped:0}},d.probe=function(e){if(!e)return!1;for(var t=(n.getID3Data(e,0)||[]).length,r=e.length;tt.length)){var s=a(t,r);if(s&&r+s.frameLength<=t.length)return i=i+n*(9e4*s.samplesPerFrame/s.sampleRate),n={unit:t.subarray(r,r+s.frameLength),pts:i,dts:i},e.config=[],e.channelCount=s.channelCount,e.samplerate=s.sampleRate,e.samples.push(n),{sample:n,length:s.frameLength,missing:0}}}function a(e,t){var r,i,n,s,a,o=e[t+1]>>3&3,l=e[t+1]>>1&3,d=e[t+2]>>4&15,u=e[t+2]>>2&3;if(1!=o&&0!=d&&15!=d&&3!=u)return a=e[t+2]>>1&1,r=e[t+3]>>6,d=1e3*h[14*(3==o?3-l:3==l?3:4)+d-1],u=f[3*(3==o?0:2==o?1:2)+u],i=3==r?1:2,s=8*(o=A[o][l])*(n=g[l]),o=Math.floor(o*d/u+a)*n,null===c&&(a=(navigator.userAgent||"").match(/Chrome\/(\d+)/i),c=a?parseInt(a[1]):0),c&&c<=87&&2==l&&224e3<=d&&0==r&&(e[t+3]=128|e[t+3]),{sampleRate:u,channelCount:i,frameLength:o,samplesPerFrame:s}}function n(e,t){return 255===e[t]&&224==(224&e[t+1])&&0!=(6&e[t+1])}function s(e,t){return t+1=e.length)return void r();if(!(e[t].unit.length<32)){var i=this.decrypter.isSync();if(this.decryptAacSample(e,t,r,i),!i)return}}},r.getAvcEncryptedData=function(e){for(var t=16*Math.floor((e.length-48)/160)+16,r=new Int8Array(t),i=0,n=32;n=e.length)return void i();for(var n=e[t].units;!(r>=n.length);r++){var s=n[r];if(!(s.data.length<=48||1!==s.type&&5!==s.type)){var a=this.decrypter.isSync();if(this.decryptAvcSample(e,t,r,i,s,a),!a)return}}}},t.default=n},"./src/demux/transmuxer-interface.ts":function(e,t,r){r.r(t),r.d(t,"default",function(){return i});var l=r("./node_modules/webworkify-webpack/index.js"),d=r("./src/events.ts"),T=r("./src/demux/transmuxer.ts"),S=r("./src/utils/logger.ts"),u=r("./src/errors.ts"),t=r("./src/utils/mediasource-helper.ts"),c=r("./node_modules/eventemitter3/index.js"),h=Object(t.getMediaSource)()||{isTypeSupported:function(){return!1}},i=((r=n.prototype).destroy=function(){var e=this.worker,e=(e?(e.removeEventListener("message",this.onwmsg),e.terminate(),this.worker=null):(e=this.transmuxer)&&(e.destroy(),this.transmuxer=null),this.observer);e&&e.removeAllListeners(),this.observer=null},r.push=function(e,t,r,i,n,s,a,o,l,d){var u=this,c=(l.transmuxing.start=self.performance.now(),this.transmuxer),h=this.worker,f=(s||n).start,A=n.decryptdata,g=this.frag,p=!(g&&n.cc===g.cc),m=!(g&&l.level===g.level),v=g?l.sn-g.sn:-1,y=this.part?l.part-this.part.index:1,b=!m&&(1==v||0==v&&1==y),E=self.performance.now(),E=((m||v||0===n.stats.parsing.start)&&(n.stats.parsing.start=E),!s||!y&&b||(s.stats.parsing.start=E),!(g&&(null==(v=n.initSegment)?void 0:v.url)===(null==(y=g.initSegment)?void 0:y.url))),v=new T.TransmuxState(p,b,o,m,f,E);b&&!p&&!E||(S.logger.log("[transmuxer-interface, "+n.type+"]: Starting new transmux session for sn: "+l.sn+" p: "+l.part+" level: "+l.level+" id: "+l.id+"\n discontinuity: "+p+"\n trackSwitch: "+m+"\n contiguous: "+b+"\n accurateTimeOffset: "+o+"\n timeOffset: "+f+"\n initSegmentChange: "+E),g=new T.TransmuxConfig(r,i,t,a,d),this.configureTransmuxer(g)),this.frag=n,this.part=s,h?h.postMessage({cmd:"demux",data:e,decryptdata:A,chunkMeta:l,state:v},e instanceof ArrayBuffer?[e]:[]):c&&(y=c.push(e,A,l,v),Object(T.isPromise)(y)?y.then(function(e){u.handleTransmuxComplete(e)}):this.handleTransmuxComplete(y))},r.flush=function(t){var r=this,e=(t.transmuxing.start=self.performance.now(),this.transmuxer),i=this.worker;i?i.postMessage({cmd:"flush",chunkMeta:t}):e&&(i=e.flush(t),Object(T.isPromise)(i)?i.then(function(e){r.handleFlushResult(e,t)}):this.handleFlushResult(i,t))},r.handleFlushResult=function(e,t){var r=this;e.forEach(function(e){r.handleTransmuxComplete(e)}),this.onFlush(t)},r.onWorkerMessage=function(e){var t=e.data,r=this.hls;switch(t.event){case"init":self.URL.revokeObjectURL(this.worker.objectURL);break;case"transmuxComplete":this.handleTransmuxComplete(t.data);break;case"flush":this.onFlush(t.data);break;default:t.data=t.data||{},t.data.frag=this.frag,t.data.id=this.id,r.trigger(t.event,t.data)}},r.configureTransmuxer=function(e){var t=this.worker,r=this.transmuxer;t?t.postMessage({cmd:"configure",config:e}):r&&r.configure(e)},r.handleTransmuxComplete=function(e){e.chunkMeta.transmuxing.end=self.performance.now(),this.onTransmuxComplete(e)},n);function n(r,e,t,i){function n(e,t){(t=t||{}).frag=a.frag,t.id=a.id,r.trigger(e,t)}var s,a=this,t=(this.hls=void 0,this.id=void 0,this.observer=void 0,this.frag=null,this.part=null,this.worker=void 0,this.onwmsg=void 0,this.transmuxer=null,this.onTransmuxComplete=void 0,this.onFlush=void 0,this.hls=r,this.id=e,this.onTransmuxComplete=t,this.onFlush=i,r.config),i=(this.observer=new c.EventEmitter,this.observer.on(d.Events.FRAG_DECRYPTED,n),this.observer.on(d.Events.ERROR,n),{mp4:h.isTypeSupported("video/mp4"),mpeg:h.isTypeSupported("audio/mpeg"),mp3:h.isTypeSupported('audio/mp4; codecs="mp3"')}),o=navigator.vendor;if(t.enableWorker&&"undefined"!=typeof Worker){S.logger.log("demuxing in webworker");try{s=this.worker=l("./src/demux/transmuxer-worker.ts"),this.onwmsg=this.onWorkerMessage.bind(this),s.addEventListener("message",this.onwmsg),s.onerror=function(e){r.trigger(d.Events.ERROR,{type:u.ErrorTypes.OTHER_ERROR,details:u.ErrorDetails.INTERNAL_EXCEPTION,fatal:!0,event:"demuxerWorker",error:new Error(e.message+" ("+e.filename+":"+e.lineno+")")})},s.postMessage({cmd:"init",typeSupported:i,vendor:o,id:e,config:JSON.stringify(t)})}catch(r){S.logger.warn("Error in worker:",r),S.logger.error("Error while initializing DemuxerWorker, fallback to inline"),s&&self.URL.revokeObjectURL(s.objectURL),this.transmuxer=new T.default(this.observer,i,t,o,e),this.worker=null}}else this.transmuxer=new T.default(this.observer,i,t,o,e)}},"./src/demux/transmuxer-worker.ts":function(e,t,r){r.r(t),r.d(t,"default",function(){return n});var o=r("./src/demux/transmuxer.ts"),i=r("./src/events.ts"),l=r("./src/utils/logger.ts"),d=r("./node_modules/eventemitter3/index.js");function n(n){function s(e,t){n.postMessage({event:e,data:t})}var a=new d.EventEmitter;a.on(i.Events.FRAG_DECRYPTED,s),a.on(i.Events.ERROR,s),n.addEventListener("message",function(e){var t=e.data;switch(t.cmd){case"init":var r=JSON.parse(t.config);n.transmuxer=new o.default(a,t.typeSupported,r,t.vendor,t.id),Object(l.enableLogs)(r.debug),s("init",null);break;case"configure":n.transmuxer.configure(t.config);break;case"demux":r=n.transmuxer.push(t.data,t.decryptdata,t.chunkMeta,t.state);Object(o.isPromise)(r)?r.then(function(e){u(n,e)}):u(n,r);break;case"flush":var i=t.chunkMeta,r=n.transmuxer.flush(i);Object(o.isPromise)(r)?r.then(function(e){c(n,e,i)}):c(n,r,i)}})}function u(e,t){var r,i,n;((r=t.remuxResult).audio||r.video||r.text||r.id3||r.initSegment)&&(r=[],i=(n=t.remuxResult).audio,n=n.video,i&&s(r,i),n&&s(r,n),e.postMessage({event:"transmuxComplete",data:t},r))}function s(e,t){t.data1&&e.push(t.data1.buffer),t.data2&&e.push(t.data2.buffer)}function c(t,e,r){e.forEach(function(e){u(t,e)}),t.postMessage({event:"flush",data:r})}},"./src/demux/transmuxer.ts":function(e,t,r){r.r(t),r.d(t,"default",function(){return c}),r.d(t,"isPromise",function(){return f}),r.d(t,"TransmuxConfig",function(){return A}),r.d(t,"TransmuxState",function(){return g});var v,l=r("./src/events.ts"),d=r("./src/errors.ts"),i=r("./src/crypt/decrypter.ts"),t=r("./src/demux/aacdemuxer.ts"),m=r("./src/demux/mp4demuxer.ts"),n=r("./src/demux/tsdemuxer.ts"),s=r("./src/demux/mp3demuxer.ts"),a=r("./src/remux/mp4-remuxer.ts"),y=r("./src/remux/passthrough-remuxer.ts"),o=r("./src/demux/chunk-cache.ts"),b=r("./src/utils/mp4-tools.ts"),E=r("./src/utils/logger.ts");try{v=self.performance.now.bind(self.performance)}catch(e){E.logger.debug("Unable to use Performance API on this environment"),v=self.Date.now}var T=[{demux:n.default,remux:a.default},{demux:m.default,remux:y.default},{demux:t.default,remux:a.default},{demux:s.default,remux:a.default}],u=1024,c=(T.forEach(function(e){e=e.demux;u=Math.max(u,e.minProbeByteLength)}),(r=h.prototype).configure=function(e){this.transmuxConfig=e,this.decrypter&&this.decrypter.reset()},r.push=function(e,t,r,i){var n=this,s=r.transmuxing,e=(s.executeStart=v(),new Uint8Array(e)),a=this.cache,o=this.config,l=this.currentTransmuxState,d=this.transmuxConfig,t=(i&&(this.currentTransmuxState=i),u=null,u=0>4){if((w=E+5+e[E+4])===E+188)continue}else w=E+4;switch(S){case l:T&&(d&&(n=F(d))&&this.parseAVCPES(n,!1),d={data:[],size:0}),d&&(d.data.push(e.subarray(w,E+188)),d.size+=E+188-w);break;case u:T&&(h&&(n=F(h))&&(a.isAAC?this.parseAACPES(n):this.parseMPEGPES(n)),h={data:[],size:0}),h&&(h.data.push(e.subarray(w,E+188)),h.size+=E+188-w);break;case c:T&&(f&&(n=F(f))&&this.parseID3PES(n),f={data:[],size:0}),f&&(f.data.push(e.subarray(w,E+188)),f.size+=E+188-w);break;case 0:T&&(w+=e[w]+1),p=this._pmtId=(31&(R=e)[(y=w)+10])<<8|R[y+11];break;case p:T&&(w+=e[w]+1);var R=function(e,t,r,i){var n={audio:-1,avc:-1,id3:-1,isAAC:!0},s=t+3+((15&e[t+1])<<8|e[t+2])-4;for(t+=12+((15&e[t+10])<<8|e[t+11]);te.size-6)return null;var l=t[7],d=(192&l&&(i=536870912*(14&t[9])+4194304*(255&t[10])+16384*(254&t[11])+128*(255&t[12])+(254&t[13])/2,64&l?54e5=e[r-1].pts)e.push(t);else for(var i=r-1;0<=i;i--)if(t.ptst)return i;return 0}},{key:"maxAutoLevel",get:function(){var e=this.levels,t=this.autoLevelCapping;return-1===t&&e&&e.length?e.length-1:t}},{key:"nextAutoLevel",get:function(){return Math.min(Math.max(this.abrController.nextAutoLevel,this.minAutoLevel),this.maxAutoLevel)},set:function(e){this.abrController.nextAutoLevel=Math.max(this.minAutoLevel,e)}},{key:"audioTracks",get:function(){var e=this.audioTrackController;return e?e.audioTracks:[]}},{key:"audioTrack",get:function(){var e=this.audioTrackController;return e?e.audioTrack:-1},set:function(e){var t=this.audioTrackController;t&&(t.audioTrack=e)}},{key:"subtitleTracks",get:function(){var e=this.subtitleTrackController;return e?e.subtitleTracks:[]}},{key:"subtitleTrack",get:function(){var e=this.subtitleTrackController;return e?e.subtitleTrack:-1},set:function(e){var t=this.subtitleTrackController;t&&(t.subtitleTrack=e)}},{key:"media",get:function(){return this._media}},{key:"subtitleDisplay",get:function(){var e=this.subtitleTrackController;return!!e&&e.subtitleDisplay},set:function(e){var t=this.subtitleTrackController;t&&(t.subtitleDisplay=e)}},{key:"lowLatencyMode",get:function(){return this.config.lowLatencyMode},set:function(e){this.config.lowLatencyMode=e}},{key:"liveSyncPosition",get:function(){return this.latencyController.liveSyncPosition}},{key:"latency",get:function(){return this.latencyController.latency}},{key:"maxLatency",get:function(){return this.latencyController.maxLatency}},{key:"targetLatency",get:function(){return this.latencyController.targetLatency}},{key:"drift",get:function(){return this.latencyController.drift}},{key:"forceStartLoad",get:function(){return this.streamController.forceStartLoad}}]),o(r,t);var l=E;function E(e){void 0===e&&(e={}),this.config=void 0,this.userConfig=void 0,this.coreComponents=void 0,this.networkControllers=void 0,this._emitter=new b.EventEmitter,this._autoLevelCapping=void 0,this.abrController=void 0,this.bufferController=void 0,this.capLevelController=void 0,this.latencyController=void 0,this.levelController=void 0,this.streamController=void 0,this.audioTrackController=void 0,this.subtitleTrackController=void 0,this.emeController=void 0,this.cmcdController=void 0,this._media=null,this.url=null;var t=this.config=Object(y.mergeConfig)(E.DefaultConfig,e),e=(this.userConfig=e,Object(v.enableLogs)(t.debug),this._autoLevelCapping=-1,t.progressive&&Object(y.enableStreamingMode)(t),t.abrController),r=t.bufferController,i=t.capLevelController,n=t.fpsController,e=this.abrController=new e(this),r=this.bufferController=new r(this),i=this.capLevelController=new i(this),n=new n(this),s=new c.default(this),a=new h.default(this),o=new f.default(this),l=this.levelController=new g.default(this),d=new p.FragmentTracker(this),u=this.streamController=new m.default(this,d),l=(i.setStreamController(u),n.setStreamController(u),[l,u]),u=(this.networkControllers=l,[s,a,e,r,i,n,o,d]);this.audioTrackController=this.createController(t.audioTrackController,null,l),this.createController(t.audioStreamController,d,l),this.subtitleTrackController=this.createController(t.subtitleTrackController,null,l),this.createController(t.subtitleStreamController,d,l),this.createController(t.timelineController,null,u),this.emeController=this.createController(t.emeController,null,u),this.cmcdController=this.createController(t.cmcdController,null,u),this.latencyController=this.createController(A.default,null,u),this.coreComponents=u}l.defaultConfig=void 0},"./src/is-supported.ts":function(e,t,r){r.r(t),r.d(t,"isSupported",function(){return s}),r.d(t,"changeTypeSupported",function(){return a});var i=r("./src/utils/mediasource-helper.ts");function n(){return self.SourceBuffer||self.WebKitSourceBuffer}function s(){var e=Object(i.getMediaSource)();if(!e)return!1;var t=n(),e=e&&"function"==typeof e.isTypeSupported&&e.isTypeSupported('video/mp4; codecs="avc1.42E01E,mp4a.40.2"'),t=!t||t.prototype&&"function"==typeof t.prototype.appendBuffer&&"function"==typeof t.prototype.remove;return!!e&&!!t}function a(){var e=n();return"function"==typeof(null==e||null==(e=e.prototype)?void 0:e.changeType)}},"./src/loader/fragment-loader.ts":function(e,t,r){r.r(t),r.d(t,"default",function(){return l}),r.d(t,"LoadError",function(){return g});var i=r("./src/polyfills/number.ts"),h=r("./src/errors.ts");function n(e){var r="function"==typeof Map?new Map:void 0;return(n=function(e){if(null===e||-1===Function.toString.call(e).indexOf("[native code]"))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==r){if(r.has(e))return r.get(e);r.set(e,t)}function t(){return s(e,arguments,o(this).constructor)}return t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),a(t,e)})(e)}function s(e,t,r){return(s=function(){if("undefined"==typeof Reflect||!Reflect.construct)return;if(Reflect.construct.sham)return;if("function"==typeof Proxy)return 1;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),1}catch(e){return}}()?Reflect.construct:function(e,t,r){var i=[null],t=(i.push.apply(i,t),new(Function.bind.apply(e,i)));return r&&a(t,r.prototype),t}).apply(null,arguments)}function a(e,t){return(a=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function o(e){return(o=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var f=Math.pow(2,17),l=((t=d.prototype).destroy=function(){this.loader&&(this.loader.destroy(),this.loader=null)},t.abort=function(){this.loader&&this.loader.abort()},t.load=function(a,o){var l=this,e=a.url;if(!e)return Promise.reject(new g({type:h.ErrorTypes.NETWORK_ERROR,details:h.ErrorDetails.FRAG_LOAD_ERROR,fatal:!1,frag:a,networkDetails:null},"Fragment does not have a "+(e?"part list":"url")));this.abort();var r=this.config,d=r.fLoader,u=r.loader;return new Promise(function(n,i){l.loader&&l.loader.destroy();var s=l.loader=a.loader=new(d||u)(r),e=A(a),t={timeout:r.fragLoadingTimeOut,maxRetry:0,retryDelay:0,maxRetryDelay:r.fragLoadingMaxRetryTimeout,highWaterMark:f};a.stats=s.stats,s.load(e,t,{onSuccess:function(e,t,r,i){l.resetLoader(a,s),n({frag:a,part:null,payload:e.data,networkDetails:i})},onError:function(e,t,r){l.resetLoader(a,s),i(new g({type:h.ErrorTypes.NETWORK_ERROR,details:h.ErrorDetails.FRAG_LOAD_ERROR,fatal:!1,frag:a,response:e,networkDetails:r}))},onAbort:function(e,t,r){l.resetLoader(a,s),i(new g({type:h.ErrorTypes.NETWORK_ERROR,details:h.ErrorDetails.INTERNAL_ABORTED,fatal:!1,frag:a,networkDetails:r}))},onTimeout:function(e,t,r){l.resetLoader(a,s),i(new g({type:h.ErrorTypes.NETWORK_ERROR,details:h.ErrorDetails.FRAG_LOAD_TIMEOUT,fatal:!1,frag:a,networkDetails:r}))},onProgress:function(e,t,r,i){o&&o({frag:a,part:null,payload:r,networkDetails:i})}})})},t.loadPart=function(a,o,l){var d=this,r=(this.abort(),this.config),u=r.fLoader,c=r.loader;return new Promise(function(n,i){d.loader&&d.loader.destroy();var s=d.loader=a.loader=new(u||c)(r),e=A(a,o),t={timeout:r.fragLoadingTimeOut,maxRetry:0,retryDelay:0,maxRetryDelay:r.fragLoadingMaxRetryTimeout,highWaterMark:f};o.stats=s.stats,s.load(e,t,{onSuccess:function(e,t,r,i){d.resetLoader(a,s),d.updateStatsFromPart(a,o);e={frag:a,part:o,payload:e.data,networkDetails:i};l(e),n(e)},onError:function(e,t,r){d.resetLoader(a,s),i(new g({type:h.ErrorTypes.NETWORK_ERROR,details:h.ErrorDetails.FRAG_LOAD_ERROR,fatal:!1,frag:a,part:o,response:e,networkDetails:r}))},onAbort:function(e,t,r){a.stats.aborted=o.stats.aborted,d.resetLoader(a,s),i(new g({type:h.ErrorTypes.NETWORK_ERROR,details:h.ErrorDetails.INTERNAL_ABORTED,fatal:!1,frag:a,part:o,networkDetails:r}))},onTimeout:function(e,t,r){d.resetLoader(a,s),i(new g({type:h.ErrorTypes.NETWORK_ERROR,details:h.ErrorDetails.FRAG_LOAD_TIMEOUT,fatal:!1,frag:a,part:o,networkDetails:r}))}})})},t.updateStatsFromPart=function(e,t){var r=e.stats,i=t.stats,n=i.total,e=(r.loaded+=i.loaded,n?(n=((e=Math.round(e.duration/t.duration))-(t=Math.min(Math.round(r.loaded/n),e)))*Math.round(r.loaded/t),r.total=r.loaded+n):r.total=Math.max(r.loaded,r.total),r.loading),t=i.loading;e.start?e.first+=t.first-t.start:(e.start=t.start,e.first=t.first),e.end=t.end},t.resetLoader=function(e,t){e.loader=null,this.loader===t&&(self.clearTimeout(this.partLoadTimeout),this.loader=null),t.destroy()},d);function d(e){this.config=void 0,this.loader=null,this.partLoadTimeout=-1,this.config=e}function A(e,t){var r=(t=void 0===t?null:t)||e,e={frag:e,part:t,responseType:"arraybuffer",url:r.url,headers:{},rangeStart:0,rangeEnd:0},t=r.byteRangeStartOffset,r=r.byteRangeEndOffset;return Object(i.isFiniteNumber)(t)&&Object(i.isFiniteNumber)(r)&&(e.rangeStart=t,e.rangeEnd=r),e}u=n(Error),r=u,(t=c).prototype=Object.create(r.prototype),a(t.prototype.constructor=t,r);var u,g=c;function c(e){for(var t,r=arguments.length,i=new Array(1>8*(15-r)&255;return t},r.setDecryptDataFromLevelKey=function(e,t){var r=e;return"AES-128"===(null==e?void 0:e.method)&&e.uri&&!e.iv&&((r=o.LevelKey.fromURI(e.uri)).method=e.method,r.iv=this.createInitializationVector(t),r.keyFormat="identity"),r},r.setElementaryStreamInfo=function(e,t,r,i,n,s){void 0===s&&(s=!1);var a=this.elementaryStreams,o=a[e];o?(o.startPTS=Math.min(o.startPTS,t),o.endPTS=Math.max(o.endPTS,r),o.startDTS=Math.min(o.startDTS,i),o.endDTS=Math.max(o.endDTS,n)):a[e]={startPTS:t,endPTS:r,startDTS:i,endDTS:n,partial:s}},r.clearElementaryStreamInfo=function(){var e=this.elementaryStreams;e[i.AUDIO]=null,e[i.VIDEO]=null,e[i.AUDIOVIDEO]=null},h(y,[{key:"decryptdata",get:function(){return this.levelkey||this._decryptdata?(!this._decryptdata&&this.levelkey&&("number"!=typeof(e=this.sn)&&(this.levelkey&&"AES-128"===this.levelkey.method&&!this.levelkey.iv&&a.logger.warn('missing IV for initialization segment with method="'+this.levelkey.method+'" - compliance issue'),e=0),this._decryptdata=this.setDecryptDataFromLevelKey(this.levelkey,e)),this._decryptdata):null;var e}},{key:"end",get:function(){return this.start+this.duration}},{key:"endProgramDateTime",get:function(){if(null===this.programDateTime)return null;if(!Object(n.isFiniteNumber)(this.programDateTime))return null;var e=Object(n.isFiniteNumber)(this.duration)?this.duration:0;return this.programDateTime+1e3*e}},{key:"encrypted",get:function(){var e;return!(null==(e=this.decryptdata)||!e.keyFormat||!this.decryptdata.uri)}}]),y),m=(d(v,f=g),h(v,[{key:"start",get:function(){return this.fragment.start+this.fragOffset}},{key:"end",get:function(){return this.start+this.duration}},{key:"loaded",get:function(){var e=this.elementaryStreams;return!!(e.audio||e.video||e.audiovideo)}}]),v);function v(e,t,r,i,n){(r=f.call(this,r)||this).fragOffset=0,r.duration=0,r.gap=!1,r.independent=!1,r.relurl=void 0,r.fragment=void 0,r.index=void 0,r.stats=new l.LoadStats,r.duration=e.decimalFloatingPoint("DURATION"),r.gap=e.bool("GAP"),r.independent=e.bool("INDEPENDENT"),r.relurl=e.enumeratedString("URI"),r.fragment=t,r.index=i;t=e.enumeratedString("BYTERANGE");return t&&r.setByteRange(t,n),n&&(r.fragOffset=n.fragOffset+n.duration),r}function y(e,t){return(t=A.call(this,t)||this)._decryptdata=null,t.rawProgramDateTime=null,t.programDateTime=null,t.tagList=[],t.duration=0,t.sn=0,t.levelkey=void 0,t.type=void 0,t.loader=null,t.level=-1,t.cc=0,t.startPTS=void 0,t.endPTS=void 0,t.appendedPTS=void 0,t.startDTS=void 0,t.endDTS=void 0,t.start=0,t.deltaPTS=void 0,t.maxStartPTS=void 0,t.minEndPTS=void 0,t.stats=new l.LoadStats,t.urlId=0,t.data=void 0,t.bitrateTest=!1,t.title=null,t.initSegment=null,t.type=e,t}function b(e){var t;this._byteRange=null,this._url=null,this.baseurl=void 0,this.relurl=void 0,this.elementaryStreams=((t={})[i.AUDIO]=null,t[i.VIDEO]=null,t[i.AUDIOVIDEO]=null,t),this.baseurl=e}},"./src/loader/key-loader.ts":function(e,t,r){r.r(t),r.d(t,"default",function(){return n});var a=r("./src/events.ts"),i=r("./src/errors.ts"),o=r("./src/utils/logger.ts"),n=((t=s.prototype)._registerListeners=function(){this.hls.on(a.Events.KEY_LOADING,this.onKeyLoading,this)},t._unregisterListeners=function(){this.hls.off(a.Events.KEY_LOADING,this.onKeyLoading)},t.destroy=function(){for(var e in this._unregisterListeners(),this.loaders){e=this.loaders[e];e&&e.destroy()}this.loaders={}},t.onKeyLoading=function(e,t){var r,i,t=t.frag,n=t.type,s=this.loaders[n];t.decryptdata?(r=t.decryptdata.uri)!==this.decrypturl||null===this.decryptkey?(i=this.hls.config,s&&(o.logger.warn("abort previous key loader for type:"+n),s.abort()),r?(s=i.loader,n=t.loader=this.loaders[n]=new s(i),this.decrypturl=r,this.decryptkey=null,s={url:r,frag:t,responseType:"arraybuffer"},r={timeout:i.fragLoadingTimeOut,maxRetry:0,retryDelay:i.fragLoadingRetryDelay,maxRetryDelay:i.fragLoadingMaxRetryTimeout,highWaterMark:0},i={onSuccess:this.loadsuccess.bind(this),onError:this.loaderror.bind(this),onTimeout:this.loadtimeout.bind(this)},n.load(s,r,i)):o.logger.warn("key uri is falsy")):this.decryptkey&&(t.decryptdata.key=this.decryptkey,this.hls.trigger(a.Events.KEY_LOADED,{frag:t})):o.logger.warn("Missing decryption data on fragment in onKeyLoading")},t.loadsuccess=function(e,t,r){r=r.frag;r.decryptdata?(this.decryptkey=r.decryptdata.key=new Uint8Array(e.data),r.loader=null,delete this.loaders[r.type],this.hls.trigger(a.Events.KEY_LOADED,{frag:r})):o.logger.error("after key load, decryptdata unset")},t.loaderror=function(e,t){var t=t.frag,r=t.loader;r&&r.abort(),delete this.loaders[t.type],this.hls.trigger(a.Events.ERROR,{type:i.ErrorTypes.NETWORK_ERROR,details:i.ErrorDetails.KEY_LOAD_ERROR,fatal:!1,frag:t,response:e})},t.loadtimeout=function(e,t){var t=t.frag,r=t.loader;r&&r.abort(),delete this.loaders[t.type],this.hls.trigger(a.Events.ERROR,{type:i.ErrorTypes.NETWORK_ERROR,details:i.ErrorDetails.KEY_LOAD_TIMEOUT,fatal:!1,frag:t})},s);function s(e){this.hls=void 0,this.loaders={},this.decryptkey=null,this.decrypturl=null,this.hls=e,this._registerListeners()}},"./src/loader/level-details.ts":function(e,t,r){r.r(t),r.d(t,"LevelDetails",function(){return s});var i=r("./src/polyfills/number.ts");function n(e,t){for(var r=0;re.endSN||0>24&255,o[1]=t>>16&255,o[2]=t>>8&255,o[3]=255&t,o.set(e,4),s=0,t=8;s>24&255,e>>16&255,e>>8&255,255&e,r>>24,r>>16&255,r>>8&255,255&r,t>>24,t>>16&255,t>>8&255,255&t,85,196,0,0]))},c.mdia=function(e){return c.box(c.types.mdia,c.mdhd(e.timescale,e.duration),c.hdlr(e.type),c.minf(e))},c.mfhd=function(e){return c.box(c.types.mfhd,new Uint8Array([0,0,0,0,e>>24,e>>16&255,e>>8&255,255&e]))},c.minf=function(e){return"audio"===e.type?c.box(c.types.minf,c.box(c.types.smhd,c.SMHD),c.DINF,c.stbl(e)):c.box(c.types.minf,c.box(c.types.vmhd,c.VMHD),c.DINF,c.stbl(e))},c.moof=function(e,t,r){return c.box(c.types.moof,c.mfhd(e),c.traf(r,t))},c.moov=function(e){for(var t=e.length,r=[];t--;)r[t]=c.trak(e[t]);return c.box.apply(null,[c.types.moov,c.mvhd(e[0].timescale,e[0].duration)].concat(r).concat(c.mvex(e)))},c.mvex=function(e){for(var t=e.length,r=[];t--;)r[t]=c.trex(e[t]);return c.box.apply(null,[c.types.mvex].concat(r))},c.mvhd=function(e,t){t*=e;var r=Math.floor(t/(1+s)),t=Math.floor(t%(1+s)),e=new Uint8Array([1,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,e>>24&255,e>>16&255,e>>8&255,255&e,r>>24,r>>16&255,r>>8&255,255&r,t>>24,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 c.box(c.types.mvhd,e)},c.sdtp=function(e){for(var t,r=e.samples||[],i=new Uint8Array(4+r.length),n=0;n>>8&255),i.push(255&r),i=i.concat(Array.prototype.slice.call(t));for(s=0;s>>8&255),n.push(255&r),n=n.concat(Array.prototype.slice.call(t));var a=c.box(c.types.avcC,new Uint8Array([1,i[3],i[4],i[5],255,224|e.sps.length].concat(i).concat([e.pps.length]).concat(n))),o=e.width,l=e.height,d=e.pixelRatio[0],u=e.pixelRatio[1];return c.box(c.types.avc1,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,o>>8&255,255&o,l>>8&255,255&l,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]),a,c.box(c.types.btrt,new Uint8Array([0,28,156,128,0,45,198,192,0,45,198,192])),c.box(c.types.pasp,new Uint8Array([d>>24,d>>16&255,d>>8&255,255&d,u>>24,u>>16&255,u>>8&255,255&u])))},c.esds=function(e){var t=e.config.length;return new Uint8Array([0,0,0,0,3,23+t,0,1,0,4,15+t,64,21,0,0,0,0,0,0,0,0,0,0,0,5].concat([t]).concat(e.config).concat([6,1,2]))},c.mp4a=function(e){var t=e.samplerate;return c.box(c.types.mp4a,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,e.channelCount,0,16,0,0,0,0,t>>8&255,255&t,0,0]),c.box(c.types.esds,c.esds(e)))},c.mp3=function(e){var t=e.samplerate;return c.box(c.types[".mp3"],new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,e.channelCount,0,16,0,0,0,0,t>>8&255,255&t,0,0]))},c.stsd=function(e){return"audio"===e.type?e.isAAC||"mp3"!==e.codec?c.box(c.types.stsd,c.STSD,c.mp4a(e)):c.box(c.types.stsd,c.STSD,c.mp3(e)):c.box(c.types.stsd,c.STSD,c.avc1(e))},c.tkhd=function(e){var t=e.id,r=e.duration*e.timescale,i=e.width,e=e.height,n=Math.floor(r/(1+s)),r=Math.floor(r%(1+s));return c.box(c.types.tkhd,new Uint8Array([1,0,0,7,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,t>>24&255,t>>16&255,t>>8&255,255&t,0,0,0,0,n>>24,n>>16&255,n>>8&255,255&n,r>>24,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,i>>8&255,255&i,0,0,e>>8&255,255&e,0,0]))},c.traf=function(e,t){var r=c.sdtp(e),i=e.id,n=Math.floor(t/(1+s)),t=Math.floor(t%(1+s));return c.box(c.types.traf,c.box(c.types.tfhd,new Uint8Array([0,0,0,0,i>>24,i>>16&255,i>>8&255,255&i])),c.box(c.types.tfdt,new Uint8Array([1,0,0,0,n>>24,n>>16&255,n>>8&255,255&n,t>>24,t>>16&255,t>>8&255,255&t])),c.trun(e,r.length+16+20+8+16+8+8),r)},c.trak=function(e){return e.duration=e.duration||4294967295,c.box(c.types.trak,c.tkhd(e),c.mdia(e))},c.trex=function(e){e=e.id;return c.box(c.types.trex,new Uint8Array([0,0,0,0,e>>24,e>>16&255,e>>8&255,255&e,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]))},c.trun=function(e,t){var r,i,n,s,a,o=e.samples||[],l=o.length,e=12+16*l,d=new Uint8Array(e);for(d.set([0,0,15,1,l>>>24&255,l>>>16&255,l>>>8&255,255&l,(t+=8+e)>>>24&255,t>>>16&255,t>>>8&255,255&t],0),r=0;r>>24&255,i>>>16&255,i>>>8&255,255&i,n>>>24&255,n>>>16&255,n>>>8&255,255&n,s.isLeading<<2|s.dependsOn,s.isDependedOn<<6|s.hasRedundancy<<4|s.paddingValue<<1|s.isNonSync,61440&s.degradPrio,15&s.degradPrio,a>>>24&255,a>>>16&255,a>>>8&255,255&a],12+16*r);return c.box(c.types.trun,d)},c.initSegment=function(e){c.types||c.init();var e=c.moov(e),t=new Uint8Array(c.FTYP.byteLength+e.byteLength);return t.set(c.FTYP),t.set(e,c.FTYP.byteLength),t},c);function c(){}r.types=void 0,r.HDLR_TYPES=void 0,r.STTS=void 0,r.STSC=void 0,r.STCO=void 0,r.STSZ=void 0,r.VMHD=void 0,r.SMHD=void 0,r.STSD=void 0,r.FTYP=void 0,r.DINF=void 0,t.default=r},"./src/remux/mp4-remuxer.ts":function(e,t,r){r.r(t),r.d(t,"default",function(){return i}),r.d(t,"normalizePts",function(){return Z});var h=r("./src/polyfills/number.ts"),M=r("./src/remux/aac-helper.ts"),W=r("./src/remux/mp4-generator.ts"),K=r("./src/events.ts"),Y=r("./src/errors.ts"),Q=r("./src/utils/logger.ts"),T=r("./src/types/loader.ts"),z=r("./src/utils/timescale-conversion.ts");function q(){return(q=Object.assign||function(e){for(var t=1;tm.pts&&(A=Math.max(Math.min(A,m.pts-m.dts),-18e3)),m.dtsNumber.MAX_SAFE_INTEGER?1/0:e},r.hexadecimalInteger=function(e){if(this[e]){for(var t=(1&(t=(this[e]||"0x").slice(2)).length?"0":"")+t,r=new Uint8Array(t.length/2),i=0;iNumber.MAX_SAFE_INTEGER?1/0:e},r.decimalFloatingPoint=function(e){return parseFloat(this[e])},r.optionalFloat=function(e,t){e=this[e];return e?parseFloat(e):t},r.enumeratedString=function(e){return this[e]},r.bool=function(e){return"YES"===this[e]},r.decimalResolution=function(e){e=i.exec(this[e]);if(null!==e)return{width:parseInt(e[1],10),height:parseInt(e[2],10)}},a.parseAttrList=function(e){var t,r={};for(n.lastIndex=0;null!==(t=n.exec(e));){var i=t[2];0===i.indexOf('"')&&i.lastIndexOf('"')===i.length-1&&(i=i.slice(1,-1)),r[t[1]]=i}return r},a);function a(e){for(var t in e="string"==typeof e?a.parseAttrList(e):e)e.hasOwnProperty(t)&&(this[t]=e[t])}},"./src/utils/binary-search.ts":function(e,t,r){r.r(t),t.default={search:function(e,t){for(var r,i,n=0,s=e.length-1;n<=s;){var a=t(i=e[r=(n+s)/2|0]);if(0=r.start(i)&&t<=r.end(i))return!0}catch(e){}return!1},a.bufferInfo=function(e,t,r){try{if(e){for(var i=a.getBuffered(e),n=[],s=0;ss&&(i[a-1].end=e[n].end):i.push(e[n])):i.push(e[n])}else i=e;for(var o,l=0,d=t,u=t,c=0;c=e&&i.logger.log(this.time+" ["+e+"] "+t)},k),p=((r=D.prototype).reset=function(){this.foreground="white",this.underline=!1,this.italics=!1,this.background="black",this.flash=!1},r.setStyles=function(e){for(var t=["foreground","underline","italics","background","flash"],r=0;ra&&(this.logger.log(d.DEBUG,"Too large cursor position "+this.pos),this.pos=a)},r.moveCursor=function(e){var t=this.pos+e;if(1=a?this.logger.log(d.ERROR,"Cannot insert "+e.toString(16)+" ("+t+") at position "+this.pos+". Skipping it!"):(this.chars[this.pos].setChar(t,this.currPenState),this.moveCursor(1))},r.clearFromPos=function(e){for(var t=e;t ("+l([a,o])+")"),!(r=(r=(r=(r=this.parseCmd(a,o))?r:this.parseMidrow(a,o))||this.parsePAC(a,o))||this.parseBackgroundAttributes(a,o))&&(i=this.parseChars(a,o))&&((s=this.currentChannel)&&0r.startCC||e&&e.cc=this.minWeight_},r.getEstimate=function(){return this.canEstimate()?Math.min(this.fast_.getEstimate(),this.slow_.getEstimate()):this.defaultEstimate_},r.destroy=function(){},t.default=i},"./src/utils/ewma.ts":function(e,t,r){function i(e,t,r){void 0===t&&(t=0),void 0===r&&(r=0),this.halfLife=void 0,this.alpha_=void 0,this.estimate_=void 0,this.totalWeight_=void 0,this.halfLife=e,this.alpha_=e?Math.exp(Math.log(.5)/e):0,this.estimate_=t,this.totalWeight_=r}r.r(t),(r=i.prototype).sample=function(e,t){var r=Math.pow(this.alpha_,e);this.estimate_=t*(1-r)+r*this.estimate_,this.totalWeight_+=e},r.getTotalWeight=function(){return this.totalWeight_},r.getEstimate=function(){if(this.alpha_){var e=1-Math.pow(this.alpha_,this.totalWeight_);if(e)return this.estimate_/e}return this.estimate_},t.default=i},"./src/utils/fetch-loader.ts":function(e,t,r){r.r(t),r.d(t,"fetchSupported",function(){return l});var c=r("./src/polyfills/number.ts"),i=r("./src/loader/load-stats.ts"),d=r("./src/demux/chunk-cache.ts");function n(e){var r="function"==typeof Map?new Map:void 0;return(n=function(e){if(null===e||-1===Function.toString.call(e).indexOf("[native code]"))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==r){if(r.has(e))return r.get(e);r.set(e,t)}function t(){return s(e,arguments,o(this).constructor)}return t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),a(t,e)})(e)}function s(e,t,r){return(s=function(){if("undefined"==typeof Reflect||!Reflect.construct)return;if(Reflect.construct.sham)return;if("function"==typeof Proxy)return 1;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),1}catch(e){return}}()?Reflect.construct:function(e,t,r){var i=[null],t=(i.push.apply(i,t),new(Function.bind.apply(e,i)));return r&&a(t,r.prototype),t}).apply(null,arguments)}function a(e,t){return(a=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function o(e){return(o=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function h(){return(h=Object.assign||function(e){for(var t=1;t=a&&o(n,s,l.flush(),i)):o(n,s,e,i),r()}).catch(function(){return Promise.reject()})}()};r=u;function u(e){this.fetchSetup=void 0,this.requestTimeout=void 0,this.request=void 0,this.response=void 0,this.controller=void 0,this.context=void 0,this.config=null,this.callbacks=null,this.stats=void 0,this.loader=null,this.fetchSetup=e.fetchSetup||f,this.controller=new self.AbortController,this.stats=new i.LoadStats}function f(e,t){return new self.Request(e.url,t)}A=n(Error),p=A,(g=v).prototype=Object.create(p.prototype),a(g.prototype.constructor=g,p);var A,g,p,m=v;function v(e,t,r){return(e=A.call(this,e)||this).code=void 0,e.details=void 0,e.code=t,e.details=r,e}t.default=r},"./src/utils/imsc1-ttml-parser.ts":function(e,t,r){r.r(t),r.d(t,"IMSC1_CODEC",function(){return i}),r.d(t,"parseIMSC1",function(){return n});var a=r("./src/utils/mp4-tools.ts"),o=r("./src/utils/vttparser.ts"),f=r("./src/utils/vttcue.ts"),l=r("./src/demux/id3.ts"),d=r("./src/utils/timescale-conversion.ts"),A=r("./src/utils/webvtt-parser.ts");function g(){return(g=Object.assign||function(e){for(var t=1;t"):n)})}(e,"debug","log","info","warn","error");try{s.log()}catch(e){s=i}}else s=i}var o=i},"./src/utils/mediakeys-helper.ts":function(e,t,r){r.r(t),r.d(t,"KeySystems",function(){return i}),r.d(t,"requestMediaKeySystemAccess",function(){return n}),(r=i=i||{}).WIDEVINE="com.widevine.alpha",r.PLAYREADY="com.microsoft.playready";var i,n="undefined"!=typeof self&&self.navigator&&self.navigator.requestMediaKeySystemAccess?self.navigator.requestMediaKeySystemAccess.bind(self.navigator):null},"./src/utils/mediasource-helper.ts":function(e,t,r){function i(){return self.MediaSource||self.WebKitMediaSource}r.r(t),r.d(t,"getMediaSource",function(){return i})},"./src/utils/mp4-tools.ts":function(e,t,r){r.r(t),r.d(t,"bin2str",function(){return u}),r.d(t,"readUint16",function(){return h}),r.d(t,"readUint32",function(){return m}),r.d(t,"writeUint32",function(){return a}),r.d(t,"findBox",function(){return v}),r.d(t,"parseSegmentIndex",function(){return y}),r.d(t,"parseInitSegment",function(){return n}),r.d(t,"getStartDTS",function(){return o}),r.d(t,"getDuration",function(){return l}),r.d(t,"computeRawDurationFromSamples",function(){return b}),r.d(t,"offsetStartDTS",function(){return c}),r.d(t,"segmentValidRange",function(){return f}),r.d(t,"appendUint8Array",function(){return A});var i=r("./src/utils/typed-array.ts"),p=r("./src/loader/fragment.ts"),s=Math.pow(2,32)-1,d=[].push;function u(e){return String.fromCharCode.apply(null,e)}function h(e,t){"data"in e&&(t+=e.start,e=e.data);e=e[t]<<8|e[t+1];return e<0?65536+e:e}function m(e,t){"data"in e&&(t+=e.start,e=e.data);e=e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3];return e<0?4294967296+e:e}function a(e,t,r){"data"in e&&(t+=e.start,e=e.data),e[t]=r>>24,e[t+1]=r>>16&255,e[t+2]=r>>8&255,e[t+3]=255&r}function v(e,t){var r,i,n=[];if(!t.length)return n;for(var s=("data"in e?(r=e.data,i=e.start,e.end):(i=0,(r=e).byteLength)),a=i;a>>31)return console.warn("SIDX has hierarchical references (not supported)"),null;u=m(i,d);d+=4,r.push({referenceSize:c,subsegmentDuration:u,info:{duration:u/s,start:a,end:a+c-1}}),a+=c,n=d+=4}return{earliestPresentationTime:0,timescale:s,version:e,referencesCount:o,references:r,moovEndOffset:t}}function n(e){for(var r=[],t=v(e,["moov","trak"]),i=0;ie)&&(this.startTime=e),this.endTime=t,this.screen=r,this.timelineController.createCaptionsTrack(this.trackName)},r.reset=function(){this.cueRanges=[],this.startTime=null};var i=n;function n(e,t){this.timelineController=void 0,this.cueRanges=[],this.trackName=void 0,this.startTime=null,this.endTime=null,this.screen=null,this.timelineController=e,this.trackName=t}},"./src/utils/texttrack-utils.ts":function(e,t,r){r.r(t),r.d(t,"sendAddTrackEvent",function(){return i}),r.d(t,"addCueToTrack",function(){return s}),r.d(t,"clearCurrentCues",function(){return a}),r.d(t,"removeCuesInRange",function(){return o}),r.d(t,"getCuesInRange",function(){return l});var n=r("./src/utils/logger.ts");function i(e,t){var r;try{r=new Event("addtrack")}catch(e){(r=document.createEvent("Event")).initEvent("addtrack",!1,!1)}r.track=e,t.dispatchEvent(r)}function s(e,t){var r=e.mode;if("disabled"===r&&(e.mode="hidden"),e.cues&&!e.cues.getCueById(t.id))try{if(e.addCue(t),!e.cues.getCueById(t.id))throw new Error("addCue is failed for: "+t)}catch(r){n.logger.debug("[texttrack-utils]: "+r);var i=new self.TextTrackCue(t.startTime,t.endTime,t.text);i.id=t.id,e.addCue(i)}"disabled"===r&&(e.mode=r)}function a(e){var t=e.mode;if("disabled"===t&&(e.mode="hidden"),e.cues)for(var r=e.cues.length;r--;)e.removeCue(e.cues[r]);"disabled"===t&&(e.mode=t)}function o(e,t,r){var i=e.mode;if("disabled"===i&&(e.mode="hidden"),e.cues&&0e[r].endTime)return-1;for(var i=0,n=r;i<=n;){var s=Math.floor((n+i)/2);if(te[s].startTime&&i=t&&o.endTime<=r)i.push(o);else if(o.startTime>r)return i}return i}},"./src/utils/time-ranges.ts":function(e,t,r){r.r(t),t.default={toString:function(e){for(var t="",r=e.length,i=0;i/gi,"\n")}(r=A.prototype).parse=function(e){var i=this;function t(){for(var e=0,t=f(t=i.buffer);e>>0).toString()};function w(e,t,r){return i(e.toString())+i(t.toString())+i(r)}function n(e,t,r,n,s,a,i,o){var l,d=new v.VTTParser,e=Object(y.utf8ArrayToStr)(new Uint8Array(e)).trim().replace(T,"\n").split("\n"),u=[],c=Object(b.toMpegTsClockFromTimescale)(t,r),h="00:00.000",f=0,A=0,g=!0,p=!1;d.oncue=function(e){var t=n[s],r=n.ccOffset,i=(f-c)/9e4,r=(null!=t&&t.new&&(void 0!==A?r=n.ccOffset=t.start:function(e,t){var r,i=e[s],n=e[i.prevCC];if(!n||!n.new&&i.new)return e.ccOffset=e.presentationOffset=i.start,i.new=!1;for(;null!=(r=n)&&r.new;)e.ccOffset+=i.start-n.start,i.new=!1,n=e[(i=n).prevCC];e.presentationOffset=t}(n,i)),i&&(r=i-n.presentationOffset),p&&(t=e.endTime-e.startTime,i=Object(E.normalizePts)(9e4*(e.startTime+r-A),9e4*a)/9e4,e.startTime=i,e.endTime=i+t),e.text.trim());e.text=decodeURIComponent(encodeURIComponent(r)),e.id||(e.id=w(e.startTime,e.endTime,r)),0=e.maxRetry||400<=t&&t<499?(o.logger.error(t+" while loading "+n.url),this.callbacks.onError({code:t,text:s.statusText},n,s)):(o.logger.warn(t+" while loading "+n.url+", retrying in "+this.retryDelay+"..."),this.abortInternal(),this.loader=null,self.clearTimeout(this.retryTimeout),this.retryTimeout=self.setTimeout(this.loadInternal.bind(this),this.retryDelay),this.retryDelay=Math.min(2*this.retryDelay,e.maxRetryDelay),a.retry++)):(self.clearTimeout(this.requestTimeout),this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),e.timeout))))},r.loadtimeout=function(){o.logger.warn("timeout while loading "+this.context.url);var e=this.callbacks;e&&(this.abortInternal(),e.onTimeout(this.stats,this.context,this.loader))},r.loadprogress=function(e){var t=this.stats;t.loaded=e.loaded,e.lengthComputable&&(t.total=e.total)},r.getCacheAge=function(){var e,t=null;return t=this.loader&&n.test(this.loader.getAllResponseHeaders())?(e=this.loader.getResponseHeader("age"))?parseFloat(e):null:t},t.default=s}},i={},n.m=r,n.c=i,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var i in t)n.d(r,i,function(e){return t[e]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="/dist/",n(n.s="./src/hls.ts").default;function n(e){if(i[e])return i[e].exports;var t=i[e]={i:e,l:!1,exports:{}};return r[e].call(t.exports,t,t.exports,n),t.l=!0,t.exports}var r,i}())}))&&m.__esModule&&Object.prototype.hasOwnProperty.call(m,"default")?m.default:m;class Be extends b{constructor(e){super(),(this.player=e)._opt,this.hls=new x({}),this._initHls(),this._bindEvents(),this.player.debug.log("HlsDecoder","init")}destroy(){this.hls.destroy(),this.hls=null,this.player.debug.log("HlsDecoder","destroy")}_initHls(){this.hls.attachMedia(this.player.video.$videoElement)}_bindEvents(){const t=this.player,e=this.player.events["proxy"],r=this.hls,i=t.video.$videoElement;this.hls.on(x.Events.ERROR,(e,t)=>{if(t.fatal)switch(t.type){case x.ErrorTypes.NETWORK_ERROR:console.log("fatal network error encountered, try to recover"),this.hls.startLoad();break;case x.ErrorTypes.MEDIA_ERROR:console.log("fatal media error encountered, try to recover"),this.hls.recoverMediaError()}}),e(i,"timeupdate",e=>{this.hls&&(e=parseInt(e.timeStamp,10),t.handleRender(),console.log("hls.liveSyncPosition",r.liveSyncPosition),t.updateStats({ts:e}),t.emit(u.kBps,(r.bandwidthEstimate/8/1024).toFixed(2)),t.emit(u.videoTimeUpdate,e))}),this.hls.on(x.Events.MEDIA_ATTACHING,()=>{console.log("MEDIA_ATTACHING")}),this.hls.on(x.Events.MEDIA_ATTACHED,()=>{console.log("MEDIA_ATTACHED")}),this.hls.on(x.Events.MEDIA_DETACHING,()=>{console.log("MEDIA_DETACHING")}),this.hls.on(x.Events.MEDIA_DETACHED,()=>{console.log("MEDIA_DETACHED")}),this.hls.on(x.Events.BUFFER_RESET,()=>{console.log("BUFFER_RESET")}),this.hls.on(x.Events.BUFFER_CODECS,()=>{console.log("BUFFER_CODECS")}),this.hls.on(x.Events.BUFFER_CREATED,()=>{console.log("BUFFER_CREATED")}),this.hls.on(x.Events.BUFFER_APPENDING,()=>{console.log("BUFFER_APPENDING")}),this.hls.on(x.Events.BUFFER_APPENDED,()=>{console.log("BUFFER_APPENDED")}),this.hls.on(x.Events.BUFFER_EOS,()=>{console.log("fired when the stream is finished and we want to notify the media buffer that there will be no more data")}),this.hls.on(x.Events.BUFFER_FLUSHING,()=>{console.log("fired when the media buffer should be flushed")}),this.hls.on(x.Events.BUFFER_FLUSHED,()=>{console.log("fired when the media buffer has been flushed")}),this.hls.on(x.Events.MANIFEST_LOADING,()=>{console.log("MANIFEST_LOADING 开始加载playlist m3u8资源")}),this.hls.on(x.Events.MANIFEST_LOADED,(e,t)=>{console.log("MANIFEST_LOADED playlist m3u8文件加载完成",t)}),this.hls.on(x.Events.MANIFEST_PARSED,()=>{console.log("MANIFEST_PARSED playlist m3u8解析完成"),t._times.demuxStart||(t._times.demuxStart=l())}),this.hls.on(x.Events.LEVEL_LOADING,()=>{console.log("LEVEL_LOADING 加载特定码率的m3u8文件")}),this.hls.on(x.Events.LEVEL_LOADED,(e,t)=>{console.log("LEVEL_LOADED 特定码率的m3u8文件解析完成,拿到该码率对应的ts列表")}),this.hls.on(x.Events.FRAG_LOADING,()=>{console.log("FRAG_LOADING 开始加载某个ts分片文件,开始根据ts片下载时间预估带宽")}),this.hls.on(x.Events.FRAG_LOADED,()=>{console.log("FRAG_LOADED ts分片文件加载成功,开始转码"),t._times.decodeStart||(t._times.decodeStart=l())}),this.hls.on(x.Events.BUFFER_APPENDING,()=>{console.log("BUFFER_APPENDING 视频流赋给video标签"),t._times.videoStart||(t._times.videoStart=l(),t.handlePlayToRenderTimes())}),this.hls.on(x.Events.FRAG_LOADED,()=>{console.log("FRAG_LOADED")}),this.hls.on(x.Events.FRAG_DECRYPTED,()=>{console.log(" fired when a fragment decryption is completed")}),this.hls.on(x.Events.KEY_LOADING,()=>{console.log(" fired when a decryption key loading starts")}),this.hls.on(x.Events.KEY_LOADING,()=>{console.log(" fired when a fragment decryption is completed")}),this.hls.on(x.Events.FPS_DROP,e=>{console.log("FPS_DROP",e)}),this.hls.on(x.Events.FPS_DROP_LEVEL_CAPPING,e=>{console.log("FPS_DROP_LEVEL_CAPPING",e)})}loadSource(r){return new Promise((e,t)=>{this.hls.on(x.Events.MEDIA_ATTACHED,()=>{this.hls.loadSource(r),e()})})}}class _e extends b{constructor(e){super(),this.player=e,this.rtcPeerConnection=null,this.videoStream=null,this._initRtcPeerConnection(),this.player.debug.log("WebrtcDecoder","init")}destroy(){this.rtcPeerConnection&&(this.rtcPeerConnection.close(),this.rtcPeerConnection=null),this.videoStream=null,this.player.video.$videoElement.srcObject=null,this.player.debug.log("WebrtcDecoder","destroy")}_initRtcPeerConnection(){const t=new RTCPeerConnection,r=this.player;t.addTransceiver("video",{direction:"recvonly"}),t.addTransceiver("audio",{direction:"recvonly"}),t.onsignalingstatechange=e=>{console.log("onsignalingstatechange",e)},t.oniceconnectionstatechange=e=>{console.log("oniceconnectionstatechange",t.iceConnectionState)},t.onicecandidate=e=>{console.log("onicecandidate",e)},t.ontrack=e=>{const t=r.video.$videoElement;console.log("ontrack",e),"video"===e.track.kind&&(e=e.streams[0],t.srcObject=e,this.videoStream=e)},t.onconnectionstatechange=e=>{r.debug.log("webrtcLoader","sdp connect status "+t.connectionState),t.connectionState},this.rtcPeerConnection=t}loadSource(n){return new Promise((t,r)=>{const i=this.rtcPeerConnection;i.createOffer().then(e=>{i.setLocalDescription(e),e=e.sdp,fetch(n,{method:"POST",mode:"cors",cache:"no-cache",credentials:"include",redirect:"follow",referrerPolicy:"no-referrer",headers:{"Content-Type":"application/sdp"},body:e}).then(e=>{e.text().then(e=>{this.player.debug.log("webrtcLoader","getWebRtcRemoteSdp response"),i.setRemoteDescription(new RTCSessionDescription({type:"answer",sdp:e})),t()}).catch(()=>{r()})}).catch(e=>{console.error(e),r(e)})}).catch(e=>{r(e)})})}}class Fe extends b{constructor(e,t){super(),this.$container=e,this._opt=Object.assign({},M,t),this.debug=new ee(this),this._opt.isHls||this._opt.isWebrtc||(this._opt.useWCS&&(this._opt.useWCS="VideoEncoder"in window),this._opt.useMSE&&(this._opt.useMSE=window.MediaSource&&window.MediaSource.isTypeSupported(Q))),this._opt.useMSE?(this._opt.useWCS&&this.debug.log("Player","useWCS set true->false"),this._opt.forceNoOffscreen||this.debug.log("Player","forceNoOffscreen set false->true"),this._opt.useWCS=!1,this._opt.forceNoOffscreen=!0):this._opt.useWCS,this._opt.forceNoOffscreen||("undefined"==typeof OffscreenCanvas?(this._opt.forceNoOffscreen=!0,this._opt.useOffscreen=!1):this._opt.useOffscreen=!0),this._opt.hasAudio||(this._opt.operateBtns.audio=!1),this._opt.hasControl=this._hasControl(),this._loading=!1,this._playing=!1,this._hasLoaded=!1,this._checkHeartTimeout=null,this._checkLoadingTimeout=null,this._startBpsTime=null,this._isPlayingBeforePageHidden=!1,this._stats={buf:0,fps:0,abps:0,vbps:0,ts:0},this._times={playInitStart:"",playStart:"",streamStart:"",streamResponse:"",demuxStart:"",decodeStart:"",videoStart:"",playTimestamp:"",streamTimestamp:"",streamResponseTimestamp:"",demuxTimestamp:"",decodeTimestamp:"",videoTimestamp:"",allTimestamp:""},this._videoTimestamp=0,this._audioTimestamp=0,r=this,Object.defineProperty(r,"rect",{get:()=>{const e=r.$container.getBoundingClientRect();return e.width=Math.max(e.width,r.$container.clientWidth),e.height=Math.max(e.height,r.$container.clientHeight),e}}),["bottom","height","left","right","top","width"].forEach(e=>{Object.defineProperty(r,e,{get:()=>r.rect[e]})}),this.events=new te(this),this.video=new ne(this),this._opt.hasAudio&&(this.audio=new oe(this)),this.recorder=new pe(this),this._opt.isHls?(this.hls=new Be(this),this.loaded=!0):this._opt.isWebrtc?(this.webrtc=new _e(this),this.loaded=!0):this._onlyMseOrWcsVideo()?this.loaded=!0:this.decoderWorker=new me(this),this.stream=null,this.demux=null,this._opt.useWCS&&(this.webcodecsDecoder=new we(this)),this._opt.useMSE&&(this.mseDecoder=new Le(this)),this.control=new De(this),this.keepScreenOn=new Oe(this);var r,i=this;try{const s=()=>{i.emit(c.fullscreen,i.fullscreen),i.fullscreen&&!i._opt.useMSE||i.resize()};y.on("change",s),i.events.destroys.push(()=>{y.off("change",s)})}catch(i){}if(i.on(u.decoderWorkerInit,()=>{i.debug.log("player","has loaded"),i.loaded=!0}),i.on(u.play,()=>{i.loading=!1}),i.on(u.fullscreen,e=>{if(e)try{y.request(i.$container).then(()=>{}).catch(e=>{i.webFullscreen=!0})}catch(e){i.webFullscreen=!0}else try{y.exit().then(()=>{}).catch(()=>{i.webFullscreen=!1})}catch(e){i.webFullscreen=!1}}),i.on(u.webFullscreen,e=>{e?i.$container.classList.add("jessibuca-fullscreen-web"):i.$container.classList.remove("jessibuca-fullscreen-web")}),i.on(u.resize,()=>{i.video.resize()}),i._opt.debug){const a=[u.timeUpdate];Object.keys(u).forEach(t=>{i.on(u[t],e=>{a.includes(t)||i.debug.log("player events",u[t],e)})}),Object.keys(h).forEach(t=>{i.on(h[t],e=>{i.debug.log("player event error",h[t],e)})})}{var n=this;const{_opt:o,debug:l,events:{proxy:d}}=n;o.supportDblclickFullscreen&&d(n.$container,"dblclick",()=>{n.fullscreen=!n.fullscreen}),d(document,"visibilitychange",()=>{o.hiddenAutoPause&&(l.log("visibilitychange",document.visibilityState,n._isPlayingBeforePageHidden),"visible"===document.visibilityState?n._isPlayingBeforePageHidden&&n.play():(n._isPlayingBeforePageHidden=n.playing,n.playing&&n.pause()))}),d(window,"fullscreenchange",()=>{null!==n.keepScreenOn&&"visible"===document.visibilityState&&n.enableWakeLock()})}this._opt.useWCS&&this.debug.log("Player","use WCS"),this._opt.useMSE&&this.debug.log("Player","use MSE"),this._opt.useOffscreen&&this.debug.log("Player","use offscreen"),this._opt.isHls&&this.debug.log("Player","use hls"),this._opt.isWebrtc&&this.debug.log("Player","use webrtc"),this.debug.log("Player options",this._opt)}destroy(){this._loading=!1,this._playing=!1,this._hasLoaded=!1,this._times={playInitStart:"",playStart:"",streamStart:"",streamResponse:"",demuxStart:"",decodeStart:"",videoStart:"",playTimestamp:"",streamTimestamp:"",streamResponseTimestamp:"",demuxTimestamp:"",decodeTimestamp:"",videoTimestamp:"",allTimestamp:""},this.decoderWorker&&(this.decoderWorker.destroy(),this.decoderWorker=null),this.video&&(this.video.destroy(),this.video=null),this.audio&&(this.audio.destroy(),this.audio=null),this.stream&&(this.stream.destroy(),this.stream=null),this.recorder&&(this.recorder.destroy(),this.recorder=null),this.control&&(this.control.destroy(),this.control=null),this.webcodecsDecoder&&(this.webcodecsDecoder.destroy(),this.webcodecsDecoder=null),this.mseDecoder&&(this.mseDecoder.destroy(),this.mseDecoder=null),this.demux&&(this.demux.destroy(),this.demux=null),this.hls&&(this.hls.destroy(),this.hls=null),this.events&&(this.events.destroy(),this.events=null),this.clearCheckHeartTimeout(),this.clearCheckLoadingTimeout(),this.releaseWakeLock(),this.keepScreenOn=null,this.resetStats(),this._audioTimestamp=0,this._videoTimestamp=0,this.emit("destroy"),this.off(),this.debug.log("play","destroy end")}set fullscreen(e){f()?(this.emit(u.webFullscreen,e),setTimeout(()=>{this.updateOption({rotate:e?270:0}),this.resize()},10)):this.emit(u.fullscreen,e)}get fullscreen(){return document.isFullScreen||document.mozIsFullScreen||document.webkitIsFullScreen||this.webFullscreen}set webFullscreen(e){this.emit(u.webFullscreen,e)}get webFullscreen(){return this.$container.classList.contains("jessibuca-fullscreen-web")}set loaded(e){this._hasLoaded=e}get loaded(){return this._hasLoaded||this._opt.isHls||this._opt.isWebrtc}set playing(e){e&&(this.loading=!1),this.playing!==e&&(this._playing=e,this.emit(u.playing,e),this.emit(u.volumechange,this.volume),e?this.emit(u.play):this.emit(u.pause))}get playing(){return this._playing}get volume(){return this.audio&&this.audio.volume||0}set volume(e){this.audio&&this.audio.setVolume(e)}set loading(e){this.loading!==e&&(this._loading=e,this.emit(u.loading,this._loading))}get loading(){return this._loading}set recording(e){e?this.playing&&this.recorder.startRecord():this.recorder.stopRecordAndSave()}get recording(){return this.recorder&&this.recorder.recording}set audioTimestamp(e){null!==e&&(this._audioTimestamp=e)}get audioTimestamp(){return this._audioTimestamp}set videoTimestamp(e){null!==e&&(this._videoTimestamp=e,this._opt.useWCS||this._opt.useMSE||this.audioTimestamp&&this.videoTimestamp&&this.audio&&this.audio.emit(u.videoSyncAudio,{audioTimestamp:this.audioTimestamp,videoTimestamp:this.videoTimestamp,diff:this.audioTimestamp-this.videoTimestamp}))}get videoTimestamp(){return this._videoTimestamp}updateOption(e){this._opt=Object.assign({},this._opt,e)}init(){return new Promise((e,t)=>{this.stream||(this.stream=new fe(this)),this._opt.isHls?(this.hls||(this.hls=new Be(this),this.loaded=!0),e()):this._opt.isWebrtc?(this.webrtc||(this.webrtc=new _e(this),this.loaded=!0),e()):(this.demux||(this.demux=new Se(this)),this._opt.useWCS&&!this.webcodecsDecoder&&(this.webcodecsDecoder=new we(this)),this._opt.useMSE&&!this.mseDecoder&&(this.mseDecoder=new Le(this)),this.decoderWorker||this._onlyMseOrWcsVideo()?e():(this.decoderWorker=new me(this),this.once(u.decoderWorkerInit,()=>{e()})))})}play(r){return new Promise((e,t)=>{if(!r&&!this._opt.url)return t();this.loading=!0,this.playing=!1,this._times.playInitStart=l(),r=r||this._opt.url,this._opt.url=r,this.clearCheckHeartTimeout(),this.init().then(()=>{this._times.playStart=l(),this._opt.isNotMute&&this.mute(!1),this.webcodecsDecoder&&this.webcodecsDecoder.once(h.webcodecsH265NotSupport,()=>{this.emit(h.webcodecsH265NotSupport),this._opt.autoWasm||this.emit(u.error,h.webcodecsH265NotSupport)}),this.mseDecoder&&this.mseDecoder.once(h.mediaSourceH265NotSupport,()=>{this.emit(h.mediaSourceH265NotSupport),this._opt.autoWasm||this.emit(u.error,h.mediaSourceH265NotSupport)}),this.enableWakeLock(),this.checkLoadingTimeout(),this.stream.once(h.fetchError,e=>{t(e)}),this.stream.once(h.websocketError,e=>{t(e)}),this.stream.once(h.hlsError,e=>{t(e)}),this.stream.once(u.streamSuccess,()=>{e(),this._times.streamResponse=l(),this.video.play()}),this.stream.fetchStream(r)}).catch(e=>{t(e)})})}close(){return new Promise((e,t)=>{this._close().then(()=>{this.video.clearView(),e()})})}_close(){return new Promise((e,t)=>{this.stream&&(this.stream.destroy(),this.stream=null),this.demux&&(this.demux.destroy(),this.demux=null),this.decoderWorker&&(this.decoderWorker.destroy(),this.decoderWorker=null),this.webcodecsDecoder&&(this.webcodecsDecoder.destroy(),this.webcodecsDecoder=null),this.mseDecoder&&(this.mseDecoder.destroy(),this.mseDecoder=null),this.hls&&(this.hls.destroy(),this.hls=null),this.webrtc&&(this.webrtc.destroy(),this.webrtc=null),this.clearCheckHeartTimeout(),this.clearCheckLoadingTimeout(),this.playing=!1,this.loading=!1,this.recording=!1,this.audio&&this.audio.pause(),this.video&&this.video.pause(),this.releaseWakeLock(),this.resetStats(),this._audioTimestamp=0,this._videoTimestamp=0,this._times={playInitStart:"",playStart:"",streamStart:"",streamResponse:"",demuxStart:"",decodeStart:"",videoStart:"",playTimestamp:"",streamTimestamp:"",streamResponseTimestamp:"",demuxTimestamp:"",decodeTimestamp:"",videoTimestamp:"",allTimestamp:""},setTimeout(()=>{e()},0)})}pause(e){return e?this.close():this._close()}mute(e){this.audio&&this.audio.mute(e)}resize(){this.video.resize()}startRecord(e,t){this.recording||(this.recorder.setFileName(e,t),this.recording=!0)}stopRecordAndSave(){this.recording&&(this.recording=!1)}_hasControl(){let e=!1,t=!1;return Object.keys(this._opt.operateBtns).forEach(e=>{this._opt.operateBtns[e]&&(t=!0)}),e=this._opt.showBandwidth||this._opt.text||t?!0:e}_onlyMseOrWcsVideo(){return!1===this._opt.hasAudio&&(this._opt.useMSE||this._opt.useWCS&&!this._opt.useOffscreen)}useWasmDecode(){return!1===this._opt.useMSE&&!1===this._opt.useWCS}canVideoTrackWritter(){var e=this._opt;return!e.isHls&&!e.isWebrtc&&(e.useWCS&&!e.useOffscreen&&e.wcsUseVideoRender||this.useWasmDecode())}checkHeart(){this.clearCheckHeartTimeout(),this.checkHeartTimeout()}checkHeartTimeout(){this._checkHeartTimeout=setTimeout(()=>{this.pause(!1).then(()=>{this.emit(u.timeout,u.delayTimeout),this.emit(u.delayTimeout)})},1e3*this._opt.heartTimeout)}clearCheckHeartTimeout(){this._checkHeartTimeout&&(clearTimeout(this._checkHeartTimeout),this._checkHeartTimeout=null)}checkLoadingTimeout(){this._checkLoadingTimeout=setTimeout(()=>{this.pause(!1).then(()=>{this.emit(u.timeout,u.loadingTimeout),this.emit(u.loadingTimeout)})},1e3*this._opt.loadingTimeout)}clearCheckLoadingTimeout(){this._checkLoadingTimeout&&(clearTimeout(this._checkLoadingTimeout),this._checkLoadingTimeout=null)}handleRender(){this.loading&&(this.emit(u.start),this.loading=!1,this.clearCheckLoadingTimeout()),this.playing||(this.playing=!0),this.checkHeart()}updateStats(e){e=e||{},this._startBpsTime||(this._startBpsTime=l()),o(e.ts)&&(this._stats.ts=e.ts),o(e.buf)&&(this._stats.buf=e.buf),e.fps&&(this._stats.fps+=1),e.abps&&(this._stats.abps+=e.abps),e.vbps&&(this._stats.vbps+=e.vbps);e=l();e-this._startBpsTime<1e3||(this.emit(u.stats,this._stats),this.emit(u.performance,function(e){let t=0;return 24<=e?t=2:15<=e&&(t=1),t}(this._stats.fps)),this._stats.fps=0,this._stats.abps=0,this._stats.vbps=0,this._startBpsTime=e)}resetStats(){this._startBpsTime=null,this._stats={buf:0,fps:0,abps:0,vbps:0,ts:0}}enableWakeLock(){this._opt.keepScreenOn&&this.keepScreenOn.enable()}releaseWakeLock(){this._opt.keepScreenOn&&this.keepScreenOn.disable()}handlePlayToRenderTimes(){const e=this._times;e.playTimestamp=e.playStart-e.playInitStart,e.streamTimestamp=e.streamStart-e.playStart,e.streamResponseTimestamp=e.streamResponse-e.streamStart,e.demuxTimestamp=e.demuxStart-e.streamResponse,e.decodeTimestamp=e.decodeStart-e.demuxStart,e.videoTimestamp=e.videoStart-e.decodeStart,e.allTimestamp=e.videoStart-e.playInitStart,this.emit(u.playToRenderTimes,e)}}class Pe extends b{constructor(e){super();let t=e,r=e.container;if(!(r="string"==typeof e.container?document.querySelector(e.container):r))throw new Error("Jessibuca need container option");r.classList.add("jessibuca-container"),delete t.container,o(t.videoBuffer)&&(t.videoBuffer=1e3*Number(t.videoBuffer)),o(t.timeout)&&(n(t.loadingTimeout)&&(t.loadingTimeout=t.timeout),n(t.heartTimeout)&&(t.heartTimeout=t.timeout)),this._opt=t,this.$container=r,this._loadingTimeoutReplayTimes=0,this._heartTimeoutReplayTimes=0,this.events=new te(this)}destroy(){this.events&&(this.events.destroy(),this.events=null),this.player&&(this.player.destroy(),this.player=null),this.$container=null,this._opt=null,this._loadingTimeoutReplayTimes=0,this._heartTimeoutReplayTimes=0,this.off()}_initPlayer(e,t){this.player=new Fe(e,t),this._bindEvents()}_resetPlayer(){var e=0{this.player.on(c[t],e=>{this.emit(t,e)})})}setDebug(e){this.player.updateOption({isDebug:!!e})}mute(){this.player.mute(!0)}cancelMute(){this.player.mute(!1)}setVolume(e){this.player.volume=e}audioResume(){this.player.audio&&this.player.audio.audioEnabled(!0)}setTimeout(e){e=Number(e),this.player.updateOption({timeout:e,loadingTimeout:e,heartTimeout:e})}setScaleMode(e){let t={isFullResize:!1,isResize:!1};switch(e=Number(e)){case 0:t.isFullResize=!1,t.isResize=!1;break;case 1:t.isFullResize=!1,t.isResize=!0;break;case 2:t.isFullResize=!0,t.isResize=!0}this.player.updateOption(t),this.resize()}pause(){return this.player.pause()}close(){return this._opt.url="",this.player.close()}clearView(){this.player.video.clearView()}play(r){return new Promise((e,t)=>{if(!r&&!this._opt.url)return this.emit(u.error,h.playError),void t();if(r){if(!this._opt.url)return this._play(r);r===this._opt.url?this.player.playing?e():(this.clearView(),this.player.play(this._opt.url).then(()=>{e()}).catch(()=>{this.player.pause().then(()=>{t()})})):this.player.pause().then(()=>(this.clearView(),this._play(r))).catch(()=>{t()})}else this.player.play(this._opt.url).then(()=>{e()}).catch(()=>{this.player.pause().then(()=>{t()})})})}_play(l){return new Promise((e,t)=>{var r=0===(this._opt.url=l).indexOf("http"),i=0===l.indexOf("webrtc"),n=0===l.indexOf("wt"),s=!i&&-1!==l.indexOf(".m3u8"),a=!i&&-1!==l.indexOf(".flv"),o=r?s?3:2:n?5:i?4:1,r=r&&!s||a||this._opt.isFlv?d:s?"hls":i?"webrtc":n?P:"m7s";if(!o||!r)return t(`play protocol is ${o}, demuxType is `+r);this._initPlayer(this.$container,Object.assign(this._opt,{protocol:o,demuxType:r,isHls:s,isWebrtc:i})),this.player.once(h.mediaSourceH265NotSupport,()=>{this.close().then(()=>{this.player._opt.autoWasm&&(this.player.debug.log("Jessibuca","auto wasm [mse-> wasm] reset player and play"),this._resetPlayer({useMSE:!1}),this.play(l).then(()=>{this.player.debug.log("Jessibuca","auto wasm [mse-> wasm] reset player and play success")}).catch(()=>{this.player.debug.log("Jessibuca","auto wasm [mse-> wasm] reset player and play error")}))})}),this.player.once(h.webcodecsH265NotSupport,()=>{this.close().then(()=>{this.player._opt.autoWasm&&(this.player.debug.log("Jessibuca","auto wasm [wcs-> wasm] reset player and play"),this._resetPlayer({useWCS:!1}),this.play(l).then(()=>{this.player.debug.log("Jessibuca","auto wasm [wcs-> wasm] reset player and play success")}).catch(()=>{this.player.debug.log("Jessibuca","auto wasm [wcs-> wasm] reset player and play error")}))})}),this.player.once(h.wasmDecodeError,()=>{this.player._opt.wasmDecodeErrorReplay&&this.close().then(()=>{this.player.debug.log("Jessibuca","wasm decode error and reset player and play"),this._resetPlayer({useWCS:!1}),this.play(l).then(()=>{this.player.debug.log("Jessibuca","wasm decode error and reset player and play success")}).catch(()=>{this.player.debug.log("Jessibuca","wasm decode error and reset player and play error")})})}),this.player.once(u.delayTimeout,()=>{this.player._opt.heartTimeoutReplay&&this._heartTimeoutReplayTimes{this._heartTimeoutReplayTimes=0}).catch(()=>{}))}),this.player.once(u.loadingTimeout,()=>{this.player._opt.loadingTimeoutReplay&&this._loadingTimeoutReplayTimes{this._loadingTimeoutReplayTimes=0}).catch(()=>{}))}),this.hasLoaded()?this.player.play(l).then(()=>{e()}).catch(()=>{this.player.pause().then(()=>{t()})}):this.player.once(u.decoderWorkerInit,()=>{this.player.play(l).then(()=>{e()}).catch(()=>{this.player.pause().then(()=>{t()})})})})}resize(){this.player.resize()}setBufferTime(e){e=Number(e),this.player.updateOption({videoBuffer:1e3*e}),this.player.decoderWorker&&this.player.decoderWorker.updateWorkConfig({key:"videoBuffer",value:1e3*e})}setRotate(e){e=parseInt(e,10),this._opt.rotate!==e&&-1!==[0,90,270].indexOf(e)&&(this.player.updateOption({rotate:e}),this.resize())}hasLoaded(){return this.player.loaded}setKeepScreenOn(){this.player.updateOption({keepScreenOn:!0})}setFullscreen(e){e=!!e;this.player.fullscreen!==e&&(this.player.fullscreen=e)}screenshot(e,t,r,i){return this.player.video.screenshot(e,t,r,i)}startRecord(r,i){return new Promise((e,t)=>{this.player.playing?(this.player.startRecord(r,i),e()):t()})}stopRecordAndSave(){this.player.recording&&this.player.stopRecordAndSave()}isPlaying(){return this.player.playing}isMute(){return!this.player.audio||this.player.audio.isMute}isRecording(){return this.player.recorder.recording}}var Me="http:"===window.location.protocol?"ws:":"wss:";let O=window.location.port;""!==O&&(O=":"+O);const B=window.location.hostname,Ue=window.location.pathname.replace("/preview/",""),F=function(){var e=window.location.search,t={};if(-1!=e.indexOf("?"))for(var r=e.substr(1).split("&"),i=0;i{t+=` - - `});Me=` + `),Object.defineProperty(i,"$poster",{value:r.$container.querySelector(".jessibuca-poster")}),Object.defineProperty(i,"$loading",{value:r.$container.querySelector(".jessibuca-loading")}),Object.defineProperty(i,"$play",{value:r.$container.querySelector(".jessibuca-play")}),Object.defineProperty(i,"$playBig",{value:r.$container.querySelector(".jessibuca-play-big")}),Object.defineProperty(i,"$pause",{value:r.$container.querySelector(".jessibuca-pause")}),Object.defineProperty(i,"$controls",{value:r.$container.querySelector(".jessibuca-controls")}),Object.defineProperty(i,"$fullscreen",{value:r.$container.querySelector(".jessibuca-fullscreen")}),Object.defineProperty(i,"$fullscreen",{value:r.$container.querySelector(".jessibuca-fullscreen")}),Object.defineProperty(i,"$volume",{value:r.$container.querySelector(".jessibuca-volume")}),Object.defineProperty(i,"$volumePanelWrap",{value:r.$container.querySelector(".jessibuca-volume-panel-wrap")}),Object.defineProperty(i,"$volumePanelText",{value:r.$container.querySelector(".jessibuca-volume-panel-text")}),Object.defineProperty(i,"$volumePanel",{value:r.$container.querySelector(".jessibuca-volume-panel")}),Object.defineProperty(i,"$volumeHandle",{value:r.$container.querySelector(".jessibuca-volume-panel-handle")}),Object.defineProperty(i,"$volumeOn",{value:r.$container.querySelector(".jessibuca-icon-audio")}),Object.defineProperty(i,"$volumeOff",{value:r.$container.querySelector(".jessibuca-icon-mute")}),Object.defineProperty(i,"$fullscreen",{value:r.$container.querySelector(".jessibuca-fullscreen")}),Object.defineProperty(i,"$fullscreenExit",{value:r.$container.querySelector(".jessibuca-fullscreen-exit")}),Object.defineProperty(i,"$record",{value:r.$container.querySelector(".jessibuca-record")}),Object.defineProperty(i,"$recordStop",{value:r.$container.querySelector(".jessibuca-record-stop")}),Object.defineProperty(i,"$screenshot",{value:r.$container.querySelector(".jessibuca-screenshot")}),Object.defineProperty(i,"$speed",{value:r.$container.querySelector(".jessibuca-speed")}),De(e,this),t=this,Object.defineProperty(t,"controlsRect",{get:()=>t.$controls.getBoundingClientRect()});{var a=e,o=this;const h=a["events"]["proxy"];function l(e){var{bottom:t,height:r}=o.$volumePanel.getBoundingClientRect(),i=o.$volumeHandle.getBoundingClientRect()["height"];return g(t-e.y-i/2,0,r-i/2)/(r-i)}h(window,["click","contextmenu"],e=>{-1{setTimeout(()=>{a.resize()},300)}),h(o.$controls,"click",e=>{e.stopPropagation()}),h(o.$pause,"click",e=>{a.pause()}),h(o.$play,"click",e=>{a.play()}),h(o.$playBig,"click",e=>{a.play()}),h(o.$volume,"mouseover",()=>{o.$volumePanelWrap.classList.add("jessibuca-volume-panel-wrap-show")}),h(o.$volume,"mouseout",()=>{o.$volumePanelWrap.classList.remove("jessibuca-volume-panel-wrap-show")}),h(o.$volumeOn,"click",e=>{e.stopPropagation(),p(o.$volumeOn,"display","none"),p(o.$volumeOff,"display","block"),a.lastVolume=a.volume,a.volume=0}),h(o.$volumeOff,"click",e=>{e.stopPropagation(),p(o.$volumeOn,"display","block"),p(o.$volumeOff,"display","none"),a.volume=a.lastVolume||.5}),h(o.$screenshot,"click",e=>{e.stopPropagation(),a.video.screenshot()}),h(o.$volumePanel,"click",e=>{e.stopPropagation(),a.volume=l(e)}),h(o.$volumeHandle,"mousedown",()=>{o.isVolumeDroging=!0}),h(o.$volumeHandle,"mousemove",e=>{o.isVolumeDroging&&(a.volume=l(e))}),h(document,"mouseup",()=>{o.isVolumeDroging&&(o.isVolumeDroging=!1)}),h(o.$record,"click",e=>{e.stopPropagation(),a.recording=!0}),h(o.$recordStop,"click",e=>{e.stopPropagation(),a.recording=!1}),h(o.$fullscreen,"click",e=>{e.stopPropagation(),a.fullscreen=!0}),h(o.$fullscreenExit,"click",e=>{e.stopPropagation(),a.fullscreen=!1}),a._opt.hasControl&&a._opt.controlAutoHide&&(h(a.$container,"mouseover",()=>{a.fullscreen||p(o.$controls,"display","block")}),h(a.$container,"mouseout",()=>{p(o.$controls,"display","none")}))}if(e._opt.hotKey){var d=e,u=this;const f=d["events"]["proxy"],A={};function c(e,t){A[e]?A[e].push(t):A[e]=[t]}c(27,()=>{d.fullscreen&&(d.fullscreen=!1)}),c(38,()=>{d.volume+=.05}),c(40,()=>{d.volume-=.05}),f(window,"keydown",e=>{if(u.isFocus){const u=document.activeElement.tagName.toUpperCase(),t=document.activeElement.getAttribute("contenteditable");if("INPUT"!==u&&"TEXTAREA"!==u&&""!==t&&"true"!==t){const u=A[e.keyCode];u&&(e.preventDefault(),u.forEach(e=>e()))}}})}this.player.debug.log("Control","init")}destroy(){this.$poster&&this.player.$container.removeChild(this.$poster),this.$loading&&this.player.$container.removeChild(this.$loading),this.$controls&&this.player.$container.removeChild(this.$controls),this.$playBig&&this.player.$container.removeChild(this.$playBig),this.player.debug.log("control","destroy")}autoSize(){const e=this.player,t=(e.$container.style.padding="0 0",e.width),r=e.height,i=t/r,n=e.video.$videoElement.width/e.video.$videoElement.height;if(i>n){const i=(t-r*n)/2;e.$container.style.padding=`0 ${i}px`}else{const i=(r-t/n)/2;e.$container.style.padding=i+"px 0"}}}A(".jessibuca-container{position:relative;width:100%;height:100%;overflow:hidden}.jessibuca-container.jessibuca-fullscreen-web{position:fixed;z-index:9999;left:0;top:0;right:0;bottom:0;width:100vw!important;height:100vh!important;background:#000}");class C{static init(){for(var e in C.types={avc1:[],avcC:[],hvc1:[],hvcC:[],btrt:[],dinf:[],dref:[],esds:[],ftyp:[],hdlr:[],mdat:[],mdhd:[],mdia:[],mfhd:[],minf:[],moof:[],moov:[],mp4a:[],mvex:[],mvhd:[],sdtp:[],stbl:[],stco:[],stsc:[],stsd:[],stsz:[],stts:[],tfdt:[],tfhd:[],traf:[],trak:[],trun:[],trex:[],tkhd:[],vmhd:[],smhd:[]},C.types)C.types.hasOwnProperty(e)&&(C.types[e]=[e.charCodeAt(0),e.charCodeAt(1),e.charCodeAt(2),e.charCodeAt(3)]);let t=C.constants={};t.FTYP=new Uint8Array([105,115,111,109,0,0,0,1,105,115,111,109,97,118,99,49]),t.STSD_PREFIX=new Uint8Array([0,0,0,0,0,0,0,1]),t.STTS=new Uint8Array([0,0,0,0,0,0,0,0]),t.STSC=t.STCO=t.STTS,t.STSZ=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]),t.HDLR_VIDEO=new Uint8Array([0,0,0,0,0,0,0,0,118,105,100,101,0,0,0,0,0,0,0,0,0,0,0,0,86,105,100,101,111,72,97,110,100,108,101,114,0]),t.HDLR_AUDIO=new Uint8Array([0,0,0,0,0,0,0,0,115,111,117,110,0,0,0,0,0,0,0,0,0,0,0,0,83,111,117,110,100,72,97,110,100,108,101,114,0]),t.DREF=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1]),t.SMHD=new Uint8Array([0,0,0,0,0,0,0,0]),t.VMHD=new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0])}static box(e){let t=8,r=null,i=Array.prototype.slice.call(arguments,1),n=i.length;for(let e=0;e>>24&255,r[1]=t>>>16&255,r[2]=t>>>8&255,r[3]=255&t,r.set(e,4);let s=8;for(let e=0;e>>24&255,e>>>16&255,e>>>8&255,255&e,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]))}static trak(e){return C.box(C.types.trak,C.tkhd(e),C.mdia(e))}static tkhd(e){var t=e.id,r=e.duration,i=e.presentWidth,e=e.presentHeight;return C.box(C.types.tkhd,new Uint8Array([0,0,0,7,0,0,0,0,0,0,0,0,t>>>24&255,t>>>16&255,t>>>8&255,255&t,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,i>>>8&255,255&i,0,0,e>>>8&255,255&e,0,0]))}static mdia(e){return C.box(C.types.mdia,C.mdhd(e),C.hdlr(e),C.minf(e))}static mdhd(e){var t=e.timescale,e=e.duration;return C.box(C.types.mdhd,new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,t>>>24&255,t>>>16&255,t>>>8&255,255&t,e>>>24&255,e>>>16&255,e>>>8&255,255&e,85,196,0,0]))}static hdlr(e){e="audio"===e.type?C.constants.HDLR_AUDIO:C.constants.HDLR_VIDEO;return C.box(C.types.hdlr,e)}static minf(e){var t="audio"===e.type?C.box(C.types.smhd,C.constants.SMHD):C.box(C.types.vmhd,C.constants.VMHD);return C.box(C.types.minf,t,C.dinf(),C.stbl(e))}static dinf(){return C.box(C.types.dinf,C.box(C.types.dref,C.constants.DREF))}static stbl(e){return C.box(C.types.stbl,C.stsd(e),C.box(C.types.stts,C.constants.STTS),C.box(C.types.stsc,C.constants.STSC),C.box(C.types.stsz,C.constants.STSZ),C.box(C.types.stco,C.constants.STCO))}static stsd(e){return"audio"===e.type?C.box(C.types.stsd,C.constants.STSD_PREFIX,C.mp4a(e)):"avc"===e.videoType?C.box(C.types.stsd,C.constants.STSD_PREFIX,C.avc1(e)):C.box(C.types.stsd,C.constants.STSD_PREFIX,C.hvc1(e))}static mp4a(e){var t=e.channelCount,r=e.audioSampleRate,t=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,t,0,16,0,0,0,0,r>>>8&255,255&r,0,0]);return C.box(C.types.mp4a,t,C.esds(e))}static esds(e){var e=e.config||[],t=e.length,t=new Uint8Array([0,0,0,0,3,23+t,0,1,0,4,15+t,64,21,0,0,0,0,0,0,0,0,0,0,0,5].concat([t]).concat(e).concat([6,1,2]));return C.box(C.types.esds,t)}static avc1(e){var t=e.avcc,r=e.codecWidth,e=e.codecHeight,r=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,e>>>8&255,255&e,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,255,255]);return C.box(C.types.avc1,r,C.box(C.types.avcC,t))}static hvc1(e){var t=e.avcc,r=e.codecWidth,e=e.codecHeight,r=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,e>>>8&255,255&e,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,255,255]);return C.box(C.types.hvc1,r,C.box(C.types.hvcC,t))}static mvex(e){return C.box(C.types.mvex,C.trex(e))}static trex(e){e=e.id,e=new Uint8Array([0,0,0,0,e>>>24&255,e>>>16&255,e>>>8&255,255&e,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]);return C.box(C.types.trex,e)}static moof(e,t){return C.box(C.types.moof,C.mfhd(e.sequenceNumber),C.traf(e,t))}static mfhd(e){e=new Uint8Array([0,0,0,0,e>>>24&255,e>>>16&255,e>>>8&255,255&e]);return C.box(C.types.mfhd,e)}static traf(e,t){var r=e.id,r=C.box(C.types.tfhd,new Uint8Array([0,0,0,0,r>>>24&255,r>>>16&255,r>>>8&255,255&r])),t=C.box(C.types.tfdt,new Uint8Array([0,0,0,0,t>>>24&255,t>>>16&255,t>>>8&255,255&t])),i=C.sdtp(e),e=C.trun(e,i.byteLength+16+16+8+16+8+8);return C.box(C.types.traf,r,t,e,i)}static sdtp(e){let t=new Uint8Array(5),r=e.flags;return t[4]=r.isLeading<<6|r.dependsOn<<4|r.isDependedOn<<2|r.hasRedundancy,C.box(C.types.sdtp,t)}static trun(e,t){let r=new Uint8Array(28);t+=36,r.set([0,0,15,1,0,0,0,1,t>>>24&255,t>>>16&255,t>>>8&255,255&t],0);var t=e.duration,i=e.size,n=e.flags,e=e.cts;return r.set([t>>>24&255,t>>>16&255,t>>>8&255,255&t,i>>>24&255,i>>>16&255,i>>>8&255,255&i,n.isLeading<<2|n.dependsOn,n.isDependedOn<<6|n.hasRedundancy<<4|n.isNonSync,0,0,e>>>24&255,e>>>16&255,e>>>8&255,255&e],12),C.box(C.types.trun,r)}static mdat(e){return C.box(C.types.mdat,e)}}C.init();class Ce{constructor(e){this.TAG="ExpGolomb",this._buffer=e,this._buffer_index=0,this._total_bytes=e.byteLength,this._total_bits=8*e.byteLength,this._current_word=0,this._current_word_bits_left=0}destroy(){this._buffer=null}_fillCurrentWord(){let e=this._total_bytes-this._buffer_index,t=Math.min(4,e),r=new Uint8Array(4);r.set(this._buffer.subarray(this._buffer_index,this._buffer_index+t)),this._current_word=new DataView(r.buffer).getUint32(0,!1),this._buffer_index+=t,this._current_word_bits_left=8*t}readBits(e){if(e<=this._current_word_bits_left)return t=this._current_word>>>32-e,this._current_word<<=e,this._current_word_bits_left-=e,t;var t=this._current_word_bits_left?this._current_word:0,e=(t>>>=32-this._current_word_bits_left,e-this._current_word_bits_left),e=(this._fillCurrentWord(),Math.min(e,this._current_word_bits_left)),r=this._current_word>>>32-e;return this._current_word<<=e,this._current_word_bits_left-=e,t<>>e))return this._current_word<<=e,this._current_word_bits_left-=e,e;return this._fillCurrentWord(),e+this._skipLeadingZero()}readUEG(){var e=this._skipLeadingZero();return this.readBits(e+1)-1}readSEG(){var e=this.readUEG();return 1&e?e+1>>>1:-1*(e>>>1)}}class L{static _ebsp2rbsp(e){let t=e,r=t.byteLength,i=new Uint8Array(r),n=0;for(let e=0;e{this.mediaSourceOpen=!0,this.player.emit(u.mseSourceOpen)}),t(this.mediaSource,"sourceclose",()=>{this.player.emit(u.mseSourceClose)}),e.debug.log("MediaSource","init")}destroy(){this.stop(),this.bufferList=[],this.mediaSource=null,this.mediaSourceOpen=!1,this.sourceBuffer=null,this.hasInit=!1,this.isInitInfo=!1,this.sequenceNumber=0,this.cacheTrack=null,this.timeInit=!1,this.off(),this.player.debug.log("MediaSource","destroy")}get state(){return this.mediaSource.readyState}get isStateOpen(){return"open"===this.state}get isStateClosed(){return"closed"===this.state}get isStateEnded(){return"ended"===this.state}get duration(){return this.mediaSource.duration}set duration(e){this.mediaSource.duration=e}decodeVideo(e,t,r){const i=this.player;var n;this.hasInit?this._decodeVideo(e,t,r):r&&0===e[1]&&(n=15&e[0],i.video.updateVideoInfo({encTypeCode:n}),12==n?this.emit(h.mediaSourceH265NotSupport):(i._times.decodeStart||(i._times.decodeStart=l()),this._decodeConfigurationRecord(e,t,r,n),this.hasInit=!0))}_doDecode(){var e=this.bufferList.shift();e&&this._decodeVideo(e.payload,e.ts,e.isIframe)}_decodeConfigurationRecord(e,t,r,i){let n=e.slice(5),s={};7===i?s=function(i){const n={},s=new DataView(i.buffer);var e=s.getUint8(0),t=s.getUint8(1);if(s.getUint8(2),s.getUint8(3),1===e&&0!==t){e=1+(3&s.getUint8(4));if(3==e||4==e){var a=31&s.getUint8(5);if(0!=a){let r=6;for(let t=0;tthis.cacheTrack.dts){let e=8+this.cacheTrack.size,t=new Uint8Array(e),r=(t[0]=e>>>24&255,t[1]=e>>>16&255,t[2]=e>>>8&255,t[3]=255&e,t.set(C.types.mdat,4),t.set(this.cacheTrack.data,8),this.cacheTrack.duration=a-this.cacheTrack.dts,C.moof(this.cacheTrack,this.cacheTrack.dts)),i=new Uint8Array(r.byteLength+t.byteLength);i.set(r,0),i.set(t,r.byteLength),this.appendBuffer(i.buffer),s.handleRender(),s.updateStats({fps:!0,ts:n,buf:s.demux.delay}),s._times.videoStart||(s._times.videoStart=l(),s.handlePlayToRenderTimes())}else s.debug.log("MediaSource","timeInit set false , cacheTrack = {}"),this.timeInit=!1,this.cacheTrack={};this.cacheTrack.id=1,this.cacheTrack.sequenceNumber=++this.sequenceNumber,this.cacheTrack.size=r,this.cacheTrack.dts=a,this.cacheTrack.cts=0,this.cacheTrack.isKeyframe=t,this.cacheTrack.data=e,this.cacheTrack.flags={isLeading:0,dependsOn:t?2:1,isDependedOn:t?1:0,hasRedundancy:0,isNonSync:t?0:1},this.timeInit||1!==i.buffered.length||(s.debug.log("MediaSource","timeInit set true"),this.timeInit=!0,i.currentTime=i.buffered.end(0)),!this.isInitInfo&&0{this.player.emit(u.mseSourceBufferError,e)})),!1===this.sourceBuffer.updating&&this.isStateOpen?this.sourceBuffer.appendBuffer(e):this.isStateClosed?this.player.emit(u.mseSourceBufferError,"mediaSource is not attached to video or mediaSource is closed"):this.isStateEnded?this.player.emit(u.mseSourceBufferError,"mediaSource is closed"):!0===this.sourceBuffer.updating&&this.player.emit(u.mseSourceBufferBusy)}stop(){this.isStateOpen&&this.sourceBuffer&&this.sourceBuffer.abort(),this.endOfStream()}dropSourceBuffer(e){const t=this.player.video.$videoElement;this.dropping=e,0"undefined"!=typeof navigator&&parseFloat((""+(/CPU.*OS ([0-9_]{3,4})[0-9_]{0,1}|(CPU like).*AppleWebKit.*Mobile/i.exec(navigator.userAgent)||[0,""])[1]).replace("undefined","3_2").replace("_",".").replace("_",""))<10&&!window.MSStream,Oe=()=>"wakeLock"in navigator;class Be{constructor(e){if(this.player=e,this.enabled=!1,Oe()){this._wakeLock=null;const e=()=>{null!==this._wakeLock&&"visible"===document.visibilityState&&this.enable()};document.addEventListener("visibilitychange",e),document.addEventListener("fullscreenchange",e)}else xe()?this.noSleepTimer=null:(this.noSleepVideo=document.createElement("video"),this.noSleepVideo.setAttribute("title","No Sleep"),this.noSleepVideo.setAttribute("playsinline",""),this._addSourceToVideo(this.noSleepVideo,"webm","data:video/webm;base64,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"),this._addSourceToVideo(this.noSleepVideo,"mp4","data:video/mp4;base64,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"),this.noSleepVideo.addEventListener("loadedmetadata",()=>{this.noSleepVideo.duration<=1?this.noSleepVideo.setAttribute("loop",""):this.noSleepVideo.addEventListener("timeupdate",()=>{.5{this._wakeLock=e,this.enabled=!0,t.log("wakeLock","Wake Lock active."),this._wakeLock.addEventListener("release",()=>{t.log("wakeLock","Wake Lock released.")})}).catch(e=>{throw this.enabled=!1,t.error("wakeLock",e.name+", "+e.message),e}):xe()?(this.disable(),this.noSleepTimer=window.setInterval(()=>{document.hidden||(window.location.href=window.location.href.split("#")[0],window.setTimeout(window.stop,0))},15e3),this.enabled=!0,Promise.resolve()):this.noSleepVideo.play().then(e=>(this.enabled=!0,e)).catch(e=>{throw this.enabled=!1,e})}disable(){const e=this.player.debug;Oe()?(this._wakeLock&&this._wakeLock.release(),this._wakeLock=null):xe()?this.noSleepTimer&&(e.warn("wakeLock","NoSleep now disabled for older iOS devices."),window.clearInterval(this.noSleepTimer),this.noSleepTimer=null):this.noSleepVideo.pause(),this.enabled=!1}}var I=(m=v(function(e,t){"undefined"!=typeof window&&(e.exports=function(){return r={"./node_modules/eventemitter3/index.js":function(e,t,r){var i=Object.prototype.hasOwnProperty,f="~";function n(){}function s(e,t,r){this.fn=e,this.context=t,this.once=r||!1}function a(e,t,r,i,n){if("function"!=typeof r)throw new TypeError("The listener must be a function");r=new s(r,i||e,n),i=f?f+t:t;return e._events[i]?e._events[i].fn?e._events[i]=[e._events[i],r]:e._events[i].push(r):(e._events[i]=r,e._eventsCount++),e}function l(e,t){0==--e._eventsCount?e._events=new n:delete e._events[t]}function o(){this._events=new n,this._eventsCount=0}Object.create&&(n.prototype=Object.create(null),(new n).__proto__||(f=!1)),o.prototype.eventNames=function(){var e,t,r=[];if(0===this._eventsCount)return r;for(t in e=this._events)i.call(e,t)&&r.push(f?t.slice(1):t);return Object.getOwnPropertySymbols?r.concat(Object.getOwnPropertySymbols(e)):r},o.prototype.listeners=function(e){var e=f?f+e:e,t=this._events[e];if(!t)return[];if(t.fn)return[t.fn];for(var r=0,i=t.length,n=new Array(i);rs||t.nextStart)&&(this.log("Alt audio track ahead of main track, seek to start of alt audio track"),r.currentTime=s+.05)),this.getNextFragment(i,n));a?"identity"!==(null==(e=a.decryptdata)?void 0:e.keyFormat)||null!=(t=a.decryptdata)&&t.key?this.loadFragment(a,n,i):this.loadKey(a,n):this.bufferFlushed=!0}}}}},E.getMaxBufferLength=function(){var e=b.prototype.getMaxBufferLength.call(this),t=this.getFwdBufferInfo(this.videoBuffer||this.media,u.PlaylistLevelType.MAIN);return null===t?e:Math.max(e,t.len)},E.onMediaDetaching=function(){this.videoBuffer=null,b.prototype.onMediaDetaching.call(this)},E.onAudioTracksUpdated=function(e,t){t=t.audioTracks;this.resetTransmuxer(),this.levels=t.map(function(e){return new i.Level(e)})},E.onAudioTrackSwitching=function(e,t){var r=!!t.url,t=(this.trackId=t.id,this.fragCurrent);null!=t&&t.loader&&t.loader.abort(),this.fragCurrent=null,this.clearWaitingFragment(),r?this.setInterval(100):this.resetTransmuxer(),r?(this.audioSwitch=!0,this.state=h.State.IDLE):this.state=h.State.STOPPED,this.tick()},E.onManifestLoading=function(){this.mainDetails=null,this.fragmentTracker.removeAllFragments(),this.startPosition=this.lastCurrentTime=0,this.bufferFlushed=!1},E.onLevelLoaded=function(e,t){this.mainDetails=t.details},E.onAudioTrackLoaded=function(e,t){var r=this.levels,i=t.details,t=t.id;if(r){this.log("Track "+t+" loaded ["+i.startSN+","+i.endSN+"],duration:"+i.totalduration);var r=r[t],n=0;if(i.live||null!=(s=r.details)&&s.live){var s=this.mainDetails;if(i.fragments[0]||(i.deltaUpdateFailed=!0),i.deltaUpdateFailed||!s)return;n=!r.details&&i.hasProgramDateTime&&s.hasProgramDateTime?(Object(l.alignMediaPlaylistByPDT)(i,s),i.fragments[0].start):this.alignPlaylists(i,r.details)}r.details=i,this.levelLastLoaded=t,this.startFragRequested||!this.mainDetails&&i.live||this.setStartPosition(r.details,n),this.state!==h.State.WAITING_TRACK||this.waitForCdnTuneIn(i)||(this.state=h.State.IDLE),this.tick()}else this.warn("Audio tracks were reset while loading level "+t)},E._handleFragmentLoadProgress=function(e){var t,r,i,n,s=e.frag,a=e.part,e=e.payload,o=this.config,l=this.trackId,d=this.levels;d?(d=d[l],console.assert(d,"Audio track is defined on fragment load progress"),t=d.details,console.assert(t,"Audio track details are defined on fragment load progress"),o=o.defaultAudioCodec||d.audioCodec||"mp4a.40.2",d=(d=this.transmuxer)||(this.transmuxer=new g.default(this.hls,u.PlaylistLevelType.AUDIO,this._handleTransmuxComplete.bind(this),this._handleTransmuxerFlush.bind(this))),r=this.initPTS[s.cc],i=null==(i=s.initSegment)?void 0:i.data,void 0!==r?(n=a?a.index:-1,n=new p.ChunkMetadata(s.level,s.sn,s.stats.chunkCount,e.byteLength,n,-1!==n),d.push(e,i,o,"",s,a,t.totalduration,!1,n,r)):(m.logger.log("Unknown video PTS for cc "+s.cc+", waiting for video PTS before demuxing audio frag "+s.sn+" of ["+t.startSN+" ,"+t.endSN+"],track "+l),(this.waitingData=this.waitingData||{frag:s,part:a,cache:new c.default,complete:!1}).cache.push(new Uint8Array(e)),this.waitingVideoCC=this.videoTrackCC,this.state=h.State.WAITING_INIT_PTS)):this.warn("Audio tracks were reset while fragment load was in progress. Fragment "+s.sn+" of level "+s.level+" will not be buffered")},E._handleFragmentLoadComplete=function(e){this.waitingData?this.waitingData.complete=!0:b.prototype._handleFragmentLoadComplete.call(this,e)},E.onBufferReset=function(){this.mediaBuffer=this.videoBuffer=null,this.loadedmetadata=!1},E.onBufferCreated=function(e,t){var r=t.tracks.audio;r&&(this.mediaBuffer=r.buffer),t.tracks.video&&(this.videoBuffer=t.tracks.video.buffer)},E.onFragBuffered=function(e,t){var r=t.frag,t=t.part;r.type===u.PlaylistLevelType.AUDIO&&(this.fragContextChanged(r)?this.warn("Fragment "+r.sn+(t?" p: "+t.index:"")+" of level "+r.level+" finished buffering, but was aborted. state: "+this.state+", audioSwitch: "+this.audioSwitch):("initSegment"!==r.sn&&(this.fragPrevious=r,this.audioSwitch&&(this.audioSwitch=!1,this.hls.trigger(f.Events.AUDIO_TRACK_SWITCHED,{id:this.trackId}))),this.fragBufferedComplete(r,t)))},E.onError=function(e,t){switch(t.details){case d.ErrorDetails.FRAG_LOAD_ERROR:case d.ErrorDetails.FRAG_LOAD_TIMEOUT:case d.ErrorDetails.KEY_LOAD_ERROR:case d.ErrorDetails.KEY_LOAD_TIMEOUT:this.onFragmentOrKeyLoadError(u.PlaylistLevelType.AUDIO,t);break;case d.ErrorDetails.AUDIO_TRACK_LOAD_ERROR:case d.ErrorDetails.AUDIO_TRACK_LOAD_TIMEOUT:this.state!==h.State.ERROR&&this.state!==h.State.STOPPED&&(this.state=t.fatal?h.State.ERROR:h.State.IDLE,this.warn(t.details+" while loading frag, switching to "+this.state+" state"));break;case d.ErrorDetails.BUFFER_FULL_ERROR:var r,i;"audio"!==t.parent||this.state!==h.State.PARSING&&this.state!==h.State.PARSED||(r=!0,(r=(i=this.getFwdBufferInfo(this.mediaBuffer,u.PlaylistLevelType.AUDIO))&&.5=o.length?this.warn("Invalid id passed to audio-track controller"):(this.clearTimer(),t=o[this.trackId],this.log("Now switching to audio-track index "+e),r=(o=o[e]).id,i=void 0===(i=o.groupId)?"":i,n=o.name,s=o.type,a=o.url,this.trackId=e,this.trackName=n,this.selectDefaultTrack=!1,this.hls.trigger(l.Events.AUDIO_TRACK_SWITCHING,{id:r,groupId:i,name:n,type:s,url:a}),o.details&&!o.details.live||(e=this.switchParams(o.url,null==t?void 0:t.details),this.loadPlaylist(e)))},n.selectInitialTrack=function(){var e=this.tracksInGroup,e=(console.assert(e.length,"Initial audio track should be selected when tracks are known"),this.trackName),e=this.findTrackId(e)||this.findTrackId();-1!==e?this.setAudioTrack(e):(this.warn("No track found for running audio group-ID: "+this.groupId),this.hls.trigger(l.Events.ERROR,{type:i.ErrorTypes.MEDIA_ERROR,details:i.ErrorDetails.AUDIO_TRACK_LOAD_ERROR,fatal:!0}))},n.findTrackId=function(e){for(var t=this.tracksInGroup,r=0;rt.partTarget&&(n+=1)),Object(o.isFiniteNumber)(s))return new l.HlsUrlParameters(s,Object(o.isFiniteNumber)(n)?n:void 0,l.HlsSkip.No)}}},t.loadPlaylist=function(e){},t.shouldLoadTrack=function(e){return this.canLoad&&e&&!!e.url&&(!e.details||e.details.live)},t.playlistLoaded=function(e,t,r){var i=this,n=t.details,s=t.stats,a=s.loading.end?Math.max(0,self.performance.now()-s.loading.end):0;if(n.advancedDateTime=Date.now()-a,n.live||null!=r&&r.live){if(n.reloaded(r),r&&this.log("live playlist "+e+" "+(n.advanced?"REFRESHED "+n.lastPartSn+"-"+n.lastPartIndex:"MISSED")),r&&0r.tuneInGoal?(this.warn("CDN Tune-in goal increased from: "+r.tuneInGoal+" to: "+c+" with playlist age: "+n.age),c=0):(a+=h=Math.floor(c/n.targetduration),void 0!==l&&(l+=Math.round(c%n.targetduration/n.partTarget)),this.log("CDN Tune-in age: "+n.ageHeader+"s last advanced "+u.toFixed(2)+"s goal: "+c+" skip sn "+h+" to part "+l)),n.tuneInGoal=c),o=this.getDeliveryDirectives(n,t.deliveryDirectives,a,l),d||!f)return void this.loadPlaylist(o)}else o=this.getDeliveryDirectives(n,t.deliveryDirectives,a,l);r=Object(A.computeReloadInterval)(n,s);void 0!==a&&n.canBlockReload&&(r-=n.partTarget||1),this.log("reload live playlist "+e+" in "+Math.round(r)+" ms"),this.timer=self.setTimeout(function(){return i.loadPlaylist(o)},r)}}else this.clearTimer()},t.getDeliveryDirectives=function(e,t,r,i){var n=Object(l.getSkipValue)(e,r);return null!=t&&t.skip&&e.deltaUpdateFailed&&(r=t.msn,i=t.part,n=l.HlsSkip.No),new l.HlsUrlParameters(r,i,n)},t.retryLoadingOrFail=function(e){var t,r=this,i=this.hls.config,n=this.retryCount=t.endSN&&!e.nextStart){e=t.partList;if(null!=e&&e.length)return t=e[e.length-1],a.BufferHelper.isBuffered(this.media,t.start+t.duration/2);e=i.getState(r);return e===c.FragmentState.PARTIAL||e===c.FragmentState.OK}return!1},t.onMediaAttached=function(e,t){t=this.media=this.mediaBuffer=t.media,this.onvseeking=this.onMediaSeeking.bind(this),this.onvended=this.onMediaEnded.bind(this),t.addEventListener("seeking",this.onvseeking),t.addEventListener("ended",this.onvended),t=this.config;this.levels&&t.autoStartLoad&&this.state===E.STOPPED&&this.startLoad(t.startPosition)},t.onMediaDetaching=function(){var e=this.media;null!=e&&e.ended&&(this.log("MSE detaching and video ended, reset startPosition"),this.startPosition=this.lastCurrentTime=0),e&&(e.removeEventListener("seeking",this.onvseeking),e.removeEventListener("ended",this.onvended),this.onvseeking=this.onvended=null),this.media=this.mediaBuffer=null,this.loadedmetadata=!1,this.fragmentTracker.removeAllFragments(),this.stopLoad()},t.onMediaSeeking=function(){var e=this.config,t=this.fragCurrent,r=this.media,i=this.mediaBuffer,n=this.state,s=r?r.currentTime:0,i=a.BufferHelper.bufferInfo(i||r,s,e.maxBufferHole);this.log("media seeking to "+(Object(l.isFiniteNumber)(s)?s.toFixed(3):s)+", state: "+n),n===E.ENDED?this.resetLoadingState():t&&!i.len&&(n=e.maxFragLookUpTolerance,e=t.start-n,n=s>t.start+t.duration+n,(se.end&&t.fragmentHint&&(e=t.fragmentHint);var a,o=this.getNextPart(s,e,r);if(-1r&&this.flushMainBuffer(i,e.start)):this.flushMainBuffer(0,e.start))},t.getFwdBufferInfo=function(e,t){var r=this.config,i=this.getLoadPosition();if(!Object(l.isFiniteNumber)(i))return null;var n=a.BufferHelper.bufferInfo(e,i,r.maxBufferHole);if(0===n.len&&void 0!==n.nextStart){t=this.fragmentTracker.getBufferedFrag(i,t);if(t&&n.nextStart=e&&(t.maxMaxBufferLength/=2,this.warn("Reduce max buffer length to "+t.maxMaxBufferLength+"s"),!0)},t.getNextFragment=function(e,t){var r=t.fragments,i=r.length;if(!i)return null;var n,s=this.config,a=r[0].start;if(t.live){var o=s.initialLiveManifestSize;if(ie.start&&e.loaded},t.getInitialLiveFragment=function(e,t){var r,i=this.fragPrevious,n=null;return i?(e.hasProgramDateTime&&(this.log("Live playlist, switching playlist, load frag with same PDT: "+i.programDateTime),n=Object(f.findFragmentByPDT)(t,i.endProgramDateTime,this.config.maxFragLookUpTolerance)),n||((r=i.sn+1)>=e.startSN&&r<=e.endSN&&(r=t[r-e.startSN],i.cc===r.cc&&this.log("Live playlist, switching playlist, load frag with next SN: "+(n=r).sn)),n||(n=Object(f.findFragWithCC)(t,i.cc))&&this.log("Live playlist, switching playlist, load frag with same CC: "+n.sn))):null!==(r=this.hls.liveSyncPosition)&&(n=this.getFragmentAtPosition(r,this.bitrateTest?e.fragmentEnd:e.edge,e)),n},t.getFragmentAtPosition=function(e,t,r){var i,n=this.config,s=this.fragPrevious,a=r.fragments,o=r.endSN,l=r.fragmentHint,d=n.maxFragLookUpTolerance,n=!!(n.lowLatencyMode&&r.partList&&l);if(n&&l&&!this.bitrateTest&&(a=a.concat(l),o=l.sn),i=e=n-s.maxFragLookUpTolerance&&r<=i,null!==t&&a.duration>t&&(r"+e.startSN+" prev-sn: "+(n?n.sn:"na")+" fragments: "+i),a):s},t.waitForCdnTuneIn=function(e){return e.live&&e.canBlockReload&&e.tuneInGoal>Math.max(e.partHoldBack,3*e.partTarget)},t.setStartPosition=function(e,t){var r,i=this.startPosition;-1!==(i=i"+e))}}]),S);function S(e,t,r){var i;return(i=b.call(this)||this).hls=void 0,i.fragPrevious=null,i.fragCurrent=null,i.fragmentTracker=void 0,i.transmuxer=null,i._state=E.STOPPED,i.media=void 0,i.mediaBuffer=void 0,i.config=void 0,i.bitrateTest=!1,i.lastCurrentTime=0,i.nextLoadPosition=0,i.startPosition=0,i.loadedmetadata=!1,i.fragLoadError=0,i.retryDate=0,i.levels=null,i.fragmentLoader=void 0,i.levelLastLoaded=null,i.startFragRequested=!1,i.decrypter=void 0,i.initPTS=[],i.onvseeking=null,i.onvended=null,i.logPrefix="",i.log=void 0,i.warn=void 0,i.logPrefix=r,i.log=n.logger.log.bind(n.logger,r+":"),i.warn=n.logger.warn.bind(n.logger,r+":"),i.hls=e,i.fragmentLoader=new A.default(e.config),i.fragmentTracker=t,i.config=e.config,i.decrypter=new g.default(e,e.config),e.on(h.Events.KEY_LOADED,i.onKeyLoaded,function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(i)),i}},"./src/controller/buffer-controller.ts":function(e,t,r){r.r(t),r.d(t,"default",function(){return s});var l=r("./src/polyfills/number.ts"),g=r("./src/events.ts"),p=r("./src/utils/logger.ts"),m=r("./src/errors.ts"),v=r("./src/utils/buffer-helper.ts"),t=r("./src/utils/mediasource-helper.ts"),a=r("./src/loader/fragment.ts"),i=r("./src/controller/buffer-operation-queue.ts"),n=Object(t.getMediaSource)(),d=/([ha]vc.)(?:\.[^.,]+)+/,s=((r=o.prototype).hasSourceTypes=function(){return 0r.config.appendErrorMaxRetry&&(p.logger.error("[buffer-controller]: Failed "+r.config.appendErrorMaxRetry+" times to append segment in sourceBuffer"),t.fatal=!0)),r.trigger(g.Events.ERROR,t)}},o)},r.onBufferFlushing=function(e,r){function t(t){return{execute:i.removeExecutor.bind(i,t,r.startOffset,r.endOffset),onStart:function(){},onComplete:function(){i.hls.trigger(g.Events.BUFFER_FLUSHED,{type:t})},onError:function(e){p.logger.warn("[buffer-controller]: Failed to remove from "+t+" SourceBuffer",e)}}}var i=this,n=this.operationQueue;r.type?n.append(t(r.type),r.type):this.getSourceBufferTypes().forEach(function(e){n.append(t(e),e)})},r.onFragParsed=function(e,t){var r=this,i=t.frag,n=t.part,t=[],s=(n||i).elementaryStreams;s[a.ElementaryStreamTypes.AUDIOVIDEO]?t.push("audiovideo"):(s[a.ElementaryStreamTypes.AUDIO]&&t.push("audio"),s[a.ElementaryStreamTypes.VIDEO]&&t.push("video")),0===t.length&&p.logger.warn("Fragments must have at least one ElementaryStreamType set. type: "+i.type+" level: "+i.level+" sn: "+i.sn),this.blockBuffers(function(){var e=self.performance.now(),e=(i.stats.buffering.end=e,n&&(n.stats.buffering.end=e),(n||i).stats);r.hls.trigger(g.Events.FRAG_BUFFERED,{frag:i,part:n,stats:e,id:i.type})},t)},r.onFragChanged=function(e,t){this.flushBackBuffer()},r.onBufferEos=function(e,i){var n=this;this.getSourceBufferTypes().reduce(function(e,t){var r=n.sourceBuffer[t];return i.type&&i.type!==t||r&&!r.ended&&(r.ended=!0,p.logger.log("[buffer-controller]: "+t+" sourceBuffer now EOS")),e&&!(r&&!r.ended)},!0)&&this.blockBuffers(function(){var e=n.mediaSource;e&&"open"===e.readyState&&e.endOfStream()})},r.onLevelUpdated=function(e,t){t=t.details;t.fragments.length&&(this.details=t,this.getSourceBufferTypes().length?this.blockBuffers(this.updateMediaElementDuration.bind(this)):this.updateMediaElementDuration())},r.flushBackBuffer=function(){var e,t,r,i,n=this.hls,s=this.details,a=this.media,o=this.sourceBuffer;a&&null!==s&&(e=this.getSourceBufferTypes()).length&&(r=s.live&&null!==n.config.liveBackBufferLength?n.config.liveBackBufferLength:n.config.backBufferLength,!Object(l.isFiniteNumber)(r)||r<0||(a=a.currentTime,t=s.levelTargetDuration,r=Math.max(r,t),i=Math.floor(a/t)*t-r,e.forEach(function(e){var t=o[e];t&&0<(t=v.BufferHelper.getBuffered(t)).length&&i>t.start(0)&&(n.trigger(g.Events.BACK_BUFFER_REACHED,{bufferEnd:i}),s.live&&n.trigger(g.Events.LIVE_BACK_BUFFER_REACHED,{bufferEnd:i}),n.trigger(g.Events.BUFFER_FLUSHING,{startOffset:0,endOffset:i,type:e}))})))},r.updateMediaElementDuration=function(){var e,t,r,i,n,s;this.details&&this.media&&this.mediaSource&&"open"===this.mediaSource.readyState&&(e=this.details,t=this.hls,n=this.media,r=this.mediaSource,i=e.fragments[0].start+e.totalduration,n=n.duration,s=Object(l.isFiniteNumber)(r.duration)?r.duration:0,e.live&&t.config.liveDurationInfinity?(p.logger.log("[buffer-controller]: Media Source duration is set to Infinity"),r.duration=1/0,this.updateSeekableRange(e)):(sthis.autoLevelCapping&&this.streamController&&this.streamController.nextLevelSwitch(),this.autoLevelCapping=t.autoLevelCapping))},r.getMaxLevel=function(r){var i=this,e=this.hls.levels;if(!e.length)return-1;e=e.filter(function(e,t){return a.isLevelAllowed(t,i.restrictedLevels)&&t<=r});return this.clientRect=null,a.getMaxLevelByMediaSize(e,this.mediaWidth,this.mediaHeight)},r.startCapping=function(){this.timer||(this.autoLevelCapping=Number.POSITIVE_INFINITY,this.hls.firstLevel=this.getMaxLevel(this.firstLevel),self.clearInterval(this.timer),this.timer=self.setInterval(this.detectPlayerSize.bind(this),1e3),this.detectPlayerSize())},r.stopCapping=function(){this.restrictedLevels=[],this.firstLevel=-1,this.autoLevelCapping=Number.POSITIVE_INFINITY,this.timer&&(self.clearInterval(this.timer),this.timer=void 0)},r.getDimensions=function(){if(this.clientRect)return this.clientRect;var e,t=this.media,r={width:0,height:0};return t&&(e=t.getBoundingClientRect(),r.width=e.width,r.height=e.height,r.width||r.height||(r.width=e.right-e.left||t.width||0,r.height=e.bottom-e.top||t.height||0)),this.clientRect=r},a.isLevelAllowed=function(e,t){return-1===(t=void 0===t?[]:t).indexOf(e)},a.getMaxLevelByMediaSize=function(e,t,r){if(!e||!e.length)return-1;for(var i,n=e.length-1,s=0;s=t||a.height>=r)&&(!(i=e[s+1])||a.width!==i.width||a.height!==i.height)){n=s;break}}return n},r=[{key:"contentScaleFactor",get:function(){var e=1;try{e=self.devicePixelRatio}catch(e){}return e}}],n((s=a).prototype,[{key:"mediaWidth",get:function(){return this.getDimensions().width*a.contentScaleFactor}},{key:"mediaHeight",get:function(){return this.getDimensions().height*a.contentScaleFactor}}]),n(s,r);var s=a;function a(e){this.autoLevelCapping=void 0,this.firstLevel=void 0,this.media=void 0,this.restrictedLevels=void 0,this.timer=void 0,this.hls=void 0,this.streamController=void 0,this.clientRect=void 0,this.hls=e,this.autoLevelCapping=Number.POSITIVE_INFINITY,this.firstLevel=-1,this.media=null,this.restrictedLevels=[],this.timer=void 0,this.clientRect=null,this.registerListeners()}t.default=s},"./src/controller/cmcd-controller.ts":function(e,t,r){r.r(t),r.d(t,"default",function(){return h});var i=r("./src/events.ts"),a=r("./src/types/cmcd.ts"),n=r("./src/utils/buffer-helper.ts"),o=r("./src/utils/logger.ts");function s(e,t){for(var r=0;r=e.length?{done:!0}:{done:!1,value:e[r++]}};throw new TypeError("Invalid attempt to iterate 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 r=0,i=new Array(t);rt&&(t=n.bitrate)}return 0s.config.fpsDroppedMonitoringThreshold*n&&(a=s.currentLevel,d.logger.warn("drop FPS ratio greater than max allowed value for currentLevel: "+a),0=a)&&(s.trigger(l.Events.FPS_DROP_LEVEL_CAPPING,{level:--a,droppedLevel:s.currentLevel}),s.autoLevelCapping=a,this.streamController.nextLevelSwitch()))),this.lastTime=o,this.lastDroppedFrames=r,this.lastDecodedFrames=t)},r.checkFPSInterval=function(){var e,t=this.media;t&&(this.isVideoPlaybackQualityAvailable?(e=t.getVideoPlaybackQuality(),this.checkFPS(t,e.totalVideoFrames,e.droppedVideoFrames)):this.checkFPS(t,t.webkitDecodedFrameCount,t.webkitDroppedFrameCount))},t.default=i},"./src/controller/fragment-finders.ts":function(e,t,r){r.r(t),r.d(t,"findFragmentByPDT",function(){return i}),r.d(t,"findFragmentByPTS",function(){return n}),r.d(t,"fragmentWithinToleranceTest",function(){return o}),r.d(t,"pdtWithinToleranceTest",function(){return l}),r.d(t,"findFragWithCC",function(){return d});var s=r("./src/polyfills/number.ts"),a=r("./src/utils/binary-search.ts");function i(e,t,r){if(null===t||!Array.isArray(e)||!e.length||!Object(s.isFiniteNumber)(t))return null;if(t<(e[0].programDateTime||0))return null;if(t>=(e[e.length-1].endProgramDateTime||0))return null;r=r||0;for(var i=0;ie&&r.start?-1:0}function l(e,t,r){t=1e3*Math.min(t,r.duration+(r.deltaPTS||0));return(r.endProgramDateTime||0)-t>e}function d(e,t){return a.default.search(e,function(e){return e.cct?-1:0})}},"./src/controller/fragment-tracker.ts":function(e,t,r){r.r(t),r.d(t,"FragmentState",function(){return i}),r.d(t,"FragmentTracker",function(){return s});var i,n=r("./src/events.ts"),o=r("./src/types/loader.ts"),s=((t=i=i||{}).NOT_LOADED="NOT_LOADED",t.BACKTRACKED="BACKTRACKED",t.APPENDING="APPENDING",t.PARTIAL="PARTIAL",t.OK="OK",(r=a.prototype)._registerListeners=function(){var e=this.hls;e.on(n.Events.BUFFER_APPENDED,this.onBufferAppended,this),e.on(n.Events.FRAG_BUFFERED,this.onFragBuffered,this),e.on(n.Events.FRAG_LOADED,this.onFragLoaded,this)},r._unregisterListeners=function(){var e=this.hls;e.off(n.Events.BUFFER_APPENDED,this.onBufferAppended,this),e.off(n.Events.FRAG_BUFFERED,this.onFragBuffered,this),e.off(n.Events.FRAG_LOADED,this.onFragLoaded,this)},r.destroy=function(){this._unregisterListeners(),this.fragments=this.timeRanges=null},r.getAppendedFrag=function(e,t){if(t===o.PlaylistLevelType.MAIN){var r=this.activeFragment,i=this.activeParts;if(!r)return null;if(i)for(var n=i.length;n--;){var s=i[n],a=s?s.end:r.appendedPTS;if(s.start<=e&&void 0!==a&&e<=a)return 9t&&n.removeFragment(e))})},r.removeFragment=function(e){var t=d(e);e.stats.loaded=0,e.clearElementaryStreamInfo(),delete this.fragments[t]},r.removeAllFragments=function(){this.fragments=Object.create(null),this.activeFragment=null,this.activeParts=null},a);function a(e){this.activeFragment=null,this.activeParts=null,this.fragments=Object.create(null),this.timeRanges=Object.create(null),this.bufferPadding=.2,this.hls=void 0,this.hls=e,this._registerListeners()}function l(e){var t;return e.buffered&&(null!=(t=e.range.video)&&t.partial||null!=(t=e.range.audio)&&t.partial)}function d(e){return e.type+"_"+e.level+"_"+e.urlId+"_"+e.sn}},"./src/controller/gap-controller.ts":function(e,t,r){r.r(t),r.d(t,"STALL_MINIMUM_DURATION_MS",function(){return f}),r.d(t,"MAX_START_GAP_JUMP",function(){return A}),r.d(t,"SKIP_BUFFER_HOLE_STEP_SECONDS",function(){return g}),r.d(t,"SKIP_BUFFER_RANGE_START",function(){return p}),r.d(t,"default",function(){return i});var d=r("./src/utils/buffer-helper.ts"),u=r("./src/errors.ts"),c=r("./src/events.ts"),h=r("./src/utils/logger.ts"),f=250,A=2,g=.1,p=.05,i=((t=n.prototype).destroy=function(){this.hls=this.fragmentTracker=this.media=null},t.poll=function(e){var t=this.config,r=this.media,i=this.stalled,n=r.currentTime,s=r.seeking,a=this.seeking&&!s,o=!this.seeking&&s;if(this.seeking=s,n===e){if((o||a)&&(this.stalled=null),!r.paused&&!r.ended&&0!==r.playbackRate&&d.BufferHelper.getBuffered(r).length){e=d.BufferHelper.bufferInfo(r,n,0),o=0A,l=!a||Ar.maxBufferHole&&t>1e3*r.highBufferWatchdogPeriod&&(h.logger.warn("Trying to nudge playhead over buffer-hole"),this.stalled=null,this._tryNudgeBuffer())},t._reportStall=function(e){var t=this.hls,r=this.media;this.stallReported||(this.stallReported=!0,h.logger.warn("Playback stalling at @"+r.currentTime+" due to low buffer (buffer="+e+")"),t.trigger(c.Events.ERROR,{type:u.ErrorTypes.MEDIA_ERROR,details:u.ErrorDetails.BUFFER_STALLED_ERROR,fatal:!1,buffer:e}))},t._trySkipBufferHole=function(e){for(var t=this.config,r=this.hls,i=this.media,n=i.currentTime,s=0,a=d.BufferHelper.getBuffered(i),o=0;o=s&&nthis.hls.config.fragLoadingMaxRetry&&(i=t.frag.level)):i=t.frag.level);break;case g.ErrorDetails.LEVEL_LOAD_ERROR:case g.ErrorDetails.LEVEL_LOAD_TIMEOUT:r&&(r.deliveryDirectives&&(a=!1),i=r.level),s=!0;break;case g.ErrorDetails.REMUX_ALLOC_ERROR:i=t.level,s=!0}void 0!==i&&this.recoverLevel(t,i,s,a)}}},t.recoverLevel=function(e,t,r,i){var n=e.details,s=this._levels[t];if(s.loadError++,r){if(!this.retryLoadingOrFail(e))return void(this.currentLevelIndex=-1);e.levelRetry=!0}i&&(1<(r=s.url.length)&&s.loadError=t.length){var r=e<0;if(this.hls.trigger(A.Events.ERROR,{type:g.ErrorTypes.OTHER_ERROR,details:g.ErrorDetails.LEVEL_SWITCH_ERROR,level:e,fatal:r,reason:"invalid level idx"}),r)return;e=Math.min(e,t.length-1)}this.clearTimer();var r=this.currentLevelIndex,i=t[r],t=t[e],r=(this.log("switching to level "+e+" from "+r),n({},t,{level:this.currentLevelIndex=e,maxBitrate:t.maxBitrate,uri:t.uri,urlId:t.urlId})),e=(delete r._urlId,this.hls.trigger(A.Events.LEVEL_SWITCHING,r),t.details);e&&!e.live||(r=this.switchParams(t.uri,null==i?void 0:i.details),this.loadPlaylist(r))}}},{key:"manualLevel",get:function(){return this.manualLevelIndex},set:function(e){this.manualLevelIndex=e,void 0===this._startLevel&&(this._startLevel=e),-1!==e&&(this.level=e)}},{key:"firstLevel",get:function(){return this._firstLevel},set:function(e){this._firstLevel=e}},{key:"startLevel",get:function(){var e;return void 0===this._startLevel?void 0!==(e=this.hls.config.startLevel)?e:this._firstLevel:this._startLevel},set:function(e){this._startLevel=e}},{key:"nextLoadLevel",get:function(){return-1!==this.manualLevelIndex?this.manualLevelIndex:this.hls.nextAutoLevel},set:function(e){this.level=e,-1===this.manualLevelIndex&&(this.hls.nextAutoLevel=e)}}]),d);function d(e){return(e=l.call(this,e,"[level-controller]")||this)._levels=[],e._firstLevel=-1,e._startLevel=void 0,e.currentLevelIndex=-1,e.manualLevelIndex=-1,e.onParsedComplete=void 0,e._registerListeners(),e}},"./src/controller/level-helper.ts":function(e,t,r){r.r(t),r.d(t,"addGroupId",function(){return i}),r.d(t,"assignTrackIdsByGroup",function(){return n}),r.d(t,"updatePTS",function(){return s}),r.d(t,"updateFragPTSDTS",function(){return p}),r.d(t,"mergeDetails",function(){return a}),r.d(t,"mapPartIntersection",function(){return m}),r.d(t,"mapFragmentIntersection",function(){return v}),r.d(t,"adjustSliding",function(){return y}),r.d(t,"addSliding",function(){return o}),r.d(t,"computeReloadInterval",function(){return l}),r.d(t,"getFragmentWithSN",function(){return d}),r.d(t,"getPartWith",function(){return u});var f=r("./src/polyfills/number.ts"),A=r("./src/utils/logger.ts");function i(e,t,r){switch(t){case"audio":e.audioGroupIds||(e.audioGroupIds=[]),e.audioGroupIds.push(r);break;case"text":e.textGroupIds||(e.textGroupIds=[]),e.textGroupIds.push(r)}}function n(e){var r={};e.forEach(function(e){var t=e.groupId||"";e.id=r[t]=r[t]||0,r[t]++})}function s(e,t,r){g(e[t],e[r])}function g(e,t){var r,i=t.startPTS;Object(f.isFiniteNumber)(i)?(r=0,(i=t.sn>e.sn?(r=i-e.start,e):(r=e.start-i,t)).duration!==r&&(i.duration=r)):t.sn>e.sn?e.cc===t.cc&&e.minEndPTS?t.start=e.start+(e.minEndPTS-e.start):t.start=e.start+e.duration:t.start=Math.max(e.start-t.duration,0)}function p(e,t,r,i,n,s){i-r<=0&&(A.logger.warn("Fragment should have a positive duration",t),i=r+t.duration,s=n+t.duration);var a=r,o=i,l=t.startPTS,d=t.endPTS,u=(Object(f.isFiniteNumber)(l)&&(u=Math.abs(l-r),Object(f.isFiniteNumber)(t.deltaPTS)?t.deltaPTS=Math.max(u,t.deltaPTS):t.deltaPTS=u,a=Math.max(r,l),r=Math.min(r,l),n=Math.min(n,t.startDTS),o=Math.min(i,d),i=Math.max(i,d),s=Math.max(s,t.endDTS)),t.duration=i-r,r-t.start);t.appendedPTS=i,t.start=t.startPTS=r,t.maxStartPTS=a,t.startDTS=n,t.endPTS=i,t.minEndPTS=o,t.endDTS=s;var c,l=t.sn;if(!e||le.endSN)return 0;var d=l-e.startSN,h=e.fragments;for(h[d]=t,c=d;0=e.length||o(t,e[r].start)}function o(e,t){if(t){for(var r=e.fragments,i=e.skippedSegments;i=this.getMaxBufferLength(t.maxBitrate))){if(this._streamEnded(r,n))return e={},this.altAudio&&(e.type="video"),this.hls.trigger(p.Events.BUFFER_EOS,e),void(this.state=g.State.ENDED);s=r.end,t=this.getNextFragment(s,n);!this.couldBacktrack||this.fragPrevious||!t||"initSegment"===t.sn||1<(e=t.sn-n.startSN)&&(t=n.fragments[e-1],this.fragmentTracker.removeFragment(t)),t&&this.fragmentTracker.getState(t)===a.FragmentState.OK&&this.nextLoadPosition>s&&(r=this.audioOnly&&!this.altAudio?m.ElementaryStreamTypes.AUDIO:m.ElementaryStreamTypes.VIDEO,this.afterBufferFlushed(i,r,c.PlaylistLevelType.MAIN),t=this.getNextFragment(this.nextLoadPosition,n)),t&&("identity"!==(null==(e=(t=!t.initSegment||t.initSegment.data||this.bitrateTest?t:t.initSegment).decryptdata)?void 0:e.keyFormat)||null!=(i=t.decryptdata)&&i.key?this.loadFragment(t,n,s):this.loadKey(t,n))}}}},r.loadFragment=function(e,t,r){var i=this.fragmentTracker.getState(e);if(this.fragCurrent=e,i===a.FragmentState.BACKTRACKED){var n=this.fragmentTracker.getBacktrackData(e);if(n)return this._handleFragmentLoadProgress(n),void this._handleFragmentLoadComplete(n);i=a.FragmentState.NOT_LOADED}i===a.FragmentState.NOT_LOADED||i===a.FragmentState.PARTIAL?"initSegment"===e.sn?this._loadInitSegment(e):this.bitrateTest?(e.bitrateTest=!0,this.log("Fragment "+e.sn+" of level "+e.level+" is being downloaded to test bitrate and will not be buffered"),this._loadBitrateTestFrag(e)):(this.startFragRequested=!0,v.prototype.loadFragment.call(this,e,t,r)):i===a.FragmentState.APPENDING?this.reduceMaxBufferLength(e.duration)&&this.fragmentTracker.removeFragment(e):0===(null==(n=this.media)?void 0:n.buffered.length)&&this.fragmentTracker.removeAllFragments()},r.getAppendedFrag=function(e){e=this.fragmentTracker.getAppendedFrag(e,c.PlaylistLevelType.MAIN);return e&&"fragment"in e?e.fragment:e},r.getBufferedFrag=function(e){return this.fragmentTracker.getBufferedFrag(e,c.PlaylistLevelType.MAIN)},r.followingBufferedFrag=function(e){return e?this.getBufferedFrag(e.end+.5):null},r.immediateLevelSwitch=function(){this.abortCurrentFrag(),this.flushMainBuffer(0,Number.POSITIVE_INFINITY)},r.nextLevelSwitch=function(){var e,t=this.levels,r=this.media;null!=r&&r.readyState&&((e=this.getAppendedFrag(r.currentTime))&&1=i[a].start&&s<=i[a].end){n=i[a];break}t=r.start+r.duration;n?n.end=t:i.push(n={start:s,end:t}),this.fragmentTracker.fragBuffered(r)}}},r.onBufferFlushing=function(e,t){var r,i,n,s=t.startOffset,a=t.endOffset;0===s&&a!==Number.POSITIVE_INFINITY&&(r=this.currentTrackId,(i=this.levels).length&&i[r]&&i[r].details&&((n=a-i[r].details.targetduration)<=0||(t.endOffsetSubtitles=Math.max(0,n),this.tracksBuffered.forEach(function(e){for(var t=0;t=n.length||t!==i)&&s){if(this.mediaBuffer=this.mediaBufferTimeRanges,r.live||null!=(n=s.details)&&n.live){i=this.mainDetails;if(r.deltaUpdateFailed||!i)return;n=i.fragments[0];s.details?0===this.alignPlaylists(r,s.details)&&n&&Object(o.addSliding)(r,n.start):r.hasProgramDateTime&&i.hasProgramDateTime?Object(a.alignMediaPlaylistByPDT)(r,i):n&&Object(o.addSliding)(r,n.start)}s.details=r,this.levelLastLoaded=t,this.tick(),!r.live||this.fragCurrent||!this.media||this.state!==c.State.IDLE||Object(d.findFragmentByPTS)(null,r.fragments,this.media.currentTime,0)||(this.warn("Subtitle playlist not aligned with playback"),s.details=void 0)}}},r._handleFragmentLoadComplete=function(e){var r,i=e.frag,e=e.payload,t=i.decryptdata,n=this.hls;!this.fragContextChanged(i)&&e&&0this.getMaxBufferLength()+s||(console.assert(e,"Subtitle track details are defined on idle subtitle stream controller tick"),s=(n=e.fragments).length,o=e.edge,a=this.fragPrevious,r=o.length||(this.clearTimer(),r=o[e],this.log("Switching to subtitle track "+e),this.trackId=e,r?(o=r.id,i=r.groupId,n=r.name,s=r.type,a=r.url,this.hls.trigger(l.Events.SUBTITLE_TRACK_SWITCH,{id:o,groupId:void 0===i?"":i,name:n,type:s,url:a}),o=this.switchParams(r.url,null==t?void 0:t.details),this.loadPlaylist(o)):this.hls.trigger(l.Events.SUBTITLE_TRACK_SWITCH,{id:e}))):this.queuedDefaultTrack=e},n.onTextTracksChanged=function(){if(this.useTextTrackPolling||self.clearInterval(this.subtitlePollingInterval),this.media&&this.hls.config.renderTextTracksNatively){for(var e=-1,t=c(this.media.textTracks),r=0;r>>8^255&g^99,c[t[g]=h]),m=c[p],v=c[m],y=257*c[g]^16843008*g;i[h]=y<<24|y>>>8,n[h]=y<<16|y>>>16,s[h]=y<<8|y>>>24,a[h]=y,o[g]=(y=16843009*v^65537*m^257*p^16843008*h)<<24|y>>>8,l[g]=y<<16|y>>>16,d[g]=y<<8|y>>>24,u[g]=y,h?(h=p^c[c[c[v^p]]],f^=c[c[f]]):h=f=1}},t.expandKey=function(e){for(var t=this.uint8ArrayToUint32Array_(e),r=!0,i=0;i>>6),u=(60&t[r+2])>>>2;if(!(l.length-1>>6,c.logger.log("manifest codec:"+i+", ADTS type:"+d+", samplingIndex:"+u),t=/firefox/i.test(a)?6<=u?(d=5,s=new Array(4),u-3):(d=2,s=new Array(2),u):-1!==a.indexOf("android")?(d=2,s=new Array(2),u):(d=5,s=new Array(4),i&&(-1!==i.indexOf("mp4a.40.29")||-1!==i.indexOf("mp4a.40.5"))||!i&&6<=u?u-3:((i&&-1!==i.indexOf("mp4a.40.2")&&(6<=u&&1==n||/vivaldi/i.test(a))||!i&&1==n)&&(d=2,s=new Array(2)),u)),s[0]=d<<3,s[0]|=(14&u)>>1,s[1]|=(1&u)<<7,s[1]|=n<<3,5===d&&(s[1]|=(14&t)>>1,s[2]=(1&t)<<7,s[2]|=8,s[3]=0),{config:s,samplerate:l[u],channelCount:n,codec:"mp4a.40."+d,manifestCodec:o};e.trigger(f.Events.ERROR,{type:h.ErrorTypes.MEDIA_ERROR,details:h.ErrorDetails.FRAG_PARSING_ERROR,fatal:!0,reason:"invalid ADTS sampling index:"+u})}function i(e,t){return 255===e[t]&&240==(246&e[t+1])}function a(e,t){return 1&e[t+1]?7:9}function o(e,t){return(3&e[t+3])<<11|e[t+4]<<3|(224&e[t+5])>>>5}function n(e,t){return t+5=e.length)return!1;var i=o(e,t);if(i<=r)return!1;r=t+i;return r===e.length||l(e,r)}return!1}function A(e,t,r,i,n){e.samplerate||(t=s(t,r,i,n))&&(e.config=t.config,e.samplerate=t.samplerate,e.channelCount=t.channelCount,e.codec=t.codec,e.manifestCodec=t.manifestCodec,c.logger.log("parsed codec:"+e.codec+", rate:"+t.samplerate+", channels:"+t.channelCount))}function g(e){return 9216e4/e}function p(e,t,r,i,n){var s=a(e,t),e=o(e,t);if(0<(e-=s))return{headerLength:s,frameLength:e,stamp:r+i*n}}function m(e,t,r,i,n){var s,a,o,i=p(t,r,i,n,g(e.samplerate));if(i)return n=i.frameLength,a=i.headerLength,i=i.stamp,n=a+n,(o=Math.max(0,r+n-t.length))?(s=new Uint8Array(n-a)).set(t.subarray(r+a,t.length),0):s=t.subarray(r+a,r+n),t={unit:s,pts:i},o||e.samples.push(t),{sample:t,length:n,missing:o}}},"./src/demux/base-audio-demuxer.ts":function(e,t,r){r.r(t),r.d(t,"initPTSFn",function(){return g});var i=r("./src/polyfills/number.ts"),c=r("./src/demux/id3.ts"),h=r("./src/demux/dummy-demuxed-track.ts"),f=r("./src/utils/mp4-tools.ts"),A=r("./src/utils/typed-array.ts");(r=n.prototype).resetInitSegment=function(e,t,r){this._id3Track={type:"id3",id:3,pid:-1,inputTimeScale:9e4,sequenceNumber:0,samples:[],dropped:0}},r.resetTimeStamp=function(){},r.resetContiguity=function(){},r.canParse=function(e,t){return!1},r.appendFrame=function(e,t,r){},r.demux=function(e,t){this.cachedData&&(e=Object(f.appendUint8Array)(this.cachedData,e),this.cachedData=null);var r,i,n,s=c.getID3Data(e,0),a=s?s.length:0,o=this._audioTrack,l=this._id3Track,d=s?c.getTimeStamp(s):void 0,u=e.length;for(0!==this.frameIndex&&null!==this.initPTS||(this.initPTS=g(d,t)),s&&0e||(e=(e-=this.bitsAvailable)-((t=e>>3)>>3),this.bytesAvailable-=t,this.loadWord()),this.word<<=e,this.bitsAvailable-=e},r.readBits=function(e){var t=Math.min(this.bitsAvailable,e),r=this.word>>>32-t;return 32>>e))return this.word<<=e,this.bitsAvailable-=e,e;return this.loadWord(),e+this.skipLZ()},r.skipUEG=function(){this.skipBits(1+this.skipLZ())},r.skipEG=function(){this.skipBits(1+this.skipLZ())},r.readUEG=function(){var e=this.skipLZ();return this.readBits(e+1)-1},r.readEG=function(){var e=this.readUEG();return 1&e?1+e>>>1:-1*(e>>>1)},r.readBoolean=function(){return 1===this.readBits(1)},r.readUByte=function(){return this.readBits(8)},r.readUShort=function(){return this.readBits(16)},r.readUInt=function(){return this.readBits(32)},r.skipScalingList=function(e){for(var t=8,r=8,i=0;i>4){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:l+=String.fromCharCode(n);break;case 12:case 13:s=e[d++],l+=String.fromCharCode((31&n)<<6|63&s);break;case 14:s=e[d++],a=e[d++],l+=String.fromCharCode((15&n)<<12|(63&s)<<6|(63&a)<<0)}}return l},y={decodeTextFrame:g}},"./src/demux/mp3demuxer.ts":function(e,t,r){r.r(t);var i=r("./src/demux/base-audio-demuxer.ts"),n=r("./src/demux/id3.ts"),s=r("./src/utils/logger.ts"),a=r("./src/demux/mpegaudio.ts");function o(e,t){return(o=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}l=i.default,r=l,(i=d).prototype=Object.create(r.prototype),o(i.prototype.constructor=i,r),(i=d.prototype).resetInitSegment=function(e,t,r){l.prototype.resetInitSegment.call(this,e,t,r),this._audioTrack={container:"audio/mpeg",type:"audio",id:2,pid:-1,sequenceNumber:0,isAAC:!1,samples:[],manifestCodec:e,duration:r,inputTimeScale:9e4,dropped:0}},d.probe=function(e){if(!e)return!1;for(var t=(n.getID3Data(e,0)||[]).length,r=e.length;tt.length)){var s=a(t,r);if(s&&r+s.frameLength<=t.length)return i=i+n*(9e4*s.samplesPerFrame/s.sampleRate),n={unit:t.subarray(r,r+s.frameLength),pts:i,dts:i},e.config=[],e.channelCount=s.channelCount,e.samplerate=s.sampleRate,e.samples.push(n),{sample:n,length:s.frameLength,missing:0}}}function a(e,t){var r,i,n,s,a,o=e[t+1]>>3&3,l=e[t+1]>>1&3,d=e[t+2]>>4&15,u=e[t+2]>>2&3;if(1!=o&&0!=d&&15!=d&&3!=u)return a=e[t+2]>>1&1,r=e[t+3]>>6,d=1e3*h[14*(3==o?3-l:3==l?3:4)+d-1],u=f[3*(3==o?0:2==o?1:2)+u],i=3==r?1:2,s=8*(o=A[o][l])*(n=g[l]),o=Math.floor(o*d/u+a)*n,null===c&&(a=(navigator.userAgent||"").match(/Chrome\/(\d+)/i),c=a?parseInt(a[1]):0),c&&c<=87&&2==l&&224e3<=d&&0==r&&(e[t+3]=128|e[t+3]),{sampleRate:u,channelCount:i,frameLength:o,samplesPerFrame:s}}function n(e,t){return 255===e[t]&&224==(224&e[t+1])&&0!=(6&e[t+1])}function s(e,t){return t+1=e.length)return void r();if(!(e[t].unit.length<32)){var i=this.decrypter.isSync();if(this.decryptAacSample(e,t,r,i),!i)return}}},r.getAvcEncryptedData=function(e){for(var t=16*Math.floor((e.length-48)/160)+16,r=new Int8Array(t),i=0,n=32;n=e.length)return void i();for(var n=e[t].units;!(r>=n.length);r++){var s=n[r];if(!(s.data.length<=48||1!==s.type&&5!==s.type)){var a=this.decrypter.isSync();if(this.decryptAvcSample(e,t,r,i,s,a),!a)return}}}},t.default=n},"./src/demux/transmuxer-interface.ts":function(e,t,r){r.r(t),r.d(t,"default",function(){return i});var l=r("./node_modules/webworkify-webpack/index.js"),d=r("./src/events.ts"),T=r("./src/demux/transmuxer.ts"),S=r("./src/utils/logger.ts"),u=r("./src/errors.ts"),t=r("./src/utils/mediasource-helper.ts"),c=r("./node_modules/eventemitter3/index.js"),h=Object(t.getMediaSource)()||{isTypeSupported:function(){return!1}},i=((r=n.prototype).destroy=function(){var e=this.worker,e=(e?(e.removeEventListener("message",this.onwmsg),e.terminate(),this.worker=null):(e=this.transmuxer)&&(e.destroy(),this.transmuxer=null),this.observer);e&&e.removeAllListeners(),this.observer=null},r.push=function(e,t,r,i,n,s,a,o,l,d){var u=this,c=(l.transmuxing.start=self.performance.now(),this.transmuxer),h=this.worker,f=(s||n).start,A=n.decryptdata,g=this.frag,p=!(g&&n.cc===g.cc),m=!(g&&l.level===g.level),v=g?l.sn-g.sn:-1,y=this.part?l.part-this.part.index:1,b=!m&&(1==v||0==v&&1==y),E=self.performance.now(),E=((m||v||0===n.stats.parsing.start)&&(n.stats.parsing.start=E),!s||!y&&b||(s.stats.parsing.start=E),!(g&&(null==(v=n.initSegment)?void 0:v.url)===(null==(y=g.initSegment)?void 0:y.url))),v=new T.TransmuxState(p,b,o,m,f,E);b&&!p&&!E||(S.logger.log("[transmuxer-interface, "+n.type+"]: Starting new transmux session for sn: "+l.sn+" p: "+l.part+" level: "+l.level+" id: "+l.id+"\n discontinuity: "+p+"\n trackSwitch: "+m+"\n contiguous: "+b+"\n accurateTimeOffset: "+o+"\n timeOffset: "+f+"\n initSegmentChange: "+E),g=new T.TransmuxConfig(r,i,t,a,d),this.configureTransmuxer(g)),this.frag=n,this.part=s,h?h.postMessage({cmd:"demux",data:e,decryptdata:A,chunkMeta:l,state:v},e instanceof ArrayBuffer?[e]:[]):c&&(y=c.push(e,A,l,v),Object(T.isPromise)(y)?y.then(function(e){u.handleTransmuxComplete(e)}):this.handleTransmuxComplete(y))},r.flush=function(t){var r=this,e=(t.transmuxing.start=self.performance.now(),this.transmuxer),i=this.worker;i?i.postMessage({cmd:"flush",chunkMeta:t}):e&&(i=e.flush(t),Object(T.isPromise)(i)?i.then(function(e){r.handleFlushResult(e,t)}):this.handleFlushResult(i,t))},r.handleFlushResult=function(e,t){var r=this;e.forEach(function(e){r.handleTransmuxComplete(e)}),this.onFlush(t)},r.onWorkerMessage=function(e){var t=e.data,r=this.hls;switch(t.event){case"init":self.URL.revokeObjectURL(this.worker.objectURL);break;case"transmuxComplete":this.handleTransmuxComplete(t.data);break;case"flush":this.onFlush(t.data);break;default:t.data=t.data||{},t.data.frag=this.frag,t.data.id=this.id,r.trigger(t.event,t.data)}},r.configureTransmuxer=function(e){var t=this.worker,r=this.transmuxer;t?t.postMessage({cmd:"configure",config:e}):r&&r.configure(e)},r.handleTransmuxComplete=function(e){e.chunkMeta.transmuxing.end=self.performance.now(),this.onTransmuxComplete(e)},n);function n(r,e,t,i){function n(e,t){(t=t||{}).frag=a.frag,t.id=a.id,r.trigger(e,t)}var s,a=this,t=(this.hls=void 0,this.id=void 0,this.observer=void 0,this.frag=null,this.part=null,this.worker=void 0,this.onwmsg=void 0,this.transmuxer=null,this.onTransmuxComplete=void 0,this.onFlush=void 0,this.hls=r,this.id=e,this.onTransmuxComplete=t,this.onFlush=i,r.config),i=(this.observer=new c.EventEmitter,this.observer.on(d.Events.FRAG_DECRYPTED,n),this.observer.on(d.Events.ERROR,n),{mp4:h.isTypeSupported("video/mp4"),mpeg:h.isTypeSupported("audio/mpeg"),mp3:h.isTypeSupported('audio/mp4; codecs="mp3"')}),o=navigator.vendor;if(t.enableWorker&&"undefined"!=typeof Worker){S.logger.log("demuxing in webworker");try{s=this.worker=l("./src/demux/transmuxer-worker.ts"),this.onwmsg=this.onWorkerMessage.bind(this),s.addEventListener("message",this.onwmsg),s.onerror=function(e){r.trigger(d.Events.ERROR,{type:u.ErrorTypes.OTHER_ERROR,details:u.ErrorDetails.INTERNAL_EXCEPTION,fatal:!0,event:"demuxerWorker",error:new Error(e.message+" ("+e.filename+":"+e.lineno+")")})},s.postMessage({cmd:"init",typeSupported:i,vendor:o,id:e,config:JSON.stringify(t)})}catch(r){S.logger.warn("Error in worker:",r),S.logger.error("Error while initializing DemuxerWorker, fallback to inline"),s&&self.URL.revokeObjectURL(s.objectURL),this.transmuxer=new T.default(this.observer,i,t,o,e),this.worker=null}}else this.transmuxer=new T.default(this.observer,i,t,o,e)}},"./src/demux/transmuxer-worker.ts":function(e,t,r){r.r(t),r.d(t,"default",function(){return n});var o=r("./src/demux/transmuxer.ts"),i=r("./src/events.ts"),l=r("./src/utils/logger.ts"),d=r("./node_modules/eventemitter3/index.js");function n(n){function s(e,t){n.postMessage({event:e,data:t})}var a=new d.EventEmitter;a.on(i.Events.FRAG_DECRYPTED,s),a.on(i.Events.ERROR,s),n.addEventListener("message",function(e){var t=e.data;switch(t.cmd){case"init":var r=JSON.parse(t.config);n.transmuxer=new o.default(a,t.typeSupported,r,t.vendor,t.id),Object(l.enableLogs)(r.debug),s("init",null);break;case"configure":n.transmuxer.configure(t.config);break;case"demux":r=n.transmuxer.push(t.data,t.decryptdata,t.chunkMeta,t.state);Object(o.isPromise)(r)?r.then(function(e){u(n,e)}):u(n,r);break;case"flush":var i=t.chunkMeta,r=n.transmuxer.flush(i);Object(o.isPromise)(r)?r.then(function(e){c(n,e,i)}):c(n,r,i)}})}function u(e,t){var r,i,n;((r=t.remuxResult).audio||r.video||r.text||r.id3||r.initSegment)&&(r=[],i=(n=t.remuxResult).audio,n=n.video,i&&s(r,i),n&&s(r,n),e.postMessage({event:"transmuxComplete",data:t},r))}function s(e,t){t.data1&&e.push(t.data1.buffer),t.data2&&e.push(t.data2.buffer)}function c(t,e,r){e.forEach(function(e){u(t,e)}),t.postMessage({event:"flush",data:r})}},"./src/demux/transmuxer.ts":function(e,t,r){r.r(t),r.d(t,"default",function(){return c}),r.d(t,"isPromise",function(){return f}),r.d(t,"TransmuxConfig",function(){return A}),r.d(t,"TransmuxState",function(){return g});var v,l=r("./src/events.ts"),d=r("./src/errors.ts"),i=r("./src/crypt/decrypter.ts"),t=r("./src/demux/aacdemuxer.ts"),m=r("./src/demux/mp4demuxer.ts"),n=r("./src/demux/tsdemuxer.ts"),s=r("./src/demux/mp3demuxer.ts"),a=r("./src/remux/mp4-remuxer.ts"),y=r("./src/remux/passthrough-remuxer.ts"),o=r("./src/demux/chunk-cache.ts"),b=r("./src/utils/mp4-tools.ts"),E=r("./src/utils/logger.ts");try{v=self.performance.now.bind(self.performance)}catch(e){E.logger.debug("Unable to use Performance API on this environment"),v=self.Date.now}var T=[{demux:n.default,remux:a.default},{demux:m.default,remux:y.default},{demux:t.default,remux:a.default},{demux:s.default,remux:a.default}],u=1024,c=(T.forEach(function(e){e=e.demux;u=Math.max(u,e.minProbeByteLength)}),(r=h.prototype).configure=function(e){this.transmuxConfig=e,this.decrypter&&this.decrypter.reset()},r.push=function(e,t,r,i){var n=this,s=r.transmuxing,e=(s.executeStart=v(),new Uint8Array(e)),a=this.cache,o=this.config,l=this.currentTransmuxState,d=this.transmuxConfig,t=(i&&(this.currentTransmuxState=i),u=null,u=0>4){if((w=E+5+e[E+4])===E+188)continue}else w=E+4;switch(S){case l:T&&(d&&(n=F(d))&&this.parseAVCPES(n,!1),d={data:[],size:0}),d&&(d.data.push(e.subarray(w,E+188)),d.size+=E+188-w);break;case u:T&&(h&&(n=F(h))&&(a.isAAC?this.parseAACPES(n):this.parseMPEGPES(n)),h={data:[],size:0}),h&&(h.data.push(e.subarray(w,E+188)),h.size+=E+188-w);break;case c:T&&(f&&(n=F(f))&&this.parseID3PES(n),f={data:[],size:0}),f&&(f.data.push(e.subarray(w,E+188)),f.size+=E+188-w);break;case 0:T&&(w+=e[w]+1),p=this._pmtId=(31&(R=e)[(y=w)+10])<<8|R[y+11];break;case p:T&&(w+=e[w]+1);var R=function(e,t,r,i){var n={audio:-1,avc:-1,id3:-1,isAAC:!0},s=t+3+((15&e[t+1])<<8|e[t+2])-4;for(t+=12+((15&e[t+10])<<8|e[t+11]);te.size-6)return null;var l=t[7],d=(192&l&&(i=536870912*(14&t[9])+4194304*(255&t[10])+16384*(254&t[11])+128*(255&t[12])+(254&t[13])/2,64&l?54e5=e[r-1].pts)e.push(t);else for(var i=r-1;0<=i;i--)if(t.ptst)return i;return 0}},{key:"maxAutoLevel",get:function(){var e=this.levels,t=this.autoLevelCapping;return-1===t&&e&&e.length?e.length-1:t}},{key:"nextAutoLevel",get:function(){return Math.min(Math.max(this.abrController.nextAutoLevel,this.minAutoLevel),this.maxAutoLevel)},set:function(e){this.abrController.nextAutoLevel=Math.max(this.minAutoLevel,e)}},{key:"audioTracks",get:function(){var e=this.audioTrackController;return e?e.audioTracks:[]}},{key:"audioTrack",get:function(){var e=this.audioTrackController;return e?e.audioTrack:-1},set:function(e){var t=this.audioTrackController;t&&(t.audioTrack=e)}},{key:"subtitleTracks",get:function(){var e=this.subtitleTrackController;return e?e.subtitleTracks:[]}},{key:"subtitleTrack",get:function(){var e=this.subtitleTrackController;return e?e.subtitleTrack:-1},set:function(e){var t=this.subtitleTrackController;t&&(t.subtitleTrack=e)}},{key:"media",get:function(){return this._media}},{key:"subtitleDisplay",get:function(){var e=this.subtitleTrackController;return!!e&&e.subtitleDisplay},set:function(e){var t=this.subtitleTrackController;t&&(t.subtitleDisplay=e)}},{key:"lowLatencyMode",get:function(){return this.config.lowLatencyMode},set:function(e){this.config.lowLatencyMode=e}},{key:"liveSyncPosition",get:function(){return this.latencyController.liveSyncPosition}},{key:"latency",get:function(){return this.latencyController.latency}},{key:"maxLatency",get:function(){return this.latencyController.maxLatency}},{key:"targetLatency",get:function(){return this.latencyController.targetLatency}},{key:"drift",get:function(){return this.latencyController.drift}},{key:"forceStartLoad",get:function(){return this.streamController.forceStartLoad}}]),o(r,t);var l=E;function E(e){void 0===e&&(e={}),this.config=void 0,this.userConfig=void 0,this.coreComponents=void 0,this.networkControllers=void 0,this._emitter=new b.EventEmitter,this._autoLevelCapping=void 0,this.abrController=void 0,this.bufferController=void 0,this.capLevelController=void 0,this.latencyController=void 0,this.levelController=void 0,this.streamController=void 0,this.audioTrackController=void 0,this.subtitleTrackController=void 0,this.emeController=void 0,this.cmcdController=void 0,this._media=null,this.url=null;var t=this.config=Object(y.mergeConfig)(E.DefaultConfig,e),e=(this.userConfig=e,Object(v.enableLogs)(t.debug),this._autoLevelCapping=-1,t.progressive&&Object(y.enableStreamingMode)(t),t.abrController),r=t.bufferController,i=t.capLevelController,n=t.fpsController,e=this.abrController=new e(this),r=this.bufferController=new r(this),i=this.capLevelController=new i(this),n=new n(this),s=new c.default(this),a=new h.default(this),o=new f.default(this),l=this.levelController=new g.default(this),d=new p.FragmentTracker(this),u=this.streamController=new m.default(this,d),l=(i.setStreamController(u),n.setStreamController(u),[l,u]),u=(this.networkControllers=l,[s,a,e,r,i,n,o,d]);this.audioTrackController=this.createController(t.audioTrackController,null,l),this.createController(t.audioStreamController,d,l),this.subtitleTrackController=this.createController(t.subtitleTrackController,null,l),this.createController(t.subtitleStreamController,d,l),this.createController(t.timelineController,null,u),this.emeController=this.createController(t.emeController,null,u),this.cmcdController=this.createController(t.cmcdController,null,u),this.latencyController=this.createController(A.default,null,u),this.coreComponents=u}l.defaultConfig=void 0},"./src/is-supported.ts":function(e,t,r){r.r(t),r.d(t,"isSupported",function(){return s}),r.d(t,"changeTypeSupported",function(){return a});var i=r("./src/utils/mediasource-helper.ts");function n(){return self.SourceBuffer||self.WebKitSourceBuffer}function s(){var e=Object(i.getMediaSource)();if(!e)return!1;var t=n(),e=e&&"function"==typeof e.isTypeSupported&&e.isTypeSupported('video/mp4; codecs="avc1.42E01E,mp4a.40.2"'),t=!t||t.prototype&&"function"==typeof t.prototype.appendBuffer&&"function"==typeof t.prototype.remove;return!!e&&!!t}function a(){var e=n();return"function"==typeof(null==e||null==(e=e.prototype)?void 0:e.changeType)}},"./src/loader/fragment-loader.ts":function(e,t,r){r.r(t),r.d(t,"default",function(){return l}),r.d(t,"LoadError",function(){return g});var i=r("./src/polyfills/number.ts"),h=r("./src/errors.ts");function n(e){var r="function"==typeof Map?new Map:void 0;return(n=function(e){if(null===e||-1===Function.toString.call(e).indexOf("[native code]"))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==r){if(r.has(e))return r.get(e);r.set(e,t)}function t(){return s(e,arguments,o(this).constructor)}return t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),a(t,e)})(e)}function s(e,t,r){return(s=function(){if("undefined"==typeof Reflect||!Reflect.construct)return;if(Reflect.construct.sham)return;if("function"==typeof Proxy)return 1;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),1}catch(e){return}}()?Reflect.construct:function(e,t,r){var i=[null],t=(i.push.apply(i,t),new(Function.bind.apply(e,i)));return r&&a(t,r.prototype),t}).apply(null,arguments)}function a(e,t){return(a=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function o(e){return(o=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var f=Math.pow(2,17),l=((t=d.prototype).destroy=function(){this.loader&&(this.loader.destroy(),this.loader=null)},t.abort=function(){this.loader&&this.loader.abort()},t.load=function(a,o){var l=this,e=a.url;if(!e)return Promise.reject(new g({type:h.ErrorTypes.NETWORK_ERROR,details:h.ErrorDetails.FRAG_LOAD_ERROR,fatal:!1,frag:a,networkDetails:null},"Fragment does not have a "+(e?"part list":"url")));this.abort();var r=this.config,d=r.fLoader,u=r.loader;return new Promise(function(n,i){l.loader&&l.loader.destroy();var s=l.loader=a.loader=new(d||u)(r),e=A(a),t={timeout:r.fragLoadingTimeOut,maxRetry:0,retryDelay:0,maxRetryDelay:r.fragLoadingMaxRetryTimeout,highWaterMark:f};a.stats=s.stats,s.load(e,t,{onSuccess:function(e,t,r,i){l.resetLoader(a,s),n({frag:a,part:null,payload:e.data,networkDetails:i})},onError:function(e,t,r){l.resetLoader(a,s),i(new g({type:h.ErrorTypes.NETWORK_ERROR,details:h.ErrorDetails.FRAG_LOAD_ERROR,fatal:!1,frag:a,response:e,networkDetails:r}))},onAbort:function(e,t,r){l.resetLoader(a,s),i(new g({type:h.ErrorTypes.NETWORK_ERROR,details:h.ErrorDetails.INTERNAL_ABORTED,fatal:!1,frag:a,networkDetails:r}))},onTimeout:function(e,t,r){l.resetLoader(a,s),i(new g({type:h.ErrorTypes.NETWORK_ERROR,details:h.ErrorDetails.FRAG_LOAD_TIMEOUT,fatal:!1,frag:a,networkDetails:r}))},onProgress:function(e,t,r,i){o&&o({frag:a,part:null,payload:r,networkDetails:i})}})})},t.loadPart=function(a,o,l){var d=this,r=(this.abort(),this.config),u=r.fLoader,c=r.loader;return new Promise(function(n,i){d.loader&&d.loader.destroy();var s=d.loader=a.loader=new(u||c)(r),e=A(a,o),t={timeout:r.fragLoadingTimeOut,maxRetry:0,retryDelay:0,maxRetryDelay:r.fragLoadingMaxRetryTimeout,highWaterMark:f};o.stats=s.stats,s.load(e,t,{onSuccess:function(e,t,r,i){d.resetLoader(a,s),d.updateStatsFromPart(a,o);e={frag:a,part:o,payload:e.data,networkDetails:i};l(e),n(e)},onError:function(e,t,r){d.resetLoader(a,s),i(new g({type:h.ErrorTypes.NETWORK_ERROR,details:h.ErrorDetails.FRAG_LOAD_ERROR,fatal:!1,frag:a,part:o,response:e,networkDetails:r}))},onAbort:function(e,t,r){a.stats.aborted=o.stats.aborted,d.resetLoader(a,s),i(new g({type:h.ErrorTypes.NETWORK_ERROR,details:h.ErrorDetails.INTERNAL_ABORTED,fatal:!1,frag:a,part:o,networkDetails:r}))},onTimeout:function(e,t,r){d.resetLoader(a,s),i(new g({type:h.ErrorTypes.NETWORK_ERROR,details:h.ErrorDetails.FRAG_LOAD_TIMEOUT,fatal:!1,frag:a,part:o,networkDetails:r}))}})})},t.updateStatsFromPart=function(e,t){var r=e.stats,i=t.stats,n=i.total,e=(r.loaded+=i.loaded,n?(n=((e=Math.round(e.duration/t.duration))-(t=Math.min(Math.round(r.loaded/n),e)))*Math.round(r.loaded/t),r.total=r.loaded+n):r.total=Math.max(r.loaded,r.total),r.loading),t=i.loading;e.start?e.first+=t.first-t.start:(e.start=t.start,e.first=t.first),e.end=t.end},t.resetLoader=function(e,t){e.loader=null,this.loader===t&&(self.clearTimeout(this.partLoadTimeout),this.loader=null),t.destroy()},d);function d(e){this.config=void 0,this.loader=null,this.partLoadTimeout=-1,this.config=e}function A(e,t){var r=(t=void 0===t?null:t)||e,e={frag:e,part:t,responseType:"arraybuffer",url:r.url,headers:{},rangeStart:0,rangeEnd:0},t=r.byteRangeStartOffset,r=r.byteRangeEndOffset;return Object(i.isFiniteNumber)(t)&&Object(i.isFiniteNumber)(r)&&(e.rangeStart=t,e.rangeEnd=r),e}u=n(Error),r=u,(t=c).prototype=Object.create(r.prototype),a(t.prototype.constructor=t,r);var u,g=c;function c(e){for(var t,r=arguments.length,i=new Array(1>8*(15-r)&255;return t},r.setDecryptDataFromLevelKey=function(e,t){var r=e;return"AES-128"===(null==e?void 0:e.method)&&e.uri&&!e.iv&&((r=o.LevelKey.fromURI(e.uri)).method=e.method,r.iv=this.createInitializationVector(t),r.keyFormat="identity"),r},r.setElementaryStreamInfo=function(e,t,r,i,n,s){void 0===s&&(s=!1);var a=this.elementaryStreams,o=a[e];o?(o.startPTS=Math.min(o.startPTS,t),o.endPTS=Math.max(o.endPTS,r),o.startDTS=Math.min(o.startDTS,i),o.endDTS=Math.max(o.endDTS,n)):a[e]={startPTS:t,endPTS:r,startDTS:i,endDTS:n,partial:s}},r.clearElementaryStreamInfo=function(){var e=this.elementaryStreams;e[i.AUDIO]=null,e[i.VIDEO]=null,e[i.AUDIOVIDEO]=null},h(y,[{key:"decryptdata",get:function(){return this.levelkey||this._decryptdata?(!this._decryptdata&&this.levelkey&&("number"!=typeof(e=this.sn)&&(this.levelkey&&"AES-128"===this.levelkey.method&&!this.levelkey.iv&&a.logger.warn('missing IV for initialization segment with method="'+this.levelkey.method+'" - compliance issue'),e=0),this._decryptdata=this.setDecryptDataFromLevelKey(this.levelkey,e)),this._decryptdata):null;var e}},{key:"end",get:function(){return this.start+this.duration}},{key:"endProgramDateTime",get:function(){if(null===this.programDateTime)return null;if(!Object(n.isFiniteNumber)(this.programDateTime))return null;var e=Object(n.isFiniteNumber)(this.duration)?this.duration:0;return this.programDateTime+1e3*e}},{key:"encrypted",get:function(){var e;return!(null==(e=this.decryptdata)||!e.keyFormat||!this.decryptdata.uri)}}]),y),m=(d(v,f=g),h(v,[{key:"start",get:function(){return this.fragment.start+this.fragOffset}},{key:"end",get:function(){return this.start+this.duration}},{key:"loaded",get:function(){var e=this.elementaryStreams;return!!(e.audio||e.video||e.audiovideo)}}]),v);function v(e,t,r,i,n){(r=f.call(this,r)||this).fragOffset=0,r.duration=0,r.gap=!1,r.independent=!1,r.relurl=void 0,r.fragment=void 0,r.index=void 0,r.stats=new l.LoadStats,r.duration=e.decimalFloatingPoint("DURATION"),r.gap=e.bool("GAP"),r.independent=e.bool("INDEPENDENT"),r.relurl=e.enumeratedString("URI"),r.fragment=t,r.index=i;t=e.enumeratedString("BYTERANGE");return t&&r.setByteRange(t,n),n&&(r.fragOffset=n.fragOffset+n.duration),r}function y(e,t){return(t=A.call(this,t)||this)._decryptdata=null,t.rawProgramDateTime=null,t.programDateTime=null,t.tagList=[],t.duration=0,t.sn=0,t.levelkey=void 0,t.type=void 0,t.loader=null,t.level=-1,t.cc=0,t.startPTS=void 0,t.endPTS=void 0,t.appendedPTS=void 0,t.startDTS=void 0,t.endDTS=void 0,t.start=0,t.deltaPTS=void 0,t.maxStartPTS=void 0,t.minEndPTS=void 0,t.stats=new l.LoadStats,t.urlId=0,t.data=void 0,t.bitrateTest=!1,t.title=null,t.initSegment=null,t.type=e,t}function b(e){var t;this._byteRange=null,this._url=null,this.baseurl=void 0,this.relurl=void 0,this.elementaryStreams=((t={})[i.AUDIO]=null,t[i.VIDEO]=null,t[i.AUDIOVIDEO]=null,t),this.baseurl=e}},"./src/loader/key-loader.ts":function(e,t,r){r.r(t),r.d(t,"default",function(){return n});var a=r("./src/events.ts"),i=r("./src/errors.ts"),o=r("./src/utils/logger.ts"),n=((t=s.prototype)._registerListeners=function(){this.hls.on(a.Events.KEY_LOADING,this.onKeyLoading,this)},t._unregisterListeners=function(){this.hls.off(a.Events.KEY_LOADING,this.onKeyLoading)},t.destroy=function(){for(var e in this._unregisterListeners(),this.loaders){e=this.loaders[e];e&&e.destroy()}this.loaders={}},t.onKeyLoading=function(e,t){var r,i,t=t.frag,n=t.type,s=this.loaders[n];t.decryptdata?(r=t.decryptdata.uri)!==this.decrypturl||null===this.decryptkey?(i=this.hls.config,s&&(o.logger.warn("abort previous key loader for type:"+n),s.abort()),r?(s=i.loader,n=t.loader=this.loaders[n]=new s(i),this.decrypturl=r,this.decryptkey=null,s={url:r,frag:t,responseType:"arraybuffer"},r={timeout:i.fragLoadingTimeOut,maxRetry:0,retryDelay:i.fragLoadingRetryDelay,maxRetryDelay:i.fragLoadingMaxRetryTimeout,highWaterMark:0},i={onSuccess:this.loadsuccess.bind(this),onError:this.loaderror.bind(this),onTimeout:this.loadtimeout.bind(this)},n.load(s,r,i)):o.logger.warn("key uri is falsy")):this.decryptkey&&(t.decryptdata.key=this.decryptkey,this.hls.trigger(a.Events.KEY_LOADED,{frag:t})):o.logger.warn("Missing decryption data on fragment in onKeyLoading")},t.loadsuccess=function(e,t,r){r=r.frag;r.decryptdata?(this.decryptkey=r.decryptdata.key=new Uint8Array(e.data),r.loader=null,delete this.loaders[r.type],this.hls.trigger(a.Events.KEY_LOADED,{frag:r})):o.logger.error("after key load, decryptdata unset")},t.loaderror=function(e,t){var t=t.frag,r=t.loader;r&&r.abort(),delete this.loaders[t.type],this.hls.trigger(a.Events.ERROR,{type:i.ErrorTypes.NETWORK_ERROR,details:i.ErrorDetails.KEY_LOAD_ERROR,fatal:!1,frag:t,response:e})},t.loadtimeout=function(e,t){var t=t.frag,r=t.loader;r&&r.abort(),delete this.loaders[t.type],this.hls.trigger(a.Events.ERROR,{type:i.ErrorTypes.NETWORK_ERROR,details:i.ErrorDetails.KEY_LOAD_TIMEOUT,fatal:!1,frag:t})},s);function s(e){this.hls=void 0,this.loaders={},this.decryptkey=null,this.decrypturl=null,this.hls=e,this._registerListeners()}},"./src/loader/level-details.ts":function(e,t,r){r.r(t),r.d(t,"LevelDetails",function(){return s});var i=r("./src/polyfills/number.ts");function n(e,t){for(var r=0;re.endSN||0>24&255,o[1]=t>>16&255,o[2]=t>>8&255,o[3]=255&t,o.set(e,4),s=0,t=8;s>24&255,e>>16&255,e>>8&255,255&e,r>>24,r>>16&255,r>>8&255,255&r,t>>24,t>>16&255,t>>8&255,255&t,85,196,0,0]))},c.mdia=function(e){return c.box(c.types.mdia,c.mdhd(e.timescale,e.duration),c.hdlr(e.type),c.minf(e))},c.mfhd=function(e){return c.box(c.types.mfhd,new Uint8Array([0,0,0,0,e>>24,e>>16&255,e>>8&255,255&e]))},c.minf=function(e){return"audio"===e.type?c.box(c.types.minf,c.box(c.types.smhd,c.SMHD),c.DINF,c.stbl(e)):c.box(c.types.minf,c.box(c.types.vmhd,c.VMHD),c.DINF,c.stbl(e))},c.moof=function(e,t,r){return c.box(c.types.moof,c.mfhd(e),c.traf(r,t))},c.moov=function(e){for(var t=e.length,r=[];t--;)r[t]=c.trak(e[t]);return c.box.apply(null,[c.types.moov,c.mvhd(e[0].timescale,e[0].duration)].concat(r).concat(c.mvex(e)))},c.mvex=function(e){for(var t=e.length,r=[];t--;)r[t]=c.trex(e[t]);return c.box.apply(null,[c.types.mvex].concat(r))},c.mvhd=function(e,t){t*=e;var r=Math.floor(t/(1+s)),t=Math.floor(t%(1+s)),e=new Uint8Array([1,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,e>>24&255,e>>16&255,e>>8&255,255&e,r>>24,r>>16&255,r>>8&255,255&r,t>>24,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 c.box(c.types.mvhd,e)},c.sdtp=function(e){for(var t,r=e.samples||[],i=new Uint8Array(4+r.length),n=0;n>>8&255),i.push(255&r),i=i.concat(Array.prototype.slice.call(t));for(s=0;s>>8&255),n.push(255&r),n=n.concat(Array.prototype.slice.call(t));var a=c.box(c.types.avcC,new Uint8Array([1,i[3],i[4],i[5],255,224|e.sps.length].concat(i).concat([e.pps.length]).concat(n))),o=e.width,l=e.height,d=e.pixelRatio[0],u=e.pixelRatio[1];return c.box(c.types.avc1,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,o>>8&255,255&o,l>>8&255,255&l,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]),a,c.box(c.types.btrt,new Uint8Array([0,28,156,128,0,45,198,192,0,45,198,192])),c.box(c.types.pasp,new Uint8Array([d>>24,d>>16&255,d>>8&255,255&d,u>>24,u>>16&255,u>>8&255,255&u])))},c.esds=function(e){var t=e.config.length;return new Uint8Array([0,0,0,0,3,23+t,0,1,0,4,15+t,64,21,0,0,0,0,0,0,0,0,0,0,0,5].concat([t]).concat(e.config).concat([6,1,2]))},c.mp4a=function(e){var t=e.samplerate;return c.box(c.types.mp4a,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,e.channelCount,0,16,0,0,0,0,t>>8&255,255&t,0,0]),c.box(c.types.esds,c.esds(e)))},c.mp3=function(e){var t=e.samplerate;return c.box(c.types[".mp3"],new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,e.channelCount,0,16,0,0,0,0,t>>8&255,255&t,0,0]))},c.stsd=function(e){return"audio"===e.type?e.isAAC||"mp3"!==e.codec?c.box(c.types.stsd,c.STSD,c.mp4a(e)):c.box(c.types.stsd,c.STSD,c.mp3(e)):c.box(c.types.stsd,c.STSD,c.avc1(e))},c.tkhd=function(e){var t=e.id,r=e.duration*e.timescale,i=e.width,e=e.height,n=Math.floor(r/(1+s)),r=Math.floor(r%(1+s));return c.box(c.types.tkhd,new Uint8Array([1,0,0,7,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,t>>24&255,t>>16&255,t>>8&255,255&t,0,0,0,0,n>>24,n>>16&255,n>>8&255,255&n,r>>24,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,i>>8&255,255&i,0,0,e>>8&255,255&e,0,0]))},c.traf=function(e,t){var r=c.sdtp(e),i=e.id,n=Math.floor(t/(1+s)),t=Math.floor(t%(1+s));return c.box(c.types.traf,c.box(c.types.tfhd,new Uint8Array([0,0,0,0,i>>24,i>>16&255,i>>8&255,255&i])),c.box(c.types.tfdt,new Uint8Array([1,0,0,0,n>>24,n>>16&255,n>>8&255,255&n,t>>24,t>>16&255,t>>8&255,255&t])),c.trun(e,r.length+16+20+8+16+8+8),r)},c.trak=function(e){return e.duration=e.duration||4294967295,c.box(c.types.trak,c.tkhd(e),c.mdia(e))},c.trex=function(e){e=e.id;return c.box(c.types.trex,new Uint8Array([0,0,0,0,e>>24,e>>16&255,e>>8&255,255&e,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]))},c.trun=function(e,t){var r,i,n,s,a,o=e.samples||[],l=o.length,e=12+16*l,d=new Uint8Array(e);for(d.set([0,0,15,1,l>>>24&255,l>>>16&255,l>>>8&255,255&l,(t+=8+e)>>>24&255,t>>>16&255,t>>>8&255,255&t],0),r=0;r>>24&255,i>>>16&255,i>>>8&255,255&i,n>>>24&255,n>>>16&255,n>>>8&255,255&n,s.isLeading<<2|s.dependsOn,s.isDependedOn<<6|s.hasRedundancy<<4|s.paddingValue<<1|s.isNonSync,61440&s.degradPrio,15&s.degradPrio,a>>>24&255,a>>>16&255,a>>>8&255,255&a],12+16*r);return c.box(c.types.trun,d)},c.initSegment=function(e){c.types||c.init();var e=c.moov(e),t=new Uint8Array(c.FTYP.byteLength+e.byteLength);return t.set(c.FTYP),t.set(e,c.FTYP.byteLength),t},c);function c(){}r.types=void 0,r.HDLR_TYPES=void 0,r.STTS=void 0,r.STSC=void 0,r.STCO=void 0,r.STSZ=void 0,r.VMHD=void 0,r.SMHD=void 0,r.STSD=void 0,r.FTYP=void 0,r.DINF=void 0,t.default=r},"./src/remux/mp4-remuxer.ts":function(e,t,r){r.r(t),r.d(t,"default",function(){return i}),r.d(t,"normalizePts",function(){return Z});var h=r("./src/polyfills/number.ts"),M=r("./src/remux/aac-helper.ts"),W=r("./src/remux/mp4-generator.ts"),K=r("./src/events.ts"),Y=r("./src/errors.ts"),Q=r("./src/utils/logger.ts"),T=r("./src/types/loader.ts"),z=r("./src/utils/timescale-conversion.ts");function q(){return(q=Object.assign||function(e){for(var t=1;tm.pts&&(A=Math.max(Math.min(A,m.pts-m.dts),-18e3)),m.dtsNumber.MAX_SAFE_INTEGER?1/0:e},r.hexadecimalInteger=function(e){if(this[e]){for(var t=(1&(t=(this[e]||"0x").slice(2)).length?"0":"")+t,r=new Uint8Array(t.length/2),i=0;iNumber.MAX_SAFE_INTEGER?1/0:e},r.decimalFloatingPoint=function(e){return parseFloat(this[e])},r.optionalFloat=function(e,t){e=this[e];return e?parseFloat(e):t},r.enumeratedString=function(e){return this[e]},r.bool=function(e){return"YES"===this[e]},r.decimalResolution=function(e){e=i.exec(this[e]);if(null!==e)return{width:parseInt(e[1],10),height:parseInt(e[2],10)}},a.parseAttrList=function(e){var t,r={};for(n.lastIndex=0;null!==(t=n.exec(e));){var i=t[2];0===i.indexOf('"')&&i.lastIndexOf('"')===i.length-1&&(i=i.slice(1,-1)),r[t[1]]=i}return r},a);function a(e){for(var t in e="string"==typeof e?a.parseAttrList(e):e)e.hasOwnProperty(t)&&(this[t]=e[t])}},"./src/utils/binary-search.ts":function(e,t,r){r.r(t),t.default={search:function(e,t){for(var r,i,n=0,s=e.length-1;n<=s;){var a=t(i=e[r=(n+s)/2|0]);if(0=r.start(i)&&t<=r.end(i))return!0}catch(e){}return!1},a.bufferInfo=function(e,t,r){try{if(e){for(var i=a.getBuffered(e),n=[],s=0;ss&&(i[a-1].end=e[n].end):i.push(e[n])):i.push(e[n])}else i=e;for(var o,l=0,d=t,u=t,c=0;c=e&&i.logger.log(this.time+" ["+e+"] "+t)},k),p=((r=D.prototype).reset=function(){this.foreground="white",this.underline=!1,this.italics=!1,this.background="black",this.flash=!1},r.setStyles=function(e){for(var t=["foreground","underline","italics","background","flash"],r=0;ra&&(this.logger.log(d.DEBUG,"Too large cursor position "+this.pos),this.pos=a)},r.moveCursor=function(e){var t=this.pos+e;if(1=a?this.logger.log(d.ERROR,"Cannot insert "+e.toString(16)+" ("+t+") at position "+this.pos+". Skipping it!"):(this.chars[this.pos].setChar(t,this.currPenState),this.moveCursor(1))},r.clearFromPos=function(e){for(var t=e;t ("+l([a,o])+")"),!(r=(r=(r=(r=this.parseCmd(a,o))?r:this.parseMidrow(a,o))||this.parsePAC(a,o))||this.parseBackgroundAttributes(a,o))&&(i=this.parseChars(a,o))&&((s=this.currentChannel)&&0r.startCC||e&&e.cc=this.minWeight_},r.getEstimate=function(){return this.canEstimate()?Math.min(this.fast_.getEstimate(),this.slow_.getEstimate()):this.defaultEstimate_},r.destroy=function(){},t.default=i},"./src/utils/ewma.ts":function(e,t,r){function i(e,t,r){void 0===t&&(t=0),void 0===r&&(r=0),this.halfLife=void 0,this.alpha_=void 0,this.estimate_=void 0,this.totalWeight_=void 0,this.halfLife=e,this.alpha_=e?Math.exp(Math.log(.5)/e):0,this.estimate_=t,this.totalWeight_=r}r.r(t),(r=i.prototype).sample=function(e,t){var r=Math.pow(this.alpha_,e);this.estimate_=t*(1-r)+r*this.estimate_,this.totalWeight_+=e},r.getTotalWeight=function(){return this.totalWeight_},r.getEstimate=function(){if(this.alpha_){var e=1-Math.pow(this.alpha_,this.totalWeight_);if(e)return this.estimate_/e}return this.estimate_},t.default=i},"./src/utils/fetch-loader.ts":function(e,t,r){r.r(t),r.d(t,"fetchSupported",function(){return l});var c=r("./src/polyfills/number.ts"),i=r("./src/loader/load-stats.ts"),d=r("./src/demux/chunk-cache.ts");function n(e){var r="function"==typeof Map?new Map:void 0;return(n=function(e){if(null===e||-1===Function.toString.call(e).indexOf("[native code]"))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==r){if(r.has(e))return r.get(e);r.set(e,t)}function t(){return s(e,arguments,o(this).constructor)}return t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),a(t,e)})(e)}function s(e,t,r){return(s=function(){if("undefined"==typeof Reflect||!Reflect.construct)return;if(Reflect.construct.sham)return;if("function"==typeof Proxy)return 1;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),1}catch(e){return}}()?Reflect.construct:function(e,t,r){var i=[null],t=(i.push.apply(i,t),new(Function.bind.apply(e,i)));return r&&a(t,r.prototype),t}).apply(null,arguments)}function a(e,t){return(a=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function o(e){return(o=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function h(){return(h=Object.assign||function(e){for(var t=1;t=a&&o(n,s,l.flush(),i)):o(n,s,e,i),r()}).catch(function(){return Promise.reject()})}()};r=u;function u(e){this.fetchSetup=void 0,this.requestTimeout=void 0,this.request=void 0,this.response=void 0,this.controller=void 0,this.context=void 0,this.config=null,this.callbacks=null,this.stats=void 0,this.loader=null,this.fetchSetup=e.fetchSetup||f,this.controller=new self.AbortController,this.stats=new i.LoadStats}function f(e,t){return new self.Request(e.url,t)}A=n(Error),p=A,(g=v).prototype=Object.create(p.prototype),a(g.prototype.constructor=g,p);var A,g,p,m=v;function v(e,t,r){return(e=A.call(this,e)||this).code=void 0,e.details=void 0,e.code=t,e.details=r,e}t.default=r},"./src/utils/imsc1-ttml-parser.ts":function(e,t,r){r.r(t),r.d(t,"IMSC1_CODEC",function(){return i}),r.d(t,"parseIMSC1",function(){return n});var a=r("./src/utils/mp4-tools.ts"),o=r("./src/utils/vttparser.ts"),f=r("./src/utils/vttcue.ts"),l=r("./src/demux/id3.ts"),d=r("./src/utils/timescale-conversion.ts"),A=r("./src/utils/webvtt-parser.ts");function g(){return(g=Object.assign||function(e){for(var t=1;t"):n)})}(e,"debug","log","info","warn","error");try{s.log()}catch(e){s=i}}else s=i}var o=i},"./src/utils/mediakeys-helper.ts":function(e,t,r){r.r(t),r.d(t,"KeySystems",function(){return i}),r.d(t,"requestMediaKeySystemAccess",function(){return n}),(r=i=i||{}).WIDEVINE="com.widevine.alpha",r.PLAYREADY="com.microsoft.playready";var i,n="undefined"!=typeof self&&self.navigator&&self.navigator.requestMediaKeySystemAccess?self.navigator.requestMediaKeySystemAccess.bind(self.navigator):null},"./src/utils/mediasource-helper.ts":function(e,t,r){function i(){return self.MediaSource||self.WebKitMediaSource}r.r(t),r.d(t,"getMediaSource",function(){return i})},"./src/utils/mp4-tools.ts":function(e,t,r){r.r(t),r.d(t,"bin2str",function(){return u}),r.d(t,"readUint16",function(){return h}),r.d(t,"readUint32",function(){return m}),r.d(t,"writeUint32",function(){return a}),r.d(t,"findBox",function(){return v}),r.d(t,"parseSegmentIndex",function(){return y}),r.d(t,"parseInitSegment",function(){return n}),r.d(t,"getStartDTS",function(){return o}),r.d(t,"getDuration",function(){return l}),r.d(t,"computeRawDurationFromSamples",function(){return b}),r.d(t,"offsetStartDTS",function(){return c}),r.d(t,"segmentValidRange",function(){return f}),r.d(t,"appendUint8Array",function(){return A});var i=r("./src/utils/typed-array.ts"),p=r("./src/loader/fragment.ts"),s=Math.pow(2,32)-1,d=[].push;function u(e){return String.fromCharCode.apply(null,e)}function h(e,t){"data"in e&&(t+=e.start,e=e.data);e=e[t]<<8|e[t+1];return e<0?65536+e:e}function m(e,t){"data"in e&&(t+=e.start,e=e.data);e=e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3];return e<0?4294967296+e:e}function a(e,t,r){"data"in e&&(t+=e.start,e=e.data),e[t]=r>>24,e[t+1]=r>>16&255,e[t+2]=r>>8&255,e[t+3]=255&r}function v(e,t){var r,i,n=[];if(!t.length)return n;for(var s=("data"in e?(r=e.data,i=e.start,e.end):(i=0,(r=e).byteLength)),a=i;a>>31)return console.warn("SIDX has hierarchical references (not supported)"),null;u=m(i,d);d+=4,r.push({referenceSize:c,subsegmentDuration:u,info:{duration:u/s,start:a,end:a+c-1}}),a+=c,n=d+=4}return{earliestPresentationTime:0,timescale:s,version:e,referencesCount:o,references:r,moovEndOffset:t}}function n(e){for(var r=[],t=v(e,["moov","trak"]),i=0;ie)&&(this.startTime=e),this.endTime=t,this.screen=r,this.timelineController.createCaptionsTrack(this.trackName)},r.reset=function(){this.cueRanges=[],this.startTime=null};var i=n;function n(e,t){this.timelineController=void 0,this.cueRanges=[],this.trackName=void 0,this.startTime=null,this.endTime=null,this.screen=null,this.timelineController=e,this.trackName=t}},"./src/utils/texttrack-utils.ts":function(e,t,r){r.r(t),r.d(t,"sendAddTrackEvent",function(){return i}),r.d(t,"addCueToTrack",function(){return s}),r.d(t,"clearCurrentCues",function(){return a}),r.d(t,"removeCuesInRange",function(){return o}),r.d(t,"getCuesInRange",function(){return l});var n=r("./src/utils/logger.ts");function i(e,t){var r;try{r=new Event("addtrack")}catch(e){(r=document.createEvent("Event")).initEvent("addtrack",!1,!1)}r.track=e,t.dispatchEvent(r)}function s(e,t){var r=e.mode;if("disabled"===r&&(e.mode="hidden"),e.cues&&!e.cues.getCueById(t.id))try{if(e.addCue(t),!e.cues.getCueById(t.id))throw new Error("addCue is failed for: "+t)}catch(r){n.logger.debug("[texttrack-utils]: "+r);var i=new self.TextTrackCue(t.startTime,t.endTime,t.text);i.id=t.id,e.addCue(i)}"disabled"===r&&(e.mode=r)}function a(e){var t=e.mode;if("disabled"===t&&(e.mode="hidden"),e.cues)for(var r=e.cues.length;r--;)e.removeCue(e.cues[r]);"disabled"===t&&(e.mode=t)}function o(e,t,r){var i=e.mode;if("disabled"===i&&(e.mode="hidden"),e.cues&&0e[r].endTime)return-1;for(var i=0,n=r;i<=n;){var s=Math.floor((n+i)/2);if(te[s].startTime&&i=t&&o.endTime<=r)i.push(o);else if(o.startTime>r)return i}return i}},"./src/utils/time-ranges.ts":function(e,t,r){r.r(t),t.default={toString:function(e){for(var t="",r=e.length,i=0;i/gi,"\n")}(r=A.prototype).parse=function(e){var i=this;function t(){for(var e=0,t=f(t=i.buffer);e>>0).toString()};function w(e,t,r){return i(e.toString())+i(t.toString())+i(r)}function n(e,t,r,n,s,a,i,o){var l,d=new v.VTTParser,e=Object(y.utf8ArrayToStr)(new Uint8Array(e)).trim().replace(T,"\n").split("\n"),u=[],c=Object(b.toMpegTsClockFromTimescale)(t,r),h="00:00.000",f=0,A=0,g=!0,p=!1;d.oncue=function(e){var t=n[s],r=n.ccOffset,i=(f-c)/9e4,r=(null!=t&&t.new&&(void 0!==A?r=n.ccOffset=t.start:function(e,t){var r,i=e[s],n=e[i.prevCC];if(!n||!n.new&&i.new)return e.ccOffset=e.presentationOffset=i.start,i.new=!1;for(;null!=(r=n)&&r.new;)e.ccOffset+=i.start-n.start,i.new=!1,n=e[(i=n).prevCC];e.presentationOffset=t}(n,i)),i&&(r=i-n.presentationOffset),p&&(t=e.endTime-e.startTime,i=Object(E.normalizePts)(9e4*(e.startTime+r-A),9e4*a)/9e4,e.startTime=i,e.endTime=i+t),e.text.trim());e.text=decodeURIComponent(encodeURIComponent(r)),e.id||(e.id=w(e.startTime,e.endTime,r)),0=e.maxRetry||400<=t&&t<499?(o.logger.error(t+" while loading "+n.url),this.callbacks.onError({code:t,text:s.statusText},n,s)):(o.logger.warn(t+" while loading "+n.url+", retrying in "+this.retryDelay+"..."),this.abortInternal(),this.loader=null,self.clearTimeout(this.retryTimeout),this.retryTimeout=self.setTimeout(this.loadInternal.bind(this),this.retryDelay),this.retryDelay=Math.min(2*this.retryDelay,e.maxRetryDelay),a.retry++)):(self.clearTimeout(this.requestTimeout),this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),e.timeout))))},r.loadtimeout=function(){o.logger.warn("timeout while loading "+this.context.url);var e=this.callbacks;e&&(this.abortInternal(),e.onTimeout(this.stats,this.context,this.loader))},r.loadprogress=function(e){var t=this.stats;t.loaded=e.loaded,e.lengthComputable&&(t.total=e.total)},r.getCacheAge=function(){var e,t=null;return t=this.loader&&n.test(this.loader.getAllResponseHeaders())?(e=this.loader.getResponseHeader("age"))?parseFloat(e):null:t},t.default=s}},i={},n.m=r,n.c=i,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var i in t)n.d(r,i,function(e){return t[e]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="/dist/",n(n.s="./src/hls.ts").default;function n(e){if(i[e])return i[e].exports;var t=i[e]={i:e,l:!1,exports:{}};return r[e].call(t.exports,t,t.exports,n),t.l=!0,t.exports}var r,i}())}))&&m.__esModule&&Object.prototype.hasOwnProperty.call(m,"default")?m.default:m;class _e extends b{constructor(e){super(),(this.player=e)._opt,this.hls=new I({}),this._initHls(),this._bindEvents(),this.player.debug.log("HlsDecoder","init")}destroy(){this.hls.destroy(),this.hls=null,this.player.debug.log("HlsDecoder","destroy")}_initHls(){this.hls.attachMedia(this.player.video.$videoElement)}_bindEvents(){const t=this.player,e=this.player.events["proxy"],r=this.hls,i=t.video.$videoElement;this.hls.on(I.Events.ERROR,(e,t)=>{if(t.fatal)switch(t.type){case I.ErrorTypes.NETWORK_ERROR:console.log("fatal network error encountered, try to recover"),this.hls.startLoad();break;case I.ErrorTypes.MEDIA_ERROR:console.log("fatal media error encountered, try to recover"),this.hls.recoverMediaError()}}),e(i,"timeupdate",e=>{this.hls&&(e=parseInt(e.timeStamp,10),t.handleRender(),console.log("hls.liveSyncPosition",r.liveSyncPosition),t.updateStats({ts:e}),t.emit(u.kBps,(r.bandwidthEstimate/8/1024).toFixed(2)),t.emit(u.videoTimeUpdate,e))}),this.hls.on(I.Events.MEDIA_ATTACHING,()=>{console.log("MEDIA_ATTACHING")}),this.hls.on(I.Events.MEDIA_ATTACHED,()=>{console.log("MEDIA_ATTACHED")}),this.hls.on(I.Events.MEDIA_DETACHING,()=>{console.log("MEDIA_DETACHING")}),this.hls.on(I.Events.MEDIA_DETACHED,()=>{console.log("MEDIA_DETACHED")}),this.hls.on(I.Events.BUFFER_RESET,()=>{console.log("BUFFER_RESET")}),this.hls.on(I.Events.BUFFER_CODECS,()=>{console.log("BUFFER_CODECS")}),this.hls.on(I.Events.BUFFER_CREATED,()=>{console.log("BUFFER_CREATED")}),this.hls.on(I.Events.BUFFER_APPENDING,()=>{console.log("BUFFER_APPENDING")}),this.hls.on(I.Events.BUFFER_APPENDED,()=>{console.log("BUFFER_APPENDED")}),this.hls.on(I.Events.BUFFER_EOS,()=>{console.log("fired when the stream is finished and we want to notify the media buffer that there will be no more data")}),this.hls.on(I.Events.BUFFER_FLUSHING,()=>{console.log("fired when the media buffer should be flushed")}),this.hls.on(I.Events.BUFFER_FLUSHED,()=>{console.log("fired when the media buffer has been flushed")}),this.hls.on(I.Events.MANIFEST_LOADING,()=>{console.log("MANIFEST_LOADING 开始加载playlist m3u8资源")}),this.hls.on(I.Events.MANIFEST_LOADED,(e,t)=>{console.log("MANIFEST_LOADED playlist m3u8文件加载完成",t)}),this.hls.on(I.Events.MANIFEST_PARSED,()=>{console.log("MANIFEST_PARSED playlist m3u8解析完成"),t._times.demuxStart||(t._times.demuxStart=l())}),this.hls.on(I.Events.LEVEL_LOADING,()=>{console.log("LEVEL_LOADING 加载特定码率的m3u8文件")}),this.hls.on(I.Events.LEVEL_LOADED,(e,t)=>{console.log("LEVEL_LOADED 特定码率的m3u8文件解析完成,拿到该码率对应的ts列表")}),this.hls.on(I.Events.FRAG_LOADING,()=>{console.log("FRAG_LOADING 开始加载某个ts分片文件,开始根据ts片下载时间预估带宽")}),this.hls.on(I.Events.FRAG_LOADED,()=>{console.log("FRAG_LOADED ts分片文件加载成功,开始转码"),t._times.decodeStart||(t._times.decodeStart=l())}),this.hls.on(I.Events.BUFFER_APPENDING,()=>{console.log("BUFFER_APPENDING 视频流赋给video标签"),t._times.videoStart||(t._times.videoStart=l(),t.handlePlayToRenderTimes())}),this.hls.on(I.Events.FRAG_LOADED,()=>{console.log("FRAG_LOADED")}),this.hls.on(I.Events.FRAG_DECRYPTED,()=>{console.log(" fired when a fragment decryption is completed")}),this.hls.on(I.Events.KEY_LOADING,()=>{console.log(" fired when a decryption key loading starts")}),this.hls.on(I.Events.KEY_LOADING,()=>{console.log(" fired when a fragment decryption is completed")}),this.hls.on(I.Events.FPS_DROP,e=>{console.log("FPS_DROP",e)}),this.hls.on(I.Events.FPS_DROP_LEVEL_CAPPING,e=>{console.log("FPS_DROP_LEVEL_CAPPING",e)})}loadSource(r){return new Promise((e,t)=>{this.hls.on(I.Events.MEDIA_ATTACHED,()=>{this.hls.loadSource(r),e()})})}}class Fe extends b{constructor(e){super(),this.player=e,this.rtcPeerConnection=null,this.videoStream=null,this._initRtcPeerConnection(),this.player.debug.log("WebrtcDecoder","init")}destroy(){this.rtcPeerConnection&&(this.rtcPeerConnection.close(),this.rtcPeerConnection=null),this.videoStream=null,this.player.video.$videoElement.srcObject=null,this.player.debug.log("WebrtcDecoder","destroy")}_initRtcPeerConnection(){const t=new RTCPeerConnection,r=this.player;t.addTransceiver("video",{direction:"recvonly"}),t.addTransceiver("audio",{direction:"recvonly"}),t.onsignalingstatechange=e=>{console.log("onsignalingstatechange",e)},t.oniceconnectionstatechange=e=>{console.log("oniceconnectionstatechange",t.iceConnectionState)},t.onicecandidate=e=>{console.log("onicecandidate",e)},t.ontrack=e=>{const t=r.video.$videoElement;console.log("ontrack",e),"video"===e.track.kind&&(e=e.streams[0],t.srcObject=e,this.videoStream=e)},t.onconnectionstatechange=e=>{r.debug.log("webrtcLoader","sdp connect status "+t.connectionState),t.connectionState},this.rtcPeerConnection=t}loadSource(n){return new Promise((t,r)=>{const i=this.rtcPeerConnection;i.createOffer().then(e=>{i.setLocalDescription(e),e=e.sdp,fetch(n,{method:"POST",mode:"cors",cache:"no-cache",credentials:"include",redirect:"follow",referrerPolicy:"no-referrer",headers:{"Content-Type":"application/sdp"},body:e}).then(e=>{e.text().then(e=>{this.player.debug.log("webrtcLoader","getWebRtcRemoteSdp response"),i.setRemoteDescription(new RTCSessionDescription({type:"answer",sdp:e})),t()}).catch(()=>{r()})}).catch(e=>{console.error(e),r(e)})}).catch(e=>{r(e)})})}}class Pe extends b{constructor(e,t){super(),this.$container=e,this._opt=Object.assign({},M,t),this.debug=new ee(this),this._opt.isHls||this._opt.isWebrtc||(this._opt.useWCS&&(this._opt.useWCS="VideoEncoder"in window),this._opt.useMSE&&(this._opt.useMSE=window.MediaSource&&window.MediaSource.isTypeSupported(Q))),this._opt.useMSE?(this._opt.useWCS&&this.debug.log("Player","useWCS set true->false"),this._opt.forceNoOffscreen||this.debug.log("Player","forceNoOffscreen set false->true"),this._opt.useWCS=!1,this._opt.forceNoOffscreen=!0):this._opt.useWCS,this._opt.forceNoOffscreen||("undefined"==typeof OffscreenCanvas?(this._opt.forceNoOffscreen=!0,this._opt.useOffscreen=!1):this._opt.useOffscreen=!0),this._opt.hasAudio||(this._opt.operateBtns.audio=!1),this._opt.hasControl=this._hasControl(),this._loading=!1,this._playing=!1,this._hasLoaded=!1,this._checkHeartTimeout=null,this._checkLoadingTimeout=null,this._startBpsTime=null,this._isPlayingBeforePageHidden=!1,this._stats={buf:0,fps:0,abps:0,vbps:0,ts:0},this._times={playInitStart:"",playStart:"",streamStart:"",streamResponse:"",demuxStart:"",decodeStart:"",videoStart:"",playTimestamp:"",streamTimestamp:"",streamResponseTimestamp:"",demuxTimestamp:"",decodeTimestamp:"",videoTimestamp:"",allTimestamp:""},this._videoTimestamp=0,this._audioTimestamp=0,r=this,Object.defineProperty(r,"rect",{get:()=>{const e=r.$container.getBoundingClientRect();return e.width=Math.max(e.width,r.$container.clientWidth),e.height=Math.max(e.height,r.$container.clientHeight),e}}),["bottom","height","left","right","top","width"].forEach(e=>{Object.defineProperty(r,e,{get:()=>r.rect[e]})}),this.events=new te(this),this.video=new ne(this),this._opt.hasAudio&&(this.audio=new oe(this)),this.recorder=new pe(this),this._opt.isHls?(this.hls=new _e(this),this.loaded=!0):this._opt.isWebrtc?(this.webrtc=new Fe(this),this.loaded=!0):this._onlyMseOrWcsVideo()?this.loaded=!0:this.decoderWorker=new me(this),this.stream=null,this.demux=null,this._opt.useWCS&&(this.webcodecsDecoder=new we(this)),this._opt.useMSE&&(this.mseDecoder=new Ie(this)),this.control=new ke(this),this.keepScreenOn=new Be(this);var r,i=this;try{const s=()=>{i.emit(c.fullscreen,i.fullscreen),i.fullscreen&&!i._opt.useMSE||i.resize()};y.on("change",s),i.events.destroys.push(()=>{y.off("change",s)})}catch(i){}if(i.on(u.decoderWorkerInit,()=>{i.debug.log("player","has loaded"),i.loaded=!0}),i.on(u.play,()=>{i.loading=!1}),i.on(u.fullscreen,e=>{if(e)try{y.request(i.$container).then(()=>{}).catch(e=>{i.webFullscreen=!0})}catch(e){i.webFullscreen=!0}else try{y.exit().then(()=>{}).catch(()=>{i.webFullscreen=!1})}catch(e){i.webFullscreen=!1}}),i.on(u.webFullscreen,e=>{e?i.$container.classList.add("jessibuca-fullscreen-web"):i.$container.classList.remove("jessibuca-fullscreen-web")}),i.on(u.resize,()=>{i.video.resize()}),i._opt.debug){const a=[u.timeUpdate];Object.keys(u).forEach(t=>{i.on(u[t],e=>{a.includes(t)||i.debug.log("player events",u[t],e)})}),Object.keys(h).forEach(t=>{i.on(h[t],e=>{i.debug.log("player event error",h[t],e)})})}{var n=this;const{_opt:o,debug:l,events:{proxy:d}}=n;o.supportDblclickFullscreen&&d(n.$container,"dblclick",()=>{n.fullscreen=!n.fullscreen}),d(document,"visibilitychange",()=>{o.hiddenAutoPause&&(l.log("visibilitychange",document.visibilityState,n._isPlayingBeforePageHidden),"visible"===document.visibilityState?n._isPlayingBeforePageHidden&&n.play():(n._isPlayingBeforePageHidden=n.playing,n.playing&&n.pause()))}),d(window,"fullscreenchange",()=>{null!==n.keepScreenOn&&"visible"===document.visibilityState&&n.enableWakeLock()})}this._opt.useWCS&&this.debug.log("Player","use WCS"),this._opt.useMSE&&this.debug.log("Player","use MSE"),this._opt.useOffscreen&&this.debug.log("Player","use offscreen"),this._opt.isHls&&this.debug.log("Player","use hls"),this._opt.isWebrtc&&this.debug.log("Player","use webrtc"),this.debug.log("Player options",this._opt)}destroy(){this._loading=!1,this._playing=!1,this._hasLoaded=!1,this._times={playInitStart:"",playStart:"",streamStart:"",streamResponse:"",demuxStart:"",decodeStart:"",videoStart:"",playTimestamp:"",streamTimestamp:"",streamResponseTimestamp:"",demuxTimestamp:"",decodeTimestamp:"",videoTimestamp:"",allTimestamp:""},this.decoderWorker&&(this.decoderWorker.destroy(),this.decoderWorker=null),this.video&&(this.video.destroy(),this.video=null),this.audio&&(this.audio.destroy(),this.audio=null),this.stream&&(this.stream.destroy(),this.stream=null),this.recorder&&(this.recorder.destroy(),this.recorder=null),this.control&&(this.control.destroy(),this.control=null),this.webcodecsDecoder&&(this.webcodecsDecoder.destroy(),this.webcodecsDecoder=null),this.mseDecoder&&(this.mseDecoder.destroy(),this.mseDecoder=null),this.demux&&(this.demux.destroy(),this.demux=null),this.hls&&(this.hls.destroy(),this.hls=null),this.events&&(this.events.destroy(),this.events=null),this.clearCheckHeartTimeout(),this.clearCheckLoadingTimeout(),this.releaseWakeLock(),this.keepScreenOn=null,this.resetStats(),this._audioTimestamp=0,this._videoTimestamp=0,this.emit("destroy"),this.off(),this.debug.log("play","destroy end")}set fullscreen(e){f()?(this.emit(u.webFullscreen,e),setTimeout(()=>{this.updateOption({rotate:e?270:0}),this.resize()},10)):this.emit(u.fullscreen,e)}get fullscreen(){return document.isFullScreen||document.mozIsFullScreen||document.webkitIsFullScreen||this.webFullscreen}set webFullscreen(e){this.emit(u.webFullscreen,e)}get webFullscreen(){return this.$container.classList.contains("jessibuca-fullscreen-web")}set loaded(e){this._hasLoaded=e}get loaded(){return this._hasLoaded||this._opt.isHls||this._opt.isWebrtc}set playing(e){e&&(this.loading=!1),this.playing!==e&&(this._playing=e,this.emit(u.playing,e),this.emit(u.volumechange,this.volume),e?this.emit(u.play):this.emit(u.pause))}get playing(){return this._playing}get volume(){return this.audio&&this.audio.volume||0}set volume(e){this.audio&&this.audio.setVolume(e)}set loading(e){this.loading!==e&&(this._loading=e,this.emit(u.loading,this._loading))}get loading(){return this._loading}set recording(e){e?this.playing&&this.recorder.startRecord():this.recorder.stopRecordAndSave()}get recording(){return this.recorder&&this.recorder.recording}set audioTimestamp(e){null!==e&&(this._audioTimestamp=e)}get audioTimestamp(){return this._audioTimestamp}set videoTimestamp(e){null!==e&&(this._videoTimestamp=e,this._opt.useWCS||this._opt.useMSE||this.audioTimestamp&&this.videoTimestamp&&this.audio&&this.audio.emit(u.videoSyncAudio,{audioTimestamp:this.audioTimestamp,videoTimestamp:this.videoTimestamp,diff:this.audioTimestamp-this.videoTimestamp}))}get videoTimestamp(){return this._videoTimestamp}updateOption(e){this._opt=Object.assign({},this._opt,e)}init(){return new Promise((e,t)=>{this.stream||(this.stream=new fe(this)),this._opt.isHls?(this.hls||(this.hls=new _e(this),this.loaded=!0),e()):this._opt.isWebrtc?(this.webrtc||(this.webrtc=new Fe(this),this.loaded=!0),e()):(this.demux||(this.demux=new Se(this)),this._opt.useWCS&&!this.webcodecsDecoder&&(this.webcodecsDecoder=new we(this)),this._opt.useMSE&&!this.mseDecoder&&(this.mseDecoder=new Ie(this)),this.decoderWorker||this._onlyMseOrWcsVideo()?e():(this.decoderWorker=new me(this),this.once(u.decoderWorkerInit,()=>{e()})))})}play(r){return new Promise((e,t)=>{if(!r&&!this._opt.url)return t();this.loading=!0,this.playing=!1,this._times.playInitStart=l(),r=r||this._opt.url,this._opt.url=r,this.clearCheckHeartTimeout(),this.init().then(()=>{this._times.playStart=l(),this._opt.isNotMute&&this.mute(!1),this.webcodecsDecoder&&this.webcodecsDecoder.once(h.webcodecsH265NotSupport,()=>{this.emit(h.webcodecsH265NotSupport),this._opt.autoWasm||this.emit(u.error,h.webcodecsH265NotSupport)}),this.mseDecoder&&this.mseDecoder.once(h.mediaSourceH265NotSupport,()=>{this.emit(h.mediaSourceH265NotSupport),this._opt.autoWasm||this.emit(u.error,h.mediaSourceH265NotSupport)}),this.enableWakeLock(),this.checkLoadingTimeout(),this.stream.once(h.fetchError,e=>{t(e)}),this.stream.once(h.websocketError,e=>{t(e)}),this.stream.once(h.hlsError,e=>{t(e)}),this.stream.once(u.streamSuccess,()=>{e(),this._times.streamResponse=l(),this.video.play()}),this.stream.fetchStream(r)}).catch(e=>{t(e)})})}close(){return new Promise((e,t)=>{this._close().then(()=>{this.video.clearView(),e()})})}_close(){return new Promise((e,t)=>{this.stream&&(this.stream.destroy(),this.stream=null),this.demux&&(this.demux.destroy(),this.demux=null),this.decoderWorker&&(this.decoderWorker.destroy(),this.decoderWorker=null),this.webcodecsDecoder&&(this.webcodecsDecoder.destroy(),this.webcodecsDecoder=null),this.mseDecoder&&(this.mseDecoder.destroy(),this.mseDecoder=null),this.hls&&(this.hls.destroy(),this.hls=null),this.webrtc&&(this.webrtc.destroy(),this.webrtc=null),this.clearCheckHeartTimeout(),this.clearCheckLoadingTimeout(),this.playing=!1,this.loading=!1,this.recording=!1,this.audio&&this.audio.pause(),this.video&&this.video.pause(),this.releaseWakeLock(),this.resetStats(),this._audioTimestamp=0,this._videoTimestamp=0,this._times={playInitStart:"",playStart:"",streamStart:"",streamResponse:"",demuxStart:"",decodeStart:"",videoStart:"",playTimestamp:"",streamTimestamp:"",streamResponseTimestamp:"",demuxTimestamp:"",decodeTimestamp:"",videoTimestamp:"",allTimestamp:""},setTimeout(()=>{e()},0)})}pause(e){return e?this.close():this._close()}mute(e){this.audio&&this.audio.mute(e)}resize(){this.video.resize()}startRecord(e,t){this.recording||(this.recorder.setFileName(e,t),this.recording=!0)}stopRecordAndSave(){this.recording&&(this.recording=!1)}_hasControl(){let e=!1,t=!1;return Object.keys(this._opt.operateBtns).forEach(e=>{this._opt.operateBtns[e]&&(t=!0)}),e=this._opt.showBandwidth||this._opt.text||t?!0:e}_onlyMseOrWcsVideo(){return!1===this._opt.hasAudio&&(this._opt.useMSE||this._opt.useWCS&&!this._opt.useOffscreen)}useWasmDecode(){return!1===this._opt.useMSE&&!1===this._opt.useWCS}canVideoTrackWritter(){var e=this._opt;return!e.isHls&&!e.isWebrtc&&(e.useWCS&&!e.useOffscreen&&e.wcsUseVideoRender||this.useWasmDecode())}checkHeart(){this.clearCheckHeartTimeout(),this.checkHeartTimeout()}checkHeartTimeout(){this._checkHeartTimeout=setTimeout(()=>{this.pause(!1).then(()=>{this.emit(u.timeout,u.delayTimeout),this.emit(u.delayTimeout)})},1e3*this._opt.heartTimeout)}clearCheckHeartTimeout(){this._checkHeartTimeout&&(clearTimeout(this._checkHeartTimeout),this._checkHeartTimeout=null)}checkLoadingTimeout(){this._checkLoadingTimeout=setTimeout(()=>{this.pause(!1).then(()=>{this.emit(u.timeout,u.loadingTimeout),this.emit(u.loadingTimeout)})},1e3*this._opt.loadingTimeout)}clearCheckLoadingTimeout(){this._checkLoadingTimeout&&(clearTimeout(this._checkLoadingTimeout),this._checkLoadingTimeout=null)}handleRender(){this.loading&&(this.emit(u.start),this.loading=!1,this.clearCheckLoadingTimeout()),this.playing||(this.playing=!0),this.checkHeart()}updateStats(e){e=e||{},this._startBpsTime||(this._startBpsTime=l()),o(e.ts)&&(this._stats.ts=e.ts),o(e.buf)&&(this._stats.buf=e.buf),e.fps&&(this._stats.fps+=1),e.abps&&(this._stats.abps+=e.abps),e.vbps&&(this._stats.vbps+=e.vbps);e=l();e-this._startBpsTime<1e3||(this.emit(u.stats,this._stats),this.emit(u.performance,function(e){let t=0;return 24<=e?t=2:15<=e&&(t=1),t}(this._stats.fps)),this._stats.fps=0,this._stats.abps=0,this._stats.vbps=0,this._startBpsTime=e)}resetStats(){this._startBpsTime=null,this._stats={buf:0,fps:0,abps:0,vbps:0,ts:0}}enableWakeLock(){this._opt.keepScreenOn&&this.keepScreenOn.enable()}releaseWakeLock(){this._opt.keepScreenOn&&this.keepScreenOn.disable()}handlePlayToRenderTimes(){const e=this._times;e.playTimestamp=e.playStart-e.playInitStart,e.streamTimestamp=e.streamStart-e.playStart,e.streamResponseTimestamp=e.streamResponse-e.streamStart,e.demuxTimestamp=e.demuxStart-e.streamResponse,e.decodeTimestamp=e.decodeStart-e.demuxStart,e.videoTimestamp=e.videoStart-e.decodeStart,e.allTimestamp=e.videoStart-e.playInitStart,this.emit(u.playToRenderTimes,e)}}class Me extends b{constructor(e){super();let t=e,r=e.container;if(!(r="string"==typeof e.container?document.querySelector(e.container):r))throw new Error("Jessibuca need container option");r.classList.add("jessibuca-container"),delete t.container,o(t.videoBuffer)&&(t.videoBuffer=1e3*Number(t.videoBuffer)),o(t.timeout)&&(n(t.loadingTimeout)&&(t.loadingTimeout=t.timeout),n(t.heartTimeout)&&(t.heartTimeout=t.timeout)),this._opt=t,this.$container=r,this._loadingTimeoutReplayTimes=0,this._heartTimeoutReplayTimes=0,this.events=new te(this)}destroy(){this.events&&(this.events.destroy(),this.events=null),this.player&&(this.player.destroy(),this.player=null),this.$container=null,this._opt=null,this._loadingTimeoutReplayTimes=0,this._heartTimeoutReplayTimes=0,this.off()}_initPlayer(e,t){this.player=new Pe(e,t),this._bindEvents()}_resetPlayer(){var e=0{this.player.on(c[t],e=>{this.emit(t,e)})})}setDebug(e){this.player.updateOption({isDebug:!!e})}mute(){this.player.mute(!0)}cancelMute(){this.player.mute(!1)}setVolume(e){this.player.volume=e}audioResume(){this.player.audio&&this.player.audio.audioEnabled(!0)}setTimeout(e){e=Number(e),this.player.updateOption({timeout:e,loadingTimeout:e,heartTimeout:e})}setScaleMode(e){let t={isFullResize:!1,isResize:!1};switch(e=Number(e)){case 0:t.isFullResize=!1,t.isResize=!1;break;case 1:t.isFullResize=!1,t.isResize=!0;break;case 2:t.isFullResize=!0,t.isResize=!0}this.player.updateOption(t),this.resize()}pause(){return this.player.pause()}close(){return this._opt.url="",this.player.close()}clearView(){this.player.video.clearView()}play(r){return new Promise((e,t)=>{if(!r&&!this._opt.url)return this.emit(u.error,h.playError),void t();if(r){if(!this._opt.url)return this._play(r);r===this._opt.url?this.player.playing?e():(this.clearView(),this.player.play(this._opt.url).then(()=>{e()}).catch(()=>{this.player.pause().then(()=>{t()})})):this.player.pause().then(()=>(this.clearView(),this._play(r))).catch(()=>{t()})}else this.player.play(this._opt.url).then(()=>{e()}).catch(()=>{this.player.pause().then(()=>{t()})})})}_play(l){return new Promise((e,t)=>{var r=0===(this._opt.url=l).indexOf("http"),i=0===l.indexOf("webrtc"),n=0===l.indexOf("wt"),s=!i&&-1!==l.indexOf(".m3u8"),a=!i&&-1!==l.indexOf(".flv"),o=r?s?3:2:n?5:i?4:1,r=r&&!s||a||this._opt.isFlv?d:s?"hls":i?"webrtc":n?P:"m7s";if(!o||!r)return t(`play protocol is ${o}, demuxType is `+r);this._initPlayer(this.$container,Object.assign(this._opt,{protocol:o,demuxType:r,isHls:s,isWebrtc:i})),this.player.once(h.mediaSourceH265NotSupport,()=>{this.close().then(()=>{this.player._opt.autoWasm&&(this.player.debug.log("Jessibuca","auto wasm [mse-> wasm] reset player and play"),this._resetPlayer({useMSE:!1}),this.play(l).then(()=>{this.player.debug.log("Jessibuca","auto wasm [mse-> wasm] reset player and play success")}).catch(()=>{this.player.debug.log("Jessibuca","auto wasm [mse-> wasm] reset player and play error")}))})}),this.player.once(h.webcodecsH265NotSupport,()=>{this.close().then(()=>{this.player._opt.autoWasm&&(this.player.debug.log("Jessibuca","auto wasm [wcs-> wasm] reset player and play"),this._resetPlayer({useWCS:!1}),this.play(l).then(()=>{this.player.debug.log("Jessibuca","auto wasm [wcs-> wasm] reset player and play success")}).catch(()=>{this.player.debug.log("Jessibuca","auto wasm [wcs-> wasm] reset player and play error")}))})}),this.player.once(h.wasmDecodeError,()=>{this.player._opt.wasmDecodeErrorReplay&&this.close().then(()=>{this.player.debug.log("Jessibuca","wasm decode error and reset player and play"),this._resetPlayer({useWCS:!1}),this.play(l).then(()=>{this.player.debug.log("Jessibuca","wasm decode error and reset player and play success")}).catch(()=>{this.player.debug.log("Jessibuca","wasm decode error and reset player and play error")})})}),this.player.once(u.delayTimeout,()=>{this.player._opt.heartTimeoutReplay&&this._heartTimeoutReplayTimes{this._heartTimeoutReplayTimes=0}).catch(()=>{}))}),this.player.once(u.loadingTimeout,()=>{this.player._opt.loadingTimeoutReplay&&this._loadingTimeoutReplayTimes{this._loadingTimeoutReplayTimes=0}).catch(()=>{}))}),this.hasLoaded()?this.player.play(l).then(()=>{e()}).catch(()=>{this.player.pause().then(()=>{t()})}):this.player.once(u.decoderWorkerInit,()=>{this.player.play(l).then(()=>{e()}).catch(()=>{this.player.pause().then(()=>{t()})})})})}resize(){this.player.resize()}setBufferTime(e){e=Number(e),this.player.updateOption({videoBuffer:1e3*e}),this.player.decoderWorker&&this.player.decoderWorker.updateWorkConfig({key:"videoBuffer",value:1e3*e})}setRotate(e){e=parseInt(e,10),this._opt.rotate!==e&&-1!==[0,90,270].indexOf(e)&&(this.player.updateOption({rotate:e}),this.resize())}hasLoaded(){return this.player.loaded}setKeepScreenOn(){this.player.updateOption({keepScreenOn:!0})}setFullscreen(e){e=!!e;this.player.fullscreen!==e&&(this.player.fullscreen=e)}screenshot(e,t,r,i){return this.player.video.screenshot(e,t,r,i)}startRecord(r,i){return new Promise((e,t)=>{this.player.playing?(this.player.startRecord(r,i),e()):t()})}stopRecordAndSave(){this.player.recording&&this.player.stopRecordAndSave()}isPlaying(){return this.player.playing}isMute(){return!this.player.audio||this.player.audio.isMute}isRecording(){return this.player.recorder.recording}}var x="http:"===window.location.protocol?"ws:":"wss:";let O=window.location.port;""!==O&&(O=":"+O);const B=window.location.hostname,Ue=window.location.pathname.replace("/preview/",""),Ne=function(){var e=window.location.search,t={};if(-1!=e.indexOf("?"))for(var r=e.substr(1).split("&"),i=0;i{t+=` + + `});var x=`
- `;document.body.insertAdjacentHTML("beforeend",Me)}document.querySelector("#changeType").addEventListener("click",()=>{var e=document.querySelector("#typeSelect");if(e.value&&e.value!==F.type){const t=window.location.href;window.location.href=t.replace(F.type,e.value)}},!1),new Pe({container:document.querySelector(".jessibuca-pro-wrap"),showBandwidth:!0,debug:"true"===F.debug,useWCS:!0,wcsUseVideoRender:!0,videoBuffer:0}).play(e).then(()=>{console.log("play success")}).catch(e=>{console.error("play error",e)})}}}); + `;document.body.insertAdjacentHTML("beforeend",x)}document.querySelector("#changeType").addEventListener("click",()=>{var e=document.querySelector("#typeSelect");if(e.value&&e.value!==F){const t=window.location.href;window.location.search?-1!==window.location.search.indexOf(F)?window.location.href=t.replace(F,e.value):window.location.href=t+"&type="+e.value:window.location.href=t+"?type="+e.value}},!1),(x=Ye[F])&&(window.document.title=x+" Demo"),new Me({container:document.querySelector(".jessibuca-pro-wrap"),showBandwidth:!0,debug:"true"===Ne.debug,useWCS:!0,wcsUseVideoRender:!0,videoBuffer:0}).play(e).then(()=>{console.log("play success")}).catch(e=>{console.error("play error",e)})}}});