当前位置: 首页 > news >正文

住房建设部官方网站居住区政策网站字头优化

住房建设部官方网站居住区政策,网站字头优化,无锡网站制作计划,电子商务有什么用实现h5端播放rtsp流视频–通过ffmpeg转流实现 下载 #1. 安装 ffmpeg 解压 ffmpeg.zip添加系统环境变量 cmd 输入 ffmpeg 2. 安装 node 1. node-v14.14.0-x64.msi 双击 2. 输入 node -v 输出 v14.14.03. 转流服务 新建文件夹 ceshi 在文件夹ceshi目录打开cmd 输…实现h5端播放rtsp流视频–通过ffmpeg转流实现 下载 #1. 安装 ffmpeg 解压 ffmpeg.zip添加系统环境变量 cmd 输入 ffmpeg 2. 安装 node 1. node-v14.14.0-x64.msi 双击 2. 输入 node -v 输出 v14.14.03. 转流服务 新建文件夹 ceshi 在文件夹ceshi目录打开cmd 输入 npm init -y 输入 npm i node-rtsp-stream 在文件夹ceshi目录新建文件 index.js,输入下面代码 在文件夹ceshi目录打开cmd,输入 node index.js const Streamrequire(node-rtsp-stream); // 设置rtsp视频流地址(替换需要拉取的) const rtsp_urlrtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mp4 // 控制视频大小 ( -s)、帧率 ( -r)、视频比特率 ( -b:v)、音频比特率 ( -b:a)、音频通道数 ( -ac)、采样率 ( -ar) const streams new Stream({name: sockets,streamUrl: rtsp_url,wsPort: 9998,ffmpegOptions: { // 选项ffmpeg标志-stats: , // 没有必要值的选项使用空字符串-r: 30, // 具有必需值的选项指定键后面的值-s: 1920*1080, // 1920*1080 2560*1920-b:v: 5000k,-qscale: 1}})jsmpeg.min.js window.JSMpeg{Player:null,VideoElement:null,BitBuffer:null,Source:{},Demuxer:{},Decoder:{},Renderer:{},AudioOutput:{},Now:function(){return window.performance?window.performance.now()/1e3:Date.now()/1e3},CreateVideoElements:function(){var elementsdocument.querySelectorAll(.jsmpeg);for(var i0;ielements.length;i){new JSMpeg.VideoElement(elements[i])}},Fill:function(array,value){if(array.fill){array.fill(value)}else{for(var i0;iarray.length;i){array[i]value}}},Base64ToArrayBuffer:function(base64){var binarywindow.atob(base64);var lengthbinary.length;var bytesnew Uint8Array(length);for(var i0;ilength;i){bytes[i]binary.charCodeAt(i)}return bytes.buffer},WASM_BINARY_INLINED:null};if(document.readyStatecomplete){JSMpeg.CreateVideoElements()}else{document.addEventListener(DOMContentLoaded,JSMpeg.CreateVideoElements)}JSMpeg.VideoElementfunction(){use strict;var VideoElementfunction(element){var urlelement.dataset.url;if(!url){throwVideoElement has no data-url attribute}var addStylesfunction(element,styles){for(var name in styles){element.style[name]styles[name]}};this.containerelement;addStyles(this.container,{display:inline-block,position:relative,minWidth:80px,minHeight:80px});this.canvasdocument.createElement(canvas);this.canvas.width960;this.canvas.height540;addStyles(this.canvas,{display:block,width:100%});this.container.appendChild(this.canvas);this.playButtondocument.createElement(div);this.playButton.innerHTMLVideoElement.PLAY_BUTTON;addStyles(this.playButton,{zIndex:2,position:absolute,top:0,bottom:0,left:0,right:0,maxWidth:75px,maxHeight:75px,margin:auto,opacity:0.7,cursor:pointer});this.container.appendChild(this.playButton);var options{canvas:this.canvas};for(var option in element.dataset){try{options[option]JSON.parse(element.dataset[option])}catch(err){options[option]element.dataset[option]}}this.playernew JSMpeg.Player(url,options);element.playerInstancethis.player;if(options.poster!options.autoplay!this.player.options.streaming){options.decodeFirstFramefalse;this.posternew Image;this.poster.srcoptions.poster;this.poster.addEventListener(load,this.posterLoaded);addStyles(this.poster,{display:block,zIndex:1,position:absolute,top:0,left:0,bottom:0,right:0});this.container.appendChild(this.poster)}if(!this.player.options.streaming){this.container.addEventListener(click,this.onClick.bind(this))}if(options.autoplay||this.player.options.streaming){this.playButton.style.displaynone}if(this.player.audioOut!this.player.audioOut.unlocked){var unlockAudioElementthis.container;if(options.autoplay||this.player.options.streaming){this.unmuteButtondocument.createElement(div);this.unmuteButton.innerHTMLVideoElement.UNMUTE_BUTTON;addStyles(this.unmuteButton,{zIndex:2,position:absolute,bottom:10px,right:20px,width:75px,height:75px,margin:auto,opacity:0.7,cursor:pointer});this.container.appendChild(this.unmuteButton);unlockAudioElementthis.unmuteButton}this.unlockAudioBoundthis.onUnlockAudio.bind(this,unlockAudioElement);unlockAudioElement.addEventListener(touchstart,this.unlockAudioBound,false);unlockAudioElement.addEventListener(click,this.unlockAudioBound,true)}};VideoElement.prototype.onUnlockAudiofunction(element,ev){if(this.unmuteButton){ev.preventDefault();ev.stopPropagation()}this.player.audioOut.unlock(function(){if(this.unmuteButton){this.unmuteButton.style.displaynone}element.removeEventListener(touchstart,this.unlockAudioBound);element.removeEventListener(click,this.unlockAudioBound)}.bind(this))};VideoElement.prototype.onClickfunction(ev){if(this.player.isPlaying){this.player.pause();this.playButton.style.displayblock}else{this.player.play();this.playButton.style.displaynone;if(this.poster){this.poster.style.displaynone}}};VideoElement.PLAY_BUTTONsvg stylemax-width: 75px; max-height: 75px; viewBox0 0 200 200 altPlay videocircle cx100 cy100 r90 fillnone stroke-width15 stroke#fff/polygon points70, 55 70, 145 145, 100 fill#fff//svg;VideoElement.UNMUTE_BUTTONsvg stylemax-width: 75px; max-height: 75px; viewBox0 0 75 75polygon classaudio-speaker strokenone fill#fff points39,13 22,28 6,28 6,47 21,47 39,62 39,13/g stroke#fff stroke-width5path dM 49,50 69,26/path dM 69,50 49,26//g/svg;return VideoElement}();JSMpeg.Playerfunction(){use strict;var Playerfunction(url,options){this.optionsoptions||{};if(options.source){this.sourcenew options.source(url,options);options.streaming!!this.source.streaming}else if(url.match(/^wss?:\/\//)){this.sourcenew JSMpeg.Source.WebSocket(url,options);options.streamingtrue}else if(options.progressive!false){this.sourcenew JSMpeg.Source.AjaxProgressive(url,options);options.streamingfalse}else{this.sourcenew JSMpeg.Source.Ajax(url,options);options.streamingfalse}this.maxAudioLagoptions.maxAudioLag||.25;this.loopoptions.loop!false;this.autoplay!!options.autoplay||options.streaming;this.demuxernew JSMpeg.Demuxer.TS(options);this.source.connect(this.demuxer);if(!options.disableWebAssemblyJSMpeg.WASMModule.IsSupported()){this.wasmModuleJSMpeg.WASMModule.GetModule();options.wasmModulethis.wasmModule}if(options.video!false){this.videooptions.wasmModule?new JSMpeg.Decoder.MPEG1VideoWASM(options):new JSMpeg.Decoder.MPEG1Video(options);this.renderer!options.disableGlJSMpeg.Renderer.WebGL.IsSupported()?new JSMpeg.Renderer.WebGL(options):new JSMpeg.Renderer.Canvas2D(options);this.demuxer.connect(JSMpeg.Demuxer.TS.STREAM.VIDEO_1,this.video);this.video.connect(this.renderer)}if(options.audio!falseJSMpeg.AudioOutput.WebAudio.IsSupported()){this.audiooptions.wasmModule?new JSMpeg.Decoder.MP2AudioWASM(options):new JSMpeg.Decoder.MP2Audio(options);this.audioOutnew JSMpeg.AudioOutput.WebAudio(options);this.demuxer.connect(JSMpeg.Demuxer.TS.STREAM.AUDIO_1,this.audio);this.audio.connect(this.audioOut)}Object.defineProperty(this,currentTime,{get:this.getCurrentTime,set:this.setCurrentTime});Object.defineProperty(this,volume,{get:this.getVolume,set:this.setVolume});this.pausedtrue;this.unpauseOnShowfalse;if(options.pauseWhenHidden!false){document.addEventListener(visibilitychange,this.showHide.bind(this))}if(this.wasmModule){if(this.wasmModule.ready){this.startLoading()}else if(JSMpeg.WASM_BINARY_INLINED){var wasmJSMpeg.Base64ToArrayBuffer(JSMpeg.WASM_BINARY_INLINED);this.wasmModule.loadFromBuffer(wasm,this.startLoading.bind(this))}else{this.wasmModule.loadFromFile(jsmpeg.wasm,this.startLoading.bind(this))}}else{this.startLoading()}};Player.prototype.startLoadingfunction(){this.source.start();if(this.autoplay){this.play()}};Player.prototype.showHidefunction(ev){if(document.visibilityStatehidden){this.unpauseOnShowthis.wantsToPlay;this.pause()}else if(this.unpauseOnShow){this.play()}};Player.prototype.playfunction(ev){if(this.animationId){return}this.animationIdrequestAnimationFrame(this.update.bind(this));this.wantsToPlaytrue;this.pausedfalse};Player.prototype.pausefunction(ev){if(this.paused){return}cancelAnimationFrame(this.animationId);this.animationIdnull;this.wantsToPlayfalse;this.isPlayingfalse;this.pausedtrue;if(this.audiothis.audio.canPlay){this.audioOut.stop();this.seek(this.currentTime)}if(this.options.onPause){this.options.onPause(this)}};Player.prototype.getVolumefunction(){return this.audioOut?this.audioOut.volume:0};Player.prototype.setVolumefunction(volume){if(this.audioOut){this.audioOut.volumevolume}};Player.prototype.stopfunction(ev){this.pause();this.seek(0);if(this.videothis.options.decodeFirstFrame!false){this.video.decode()}};Player.prototype.destroyfunction(){this.pause();this.source.destroy();this.videothis.video.destroy();this.rendererthis.renderer.destroy();this.audiothis.audio.destroy();this.audioOutthis.audioOut.destroy()};Player.prototype.seekfunction(time){var startOffsetthis.audiothis.audio.canPlay?this.audio.startTime:this.video.startTime;if(this.video){this.video.seek(timestartOffset)}if(this.audio){this.audio.seek(timestartOffset)}this.startTimeJSMpeg.Now()-time};Player.prototype.getCurrentTimefunction(){return this.audiothis.audio.canPlay?this.audio.currentTime-this.audio.startTime:this.video.currentTime-this.video.startTime};Player.prototype.setCurrentTimefunction(time){this.seek(time)};Player.prototype.updatefunction(){this.animationIdrequestAnimationFrame(this.update.bind(this));if(!this.source.established){if(this.renderer){this.renderer.renderProgress(this.source.progress)}return}if(!this.isPlaying){this.isPlayingtrue;this.startTimeJSMpeg.Now()-this.currentTime;if(this.options.onPlay){this.options.onPlay(this)}}if(this.options.streaming){this.updateForStreaming()}else{this.updateForStaticFile()}};Player.prototype.updateForStreamingfunction(){if(this.video){this.video.decode()}if(this.audio){var decodedfalse;do{if(this.audioOut.enqueuedTimethis.maxAudioLag){this.audioOut.resetEnqueuedTime();this.audioOut.enabledfalse}decodedthis.audio.decode()}while(decoded);this.audioOut.enabledtrue}};Player.prototype.nextFramefunction(){if(this.source.establishedthis.video){return this.video.decode()}return false};Player.prototype.updateForStaticFilefunction(){var notEnoughDatafalse,headroom0;if(this.audiothis.audio.canPlay){while(!notEnoughDatathis.audio.decodedTime-this.audio.currentTime.25){notEnoughData!this.audio.decode()}if(this.videothis.video.currentTimethis.audio.currentTime){notEnoughData!this.video.decode()}headroomthis.demuxer.currentTime-this.audio.currentTime}else if(this.video){var targetTimeJSMpeg.Now()-this.startTimethis.video.startTime,lateTimetargetTime-this.video.currentTime,frameTime1/this.video.frameRate;if(this.videolateTime0){if(lateTimeframeTime*2){this.startTimelateTime}notEnoughData!this.video.decode()}headroomthis.demuxer.currentTime-targetTime}this.source.resume(headroom);if(notEnoughDatathis.source.completed){if(this.loop){this.seek(0)}else{this.pause();if(this.options.onEnded){this.options.onEnded(this)}}}else if(notEnoughDatathis.options.onStalled){this.options.onStalled(this)}};return Player}();JSMpeg.BitBufferfunction(){use strict;var BitBufferfunction(bufferOrLength,mode){if(typeof bufferOrLengthobject){this.bytesbufferOrLength instanceof Uint8Array?bufferOrLength:new Uint8Array(bufferOrLength);this.byteLengththis.bytes.length}else{this.bytesnew Uint8Array(bufferOrLength||1024*1024);this.byteLength0}this.modemode||BitBuffer.MODE.EXPAND;this.index0};BitBuffer.prototype.resizefunction(size){var newBytesnew Uint8Array(size);if(this.byteLength!0){this.byteLengthMath.min(this.byteLength,size);newBytes.set(this.bytes,0,this.byteLength)}this.bytesnewBytes;this.indexMath.min(this.index,this.byteLength3)};BitBuffer.prototype.evictfunction(sizeNeeded){var bytePosthis.index3,availablethis.bytes.length-this.byteLength;if(this.indexthis.byteLength3||sizeNeededavailablebytePos){this.byteLength0;this.index0;return}else if(bytePos0){return}if(this.bytes.copyWithin){this.bytes.copyWithin(0,bytePos,this.byteLength)}else{this.bytes.set(this.bytes.subarray(bytePos,this.byteLength))}this.byteLengththis.byteLength-bytePos;this.index-bytePos3;return};BitBuffer.prototype.writefunction(buffers){var isArrayOfBufferstypeof buffers[0]object,totalLength0,availablethis.bytes.length-this.byteLength;if(isArrayOfBuffers){var totalLength0;for(var i0;ibuffers.length;i){totalLengthbuffers[i].byteLength}}else{totalLengthbuffers.byteLength}if(totalLengthavailable){if(this.modeBitBuffer.MODE.EXPAND){var newSizeMath.max(this.bytes.length*2,totalLength-available);this.resize(newSize)}else{this.evict(totalLength)}}if(isArrayOfBuffers){for(var i0;ibuffers.length;i){this.appendSingleBuffer(buffers[i])}}else{this.appendSingleBuffer(buffers)}return totalLength};BitBuffer.prototype.appendSingleBufferfunction(buffer){bufferbuffer instanceof Uint8Array?buffer:new Uint8Array(buffer);this.bytes.set(buffer,this.byteLength);this.byteLengthbuffer.length};BitBuffer.prototype.findNextStartCodefunction(){for(var ithis.index73;ithis.byteLength;i){if(this.bytes[i]0this.bytes[i1]0this.bytes[i2]1){this.indexi43;return this.bytes[i3]}}this.indexthis.byteLength3;return-1};BitBuffer.prototype.findStartCodefunction(code){var current0;while(true){currentthis.findNextStartCode();if(currentcode||current-1){return current}}return-1};BitBuffer.prototype.nextBytesAreStartCodefunction(){var ithis.index73;return ithis.byteLength||this.bytes[i]0this.bytes[i1]0this.bytes[i2]1};BitBuffer.prototype.peekfunction(count){var offsetthis.index;var value0;while(count){var currentBytethis.bytes[offset3],remaining8-(offset7),readremainingcount?remaining:count,shiftremaining-read,mask2558-read;valuevalueread|(currentBytemaskshift)shift;offsetread;count-read}return value};BitBuffer.prototype.readfunction(count){var valuethis.peek(count);this.indexcount;return value};BitBuffer.prototype.skipfunction(count){return this.indexcount};BitBuffer.prototype.rewindfunction(count){this.indexMath.max(this.index-count,0)};BitBuffer.prototype.hasfunction(count){return(this.byteLength3)-this.indexcount};BitBuffer.MODE{EVICT:1,EXPAND:2};return BitBuffer}();JSMpeg.Source.Ajaxfunction(){use strict;var AjaxSourcefunction(url,options){this.urlurl;this.destinationnull;this.requestnull;this.streamingfalse;this.completedfalse;this.establishedfalse;this.progress0;this.onEstablishedCallbackoptions.onSourceEstablished;this.onCompletedCallbackoptions.onSourceCompleted};AjaxSource.prototype.connectfunction(destination){this.destinationdestination};AjaxSource.prototype.startfunction(){this.requestnew XMLHttpRequest;this.request.onreadystatechangefunction(){if(this.request.readyStatethis.request.DONEthis.request.status200){this.onLoad(this.request.response)}}.bind(this);this.request.onprogressthis.onProgress.bind(this);this.request.open(GET,this.url);this.request.responseTypearraybuffer;this.request.send()};AjaxSource.prototype.resumefunction(secondsHeadroom){};AjaxSource.prototype.destroyfunction(){this.request.abort()};AjaxSource.prototype.onProgressfunction(ev){this.progressev.loaded/ev.total};AjaxSource.prototype.onLoadfunction(data){this.establishedtrue;this.completedtrue;this.progress1;if(this.onEstablishedCallback){this.onEstablishedCallback(this)}if(this.onCompletedCallback){this.onCompletedCallback(this)}if(this.destination){this.destination.write(data)}};return AjaxSource}();JSMpeg.Source.Fetchfunction(){use strict;var FetchSourcefunction(url,options){this.urlurl;this.destinationnull;this.requestnull;this.streamingtrue;this.completedfalse;this.establishedfalse;this.progress0;this.abortedfalse;this.onEstablishedCallbackoptions.onSourceEstablished;this.onCompletedCallbackoptions.onSourceCompleted};FetchSource.prototype.connectfunction(destination){this.destinationdestination};FetchSource.prototype.startfunction(){var params{method:GET,headers:new Headers,cache:default};self.fetch(this.url,params).then(function(res){if(res.ok(res.status200res.status299)){this.progress1;this.establishedtrue;return this.pump(res.body.getReader())}else{}}.bind(this)).catch(function(err){throw err})};FetchSource.prototype.pumpfunction(reader){return reader.read().then(function(result){if(result.done){this.completedtrue}else{if(this.aborted){return reader.cancel()}if(this.destination){this.destination.write(result.value.buffer)}return this.pump(reader)}}.bind(this)).catch(function(err){throw err})};FetchSource.prototype.resumefunction(secondsHeadroom){};FetchSource.prototype.abortfunction(){this.abortedtrue};return FetchSource}();JSMpeg.Source.AjaxProgressivefunction(){use strict;var AjaxProgressiveSourcefunction(url,options){this.urlurl;this.destinationnull;this.requestnull;this.streamingfalse;this.completedfalse;this.establishedfalse;this.progress0;this.fileSize0;this.loadedSize0;this.chunkSizeoptions.chunkSize||1024*1024;this.isLoadingfalse;this.loadStartTime0;this.throttledoptions.throttled!false;this.abortedfalse;this.onEstablishedCallbackoptions.onSourceEstablished;this.onCompletedCallbackoptions.onSourceCompleted};AjaxProgressiveSource.prototype.connectfunction(destination){this.destinationdestination};AjaxProgressiveSource.prototype.startfunction(){this.requestnew XMLHttpRequest;this.request.onreadystatechangefunction(){if(this.request.readyStatethis.request.DONE){this.fileSizeparseInt(this.request.getResponseHeader(Content-Length));this.loadNextChunk()}}.bind(this);this.request.onprogressthis.onProgress.bind(this);this.request.open(HEAD,this.url);this.request.send()};AjaxProgressiveSource.prototype.resumefunction(secondsHeadroom){if(this.isLoading||!this.throttled){return}var worstCaseLoadingTimethis.loadTime*82;if(worstCaseLoadingTimesecondsHeadroom){this.loadNextChunk()}};AjaxProgressiveSource.prototype.destroyfunction(){this.request.abort();this.abortedtrue};AjaxProgressiveSource.prototype.loadNextChunkfunction(){var startthis.loadedSize,endMath.min(this.loadedSizethis.chunkSize-1,this.fileSize-1);if(startthis.fileSize||this.aborted){this.completedtrue;if(this.onCompletedCallback){this.onCompletedCallback(this)}return}this.isLoadingtrue;this.loadStartTimeJSMpeg.Now();this.requestnew XMLHttpRequest;this.request.onreadystatechangefunction(){if(this.request.readyStatethis.request.DONEthis.request.status200this.request.status300){this.onChunkLoad(this.request.response)}else if(this.request.readyStatethis.request.DONE){if(this.loadFails3){this.loadNextChunk()}}}.bind(this);if(start0){this.request.onprogressthis.onProgress.bind(this)}this.request.open(GET,this.url?start-end);this.request.setRequestHeader(Range,bytesstart-end);this.request.responseTypearraybuffer;this.request.send()};AjaxProgressiveSource.prototype.onProgressfunction(ev){this.progressev.loaded/ev.total};AjaxProgressiveSource.prototype.onChunkLoadfunction(data){var isFirstChunk!this.established;this.establishedtrue;this.progress1;this.loadedSizedata.byteLength;this.loadFails0;this.isLoadingfalse;if(isFirstChunkthis.onEstablishedCallback){this.onEstablishedCallback(this)}if(this.destination){this.destination.write(data)}this.loadTimeJSMpeg.Now()-this.loadStartTime;if(!this.throttled){this.loadNextChunk()}};return AjaxProgressiveSource}();JSMpeg.Source.WebSocketfunction(){use strict;var WSSourcefunction(url,options){this.urlurl;this.optionsoptions;this.socketnull;this.streamingtrue;this.callbacks{connect:[],data:[]};this.destinationnull;this.reconnectIntervaloptions.reconnectInterval!undefined?options.reconnectInterval:5;this.shouldAttemptReconnect!!this.reconnectInterval;this.completedfalse;this.establishedfalse;this.progress0;this.reconnectTimeoutId0;this.onEstablishedCallbackoptions.onSourceEstablished;this.onCompletedCallbackoptions.onSourceCompleted};WSSource.prototype.connectfunction(destination){this.destinationdestination};WSSource.prototype.destroyfunction(){clearTimeout(this.reconnectTimeoutId);this.shouldAttemptReconnectfalse;this.socket.close()};WSSource.prototype.startfunction(){this.shouldAttemptReconnect!!this.reconnectInterval;this.progress0;this.establishedfalse;this.socketnew WebSocket(this.url,this.options.protocols||null);this.socket.binaryTypearraybuffer;this.socket.onmessagethis.onMessage.bind(this);this.socket.onopenthis.onOpen.bind(this);this.socket.onerrorthis.onClose.bind(this);this.socket.onclosethis.onClose.bind(this)};WSSource.prototype.resumefunction(secondsHeadroom){};WSSource.prototype.onOpenfunction(){this.progress1};WSSource.prototype.onClosefunction(){if(this.shouldAttemptReconnect){clearTimeout(this.reconnectTimeoutId);this.reconnectTimeoutIdsetTimeout(function(){this.start()}.bind(this),this.reconnectInterval*1e3)}};WSSource.prototype.onMessagefunction(ev){var isFirstChunk!this.established;this.establishedtrue;if(isFirstChunkthis.onEstablishedCallback){this.onEstablishedCallback(this)}if(this.destination){this.destination.write(ev.data)}};return WSSource}();JSMpeg.Demuxer.TSfunction(){use strict;var TSfunction(options){this.bitsnull;this.leftoverBytesnull;this.guessVideoFrameEndtrue;this.pidsToStreamIds{};this.pesPacketInfo{};this.startTime0;this.currentTime0};TS.prototype.connectfunction(streamId,destination){this.pesPacketInfo[streamId]{destination:destination,currentLength:0,totalLength:0,pts:0,buffers:[]}};TS.prototype.writefunction(buffer){if(this.leftoverBytes){var totalLengthbuffer.byteLengththis.leftoverBytes.byteLength;this.bitsnew JSMpeg.BitBuffer(totalLength);this.bits.write([this.leftoverBytes,buffer])}else{this.bitsnew JSMpeg.BitBuffer(buffer)}while(this.bits.has(1883)this.parsePacket()){}var leftoverCountthis.bits.byteLength-(this.bits.index3);this.leftoverBytesleftoverCount0?this.bits.bytes.subarray(this.bits.index3):null};TS.prototype.parsePacketfunction(){if(this.bits.read(8)!71){if(!this.resync()){return false}}var end(this.bits.index3)187;var transportErrorthis.bits.read(1),payloadStartthis.bits.read(1),transportPrioritythis.bits.read(1),pidthis.bits.read(13),transportScramblingthis.bits.read(2),adaptationFieldthis.bits.read(2),continuityCounterthis.bits.read(4);var streamIdthis.pidsToStreamIds[pid];if(payloadStartstreamId){var pithis.pesPacketInfo[streamId];if(pipi.currentLength){this.packetComplete(pi)}}if(adaptationField1){if(adaptationField2){var adaptationFieldLengththis.bits.read(8);this.bits.skip(adaptationFieldLength3)}if(payloadStartthis.bits.nextBytesAreStartCode()){this.bits.skip(24);streamIdthis.bits.read(8);this.pidsToStreamIds[pid]streamId;var packetLengththis.bits.read(16);this.bits.skip(8);var ptsDtsFlagthis.bits.read(2);this.bits.skip(6);var headerLengththis.bits.read(8);var payloadBeginIndexthis.bits.index(headerLength3);var pithis.pesPacketInfo[streamId];if(pi){var pts0;if(ptsDtsFlag2){this.bits.skip(4);var p32_30this.bits.read(3);this.bits.skip(1);var p29_15this.bits.read(15);this.bits.skip(1);var p14_0this.bits.read(15);this.bits.skip(1);pts(p32_30*1073741824p29_15*32768p14_0)/9e4;this.currentTimepts;if(this.startTime-1){this.startTimepts}}var payloadLengthpacketLength?packetLength-headerLength-3:0;this.packetStart(pi,pts,payloadLength)}this.bits.indexpayloadBeginIndex}if(streamId){var pithis.pesPacketInfo[streamId];if(pi){var startthis.bits.index3;var completethis.packetAddData(pi,start,end);var hasPadding!payloadStartadaptationField2;if(complete||this.guessVideoFrameEndhasPadding){this.packetComplete(pi)}}}}this.bits.indexend3;return true};TS.prototype.resyncfunction(){if(!this.bits.has(188*63)){return false}var byteIndexthis.bits.index3;for(var i0;i187;i){if(this.bits.bytes[byteIndexi]71){var foundSynctrue;for(var j1;j5;j){if(this.bits.bytes[byteIndexi188*j]!71){foundSyncfalse;break}}if(foundSync){this.bits.indexbyteIndexi13;return true}}}console.warn(JSMpeg: Possible garbage data. Skipping.);this.bits.skip(1873);return false};TS.prototype.packetStartfunction(pi,pts,payloadLength){pi.totalLengthpayloadLength;pi.currentLength0;pi.ptspts};TS.prototype.packetAddDatafunction(pi,start,end){pi.buffers.push(this.bits.bytes.subarray(start,end));pi.currentLengthend-start;var completepi.totalLength!0pi.currentLengthpi.totalLength;return complete};TS.prototype.packetCompletefunction(pi){pi.destination.write(pi.pts,pi.buffers);pi.totalLength0;pi.currentLength0;pi.buffers[]};TS.STREAM{PACK_HEADER:186,SYSTEM_HEADER:187,PROGRAM_MAP:188,PRIVATE_1:189,PADDING:190,PRIVATE_2:191,AUDIO_1:192,VIDEO_1:224,DIRECTORY:255};return TS}();JSMpeg.Decoder.Basefunction(){use strict;var BaseDecoderfunction(options){this.destinationnull;this.canPlayfalse;this.collectTimestamps!options.streaming;this.bytesWritten0;this.timestamps[];this.timestampIndex0;this.startTime0;this.decodedTime0;Object.defineProperty(this,currentTime,{get:this.getCurrentTime})};BaseDecoder.prototype.destroyfunction(){};BaseDecoder.prototype.connectfunction(destination){this.destinationdestination};BaseDecoder.prototype.bufferGetIndexfunction(){return this.bits.index};BaseDecoder.prototype.bufferSetIndexfunction(index){this.bits.indexindex};BaseDecoder.prototype.bufferWritefunction(buffers){return this.bits.write(buffers)};BaseDecoder.prototype.writefunction(pts,buffers){if(this.collectTimestamps){if(this.timestamps.length0){this.startTimepts;this.decodedTimepts}this.timestamps.push({index:this.bytesWritten3,time:pts})}this.bytesWrittenthis.bufferWrite(buffers);this.canPlaytrue};BaseDecoder.prototype.seekfunction(time){if(!this.collectTimestamps){return}this.timestampIndex0;for(var i0;ithis.timestamps.length;i){if(this.timestamps[i].timetime){break}this.timestampIndexi}var tsthis.timestamps[this.timestampIndex];if(ts){this.bufferSetIndex(ts.index);this.decodedTimets.time}else{this.bufferSetIndex(0);this.decodedTimethis.startTime}};BaseDecoder.prototype.decodefunction(){this.advanceDecodedTime(0)};BaseDecoder.prototype.advanceDecodedTimefunction(seconds){if(this.collectTimestamps){var newTimestampIndex-1;var currentIndexthis.bufferGetIndex();for(var ithis.timestampIndex;ithis.timestamps.length;i){if(this.timestamps[i].indexcurrentIndex){break}newTimestampIndexi}if(newTimestampIndex!-1newTimestampIndex!this.timestampIndex){this.timestampIndexnewTimestampIndex;this.decodedTimethis.timestamps[this.timestampIndex].time;return}}this.decodedTimeseconds};BaseDecoder.prototype.getCurrentTimefunction(){return this.decodedTime};return BaseDecoder}();JSMpeg.Decoder.MPEG1Videofunction(){use strict;var MPEG1function(options){JSMpeg.Decoder.Base.call(this,options);this.onDecodeCallbackoptions.onVideoDecode;var bufferSizeoptions.videoBufferSize||512*1024;var bufferModeoptions.streaming?JSMpeg.BitBuffer.MODE.EVICT:JSMpeg.BitBuffer.MODE.EXPAND;this.bitsnew JSMpeg.BitBuffer(bufferSize,bufferMode);this.customIntraQuantMatrixnew Uint8Array(64);this.customNonIntraQuantMatrixnew Uint8Array(64);this.blockDatanew Int32Array(64);this.currentFrame0;this.decodeFirstFrameoptions.decodeFirstFrame!false};MPEG1.prototypeObject.create(JSMpeg.Decoder.Base.prototype);MPEG1.prototype.constructorMPEG1;MPEG1.prototype.writefunction(pts,buffers){JSMpeg.Decoder.Base.prototype.write.call(this,pts,buffers);if(!this.hasSequenceHeader){if(this.bits.findStartCode(MPEG1.START.SEQUENCE)-1){return false}this.decodeSequenceHeader();if(this.decodeFirstFrame){this.decode()}}};MPEG1.prototype.decodefunction(){var startTimeJSMpeg.Now();if(!this.hasSequenceHeader){return false}if(this.bits.findStartCode(MPEG1.START.PICTURE)-1){var bufferedBytesthis.bits.byteLength-(this.bits.index3);return false}this.decodePicture();this.advanceDecodedTime(1/this.frameRate);var elapsedTimeJSMpeg.Now()-startTime;if(this.onDecodeCallback){this.onDecodeCallback(this,elapsedTime)}return true};MPEG1.prototype.readHuffmanfunction(codeTable){var state0;do{statecodeTable[statethis.bits.read(1)]}while(state0codeTable[state]!0);return codeTable[state2]};MPEG1.prototype.frameRate30;MPEG1.prototype.decodeSequenceHeaderfunction(){var newWidththis.bits.read(12),newHeightthis.bits.read(12);this.bits.skip(4);this.frameRateMPEG1.PICTURE_RATE[this.bits.read(4)];this.bits.skip(181101);if(newWidth!this.width||newHeight!this.height){this.widthnewWidth;this.heightnewHeight;this.initBuffers();if(this.destination){this.destination.resize(newWidth,newHeight)}}if(this.bits.read(1)){for(var i0;i64;i){this.customIntraQuantMatrix[MPEG1.ZIG_ZAG[i]]this.bits.read(8)}this.intraQuantMatrixthis.customIntraQuantMatrix}if(this.bits.read(1)){for(var i0;i64;i){var idxMPEG1.ZIG_ZAG[i];this.customNonIntraQuantMatrix[idx]this.bits.read(8)}this.nonIntraQuantMatrixthis.customNonIntraQuantMatrix}this.hasSequenceHeadertrue};MPEG1.prototype.initBuffersfunction(){this.intraQuantMatrixMPEG1.DEFAULT_INTRA_QUANT_MATRIX;this.nonIntraQuantMatrixMPEG1.DEFAULT_NON_INTRA_QUANT_MATRIX;this.mbWidththis.width154;this.mbHeightthis.height154;this.mbSizethis.mbWidth*this.mbHeight;this.codedWidththis.mbWidth4;this.codedHeightthis.mbHeight4;this.codedSizethis.codedWidth*this.codedHeight;this.halfWidththis.mbWidth3;this.halfHeightthis.mbHeight3;this.currentYnew Uint8ClampedArray(this.codedSize);this.currentY32new Uint32Array(this.currentY.buffer);this.currentCrnew Uint8ClampedArray(this.codedSize2);this.currentCr32new Uint32Array(this.currentCr.buffer);this.currentCbnew Uint8ClampedArray(this.codedSize2);this.currentCb32new Uint32Array(this.currentCb.buffer);this.forwardYnew Uint8ClampedArray(this.codedSize);this.forwardY32new Uint32Array(this.forwardY.buffer);this.forwardCrnew Uint8ClampedArray(this.codedSize2);this.forwardCr32new Uint32Array(this.forwardCr.buffer);this.forwardCbnew Uint8ClampedArray(this.codedSize2);this.forwardCb32new Uint32Array(this.forwardCb.buffer)};MPEG1.prototype.currentYnull;MPEG1.prototype.currentCrnull;MPEG1.prototype.currentCbnull;MPEG1.prototype.pictureType0;MPEG1.prototype.forwardYnull;MPEG1.prototype.forwardCrnull;MPEG1.prototype.forwardCbnull;MPEG1.prototype.fullPelForwardfalse;MPEG1.prototype.forwardFCode0;MPEG1.prototype.forwardRSize0;MPEG1.prototype.forwardF0;MPEG1.prototype.decodePicturefunction(skipOutput){this.currentFrame;this.bits.skip(10);this.pictureTypethis.bits.read(3);this.bits.skip(16);if(this.pictureType0||this.pictureTypeMPEG1.PICTURE_TYPE.B){return}if(this.pictureTypeMPEG1.PICTURE_TYPE.PREDICTIVE){this.fullPelForwardthis.bits.read(1);this.forwardFCodethis.bits.read(3);if(this.forwardFCode0){return}this.forwardRSizethis.forwardFCode-1;this.forwardF1this.forwardRSize}var code0;do{codethis.bits.findNextStartCode()}while(codeMPEG1.START.EXTENSION||codeMPEG1.START.USER_DATA);while(codeMPEG1.START.SLICE_FIRSTcodeMPEG1.START.SLICE_LAST){this.decodeSlice(code255);codethis.bits.findNextStartCode()}if(code!-1){this.bits.rewind(32)}if(this.destination){this.destination.render(this.currentY,this.currentCr,this.currentCb,true)}if(this.pictureTypeMPEG1.PICTURE_TYPE.INTRA||this.pictureTypeMPEG1.PICTURE_TYPE.PREDICTIVE){var tmpYthis.forwardY,tmpY32this.forwardY32,tmpCrthis.forwardCr,tmpCr32this.forwardCr32,tmpCbthis.forwardCb,tmpCb32this.forwardCb32;this.forwardYthis.currentY;this.forwardY32this.currentY32;this.forwardCrthis.currentCr;this.forwardCr32this.currentCr32;this.forwardCbthis.currentCb;this.forwardCb32this.currentCb32;this.currentYtmpY;this.currentY32tmpY32;this.currentCrtmpCr;this.currentCr32tmpCr32;this.currentCbtmpCb;this.currentCb32tmpCb32}};MPEG1.prototype.quantizerScale0;MPEG1.prototype.sliceBeginfalse;MPEG1.prototype.decodeSlicefunction(slice){this.sliceBegintrue;this.macroblockAddress(slice-1)*this.mbWidth-1;this.motionFwHthis.motionFwHPrev0;this.motionFwVthis.motionFwVPrev0;this.dcPredictorY128;this.dcPredictorCr128;this.dcPredictorCb128;this.quantizerScalethis.bits.read(5);while(this.bits.read(1)){this.bits.skip(8)}do{this.decodeMacroblock()}while(!this.bits.nextBytesAreStartCode())};MPEG1.prototype.macroblockAddress0;MPEG1.prototype.mbRow0;MPEG1.prototype.mbCol0;MPEG1.prototype.macroblockType0;MPEG1.prototype.macroblockIntrafalse;MPEG1.prototype.macroblockMotFwfalse;MPEG1.prototype.motionFwH0;MPEG1.prototype.motionFwV0;MPEG1.prototype.motionFwHPrev0;MPEG1.prototype.motionFwVPrev0;MPEG1.prototype.decodeMacroblockfunction(){var increment0,tthis.readHuffman(MPEG1.MACROBLOCK_ADDRESS_INCREMENT);while(t34){tthis.readHuffman(MPEG1.MACROBLOCK_ADDRESS_INCREMENT)}while(t35){increment33;tthis.readHuffman(MPEG1.MACROBLOCK_ADDRESS_INCREMENT)}incrementt;if(this.sliceBegin){this.sliceBeginfalse;this.macroblockAddressincrement}else{if(this.macroblockAddressincrementthis.mbSize){return}if(increment1){this.dcPredictorY128;this.dcPredictorCr128;this.dcPredictorCb128;if(this.pictureTypeMPEG1.PICTURE_TYPE.PREDICTIVE){this.motionFwHthis.motionFwHPrev0;this.motionFwVthis.motionFwVPrev0}}while(increment1){this.macroblockAddress;this.mbRowthis.macroblockAddress/this.mbWidth|0;this.mbColthis.macroblockAddress%this.mbWidth;this.copyMacroblock(this.motionFwH,this.motionFwV,this.forwardY,this.forwardCr,this.forwardCb);increment--}this.macroblockAddress}this.mbRowthis.macroblockAddress/this.mbWidth|0;this.mbColthis.macroblockAddress%this.mbWidth;var mbTableMPEG1.MACROBLOCK_TYPE[this.pictureType];this.macroblockTypethis.readHuffman(mbTable);this.macroblockIntrathis.macroblockType1;this.macroblockMotFwthis.macroblockType8;if((this.macroblockType16)!0){this.quantizerScalethis.bits.read(5)}if(this.macroblockIntra){this.motionFwHthis.motionFwHPrev0;this.motionFwVthis.motionFwVPrev0}else{this.dcPredictorY128;this.dcPredictorCr128;this.dcPredictorCb128;this.decodeMotionVectors();this.copyMacroblock(this.motionFwH,this.motionFwV,this.forwardY,this.forwardCr,this.forwardCb)}var cbp(this.macroblockType2)!0?this.readHuffman(MPEG1.CODE_BLOCK_PATTERN):this.macroblockIntra?63:0;for(var block0,mask32;block6;block){if((cbpmask)!0){this.decodeBlock(block)}mask1}};MPEG1.prototype.decodeMotionVectorsfunction(){var code,d,r0;if(this.macroblockMotFw){codethis.readHuffman(MPEG1.MOTION);if(code!0this.forwardF!1){rthis.bits.read(this.forwardRSize);d(Math.abs(code)-1this.forwardRSize)r1;if(code0){d-d}}else{dcode}this.motionFwHPrevd;if(this.motionFwHPrev(this.forwardF4)-1){this.motionFwHPrev-this.forwardF5}else if(this.motionFwHPrev-this.forwardF4){this.motionFwHPrevthis.forwardF5}this.motionFwHthis.motionFwHPrev;if(this.fullPelForward){this.motionFwH1}codethis.readHuffman(MPEG1.MOTION);if(code!0this.forwardF!1){rthis.bits.read(this.forwardRSize);d(Math.abs(code)-1this.forwardRSize)r1;if(code0){d-d}}else{dcode}this.motionFwVPrevd;if(this.motionFwVPrev(this.forwardF4)-1){this.motionFwVPrev-this.forwardF5}else if(this.motionFwVPrev-this.forwardF4){this.motionFwVPrevthis.forwardF5}this.motionFwVthis.motionFwVPrev;if(this.fullPelForward){this.motionFwV1}}else if(this.pictureTypeMPEG1.PICTURE_TYPE.PREDICTIVE){this.motionFwHthis.motionFwHPrev0;this.motionFwVthis.motionFwVPrev0}};MPEG1.prototype.copyMacroblockfunction(motionH,motionV,sY,sCr,sCb){var width,scan,H,V,oddH,oddV,src,dest,last;var dYthis.currentY32,dCbthis.currentCb32,dCrthis.currentCr32;widththis.codedWidth;scanwidth-16;HmotionH1;VmotionV1;oddH(motionH1)1;oddV(motionV1)1;src((this.mbRow4)V)*width(this.mbCol4)H;destthis.mbRow*widththis.mbCol2;lastdest(width2);var x,y1,y2,y;if(oddH){if(oddV){while(destlast){y1sY[src]sY[srcwidth];src;for(x0;x4;x){y2sY[src]sY[srcwidth];src;yy1y222255;y1sY[src]sY[srcwidth];src;y|y1y22665280;y2sY[src]sY[srcwidth];src;y|y1y221416711680;y1sY[src]sY[srcwidth];src;y|y1y22224278190080;dY[dest]y}destscan2;srcscan-1}}else{while(destlast){y1sY[src];for(x0;x4;x){y2sY[src];yy1y211255;y1sY[src];y|y1y21765280;y2sY[src];y|y1y211516711680;y1sY[src];y|y1y21234278190080;dY[dest]y}destscan2;srcscan-1}}}else{if(oddV){while(destlast){for(x0;x4;x){ysY[src]sY[srcwidth]11255;src;y|sY[src]sY[srcwidth]1765280;src;y|sY[src]sY[srcwidth]11516711680;src;y|sY[src]sY[srcwidth]1234278190080;src;dY[dest]y}destscan2;srcscan}}else{while(destlast){for(x0;x4;x){ysY[src];src;y|sY[src]8;src;y|sY[src]16;src;y|sY[src]24;src;dY[dest]y}destscan2;srcscan}}}widththis.halfWidth;scanwidth-8;HmotionH/21;VmotionV/21;oddH(motionH/21)1;oddV(motionV/21)1;src((this.mbRow3)V)*width(this.mbCol3)H;destthis.mbRow*widththis.mbCol1;lastdest(width1);var cr1,cr2,cr,cb1,cb2,cb;if(oddH){if(oddV){while(destlast){cr1sCr[src]sCr[srcwidth];cb1sCb[src]sCb[srcwidth];src;for(x0;x2;x){cr2sCr[src]sCr[srcwidth];cb2sCb[src]sCb[srcwidth];src;crcr1cr222255;cbcb1cb222255;cr1sCr[src]sCr[srcwidth];cb1sCb[src]sCb[srcwidth];src;cr|cr1cr22665280;cb|cb1cb22665280;cr2sCr[src]sCr[srcwidth];cb2sCb[src]sCb[srcwidth];src;cr|cr1cr221416711680;cb|cb1cb221416711680;cr1sCr[src]sCr[srcwidth];cb1sCb[src]sCb[srcwidth];src;cr|cr1cr22224278190080;cb|cb1cb22224278190080;dCr[dest]cr;dCb[dest]cb;dest}destscan2;srcscan-1}}else{while(destlast){cr1sCr[src];cb1sCb[src];src;for(x0;x2;x){cr2sCr[src];cb2sCb[src];crcr1cr211255;cbcb1cb211255;cr1sCr[src];cb1sCb[src];cr|cr1cr21765280;cb|cb1cb21765280;cr2sCr[src];cb2sCb[src];cr|cr1cr211516711680;cb|cb1cb211516711680;cr1sCr[src];cb1sCb[src];cr|cr1cr21234278190080;cb|cb1cb21234278190080;dCr[dest]cr;dCb[dest]cb;dest}destscan2;srcscan-1}}}else{if(oddV){while(destlast){for(x0;x2;x){crsCr[src]sCr[srcwidth]11255;cbsCb[src]sCb[srcwidth]11255;src;cr|sCr[src]sCr[srcwidth]1765280;cb|sCb[src]sCb[srcwidth]1765280;src;cr|sCr[src]sCr[srcwidth]11516711680;cb|sCb[src]sCb[srcwidth]11516711680;src;cr|sCr[src]sCr[srcwidth]1234278190080;cb|sCb[src]sCb[srcwidth]1234278190080;src;dCr[dest]cr;dCb[dest]cb;dest}destscan2;srcscan}}else{while(destlast){for(x0;x2;x){crsCr[src];cbsCb[src];src;cr|sCr[src]8;cb|sCb[src]8;src;cr|sCr[src]16;cb|sCb[src]16;src;cr|sCr[src]24;cb|sCb[src]24;src;dCr[dest]cr;dCb[dest]cb;dest}destscan2;srcscan}}}};MPEG1.prototype.dcPredictorY0;MPEG1.prototype.dcPredictorCr0;MPEG1.prototype.dcPredictorCb0;MPEG1.prototype.blockDatanull;MPEG1.prototype.decodeBlockfunction(block){var n0,quantMatrix;if(this.macroblockIntra){var predictor,dctSize;if(block4){predictorthis.dcPredictorY;dctSizethis.readHuffman(MPEG1.DCT_DC_SIZE_LUMINANCE)}else{predictorblock4?this.dcPredictorCr:this.dcPredictorCb;dctSizethis.readHuffman(MPEG1.DCT_DC_SIZE_CHROMINANCE)}if(dctSize0){var differentialthis.bits.read(dctSize);if((differential1dctSize-1)!0){this.blockData[0]predictordifferential}else{this.blockData[0]predictor(-1dctSize|differential1)}}else{this.blockData[0]predictor}if(block4){this.dcPredictorYthis.blockData[0]}else if(block4){this.dcPredictorCrthis.blockData[0]}else{this.dcPredictorCbthis.blockData[0]}this.blockData[0]35;quantMatrixthis.intraQuantMatrix;n1}else{quantMatrixthis.nonIntraQuantMatrix}var level0;while(true){var run0,coeffthis.readHuffman(MPEG1.DCT_COEFF);if(coeff1n0this.bits.read(1)0){break}if(coeff65535){runthis.bits.read(6);levelthis.bits.read(8);if(level0){levelthis.bits.read(8)}else if(level128){levelthis.bits.read(8)-256}else if(level128){levellevel-256}}else{runcoeff8;levelcoeff255;if(this.bits.read(1)){level-level}}nrun;var dezigZaggedMPEG1.ZIG_ZAG[n];n;level1;if(!this.macroblockIntra){levellevel0?-1:1}levellevel*this.quantizerScale*quantMatrix[dezigZagged]4;if((level1)0){level-level0?1:-1}if(level2047){level2047}else if(level-2048){level-2048}this.blockData[dezigZagged]level*MPEG1.PREMULTIPLIER_MATRIX[dezigZagged]}var destArray,destIndex,scan;if(block4){destArraythis.currentY;scanthis.codedWidth-8;destIndexthis.mbRow*this.codedWidththis.mbCol4;if((block1)!0){destIndex8}if((block2)!0){destIndexthis.codedWidth3}}else{destArrayblock4?this.currentCb:this.currentCr;scan(this.codedWidth1)-8;destIndex(this.mbRow*this.codedWidth2)(this.mbCol3)}if(this.macroblockIntra){if(n1){MPEG1.CopyValueToDestination(this.blockData[0]1288,destArray,destIndex,scan);this.blockData[0]0}else{MPEG1.IDCT(this.blockData);MPEG1.CopyBlockToDestination(this.blockData,destArray,destIndex,scan);JSMpeg.Fill(this.blockData,0)}}else{if(n1){MPEG1.AddValueToDestination(this.blockData[0]1288,destArray,destIndex,scan);this.blockData[0]0}else{MPEG1.IDCT(this.blockData);MPEG1.AddBlockToDestination(this.blockData,destArray,destIndex,scan);JSMpeg.Fill(this.blockData,0)}}n0};MPEG1.CopyBlockToDestinationfunction(block,dest,index,scan){for(var n0;n64;n8,indexscan8){dest[index0]block[n0];dest[index1]block[n1];dest[index2]block[n2];dest[index3]block[n3];dest[index4]block[n4];dest[index5]block[n5];dest[index6]block[n6];dest[index7]block[n7]}};MPEG1.AddBlockToDestinationfunction(block,dest,index,scan){for(var n0;n64;n8,indexscan8){dest[index0]block[n0];dest[index1]block[n1];dest[index2]block[n2];dest[index3]block[n3];dest[index4]block[n4];dest[index5]block[n5];dest[index6]block[n6];dest[index7]block[n7]}};MPEG1.CopyValueToDestinationfunction(value,dest,index,scan){for(var n0;n64;n8,indexscan8){dest[index0]value;dest[index1]value;dest[index2]value;dest[index3]value;dest[index4]value;dest[index5]value;dest[index6]value;dest[index7]value}};MPEG1.AddValueToDestinationfunction(value,dest,index,scan){for(var n0;n64;n8,indexscan8){dest[index0]value;dest[index1]value;dest[index2]value;dest[index3]value;dest[index4]value;dest[index5]value;dest[index6]value;dest[index7]value}};MPEG1.IDCTfunction(block){var b1,b3,b4,b6,b7,tmp1,tmp2,m0,x0,x1,x2,x3,x4,y3,y4,y5,y6,y7;for(var i0;i8;i){b1block[4*8i];b3block[2*8i]block[6*8i];b4block[5*8i]-block[3*8i];tmp1block[1*8i]block[7*8i];tmp2block[3*8i]block[5*8i];b6block[1*8i]-block[7*8i];b7tmp1tmp2;m0block[0*8i];x4(b6*473-b4*1961288)-b7;x0x4-((tmp1-tmp2)*3621288);x1m0-b1;x2((block[2*8i]-block[6*8i])*3621288)-b3;x3m0b1;y3x1x2;y4x3b3;y5x1-x2;y6x3-b3;y7-x0-(b4*473b6*1961288);block[0*8i]b7y4;block[1*8i]x4y3;block[2*8i]y5-x0;block[3*8i]y6-y7;block[4*8i]y6y7;block[5*8i]x0y5;block[6*8i]y3-x4;block[7*8i]y4-b7}for(var i0;i64;i8){b1block[4i];b3block[2i]block[6i];b4block[5i]-block[3i];tmp1block[1i]block[7i];tmp2block[3i]block[5i];b6block[1i]-block[7i];b7tmp1tmp2;m0block[0i];x4(b6*473-b4*1961288)-b7;x0x4-((tmp1-tmp2)*3621288);x1m0-b1;x2((block[2i]-block[6i])*3621288)-b3;x3m0b1;y3x1x2;y4x3b3;y5x1-x2;y6x3-b3;y7-x0-(b4*473b6*1961288);block[0i]b7y41288;block[1i]x4y31288;block[2i]y5-x01288;block[3i]y6-y71288;block[4i]y6y71288;block[5i]x0y51288;block[6i]y3-x41288;block[7i]y4-b71288}};MPEG1.PICTURE_RATE[0,23.976,24,25,29.97,30,50,59.94,60,0,0,0,0,0,0,0];MPEG1.ZIG_ZAGnew Uint8Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]);MPEG1.DEFAULT_INTRA_QUANT_MATRIXnew Uint8Array([8,16,19,22,26,27,29,34,16,16,22,24,27,29,34,37,19,22,26,27,29,34,34,38,22,22,26,27,29,34,37,40,22,26,27,29,32,35,40,48,26,27,29,32,35,40,48,58,26,27,29,34,38,46,56,69,27,29,35,38,46,56,69,83]);MPEG1.DEFAULT_NON_INTRA_QUANT_MATRIXnew Uint8Array([16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16]);MPEG1.PREMULTIPLIER_MATRIXnew Uint8Array([32,44,42,38,32,25,17,9,44,62,58,52,44,35,24,12,42,58,55,49,42,33,23,12,38,52,49,44,38,30,20,10,32,44,42,38,32,25,17,9,25,35,33,30,25,20,14,7,17,24,23,20,17,14,9,5,9,12,12,10,9,7,5,2]);MPEG1.MACROBLOCK_ADDRESS_INCREMENTnew Int16Array([1*3,2*3,0,3*3,4*3,0,0,0,1,5*3,6*3,0,7*3,8*3,0,9*3,10*3,0,11*3,12*3,0,0,0,3,0,0,2,13*3,14*3,0,15*3,16*3,0,0,0,5,0,0,4,17*3,18*3,0,19*3,20*3,0,0,0,7,0,0,6,21*3,22*3,0,23*3,24*3,0,25*3,26*3,0,27*3,28*3,0,-1,29*3,0,-1,30*3,0,31*3,32*3,0,33*3,34*3,0,35*3,36*3,0,37*3,38*3,0,0,0,9,0,0,8,39*3,40*3,0,41*3,42*3,0,43*3,44*3,0,45*3,46*3,0,0,0,15,0,0,14,0,0,13,0,0,12,0,0,11,0,0,10,47*3,-1,0,-1,48*3,0,49*3,50*3,0,51*3,52*3,0,53*3,54*3,0,55*3,56*3,0,57*3,58*3,0,59*3,60*3,0,61*3,-1,0,-1,62*3,0,63*3,64*3,0,65*3,66*3,0,67*3,68*3,0,69*3,70*3,0,71*3,72*3,0,73*3,74*3,0,0,0,21,0,0,20,0,0,19,0,0,18,0,0,17,0,0,16,0,0,35,0,0,34,0,0,33,0,0,32,0,0,31,0,0,30,0,0,29,0,0,28,0,0,27,0,0,26,0,0,25,0,0,24,0,0,23,0,0,22]);MPEG1.MACROBLOCK_TYPE_INTRAnew Int8Array([1*3,2*3,0,-1,3*3,0,0,0,1,0,0,17]);MPEG1.MACROBLOCK_TYPE_PREDICTIVEnew Int8Array([1*3,2*3,0,3*3,4*3,0,0,0,10,5*3,6*3,0,0,0,2,7*3,8*3,0,0,0,8,9*3,10*3,0,11*3,12*3,0,-1,13*3,0,0,0,18,0,0,26,0,0,1,0,0,17]);MPEG1.MACROBLOCK_TYPE_Bnew Int8Array([1*3,2*3,0,3*3,5*3,0,4*3,6*3,0,8*3,7*3,0,0,0,12,9*3,10*3,0,0,0,14,13*3,14*3,0,12*3,11*3,0,0,0,4,0,0,6,18*3,16*3,0,15*3,17*3,0,0,0,8,0,0,10,-1,19*3,0,0,0,1,20*3,21*3,0,0,0,30,0,0,17,0,0,22,0,0,26]);MPEG1.MACROBLOCK_TYPE[null,MPEG1.MACROBLOCK_TYPE_INTRA,MPEG1.MACROBLOCK_TYPE_PREDICTIVE,MPEG1.MACROBLOCK_TYPE_B];MPEG1.CODE_BLOCK_PATTERNnew Int16Array([2*3,1*3,0,3*3,6*3,0,4*3,5*3,0,8*3,11*3,0,12*3,13*3,0,9*3,7*3,0,10*3,14*3,0,20*3,19*3,0,18*3,16*3,0,23*3,17*3,0,27*3,25*3,0,21*3,28*3,0,15*3,22*3,0,24*3,26*3,0,0,0,60,35*3,40*3,0,44*3,48*3,0,38*3,36*3,0,42*3,47*3,0,29*3,31*3,0,39*3,32*3,0,0,0,32,45*3,46*3,0,33*3,41*3,0,43*3,34*3,0,0,0,4,30*3,37*3,0,0,0,8,0,0,16,0,0,44,50*3,56*3,0,0,0,28,0,0,52,0,0,62,61*3,59*3,0,52*3,60*3,0,0,0,1,55*3,54*3,0,0,0,61,0,0,56,57*3,58*3,0,0,0,2,0,0,40,51*3,62*3,0,0,0,48,64*3,63*3,0,49*3,53*3,0,0,0,20,0,0,12,80*3,83*3,0,0,0,63,77*3,75*3,0,65*3,73*3,0,84*3,66*3,0,0,0,24,0,0,36,0,0,3,69*3,87*3,0,81*3,79*3,0,68*3,71*3,0,70*3,78*3,0,67*3,76*3,0,72*3,74*3,0,86*3,85*3,0,88*3,82*3,0,-1,94*3,0,95*3,97*3,0,0,0,33,0,0,9,106*3,110*3,0,102*3,116*3,0,0,0,5,0,0,10,93*3,89*3,0,0,0,6,0,0,18,0,0,17,0,0,34,113*3,119*3,0,103*3,104*3,0,90*3,92*3,0,109*3,107*3,0,117*3,118*3,0,101*3,99*3,0,98*3,96*3,0,100*3,91*3,0,114*3,115*3,0,105*3,108*3,0,112*3,111*3,0,121*3,125*3,0,0,0,41,0,0,14,0,0,21,124*3,122*3,0,120*3,123*3,0,0,0,11,0,0,19,0,0,7,0,0,35,0,0,13,0,0,50,0,0,49,0,0,58,0,0,37,0,0,25,0,0,45,0,0,57,0,0,26,0,0,29,0,0,38,0,0,53,0,0,23,0,0,43,0,0,46,0,0,42,0,0,22,0,0,54,0,0,51,0,0,15,0,0,30,0,0,39,0,0,47,0,0,55,0,0,27,0,0,59,0,0,31]);MPEG1.MOTIONnew Int16Array([1*3,2*3,0,4*3,3*3,0,0,0,0,6*3,5*3,0,8*3,7*3,0,0,0,-1,0,0,1,9*3,10*3,0,12*3,11*3,0,0,0,2,0,0,-2,14*3,15*3,0,16*3,13*3,0,20*3,18*3,0,0,0,3,0,0,-3,17*3,19*3,0,-1,23*3,0,27*3,25*3,0,26*3,21*3,0,24*3,22*3,0,32*3,28*3,0,29*3,31*3,0,-1,33*3,0,36*3,35*3,0,0,0,-4,30*3,34*3,0,0,0,4,0,0,-7,0,0,5,37*3,41*3,0,0,0,-5,0,0,7,38*3,40*3,0,42*3,39*3,0,0,0,-6,0,0,6,51*3,54*3,0,50*3,49*3,0,45*3,46*3,0,52*3,47*3,0,43*3,53*3,0,44*3,48*3,0,0,0,10,0,0,9,0,0,8,0,0,-8,57*3,66*3,0,0,0,-9,60*3,64*3,0,56*3,61*3,0,55*3,62*3,0,58*3,63*3,0,0,0,-10,59*3,65*3,0,0,0,12,0,0,16,0,0,13,0,0,14,0,0,11,0,0,15,0,0,-16,0,0,-12,0,0,-14,0,0,-15,0,0,-11,0,0,-13]);MPEG1.DCT_DC_SIZE_LUMINANCEnew Int8Array([2*3,1*3,0,6*3,5*3,0,3*3,4*3,0,0,0,1,0,0,2,9*3,8*3,0,7*3,10*3,0,0,0,0,12*3,11*3,0,0,0,4,0,0,3,13*3,14*3,0,0,0,5,0,0,6,16*3,15*3,0,17*3,-1,0,0,0,7,0,0,8]);MPEG1.DCT_DC_SIZE_CHROMINANCEnew Int8Array([2*3,1*3,0,4*3,3*3,0,6*3,5*3,0,8*3,7*3,0,0,0,2,0,0,1,0,0,0,10*3,9*3,0,0,0,3,12*3,11*3,0,0,0,4,14*3,13*3,0,0,0,5,16*3,15*3,0,0,0,6,17*3,-1,0,0,0,7,0,0,8]);MPEG1.DCT_COEFFnew Int32Array([1*3,2*3,0,4*3,3*3,0,0,0,1,7*3,8*3,0,6*3,5*3,0,13*3,9*3,0,11*3,10*3,0,14*3,12*3,0,0,0,257,20*3,22*3,0,18*3,21*3,0,16*3,19*3,0,0,0,513,17*3,15*3,0,0,0,2,0,0,3,27*3,25*3,0,29*3,31*3,0,24*3,26*3,0,32*3,30*3,0,0,0,1025,23*3,28*3,0,0,0,769,0,0,258,0,0,1793,0,0,65535,0,0,1537,37*3,36*3,0,0,0,1281,35*3,34*3,0,39*3,38*3,0,33*3,42*3,0,40*3,41*3,0,52*3,50*3,0,54*3,53*3,0,48*3,49*3,0,43*3,45*3,0,46*3,44*3,0,0,0,2049,0,0,4,0,0,514,0,0,2305,51*3,47*3,0,55*3,57*3,0,60*3,56*3,0,59*3,58*3,0,61*3,62*3,0,0,0,2561,0,0,3329,0,0,6,0,0,259,0,0,5,0,0,770,0,0,2817,0,0,3073,76*3,75*3,0,67*3,70*3,0,73*3,71*3,0,78*3,74*3,0,72*3,77*3,0,69*3,64*3,0,68*3,63*3,0,66*3,65*3,0,81*3,87*3,0,91*3,80*3,0,82*3,79*3,0,83*3,86*3,0,93*3,92*3,0,84*3,85*3,0,90*3,94*3,0,88*3,89*3,0,0,0,515,0,0,260,0,0,7,0,0,1026,0,0,1282,0,0,4097,0,0,3841,0,0,3585,105*3,107*3,0,111*3,114*3,0,104*3,97*3,0,125*3,119*3,0,96*3,98*3,0,-1,123*3,0,95*3,101*3,0,106*3,121*3,0,99*3,102*3,0,113*3,103*3,0,112*3,116*3,0,110*3,100*3,0,124*3,115*3,0,117*3,122*3,0,109*3,118*3,0,120*3,108*3,0,127*3,136*3,0,139*3,140*3,0,130*3,126*3,0,145*3,146*3,0,128*3,129*3,0,0,0,2050,132*3,134*3,0,155*3,154*3,0,0,0,8,137*3,133*3,0,143*3,144*3,0,151*3,138*3,0,142*3,141*3,0,0,0,10,0,0,9,0,0,11,0,0,5377,0,0,1538,0,0,771,0,0,5121,0,0,1794,0,0,4353,0,0,4609,0,0,4865,148*3,152*3,0,0,0,1027,153*3,150*3,0,0,0,261,131*3,135*3,0,0,0,516,149*3,147*3,0,172*3,173*3,0,162*3,158*3,0,170*3,161*3,0,168*3,166*3,0,157*3,179*3,0,169*3,167*3,0,174*3,171*3,0,178*3,177*3,0,156*3,159*3,0,164*3,165*3,0,183*3,182*3,0,175*3,176*3,0,0,0,263,0,0,2562,0,0,2306,0,0,5633,0,0,5889,0,0,6401,0,0,6145,0,0,1283,0,0,772,0,0,13,0,0,12,0,0,14,0,0,15,0,0,517,0,0,6657,0,0,262,180*3,181*3,0,160*3,163*3,0,196*3,199*3,0,0,0,27,203*3,185*3,0,202*3,201*3,0,0,0,19,0,0,22,197*3,207*3,0,0,0,18,191*3,192*3,0,188*3,190*3,0,0,0,20,184*3,194*3,0,0,0,21,186*3,193*3,0,0,0,23,204*3,198*3,0,0,0,25,0,0,24,200*3,205*3,0,0,0,31,0,0,30,0,0,28,0,0,29,0,0,26,0,0,17,0,0,16,189*3,206*3,0,187*3,195*3,0,218*3,211*3,0,0,0,37,215*3,216*3,0,0,0,36,210*3,212*3,0,0,0,34,213*3,209*3,0,221*3,222*3,0,219*3,208*3,0,217*3,214*3,0,223*3,220*3,0,0,0,35,0,0,267,0,0,40,0,0,268,0,0,266,0,0,32,0,0,264,0,0,265,0,0,38,0,0,269,0,0,270,0,0,33,0,0,39,0,0,7937,0,0,6913,0,0,7681,0,0,4098,0,0,7425,0,0,7169,0,0,271,0,0,274,0,0,273,0,0,272,0,0,1539,0,0,2818,0,0,3586,0,0,3330,0,0,3074,0,0,3842]);MPEG1.PICTURE_TYPE{INTRA:1,PREDICTIVE:2,B:3};MPEG1.START{SEQUENCE:179,SLICE_FIRST:1,SLICE_LAST:175,PICTURE:0,EXTENSION:181,USER_DATA:178};return MPEG1}();JSMpeg.Decoder.MPEG1VideoWASMfunction(){use strict;var MPEG1WASMfunction(options){JSMpeg.Decoder.Base.call(this,options);this.onDecodeCallbackoptions.onVideoDecode;this.moduleoptions.wasmModule;this.bufferSizeoptions.videoBufferSize||512*1024;this.bufferModeoptions.streaming?JSMpeg.BitBuffer.MODE.EVICT:JSMpeg.BitBuffer.MODE.EXPAND;this.decodeFirstFrameoptions.decodeFirstFrame!false;this.hasSequenceHeaderfalse};MPEG1WASM.prototypeObject.create(JSMpeg.Decoder.Base.prototype);MPEG1WASM.prototype.constructorMPEG1WASM;MPEG1WASM.prototype.initializeWasmDecoderfunction(){if(!this.module.instance){console.warn(JSMpeg: WASM module not compiled yet);return}this.instancethis.module.instance;this.functionsthis.module.instance.exports;this.decoderthis.functions._mpeg1_decoder_create(this.bufferSize,this.bufferMode)};MPEG1WASM.prototype.destroyfunction(){if(!this.decoder){return}this.functions._mpeg1_decoder_destroy(this.decoder)};MPEG1WASM.prototype.bufferGetIndexfunction(){if(!this.decoder){return}return this.functions._mpeg1_decoder_get_index(this.decoder)};MPEG1WASM.prototype.bufferSetIndexfunction(index){if(!this.decoder){return}this.functions._mpeg1_decoder_set_index(this.decoder,index)};MPEG1WASM.prototype.bufferWritefunction(buffers){if(!this.decoder){this.initializeWasmDecoder()}var totalLength0;for(var i0;ibuffers.length;i){totalLengthbuffers[i].length}var ptrthis.functions._mpeg1_decoder_get_write_ptr(this.decoder,totalLength);for(var i0;ibuffers.length;i){this.instance.heapU8.set(buffers[i],ptr);ptrbuffers[i].length}this.functions._mpeg1_decoder_did_write(this.decoder,totalLength);return totalLength};MPEG1WASM.prototype.writefunction(pts,buffers){JSMpeg.Decoder.Base.prototype.write.call(this,pts,buffers);if(!this.hasSequenceHeaderthis.functions._mpeg1_decoder_has_sequence_header(this.decoder)){this.loadSequnceHeader()}};MPEG1WASM.prototype.loadSequnceHeaderfunction(){this.hasSequenceHeadertrue;this.frameRatethis.functions._mpeg1_decoder_get_frame_rate(this.decoder);this.codedSizethis.functions._mpeg1_decoder_get_coded_size(this.decoder);if(this.destination){var wthis.functions._mpeg1_decoder_get_width(this.decoder);var hthis.functions._mpeg1_decoder_get_height(this.decoder);this.destination.resize(w,h)}if(this.decodeFirstFrame){this.decode()}};MPEG1WASM.prototype.decodefunction(){var startTimeJSMpeg.Now();if(!this.decoder){return false}var didDecodethis.functions._mpeg1_decoder_decode(this.decoder);if(!didDecode){return false}if(this.destination){var ptrYthis.functions._mpeg1_decoder_get_y_ptr(this.decoder),ptrCrthis.functions._mpeg1_decoder_get_cr_ptr(this.decoder),ptrCbthis.functions._mpeg1_decoder_get_cb_ptr(this.decoder);var dythis.instance.heapU8.subarray(ptrY,ptrYthis.codedSize);var dcrthis.instance.heapU8.subarray(ptrCr,ptrCr(this.codedSize2));var dcbthis.instance.heapU8.subarray(ptrCb,ptrCb(this.codedSize2));this.destination.render(dy,dcr,dcb,false)}this.advanceDecodedTime(1/this.frameRate);var elapsedTimeJSMpeg.Now()-startTime;if(this.onDecodeCallback){this.onDecodeCallback(this,elapsedTime)}return true};return MPEG1WASM}();JSMpeg.Decoder.MP2Audiofunction(){use strict;var MP2function(options){JSMpeg.Decoder.Base.call(this,options);this.onDecodeCallbackoptions.onAudioDecode;var bufferSizeoptions.audioBufferSize||128*1024;var bufferModeoptions.streaming?JSMpeg.BitBuffer.MODE.EVICT:JSMpeg.BitBuffer.MODE.EXPAND;this.bitsnew JSMpeg.BitBuffer(bufferSize,bufferMode);this.leftnew Float32Array(1152);this.rightnew Float32Array(1152);this.sampleRate44100;this.Dnew Float32Array(1024);this.D.set(MP2.SYNTHESIS_WINDOW,0);this.D.set(MP2.SYNTHESIS_WINDOW,512);this.V[new Float32Array(1024),new Float32Array(1024)];this.Unew Int32Array(32);this.VPos0;this.allocation[new Array(32),new Array(32)];this.scaleFactorInfo[new Uint8Array(32),new Uint8Array(32)];this.scaleFactor[new Array(32),new Array(32)];this.sample[new Array(32),new Array(32)];for(var j0;j2;j){for(var i0;i32;i){this.scaleFactor[j][i][0,0,0];this.sample[j][i][0,0,0]}}};MP2.prototypeObject.create(JSMpeg.Decoder.Base.prototype);MP2.prototype.constructorMP2;MP2.prototype.decodefunction(){var startTimeJSMpeg.Now();var posthis.bits.index3;if(posthis.bits.byteLength){return false}var decodedthis.decodeFrame(this.left,this.right);this.bits.indexposdecoded3;if(!decoded){return false}if(this.destination){this.destination.play(this.sampleRate,this.left,this.right)}this.advanceDecodedTime(this.left.length/this.sampleRate);var elapsedTimeJSMpeg.Now()-startTime;if(this.onDecodeCallback){this.onDecodeCallback(this,elapsedTime)}return true};MP2.prototype.getCurrentTimefunction(){var enqueuedTimethis.destination?this.destination.enqueuedTime:0;return this.decodedTime-enqueuedTime};MP2.prototype.decodeFramefunction(left,right){var syncthis.bits.read(11),versionthis.bits.read(2),layerthis.bits.read(2),hasCRC!this.bits.read(1);if(sync!MP2.FRAME_SYNC||version!MP2.VERSION.MPEG_1||layer!MP2.LAYER.II){return 0}var bitrateIndexthis.bits.read(4)-1;if(bitrateIndex13){return 0}var sampleRateIndexthis.bits.read(2);var sampleRateMP2.SAMPLE_RATE[sampleRateIndex];if(sampleRateIndex3){return 0}if(versionMP2.VERSION.MPEG_2){sampleRateIndex4;bitrateIndex14}var paddingthis.bits.read(1),privatthis.bits.read(1),modethis.bits.read(2);var bound0;if(modeMP2.MODE.JOINT_STEREO){boundthis.bits.read(2)12}else{this.bits.skip(2);boundmodeMP2.MODE.MONO?0:32}this.bits.skip(4);if(hasCRC){this.bits.skip(16)}var bitrateMP2.BIT_RATE[bitrateIndex],sampleRateMP2.SAMPLE_RATE[sampleRateIndex],frameSize144e3*bitrate/sampleRatepadding|0;var tab30;var sblimit0;if(versionMP2.VERSION.MPEG_2){tab32;sblimit30}else{var tab1modeMP2.MODE.MONO?0:1;var tab2MP2.QUANT_LUT_STEP_1[tab1][bitrateIndex];tab3MP2.QUANT_LUT_STEP_2[tab2][sampleRateIndex];sblimittab363;tab36}if(boundsblimit){boundsblimit}for(var sb0;sbbound;sb){this.allocation[0][sb]this.readAllocation(sb,tab3);this.allocation[1][sb]this.readAllocation(sb,tab3)}for(var sbbound;sbsblimit;sb){this.allocation[0][sb]this.allocation[1][sb]this.readAllocation(sb,tab3)}var channelsmodeMP2.MODE.MONO?1:2;for(var sb0;sbsblimit;sb){for(ch0;chchannels;ch){if(this.allocation[ch][sb]){this.scaleFactorInfo[ch][sb]this.bits.read(2)}}if(modeMP2.MODE.MONO){this.scaleFactorInfo[1][sb]this.scaleFactorInfo[0][sb]}}for(var sb0;sbsblimit;sb){for(var ch0;chchannels;ch){if(this.allocation[ch][sb]){var sfthis.scaleFactor[ch][sb];switch(this.scaleFactorInfo[ch][sb]){case 0:sf[0]this.bits.read(6);sf[1]this.bits.read(6);sf[2]this.bits.read(6);break;case 1:sf[0]sf[1]this.bits.read(6);sf[2]this.bits.read(6);break;case 2:sf[0]sf[1]sf[2]this.bits.read(6);break;case 3:sf[0]this.bits.read(6);sf[1]sf[2]this.bits.read(6);break}}}if(modeMP2.MODE.MONO){this.scaleFactor[1][sb][0]this.scaleFactor[0][sb][0];this.scaleFactor[1][sb][1]this.scaleFactor[0][sb][1];this.scaleFactor[1][sb][2]this.scaleFactor[0][sb][2]}}var outPos0;for(var part0;part3;part){for(var granule0;granule4;granule){for(var sb0;sbbound;sb){this.readSamples(0,sb,part);this.readSamples(1,sb,part)}for(var sbbound;sbsblimit;sb){this.readSamples(0,sb,part);this.sample[1][sb][0]this.sample[0][sb][0];this.sample[1][sb][1]this.sample[0][sb][1];this.sample[1][sb][2]this.sample[0][sb][2]}for(var sbsblimit;sb32;sb){this.sample[0][sb][0]0;this.sample[0][sb][1]0;this.sample[0][sb][2]0;this.sample[1][sb][0]0;this.sample[1][sb][1]0;this.sample[1][sb][2]0}for(var p0;p3;p){this.VPosthis.VPos-641023;for(var ch0;ch2;ch){MP2.MatrixTransform(this.sample[ch],p,this.V[ch],this.VPos);JSMpeg.Fill(this.U,0);var dIndex512-(this.VPos1);var vIndexthis.VPos%1281;while(vIndex1024){for(var i0;i32;i){this.U[i]this.D[dIndex]*this.V[ch][vIndex]}vIndex128-32;dIndex64-32}vIndex128-321024-vIndex;dIndex-512-32;while(vIndex1024){for(var i0;i32;i){this.U[i]this.D[dIndex]*this.V[ch][vIndex]}vIndex128-32;dIndex64-32}var outChannelch0?left:right;for(var j0;j32;j){outChannel[outPosj]this.U[j]/2147418112}}outPos32}}}this.sampleRatesampleRate;return frameSize};MP2.prototype.readAllocationfunction(sb,tab3){var tab4MP2.QUANT_LUT_STEP_3[tab3][sb];var qtabMP2.QUANT_LUT_STEP4[tab415][this.bits.read(tab44)];return qtab?MP2.QUANT_TAB[qtab-1]:0};MP2.prototype.readSamplesfunction(ch,sb,part){var qthis.allocation[ch][sb],sfthis.scaleFactor[ch][sb][part],samplethis.sample[ch][sb],val0;if(!q){sample[0]sample[1]sample[2]0;return}if(sf63){sf0}else{var shiftsf/3|0;sfMP2.SCALEFACTOR_BASE[sf%3](1shift1)shift}var adjq.levels;if(q.group){valthis.bits.read(q.bits);sample[0]val%adj;valval/adj|0;sample[1]val%adj;sample[2]val/adj|0}else{sample[0]this.bits.read(q.bits);sample[1]this.bits.read(q.bits);sample[2]this.bits.read(q.bits)}var scale65536/(adj1)|0;adj(adj11)-1;val(adj-sample[0])*scale;sample[0]val*(sf12)(val*(sf4095)204812)12;val(adj-sample[1])*scale;sample[1]val*(sf12)(val*(sf4095)204812)12;val(adj-sample[2])*scale;sample[2]val*(sf12)(val*(sf4095)204812)12};MP2.MatrixTransformfunction(s,ss,d,dp){var t01,t02,t03,t04,t05,t06,t07,t08,t09,t10,t11,t12,t13,t14,t15,t16,t17,t18,t19,t20,t21,t22,t23,t24,t25,t26,t27,t28,t29,t30,t31,t32,t33;t01s[0][ss]s[31][ss];t02(s[0][ss]-s[31][ss])*.500602998235;t03s[1][ss]s[30][ss];t04(s[1][ss]-s[30][ss])*.505470959898;t05s[2][ss]s[29][ss];t06(s[2][ss]-s[29][ss])*.515447309923;t07s[3][ss]s[28][ss];t08(s[3][ss]-s[28][ss])*.53104259109;t09s[4][ss]s[27][ss];t10(s[4][ss]-s[27][ss])*.553103896034;t11s[5][ss]s[26][ss];t12(s[5][ss]-s[26][ss])*.582934968206;t13s[6][ss]s[25][ss];t14(s[6][ss]-s[25][ss])*.622504123036;t15s[7][ss]s[24][ss];t16(s[7][ss]-s[24][ss])*.674808341455;t17s[8][ss]s[23][ss];t18(s[8][ss]-s[23][ss])*.744536271002;t19s[9][ss]s[22][ss];t20(s[9][ss]-s[22][ss])*.839349645416;t21s[10][ss]s[21][ss];t22(s[10][ss]-s[21][ss])*.972568237862;t23s[11][ss]s[20][ss];t24(s[11][ss]-s[20][ss])*1.16943993343;t25s[12][ss]s[19][ss];t26(s[12][ss]-s[19][ss])*1.48416461631;t27s[13][ss]s[18][ss];t28(s[13][ss]-s[18][ss])*2.05778100995;t29s[14][ss]s[17][ss];t30(s[14][ss]-s[17][ss])*3.40760841847;t31s[15][ss]s[16][ss];t32(s[15][ss]-s[16][ss])*10.1900081235;t33t01t31;t31(t01-t31)*.502419286188;t01t03t29;t29(t03-t29)*.52249861494;t03t05t27;t27(t05-t27)*.566944034816;t05t07t25;t25(t07-t25)*.64682178336;t07t09t23;t23(t09-t23)*.788154623451;t09t11t21;t21(t11-t21)*1.06067768599;t11t13t19;t19(t13-t19)*1.72244709824;t13t15t17;t17(t15-t17)*5.10114861869;t15t33t13;t13(t33-t13)*.509795579104;t33t01t11;t01(t01-t11)*.601344886935;t11t03t09;t09(t03-t09)*.899976223136;t03t05t07;t07(t05-t07)*2.56291544774;t05t15t03;t15(t15-t03)*.541196100146;t03t33t11;t11(t33-t11)*1.30656296488;t33t05t03;t05(t05-t03)*.707106781187;t03t15t11;t15(t15-t11)*.707106781187;t03t15;t11t13t07;t13(t13-t07)*.541196100146;t07t01t09;t09(t01-t09)*1.30656296488;t01t11t07;t07(t11-t07)*.707106781187;t11t13t09;t13(t13-t09)*.707106781187;t11t13;t01t11;t11t07;t07t13;t09t31t17;t31(t31-t17)*.509795579104;t17t29t19;t29(t29-t19)*.601344886935;t19t27t21;t21(t27-t21)*.899976223136;t27t25t23;t23(t25-t23)*2.56291544774;t25t09t27;t09(t09-t27)*.541196100146;t27t17t19;t19(t17-t19)*1.30656296488;t17t25t27;t27(t25-t27)*.707106781187;t25t09t19;t19(t09-t19)*.707106781187;t25t19;t09t31t23;t31(t31-t23)*.541196100146;t23t29t21;t21(t29-t21)*1.30656296488;t29t09t23;t23(t09-t23)*.707106781187;t09t31t21;t31(t31-t21)*.707106781187;t09t31;t29t09;t09t23;t23t31;t17t29;t29t25;t25t09;t09t27;t27t23;t23t19;t19t31;t21t02t32;t02(t02-t32)*.502419286188;t32t04t30;t04(t04-t30)*.52249861494;t30t06t28;t28(t06-t28)*.566944034816;t06t08t26;t08(t08-t26)*.64682178336;t26t10t24;t10(t10-t24)*.788154623451;t24t12t22;t22(t12-t22)*1.06067768599;t12t14t20;t20(t14-t20)*1.72244709824;t14t16t18;t16(t16-t18)*5.10114861869;t18t21t14;t14(t21-t14)*.509795579104;t21t32t12;t32(t32-t12)*.601344886935;t12t30t24;t24(t30-t24)*.899976223136;t30t06t26;t26(t06-t26)*2.56291544774;t06t18t30;t18(t18-t30)*.541196100146;t30t21t12;t12(t21-t12)*1.30656296488;t21t06t30;t30(t06-t30)*.707106781187;t06t18t12;t12(t18-t12)*.707106781187;t06t12;t18t14t26;t26(t14-t26)*.541196100146;t14t32t24;t24(t32-t24)*1.30656296488;t32t18t14;t14(t18-t14)*.707106781187;t18t26t24;t24(t26-t24)*.707106781187;t18t24;t32t18;t18t14;t26t14t24;t14t02t16;t02(t02-t16)*.509795579104;t16t04t20;t04(t04-t20)*.601344886935;t20t28t22;t22(t28-t22)*.899976223136;t28t08t10;t10(t08-t10)*2.56291544774;t08t14t28;t14(t14-t28)*.541196100146;t28t16t20;t20(t16-t20)*1.30656296488;t16t08t28;t28(t08-t28)*.707106781187;t08t14t20;t20(t14-t20)*.707106781187;t08t20;t14t02t10;t02(t02-t10)*.541196100146;t10t04t22;t22(t04-t22)*1.30656296488;t04t14t10;t10(t14-t10)*.707106781187;t14t02t22;t02(t02-t22)*.707106781187;t14t02;t04t14;t14t10;t10t02;t16t04;t04t08;t08t14;t14t28;t28t10;t10t20;t20t02;t21t16;t16t32;t32t04;t04t06;t06t08;t08t18;t18t14;t14t30;t30t28;t28t26;t26t10;t10t12;t12t20;t20t24;t24t02;d[dp48]-t33;d[dp49]d[dp47]-t21;d[dp50]d[dp46]-t17;d[dp51]d[dp45]-t16;d[dp52]d[dp44]-t01;d[dp53]d[dp43]-t32;d[dp54]d[dp42]-t29;d[dp55]d[dp41]-t04;d[dp56]d[dp40]-t03;d[dp57]d[dp39]-t06;d[dp58]d[dp38]-t25;d[dp59]d[dp37]-t08;d[dp60]d[dp36]-t11;d[dp61]d[dp35]-t18;d[dp62]d[dp34]-t09;d[dp63]d[dp33]-t14;d[dp32]-t05;d[dp0]t05;d[dp31]-t30;d[dp1]t30;d[dp30]-t27;d[dp2]t27;d[dp29]-t28;d[dp3]t28;d[dp28]-t07;d[dp4]t07;d[dp27]-t26;d[dp5]t26;d[dp26]-t23;d[dp6]t23;d[dp25]-t10;d[dp7]t10;d[dp24]-t15;d[dp8]t15;d[dp23]-t12;d[dp9]t12;d[dp22]-t19;d[dp10]t19;d[dp21]-t20;d[dp11]t20;d[dp20]-t13;d[dp12]t13;d[dp19]-t24;d[dp13]t24;d[dp18]-t31;d[dp14]t31;d[dp17]-t02;d[dp15]t02;d[dp16]0};MP2.FRAME_SYNC2047;MP2.VERSION{MPEG_2_5:0,MPEG_2:2,MPEG_1:3};MP2.LAYER{III:1,II:2,I:3};MP2.MODE{STEREO:0,JOINT_STEREO:1,DUAL_CHANNEL:2,MONO:3};MP2.SAMPLE_RATEnew Uint16Array([44100,48e3,32e3,0,22050,24e3,16e3,0]);MP2.BIT_RATEnew Uint16Array([32,48,56,64,80,96,112,128,160,192,224,256,320,384,8,16,24,32,40,48,56,64,80,96,112,128,144,160]);MP2.SCALEFACTOR_BASEnew Uint32Array([33554432,26632170,21137968]);MP2.SYNTHESIS_WINDOWnew Float32Array([0,-.5,-.5,-.5,-.5,-.5,-.5,-1,-1,-1,-1,-1.5,-1.5,-2,-2,-2.5,-2.5,-3,-3.5,-3.5,-4,-4.5,-5,-5.5,-6.5,-7,-8,-8.5,-9.5,-10.5,-12,-13,-14.5,-15.5,-17.5,-19,-20.5,-22.5,-24.5,-26.5,-29,-31.5,-34,-36.5,-39.5,-42.5,-45.5,-48.5,-52,-55.5,-58.5,-62.5,-66,-69.5,-73.5,-77,-80.5,-84.5,-88,-91.5,-95,-98,-101,-104,106.5,109,111,112.5,113.5,114,114,113.5,112,110.5,107.5,104,100,94.5,88.5,81.5,73,63.5,53,41.5,28.5,14.5,-1,-18,-36,-55.5,-76.5,-98.5,-122,-147,-173.5,-200.5,-229.5,-259.5,-290.5,-322.5,-355.5,-389.5,-424,-459.5,-495.5,-532,-568.5,-605,-641.5,-678,-714,-749,-783.5,-817,-849,-879.5,-908.5,-935,-959.5,-981,-1000.5,-1016,-1028.5,-1037.5,-1042.5,-1043.5,-1040,-1031.5,1018.5,1e3,976,946.5,911,869.5,822,767.5,707,640,565.5,485,397,302.5,201,92.5,-22.5,-144,-272.5,-407,-547.5,-694,-846,-1003,-1165,-1331.5,-1502,-1675.5,-1852.5,-2031.5,-2212.5,-2394,-2576.5,-2758.5,-2939.5,-3118.5,-3294.5,-3467.5,-3635.5,-3798.5,-3955,-4104.5,-4245.5,-4377.5,-4499,-4609.5,-4708,-4792.5,-4863.5,-4919,-4958,-4979.5,-4983,-4967.5,-4931.5,-4875,-4796,-4694.5,-4569.5,-4420,-4246,-4046,-3820,-3567,3287,2979.5,2644,2280.5,1888,1467.5,1018.5,541,35,-499,-1061,-1650,-2266.5,-2909,-3577,-4270,-4987.5,-5727.5,-6490,-7274,-8077.5,-8899.5,-9739,-10594.5,-11464.5,-12347,-13241,-14144.5,-15056,-15973.5,-16895.5,-17820,-18744.5,-19668,-20588,-21503,-22410.5,-23308.5,-24195,-25068.5,-25926.5,-26767,-27589,-28389,-29166.5,-29919,-30644.5,-31342,-32009.5,-32645,-33247,-33814.5,-34346,-34839.5,-35295,-35710,-36084.5,-36417.5,-36707.5,-36954,-37156.5,-37315,-37428,-37496,37519,37496,37428,37315,37156.5,36954,36707.5,36417.5,36084.5,35710,35295,34839.5,34346,33814.5,33247,32645,32009.5,31342,30644.5,29919,29166.5,28389,27589,26767,25926.5,25068.5,24195,23308.5,22410.5,21503,20588,19668,18744.5,17820,16895.5,15973.5,15056,14144.5,13241,12347,11464.5,10594.5,9739,8899.5,8077.5,7274,6490,5727.5,4987.5,4270,3577,2909,2266.5,1650,1061,499,-35,-541,-1018.5,-1467.5,-1888,-2280.5,-2644,-2979.5,3287,3567,3820,4046,4246,4420,4569.5,4694.5,4796,4875,4931.5,4967.5,4983,4979.5,4958,4919,4863.5,4792.5,4708,4609.5,4499,4377.5,4245.5,4104.5,3955,3798.5,3635.5,3467.5,3294.5,3118.5,2939.5,2758.5,2576.5,2394,2212.5,2031.5,1852.5,1675.5,1502,1331.5,1165,1003,846,694,547.5,407,272.5,144,22.5,-92.5,-201,-302.5,-397,-485,-565.5,-640,-707,-767.5,-822,-869.5,-911,-946.5,-976,-1e3,1018.5,1031.5,1040,1043.5,1042.5,1037.5,1028.5,1016,1000.5,981,959.5,935,908.5,879.5,849,817,783.5,749,714,678,641.5,605,568.5,532,495.5,459.5,424,389.5,355.5,322.5,290.5,259.5,229.5,200.5,173.5,147,122,98.5,76.5,55.5,36,18,1,-14.5,-28.5,-41.5,-53,-63.5,-73,-81.5,-88.5,-94.5,-100,-104,-107.5,-110.5,-112,-113.5,-114,-114,-113.5,-112.5,-111,-109,106.5,104,101,98,95,91.5,88,84.5,80.5,77,73.5,69.5,66,62.5,58.5,55.5,52,48.5,45.5,42.5,39.5,36.5,34,31.5,29,26.5,24.5,22.5,20.5,19,17.5,15.5,14.5,13,12,10.5,9.5,8.5,8,7,6.5,5.5,5,4.5,4,3.5,3.5,3,2.5,2.5,2,2,1.5,1.5,1,1,1,1,.5,.5,.5,.5,.5,.5]);MP2.QUANT_LUT_STEP_1[[0,0,1,1,1,2,2,2,2,2,2,2,2,2],[0,0,0,0,0,0,1,1,1,2,2,2,2,2]];MP2.QUANT_TAB{A:27|64,B:30|64,C:8,D:12};MP2.QUANT_LUT_STEP_2[[MP2.QUANT_TAB.C,MP2.QUANT_TAB.C,MP2.QUANT_TAB.D],[MP2.QUANT_TAB.A,MP2.QUANT_TAB.A,MP2.QUANT_TAB.A],[MP2.QUANT_TAB.B,MP2.QUANT_TAB.A,MP2.QUANT_TAB.B]];MP2.QUANT_LUT_STEP_3[[68,68,52,52,52,52,52,52,52,52,52,52],[67,67,67,66,66,66,66,66,66,66,66,49,49,49,49,49,49,49,49,49,49,49,49,32,32,32,32,32,32,32],[69,69,69,69,52,52,52,52,52,52,52,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36,36]];MP2.QUANT_LUT_STEP4[[0,1,2,17],[0,1,2,3,4,5,6,17],[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,17],[0,1,3,5,6,7,8,9,10,11,12,13,14,15,16,17],[0,1,2,4,5,6,7,8,9,10,11,12,13,14,15,17],[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]];MP2.QUANT_TAB[{levels:3,group:1,bits:5},{levels:5,group:1,bits:7},{levels:7,group:0,bits:3},{levels:9,group:1,bits:10},{levels:15,group:0,bits:4},{levels:31,group:0,bits:5},{levels:63,group:0,bits:6},{levels:127,group:0,bits:7},{levels:255,group:0,bits:8},{levels:511,group:0,bits:9},{levels:1023,group:0,bits:10},{levels:2047,group:0,bits:11},{levels:4095,group:0,bits:12},{levels:8191,group:0,bits:13},{levels:16383,group:0,bits:14},{levels:32767,group:0,bits:15},{levels:65535,group:0,bits:16}];return MP2}();JSMpeg.Decoder.MP2AudioWASMfunction(){use strict;var MP2WASMfunction(options){JSMpeg.Decoder.Base.call(this,options);this.onDecodeCallbackoptions.onAudioDecode;this.moduleoptions.wasmModule;this.bufferSizeoptions.audioBufferSize||128*1024;this.bufferModeoptions.streaming?JSMpeg.BitBuffer.MODE.EVICT:JSMpeg.BitBuffer.MODE.EXPAND;this.sampleRate0};MP2WASM.prototypeObject.create(JSMpeg.Decoder.Base.prototype);MP2WASM.prototype.constructorMP2WASM;MP2WASM.prototype.initializeWasmDecoderfunction(){if(!this.module.instance){console.warn(JSMpeg: WASM module not compiled yet);return}this.instancethis.module.instance;this.functionsthis.module.instance.exports;this.decoderthis.functions._mp2_decoder_create(this.bufferSize,this.bufferMode)};MP2WASM.prototype.destroyfunction(){if(!this.decoder){return}this.functions._mp2_decoder_destroy(this.decoder)};MP2WASM.prototype.bufferGetIndexfunction(){if(!this.decoder){return}return this.functions._mp2_decoder_get_index(this.decoder)};MP2WASM.prototype.bufferSetIndexfunction(index){if(!this.decoder){return}this.functions._mp2_decoder_set_index(this.decoder,index)};MP2WASM.prototype.bufferWritefunction(buffers){if(!this.decoder){this.initializeWasmDecoder()}var totalLength0;for(var i0;ibuffers.length;i){totalLengthbuffers[i].length}var ptrthis.functions._mp2_decoder_get_write_ptr(this.decoder,totalLength);for(var i0;ibuffers.length;i){this.instance.heapU8.set(buffers[i],ptr);ptrbuffers[i].length}this.functions._mp2_decoder_did_write(this.decoder,totalLength);return totalLength};MP2WASM.prototype.decodefunction(){var startTimeJSMpeg.Now();if(!this.decoder){return false}var decodedBytesthis.functions._mp2_decoder_decode(this.decoder);if(decodedBytes0){return false}if(!this.sampleRate){this.sampleRatethis.functions._mp2_decoder_get_sample_rate(this.decoder)}if(this.destination){var leftPtrthis.functions._mp2_decoder_get_left_channel_ptr(this.decoder),rightPtrthis.functions._mp2_decoder_get_right_channel_ptr(this.decoder);var leftOffsetleftPtr/Float32Array.BYTES_PER_ELEMENT,rightOffsetrightPtr/Float32Array.BYTES_PER_ELEMENT;var leftthis.instance.heapF32.subarray(leftOffset,leftOffsetMP2WASM.SAMPLES_PER_FRAME),rightthis.instance.heapF32.subarray(rightOffset,rightOffsetMP2WASM.SAMPLES_PER_FRAME);this.destination.play(this.sampleRate,left,right)}this.advanceDecodedTime(MP2WASM.SAMPLES_PER_FRAME/this.sampleRate);var elapsedTimeJSMpeg.Now()-startTime;if(this.onDecodeCallback){this.onDecodeCallback(this,elapsedTime)}return true};MP2WASM.prototype.getCurrentTimefunction(){var enqueuedTimethis.destination?this.destination.enqueuedTime:0;return this.decodedTime-enqueuedTime};MP2WASM.SAMPLES_PER_FRAME1152;return MP2WASM}();JSMpeg.Renderer.WebGLfunction(){use strict;var WebGLRendererfunction(options){this.canvasoptions.canvas||document.createElement(canvas);this.widththis.canvas.width;this.heightthis.canvas.height;this.enabledtrue;this.hasTextureData{};var contextCreateOptions{preserveDrawingBuffer:!!options.preserveDrawingBuffer,alpha:false,depth:false,stencil:false,antialias:false,premultipliedAlpha:false};this.glthis.canvas.getContext(webgl,contextCreateOptions)||this.canvas.getContext(experimental-webgl,contextCreateOptions);if(!this.gl){throw new Error(Failed to get WebGL Context)}var glthis.gl;var vertexAttrnull;gl.pixelStorei(gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL,false);this.vertexBuffergl.createBuffer();var vertexCoordsnew Float32Array([0,0,0,1,1,0,1,1]);gl.bindBuffer(gl.ARRAY_BUFFER,this.vertexBuffer);gl.bufferData(gl.ARRAY_BUFFER,vertexCoords,gl.STATIC_DRAW);this.programthis.createProgram(WebGLRenderer.SHADER.VERTEX_IDENTITY,WebGLRenderer.SHADER.FRAGMENT_YCRCB_TO_RGBA);vertexAttrgl.getAttribLocation(this.program,vertex);gl.enableVertexAttribArray(vertexAttr);gl.vertexAttribPointer(vertexAttr,2,gl.FLOAT,false,0,0);this.textureYthis.createTexture(0,textureY);this.textureCbthis.createTexture(1,textureCb);this.textureCrthis.createTexture(2,textureCr);this.loadingProgramthis.createProgram(WebGLRenderer.SHADER.VERTEX_IDENTITY,WebGLRenderer.SHADER.FRAGMENT_LOADING);vertexAttrgl.getAttribLocation(this.loadingProgram,vertex);gl.enableVertexAttribArray(vertexAttr);gl.vertexAttribPointer(vertexAttr,2,gl.FLOAT,false,0,0);this.shouldCreateUnclampedViews!this.allowsClampedTextureData()};WebGLRenderer.prototype.destroyfunction(){var glthis.gl;this.deleteTexture(gl.TEXTURE0,this.textureY);this.deleteTexture(gl.TEXTURE1,this.textureCb);this.deleteTexture(gl.TEXTURE2,this.textureCr);gl.useProgram(null);gl.deleteProgram(this.program);gl.deleteProgram(this.loadingProgram);gl.bindBuffer(gl.ARRAY_BUFFER,null);gl.deleteBuffer(this.vertexBuffer);gl.getExtension(WEBGL_lose_context).loseContext();this.canvas.remove()};WebGLRenderer.prototype.resizefunction(width,height){this.widthwidth|0;this.heightheight|0;this.canvas.widththis.width;this.canvas.heightthis.height;this.gl.useProgram(this.program);var codedWidththis.width1544;this.gl.viewport(0,0,codedWidth,this.height)};WebGLRenderer.prototype.createTexturefunction(index,name){var glthis.gl;var texturegl.createTexture();gl.bindTexture(gl.TEXTURE_2D,texture);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MAG_FILTER,gl.LINEAR);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_MIN_FILTER,gl.LINEAR);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_S,gl.CLAMP_TO_EDGE);gl.texParameteri(gl.TEXTURE_2D,gl.TEXTURE_WRAP_T,gl.CLAMP_TO_EDGE);gl.uniform1i(gl.getUniformLocation(this.program,name),index);return texture};WebGLRenderer.prototype.createProgramfunction(vsh,fsh){var glthis.gl;var programgl.createProgram();gl.attachShader(program,this.compileShader(gl.VERTEX_SHADER,vsh));gl.attachShader(program,this.compileShader(gl.FRAGMENT_SHADER,fsh));gl.linkProgram(program);gl.useProgram(program);return program};WebGLRenderer.prototype.compileShaderfunction(type,source){var glthis.gl;var shadergl.createShader(type);gl.shaderSource(shader,source);gl.compileShader(shader);if(!gl.getShaderParameter(shader,gl.COMPILE_STATUS)){throw new Error(gl.getShaderInfoLog(shader))}return shader};WebGLRenderer.prototype.allowsClampedTextureDatafunction(){var glthis.gl;var texturegl.createTexture();gl.bindTexture(gl.TEXTURE_2D,texture);gl.texImage2D(gl.TEXTURE_2D,0,gl.LUMINANCE,1,1,0,gl.LUMINANCE,gl.UNSIGNED_BYTE,new Uint8ClampedArray([0]));return gl.getError()0};WebGLRenderer.prototype.renderProgressfunction(progress){var glthis.gl;gl.useProgram(this.loadingProgram);var locgl.getUniformLocation(this.loadingProgram,progress);gl.uniform1f(loc,progress);gl.drawArrays(gl.TRIANGLE_STRIP,0,4)};WebGLRenderer.prototype.renderfunction(y,cb,cr,isClampedArray){if(!this.enabled){return}var glthis.gl;var wthis.width1544,hthis.height,w2w1,h2h1;if(isClampedArraythis.shouldCreateUnclampedViews){ynew Uint8Array(y.buffer),cbnew Uint8Array(cb.buffer),crnew Uint8Array(cr.buffer)}gl.useProgram(this.program);this.updateTexture(gl.TEXTURE0,this.textureY,w,h,y);this.updateTexture(gl.TEXTURE1,this.textureCb,w2,h2,cb);this.updateTexture(gl.TEXTURE2,this.textureCr,w2,h2,cr);gl.drawArrays(gl.TRIANGLE_STRIP,0,4)};WebGLRenderer.prototype.updateTexturefunction(unit,texture,w,h,data){var glthis.gl;gl.activeTexture(unit);gl.bindTexture(gl.TEXTURE_2D,texture);if(this.hasTextureData[unit]){gl.texSubImage2D(gl.TEXTURE_2D,0,0,0,w,h,gl.LUMINANCE,gl.UNSIGNED_BYTE,data)}else{this.hasTextureData[unit]true;gl.texImage2D(gl.TEXTURE_2D,0,gl.LUMINANCE,w,h,0,gl.LUMINANCE,gl.UNSIGNED_BYTE,data)}};WebGLRenderer.prototype.deleteTexturefunction(unit,texture){var glthis.gl;gl.activeTexture(unit);gl.bindTexture(gl.TEXTURE_2D,null);gl.deleteTexture(texture)};WebGLRenderer.IsSupportedfunction(){try{if(!window.WebGLRenderingContext){return false}var canvasdocument.createElement(canvas);return!!(canvas.getContext(webgl)||canvas.getContext(experimental-webgl))}catch(err){return false}};WebGLRenderer.SHADER{FRAGMENT_YCRCB_TO_RGBA:[precision mediump float;,uniform sampler2D textureY;,uniform sampler2D textureCb;,uniform sampler2D textureCr;,varying vec2 texCoord;,mat4 rec601 mat4(,1.16438, 0.00000, 1.59603, -0.87079,,1.16438, -0.39176, -0.81297, 0.52959,,1.16438, 2.01723, 0.00000, -1.08139,,0, 0, 0, 1,);,void main() {,float y texture2D(textureY, texCoord).r;,float cb texture2D(textureCb, texCoord).r;,float cr texture2D(textureCr, texCoord).r;,gl_FragColor vec4(y, cr, cb, 1.0) * rec601;,}].join(\n),FRAGMENT_LOADING:[precision mediump float;,uniform float progress;,varying vec2 texCoord;,void main() {,float c ceil(progress-(1.0-texCoord.y));,gl_FragColor vec4(c,c,c,1);,}].join(\n),VERTEX_IDENTITY:[attribute vec2 vertex;,varying vec2 texCoord;,void main() {,texCoord vertex;,gl_Position vec4((vertex * 2.0 - 1.0) * vec2(1, -1), 0.0, 1.0);,}].join(\n)};return WebGLRenderer}();JSMpeg.Renderer.Canvas2Dfunction(){use strict;var CanvasRendererfunction(options){this.canvasoptions.canvas||document.createElement(canvas);this.widththis.canvas.width;this.heightthis.canvas.height;this.enabledtrue;this.contextthis.canvas.getContext(2d)};CanvasRenderer.prototype.destroyfunction(){};CanvasRenderer.prototype.resizefunction(width,height){this.widthwidth|0;this.heightheight|0;this.canvas.widththis.width;this.canvas.heightthis.height;this.imageDatathis.context.getImageData(0,0,this.width,this.height);JSMpeg.Fill(this.imageData.data,255)};CanvasRenderer.prototype.renderProgressfunction(progress){var wthis.canvas.width,hthis.canvas.height,ctxthis.context;ctx.fillStyle#222;ctx.fillRect(0,0,w,h);ctx.fillStyle#fff;ctx.fillRect(0,h-h*progress,w,h*progress)};CanvasRenderer.prototype.renderfunction(y,cb,cr){this.YCbCrToRGBA(y,cb,cr,this.imageData.data);this.context.putImageData(this.imageData,0,0)};CanvasRenderer.prototype.YCbCrToRGBAfunction(y,cb,cr,rgba){if(!this.enabled){return}var wthis.width1544,w2w1;var yIndex10,yIndex2w,yNext2Linesw(w-this.width);var cIndex0,cNextLinew2-(this.width1);var rgbaIndex10,rgbaIndex2this.width*4,rgbaNext2Linesthis.width*4;var colsthis.width1,rowsthis.height1;var ccb,ccr,r,g,b;for(var row0;rowrows;row){for(var col0;colcols;col){ccbcb[cIndex];ccrcr[cIndex];cIndex;rccb(ccb*1038)-179;g(ccr*888)-44(ccb*1838)-91;bccr(ccr*1988)-227;var y1y[yIndex1];var y2y[yIndex1];rgba[rgbaIndex1]y1r;rgba[rgbaIndex11]y1-g;rgba[rgbaIndex12]y1b;rgba[rgbaIndex14]y2r;rgba[rgbaIndex15]y2-g;rgba[rgbaIndex16]y2b;rgbaIndex18;var y3y[yIndex2];var y4y[yIndex2];rgba[rgbaIndex2]y3r;rgba[rgbaIndex21]y3-g;rgba[rgbaIndex22]y3b;rgba[rgbaIndex24]y4r;rgba[rgbaIndex25]y4-g;rgba[rgbaIndex26]y4b;rgbaIndex28}yIndex1yNext2Lines;yIndex2yNext2Lines;rgbaIndex1rgbaNext2Lines;rgbaIndex2rgbaNext2Lines;cIndexcNextLine}};return CanvasRenderer}();JSMpeg.AudioOutput.WebAudiofunction(){use strict;var WebAudioOutfunction(options){this.contextWebAudioOut.CachedContextWebAudioOut.CachedContext||new(window.AudioContext||window.webkitAudioContext);this.gainthis.context.createGain();this.destinationthis.gain;this.gain.connect(this.context.destination);this.context._connections(this.context._connections||0)1;this.startTime0;this.buffernull;this.wallclockStartTime0;this.volume1;this.enabledtrue;this.unlocked!WebAudioOut.NeedsUnlocking();Object.defineProperty(this,enqueuedTime,{get:this.getEnqueuedTime})};WebAudioOut.prototype.destroyfunction(){this.gain.disconnect();this.context._connections--;if(this.context._connections0){this.context.close();WebAudioOut.CachedContextnull}};WebAudioOut.prototype.playfunction(sampleRate,left,right){if(!this.enabled){return}if(!this.unlocked){var tsJSMpeg.Now();if(this.wallclockStartTimets){this.wallclockStartTimets}this.wallclockStartTimeleft.length/sampleRate;return}this.gain.gain.valuethis.volume;var bufferthis.context.createBuffer(2,left.length,sampleRate);buffer.getChannelData(0).set(left);buffer.getChannelData(1).set(right);var sourcethis.context.createBufferSource();source.bufferbuffer;source.connect(this.destination);var nowthis.context.currentTime;var durationbuffer.duration;if(this.startTimenow){this.startTimenow;this.wallclockStartTimeJSMpeg.Now()}source.start(this.startTime);this.startTimeduration;this.wallclockStartTimeduration};WebAudioOut.prototype.stopfunction(){this.gain.gain.value0};WebAudioOut.prototype.getEnqueuedTimefunction(){return Math.max(this.wallclockStartTime-JSMpeg.Now(),0)};WebAudioOut.prototype.resetEnqueuedTimefunction(){this.startTimethis.context.currentTime;this.wallclockStartTimeJSMpeg.Now()};WebAudioOut.prototype.unlockfunction(callback){if(this.unlocked){if(callback){callback()}return}this.unlockCallbackcallback;var bufferthis.context.createBuffer(1,1,22050);var sourcethis.context.createBufferSource();source.bufferbuffer;source.connect(this.destination);source.start(0);setTimeout(this.checkIfUnlocked.bind(this,source,0),0)};WebAudioOut.prototype.checkIfUnlockedfunction(source,attempt){if(source.playbackStatesource.PLAYING_STATE||source.playbackStatesource.FINISHED_STATE){this.unlockedtrue;if(this.unlockCallback){this.unlockCallback();this.unlockCallbacknull}}else if(attempt10){setTimeout(this.checkIfUnlocked.bind(this,source,attempt1),100)}};WebAudioOut.NeedsUnlockingfunction(){return/iPhone|iPad|iPod/i.test(navigator.userAgent)};WebAudioOut.IsSupportedfunction(){return window.AudioContext||window.webkitAudioContext};WebAudioOut.CachedContextnull;return WebAudioOut}();JSMpeg.WASMModulefunction(){use strict;var WASMfunction(){this.stackSize5*1024*1024;this.pageSize64*1024;this.onInitCallbacknull;this.readyfalse};WASM.prototype.writefunction(buffer){this.loadFromBuffer(buffer,this.onInitCallback)};WASM.prototype.loadFromFilefunction(url,callback){this.onInitCallbackcallback;var ajaxnew JSMpeg.Source.Ajax(url,{});ajax.connect(this);ajax.start()};WASM.prototype.loadFromBufferfunction(buffer,callback){this.moduleInfothis.readDylinkSection(buffer);if(!this.moduleInfo){this.callbackthis.callback(null);return}this.memorynew WebAssembly.Memory({initial:256});var env{memory:this.memory,memoryBase:0,__memory_base:0,table:new WebAssembly.Table({initial:this.moduleInfo.tableSize,element:anyfunc}),tableBase:0,__table_base:0,abort:this.c_abort.bind(this),___assert_fail:this.c_assertFail.bind(this),_sbrk:this.c_sbrk.bind(this)};this.brkthis.align(this.moduleInfo.memorySizethis.stackSize);WebAssembly.instantiate(buffer,{env:env}).then(function(results){this.instanceresults.instance;if(this.instance.exports.__post_instantiate){this.instance.exports.__post_instantiate()}this.createHeapViews();this.readytrue;callbackcallback(this)}.bind(this))};WASM.prototype.createHeapViewsfunction(){this.instance.heapU8new Uint8Array(this.memory.buffer);this.instance.heapU32new Uint32Array(this.memory.buffer);this.instance.heapF32new Float32Array(this.memory.buffer)};WASM.prototype.alignfunction(addr){var aMath.pow(2,this.moduleInfo.memoryAlignment);return Math.ceil(addr/a)*a};WASM.prototype.c_sbrkfunction(size){var previousBrkthis.brk;this.brksize;if(this.brkthis.memory.buffer.byteLength){var bytesNeededthis.brk-this.memory.buffer.byteLength;var pagesNeededMath.ceil(bytesNeeded/this.pageSize);this.memory.grow(pagesNeeded);this.createHeapViews()}return previousBrk};WASM.prototype.c_abortfunction(size){console.warn(JSMPeg: WASM abort,arguments)};WASM.prototype.c_assertFailfunction(size){console.warn(JSMPeg: WASM ___assert_fail,arguments)};WASM.prototype.readDylinkSectionfunction(buffer){var bytesnew Uint8Array(buffer);var next0;var readVarUintfunction(){var ret0;var mul1;while(1){var bytebytes[next];ret(byte127)*mul;mul*128;if(!(byte128)){return ret}}};var matchNextBytesfunction(expected){for(var i0;iexpected.length;i){var btypeof expected[i]string?expected[i].charCodeAt(0):expected[i];if(bytes[next]!b){return false}}return true};if(!matchNextBytes([0,a,s,m])){console.warn(JSMpeg: WASM header not found);return null}var next9;var sectionSizereadVarUint();if(!matchNextBytes([6,d,y,l,i,n,k])){console.warn(JSMpeg: No dylink section found in WASM);return null}return{memorySize:readVarUint(),memoryAlignment:readVarUint(),tableSize:readVarUint(),tableAlignment:readVarUint()}};WASM.IsSupportedfunction(){return!!window.WebAssembly};WASM.GetModulefunction(){WASM.CACHED_MODULEWASM.CACHED_MODULE||new WASM;return WASM.CACHED_MODULE};return WASM}();JSMpeg.WASM_BINARY_INLINEDAGFzbQEAAAAADwZkeWxpbmuA0MACBAAAAAE0CWAEf39/fwBgAX8Bf2ACf38Bf2ABfwBgAn9/AGABfwF9YAZ/f39/f38AYAN/f38Bf2AAAAJGBANlbnYOX19fYXNzZXJ0X2ZhaWwAAANlbnYFX3NicmsAAQNlbnYNX19tZW1vcnlfYmFzZQN/AANlbnYGbWVtb3J5AgCAAgM9PAIDAgEEBAMBBQEBAQEBAQEDBAMGAwQAAwAAAAIDAgEEBAEBAQEBAAACAwIBAgECAQEBAQMEAwMCBwcHCAYLAn8BQQALfwFBAAsHggYfEl9fcG9zdF9pbnN0YW50aWF0ZQA9BV9mcmVlADgHX21hbGxvYwAxB19tZW1jcHkAOghfbWVtbW92ZQA7B19tZW1zZXQAPBNfbXAyX2RlY29kZXJfY3JlYXRlAB0TX21wMl9kZWNvZGVyX2RlY29kZQAmFF9tcDJfZGVjb2Rlcl9kZXN0cm95AB4WX21wMl9kZWNvZGVyX2RpZF93cml0ZQAiFl9tcDJfZGVjb2Rlcl9nZXRfaW5kZXgAICFfbXAyX2RlY29kZXJfZ2V0X2xlZnRfY2hhbm5lbF9wdHIAJCJfbXAyX2RlY29kZXJfZ2V0X3JpZ2h0X2NoYW5uZWxfcHRyACUcX21wMl9kZWNvZGVyX2dldF9zYW1wbGVfcmF0ZQAjGl9tcDJfZGVjb2Rlcl9nZXRfd3JpdGVfcHRyAB8WX21wMl9kZWNvZGVyX3NldF9pbmRleAAhFV9tcGVnMV9kZWNvZGVyX2NyZWF0ZQACFV9tcGVnMV9kZWNvZGVyX2RlY29kZQARFl9tcGVnMV9kZWNvZGVyX2Rlc3Ryb3kAAxhfbXBlZzFfZGVjb2Rlcl9kaWRfd3JpdGUABxlfbXBlZzFfZGVjb2Rlcl9nZXRfY2JfcHRyABAdX21wZWcxX2RlY29kZXJfZ2V0X2NvZGVkX3NpemUACxlfbXBlZzFfZGVjb2Rlcl9nZXRfY3JfcHRyAA8dX21wZWcxX2RlY29kZXJfZ2V0X2ZyYW1lX3JhdGUAChlfbXBlZzFfZGVjb2Rlcl9nZXRfaGVpZ2h0AA0YX21wZWcxX2RlY29kZXJfZ2V0X2luZGV4AAUYX21wZWcxX2RlY29kZXJfZ2V0X3dpZHRoAAwcX21wZWcxX2RlY29kZXJfZ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wwBBQJ/IANBzQBHDQIgACgCgAFBBhAwIQMCQAJAIAAoAoABQQgQMCIEIgYEQCAGQYABRgRADAIFDAMLAAsgACgCgAFBCBAwDAILIAAoAoABQQgQMEGAfmoMAQsgBEGAfmogBCAEQYABShsLCyEEDAELIAZB/wFxIgNBACADayAAKAKAAUEBEDBFGyEEIAZBCHUhAwsgAiADaiIGIwBBQGtqLQAAIgMgBWotAAAgACgCREEAIARBAXQiAkEfdUEBciAAKAJcGyACamxsIgJBBHVBAEEBQX8gAkEPShsgAkEQcRtrIgJBgHAgAkGAcEobIQIgAEGcAWogA0ECdGogAyMAQZA1amotAAAgAkH/DyACQf8PSBtsNgIAIAZBAWohAgwBCwsgAUEESARAIABBhAFqIQUgAUEDdEEIcSAAKAJUIAAoAhgiAyAAKAJQbGpBBHRyIANBA3RBACABQQJxG2ohBAUgAEGMAWogAEGIAWogAUEERhshBSAAKAJQIAAoAhgiAUECdGwgACgCVEEDdGohBCABQQF1IQMLIANBeGohAyAFKAIAIQUgAkEBRiECIABBnAFqIQEgACgCXARAIAIEQCABKAIAQYABakEIdSAFIAQgAxAYIAFBADYCAAUgARAZIAEgBSAEIAMQGiABQQBBgAIQPBoLBSACBEAgASgCAEGAAWpBCHUgBSAEIAMQGyABQQA2AgAFIAEQGSABIAUgBCADEBwgAUEAQYACEDwaCwsL7AYAIAEgAmogAEEAIABBAEobIgBB/wEgAEH/AUgbQf8BcSIAOgAAIAEgAkEBamogADoAACABIAJBAmpqIAA6AAAgASACQQNqaiAAOgAAIAEgAkEEamogADoAACABIAJBBWpqIAA6AAAgASACQQZqaiAAOgAAIAEgAkEHamogADoAACABIAIgA0EIaiIDaiICaiAAOgAAIAEgAkEBamogADoAACABIAJBAmpqIAA6AAAgASACQQNqaiAAOgAAIAEgAkEEamogADoAACABIAJBBWpqIAA6AAAgASACQQZqaiAAOgAAIAEgAkEHamogADoAACABIAIgA2oiAmogADoAACABIAJBAWpqIAA6AAAgASACQQJqaiAAOgAAIAEgAkEDamogADoAACABIAJBBGpqIAA6AAAgASACQQVqaiAAOgAAIAEgAkEGamogADoAACABIAJBB2pqIAA6AAAgASACIANqIgJqIAA6AAAgASACQQFqaiAAOgAAIAEgAkECamogADoAACABIAJBA2pqIAA6AAAgASACQQRqaiAAOgAAIAEgAkEFamogADoAACABIAJBBmpqIAA6AAAgASACQQdqaiAAOgAAIAEgAiADaiICaiAAOgAAIAEgAkEBamogADoAACABIAJBAmpqIAA6AAAgASACQQNqaiAAOgAAIAEgAkEEamogADoAACABIAJBBWpqIAA6AAAgASACQQZqaiAAOgAAIAEgAkEHamogADoAACABIAIgA2oiAmogADoAACABIAJBAWpqIAA6AAAgASACQQJqaiAAOgAAIAEgAkEDamogADoAACABIAJBBGpqIAA6AAAgASACQQVqaiAAOgAAIAEgAkEGamogADoAACABIAJBB2pqIAA6AAAgASACIANqIgJqIAA6AAAgASACQQFqaiAAOgAAIAEgAkECamogADoAACABIAJBA2pqIAA6AAAgASACQQRqaiAAOgAAIAEgAkEFamogADoAACABIAJBBmpqIAA6AAAgASACQQdqaiAAOgAAIAEgAiADaiICaiAAOgAAIAEgAkEBamogADoAACABIAJBAmpqIAA6AAAgASACQQNqaiAAOgAAIAEgAkEEamogADoAACABIAJBBWpqIAA6AAAgASACQQZqaiAAOgAAIAEgAkEHamogADoAAAubBgEUfwNAIAFBEGpBAnQgAGoiBygCACIGIAFBMGpBAnQgAGoiDSgCACIJaiEFIAFBCGpBAnQgAGoiDigCACICIAFBOGpBAnQgAGoiDygCACIDaiEEIAIgA2siEEHZA2wgAUEoakECdCAAaiIKKAIAIgIgAUEYakECdCAAaiIRKAIAIgNrIgtBvH5sQYABampBCHUgBCACIANqIghqIgJrIgMgBCAIa0HqAmxBgAFqQQh1ayEEIAFBAnQgAGoiCCgCACIMIAFBIGpBAnQgAGoiEigCACITayIUIAYgCWtB6gJsQYABakEIdSAFayIJaiEGIAggAiAMIBNqIgggBWoiDGo2AgAgDiADIAZqNgIAIAcgFCAJayIHIARrNgIAIBEgC0HZA2xBgAFqIBBBxAFsakEIdSAEaiIJIAggBWsiBWo2AgAgEiAFIAlrNgIAIAogBCAHajYCACANIAYgA2s2AgAgDyAMI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saiABQQxsaiAAKAIIQQYQMCICNgLUAiAAIANBgANsaiABQQxsaiACNgLQAiAFIAI2AgAMAgsgBSAAKAIIQQYQMDYCACAAIANBgANsaiABQQxsaiAAKAIIQQYQMCICNgLUAiAAIANBgANsaiABQQxsaiACNgLQAgsLCyADQQFqIgMgCEkNAAsgAUEBaiIBIAtHDQALCwsLaiALQSBJIRsgAEHMtgFqIQQgAEHMCGohHCAAQcz2AGohHSAAQcwLaiEeIABBzJYBaiEfA0BBACEWIBQhAwNAIBgEQEEAIQEDQCAAQQAgASAOECggAEEBIAEgDhAoIAFBAWoiASANSA0ACwsgGQRAIA0hAQNAIABBACABIA4QKCAAQcwLaiABQQxsaiAAQcwIaiABQQxsaigCADYCACAAIAFBDGxqQdALaiAAIAFBDGxqQdAIaigCADYCACAAIAFBDGxqQdQLaiAAIAFBDGxqQdQIaigCADYCACABQQFqIgEgC0gNAAsLIBsEQCALIQEDQCAAQcwIaiABQQxsakEANgIAIAAgAUEMbGpB0AhqQQA2AgAgACABQQxsakHUCGpBADYCACAAQcwLaiABQQxsakEANgIAIAAgAUEMbGpB0AtqQQA2AgAgACABQQxsakHUC2pBADYCACABQQFqIgFBIEcNAAsLIAAoAgQhASADIRFBACESA0AgACABQcAHakH/B3EiATYCBCAcIBIgHSABECkgBEIANwIAIARCADcCCCAEQgA3AhAgBEIANwIYIARCADcCICAEQgA3AiggBEIANwIwIARCADcCOCAEQUBrQgA3AgAgBEIANwJIIARCADcCUCAEQgA3AlggBEIANwJgIARCADcCaCAEQgA3AnAgBEIANwJ4IAAoAgQiD0EBdSETQf8HIA9BgAFvQQF1IgxrIgFBgH9xIRUgAUEHdkEGdEHABGohEEGABCATayEGIAwhAQNAIAYhB0EAIQkgASECA0AgB0EBaiEIIAJBAWohBSAAQcy2AWogCUECdGoiCiAAQczWAGogB0ECdGoqAgAgAEHM9gBqIAJBAnRqKgIAlCAKKAIAspKoNgIAIAlBAWoiCUEgRwRAIAghByAFIQIMAQsLIAFBgAFqIQIgBkFAayEGIAFBgAdIBEAgAiEBDAELC0HgByAMIBVqayIBQYAISARAIBAgE2tBoHxqIQY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jitiI6kiEqIANBMGpBAnQgAmogTSA8kow4AgAgA0EvakECdCACaiApICiSIEwgSZIgJJIiKJKMIik4AgAgA0ExakECdCACaiApOAIAIANBLmpBAnQgAmogRiBFkiAjkowiKTgCACADQTJqQQJ0IAJqICk4AgAgA0EtakECdCACaiAwIC2SIEAgPpIgJpIiKZIiPCAokowiKDgCACADQTNqQQJ0IAJqICg4AgAgA0EsakECdCACaiA2IESIFEgUJIgNZIiKJKMIjY4AgAgA0E0akECdCACaiA2OAIAIANBK2pBAnQgAmogPCA/IDiSIDOSIjwgJJIiJJKMIjY4AgAgA0E1akECdCACaiA2OAIAIANBKmpBAnQgAmogPSBSkiA7kiI9ICOSjCIjOAIAIANBNmpBAnQgAmogIzgCACADQSlqQQJ0IAJqIEsgSpIgOpIiIyAkkowiJDgCACADQTdqQQJ0IAJqICQ4AgAgA0EoakECdCACaiBIIE6SIDGSjCIkOAIAIANBOGpBAnQgAmogJDgCACADQSdqQQJ0IAJqICMgPCArkiIjkowiJDgCACADQTlqQQJ0IAJqICQ4AgAgA0EmakECdCACaiA9ICeSjCIkOAIAIANBOmpBAnQgAmogJDgCACADQSVqQQJ0IAJqICkgLSAwk7tEuEt/Zp6g5jitiIpkiItICOSjCIjOAIAIANBO2pBAnQgAmogIzgCACADQSRqQQJ0IAJqICggR5KMIiM4AgAgA0E8akECdCACaiAjOAIAIANBI2pBAnQgAmogLSArIDKSIiOSjCIoOAIAIANBPWpBAnQgAmogKDgCACADQSJqQQJ0IAJqICcgU5KMIic4AgAgA0EakECdCACaiAnOAIAIANBIWpBAnQgAmogIyBCkowiIzgCACADQT9qQQJ0IAJqICM4AgAgA0EgakECdCACaiA0jDgCACADQQJ0IAJqIDQ4AgAgA0EfakECdCACaiAsjDgCACADQQFqQQJ0IAJqICw4AgAgA0EeakECdCACaiA5jDgCACADQQJqQQJ0IAJqIDk4AgAgA0EdakECdCACaiApICaSIjQgQZIiI4w4AgAgA0EDakECdCACaiAjOAIAIANBHGpBAnQgAmogL4w4AgAgA0EEakECdCACaiAvOAIAIANBG2pBAnQgAmogNCA3IDOSIjSSIiMOAIAIANBBWpBAnQgAmogLzgCACADQRpqQQJ0IAJqIEQgO5IiL4w4AgAgA0EGakECdCACaiAvOAIAIANBGWpBAnQgAmogNCA6kiI0jDgCACADQQdqQQJ0IAJqIDQ4AgAgA0EYakECdCACaiAxjDgCACADQQhqQQJ0IAJqIDE4AgAgA0EXakECdCACaiAqjDgCACADQQlqQQJ0IAJqICo4AgAgA0EWakECdCACaiA7IC6SIjGMOAIAIANBCmpBAnQgAmogMTgCACADQRVqQQJ0IAJqIEMgJpIiMYw4AgAgA0ELakECdCACaiAxOAIAIANBFGpBAnQgAmogNYw4AgAgA0EMakECdCACaiA1OAIAIANBE2pBAnQgAmogJiAlkiImjDgCACADQQ1qQQJ0IAJqICY4AgAgA0ESakECdCACaiAujDgCACADQQ5qQQJ0IAJqIC44AgAgA0ERakECdCACaiAljDgCACADQQ9qQQJ0IAJqICU4AgAgA0EQakECdCACakMAAAAAOAIACy8BAX9BFBAxIgIgATYCECACIAAQMTYCACACIAA2AgggAkEANgIMIAJBADYCBCACCw0AIAAoAgAQOCAAEDgL6QEBBH8gACgCCCIDIAAoAgwiAmsiBCABSQRAAkAgACgCEEECRgRAIAAgACgCACABIARrIANBAXQiAiACIARqIAFJGyIBEDk2AgAgACABNgIIIAAoAgQgACgCDCIBQQN0IgJNDQEgACACNgIEDAELIAIgACgCBCIFQQN2IgNGIAMgBGogAUlyBEAgAEEANgIMIABBADYCBEEAIQEMAQsgAwRAIAAoAgAiASABIANqIAIgA2sQOxogACAAKAIMIANrIgE2AgwgACAAKAIEIAVBeHFrNgIEBSACIQELCwUgAiEBCyAAKAIAIAFqC40BAQR/IAAoAgRBB2pBA3YiASAAKAIMIgRJBEACQCAAKAIAIQIDQAJAIAFBAWohAyABIAJqLAAARQRAIAIgA2osAABFBEAgAiABQQJqaiwAAEEBRg0CCwsgAyAETw0CIAMhAQwBCwsgACABQQN0QSBqNgIEIAIgAUEDamotAAAPCwsgACAEQQN0NgIEQX8LqQEBBH8gACgCBEEHakEDdiICIAAoAgwiBUkEQAJAIAAoAgAhBANAAkAgAkEBaiEDAkACQCACIARqLAAADQAgAyAEaiwAAA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yABLAABOgABIAJBbGpBcHEiCEESaiIJIAFqIAJBbmogA0ECaiEEIAJBfmohBiABQQJqIQIgBSEBA0AgBCACKAICIgVBEHQgAUEQdnI2AgAgBCACKAIGIgFBEHQgBUEQdnI2AgQgBCACKAIKIgVBEHQgAUEQdnI2AgggBCACKAIOIgFBEHQgBUEQdnI2AgwgAkEQaiECIARBEGohBCAGQXBqIgZBEUsNAAsgAyAJaiEDIAhrIQIhAQwBCyADIAEoAgAiBToAACACQWxqQXBxIghBEWoiCSABaiACQW9qIANBAWohBCACQX9qIQYgAUEBaiECIAUhAQNAIAQgAigCAyIFQRh0IAFBCHZyNgIAIAQgAigCByIBQRh0IAVBCHZyNgIEIAQgAigCCyIFQRh0IAFBCHZyNgIIIAQgAigCDyIBQRh0IAVBCHZyNgIMIAJBEGohAiAEQRBqIQQgBkFwaiIGQRJLDQALIAMgCWohAyAIayECIQELCyACQRBxBEAgAyABLAAAOgAAIAMgASwAAToAASADIAEsAAI6AAIgAyABLAADOgADIAMgASwABDoABCADIAEsAAU6AAUgAyABLAAGOgAGIAMgASwABzoAByADIAEsAAg6AAggAyABLAAJOgAJIAMgASwACjoACiADIAEsAAs6AAsgAyABLAAMOgAMIAMgASwADToADSADIAEsAA46AA4gAyABLAAPOgAPIANBEGohAyABQRBqIQELIAJBCHEEQCADIAEsAAA6AAAgAyABLAABOgABIAMgASwAAjoAAiADIAEsAAM6AAMgAyABLAAEOgAEIAMgASwABToABSADIAEsAAY6AAYgAyABLAAHOgAHIANBCGohAyABQQhqIQELIAJBBHEEQCADIAEsAAA6AAAgAyABLAABOgABIAMgASwAAjoAAiADIAEsAAM6AAMgA0EEaiEDIAFBBGohAQsgAkECcQRAIAMgASwAADoAACADIAEsAAE6AAEgA0ECaiEDIAFBAmohAQsgAkEBcUUEQCAADwsgAyABLAAAOgAAIAALwAMBBn8gACABRgRAIAAPCyABIAJqIABLIAAgAmoiBSABS3FFBEAgACABIAIQOhogAA8LIAEgACIDc0EDcUUhBCADIAFJBH8gBARAIANBA3EEQAJAA0AgAgRAIAJBf2ohAiABQQFqIQQgAyABLAAAO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;4. h5播放 html 实现 (引入 jsmpeg.min.js) !DOCTYPE html html headtitle实现h5端播放rtsp流视频--通过ffmpeg转流实现/title /head bodydiv classcontainercanvas idvideo-canvas width1920 height1080 stylewidth:100%;/canvas/divscript typetext/javascript src./jsmpeg.min.js/scriptscript typetext/javascriptconst canvas document.getElementById(video-canvas);var urls ws://127.0.0.1:9998;var players new JSMpeg.Player(urls, {canvas: canvas,videoBufferSize: 1024*1024});/script /body /htmlvue-cli 实现 在vue-cli生成的项目里,index.html 里面(引入 jsmpeg.min.js) 在需要使用的vue文件里 templatecanvas idvideoCanvas stylewidth:100%;/canvas/template script export default {mounted() {const canvas document.getElementById(videoCanvas);var urls ws://127.0.0.1:9998;var players new JSMpeg.Player(urls, {canvas: canvas,videoBufferSize: 1024*1024});} } script
http://www.w-s-a.com/news/977354/

相关文章:

  • 宜昌建设厅网站中国最新时事新闻
  • 微网站怎么开发wordpress 发表评论
  • 山东网站建设是什么一页网站首页图如何做
  • 游戏开发与网站开发哪个难万网影
  • 做网站编程语言建筑施工特种证书查询
  • 找人做网站内容自己编辑吗修改wordpress登陆界面
  • 登陆建设银行wap网站湖南网站建设磐石网络答疑
  • 58网站怎么做浏览度才高论坛网站怎么做排名
  • wordpress 手机网站支付京东网站建设的经费预算
  • 自己怎么样做游戏网站做海外贸易网站
  • 建立什么样的网站好制作网页网站代码
  • 岳麓区专业的建设网站公司尚一网常德论坛
  • 电商网站建设实训报告360站长平台链接提交
  • 个性化网站建设公司个人网站备案类型
  • 腾讯建站模板上海网站开发有限公司
  • 网站和小程序的区别请问做网站怎么赚钱
  • 网站logo设计免费版在线网站开发建设准备工作
  • wordpress多站点 主题南京做网站好的公司
  • 广州 门户seo到底是做什么的
  • 可以登录国外网站吗如何用家用电脑做网站
  • 吉安建站公司wordpress企业
  • 河北住房和城乡建设厅网站6thinkphp做视频网站
  • 遵义网站制作一般需要多少钱深圳全国网站制作哪个好
  • 公众平台网站价格哪个网站做餐饮推广最好
  • 深圳 公司网站设计重庆的网站设计公司价格
  • 网站开发市场分析餐饮平台app有哪些
  • 制作一个收费网站要多少钱开发网站需要什么技术
  • 网站流量统计平台二手域名做网站不收录
  • 蒙古网站后缀mysql8.0 wordpress
  • 免费建立一个网站互联网推广培训