@bylqwjc/react-video-editor 1.0.4 → 1.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -78
- package/package.json +17 -128
- package/react.mjs +1421 -0
- package/styles.css +2 -0
- package/dist/chunks/chunk-OKB2FJUI.mjs +0 -1414
- package/dist/chunks/chunk-YP7ILKMI.mjs +0 -1
- package/dist/chunks/frames-KWJYA55E.mjs +0 -8
- package/dist/react.mjs +0 -1
- package/dist/styles.css +0 -2
- package/dist/web-component.d.ts +0 -35
- package/dist/web-component.mjs +0 -1
- /package/{dist/react.d.ts → react.d.ts} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var h=Object.create;var f=Object.defineProperty;var i=Object.getOwnPropertyDescriptor;var j=Object.getOwnPropertyNames;var k=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty;var m=(a,b,c)=>b in a?f(a,b,{enumerable:!0,configurable:!0,writable:!0,value:c}):a[b]=c;var n=(a=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(a,{get:(b,c)=>(typeof require<"u"?require:b)[c]}):a)(function(a){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+a+'" is not supported')});var o=(a,b,c)=>()=>{if(c)throw c[0];try{return a&&(b=a(a=0)),b}catch(d){throw c=[d],d}};var p=(a,b)=>()=>{try{return b||a((b={exports:{}}).exports,b),b.exports}catch(c){throw b=0,c}},q=(a,b)=>{for(var c in b)f(a,c,{get:b[c],enumerable:!0})},g=(a,b,c,d)=>{if(b&&typeof b=="object"||typeof b=="function")for(let e of j(b))!l.call(a,e)&&e!==c&&f(a,e,{get:()=>b[e],enumerable:!(d=i(b,e))||d.enumerable});return a};var r=(a,b,c)=>(c=a!=null?h(k(a)):{},g(b||!a||!a.__esModule?f(c,"default",{value:a,enumerable:!0}):c,a)),s=a=>g(f({},"__esModule",{value:!0}),a);var t=(a,b,c)=>m(a,typeof b!="symbol"?b+"":b,c);export{n as a,o as b,p as c,q as d,r as e,s as f,t as g};
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import"./chunk-YP7ILKMI.mjs";var Xe=Object.defineProperty,ke=l=>{throw TypeError(l)},Ke=(l,n,h)=>n in l?Xe(l,n,{enumerable:!0,configurable:!0,writable:!0,value:h}):l[n]=h,O=(l,n,h)=>Ke(l,typeof n!="symbol"?n+"":n,h),Fe=(l,n,h)=>n.has(l)||ke("Cannot "+h),b=(l,n,h)=>(Fe(l,n,"read from private field"),h?h.call(l):n.get(l)),B=(l,n,h)=>n.has(l)?ke("Cannot add the same private member more than once"):n instanceof WeakSet?n.add(l):n.set(l,h),A=(l,n,h,o)=>(Fe(l,n,"write to private field"),o?o.call(l,h):n.set(l,h),h);function Qe(l){return document.createElement(l)}function Je(l,n){let h=Qe("pre");h.style.cssText=`margin: 0; ${n}; visibility: hidden; position: fixed;`,h.textContent=l,document.body.appendChild(h);let{width:o,height:d}=h.getBoundingClientRect();h.remove(),h.style.visibility="visible";let c=new Image;c.width=o,c.height=d;let u=`
|
|
2
|
-
<svg xmlns="http://www.w3.org/2000/svg" width="${o}" height="${d}">
|
|
3
|
-
<foreignObject width="100%" height="100%">
|
|
4
|
-
<div xmlns="http://www.w3.org/1999/xhtml">${h.outerHTML}</div>
|
|
5
|
-
</foreignObject>
|
|
6
|
-
</svg>
|
|
7
|
-
`.replace(/\t/g,"").replace(/#/g,"%23");return c.src=`data:image/svg+xml;charset=utf-8,${u}`,c}async function ts(l,n){let h=Je(l,n);await new Promise(c=>{h.onload=c});let o=new OffscreenCanvas(h.width,h.height),d=o.getContext("2d");return d?.drawImage(h,0,0,h.width,h.height),await createImageBitmap(o)}var Pe=l=>{throw TypeError(l)},Le=(l,n,h)=>n.has(l)||Pe("Cannot "+h),I=(l,n,h)=>(Le(l,n,"read from private field"),h?h.call(l):n.get(l)),M=(l,n,h)=>n.has(l)?Pe("Cannot add the same private member more than once"):n instanceof WeakSet?n.add(l):n.set(l,h),D=(l,n,h,o)=>(Le(l,n,"write to private field"),n.set(l,h),h),Re="KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHUobil7aWYobj09PSIvIilyZXR1cm57cGFyZW50Om51bGwsbmFtZToiIn07Y29uc3QgZT1uLnNwbGl0KCIvIikuZmlsdGVyKGk9PmkubGVuZ3RoPjApO2lmKGUubGVuZ3RoPT09MCl0aHJvdyBFcnJvcigiSW52YWxpZCBwYXRoIik7Y29uc3QgYT1lW2UubGVuZ3RoLTFdLHI9Ii8iK2Uuc2xpY2UoMCwtMSkuam9pbigiLyIpO3JldHVybntuYW1lOmEscGFyZW50OnJ9fWFzeW5jIGZ1bmN0aW9uIHcobixlKXtjb25zdHtwYXJlbnQ6YSxuYW1lOnJ9PXUobik7aWYoYT09bnVsbClyZXR1cm4gYXdhaXQgbmF2aWdhdG9yLnN0b3JhZ2UuZ2V0RGlyZWN0b3J5KCk7Y29uc3QgaT1hLnNwbGl0KCIvIikuZmlsdGVyKHQ9PnQubGVuZ3RoPjApO3RyeXtsZXQgdD1hd2FpdCBuYXZpZ2F0b3Iuc3RvcmFnZS5nZXREaXJlY3RvcnkoKTtmb3IoY29uc3QgcyBvZiBpKXQ9YXdhaXQgdC5nZXREaXJlY3RvcnlIYW5kbGUocyx7Y3JlYXRlOmUuY3JlYXRlfSk7aWYoZS5pc0ZpbGUpcmV0dXJuIGF3YWl0IHQuZ2V0RmlsZUhhbmRsZShyLHtjcmVhdGU6ZS5jcmVhdGV9KX1jYXRjaCh0KXtpZih0Lm5hbWU9PT0iTm90Rm91bmRFcnJvciIpcmV0dXJuIG51bGw7dGhyb3cgdH19Y29uc3QgZj17fTtzZWxmLm9ubWVzc2FnZT1hc3luYyBuPT57dmFyIGk7Y29uc3R7ZXZ0VHlwZTplLGFyZ3M6YX09bi5kYXRhO2xldCByPWZbYS5maWxlSWRdO3RyeXtsZXQgdDtjb25zdCBzPVtdO2lmKGU9PT0icmVnaXN0ZXIiKXtjb25zdCBsPWF3YWl0IHcoYS5maWxlUGF0aCx7Y3JlYXRlOiEwLGlzRmlsZTohMH0pO2lmKGw9PW51bGwpdGhyb3cgRXJyb3IoYG5vdCBmb3VuZCBmaWxlOiAke2EuZmlsZUlkfWApO3I9YXdhaXQgbC5jcmVhdGVTeW5jQWNjZXNzSGFuZGxlKHttb2RlOmEubW9kZX0pLGZbYS5maWxlSWRdPXJ9ZWxzZSBpZihlPT09ImNsb3NlIilhd2FpdCByLmNsb3NlKCksZGVsZXRlIGZbYS5maWxlSWRdO2Vsc2UgaWYoZT09PSJ0cnVuY2F0ZSIpYXdhaXQgci50cnVuY2F0ZShhLm5ld1NpemUpO2Vsc2UgaWYoZT09PSJ3cml0ZSIpe2NvbnN0e2RhdGE6bCxvcHRzOm99PW4uZGF0YS5hcmdzO3Q9YXdhaXQgci53cml0ZShsLG8pfWVsc2UgaWYoZT09PSJyZWFkIil7Y29uc3R7b2Zmc2V0Omwsc2l6ZTpvfT1uLmRhdGEuYXJncyxnPW5ldyBVaW50OEFycmF5KG8pLGQ9YXdhaXQgci5yZWFkKGcse2F0Omx9KSxjPWcuYnVmZmVyO3Q9ZD09PW8/YzooKGk9Yy50cmFuc2Zlcik9PW51bGw/dm9pZCAwOmkuY2FsbChjLGQpKT8/Yy5zbGljZSgwLGQpLHMucHVzaCh0KX1lbHNlIGU9PT0iZ2V0U2l6ZSI/dD1hd2FpdCByLmdldFNpemUoKTplPT09ImZsdXNoIiYmYXdhaXQgci5mbHVzaCgpO3NlbGYucG9zdE1lc3NhZ2Uoe2V2dFR5cGU6ImNhbGxiYWNrIixjYklkOm4uZGF0YS5jYklkLHJldHVyblZhbDp0fSxzKX1jYXRjaCh0KXtjb25zdCBzPXQ7c2VsZi5wb3N0TWVzc2FnZSh7ZXZ0VHlwZToidGhyb3dFcnJvciIsY2JJZDpuLmRhdGEuY2JJZCxlcnJNc2c6cy5uYW1lKyI6ICIrcy5tZXNzYWdlK2AKYCtKU09OLnN0cmluZ2lmeShuLmRhdGEpfSl9fX0pKCk7Ci8vIyBzb3VyY2VNYXBwaW5nVVJMPW9wZnMtd29ya2VyLUY0UldscWNfLmpzLm1hcAo=",$e=l=>Uint8Array.from(atob(l),n=>n.charCodeAt(0)),we=typeof self<"u"&&self.Blob&&new Blob([$e(Re)],{type:"text/javascript;charset=utf-8"});function qe(l){let n;try{if(n=we&&(self.URL||self.webkitURL).createObjectURL(we),!n)throw"";let h=new Worker(n,{name:l?.name});return h.addEventListener("error",()=>{(self.URL||self.webkitURL).revokeObjectURL(n)}),h}catch{return new Worker("data:text/javascript;base64,"+Re,{name:l?.name})}finally{n&&(self.URL||self.webkitURL).revokeObjectURL(n)}}async function ti(l,n,h){let o=ei();return await o("register",{fileId:l,filePath:n,mode:h}),{read:async(d,c)=>await o("read",{fileId:l,offset:d,size:c}),write:async(d,c)=>await o("write",{fileId:l,data:d,opts:c},[ArrayBuffer.isView(d)?d.buffer:d]),close:async()=>await o("close",{fileId:l}),truncate:async d=>await o("truncate",{fileId:l,newSize:d}),getSize:async()=>await o("getSize",{fileId:l}),flush:async()=>await o("flush",{fileId:l})}}var Rt=[],ie=0;function ei(){if(Rt.length<3){let n=l();return Rt.push(n),n}else{let n=Rt[ie];return ie=(ie+1)%Rt.length,n}function l(){let n=new qe,h=0,o={};return n.onmessage=({data:d})=>{var c,u;d.evtType==="callback"?(c=o[d.cbId])==null||c.resolve(d.returnVal):d.evtType==="throwError"&&((u=o[d.cbId])==null||u.reject(Error(d.errMsg))),delete o[d.cbId]},async function(d,c,u=[]){h+=1;let s=new Promise((y,w)=>{o[h]={resolve:y,reject:w}});return n.postMessage({cbId:h,evtType:d,args:c},u),s}}}function te(l){if(l==="/")return{parent:null,name:""};let n=l.split("/").filter(d=>d.length>0);if(n.length===0)throw Error("Invalid path");let h=n[n.length-1],o="/"+n.slice(0,-1).join("/");return{name:h,parent:o}}async function rt(l,n){let{parent:h,name:o}=te(l);if(h==null)return await navigator.storage.getDirectory();let d=h.split("/").filter(c=>c.length>0);try{let c=await navigator.storage.getDirectory();for(let u of d)c=await c.getDirectoryHandle(u,{create:n.create});return n.isFile?await c.getFileHandle(o,{create:n.create}):await c.getDirectoryHandle(o,{create:n.create})}catch(c){if(c.name==="NotFoundError")return null;throw c}}async function De(l){let{parent:n,name:h}=te(l);if(n==null){let d=await navigator.storage.getDirectory();for await(let c of d.keys())await d.removeEntry(c,{recursive:!0});return}let o=await rt(n,{create:!1,isFile:!1});o!=null&&await o.removeEntry(h,{recursive:!0})}function re(l,n){return`${l}/${n}`.replace("//","/")}function gt(l){return new Qt(l)}var G,Dt,vt,Qt=class{constructor(n){M(this,G),M(this,Dt),M(this,vt),D(this,G,n);let{parent:h,name:o}=te(n);D(this,Dt,o),D(this,vt,h)}get kind(){return"dir"}get name(){return I(this,Dt)}get path(){return I(this,G)}get parent(){return I(this,vt)==null?null:gt(I(this,vt))}async create(){return await rt(I(this,G),{create:!0,isFile:!1}),gt(I(this,G))}async exists(){return await rt(I(this,G),{create:!1,isFile:!1})instanceof FileSystemDirectoryHandle}async remove(){for(let n of await this.children())try{await n.remove()}catch(h){console.warn(h)}try{await De(I(this,G))}catch(n){console.warn(n)}}async children(){let n=await rt(I(this,G),{create:!1,isFile:!1});if(n==null)return[];let h=[];for await(let o of n.values())h.push((o.kind==="file"?lt:gt)(re(I(this,G),o.name)));return h}async copyTo(n){if(!await this.exists())throw Error(`dir ${this.path} not exists`);let h=await n.exists()?gt(re(n.path,this.name)):n;return await h.create(),await Promise.all((await this.children()).map(o=>o.copyTo(h))),h}async moveTo(n){let h=await this.copyTo(n);return await this.remove(),h}};G=new WeakMap,Dt=new WeakMap,vt=new WeakMap;var ve=new Map;function lt(l,n="rw"){if(n==="rw"){let h=ve.get(l)??new Jt(l,n);return ve.set(l,h),h}return new Jt(l,n)}async function zt(l,n,h={overwrite:!0}){if(n instanceof Jt){await zt(l,await n.stream(),h);return}let o=await(l instanceof Jt?l:lt(l,"rw")).createWriter();try{if(h.overwrite&&await o.truncate(0),n instanceof ReadableStream){let d=n.getReader();for(;;){let{done:c,value:u}=await d.read();if(c)break;await o.write(u)}}else await o.write(n)}catch(d){throw d}finally{await o.close()}}var ii=0,si=()=>++ii,Y,St,Mt,Ut,Ot,$,Nt,xt,ri=class Me{constructor(n,h){M(this,Y),M(this,St),M(this,Mt),M(this,Ut),M(this,Ot),M(this,$,0),M(this,Nt,(()=>{let c=null;return()=>(D(this,$,I(this,$)+1),c??(c=new Promise(async(u,s)=>{try{let y=await ti(I(this,Ot),I(this,Y),I(this,Ut));u([y,async()=>{D(this,$,I(this,$)-1),!(I(this,$)>0)&&(c=null,await y.close())}])}catch(y){s(y)}})))})()),M(this,xt,!1),D(this,Ot,si()),D(this,Y,n),D(this,Ut,{r:"read-only",rw:"readwrite","rw-unsafe":"readwrite-unsafe"}[h]);let{parent:o,name:d}=te(n);D(this,Mt,d),D(this,St,o)}get kind(){return"file"}get path(){return I(this,Y)}get name(){return I(this,Mt)}get parent(){return I(this,St)==null?null:gt(I(this,St))}async createWriter(){if(I(this,Ut)==="read-only")throw Error("file is read-only");if(I(this,xt))throw Error("Other writer have not been closed");D(this,xt,!0);let n=new TextEncoder,[h,o]=await I(this,Nt).call(this),d=await h.getSize(),c=!1;return{write:async(u,s={})=>{if(c)throw Error("Writer is closed");let y=typeof u=="string"?n.encode(u):u,w=s.at??d,g=y.byteLength;return d=w+g,await h.write(y,{at:w})},truncate:async u=>{if(c)throw Error("Writer is closed");await h.truncate(u),d>u&&(d=u)},flush:async()=>{if(c)throw Error("Writer is closed");await h.flush()},close:async()=>{if(c)throw Error("Writer is closed");c=!0,D(this,xt,!1),await o()}}}async createReader(){let[n,h]=await I(this,Nt).call(this),o=!1,d=0;return{read:async(c,u={})=>{if(o)throw Error("Reader is closed");let s=u.at??d,y=await n.read(s,c);return d=s+y.byteLength,y},getSize:async()=>{if(o)throw Error("Reader is closed");return await n.getSize()},close:async()=>{o||(o=!0,await h())}}}async text(){return new TextDecoder().decode(await this.arrayBuffer())}async arrayBuffer(){let n=await rt(I(this,Y),{create:!1,isFile:!0});return n==null?new ArrayBuffer(0):(await n.getFile()).arrayBuffer()}async stream(){let n=await this.getOriginFile();return n==null?new ReadableStream({pull:h=>{h.close()}}):n.stream()}async getOriginFile(){var n;return(n=await rt(I(this,Y),{create:!1,isFile:!0}))==null?void 0:n.getFile()}async getSize(){let n=await rt(I(this,Y),{create:!1,isFile:!0});return n==null?0:(await n.getFile()).size}async exists(){return await rt(I(this,Y),{create:!1,isFile:!0})instanceof FileSystemFileHandle}async remove(){if(I(this,$))throw Error("exists unclosed reader/writer");await De(I(this,Y))}async copyTo(n){if(!await this.exists())throw Error(`file ${this.path} not exists`);if(n instanceof Me)return lt(n.path)===this?this:(await zt(n.path,this),lt(n.path));if(n instanceof Qt)return await this.copyTo(lt(re(n.path,this.name)));throw Error("Illegal target type")}async moveTo(n){let h=await this.copyTo(n);return await this.remove(),h}};Y=new WeakMap,St=new WeakMap,Mt=new WeakMap,Ut=new WeakMap,Ot=new WeakMap,$=new WeakMap,Nt=new WeakMap,xt=new WeakMap;var Jt=ri,me="/.opfs-tools-temp-dir";async function Oe(l){try{if(l.kind==="file"){if(!await l.exists())return!0;let n=await l.createWriter();await n.truncate(0),await n.close(),await l.remove()}else await l.remove();return!0}catch(n){return console.warn(n),!1}}function ni(){setInterval(async()=>{for(let l of await gt(me).children()){let n=/^\d+-(\d+)$/.exec(l.name);(n==null||Date.now()-Number(n[1])>2592e5)&&await Oe(l)}},60*1e3)}var ne=[],Se=!1;async function ai(){if(globalThis.localStorage==null)return;let l="OPFS_TOOLS_EXPIRES_TMP_FILES";Se||(Se=!0,globalThis.addEventListener("unload",()=>{ne.length!==0&&localStorage.setItem(l,`${localStorage.getItem(l)??""},${ne.join(",")}`)}));let n=localStorage.getItem(l)??"";for(let h of n.split(","))h.length!==0&&await Oe(lt(`${me}/${h}`))&&(n=n.replace(h,""));localStorage.setItem(l,n.replace(/,{2,}/g,","))}(async function(){var l;globalThis.__opfs_tools_tmpfile_init__!==!0&&(globalThis.__opfs_tools_tmpfile_init__=!0,!(globalThis.FileSystemDirectoryHandle==null||globalThis.FileSystemFileHandle==null||((l=globalThis.navigator)==null?void 0:l.storage.getDirectory)==null)&&(ni(),await ai()))})();function $t(){let l=`${Math.random().toString().slice(2)}-${Date.now()}`;return ne.push(l),lt(`${me}/${l}`)}function oi(l){return l instanceof Error?String(l):typeof l=="object"?JSON.stringify(l,(n,h)=>h instanceof Error?String(h):h):String(l)}function hi(){let l=new Date;return`${l.getHours()}:${l.getMinutes()}:${l.getSeconds()}.${l.getMilliseconds()}`}var Ne=1,Ge=$t(),Tt=null,Ue=["debug","info","warn","error"].reduce((l,n,h)=>Object.assign(l,{[n]:(...o)=>{Ne<=h&&(console[n](...o),Tt?.write(`[${n}][${hi()}] ${o.map(d=>oi(d)).join(" ")}
|
|
8
|
-
`))}}),{}),Pt=new Map,T={setLogLevel:l=>{Ne=Pt.get(l)??1},...Ue,create:l=>Object.fromEntries(Object.entries(Ue).map(([n,h])=>[n,(...o)=>h(l,...o)])),async dump(){return await di,await Tt?.flush(),await Ge.text()}};Pt.set(T.debug,0);Pt.set(T.info,1);Pt.set(T.warn,2);Pt.set(T.error,3);async function li(){try{Tt=await Ge.createWriter(),T.info(navigator.userAgent),T.info("date: "+new Date().toLocaleDateString())}catch(l){if(!(l instanceof Error))throw l;if(l.message.includes("createSyncAccessHandle is not a function"))console.warn(l);else throw l}}var di=globalThis.navigator==null?null:li(),ci=()=>{let l,n=16.6;self.onmessage=h=>{h.data.event==="start"&&(self.clearInterval(l),l=self.setInterval(()=>{self.postMessage({})},n)),h.data.event==="stop"&&self.clearInterval(l)}},pi=()=>{let l=new Blob([`(${ci.toString()})()`]),n=URL.createObjectURL(l);return new Worker(n)},ct=new Map,ae=1,yt=null;globalThis.Worker!=null&&(yt=pi(),yt.onmessage=()=>{ae+=1;for(let[l,n]of ct)if(ae%l===0)for(let h of n)h()});var Ye=(l,n)=>{let h=Math.round(n/16.6),o=ct.get(h)??new Set;return o.add(l),ct.set(h,o),ct.size===1&&o.size===1&&yt?.postMessage({event:"start"}),()=>{o.delete(l),o.size===0&&ct.delete(h),ct.size===0&&(ae=0,yt?.postMessage({event:"stop"}))}},oe=class{constructor(n,h,o){this.length_=n,this.scaleFactor_=(n-1)/h,this.interpolate=this.cubic,o.method==="point"?this.interpolate=this.point:o.method==="linear"?this.interpolate=this.linear:o.method==="sinc"&&(this.interpolate=this.sinc),this.tangentFactor_=1-Math.max(0,Math.min(1,o.tension||0)),this.sincFilterSize_=o.sincFilterSize||1,this.kernel_=ui(o.sincWindow||fi)}point(n,h){return this.getClippedInput_(Math.round(this.scaleFactor_*n),h)}linear(n,h){n=this.scaleFactor_*n;let o=Math.floor(n);return n-=o,(1-n)*this.getClippedInput_(o,h)+n*this.getClippedInput_(o+1,h)}cubic(n,h){n=this.scaleFactor_*n;let o=Math.floor(n),d=[this.getTangent_(o,h),this.getTangent_(o+1,h)],c=[this.getClippedInput_(o,h),this.getClippedInput_(o+1,h)];n-=o;let u=n*n,s=n*u;return(2*s-3*u+1)*c[0]+(s-2*u+n)*d[0]+(-2*s+3*u)*c[1]+(s-u)*d[1]}sinc(n,h){n=this.scaleFactor_*n;let o=Math.floor(n),d=o-this.sincFilterSize_+1,c=o+this.sincFilterSize_,u=0;for(let s=d;s<=c;s++)u+=this.kernel_(n-s)*this.getClippedInput_(s,h);return u}getTangent_(n,h){return this.tangentFactor_*(this.getClippedInput_(n+1,h)-this.getClippedInput_(n-1,h))/2}getClippedInput_(n,h){return 0<=n&&n<this.length_?h[n]:0}};function fi(l){return Math.exp(-l/2*l/2)}function ui(l){return function(n){return mi(n)*l(n)}}function mi(l){return l===0?1:Math.sin(Math.PI*l)/(Math.PI*l)}var he=class{constructor(n,h,o){let d=2*Math.PI*o/h,c=0;this.filters=[];for(let u=0;u<=n;u++)u-n/2===0?this.filters[u]=d:(this.filters[u]=Math.sin(d*(u-n/2))/(u-n/2),this.filters[u]*=.54-.46*Math.cos(2*Math.PI*u/n)),c=c+this.filters[u];for(let u=0;u<=n;u++)this.filters[u]/=c;this.z=this.initZ_()}filter(n){this.z.buf[this.z.pointer]=n;let h=0;for(let o=0,d=this.z.buf.length;o<d;o++)h+=this.filters[o]*this.z.buf[(this.z.pointer+o)%this.z.buf.length];return this.z.pointer=(this.z.pointer+1)%this.z.buf.length,h}reset(){this.z=this.initZ_()}initZ_(){let n=[];for(let h=0;h<this.filters.length-1;h++)n.push(0);return{buf:n,pointer:0}}},le=class{constructor(n,h,o){let d=[];for(let c=0;c<n;c++)d.push(this.getCoeffs_({Fs:h,Fc:o,Q:.5/Math.sin(Math.PI/(n*2)*(c+.5))}));this.stages=[];for(let c=0;c<d.length;c++)this.stages[c]={b0:d[c].b[0],b1:d[c].b[1],b2:d[c].b[2],a1:d[c].a[0],a2:d[c].a[1],k:d[c].k,z:[0,0]}}filter(n){let h=n;for(let o=0,d=this.stages.length;o<d;o++)h=this.runStage_(o,h);return h}getCoeffs_(n){let h={};h.z=[0,0],h.a=[],h.b=[];let o=this.preCalc_(n,h);return h.k=1,h.b.push((1-o.cw)/(2*o.a0)),h.b.push(2*h.b[0]),h.b.push(h.b[0]),h}preCalc_(n,h){let o={},d=2*Math.PI*n.Fc/n.Fs;return o.alpha=Math.sin(d)/(2*n.Q),o.cw=Math.cos(d),o.a0=1+o.alpha,h.a0=o.a0,h.a.push(-2*o.cw/o.a0),h.k=1,h.a.push((1-o.alpha)/o.a0),o}runStage_(n,h){let o=h*this.stages[n].k-this.stages[n].a1*this.stages[n].z[0]-this.stages[n].a2*this.stages[n].z[1],d=this.stages[n].b0*o+this.stages[n].b1*this.stages[n].z[0]+this.stages[n].b2*this.stages[n].z[1];return this.stages[n].z[1]=this.stages[n].z[0],this.stages[n].z[0]=o,d}reset(){for(let n=0;n<this.stages.length;n++)this.stages[n].z=[0,0]}},_i={point:!1,linear:!1,cubic:!0,sinc:!0},xe={IIR:16,FIR:71},gi={IIR:le,FIR:he};function yi(l,n,h,o={}){let d=(h-n)/n+1,c=new Float64Array(l.length*d);o.method=o.method||"cubic";let u=new oe(l.length,c.length,{method:o.method,tension:o.tension||0,sincFilterSize:o.sincFilterSize||6,sincWindow:o.sincWindow||void 0});if(o.LPF===void 0&&(o.LPF=_i[o.method]),o.LPF){o.LPFType=o.LPFType||"IIR";let s=gi[o.LPFType];if(h>n){let y=new s(o.LPFOrder||xe[o.LPFType],h,n/2);bi(l,c,u,y)}else{let y=new s(o.LPFOrder||xe[o.LPFType],n,h/2);wi(l,c,u,y)}}else He(l,c,u);return c}function He(l,n,h){for(let o=0,d=n.length;o<d;o++)n[o]=h.interpolate(o,l)}function bi(l,n,h,o){for(let d=0,c=n.length;d<c;d++)n[d]=o.filter(h.interpolate(d,l));o.reset();for(let d=n.length-1;d>=0;d--)n[d]=o.filter(n[d])}function wi(l,n,h,o){for(let d=0,c=l.length;d<c;d++)l[d]=o.filter(l[d]);o.reset();for(let d=l.length-1;d>=0;d--)l[d]=o.filter(l[d]);He(l,n,h)}function Ve(l){let n=new Float32Array(l.map(o=>o.length).reduce((o,d)=>o+d)),h=0;for(let o of l)n.set(o,h),h+=o.length;return n}function vi(l){let n=[];for(let h=0;h<l.length;h+=1)for(let o=0;o<l[h].length;o+=1)n[o]==null&&(n[o]=[]),n[o].push(l[h][o]);return n.map(Ve)}function _e(l){if(l.format==="f32-planar"){let n=[];for(let h=0;h<l.numberOfChannels;h+=1){let o=l.allocationSize({planeIndex:h}),d=new ArrayBuffer(o);l.copyTo(d,{planeIndex:h}),n.push(new Float32Array(d))}return n}else if(l.format==="f32"){let n=new ArrayBuffer(l.allocationSize({planeIndex:0}));return l.copyTo(n,{planeIndex:0}),Ui(new Float32Array(n),l.numberOfChannels)}else if(l.format==="s16"){let n=new ArrayBuffer(l.allocationSize({planeIndex:0}));return l.copyTo(n,{planeIndex:0}),Si(new Int16Array(n),l.numberOfChannels)}throw Error("Unsupported audio data format")}function Si(l,n){let h=l.length/n,o=Array.from({length:n},()=>new Float32Array(h));for(let d=0;d<h;d++)for(let c=0;c<n;c++){let u=l[d*n+c];o[c][d]=u/32768}return o}function Ui(l,n){let h=l.length/n,o=Array.from({length:n},()=>new Float32Array(h));for(let d=0;d<h;d++)for(let c=0;c<n;c++)o[c][d]=l[d*n+c];return o}function We(l){return Array(l.numberOfChannels).fill(0).map((n,h)=>l.getChannelData(h))}function es(l,n){let h=new Float32Array(Ve(_e(l))).map(d=>d*n),o=new AudioData({sampleRate:l.sampleRate,numberOfChannels:l.numberOfChannels,timestamp:l.timestamp,format:l.format,numberOfFrames:l.numberOfFrames,data:h});return l.close(),o}async function is(l,n){var h;let o={type:n,data:l},d=new ImageDecoder(o);await Promise.all([d.completed,d.tracks.ready]);let c=((h=d.tracks.selectedTrack)==null?void 0:h.frameCount)??1,u=[];for(let s=0;s<c;s+=1)u.push((await d.decode({frameIndex:s})).image);return u}function Ee(l){var n,h;let o=Math.max(...l.map(c=>{var u;return((u=c[0])==null?void 0:u.length)??0})),d=new Float32Array(o*2);for(let c=0;c<o;c++){let u=0,s=0;for(let y=0;y<l.length;y++){let w=((n=l[y][0])==null?void 0:n[c])??0,g=((h=l[y][1])==null?void 0:h[c])??w;u+=w,s+=g}d[c]=u,d[c+o]=s}return d}async function xi(l,n,h){let o=l.length,d=Array(h.chanCount).fill(0).map(()=>new Float32Array(0));if(o===0)return d;let c=Math.max(...l.map(w=>w.length));if(c===0)return d;if(globalThis.OfflineAudioContext==null)return l.map(w=>new Float32Array(yi(w,n,h.rate,{method:"sinc",LPF:!1})));let u=new globalThis.OfflineAudioContext(h.chanCount,c*h.rate/n,h.rate),s=u.createBufferSource(),y=u.createBuffer(o,c,n);return l.forEach((w,g)=>y.copyToChannel(w,g)),s.buffer=y,s.connect(u.destination),s.start(),We(await u.startRendering())}function Ze(l){return new Promise(n=>{let h=Ye(()=>{h(),n()},l)})}function Ei(l,n,h){let o=h-n,d=new Float32Array(o),c=0;for(;c<o;)d[c]=l[(n+c)%l.length],c+=1;return d}function ge(l,n){let h=!1;async function o(){let d=l.getReader();for(;!h;){let{value:c,done:u}=await d.read();if(u){n.onDone();return}await n.onChunk(c)}d.releaseLock(),await l.cancel()}return o().catch(T.error),()=>{h=!0}}function Ai(l){return l&&l.__esModule&&Object.prototype.hasOwnProperty.call(l,"default")?l.default:l}var je={};(function(l){var n=(function(){var t=new Date,e=4,i=3,r=2,a=1,p=e,f={setLogLevel:function(m){m==this.debug?p=a:m==this.info?p=r:m==this.warn?p=i:(m==this.error,p=e)},debug:function(m,_){console.debug===void 0&&(console.debug=console.log),a>=p&&console.debug("["+n.getDurationString(new Date-t,1e3)+"]","["+m+"]",_)},log:function(m,_){this.debug(m.msg)},info:function(m,_){r>=p&&console.info("["+n.getDurationString(new Date-t,1e3)+"]","["+m+"]",_)},warn:function(m,_){i>=p&&console.warn("["+n.getDurationString(new Date-t,1e3)+"]","["+m+"]",_)},error:function(m,_){e>=p&&console.error("["+n.getDurationString(new Date-t,1e3)+"]","["+m+"]",_)}};return f})();n.getDurationString=function(t,e){var i;function r(v,S){for(var E=""+v,z=E.split(".");z[0].length<S;)z[0]="0"+z[0];return z.join(".")}t<0?(i=!0,t=-t):i=!1;var a=e||1,p=t/a,f=Math.floor(p/3600);p-=f*3600;var m=Math.floor(p/60);p-=m*60;var _=p*1e3;return p=Math.floor(p),_-=p*1e3,_=Math.floor(_),(i?"-":"")+f+":"+r(m,2)+":"+r(p,2)+"."+r(_,3)},n.printRanges=function(t){var e=t.length;if(e>0){for(var i="",r=0;r<e;r++)r>0&&(i+=","),i+="["+n.getDurationString(t.start(r))+","+n.getDurationString(t.end(r))+"]";return i}else return"(empty)"},l.Log=n;var h=function(t){if(t instanceof ArrayBuffer)this.buffer=t,this.dataview=new DataView(t);else throw"Needs an array buffer";this.position=0};h.prototype.getPosition=function(){return this.position},h.prototype.getEndPosition=function(){return this.buffer.byteLength},h.prototype.getLength=function(){return this.buffer.byteLength},h.prototype.seek=function(t){var e=Math.max(0,Math.min(this.buffer.byteLength,t));return this.position=isNaN(e)||!isFinite(e)?0:e,!0},h.prototype.isEos=function(){return this.getPosition()>=this.getEndPosition()},h.prototype.readAnyInt=function(t,e){var i=0;if(this.position+t<=this.buffer.byteLength){switch(t){case 1:e?i=this.dataview.getInt8(this.position):i=this.dataview.getUint8(this.position);break;case 2:e?i=this.dataview.getInt16(this.position):i=this.dataview.getUint16(this.position);break;case 3:if(e)throw"No method for reading signed 24 bits values";i=this.dataview.getUint8(this.position)<<16,i|=this.dataview.getUint8(this.position+1)<<8,i|=this.dataview.getUint8(this.position+2);break;case 4:e?i=this.dataview.getInt32(this.position):i=this.dataview.getUint32(this.position);break;case 8:if(e)throw"No method for reading signed 64 bits values";i=this.dataview.getUint32(this.position)<<32,i|=this.dataview.getUint32(this.position+4);break;default:throw"readInt method not implemented for size: "+t}return this.position+=t,i}else throw"Not enough bytes in buffer"},h.prototype.readUint8=function(){return this.readAnyInt(1,!1)},h.prototype.readUint16=function(){return this.readAnyInt(2,!1)},h.prototype.readUint24=function(){return this.readAnyInt(3,!1)},h.prototype.readUint32=function(){return this.readAnyInt(4,!1)},h.prototype.readUint64=function(){return this.readAnyInt(8,!1)},h.prototype.readString=function(t){if(this.position+t<=this.buffer.byteLength){for(var e="",i=0;i<t;i++)e+=String.fromCharCode(this.readUint8());return e}else throw"Not enough bytes in buffer"},h.prototype.readCString=function(){for(var t=[];;){var e=this.readUint8();if(e!==0)t.push(e);else break}return String.fromCharCode.apply(null,t)},h.prototype.readInt8=function(){return this.readAnyInt(1,!0)},h.prototype.readInt16=function(){return this.readAnyInt(2,!0)},h.prototype.readInt32=function(){return this.readAnyInt(4,!0)},h.prototype.readInt64=function(){return this.readAnyInt(8,!1)},h.prototype.readUint8Array=function(t){for(var e=new Uint8Array(t),i=0;i<t;i++)e[i]=this.readUint8();return e},h.prototype.readInt16Array=function(t){for(var e=new Int16Array(t),i=0;i<t;i++)e[i]=this.readInt16();return e},h.prototype.readUint16Array=function(t){for(var e=new Int16Array(t),i=0;i<t;i++)e[i]=this.readUint16();return e},h.prototype.readUint32Array=function(t){for(var e=new Uint32Array(t),i=0;i<t;i++)e[i]=this.readUint32();return e},h.prototype.readInt32Array=function(t){for(var e=new Int32Array(t),i=0;i<t;i++)e[i]=this.readInt32();return e},l.MP4BoxStream=h;var o=function(t,e,i){this._byteOffset=e||0,t instanceof ArrayBuffer?this.buffer=t:typeof t=="object"?(this.dataView=t,e&&(this._byteOffset+=e)):this.buffer=new ArrayBuffer(t||0),this.position=0,this.endianness=i??o.LITTLE_ENDIAN};o.prototype={},o.prototype.getPosition=function(){return this.position},o.prototype._realloc=function(t){if(this._dynamicSize){var e=this._byteOffset+this.position+t,i=this._buffer.byteLength;if(e<=i){e>this._byteLength&&(this._byteLength=e);return}for(i<1&&(i=1);e>i;)i*=2;var r=new ArrayBuffer(i),a=new Uint8Array(this._buffer),p=new Uint8Array(r,0,a.length);p.set(a),this.buffer=r,this._byteLength=e}},o.prototype._trimAlloc=function(){if(this._byteLength!=this._buffer.byteLength){var t=new ArrayBuffer(this._byteLength),e=new Uint8Array(t),i=new Uint8Array(this._buffer,0,e.length);e.set(i),this.buffer=t}},o.BIG_ENDIAN=!1,o.LITTLE_ENDIAN=!0,o.prototype._byteLength=0,Object.defineProperty(o.prototype,"byteLength",{get:function(){return this._byteLength-this._byteOffset}}),Object.defineProperty(o.prototype,"buffer",{get:function(){return this._trimAlloc(),this._buffer},set:function(t){this._buffer=t,this._dataView=new DataView(this._buffer,this._byteOffset),this._byteLength=this._buffer.byteLength}}),Object.defineProperty(o.prototype,"byteOffset",{get:function(){return this._byteOffset},set:function(t){this._byteOffset=t,this._dataView=new DataView(this._buffer,this._byteOffset),this._byteLength=this._buffer.byteLength}}),Object.defineProperty(o.prototype,"dataView",{get:function(){return this._dataView},set:function(t){this._byteOffset=t.byteOffset,this._buffer=t.buffer,this._dataView=new DataView(this._buffer,this._byteOffset),this._byteLength=this._byteOffset+t.byteLength}}),o.prototype.seek=function(t){var e=Math.max(0,Math.min(this.byteLength,t));this.position=isNaN(e)||!isFinite(e)?0:e},o.prototype.isEof=function(){return this.position>=this._byteLength},o.prototype.mapUint8Array=function(t){this._realloc(t*1);var e=new Uint8Array(this._buffer,this.byteOffset+this.position,t);return this.position+=t*1,e},o.prototype.readInt32Array=function(t,e){t=t??this.byteLength-this.position/4;var i=new Int32Array(t);return o.memcpy(i.buffer,0,this.buffer,this.byteOffset+this.position,t*i.BYTES_PER_ELEMENT),o.arrayToNative(i,e??this.endianness),this.position+=i.byteLength,i},o.prototype.readInt16Array=function(t,e){t=t??this.byteLength-this.position/2;var i=new Int16Array(t);return o.memcpy(i.buffer,0,this.buffer,this.byteOffset+this.position,t*i.BYTES_PER_ELEMENT),o.arrayToNative(i,e??this.endianness),this.position+=i.byteLength,i},o.prototype.readInt8Array=function(t){t=t??this.byteLength-this.position;var e=new Int8Array(t);return o.memcpy(e.buffer,0,this.buffer,this.byteOffset+this.position,t*e.BYTES_PER_ELEMENT),this.position+=e.byteLength,e},o.prototype.readUint32Array=function(t,e){t=t??this.byteLength-this.position/4;var i=new Uint32Array(t);return o.memcpy(i.buffer,0,this.buffer,this.byteOffset+this.position,t*i.BYTES_PER_ELEMENT),o.arrayToNative(i,e??this.endianness),this.position+=i.byteLength,i},o.prototype.readUint16Array=function(t,e){t=t??this.byteLength-this.position/2;var i=new Uint16Array(t);return o.memcpy(i.buffer,0,this.buffer,this.byteOffset+this.position,t*i.BYTES_PER_ELEMENT),o.arrayToNative(i,e??this.endianness),this.position+=i.byteLength,i},o.prototype.readUint8Array=function(t){t=t??this.byteLength-this.position;var e=new Uint8Array(t);return o.memcpy(e.buffer,0,this.buffer,this.byteOffset+this.position,t*e.BYTES_PER_ELEMENT),this.position+=e.byteLength,e},o.prototype.readFloat64Array=function(t,e){t=t??this.byteLength-this.position/8;var i=new Float64Array(t);return o.memcpy(i.buffer,0,this.buffer,this.byteOffset+this.position,t*i.BYTES_PER_ELEMENT),o.arrayToNative(i,e??this.endianness),this.position+=i.byteLength,i},o.prototype.readFloat32Array=function(t,e){t=t??this.byteLength-this.position/4;var i=new Float32Array(t);return o.memcpy(i.buffer,0,this.buffer,this.byteOffset+this.position,t*i.BYTES_PER_ELEMENT),o.arrayToNative(i,e??this.endianness),this.position+=i.byteLength,i},o.prototype.readInt32=function(t){var e=this._dataView.getInt32(this.position,t??this.endianness);return this.position+=4,e},o.prototype.readInt16=function(t){var e=this._dataView.getInt16(this.position,t??this.endianness);return this.position+=2,e},o.prototype.readInt8=function(){var t=this._dataView.getInt8(this.position);return this.position+=1,t},o.prototype.readUint32=function(t){var e=this._dataView.getUint32(this.position,t??this.endianness);return this.position+=4,e},o.prototype.readUint16=function(t){var e=this._dataView.getUint16(this.position,t??this.endianness);return this.position+=2,e},o.prototype.readUint8=function(){var t=this._dataView.getUint8(this.position);return this.position+=1,t},o.prototype.readFloat32=function(t){var e=this._dataView.getFloat32(this.position,t??this.endianness);return this.position+=4,e},o.prototype.readFloat64=function(t){var e=this._dataView.getFloat64(this.position,t??this.endianness);return this.position+=8,e},o.endianness=new Int8Array(new Int16Array([1]).buffer)[0]>0,o.memcpy=function(t,e,i,r,a){var p=new Uint8Array(t,e,a),f=new Uint8Array(i,r,a);p.set(f)},o.arrayToNative=function(t,e){return e==this.endianness?t:this.flipArrayEndianness(t)},o.nativeToEndian=function(t,e){return this.endianness==e?t:this.flipArrayEndianness(t)},o.flipArrayEndianness=function(t){for(var e=new Uint8Array(t.buffer,t.byteOffset,t.byteLength),i=0;i<t.byteLength;i+=t.BYTES_PER_ELEMENT)for(var r=i+t.BYTES_PER_ELEMENT-1,a=i;r>a;r--,a++){var p=e[a];e[a]=e[r],e[r]=p}return t},o.prototype.failurePosition=0,String.fromCharCodeUint8=function(t){for(var e=[],i=0;i<t.length;i++)e[i]=t[i];return String.fromCharCode.apply(null,e)},o.prototype.readString=function(t,e){return e==null||e=="ASCII"?String.fromCharCodeUint8.apply(null,[this.mapUint8Array(t??this.byteLength-this.position)]):new TextDecoder(e).decode(this.mapUint8Array(t))},o.prototype.readCString=function(t){var e=this.byteLength-this.position,i=new Uint8Array(this._buffer,this._byteOffset+this.position),r=e;t!=null&&(r=Math.min(t,e));for(var a=0;a<r&&i[a]!==0;a++);var p=String.fromCharCodeUint8.apply(null,[this.mapUint8Array(a)]);return t!=null?this.position+=r-a:a!=e&&(this.position+=1),p};var d=Math.pow(2,32);o.prototype.readInt64=function(){return this.readInt32()*d+this.readUint32()},o.prototype.readUint64=function(){return this.readUint32()*d+this.readUint32()},o.prototype.readInt64=function(){return this.readUint32()*d+this.readUint32()},o.prototype.readUint24=function(){return(this.readUint8()<<16)+(this.readUint8()<<8)+this.readUint8()},l.DataStream=o,o.prototype.save=function(t){var e=new Blob([this.buffer]);if(window.URL&&URL.createObjectURL){var i=window.URL.createObjectURL(e),r=document.createElement("a");document.body.appendChild(r),r.setAttribute("href",i),r.setAttribute("download",t),r.setAttribute("target","_self"),r.click(),window.URL.revokeObjectURL(i)}else throw"DataStream.save: Can't create object URL."},o.prototype._dynamicSize=!0,Object.defineProperty(o.prototype,"dynamicSize",{get:function(){return this._dynamicSize},set:function(t){t||this._trimAlloc(),this._dynamicSize=t}}),o.prototype.shift=function(t){var e=new ArrayBuffer(this._byteLength-t),i=new Uint8Array(e),r=new Uint8Array(this._buffer,t,i.length);i.set(r),this.buffer=e,this.position-=t},o.prototype.writeInt32Array=function(t,e){if(this._realloc(t.length*4),t instanceof Int32Array&&this.byteOffset+this.position%t.BYTES_PER_ELEMENT===0)o.memcpy(this._buffer,this.byteOffset+this.position,t.buffer,0,t.byteLength),this.mapInt32Array(t.length,e);else for(var i=0;i<t.length;i++)this.writeInt32(t[i],e)},o.prototype.writeInt16Array=function(t,e){if(this._realloc(t.length*2),t instanceof Int16Array&&this.byteOffset+this.position%t.BYTES_PER_ELEMENT===0)o.memcpy(this._buffer,this.byteOffset+this.position,t.buffer,0,t.byteLength),this.mapInt16Array(t.length,e);else for(var i=0;i<t.length;i++)this.writeInt16(t[i],e)},o.prototype.writeInt8Array=function(t){if(this._realloc(t.length*1),t instanceof Int8Array&&this.byteOffset+this.position%t.BYTES_PER_ELEMENT===0)o.memcpy(this._buffer,this.byteOffset+this.position,t.buffer,0,t.byteLength),this.mapInt8Array(t.length);else for(var e=0;e<t.length;e++)this.writeInt8(t[e])},o.prototype.writeUint32Array=function(t,e){if(this._realloc(t.length*4),t instanceof Uint32Array&&this.byteOffset+this.position%t.BYTES_PER_ELEMENT===0)o.memcpy(this._buffer,this.byteOffset+this.position,t.buffer,0,t.byteLength),this.mapUint32Array(t.length,e);else for(var i=0;i<t.length;i++)this.writeUint32(t[i],e)},o.prototype.writeUint16Array=function(t,e){if(this._realloc(t.length*2),t instanceof Uint16Array&&this.byteOffset+this.position%t.BYTES_PER_ELEMENT===0)o.memcpy(this._buffer,this.byteOffset+this.position,t.buffer,0,t.byteLength),this.mapUint16Array(t.length,e);else for(var i=0;i<t.length;i++)this.writeUint16(t[i],e)},o.prototype.writeUint8Array=function(t){if(this._realloc(t.length*1),t instanceof Uint8Array&&this.byteOffset+this.position%t.BYTES_PER_ELEMENT===0)o.memcpy(this._buffer,this.byteOffset+this.position,t.buffer,0,t.byteLength),this.mapUint8Array(t.length);else for(var e=0;e<t.length;e++)this.writeUint8(t[e])},o.prototype.writeFloat64Array=function(t,e){if(this._realloc(t.length*8),t instanceof Float64Array&&this.byteOffset+this.position%t.BYTES_PER_ELEMENT===0)o.memcpy(this._buffer,this.byteOffset+this.position,t.buffer,0,t.byteLength),this.mapFloat64Array(t.length,e);else for(var i=0;i<t.length;i++)this.writeFloat64(t[i],e)},o.prototype.writeFloat32Array=function(t,e){if(this._realloc(t.length*4),t instanceof Float32Array&&this.byteOffset+this.position%t.BYTES_PER_ELEMENT===0)o.memcpy(this._buffer,this.byteOffset+this.position,t.buffer,0,t.byteLength),this.mapFloat32Array(t.length,e);else for(var i=0;i<t.length;i++)this.writeFloat32(t[i],e)},o.prototype.writeInt32=function(t,e){this._realloc(4),this._dataView.setInt32(this.position,t,e??this.endianness),this.position+=4},o.prototype.writeInt16=function(t,e){this._realloc(2),this._dataView.setInt16(this.position,t,e??this.endianness),this.position+=2},o.prototype.writeInt8=function(t){this._realloc(1),this._dataView.setInt8(this.position,t),this.position+=1},o.prototype.writeUint32=function(t,e){this._realloc(4),this._dataView.setUint32(this.position,t,e??this.endianness),this.position+=4},o.prototype.writeUint16=function(t,e){this._realloc(2),this._dataView.setUint16(this.position,t,e??this.endianness),this.position+=2},o.prototype.writeUint8=function(t){this._realloc(1),this._dataView.setUint8(this.position,t),this.position+=1},o.prototype.writeFloat32=function(t,e){this._realloc(4),this._dataView.setFloat32(this.position,t,e??this.endianness),this.position+=4},o.prototype.writeFloat64=function(t,e){this._realloc(8),this._dataView.setFloat64(this.position,t,e??this.endianness),this.position+=8},o.prototype.writeUCS2String=function(t,e,i){i==null&&(i=t.length);for(var r=0;r<t.length&&r<i;r++)this.writeUint16(t.charCodeAt(r),e);for(;r<i;r++)this.writeUint16(0)},o.prototype.writeString=function(t,e,i){var r=0;if(e==null||e=="ASCII")if(i!=null){var a=Math.min(t.length,i);for(r=0;r<a;r++)this.writeUint8(t.charCodeAt(r));for(;r<i;r++)this.writeUint8(0)}else for(r=0;r<t.length;r++)this.writeUint8(t.charCodeAt(r));else this.writeUint8Array(new TextEncoder(e).encode(t.substring(0,i)))},o.prototype.writeCString=function(t,e){var i=0;if(e!=null){var r=Math.min(t.length,e);for(i=0;i<r;i++)this.writeUint8(t.charCodeAt(i));for(;i<e;i++)this.writeUint8(0)}else{for(i=0;i<t.length;i++)this.writeUint8(t.charCodeAt(i));this.writeUint8(0)}},o.prototype.writeStruct=function(t,e){for(var i=0;i<t.length;i+=2){var r=t[i+1];this.writeType(r,e[t[i]],e)}},o.prototype.writeType=function(t,e,i){var r;if(typeof t=="function")return t(this,e);if(typeof t=="object"&&!(t instanceof Array))return t.set(this,e,i);var a=null,p="ASCII",f=this.position;switch(typeof t=="string"&&/:/.test(t)&&(r=t.split(":"),t=r[0],a=parseInt(r[1])),typeof t=="string"&&/,/.test(t)&&(r=t.split(","),t=r[0],p=parseInt(r[1])),t){case"uint8":this.writeUint8(e);break;case"int8":this.writeInt8(e);break;case"uint16":this.writeUint16(e,this.endianness);break;case"int16":this.writeInt16(e,this.endianness);break;case"uint32":this.writeUint32(e,this.endianness);break;case"int32":this.writeInt32(e,this.endianness);break;case"float32":this.writeFloat32(e,this.endianness);break;case"float64":this.writeFloat64(e,this.endianness);break;case"uint16be":this.writeUint16(e,o.BIG_ENDIAN);break;case"int16be":this.writeInt16(e,o.BIG_ENDIAN);break;case"uint32be":this.writeUint32(e,o.BIG_ENDIAN);break;case"int32be":this.writeInt32(e,o.BIG_ENDIAN);break;case"float32be":this.writeFloat32(e,o.BIG_ENDIAN);break;case"float64be":this.writeFloat64(e,o.BIG_ENDIAN);break;case"uint16le":this.writeUint16(e,o.LITTLE_ENDIAN);break;case"int16le":this.writeInt16(e,o.LITTLE_ENDIAN);break;case"uint32le":this.writeUint32(e,o.LITTLE_ENDIAN);break;case"int32le":this.writeInt32(e,o.LITTLE_ENDIAN);break;case"float32le":this.writeFloat32(e,o.LITTLE_ENDIAN);break;case"float64le":this.writeFloat64(e,o.LITTLE_ENDIAN);break;case"cstring":this.writeCString(e,a);break;case"string":this.writeString(e,p,a);break;case"u16string":this.writeUCS2String(e,this.endianness,a);break;case"u16stringle":this.writeUCS2String(e,o.LITTLE_ENDIAN,a);break;case"u16stringbe":this.writeUCS2String(e,o.BIG_ENDIAN,a);break;default:if(t.length==3){for(var m=t[1],_=0;_<e.length;_++)this.writeType(m,e[_]);break}else{this.writeStruct(t,e);break}}a!=null&&(this.position=f,this._realloc(a),this.position=f+a)},o.prototype.writeUint64=function(t){var e=Math.floor(t/d);this.writeUint32(e),this.writeUint32(t&4294967295)},o.prototype.writeUint24=function(t){this.writeUint8((t&16711680)>>16),this.writeUint8((t&65280)>>8),this.writeUint8(t&255)},o.prototype.adjustUint32=function(t,e){var i=this.position;this.seek(t),this.writeUint32(e),this.seek(i)},o.prototype.mapInt32Array=function(t,e){this._realloc(t*4);var i=new Int32Array(this._buffer,this.byteOffset+this.position,t);return o.arrayToNative(i,e??this.endianness),this.position+=t*4,i},o.prototype.mapInt16Array=function(t,e){this._realloc(t*2);var i=new Int16Array(this._buffer,this.byteOffset+this.position,t);return o.arrayToNative(i,e??this.endianness),this.position+=t*2,i},o.prototype.mapInt8Array=function(t){this._realloc(t*1);var e=new Int8Array(this._buffer,this.byteOffset+this.position,t);return this.position+=t*1,e},o.prototype.mapUint32Array=function(t,e){this._realloc(t*4);var i=new Uint32Array(this._buffer,this.byteOffset+this.position,t);return o.arrayToNative(i,e??this.endianness),this.position+=t*4,i},o.prototype.mapUint16Array=function(t,e){this._realloc(t*2);var i=new Uint16Array(this._buffer,this.byteOffset+this.position,t);return o.arrayToNative(i,e??this.endianness),this.position+=t*2,i},o.prototype.mapFloat64Array=function(t,e){this._realloc(t*8);var i=new Float64Array(this._buffer,this.byteOffset+this.position,t);return o.arrayToNative(i,e??this.endianness),this.position+=t*8,i},o.prototype.mapFloat32Array=function(t,e){this._realloc(t*4);var i=new Float32Array(this._buffer,this.byteOffset+this.position,t);return o.arrayToNative(i,e??this.endianness),this.position+=t*4,i};var c=function(t){this.buffers=[],this.bufferIndex=-1,t&&(this.insertBuffer(t),this.bufferIndex=0)};c.prototype=new o(new ArrayBuffer,0,o.BIG_ENDIAN),c.prototype.initialized=function(){var t;return this.bufferIndex>-1?!0:this.buffers.length>0?(t=this.buffers[0],t.fileStart===0?(this.buffer=t,this.bufferIndex=0,n.debug("MultiBufferStream","Stream ready for parsing"),!0):(n.warn("MultiBufferStream","The first buffer should have a fileStart of 0"),this.logBufferLevel(),!1)):(n.warn("MultiBufferStream","No buffer to start parsing from"),this.logBufferLevel(),!1)},ArrayBuffer.concat=function(t,e){n.debug("ArrayBuffer","Trying to create a new buffer of size: "+(t.byteLength+e.byteLength));var i=new Uint8Array(t.byteLength+e.byteLength);return i.set(new Uint8Array(t),0),i.set(new Uint8Array(e),t.byteLength),i.buffer},c.prototype.reduceBuffer=function(t,e,i){var r;return r=new Uint8Array(i),r.set(new Uint8Array(t,e,i)),r.buffer.fileStart=t.fileStart+e,r.buffer.usedBytes=0,r.buffer},c.prototype.insertBuffer=function(t){for(var e=!0,i=0;i<this.buffers.length;i++){var r=this.buffers[i];if(t.fileStart<=r.fileStart){if(t.fileStart===r.fileStart)if(t.byteLength>r.byteLength){this.buffers.splice(i,1),i--;continue}else n.warn("MultiBufferStream","Buffer (fileStart: "+t.fileStart+" - Length: "+t.byteLength+") already appended, ignoring");else t.fileStart+t.byteLength<=r.fileStart||(t=this.reduceBuffer(t,0,r.fileStart-t.fileStart)),n.debug("MultiBufferStream","Appending new buffer (fileStart: "+t.fileStart+" - Length: "+t.byteLength+")"),this.buffers.splice(i,0,t),i===0&&(this.buffer=t);e=!1;break}else if(t.fileStart<r.fileStart+r.byteLength){var a=r.fileStart+r.byteLength-t.fileStart,p=t.byteLength-a;if(p>0)t=this.reduceBuffer(t,a,p);else{e=!1;break}}}e&&(n.debug("MultiBufferStream","Appending new buffer (fileStart: "+t.fileStart+" - Length: "+t.byteLength+")"),this.buffers.push(t),i===0&&(this.buffer=t))},c.prototype.logBufferLevel=function(t){var e,i,r,a,p=[],f,m="";for(r=0,a=0,e=0;e<this.buffers.length;e++)i=this.buffers[e],e===0?(f={},p.push(f),f.start=i.fileStart,f.end=i.fileStart+i.byteLength,m+="["+f.start+"-"):f.end===i.fileStart?f.end=i.fileStart+i.byteLength:(f={},f.start=i.fileStart,m+=p[p.length-1].end-1+"], ["+f.start+"-",f.end=i.fileStart+i.byteLength,p.push(f)),r+=i.usedBytes,a+=i.byteLength;p.length>0&&(m+=f.end-1+"]");var _=t?n.info:n.debug;this.buffers.length===0?_("MultiBufferStream","No more buffer in memory"):_("MultiBufferStream",""+this.buffers.length+" stored buffer(s) ("+r+"/"+a+" bytes), continuous ranges: "+m)},c.prototype.cleanBuffers=function(){var t,e;for(t=0;t<this.buffers.length;t++)e=this.buffers[t],e.usedBytes===e.byteLength&&(n.debug("MultiBufferStream","Removing buffer #"+t),this.buffers.splice(t,1),t--)},c.prototype.mergeNextBuffer=function(){var t;if(this.bufferIndex+1<this.buffers.length)if(t=this.buffers[this.bufferIndex+1],t.fileStart===this.buffer.fileStart+this.buffer.byteLength){var e=this.buffer.byteLength,i=this.buffer.usedBytes,r=this.buffer.fileStart;return this.buffers[this.bufferIndex]=ArrayBuffer.concat(this.buffer,t),this.buffer=this.buffers[this.bufferIndex],this.buffers.splice(this.bufferIndex+1,1),this.buffer.usedBytes=i,this.buffer.fileStart=r,n.debug("ISOFile","Concatenating buffer for box parsing (length: "+e+"->"+this.buffer.byteLength+")"),!0}else return!1;else return!1},c.prototype.findPosition=function(t,e,i){var r,a=null,p=-1;for(t===!0?r=0:r=this.bufferIndex;r<this.buffers.length&&(a=this.buffers[r],a.fileStart<=e);)p=r,i&&(a.fileStart+a.byteLength<=e?a.usedBytes=a.byteLength:a.usedBytes=e-a.fileStart,this.logBufferLevel()),r++;return p!==-1?(a=this.buffers[p],a.fileStart+a.byteLength>=e?(n.debug("MultiBufferStream","Found position in existing buffer #"+p),p):-1):-1},c.prototype.findEndContiguousBuf=function(t){var e,i,r,a=t!==void 0?t:this.bufferIndex;if(i=this.buffers[a],this.buffers.length>a+1)for(e=a+1;e<this.buffers.length&&(r=this.buffers[e],r.fileStart===i.fileStart+i.byteLength);e++)i=r;return i.fileStart+i.byteLength},c.prototype.getEndFilePositionAfter=function(t){var e=this.findPosition(!0,t,!1);return e!==-1?this.findEndContiguousBuf(e):t},c.prototype.addUsedBytes=function(t){this.buffer.usedBytes+=t,this.logBufferLevel()},c.prototype.setAllUsedBytes=function(){this.buffer.usedBytes=this.buffer.byteLength,this.logBufferLevel()},c.prototype.seek=function(t,e,i){var r;return r=this.findPosition(e,t,i),r!==-1?(this.buffer=this.buffers[r],this.bufferIndex=r,this.position=t-this.buffer.fileStart,n.debug("MultiBufferStream","Repositioning parser at buffer position: "+this.position),!0):(n.debug("MultiBufferStream","Position "+t+" not found in buffered data"),!1)},c.prototype.getPosition=function(){if(this.bufferIndex===-1||this.buffers[this.bufferIndex]===null)throw"Error accessing position in the MultiBufferStream";return this.buffers[this.bufferIndex].fileStart+this.position},c.prototype.getLength=function(){return this.byteLength},c.prototype.getEndPosition=function(){if(this.bufferIndex===-1||this.buffers[this.bufferIndex]===null)throw"Error accessing position in the MultiBufferStream";return this.buffers[this.bufferIndex].fileStart+this.byteLength},l.MultiBufferStream=c;var u=function(){var t=3,e=4,i=5,r=6,a=[];a[t]="ES_Descriptor",a[e]="DecoderConfigDescriptor",a[i]="DecoderSpecificInfo",a[r]="SLConfigDescriptor",this.getDescriptorName=function(m){return a[m]};var p=this,f={};return this.parseOneDescriptor=function(m){var _=0,v,S,E;for(v=m.readUint8(),E=m.readUint8();E&128;)_=(E&127)<<7,E=m.readUint8();return _+=E&127,n.debug("MPEG4DescriptorParser","Found "+(a[v]||"Descriptor "+v)+", size "+_+" at position "+m.getPosition()),a[v]?S=new f[a[v]](_):S=new f.Descriptor(_),S.parse(m),S},f.Descriptor=function(m,_){this.tag=m,this.size=_,this.descs=[]},f.Descriptor.prototype.parse=function(m){this.data=m.readUint8Array(this.size)},f.Descriptor.prototype.findDescriptor=function(m){for(var _=0;_<this.descs.length;_++)if(this.descs[_].tag==m)return this.descs[_];return null},f.Descriptor.prototype.parseRemainingDescriptors=function(m){for(var _=m.position;m.position<_+this.size;){var v=p.parseOneDescriptor(m);this.descs.push(v)}},f.ES_Descriptor=function(m){f.Descriptor.call(this,t,m)},f.ES_Descriptor.prototype=new f.Descriptor,f.ES_Descriptor.prototype.parse=function(m){if(this.ES_ID=m.readUint16(),this.flags=m.readUint8(),this.size-=3,this.flags&128?(this.dependsOn_ES_ID=m.readUint16(),this.size-=2):this.dependsOn_ES_ID=0,this.flags&64){var _=m.readUint8();this.URL=m.readString(_),this.size-=_+1}else this.URL="";this.flags&32?(this.OCR_ES_ID=m.readUint16(),this.size-=2):this.OCR_ES_ID=0,this.parseRemainingDescriptors(m)},f.ES_Descriptor.prototype.getOTI=function(m){var _=this.findDescriptor(e);return _?_.oti:0},f.ES_Descriptor.prototype.getAudioConfig=function(m){var _=this.findDescriptor(e);if(!_)return null;var v=_.findDescriptor(i);if(v&&v.data){var S=(v.data[0]&248)>>3;return S===31&&v.data.length>=2&&(S=32+((v.data[0]&7)<<3)+((v.data[1]&224)>>5)),S}else return null},f.DecoderConfigDescriptor=function(m){f.Descriptor.call(this,e,m)},f.DecoderConfigDescriptor.prototype=new f.Descriptor,f.DecoderConfigDescriptor.prototype.parse=function(m){this.oti=m.readUint8(),this.streamType=m.readUint8(),this.bufferSize=m.readUint24(),this.maxBitrate=m.readUint32(),this.avgBitrate=m.readUint32(),this.size-=13,this.parseRemainingDescriptors(m)},f.DecoderSpecificInfo=function(m){f.Descriptor.call(this,i,m)},f.DecoderSpecificInfo.prototype=new f.Descriptor,f.SLConfigDescriptor=function(m){f.Descriptor.call(this,r,m)},f.SLConfigDescriptor.prototype=new f.Descriptor,this};l.MPEG4DescriptorParser=u;var s={ERR_INVALID_DATA:-1,ERR_NOT_ENOUGH_DATA:0,OK:1,BASIC_BOXES:["mdat","idat","free","skip","meco","strk"],FULL_BOXES:["hmhd","nmhd","iods","xml ","bxml","ipro","mere"],CONTAINER_BOXES:[["moov",["trak","pssh"]],["trak"],["edts"],["mdia"],["minf"],["dinf"],["stbl",["sgpd","sbgp"]],["mvex",["trex"]],["moof",["traf"]],["traf",["trun","sgpd","sbgp"]],["vttc"],["tref"],["iref"],["mfra",["tfra"]],["meco"],["hnti"],["hinf"],["strk"],["strd"],["sinf"],["rinf"],["schi"],["trgr"],["udta",["kind"]],["iprp",["ipma"]],["ipco"]],boxCodes:[],fullBoxCodes:[],containerBoxCodes:[],sampleEntryCodes:{},sampleGroupEntryCodes:[],trackGroupTypes:[],UUIDBoxes:{},UUIDs:[],initialize:function(){s.FullBox.prototype=new s.Box,s.ContainerBox.prototype=new s.Box,s.SampleEntry.prototype=new s.Box,s.TrackGroupTypeBox.prototype=new s.FullBox,s.BASIC_BOXES.forEach(function(t){s.createBoxCtor(t)}),s.FULL_BOXES.forEach(function(t){s.createFullBoxCtor(t)}),s.CONTAINER_BOXES.forEach(function(t){s.createContainerBoxCtor(t[0],null,t[1])})},Box:function(t,e,i){this.type=t,this.size=e,this.uuid=i},FullBox:function(t,e,i){s.Box.call(this,t,e,i),this.flags=0,this.version=0},ContainerBox:function(t,e,i){s.Box.call(this,t,e,i),this.boxes=[]},SampleEntry:function(t,e,i,r){s.ContainerBox.call(this,t,e),this.hdr_size=i,this.start=r},SampleGroupEntry:function(t){this.grouping_type=t},TrackGroupTypeBox:function(t,e){s.FullBox.call(this,t,e)},createBoxCtor:function(t,e){s.boxCodes.push(t),s[t+"Box"]=function(i){s.Box.call(this,t,i)},s[t+"Box"].prototype=new s.Box,e&&(s[t+"Box"].prototype.parse=e)},createFullBoxCtor:function(t,e){s[t+"Box"]=function(i){s.FullBox.call(this,t,i)},s[t+"Box"].prototype=new s.FullBox,s[t+"Box"].prototype.parse=function(i){this.parseFullHeader(i),e&&e.call(this,i)}},addSubBoxArrays:function(t){if(t){this.subBoxNames=t;for(var e=t.length,i=0;i<e;i++)this[t[i]+"s"]=[]}},createContainerBoxCtor:function(t,e,i){s[t+"Box"]=function(r){s.ContainerBox.call(this,t,r),s.addSubBoxArrays.call(this,i)},s[t+"Box"].prototype=new s.ContainerBox,e&&(s[t+"Box"].prototype.parse=e)},createMediaSampleEntryCtor:function(t,e,i){s.sampleEntryCodes[t]=[],s[t+"SampleEntry"]=function(r,a){s.SampleEntry.call(this,r,a),s.addSubBoxArrays.call(this,i)},s[t+"SampleEntry"].prototype=new s.SampleEntry,e&&(s[t+"SampleEntry"].prototype.parse=e)},createSampleEntryCtor:function(t,e,i,r){s.sampleEntryCodes[t].push(e),s[e+"SampleEntry"]=function(a){s[t+"SampleEntry"].call(this,e,a),s.addSubBoxArrays.call(this,r)},s[e+"SampleEntry"].prototype=new s[t+"SampleEntry"],i&&(s[e+"SampleEntry"].prototype.parse=i)},createEncryptedSampleEntryCtor:function(t,e,i){s.createSampleEntryCtor.call(this,t,e,i,["sinf"])},createSampleGroupCtor:function(t,e){s[t+"SampleGroupEntry"]=function(i){s.SampleGroupEntry.call(this,t,i)},s[t+"SampleGroupEntry"].prototype=new s.SampleGroupEntry,e&&(s[t+"SampleGroupEntry"].prototype.parse=e)},createTrackGroupCtor:function(t,e){s[t+"TrackGroupTypeBox"]=function(i){s.TrackGroupTypeBox.call(this,t,i)},s[t+"TrackGroupTypeBox"].prototype=new s.TrackGroupTypeBox,e&&(s[t+"TrackGroupTypeBox"].prototype.parse=e)},createUUIDBox:function(t,e,i,r){s.UUIDs.push(t),s.UUIDBoxes[t]=function(a){e?s.FullBox.call(this,"uuid",a,t):i?s.ContainerBox.call(this,"uuid",a,t):s.Box.call(this,"uuid",a,t)},s.UUIDBoxes[t].prototype=e?new s.FullBox:i?new s.ContainerBox:new s.Box,r&&(e?s.UUIDBoxes[t].prototype.parse=function(a){this.parseFullHeader(a),r&&r.call(this,a)}:s.UUIDBoxes[t].prototype.parse=r)}};s.initialize(),s.TKHD_FLAG_ENABLED=1,s.TKHD_FLAG_IN_MOVIE=2,s.TKHD_FLAG_IN_PREVIEW=4,s.TFHD_FLAG_BASE_DATA_OFFSET=1,s.TFHD_FLAG_SAMPLE_DESC=2,s.TFHD_FLAG_SAMPLE_DUR=8,s.TFHD_FLAG_SAMPLE_SIZE=16,s.TFHD_FLAG_SAMPLE_FLAGS=32,s.TFHD_FLAG_DUR_EMPTY=65536,s.TFHD_FLAG_DEFAULT_BASE_IS_MOOF=131072,s.TRUN_FLAGS_DATA_OFFSET=1,s.TRUN_FLAGS_FIRST_FLAG=4,s.TRUN_FLAGS_DURATION=256,s.TRUN_FLAGS_SIZE=512,s.TRUN_FLAGS_FLAGS=1024,s.TRUN_FLAGS_CTS_OFFSET=2048,s.Box.prototype.add=function(t){return this.addBox(new s[t+"Box"])},s.Box.prototype.addBox=function(t){return this.boxes.push(t),this[t.type+"s"]?this[t.type+"s"].push(t):this[t.type]=t,t},s.Box.prototype.set=function(t,e){return this[t]=e,this},s.Box.prototype.addEntry=function(t,e){var i=e||"entries";return this[i]||(this[i]=[]),this[i].push(t),this},l.BoxParser=s,s.parseUUID=function(t){return s.parseHex16(t)},s.parseHex16=function(t){for(var e="",i=0;i<16;i++){var r=t.readUint8().toString(16);e+=r.length===1?"0"+r:r}return e},s.parseOneBox=function(t,e,i){var r,a=t.getPosition(),p=0,f,m;if(t.getEndPosition()-a<8)return n.debug("BoxParser","Not enough data in stream to parse the type and size of the box"),{code:s.ERR_NOT_ENOUGH_DATA};if(i&&i<8)return n.debug("BoxParser","Not enough bytes left in the parent box to parse a new box"),{code:s.ERR_NOT_ENOUGH_DATA};var _=t.readUint32(),v=t.readString(4),S=v;if(n.debug("BoxParser","Found box of type '"+v+"' and size "+_+" at position "+a),p=8,v=="uuid"){if(t.getEndPosition()-t.getPosition()<16||i-p<16)return t.seek(a),n.debug("BoxParser","Not enough bytes left in the parent box to parse a UUID box"),{code:s.ERR_NOT_ENOUGH_DATA};m=s.parseUUID(t),p+=16,S=m}if(_==1){if(t.getEndPosition()-t.getPosition()<8||i&&i-p<8)return t.seek(a),n.warn("BoxParser",'Not enough data in stream to parse the extended size of the "'+v+'" box'),{code:s.ERR_NOT_ENOUGH_DATA};_=t.readUint64(),p+=8}else if(_===0){if(i)_=i;else if(v!=="mdat")return n.error("BoxParser","Unlimited box size not supported for type: '"+v+"'"),r=new s.Box(v,_),{code:s.OK,box:r,size:r.size}}return _!==0&&_<p?(n.error("BoxParser","Box of type "+v+" has an invalid size "+_+" (too small to be a box)"),{code:s.ERR_NOT_ENOUGH_DATA,type:v,size:_,hdr_size:p,start:a}):_!==0&&i&&_>i?(n.error("BoxParser","Box of type '"+v+"' has a size "+_+" greater than its container size "+i),{code:s.ERR_NOT_ENOUGH_DATA,type:v,size:_,hdr_size:p,start:a}):_!==0&&a+_>t.getEndPosition()?(t.seek(a),n.info("BoxParser","Not enough data in stream to parse the entire '"+v+"' box"),{code:s.ERR_NOT_ENOUGH_DATA,type:v,size:_,hdr_size:p,start:a}):e?{code:s.OK,type:v,size:_,hdr_size:p,start:a}:(s[v+"Box"]?r=new s[v+"Box"](_):v!=="uuid"?(n.warn("BoxParser","Unknown box type: '"+v+"'"),r=new s.Box(v,_),r.has_unparsed_data=!0):s.UUIDBoxes[m]?r=new s.UUIDBoxes[m](_):(n.warn("BoxParser","Unknown uuid type: '"+m+"'"),r=new s.Box(v,_),r.uuid=m,r.has_unparsed_data=!0),r.hdr_size=p,r.start=a,r.write===s.Box.prototype.write&&r.type!=="mdat"&&(n.info("BoxParser","'"+S+"' box writing not yet implemented, keeping unparsed data in memory for later write"),r.parseDataAndRewind(t)),r.parse(t),f=t.getPosition()-(r.start+r.size),f<0?(n.warn("BoxParser","Parsing of box '"+S+"' did not read the entire indicated box data size (missing "+-f+" bytes), seeking forward"),t.seek(r.start+r.size)):f>0&&(n.error("BoxParser","Parsing of box '"+S+"' read "+f+" more bytes than the indicated box data size, seeking backwards"),r.size!==0&&t.seek(r.start+r.size)),{code:s.OK,box:r,size:r.size})},s.Box.prototype.parse=function(t){this.type!="mdat"?this.data=t.readUint8Array(this.size-this.hdr_size):this.size===0?t.seek(t.getEndPosition()):t.seek(this.start+this.size)},s.Box.prototype.parseDataAndRewind=function(t){this.data=t.readUint8Array(this.size-this.hdr_size),t.position-=this.size-this.hdr_size},s.FullBox.prototype.parseDataAndRewind=function(t){this.parseFullHeader(t),this.data=t.readUint8Array(this.size-this.hdr_size),this.hdr_size-=4,t.position-=this.size-this.hdr_size},s.FullBox.prototype.parseFullHeader=function(t){this.version=t.readUint8(),this.flags=t.readUint24(),this.hdr_size+=4},s.FullBox.prototype.parse=function(t){this.parseFullHeader(t),this.data=t.readUint8Array(this.size-this.hdr_size)},s.ContainerBox.prototype.parse=function(t){for(var e,i;t.getPosition()<this.start+this.size;)if(e=s.parseOneBox(t,!1,this.size-(t.getPosition()-this.start)),e.code===s.OK)if(i=e.box,this.boxes.push(i),this.subBoxNames&&this.subBoxNames.indexOf(i.type)!=-1)this[this.subBoxNames[this.subBoxNames.indexOf(i.type)]+"s"].push(i);else{var r=i.type!=="uuid"?i.type:i.uuid;this[r]?n.warn("Box of type "+r+" already stored in field of this type"):this[r]=i}else return},s.Box.prototype.parseLanguage=function(t){this.language=t.readUint16();var e=[];e[0]=this.language>>10&31,e[1]=this.language>>5&31,e[2]=this.language&31,this.languageString=String.fromCharCode(e[0]+96,e[1]+96,e[2]+96)},s.SAMPLE_ENTRY_TYPE_VISUAL="Visual",s.SAMPLE_ENTRY_TYPE_AUDIO="Audio",s.SAMPLE_ENTRY_TYPE_HINT="Hint",s.SAMPLE_ENTRY_TYPE_METADATA="Metadata",s.SAMPLE_ENTRY_TYPE_SUBTITLE="Subtitle",s.SAMPLE_ENTRY_TYPE_SYSTEM="System",s.SAMPLE_ENTRY_TYPE_TEXT="Text",s.SampleEntry.prototype.parseHeader=function(t){t.readUint8Array(6),this.data_reference_index=t.readUint16(),this.hdr_size+=8},s.SampleEntry.prototype.parse=function(t){this.parseHeader(t),this.data=t.readUint8Array(this.size-this.hdr_size)},s.SampleEntry.prototype.parseDataAndRewind=function(t){this.parseHeader(t),this.data=t.readUint8Array(this.size-this.hdr_size),this.hdr_size-=8,t.position-=this.size-this.hdr_size},s.SampleEntry.prototype.parseFooter=function(t){s.ContainerBox.prototype.parse.call(this,t)},s.createMediaSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_HINT),s.createMediaSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_METADATA),s.createMediaSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_SUBTITLE),s.createMediaSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_SYSTEM),s.createMediaSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_TEXT),s.createMediaSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_VISUAL,function(t){var e;this.parseHeader(t),t.readUint16(),t.readUint16(),t.readUint32Array(3),this.width=t.readUint16(),this.height=t.readUint16(),this.horizresolution=t.readUint32(),this.vertresolution=t.readUint32(),t.readUint32(),this.frame_count=t.readUint16(),e=Math.min(31,t.readUint8()),this.compressorname=t.readString(e),e<31&&t.readString(31-e),this.depth=t.readUint16(),t.readUint16(),this.parseFooter(t)}),s.createMediaSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_AUDIO,function(t){this.parseHeader(t),t.readUint32Array(2),this.channel_count=t.readUint16(),this.samplesize=t.readUint16(),t.readUint16(),t.readUint16(),this.samplerate=t.readUint32()/65536,this.parseFooter(t)}),s.createSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_VISUAL,"avc1"),s.createSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_VISUAL,"avc2"),s.createSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_VISUAL,"avc3"),s.createSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_VISUAL,"avc4"),s.createSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_VISUAL,"av01"),s.createSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_VISUAL,"hvc1"),s.createSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_VISUAL,"hev1"),s.createSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_VISUAL,"vvc1"),s.createSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_VISUAL,"vvi1"),s.createSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_VISUAL,"vvs1"),s.createSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_VISUAL,"vvcN"),s.createSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_VISUAL,"vp08"),s.createSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_VISUAL,"vp09"),s.createSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_AUDIO,"mp4a"),s.createSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_AUDIO,"ac-3"),s.createSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_AUDIO,"ec-3"),s.createSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_AUDIO,"Opus"),s.createEncryptedSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_VISUAL,"encv"),s.createEncryptedSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_AUDIO,"enca"),s.createEncryptedSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_SUBTITLE,"encu"),s.createEncryptedSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_SYSTEM,"encs"),s.createEncryptedSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_TEXT,"enct"),s.createEncryptedSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_METADATA,"encm"),s.createBoxCtor("a1lx",function(t){var e=t.readUint8()&1,i=((e&1)+1)*16;this.layer_size=[];for(var r=0;r<3;r++)i==16?this.layer_size[r]=t.readUint16():this.layer_size[r]=t.readUint32()}),s.createBoxCtor("a1op",function(t){this.op_index=t.readUint8()}),s.createFullBoxCtor("auxC",function(t){this.aux_type=t.readCString();var e=this.size-this.hdr_size-(this.aux_type.length+1);this.aux_subtype=t.readUint8Array(e)}),s.createBoxCtor("av1C",function(t){var e=t.readUint8();if(e>>7&!1){n.error("av1C marker problem");return}if(this.version=e&127,this.version!==1){n.error("av1C version "+this.version+" not supported");return}if(e=t.readUint8(),this.seq_profile=e>>5&7,this.seq_level_idx_0=e&31,e=t.readUint8(),this.seq_tier_0=e>>7&1,this.high_bitdepth=e>>6&1,this.twelve_bit=e>>5&1,this.monochrome=e>>4&1,this.chroma_subsampling_x=e>>3&1,this.chroma_subsampling_y=e>>2&1,this.chroma_sample_position=e&3,e=t.readUint8(),this.reserved_1=e>>5&7,this.reserved_1!==0){n.error("av1C reserved_1 parsing problem");return}if(this.initial_presentation_delay_present=e>>4&1,this.initial_presentation_delay_present===1)this.initial_presentation_delay_minus_one=e&15;else if(this.reserved_2=e&15,this.reserved_2!==0){n.error("av1C reserved_2 parsing problem");return}var i=this.size-this.hdr_size-4;this.configOBUs=t.readUint8Array(i)}),s.createBoxCtor("avcC",function(t){var e,i;for(this.configurationVersion=t.readUint8(),this.AVCProfileIndication=t.readUint8(),this.profile_compatibility=t.readUint8(),this.AVCLevelIndication=t.readUint8(),this.lengthSizeMinusOne=t.readUint8()&3,this.nb_SPS_nalus=t.readUint8()&31,i=this.size-this.hdr_size-6,this.SPS=[],e=0;e<this.nb_SPS_nalus;e++)this.SPS[e]={},this.SPS[e].length=t.readUint16(),this.SPS[e].nalu=t.readUint8Array(this.SPS[e].length),i-=2+this.SPS[e].length;for(this.nb_PPS_nalus=t.readUint8(),i--,this.PPS=[],e=0;e<this.nb_PPS_nalus;e++)this.PPS[e]={},this.PPS[e].length=t.readUint16(),this.PPS[e].nalu=t.readUint8Array(this.PPS[e].length),i-=2+this.PPS[e].length;i>0&&(this.ext=t.readUint8Array(i))}),s.createBoxCtor("btrt",function(t){this.bufferSizeDB=t.readUint32(),this.maxBitrate=t.readUint32(),this.avgBitrate=t.readUint32()}),s.createBoxCtor("clap",function(t){this.cleanApertureWidthN=t.readUint32(),this.cleanApertureWidthD=t.readUint32(),this.cleanApertureHeightN=t.readUint32(),this.cleanApertureHeightD=t.readUint32(),this.horizOffN=t.readUint32(),this.horizOffD=t.readUint32(),this.vertOffN=t.readUint32(),this.vertOffD=t.readUint32()}),s.createBoxCtor("clli",function(t){this.max_content_light_level=t.readUint16(),this.max_pic_average_light_level=t.readUint16()}),s.createFullBoxCtor("co64",function(t){var e,i;if(e=t.readUint32(),this.chunk_offsets=[],this.version===0)for(i=0;i<e;i++)this.chunk_offsets.push(t.readUint64())}),s.createFullBoxCtor("CoLL",function(t){this.maxCLL=t.readUint16(),this.maxFALL=t.readUint16()}),s.createBoxCtor("colr",function(t){if(this.colour_type=t.readString(4),this.colour_type==="nclx"){this.colour_primaries=t.readUint16(),this.transfer_characteristics=t.readUint16(),this.matrix_coefficients=t.readUint16();var e=t.readUint8();this.full_range_flag=e>>7}else this.colour_type==="rICC"?this.ICC_profile=t.readUint8Array(this.size-4):this.colour_type==="prof"&&(this.ICC_profile=t.readUint8Array(this.size-4))}),s.createFullBoxCtor("cprt",function(t){this.parseLanguage(t),this.notice=t.readCString()}),s.createFullBoxCtor("cslg",function(t){this.version===0&&(this.compositionToDTSShift=t.readInt32(),this.leastDecodeToDisplayDelta=t.readInt32(),this.greatestDecodeToDisplayDelta=t.readInt32(),this.compositionStartTime=t.readInt32(),this.compositionEndTime=t.readInt32())}),s.createFullBoxCtor("ctts",function(t){var e,i;if(e=t.readUint32(),this.sample_counts=[],this.sample_offsets=[],this.version===0)for(i=0;i<e;i++){this.sample_counts.push(t.readUint32());var r=t.readInt32();r<0&&n.warn("BoxParser","ctts box uses negative values without using version 1"),this.sample_offsets.push(r)}else if(this.version==1)for(i=0;i<e;i++)this.sample_counts.push(t.readUint32()),this.sample_offsets.push(t.readInt32())}),s.createBoxCtor("dac3",function(t){var e=t.readUint8(),i=t.readUint8(),r=t.readUint8();this.fscod=e>>6,this.bsid=e>>1&31,this.bsmod=(e&1)<<2|i>>6&3,this.acmod=i>>3&7,this.lfeon=i>>2&1,this.bit_rate_code=i&3|r>>5&7}),s.createBoxCtor("dec3",function(t){var e=t.readUint16();this.data_rate=e>>3,this.num_ind_sub=e&7,this.ind_subs=[];for(var i=0;i<this.num_ind_sub+1;i++){var r={};this.ind_subs.push(r);var a=t.readUint8(),p=t.readUint8(),f=t.readUint8();r.fscod=a>>6,r.bsid=a>>1&31,r.bsmod=(a&1)<<4|p>>4&15,r.acmod=p>>1&7,r.lfeon=p&1,r.num_dep_sub=f>>1&15,r.num_dep_sub>0&&(r.chan_loc=(f&1)<<8|t.readUint8())}}),s.createFullBoxCtor("dfLa",function(t){var e=127,i=128,r=[],a=["STREAMINFO","PADDING","APPLICATION","SEEKTABLE","VORBIS_COMMENT","CUESHEET","PICTURE","RESERVED"];this.parseFullHeader(t);do{var p=t.readUint8(),f=Math.min(p&e,a.length-1);if(f?t.readUint8Array(t.readUint24()):(t.readUint8Array(13),this.samplerate=t.readUint32()>>12,t.readUint8Array(20)),r.push(a[f]),p&i)break}while(!0);this.numMetadataBlocks=r.length+" ("+r.join(", ")+")"}),s.createBoxCtor("dimm",function(t){this.bytessent=t.readUint64()}),s.createBoxCtor("dmax",function(t){this.time=t.readUint32()}),s.createBoxCtor("dmed",function(t){this.bytessent=t.readUint64()}),s.createBoxCtor("dOps",function(t){if(this.Version=t.readUint8(),this.OutputChannelCount=t.readUint8(),this.PreSkip=t.readUint16(),this.InputSampleRate=t.readUint32(),this.OutputGain=t.readInt16(),this.ChannelMappingFamily=t.readUint8(),this.ChannelMappingFamily!==0){this.StreamCount=t.readUint8(),this.CoupledCount=t.readUint8(),this.ChannelMapping=[];for(var e=0;e<this.OutputChannelCount;e++)this.ChannelMapping[e]=t.readUint8()}}),s.createFullBoxCtor("dref",function(t){var e,i;this.entries=[];for(var r=t.readUint32(),a=0;a<r;a++)if(e=s.parseOneBox(t,!1,this.size-(t.getPosition()-this.start)),e.code===s.OK)i=e.box,this.entries.push(i);else return}),s.createBoxCtor("drep",function(t){this.bytessent=t.readUint64()}),s.createFullBoxCtor("elng",function(t){this.extended_language=t.readString(this.size-this.hdr_size)}),s.createFullBoxCtor("elst",function(t){this.entries=[];for(var e=t.readUint32(),i=0;i<e;i++){var r={};this.entries.push(r),this.version===1?(r.segment_duration=t.readUint64(),r.media_time=t.readInt64()):(r.segment_duration=t.readUint32(),r.media_time=t.readInt32()),r.media_rate_integer=t.readInt16(),r.media_rate_fraction=t.readInt16()}}),s.createFullBoxCtor("emsg",function(t){this.version==1?(this.timescale=t.readUint32(),this.presentation_time=t.readUint64(),this.event_duration=t.readUint32(),this.id=t.readUint32(),this.scheme_id_uri=t.readCString(),this.value=t.readCString()):(this.scheme_id_uri=t.readCString(),this.value=t.readCString(),this.timescale=t.readUint32(),this.presentation_time_delta=t.readUint32(),this.event_duration=t.readUint32(),this.id=t.readUint32());var e=this.size-this.hdr_size-(16+(this.scheme_id_uri.length+1)+(this.value.length+1));this.version==1&&(e-=4),this.message_data=t.readUint8Array(e)}),s.createFullBoxCtor("esds",function(t){var e=t.readUint8Array(this.size-this.hdr_size);if(typeof u<"u"){var i=new u;this.esd=i.parseOneDescriptor(new o(e.buffer,0,o.BIG_ENDIAN))}}),s.createBoxCtor("fiel",function(t){this.fieldCount=t.readUint8(),this.fieldOrdering=t.readUint8()}),s.createBoxCtor("frma",function(t){this.data_format=t.readString(4)}),s.createBoxCtor("ftyp",function(t){var e=this.size-this.hdr_size;this.major_brand=t.readString(4),this.minor_version=t.readUint32(),e-=8,this.compatible_brands=[];for(var i=0;e>=4;)this.compatible_brands[i]=t.readString(4),e-=4,i++}),s.createFullBoxCtor("hdlr",function(t){this.version===0&&(t.readUint32(),this.handler=t.readString(4),t.readUint32Array(3),this.name=t.readString(this.size-this.hdr_size-20),this.name[this.name.length-1]==="\0"&&(this.name=this.name.slice(0,-1)))}),s.createBoxCtor("hvcC",function(t){var e,i,r,a;this.configurationVersion=t.readUint8(),a=t.readUint8(),this.general_profile_space=a>>6,this.general_tier_flag=(a&32)>>5,this.general_profile_idc=a&31,this.general_profile_compatibility=t.readUint32(),this.general_constraint_indicator=t.readUint8Array(6),this.general_level_idc=t.readUint8(),this.min_spatial_segmentation_idc=t.readUint16()&4095,this.parallelismType=t.readUint8()&3,this.chroma_format_idc=t.readUint8()&3,this.bit_depth_luma_minus8=t.readUint8()&7,this.bit_depth_chroma_minus8=t.readUint8()&7,this.avgFrameRate=t.readUint16(),a=t.readUint8(),this.constantFrameRate=a>>6,this.numTemporalLayers=(a&13)>>3,this.temporalIdNested=(a&4)>>2,this.lengthSizeMinusOne=a&3,this.nalu_arrays=[];var p=t.readUint8();for(e=0;e<p;e++){var f=[];this.nalu_arrays.push(f),a=t.readUint8(),f.completeness=(a&128)>>7,f.nalu_type=a&63;var m=t.readUint16();for(i=0;i<m;i++){var _={};f.push(_),r=t.readUint16(),_.data=t.readUint8Array(r)}}}),s.createFullBoxCtor("iinf",function(t){var e;this.version===0?this.entry_count=t.readUint16():this.entry_count=t.readUint32(),this.item_infos=[];for(var i=0;i<this.entry_count;i++)if(e=s.parseOneBox(t,!1,this.size-(t.getPosition()-this.start)),e.code===s.OK)e.box.type!=="infe"&&n.error("BoxParser","Expected 'infe' box, got "+e.box.type),this.item_infos[i]=e.box;else return}),s.createFullBoxCtor("iloc",function(t){var e;e=t.readUint8(),this.offset_size=e>>4&15,this.length_size=e&15,e=t.readUint8(),this.base_offset_size=e>>4&15,this.version===1||this.version===2?this.index_size=e&15:this.index_size=0,this.items=[];var i=0;if(this.version<2)i=t.readUint16();else if(this.version===2)i=t.readUint32();else throw"version of iloc box not supported";for(var r=0;r<i;r++){var a={};if(this.items.push(a),this.version<2)a.item_ID=t.readUint16();else if(this.version===2)a.item_ID=t.readUint16();else throw"version of iloc box not supported";switch(this.version===1||this.version===2?a.construction_method=t.readUint16()&15:a.construction_method=0,a.data_reference_index=t.readUint16(),this.base_offset_size){case 0:a.base_offset=0;break;case 4:a.base_offset=t.readUint32();break;case 8:a.base_offset=t.readUint64();break;default:throw"Error reading base offset size"}var p=t.readUint16();a.extents=[];for(var f=0;f<p;f++){var m={};if(a.extents.push(m),this.version===1||this.version===2)switch(this.index_size){case 0:m.extent_index=0;break;case 4:m.extent_index=t.readUint32();break;case 8:m.extent_index=t.readUint64();break;default:throw"Error reading extent index"}switch(this.offset_size){case 0:m.extent_offset=0;break;case 4:m.extent_offset=t.readUint32();break;case 8:m.extent_offset=t.readUint64();break;default:throw"Error reading extent index"}switch(this.length_size){case 0:m.extent_length=0;break;case 4:m.extent_length=t.readUint32();break;case 8:m.extent_length=t.readUint64();break;default:throw"Error reading extent index"}}}}),s.createBoxCtor("imir",function(t){var e=t.readUint8();this.reserved=e>>7,this.axis=e&1}),s.createFullBoxCtor("infe",function(t){if((this.version===0||this.version===1)&&(this.item_ID=t.readUint16(),this.item_protection_index=t.readUint16(),this.item_name=t.readCString(),this.content_type=t.readCString(),this.content_encoding=t.readCString()),this.version===1){this.extension_type=t.readString(4),n.warn("BoxParser","Cannot parse extension type"),t.seek(this.start+this.size);return}this.version>=2&&(this.version===2?this.item_ID=t.readUint16():this.version===3&&(this.item_ID=t.readUint32()),this.item_protection_index=t.readUint16(),this.item_type=t.readString(4),this.item_name=t.readCString(),this.item_type==="mime"?(this.content_type=t.readCString(),this.content_encoding=t.readCString()):this.item_type==="uri "&&(this.item_uri_type=t.readCString()))}),s.createFullBoxCtor("ipma",function(t){var e,i;for(entry_count=t.readUint32(),this.associations=[],e=0;e<entry_count;e++){var r={};this.associations.push(r),this.version<1?r.id=t.readUint16():r.id=t.readUint32();var a=t.readUint8();for(r.props=[],i=0;i<a;i++){var p=t.readUint8(),f={};r.props.push(f),f.essential=(p&128)>>7===1,this.flags&1?f.property_index=(p&127)<<8|t.readUint8():f.property_index=p&127}}}),s.createFullBoxCtor("iref",function(t){var e,i;for(this.references=[];t.getPosition()<this.start+this.size;)if(e=s.parseOneBox(t,!0,this.size-(t.getPosition()-this.start)),e.code===s.OK)this.version===0?i=new s.SingleItemTypeReferenceBox(e.type,e.size,e.hdr_size,e.start):i=new s.SingleItemTypeReferenceBoxLarge(e.type,e.size,e.hdr_size,e.start),i.write===s.Box.prototype.write&&i.type!=="mdat"&&(n.warn("BoxParser",i.type+" box writing not yet implemented, keeping unparsed data in memory for later write"),i.parseDataAndRewind(t)),i.parse(t),this.references.push(i);else return}),s.createBoxCtor("irot",function(t){this.angle=t.readUint8()&3}),s.createFullBoxCtor("ispe",function(t){this.image_width=t.readUint32(),this.image_height=t.readUint32()}),s.createFullBoxCtor("kind",function(t){this.schemeURI=t.readCString(),this.value=t.readCString()}),s.createFullBoxCtor("leva",function(t){var e=t.readUint8();this.levels=[];for(var i=0;i<e;i++){var r={};this.levels[i]=r,r.track_ID=t.readUint32();var a=t.readUint8();switch(r.padding_flag=a>>7,r.assignment_type=a&127,r.assignment_type){case 0:r.grouping_type=t.readString(4);break;case 1:r.grouping_type=t.readString(4),r.grouping_type_parameter=t.readUint32();break;case 2:break;case 3:break;case 4:r.sub_track_id=t.readUint32();break;default:n.warn("BoxParser","Unknown leva assignement type")}}}),s.createBoxCtor("lsel",function(t){this.layer_id=t.readUint16()}),s.createBoxCtor("maxr",function(t){this.period=t.readUint32(),this.bytes=t.readUint32()}),s.createBoxCtor("mdcv",function(t){this.display_primaries=[],this.display_primaries[0]={},this.display_primaries[0].x=t.readUint16(),this.display_primaries[0].y=t.readUint16(),this.display_primaries[1]={},this.display_primaries[1].x=t.readUint16(),this.display_primaries[1].y=t.readUint16(),this.display_primaries[2]={},this.display_primaries[2].x=t.readUint16(),this.display_primaries[2].y=t.readUint16(),this.white_point={},this.white_point.x=t.readUint16(),this.white_point.y=t.readUint16(),this.max_display_mastering_luminance=t.readUint32(),this.min_display_mastering_luminance=t.readUint32()}),s.createFullBoxCtor("mdhd",function(t){this.version==1?(this.creation_time=t.readUint64(),this.modification_time=t.readUint64(),this.timescale=t.readUint32(),this.duration=t.readUint64()):(this.creation_time=t.readUint32(),this.modification_time=t.readUint32(),this.timescale=t.readUint32(),this.duration=t.readUint32()),this.parseLanguage(t),t.readUint16()}),s.createFullBoxCtor("mehd",function(t){this.flags&1&&(n.warn("BoxParser","mehd box incorrectly uses flags set to 1, converting version to 1"),this.version=1),this.version==1?this.fragment_duration=t.readUint64():this.fragment_duration=t.readUint32()}),s.createFullBoxCtor("meta",function(t){this.boxes=[],s.ContainerBox.prototype.parse.call(this,t)}),s.createFullBoxCtor("mfhd",function(t){this.sequence_number=t.readUint32()}),s.createFullBoxCtor("mfro",function(t){this._size=t.readUint32()}),s.createFullBoxCtor("mvhd",function(t){this.version==1?(this.creation_time=t.readUint64(),this.modification_time=t.readUint64(),this.timescale=t.readUint32(),this.duration=t.readUint64()):(this.creation_time=t.readUint32(),this.modification_time=t.readUint32(),this.timescale=t.readUint32(),this.duration=t.readUint32()),this.rate=t.readUint32(),this.volume=t.readUint16()>>8,t.readUint16(),t.readUint32Array(2),this.matrix=t.readUint32Array(9),t.readUint32Array(6),this.next_track_id=t.readUint32()}),s.createBoxCtor("npck",function(t){this.packetssent=t.readUint32()}),s.createBoxCtor("nump",function(t){this.packetssent=t.readUint64()}),s.createFullBoxCtor("padb",function(t){var e=t.readUint32();this.padbits=[];for(var i=0;i<Math.floor((e+1)/2);i++)this.padbits=t.readUint8()}),s.createBoxCtor("pasp",function(t){this.hSpacing=t.readUint32(),this.vSpacing=t.readUint32()}),s.createBoxCtor("payl",function(t){this.text=t.readString(this.size-this.hdr_size)}),s.createBoxCtor("payt",function(t){this.payloadID=t.readUint32();var e=t.readUint8();this.rtpmap_string=t.readString(e)}),s.createFullBoxCtor("pdin",function(t){var e=(this.size-this.hdr_size)/8;this.rate=[],this.initial_delay=[];for(var i=0;i<e;i++)this.rate[i]=t.readUint32(),this.initial_delay[i]=t.readUint32()}),s.createFullBoxCtor("pitm",function(t){this.version===0?this.item_id=t.readUint16():this.item_id=t.readUint32()}),s.createFullBoxCtor("pixi",function(t){var e;for(this.num_channels=t.readUint8(),this.bits_per_channels=[],e=0;e<this.num_channels;e++)this.bits_per_channels[e]=t.readUint8()}),s.createBoxCtor("pmax",function(t){this.bytes=t.readUint32()}),s.createFullBoxCtor("prft",function(t){this.ref_track_id=t.readUint32(),this.ntp_timestamp=t.readUint64(),this.version===0?this.media_time=t.readUint32():this.media_time=t.readUint64()}),s.createFullBoxCtor("pssh",function(t){if(this.system_id=s.parseHex16(t),this.version>0){var e=t.readUint32();this.kid=[];for(var i=0;i<e;i++)this.kid[i]=s.parseHex16(t)}var r=t.readUint32();r>0&&(this.data=t.readUint8Array(r))}),s.createFullBoxCtor("clef",function(t){this.width=t.readUint32(),this.height=t.readUint32()}),s.createFullBoxCtor("enof",function(t){this.width=t.readUint32(),this.height=t.readUint32()}),s.createFullBoxCtor("prof",function(t){this.width=t.readUint32(),this.height=t.readUint32()}),s.createContainerBoxCtor("tapt",null,["clef","prof","enof"]),s.createBoxCtor("rtp ",function(t){this.descriptionformat=t.readString(4),this.sdptext=t.readString(this.size-this.hdr_size-4)}),s.createFullBoxCtor("saio",function(t){this.flags&1&&(this.aux_info_type=t.readUint32(),this.aux_info_type_parameter=t.readUint32());var e=t.readUint32();this.offset=[];for(var i=0;i<e;i++)this.version===0?this.offset[i]=t.readUint32():this.offset[i]=t.readUint64()}),s.createFullBoxCtor("saiz",function(t){this.flags&1&&(this.aux_info_type=t.readUint32(),this.aux_info_type_parameter=t.readUint32()),this.default_sample_info_size=t.readUint8();var e=t.readUint32();if(this.sample_info_size=[],this.default_sample_info_size===0)for(var i=0;i<e;i++)this.sample_info_size[i]=t.readUint8()}),s.createSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_METADATA,"mett",function(t){this.parseHeader(t),this.content_encoding=t.readCString(),this.mime_format=t.readCString(),this.parseFooter(t)}),s.createSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_METADATA,"metx",function(t){this.parseHeader(t),this.content_encoding=t.readCString(),this.namespace=t.readCString(),this.schema_location=t.readCString(),this.parseFooter(t)}),s.createSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_SUBTITLE,"sbtt",function(t){this.parseHeader(t),this.content_encoding=t.readCString(),this.mime_format=t.readCString(),this.parseFooter(t)}),s.createSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_SUBTITLE,"stpp",function(t){this.parseHeader(t),this.namespace=t.readCString(),this.schema_location=t.readCString(),this.auxiliary_mime_types=t.readCString(),this.parseFooter(t)}),s.createSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_SUBTITLE,"stxt",function(t){this.parseHeader(t),this.content_encoding=t.readCString(),this.mime_format=t.readCString(),this.parseFooter(t)}),s.createSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_SUBTITLE,"tx3g",function(t){this.parseHeader(t),this.displayFlags=t.readUint32(),this.horizontal_justification=t.readInt8(),this.vertical_justification=t.readInt8(),this.bg_color_rgba=t.readUint8Array(4),this.box_record=t.readInt16Array(4),this.style_record=t.readUint8Array(12),this.parseFooter(t)}),s.createSampleEntryCtor(s.SAMPLE_ENTRY_TYPE_METADATA,"wvtt",function(t){this.parseHeader(t),this.parseFooter(t)}),s.createSampleGroupCtor("alst",function(t){var e,i=t.readUint16();for(this.first_output_sample=t.readUint16(),this.sample_offset=[],e=0;e<i;e++)this.sample_offset[e]=t.readUint32();var r=this.description_length-4-4*i;for(this.num_output_samples=[],this.num_total_samples=[],e=0;e<r/4;e++)this.num_output_samples[e]=t.readUint16(),this.num_total_samples[e]=t.readUint16()}),s.createSampleGroupCtor("avll",function(t){this.layerNumber=t.readUint8(),this.accurateStatisticsFlag=t.readUint8(),this.avgBitRate=t.readUint16(),this.avgFrameRate=t.readUint16()}),s.createSampleGroupCtor("avss",function(t){this.subSequenceIdentifier=t.readUint16(),this.layerNumber=t.readUint8();var e=t.readUint8();this.durationFlag=e>>7,this.avgRateFlag=e>>6&1,this.durationFlag&&(this.duration=t.readUint32()),this.avgRateFlag&&(this.accurateStatisticsFlag=t.readUint8(),this.avgBitRate=t.readUint16(),this.avgFrameRate=t.readUint16()),this.dependency=[];for(var i=t.readUint8(),r=0;r<i;r++){var a={};this.dependency.push(a),a.subSeqDirectionFlag=t.readUint8(),a.layerNumber=t.readUint8(),a.subSequenceIdentifier=t.readUint16()}}),s.createSampleGroupCtor("dtrt",function(t){n.warn("BoxParser","Sample Group type: "+this.grouping_type+" not fully parsed")}),s.createSampleGroupCtor("mvif",function(t){n.warn("BoxParser","Sample Group type: "+this.grouping_type+" not fully parsed")}),s.createSampleGroupCtor("prol",function(t){this.roll_distance=t.readInt16()}),s.createSampleGroupCtor("rap ",function(t){var e=t.readUint8();this.num_leading_samples_known=e>>7,this.num_leading_samples=e&127}),s.createSampleGroupCtor("rash",function(t){if(this.operation_point_count=t.readUint16(),this.description_length!==2+(this.operation_point_count===1?2:this.operation_point_count*6)+9)n.warn("BoxParser","Mismatch in "+this.grouping_type+" sample group length"),this.data=t.readUint8Array(this.description_length-2);else{if(this.operation_point_count===1)this.target_rate_share=t.readUint16();else{this.target_rate_share=[],this.available_bitrate=[];for(var e=0;e<this.operation_point_count;e++)this.available_bitrate[e]=t.readUint32(),this.target_rate_share[e]=t.readUint16()}this.maximum_bitrate=t.readUint32(),this.minimum_bitrate=t.readUint32(),this.discard_priority=t.readUint8()}}),s.createSampleGroupCtor("roll",function(t){this.roll_distance=t.readInt16()}),s.SampleGroupEntry.prototype.parse=function(t){n.warn("BoxParser","Unknown Sample Group type: "+this.grouping_type),this.data=t.readUint8Array(this.description_length)},s.createSampleGroupCtor("scif",function(t){n.warn("BoxParser","Sample Group type: "+this.grouping_type+" not fully parsed")}),s.createSampleGroupCtor("scnm",function(t){n.warn("BoxParser","Sample Group type: "+this.grouping_type+" not fully parsed")}),s.createSampleGroupCtor("seig",function(t){this.reserved=t.readUint8();var e=t.readUint8();this.crypt_byte_block=e>>4,this.skip_byte_block=e&15,this.isProtected=t.readUint8(),this.Per_Sample_IV_Size=t.readUint8(),this.KID=s.parseHex16(t),this.constant_IV_size=0,this.constant_IV=0,this.isProtected===1&&this.Per_Sample_IV_Size===0&&(this.constant_IV_size=t.readUint8(),this.constant_IV=t.readUint8Array(this.constant_IV_size))}),s.createSampleGroupCtor("stsa",function(t){n.warn("BoxParser","Sample Group type: "+this.grouping_type+" not fully parsed")}),s.createSampleGroupCtor("sync",function(t){var e=t.readUint8();this.NAL_unit_type=e&63}),s.createSampleGroupCtor("tele",function(t){var e=t.readUint8();this.level_independently_decodable=e>>7}),s.createSampleGroupCtor("tsas",function(t){n.warn("BoxParser","Sample Group type: "+this.grouping_type+" not fully parsed")}),s.createSampleGroupCtor("tscl",function(t){n.warn("BoxParser","Sample Group type: "+this.grouping_type+" not fully parsed")}),s.createSampleGroupCtor("vipr",function(t){n.warn("BoxParser","Sample Group type: "+this.grouping_type+" not fully parsed")}),s.createFullBoxCtor("sbgp",function(t){this.grouping_type=t.readString(4),this.version===1?this.grouping_type_parameter=t.readUint32():this.grouping_type_parameter=0,this.entries=[];for(var e=t.readUint32(),i=0;i<e;i++){var r={};this.entries.push(r),r.sample_count=t.readInt32(),r.group_description_index=t.readInt32()}}),s.createFullBoxCtor("schm",function(t){this.scheme_type=t.readString(4),this.scheme_version=t.readUint32(),this.flags&1&&(this.scheme_uri=t.readString(this.size-this.hdr_size-8))}),s.createBoxCtor("sdp ",function(t){this.sdptext=t.readString(this.size-this.hdr_size)}),s.createFullBoxCtor("sdtp",function(t){var e,i=this.size-this.hdr_size;this.is_leading=[],this.sample_depends_on=[],this.sample_is_depended_on=[],this.sample_has_redundancy=[];for(var r=0;r<i;r++)e=t.readUint8(),this.is_leading[r]=e>>6,this.sample_depends_on[r]=e>>4&3,this.sample_is_depended_on[r]=e>>2&3,this.sample_has_redundancy[r]=e&3}),s.createFullBoxCtor("senc"),s.createFullBoxCtor("sgpd",function(t){this.grouping_type=t.readString(4),n.debug("BoxParser","Found Sample Groups of type "+this.grouping_type),this.version===1?this.default_length=t.readUint32():this.default_length=0,this.version>=2&&(this.default_group_description_index=t.readUint32()),this.entries=[];for(var e=t.readUint32(),i=0;i<e;i++){var r;s[this.grouping_type+"SampleGroupEntry"]?r=new s[this.grouping_type+"SampleGroupEntry"](this.grouping_type):r=new s.SampleGroupEntry(this.grouping_type),this.entries.push(r),this.version===1?this.default_length===0?r.description_length=t.readUint32():r.description_length=this.default_length:r.description_length=this.default_length,r.write===s.SampleGroupEntry.prototype.write&&(n.info("BoxParser","SampleGroup for type "+this.grouping_type+" writing not yet implemented, keeping unparsed data in memory for later write"),r.data=t.readUint8Array(r.description_length),t.position-=r.description_length),r.parse(t)}}),s.createFullBoxCtor("sidx",function(t){this.reference_ID=t.readUint32(),this.timescale=t.readUint32(),this.version===0?(this.earliest_presentation_time=t.readUint32(),this.first_offset=t.readUint32()):(this.earliest_presentation_time=t.readUint64(),this.first_offset=t.readUint64()),t.readUint16(),this.references=[];for(var e=t.readUint16(),i=0;i<e;i++){var r={};this.references.push(r);var a=t.readUint32();r.reference_type=a>>31&1,r.referenced_size=a&2147483647,r.subsegment_duration=t.readUint32(),a=t.readUint32(),r.starts_with_SAP=a>>31&1,r.SAP_type=a>>28&7,r.SAP_delta_time=a&268435455}}),s.SingleItemTypeReferenceBox=function(t,e,i,r){s.Box.call(this,t,e),this.hdr_size=i,this.start=r},s.SingleItemTypeReferenceBox.prototype=new s.Box,s.SingleItemTypeReferenceBox.prototype.parse=function(t){this.from_item_ID=t.readUint16();var e=t.readUint16();this.references=[];for(var i=0;i<e;i++)this.references[i]=t.readUint16()},s.SingleItemTypeReferenceBoxLarge=function(t,e,i,r){s.Box.call(this,t,e),this.hdr_size=i,this.start=r},s.SingleItemTypeReferenceBoxLarge.prototype=new s.Box,s.SingleItemTypeReferenceBoxLarge.prototype.parse=function(t){this.from_item_ID=t.readUint32();var e=t.readUint16();this.references=[];for(var i=0;i<e;i++)this.references[i]=t.readUint32()},s.createFullBoxCtor("SmDm",function(t){this.primaryRChromaticity_x=t.readUint16(),this.primaryRChromaticity_y=t.readUint16(),this.primaryGChromaticity_x=t.readUint16(),this.primaryGChromaticity_y=t.readUint16(),this.primaryBChromaticity_x=t.readUint16(),this.primaryBChromaticity_y=t.readUint16(),this.whitePointChromaticity_x=t.readUint16(),this.whitePointChromaticity_y=t.readUint16(),this.luminanceMax=t.readUint32(),this.luminanceMin=t.readUint32()}),s.createFullBoxCtor("smhd",function(t){this.balance=t.readUint16(),t.readUint16()}),s.createFullBoxCtor("ssix",function(t){this.subsegments=[];for(var e=t.readUint32(),i=0;i<e;i++){var r={};this.subsegments.push(r),r.ranges=[];for(var a=t.readUint32(),p=0;p<a;p++){var f={};r.ranges.push(f),f.level=t.readUint8(),f.range_size=t.readUint24()}}}),s.createFullBoxCtor("stco",function(t){var e;if(e=t.readUint32(),this.chunk_offsets=[],this.version===0)for(var i=0;i<e;i++)this.chunk_offsets.push(t.readUint32())}),s.createFullBoxCtor("stdp",function(t){var e=(this.size-this.hdr_size)/2;this.priority=[];for(var i=0;i<e;i++)this.priority[i]=t.readUint16()}),s.createFullBoxCtor("sthd"),s.createFullBoxCtor("stri",function(t){this.switch_group=t.readUint16(),this.alternate_group=t.readUint16(),this.sub_track_id=t.readUint32();var e=(this.size-this.hdr_size-8)/4;this.attribute_list=[];for(var i=0;i<e;i++)this.attribute_list[i]=t.readUint32()}),s.createFullBoxCtor("stsc",function(t){var e,i;if(e=t.readUint32(),this.first_chunk=[],this.samples_per_chunk=[],this.sample_description_index=[],this.version===0)for(i=0;i<e;i++)this.first_chunk.push(t.readUint32()),this.samples_per_chunk.push(t.readUint32()),this.sample_description_index.push(t.readUint32())}),s.createFullBoxCtor("stsd",function(t){var e,i,r,a;for(this.entries=[],r=t.readUint32(),e=1;e<=r;e++)if(i=s.parseOneBox(t,!0,this.size-(t.getPosition()-this.start)),i.code===s.OK)s[i.type+"SampleEntry"]?(a=new s[i.type+"SampleEntry"](i.size),a.hdr_size=i.hdr_size,a.start=i.start):(n.warn("BoxParser","Unknown sample entry type: "+i.type),a=new s.SampleEntry(i.type,i.size,i.hdr_size,i.start)),a.write===s.SampleEntry.prototype.write&&(n.info("BoxParser","SampleEntry "+a.type+" box writing not yet implemented, keeping unparsed data in memory for later write"),a.parseDataAndRewind(t)),a.parse(t),this.entries.push(a);else return}),s.createFullBoxCtor("stsg",function(t){this.grouping_type=t.readUint32();var e=t.readUint16();this.group_description_index=[];for(var i=0;i<e;i++)this.group_description_index[i]=t.readUint32()}),s.createFullBoxCtor("stsh",function(t){var e,i;if(e=t.readUint32(),this.shadowed_sample_numbers=[],this.sync_sample_numbers=[],this.version===0)for(i=0;i<e;i++)this.shadowed_sample_numbers.push(t.readUint32()),this.sync_sample_numbers.push(t.readUint32())}),s.createFullBoxCtor("stss",function(t){var e,i;if(i=t.readUint32(),this.version===0)for(this.sample_numbers=[],e=0;e<i;e++)this.sample_numbers.push(t.readUint32())}),s.createFullBoxCtor("stsz",function(t){var e;if(this.sample_sizes=[],this.version===0)for(this.sample_size=t.readUint32(),this.sample_count=t.readUint32(),e=0;e<this.sample_count;e++)this.sample_size===0?this.sample_sizes.push(t.readUint32()):this.sample_sizes[e]=this.sample_size}),s.createFullBoxCtor("stts",function(t){var e,i,r;if(e=t.readUint32(),this.sample_counts=[],this.sample_deltas=[],this.version===0)for(i=0;i<e;i++)this.sample_counts.push(t.readUint32()),r=t.readInt32(),r<0&&(n.warn("BoxParser","File uses negative stts sample delta, using value 1 instead, sync may be lost!"),r=1),this.sample_deltas.push(r)}),s.createFullBoxCtor("stvi",function(t){var e=t.readUint32();this.single_view_allowed=e&3,this.stereo_scheme=t.readUint32();var i=t.readUint32();this.stereo_indication_type=t.readString(i);var r,a;for(this.boxes=[];t.getPosition()<this.start+this.size;)if(r=s.parseOneBox(t,!1,this.size-(t.getPosition()-this.start)),r.code===s.OK)a=r.box,this.boxes.push(a),this[a.type]=a;else return}),s.createBoxCtor("styp",function(t){s.ftypBox.prototype.parse.call(this,t)}),s.createFullBoxCtor("stz2",function(t){var e,i;if(this.sample_sizes=[],this.version===0)if(this.reserved=t.readUint24(),this.field_size=t.readUint8(),i=t.readUint32(),this.field_size===4)for(e=0;e<i;e+=2){var r=t.readUint8();this.sample_sizes[e]=r>>4&15,this.sample_sizes[e+1]=r&15}else if(this.field_size===8)for(e=0;e<i;e++)this.sample_sizes[e]=t.readUint8();else if(this.field_size===16)for(e=0;e<i;e++)this.sample_sizes[e]=t.readUint16();else n.error("BoxParser","Error in length field in stz2 box")}),s.createFullBoxCtor("subs",function(t){var e,i,r,a;for(r=t.readUint32(),this.entries=[],e=0;e<r;e++){var p={};if(this.entries[e]=p,p.sample_delta=t.readUint32(),p.subsamples=[],a=t.readUint16(),a>0)for(i=0;i<a;i++){var f={};p.subsamples.push(f),this.version==1?f.size=t.readUint32():f.size=t.readUint16(),f.priority=t.readUint8(),f.discardable=t.readUint8(),f.codec_specific_parameters=t.readUint32()}}}),s.createFullBoxCtor("tenc",function(t){if(t.readUint8(),this.version===0)t.readUint8();else{var e=t.readUint8();this.default_crypt_byte_block=e>>4&15,this.default_skip_byte_block=e&15}this.default_isProtected=t.readUint8(),this.default_Per_Sample_IV_Size=t.readUint8(),this.default_KID=s.parseHex16(t),this.default_isProtected===1&&this.default_Per_Sample_IV_Size===0&&(this.default_constant_IV_size=t.readUint8(),this.default_constant_IV=t.readUint8Array(this.default_constant_IV_size))}),s.createFullBoxCtor("tfdt",function(t){this.version==1?this.baseMediaDecodeTime=t.readUint64():this.baseMediaDecodeTime=t.readUint32()}),s.createFullBoxCtor("tfhd",function(t){var e=0;this.track_id=t.readUint32(),this.size-this.hdr_size>e&&this.flags&s.TFHD_FLAG_BASE_DATA_OFFSET?(this.base_data_offset=t.readUint64(),e+=8):this.base_data_offset=0,this.size-this.hdr_size>e&&this.flags&s.TFHD_FLAG_SAMPLE_DESC?(this.default_sample_description_index=t.readUint32(),e+=4):this.default_sample_description_index=0,this.size-this.hdr_size>e&&this.flags&s.TFHD_FLAG_SAMPLE_DUR?(this.default_sample_duration=t.readUint32(),e+=4):this.default_sample_duration=0,this.size-this.hdr_size>e&&this.flags&s.TFHD_FLAG_SAMPLE_SIZE?(this.default_sample_size=t.readUint32(),e+=4):this.default_sample_size=0,this.size-this.hdr_size>e&&this.flags&s.TFHD_FLAG_SAMPLE_FLAGS?(this.default_sample_flags=t.readUint32(),e+=4):this.default_sample_flags=0}),s.createFullBoxCtor("tfra",function(t){this.track_ID=t.readUint32(),t.readUint24();var e=t.readUint8();this.length_size_of_traf_num=e>>4&3,this.length_size_of_trun_num=e>>2&3,this.length_size_of_sample_num=e&3,this.entries=[];for(var i=t.readUint32(),r=0;r<i;r++)this.version===1?(this.time=t.readUint64(),this.moof_offset=t.readUint64()):(this.time=t.readUint32(),this.moof_offset=t.readUint32()),this.traf_number=t["readUint"+8*(this.length_size_of_traf_num+1)](),this.trun_number=t["readUint"+8*(this.length_size_of_trun_num+1)](),this.sample_number=t["readUint"+8*(this.length_size_of_sample_num+1)]()}),s.createFullBoxCtor("tkhd",function(t){this.version==1?(this.creation_time=t.readUint64(),this.modification_time=t.readUint64(),this.track_id=t.readUint32(),t.readUint32(),this.duration=t.readUint64()):(this.creation_time=t.readUint32(),this.modification_time=t.readUint32(),this.track_id=t.readUint32(),t.readUint32(),this.duration=t.readUint32()),t.readUint32Array(2),this.layer=t.readInt16(),this.alternate_group=t.readInt16(),this.volume=t.readInt16()>>8,t.readUint16(),this.matrix=t.readInt32Array(9),this.width=t.readUint32(),this.height=t.readUint32()}),s.createBoxCtor("tmax",function(t){this.time=t.readUint32()}),s.createBoxCtor("tmin",function(t){this.time=t.readUint32()}),s.createBoxCtor("totl",function(t){this.bytessent=t.readUint32()}),s.createBoxCtor("tpay",function(t){this.bytessent=t.readUint32()}),s.createBoxCtor("tpyl",function(t){this.bytessent=t.readUint64()}),s.TrackGroupTypeBox.prototype.parse=function(t){this.parseFullHeader(t),this.track_group_id=t.readUint32()},s.createTrackGroupCtor("msrc"),s.TrackReferenceTypeBox=function(t,e,i,r){s.Box.call(this,t,e),this.hdr_size=i,this.start=r},s.TrackReferenceTypeBox.prototype=new s.Box,s.TrackReferenceTypeBox.prototype.parse=function(t){this.track_ids=t.readUint32Array((this.size-this.hdr_size)/4)},s.trefBox.prototype.parse=function(t){for(var e,i;t.getPosition()<this.start+this.size;)if(e=s.parseOneBox(t,!0,this.size-(t.getPosition()-this.start)),e.code===s.OK)i=new s.TrackReferenceTypeBox(e.type,e.size,e.hdr_size,e.start),i.write===s.Box.prototype.write&&i.type!=="mdat"&&(n.info("BoxParser","TrackReference "+i.type+" box writing not yet implemented, keeping unparsed data in memory for later write"),i.parseDataAndRewind(t)),i.parse(t),this.boxes.push(i);else return},s.createFullBoxCtor("trep",function(t){for(this.track_ID=t.readUint32(),this.boxes=[];t.getPosition()<this.start+this.size;)if(ret=s.parseOneBox(t,!1,this.size-(t.getPosition()-this.start)),ret.code===s.OK)box=ret.box,this.boxes.push(box);else return}),s.createFullBoxCtor("trex",function(t){this.track_id=t.readUint32(),this.default_sample_description_index=t.readUint32(),this.default_sample_duration=t.readUint32(),this.default_sample_size=t.readUint32(),this.default_sample_flags=t.readUint32()}),s.createBoxCtor("trpy",function(t){this.bytessent=t.readUint64()}),s.createFullBoxCtor("trun",function(t){var e=0;if(this.sample_count=t.readUint32(),e+=4,this.size-this.hdr_size>e&&this.flags&s.TRUN_FLAGS_DATA_OFFSET?(this.data_offset=t.readInt32(),e+=4):this.data_offset=0,this.size-this.hdr_size>e&&this.flags&s.TRUN_FLAGS_FIRST_FLAG?(this.first_sample_flags=t.readUint32(),e+=4):this.first_sample_flags=0,this.sample_duration=[],this.sample_size=[],this.sample_flags=[],this.sample_composition_time_offset=[],this.size-this.hdr_size>e)for(var i=0;i<this.sample_count;i++)this.flags&s.TRUN_FLAGS_DURATION&&(this.sample_duration[i]=t.readUint32()),this.flags&s.TRUN_FLAGS_SIZE&&(this.sample_size[i]=t.readUint32()),this.flags&s.TRUN_FLAGS_FLAGS&&(this.sample_flags[i]=t.readUint32()),this.flags&s.TRUN_FLAGS_CTS_OFFSET&&(this.version===0?this.sample_composition_time_offset[i]=t.readUint32():this.sample_composition_time_offset[i]=t.readInt32())}),s.createFullBoxCtor("tsel",function(t){this.switch_group=t.readUint32();var e=(this.size-this.hdr_size-4)/4;this.attribute_list=[];for(var i=0;i<e;i++)this.attribute_list[i]=t.readUint32()}),s.createFullBoxCtor("txtC",function(t){this.config=t.readCString()}),s.createFullBoxCtor("url ",function(t){this.flags!==1&&(this.location=t.readCString())}),s.createFullBoxCtor("urn ",function(t){this.name=t.readCString(),this.size-this.hdr_size-this.name.length-1>0&&(this.location=t.readCString())}),s.createUUIDBox("a5d40b30e81411ddba2f0800200c9a66",!0,!1,function(t){this.LiveServerManifest=t.readString(this.size-this.hdr_size).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}),s.createUUIDBox("d08a4f1810f34a82b6c832d8aba183d3",!0,!1,function(t){this.system_id=s.parseHex16(t);var e=t.readUint32();e>0&&(this.data=t.readUint8Array(e))}),s.createUUIDBox("a2394f525a9b4f14a2446c427c648df4",!0,!1),s.createUUIDBox("8974dbce7be74c5184f97148f9882554",!0,!1,function(t){this.default_AlgorithmID=t.readUint24(),this.default_IV_size=t.readUint8(),this.default_KID=s.parseHex16(t)}),s.createUUIDBox("d4807ef2ca3946958e5426cb9e46a79f",!0,!1,function(t){this.fragment_count=t.readUint8(),this.entries=[];for(var e=0;e<this.fragment_count;e++){var i={},r=0,a=0;this.version===1?(r=t.readUint64(),a=t.readUint64()):(r=t.readUint32(),a=t.readUint32()),i.absolute_time=r,i.absolute_duration=a,this.entries.push(i)}}),s.createUUIDBox("6d1d9b0542d544e680e2141daff757b2",!0,!1,function(t){this.version===1?(this.absolute_time=t.readUint64(),this.duration=t.readUint64()):(this.absolute_time=t.readUint32(),this.duration=t.readUint32())}),s.createFullBoxCtor("vmhd",function(t){this.graphicsmode=t.readUint16(),this.opcolor=t.readUint16Array(3)}),s.createFullBoxCtor("vpcC",function(t){var e;this.version===1?(this.profile=t.readUint8(),this.level=t.readUint8(),e=t.readUint8(),this.bitDepth=e>>4,this.chromaSubsampling=e>>1&7,this.videoFullRangeFlag=e&1,this.colourPrimaries=t.readUint8(),this.transferCharacteristics=t.readUint8(),this.matrixCoefficients=t.readUint8(),this.codecIntializationDataSize=t.readUint16(),this.codecIntializationData=t.readUint8Array(this.codecIntializationDataSize)):(this.profile=t.readUint8(),this.level=t.readUint8(),e=t.readUint8(),this.bitDepth=e>>4&15,this.colorSpace=e&15,e=t.readUint8(),this.chromaSubsampling=e>>4&15,this.transferFunction=e>>1&7,this.videoFullRangeFlag=e&1,this.codecIntializationDataSize=t.readUint16(),this.codecIntializationData=t.readUint8Array(this.codecIntializationDataSize))}),s.createBoxCtor("vttC",function(t){this.text=t.readString(this.size-this.hdr_size)}),s.createFullBoxCtor("vvcC",function(t){var e,i,r={held_bits:void 0,num_held_bits:0,stream_read_1_bytes:function(U){this.held_bits=U.readUint8(),this.num_held_bits=8},stream_read_2_bytes:function(U){this.held_bits=U.readUint16(),this.num_held_bits=16},extract_bits:function(U){var F=this.held_bits>>this.num_held_bits-U&(1<<U)-1;return this.num_held_bits-=U,F}};if(r.stream_read_1_bytes(t),r.extract_bits(5),this.lengthSizeMinusOne=r.extract_bits(2),this.ptl_present_flag=r.extract_bits(1),this.ptl_present_flag){r.stream_read_2_bytes(t),this.ols_idx=r.extract_bits(9),this.num_sublayers=r.extract_bits(3),this.constant_frame_rate=r.extract_bits(2),this.chroma_format_idc=r.extract_bits(2),r.stream_read_1_bytes(t),this.bit_depth_minus8=r.extract_bits(3),r.extract_bits(5);{if(r.stream_read_2_bytes(t),r.extract_bits(2),this.num_bytes_constraint_info=r.extract_bits(6),this.general_profile_idc=r.extract_bits(7),this.general_tier_flag=r.extract_bits(1),this.general_level_idc=t.readUint8(),r.stream_read_1_bytes(t),this.ptl_frame_only_constraint_flag=r.extract_bits(1),this.ptl_multilayer_enabled_flag=r.extract_bits(1),this.general_constraint_info=new Uint8Array(this.num_bytes_constraint_info),this.num_bytes_constraint_info){for(e=0;e<this.num_bytes_constraint_info-1;e++){var a=r.extract_bits(6);r.stream_read_1_bytes(t);var p=r.extract_bits(2);this.general_constraint_info[e]=a<<2|p}this.general_constraint_info[this.num_bytes_constraint_info-1]=r.extract_bits(6)}else r.extract_bits(6);for(r.stream_read_1_bytes(t),this.ptl_sublayer_present_mask=0,i=this.num_sublayers-2;i>=0;--i){var f=r.extract_bits(1);this.ptl_sublayer_present_mask|=f<<i}for(i=this.num_sublayers;i<=8&&this.num_sublayers>1;++i)r.extract_bits(1);for(i=this.num_sublayers-2;i>=0;--i)this.ptl_sublayer_present_mask&1<<i&&(this.sublayer_level_idc[i]=t.readUint8());if(this.ptl_num_sub_profiles=t.readUint8(),this.general_sub_profile_idc=[],this.ptl_num_sub_profiles)for(e=0;e<this.ptl_num_sub_profiles;e++)this.general_sub_profile_idc.push(t.readUint32())}this.max_picture_width=t.readUint16(),this.max_picture_height=t.readUint16(),this.avg_frame_rate=t.readUint16()}var m=12,_=13;this.nalu_arrays=[];var v=t.readUint8();for(e=0;e<v;e++){var S=[];this.nalu_arrays.push(S),r.stream_read_1_bytes(t),S.completeness=r.extract_bits(1),r.extract_bits(2),S.nalu_type=r.extract_bits(5);var E=1;for(S.nalu_type!=_&&S.nalu_type!=m&&(E=t.readUint16()),i=0;i<E;i++){var z=t.readUint16();S.push({data:t.readUint8Array(z),length:z})}}}),s.createFullBoxCtor("vvnC",function(t){var e=strm.readUint8();this.lengthSizeMinusOne=e&3}),s.SampleEntry.prototype.isVideo=function(){return!1},s.SampleEntry.prototype.isAudio=function(){return!1},s.SampleEntry.prototype.isSubtitle=function(){return!1},s.SampleEntry.prototype.isMetadata=function(){return!1},s.SampleEntry.prototype.isHint=function(){return!1},s.SampleEntry.prototype.getCodec=function(){return this.type.replace(".","")},s.SampleEntry.prototype.getWidth=function(){return""},s.SampleEntry.prototype.getHeight=function(){return""},s.SampleEntry.prototype.getChannelCount=function(){return""},s.SampleEntry.prototype.getSampleRate=function(){return""},s.SampleEntry.prototype.getSampleSize=function(){return""},s.VisualSampleEntry.prototype.isVideo=function(){return!0},s.VisualSampleEntry.prototype.getWidth=function(){return this.width},s.VisualSampleEntry.prototype.getHeight=function(){return this.height},s.AudioSampleEntry.prototype.isAudio=function(){return!0},s.AudioSampleEntry.prototype.getChannelCount=function(){return this.channel_count},s.AudioSampleEntry.prototype.getSampleRate=function(){return this.samplerate},s.AudioSampleEntry.prototype.getSampleSize=function(){return this.samplesize},s.SubtitleSampleEntry.prototype.isSubtitle=function(){return!0},s.MetadataSampleEntry.prototype.isMetadata=function(){return!0},s.decimalToHex=function(t,e){var i=Number(t).toString(16);for(e=typeof e>"u"||e===null?e=2:e;i.length<e;)i="0"+i;return i},s.avc1SampleEntry.prototype.getCodec=s.avc2SampleEntry.prototype.getCodec=s.avc3SampleEntry.prototype.getCodec=s.avc4SampleEntry.prototype.getCodec=function(){var t=s.SampleEntry.prototype.getCodec.call(this);return this.avcC?t+"."+s.decimalToHex(this.avcC.AVCProfileIndication)+s.decimalToHex(this.avcC.profile_compatibility)+s.decimalToHex(this.avcC.AVCLevelIndication):t},s.hev1SampleEntry.prototype.getCodec=s.hvc1SampleEntry.prototype.getCodec=function(){var t,e=s.SampleEntry.prototype.getCodec.call(this);if(this.hvcC){switch(e+=".",this.hvcC.general_profile_space){case 0:e+="";break;case 1:e+="A";break;case 2:e+="B";break;case 3:e+="C";break}e+=this.hvcC.general_profile_idc,e+=".";var i=this.hvcC.general_profile_compatibility,r=0;for(t=0;t<32&&(r|=i&1,t!=31);t++)r<<=1,i>>=1;e+=s.decimalToHex(r,0),e+=".",this.hvcC.general_tier_flag===0?e+="L":e+="H",e+=this.hvcC.general_level_idc;var a=!1,p="";for(t=5;t>=0;t--)(this.hvcC.general_constraint_indicator[t]||a)&&(p="."+s.decimalToHex(this.hvcC.general_constraint_indicator[t],0)+p,a=!0);e+=p}return e},s.vvc1SampleEntry.prototype.getCodec=s.vvi1SampleEntry.prototype.getCodec=function(){var t,e=s.SampleEntry.prototype.getCodec.call(this);if(this.vvcC){e+="."+this.vvcC.general_profile_idc,this.vvcC.general_tier_flag?e+=".H":e+=".L",e+=this.vvcC.general_level_idc;var i="";if(this.vvcC.general_constraint_info){var r=[],a=0;a|=this.vvcC.ptl_frame_only_constraint<<7,a|=this.vvcC.ptl_multilayer_enabled<<6;var p;for(t=0;t<this.vvcC.general_constraint_info.length;++t)a|=this.vvcC.general_constraint_info[t]>>2&63,r.push(a),a&&(p=t),a=this.vvcC.general_constraint_info[t]>>2&3;if(p===void 0)i=".CA";else{i=".C";var f="ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",m=0,_=0;for(t=0;t<=p;++t)for(m=m<<8|r[t],_+=8;_>=5;){var v=m>>_-5&31;i+=f[v],_-=5,m&=(1<<_)-1}_&&(m<<=5-_,i+=f[m&31])}}e+=i}return e},s.mp4aSampleEntry.prototype.getCodec=function(){var t=s.SampleEntry.prototype.getCodec.call(this);if(this.esds&&this.esds.esd){var e=this.esds.esd.getOTI(),i=this.esds.esd.getAudioConfig();return t+"."+s.decimalToHex(e)+(i?"."+i:"")}else return t},s.stxtSampleEntry.prototype.getCodec=function(){var t=s.SampleEntry.prototype.getCodec.call(this);return this.mime_format?t+"."+this.mime_format:t},s.vp08SampleEntry.prototype.getCodec=s.vp09SampleEntry.prototype.getCodec=function(){var t=s.SampleEntry.prototype.getCodec.call(this),e=this.vpcC.level;e==0&&(e="00");var i=this.vpcC.bitDepth;return i==8&&(i="08"),t+".0"+this.vpcC.profile+"."+e+"."+i},s.av01SampleEntry.prototype.getCodec=function(){var t=s.SampleEntry.prototype.getCodec.call(this),e=this.av1C.seq_level_idx_0;e<10&&(e="0"+e);var i;return this.av1C.seq_profile===2&&this.av1C.high_bitdepth===1?i=this.av1C.twelve_bit===1?"12":"10":this.av1C.seq_profile<=2&&(i=this.av1C.high_bitdepth===1?"10":"08"),t+"."+this.av1C.seq_profile+"."+e+(this.av1C.seq_tier_0?"H":"M")+"."+i},s.Box.prototype.writeHeader=function(t,e){this.size+=8,this.size>d&&(this.size+=8),this.type==="uuid"&&(this.size+=16),n.debug("BoxWriter","Writing box "+this.type+" of size: "+this.size+" at position "+t.getPosition()+(e||"")),this.size>d?t.writeUint32(1):(this.sizePosition=t.getPosition(),t.writeUint32(this.size)),t.writeString(this.type,null,4),this.type==="uuid"&&t.writeUint8Array(this.uuid),this.size>d&&t.writeUint64(this.size)},s.FullBox.prototype.writeHeader=function(t){this.size+=4,s.Box.prototype.writeHeader.call(this,t," v="+this.version+" f="+this.flags),t.writeUint8(this.version),t.writeUint24(this.flags)},s.Box.prototype.write=function(t){this.type==="mdat"?this.data&&(this.size=this.data.length,this.writeHeader(t),t.writeUint8Array(this.data)):(this.size=this.data?this.data.length:0,this.writeHeader(t),this.data&&t.writeUint8Array(this.data))},s.ContainerBox.prototype.write=function(t){this.size=0,this.writeHeader(t);for(var e=0;e<this.boxes.length;e++)this.boxes[e]&&(this.boxes[e].write(t),this.size+=this.boxes[e].size);n.debug("BoxWriter","Adjusting box "+this.type+" with new size "+this.size),t.adjustUint32(this.sizePosition,this.size)},s.TrackReferenceTypeBox.prototype.write=function(t){this.size=this.track_ids.length*4,this.writeHeader(t),t.writeUint32Array(this.track_ids)},s.avcCBox.prototype.write=function(t){var e;for(this.size=7,e=0;e<this.SPS.length;e++)this.size+=2+this.SPS[e].length;for(e=0;e<this.PPS.length;e++)this.size+=2+this.PPS[e].length;for(this.ext&&(this.size+=this.ext.length),this.writeHeader(t),t.writeUint8(this.configurationVersion),t.writeUint8(this.AVCProfileIndication),t.writeUint8(this.profile_compatibility),t.writeUint8(this.AVCLevelIndication),t.writeUint8(this.lengthSizeMinusOne+252),t.writeUint8(this.SPS.length+224),e=0;e<this.SPS.length;e++)t.writeUint16(this.SPS[e].length),t.writeUint8Array(this.SPS[e].nalu);for(t.writeUint8(this.PPS.length),e=0;e<this.PPS.length;e++)t.writeUint16(this.PPS[e].length),t.writeUint8Array(this.PPS[e].nalu);this.ext&&t.writeUint8Array(this.ext)},s.co64Box.prototype.write=function(t){var e;for(this.version=0,this.flags=0,this.size=4+8*this.chunk_offsets.length,this.writeHeader(t),t.writeUint32(this.chunk_offsets.length),e=0;e<this.chunk_offsets.length;e++)t.writeUint64(this.chunk_offsets[e])},s.cslgBox.prototype.write=function(t){this.version=0,this.flags=0,this.size=20,this.writeHeader(t),t.writeInt32(this.compositionToDTSShift),t.writeInt32(this.leastDecodeToDisplayDelta),t.writeInt32(this.greatestDecodeToDisplayDelta),t.writeInt32(this.compositionStartTime),t.writeInt32(this.compositionEndTime)},s.cttsBox.prototype.write=function(t){var e;for(this.version=0,this.flags=0,this.size=4+8*this.sample_counts.length,this.writeHeader(t),t.writeUint32(this.sample_counts.length),e=0;e<this.sample_counts.length;e++)t.writeUint32(this.sample_counts[e]),this.version===1?t.writeInt32(this.sample_offsets[e]):t.writeUint32(this.sample_offsets[e])},s.drefBox.prototype.write=function(t){this.version=0,this.flags=0,this.size=4,this.writeHeader(t),t.writeUint32(this.entries.length);for(var e=0;e<this.entries.length;e++)this.entries[e].write(t),this.size+=this.entries[e].size;n.debug("BoxWriter","Adjusting box "+this.type+" with new size "+this.size),t.adjustUint32(this.sizePosition,this.size)},s.elngBox.prototype.write=function(t){this.version=0,this.flags=0,this.size=this.extended_language.length,this.writeHeader(t),t.writeString(this.extended_language)},s.elstBox.prototype.write=function(t){this.version=0,this.flags=0,this.size=4+12*this.entries.length,this.writeHeader(t),t.writeUint32(this.entries.length);for(var e=0;e<this.entries.length;e++){var i=this.entries[e];t.writeUint32(i.segment_duration),t.writeInt32(i.media_time),t.writeInt16(i.media_rate_integer),t.writeInt16(i.media_rate_fraction)}},s.emsgBox.prototype.write=function(t){this.version=0,this.flags=0,this.size=16+this.message_data.length+(this.scheme_id_uri.length+1)+(this.value.length+1),this.writeHeader(t),t.writeCString(this.scheme_id_uri),t.writeCString(this.value),t.writeUint32(this.timescale),t.writeUint32(this.presentation_time_delta),t.writeUint32(this.event_duration),t.writeUint32(this.id),t.writeUint8Array(this.message_data)},s.ftypBox.prototype.write=function(t){this.size=8+4*this.compatible_brands.length,this.writeHeader(t),t.writeString(this.major_brand,null,4),t.writeUint32(this.minor_version);for(var e=0;e<this.compatible_brands.length;e++)t.writeString(this.compatible_brands[e],null,4)},s.hdlrBox.prototype.write=function(t){this.size=20+this.name.length+1,this.version=0,this.flags=0,this.writeHeader(t),t.writeUint32(0),t.writeString(this.handler,null,4),t.writeUint32(0),t.writeUint32(0),t.writeUint32(0),t.writeCString(this.name)},s.kindBox.prototype.write=function(t){this.version=0,this.flags=0,this.size=this.schemeURI.length+1+(this.value.length+1),this.writeHeader(t),t.writeCString(this.schemeURI),t.writeCString(this.value)},s.mdhdBox.prototype.write=function(t){this.size=20,this.flags=0,this.version=0,this.writeHeader(t),t.writeUint32(this.creation_time),t.writeUint32(this.modification_time),t.writeUint32(this.timescale),t.writeUint32(this.duration),t.writeUint16(this.language),t.writeUint16(0)},s.mehdBox.prototype.write=function(t){this.version=0,this.flags=0,this.size=4,this.writeHeader(t),t.writeUint32(this.fragment_duration)},s.mfhdBox.prototype.write=function(t){this.version=0,this.flags=0,this.size=4,this.writeHeader(t),t.writeUint32(this.sequence_number)},s.mvhdBox.prototype.write=function(t){this.version=0,this.flags=0,this.size=96,this.writeHeader(t),t.writeUint32(this.creation_time),t.writeUint32(this.modification_time),t.writeUint32(this.timescale),t.writeUint32(this.duration),t.writeUint32(this.rate),t.writeUint16(this.volume<<8),t.writeUint16(0),t.writeUint32(0),t.writeUint32(0),t.writeUint32Array(this.matrix),t.writeUint32(0),t.writeUint32(0),t.writeUint32(0),t.writeUint32(0),t.writeUint32(0),t.writeUint32(0),t.writeUint32(this.next_track_id)},s.SampleEntry.prototype.writeHeader=function(t){this.size=8,s.Box.prototype.writeHeader.call(this,t),t.writeUint8(0),t.writeUint8(0),t.writeUint8(0),t.writeUint8(0),t.writeUint8(0),t.writeUint8(0),t.writeUint16(this.data_reference_index)},s.SampleEntry.prototype.writeFooter=function(t){for(var e=0;e<this.boxes.length;e++)this.boxes[e].write(t),this.size+=this.boxes[e].size;n.debug("BoxWriter","Adjusting box "+this.type+" with new size "+this.size),t.adjustUint32(this.sizePosition,this.size)},s.SampleEntry.prototype.write=function(t){this.writeHeader(t),t.writeUint8Array(this.data),this.size+=this.data.length,n.debug("BoxWriter","Adjusting box "+this.type+" with new size "+this.size),t.adjustUint32(this.sizePosition,this.size)},s.VisualSampleEntry.prototype.write=function(t){this.writeHeader(t),this.size+=70,t.writeUint16(0),t.writeUint16(0),t.writeUint32(0),t.writeUint32(0),t.writeUint32(0),t.writeUint16(this.width),t.writeUint16(this.height),t.writeUint32(this.horizresolution),t.writeUint32(this.vertresolution),t.writeUint32(0),t.writeUint16(this.frame_count),t.writeUint8(Math.min(31,this.compressorname.length)),t.writeString(this.compressorname,null,31),t.writeUint16(this.depth),t.writeInt16(-1),this.writeFooter(t)},s.AudioSampleEntry.prototype.write=function(t){this.writeHeader(t),this.size+=20,t.writeUint32(0),t.writeUint32(0),t.writeUint16(this.channel_count),t.writeUint16(this.samplesize),t.writeUint16(0),t.writeUint16(0),t.writeUint32(this.samplerate<<16),this.writeFooter(t)},s.stppSampleEntry.prototype.write=function(t){this.writeHeader(t),this.size+=this.namespace.length+1+this.schema_location.length+1+this.auxiliary_mime_types.length+1,t.writeCString(this.namespace),t.writeCString(this.schema_location),t.writeCString(this.auxiliary_mime_types),this.writeFooter(t)},s.SampleGroupEntry.prototype.write=function(t){t.writeUint8Array(this.data)},s.sbgpBox.prototype.write=function(t){this.version=1,this.flags=0,this.size=12+8*this.entries.length,this.writeHeader(t),t.writeString(this.grouping_type,null,4),t.writeUint32(this.grouping_type_parameter),t.writeUint32(this.entries.length);for(var e=0;e<this.entries.length;e++){var i=this.entries[e];t.writeInt32(i.sample_count),t.writeInt32(i.group_description_index)}},s.sgpdBox.prototype.write=function(t){var e,i;for(this.flags=0,this.size=12,e=0;e<this.entries.length;e++)i=this.entries[e],this.version===1&&(this.default_length===0&&(this.size+=4),this.size+=i.data.length);for(this.writeHeader(t),t.writeString(this.grouping_type,null,4),this.version===1&&t.writeUint32(this.default_length),this.version>=2&&t.writeUint32(this.default_sample_description_index),t.writeUint32(this.entries.length),e=0;e<this.entries.length;e++)i=this.entries[e],this.version===1&&this.default_length===0&&t.writeUint32(i.description_length),i.write(t)},s.sidxBox.prototype.write=function(t){this.version=0,this.flags=0,this.size=20+12*this.references.length,this.writeHeader(t),t.writeUint32(this.reference_ID),t.writeUint32(this.timescale),t.writeUint32(this.earliest_presentation_time),t.writeUint32(this.first_offset),t.writeUint16(0),t.writeUint16(this.references.length);for(var e=0;e<this.references.length;e++){var i=this.references[e];t.writeUint32(i.reference_type<<31|i.referenced_size),t.writeUint32(i.subsegment_duration),t.writeUint32(i.starts_with_SAP<<31|i.SAP_type<<28|i.SAP_delta_time)}},s.smhdBox.prototype.write=function(t){this.version=0,this.flags=1,this.size=4,this.writeHeader(t),t.writeUint16(this.balance),t.writeUint16(0)},s.stcoBox.prototype.write=function(t){this.version=0,this.flags=0,this.size=4+4*this.chunk_offsets.length,this.writeHeader(t),t.writeUint32(this.chunk_offsets.length),t.writeUint32Array(this.chunk_offsets)},s.stscBox.prototype.write=function(t){var e;for(this.version=0,this.flags=0,this.size=4+12*this.first_chunk.length,this.writeHeader(t),t.writeUint32(this.first_chunk.length),e=0;e<this.first_chunk.length;e++)t.writeUint32(this.first_chunk[e]),t.writeUint32(this.samples_per_chunk[e]),t.writeUint32(this.sample_description_index[e])},s.stsdBox.prototype.write=function(t){var e;for(this.version=0,this.flags=0,this.size=0,this.writeHeader(t),t.writeUint32(this.entries.length),this.size+=4,e=0;e<this.entries.length;e++)this.entries[e].write(t),this.size+=this.entries[e].size;n.debug("BoxWriter","Adjusting box "+this.type+" with new size "+this.size),t.adjustUint32(this.sizePosition,this.size)},s.stshBox.prototype.write=function(t){var e;for(this.version=0,this.flags=0,this.size=4+8*this.shadowed_sample_numbers.length,this.writeHeader(t),t.writeUint32(this.shadowed_sample_numbers.length),e=0;e<this.shadowed_sample_numbers.length;e++)t.writeUint32(this.shadowed_sample_numbers[e]),t.writeUint32(this.sync_sample_numbers[e])},s.stssBox.prototype.write=function(t){this.version=0,this.flags=0,this.size=4+4*this.sample_numbers.length,this.writeHeader(t),t.writeUint32(this.sample_numbers.length),t.writeUint32Array(this.sample_numbers)},s.stszBox.prototype.write=function(t){var e,i=!0;if(this.version=0,this.flags=0,this.sample_sizes.length>0)for(e=0;e+1<this.sample_sizes.length;)if(this.sample_sizes[e+1]!==this.sample_sizes[0]){i=!1;break}else e++;else i=!1;this.size=8,i||(this.size+=4*this.sample_sizes.length),this.writeHeader(t),i?t.writeUint32(this.sample_sizes[0]):t.writeUint32(0),t.writeUint32(this.sample_sizes.length),i||t.writeUint32Array(this.sample_sizes)},s.sttsBox.prototype.write=function(t){var e;for(this.version=0,this.flags=0,this.size=4+8*this.sample_counts.length,this.writeHeader(t),t.writeUint32(this.sample_counts.length),e=0;e<this.sample_counts.length;e++)t.writeUint32(this.sample_counts[e]),t.writeUint32(this.sample_deltas[e])},s.tfdtBox.prototype.write=function(t){var e=Math.pow(2,32)-1;this.version=this.baseMediaDecodeTime>e?1:0,this.flags=0,this.size=4,this.version===1&&(this.size+=4),this.writeHeader(t),this.version===1?t.writeUint64(this.baseMediaDecodeTime):t.writeUint32(this.baseMediaDecodeTime)},s.tfhdBox.prototype.write=function(t){this.version=0,this.size=4,this.flags&s.TFHD_FLAG_BASE_DATA_OFFSET&&(this.size+=8),this.flags&s.TFHD_FLAG_SAMPLE_DESC&&(this.size+=4),this.flags&s.TFHD_FLAG_SAMPLE_DUR&&(this.size+=4),this.flags&s.TFHD_FLAG_SAMPLE_SIZE&&(this.size+=4),this.flags&s.TFHD_FLAG_SAMPLE_FLAGS&&(this.size+=4),this.writeHeader(t),t.writeUint32(this.track_id),this.flags&s.TFHD_FLAG_BASE_DATA_OFFSET&&t.writeUint64(this.base_data_offset),this.flags&s.TFHD_FLAG_SAMPLE_DESC&&t.writeUint32(this.default_sample_description_index),this.flags&s.TFHD_FLAG_SAMPLE_DUR&&t.writeUint32(this.default_sample_duration),this.flags&s.TFHD_FLAG_SAMPLE_SIZE&&t.writeUint32(this.default_sample_size),this.flags&s.TFHD_FLAG_SAMPLE_FLAGS&&t.writeUint32(this.default_sample_flags)},s.tkhdBox.prototype.write=function(t){this.version=0,this.size=80,this.writeHeader(t),t.writeUint32(this.creation_time),t.writeUint32(this.modification_time),t.writeUint32(this.track_id),t.writeUint32(0),t.writeUint32(this.duration),t.writeUint32(0),t.writeUint32(0),t.writeInt16(this.layer),t.writeInt16(this.alternate_group),t.writeInt16(this.volume<<8),t.writeUint16(0),t.writeInt32Array(this.matrix),t.writeUint32(this.width),t.writeUint32(this.height)},s.trexBox.prototype.write=function(t){this.version=0,this.flags=0,this.size=20,this.writeHeader(t),t.writeUint32(this.track_id),t.writeUint32(this.default_sample_description_index),t.writeUint32(this.default_sample_duration),t.writeUint32(this.default_sample_size),t.writeUint32(this.default_sample_flags)},s.trunBox.prototype.write=function(t){this.version=0,this.size=4,this.flags&s.TRUN_FLAGS_DATA_OFFSET&&(this.size+=4),this.flags&s.TRUN_FLAGS_FIRST_FLAG&&(this.size+=4),this.flags&s.TRUN_FLAGS_DURATION&&(this.size+=4*this.sample_duration.length),this.flags&s.TRUN_FLAGS_SIZE&&(this.size+=4*this.sample_size.length),this.flags&s.TRUN_FLAGS_FLAGS&&(this.size+=4*this.sample_flags.length),this.flags&s.TRUN_FLAGS_CTS_OFFSET&&(this.size+=4*this.sample_composition_time_offset.length),this.writeHeader(t),t.writeUint32(this.sample_count),this.flags&s.TRUN_FLAGS_DATA_OFFSET&&(this.data_offset_position=t.getPosition(),t.writeInt32(this.data_offset)),this.flags&s.TRUN_FLAGS_FIRST_FLAG&&t.writeUint32(this.first_sample_flags);for(var e=0;e<this.sample_count;e++)this.flags&s.TRUN_FLAGS_DURATION&&t.writeUint32(this.sample_duration[e]),this.flags&s.TRUN_FLAGS_SIZE&&t.writeUint32(this.sample_size[e]),this.flags&s.TRUN_FLAGS_FLAGS&&t.writeUint32(this.sample_flags[e]),this.flags&s.TRUN_FLAGS_CTS_OFFSET&&(this.version===0?t.writeUint32(this.sample_composition_time_offset[e]):t.writeInt32(this.sample_composition_time_offset[e]))},s["url Box"].prototype.write=function(t){this.version=0,this.location?(this.flags=0,this.size=this.location.length+1):(this.flags=1,this.size=0),this.writeHeader(t),this.location&&t.writeCString(this.location)},s["urn Box"].prototype.write=function(t){this.version=0,this.flags=0,this.size=this.name.length+1+(this.location?this.location.length+1:0),this.writeHeader(t),t.writeCString(this.name),this.location&&t.writeCString(this.location)},s.vmhdBox.prototype.write=function(t){this.version=0,this.flags=1,this.size=8,this.writeHeader(t),t.writeUint16(this.graphicsmode),t.writeUint16Array(this.opcolor)},s.cttsBox.prototype.unpack=function(t){var e,i,r;for(r=0,e=0;e<this.sample_counts.length;e++)for(i=0;i<this.sample_counts[e];i++)t[r].pts=t[r].dts+this.sample_offsets[e],r++},s.sttsBox.prototype.unpack=function(t){var e,i,r;for(r=0,e=0;e<this.sample_counts.length;e++)for(i=0;i<this.sample_counts[e];i++)r===0?t[r].dts=0:t[r].dts=t[r-1].dts+this.sample_deltas[e],r++},s.stcoBox.prototype.unpack=function(t){var e;for(e=0;e<this.chunk_offsets.length;e++)t[e].offset=this.chunk_offsets[e]},s.stscBox.prototype.unpack=function(t){var e,i,r,a,p;for(a=0,p=0,e=0;e<this.first_chunk.length;e++)for(i=0;i<(e+1<this.first_chunk.length?this.first_chunk[e+1]:1/0);i++)for(p++,r=0;r<this.samples_per_chunk[e];r++){if(t[a])t[a].description_index=this.sample_description_index[e],t[a].chunk_index=p;else return;a++}},s.stszBox.prototype.unpack=function(t){var e;for(e=0;e<this.sample_sizes.length;e++)t[e].size=this.sample_sizes[e]},s.DIFF_BOXES_PROP_NAMES=["boxes","entries","references","subsamples","items","item_infos","extents","associations","subsegments","ranges","seekLists","seekPoints","esd","levels"],s.DIFF_PRIMITIVE_ARRAY_PROP_NAMES=["compatible_brands","matrix","opcolor","sample_counts","sample_counts","sample_deltas","first_chunk","samples_per_chunk","sample_sizes","chunk_offsets","sample_offsets","sample_description_index","sample_duration"],s.boxEqualFields=function(t,e){if(t&&!e)return!1;var i;for(i in t)if(!(s.DIFF_BOXES_PROP_NAMES.indexOf(i)>-1)){if(t[i]instanceof s.Box||e[i]instanceof s.Box||typeof t[i]>"u"||typeof e[i]>"u"||typeof t[i]=="function"||typeof e[i]=="function"||t.subBoxNames&&t.subBoxNames.indexOf(i.slice(0,4))>-1||e.subBoxNames&&e.subBoxNames.indexOf(i.slice(0,4))>-1||i==="data"||i==="start"||i==="size"||i==="creation_time"||i==="modification_time"||s.DIFF_PRIMITIVE_ARRAY_PROP_NAMES.indexOf(i)>-1)continue;if(t[i]!==e[i])return!1}return!0},s.boxEqual=function(t,e){if(!s.boxEqualFields(t,e))return!1;for(var i=0;i<s.DIFF_BOXES_PROP_NAMES.length;i++){var r=s.DIFF_BOXES_PROP_NAMES[i];if(t[r]&&e[r]&&!s.boxEqual(t[r],e[r]))return!1}return!0};var y=function(){};y.prototype.parseSample=function(t){var e={},i;e.resources=[];var r=new h(t.data.buffer);if(!t.subsamples||t.subsamples.length===0)e.documentString=r.readString(t.data.length);else if(e.documentString=r.readString(t.subsamples[0].size),t.subsamples.length>1)for(i=1;i<t.subsamples.length;i++)e.resources[i]=r.readUint8Array(t.subsamples[i].size);return typeof DOMParser<"u"&&(e.document=new DOMParser().parseFromString(e.documentString,"application/xml")),e};var w=function(){};w.prototype.parseSample=function(t){var e,i=new h(t.data.buffer);return e=i.readString(t.data.length),e},w.prototype.parseConfig=function(t){var e,i=new h(t.buffer);return i.readUint32(),e=i.readCString(),e},l.XMLSubtitlein4Parser=y,l.Textin4Parser=w;var g=function(t){this.stream=t||new c,this.boxes=[],this.mdats=[],this.moofs=[],this.isProgressive=!1,this.moovStartFound=!1,this.onMoovStart=null,this.moovStartSent=!1,this.onReady=null,this.readySent=!1,this.onSegment=null,this.onSamples=null,this.onError=null,this.sampleListBuilt=!1,this.fragmentedTracks=[],this.extractedTracks=[],this.isFragmentationInitialized=!1,this.sampleProcessingStarted=!1,this.nextMoofNumber=0,this.itemListBuilt=!1,this.onSidx=null,this.sidxSent=!1};g.prototype.setSegmentOptions=function(t,e,i){var r=this.getTrackById(t);if(r){var a={};this.fragmentedTracks.push(a),a.id=t,a.user=e,a.trak=r,r.nextSample=0,a.segmentStream=null,a.nb_samples=1e3,a.rapAlignement=!0,i&&(i.nbSamples&&(a.nb_samples=i.nbSamples),i.rapAlignement&&(a.rapAlignement=i.rapAlignement))}},g.prototype.unsetSegmentOptions=function(t){for(var e=-1,i=0;i<this.fragmentedTracks.length;i++){var r=this.fragmentedTracks[i];r.id==t&&(e=i)}e>-1&&this.fragmentedTracks.splice(e,1)},g.prototype.setExtractionOptions=function(t,e,i){var r=this.getTrackById(t);if(r){var a={};this.extractedTracks.push(a),a.id=t,a.user=e,a.trak=r,r.nextSample=0,a.nb_samples=1e3,a.samples=[],i&&i.nbSamples&&(a.nb_samples=i.nbSamples)}},g.prototype.unsetExtractionOptions=function(t){for(var e=-1,i=0;i<this.extractedTracks.length;i++){var r=this.extractedTracks[i];r.id==t&&(e=i)}e>-1&&this.extractedTracks.splice(e,1)},g.prototype.parse=function(){var t,e,i=!1;if(!(this.restoreParsePosition&&!this.restoreParsePosition()))for(;;)if(this.hasIncompleteMdat&&this.hasIncompleteMdat()){if(this.processIncompleteMdat())continue;return}else if(this.saveParsePosition&&this.saveParsePosition(),t=s.parseOneBox(this.stream,i),t.code===s.ERR_NOT_ENOUGH_DATA)if(this.processIncompleteBox){if(this.processIncompleteBox(t))continue;return}else return;else{var r;switch(e=t.box,r=e.type!=="uuid"?e.type:e.uuid,this.boxes.push(e),r){case"mdat":this.mdats.push(e);break;case"moof":this.moofs.push(e);break;case"moov":this.moovStartFound=!0,this.mdats.length===0&&(this.isProgressive=!0);default:this[r]!==void 0&&n.warn("ISOFile","Duplicate Box of type: "+r+", overriding previous occurrence"),this[r]=e;break}this.updateUsedBytes&&this.updateUsedBytes(e,t)}},g.prototype.checkBuffer=function(t){if(t==null)throw"Buffer must be defined and non empty";if(t.fileStart===void 0)throw"Buffer must have a fileStart property";return t.byteLength===0?(n.warn("ISOFile","Ignoring empty buffer (fileStart: "+t.fileStart+")"),this.stream.logBufferLevel(),!1):(n.info("ISOFile","Processing buffer (fileStart: "+t.fileStart+")"),t.usedBytes=0,this.stream.insertBuffer(t),this.stream.logBufferLevel(),this.stream.initialized()?!0:(n.warn("ISOFile","Not ready to start parsing"),!1))},g.prototype.appendBuffer=function(t,e){var i;if(this.checkBuffer(t))return this.parse(),this.moovStartFound&&!this.moovStartSent&&(this.moovStartSent=!0,this.onMoovStart&&this.onMoovStart()),this.moov?(this.sampleListBuilt||(this.buildSampleLists(),this.sampleListBuilt=!0),this.updateSampleLists(),this.onReady&&!this.readySent&&(this.readySent=!0,this.onReady(this.getInfo())),this.processSamples(e),this.nextSeekPosition?(i=this.nextSeekPosition,this.nextSeekPosition=void 0):i=this.nextParsePosition,this.stream.getEndFilePositionAfter&&(i=this.stream.getEndFilePositionAfter(i))):this.nextParsePosition?i=this.nextParsePosition:i=0,this.sidx&&this.onSidx&&!this.sidxSent&&(this.onSidx(this.sidx),this.sidxSent=!0),this.meta&&(this.flattenItemInfo&&!this.itemListBuilt&&(this.flattenItemInfo(),this.itemListBuilt=!0),this.processItems&&this.processItems(this.onItem)),this.stream.cleanBuffers&&(n.info("ISOFile","Done processing buffer (fileStart: "+t.fileStart+") - next buffer to fetch should have a fileStart position of "+i),this.stream.logBufferLevel(),this.stream.cleanBuffers(),this.stream.logBufferLevel(!0),n.info("ISOFile","Sample data size in memory: "+this.getAllocatedSampleDataSize())),i},g.prototype.getInfo=function(){var t,e,i={},r,a,p,f,m=new Date("1904-01-01T00:00:00Z").getTime();if(this.moov)for(i.hasMoov=!0,i.duration=this.moov.mvhd.duration,i.timescale=this.moov.mvhd.timescale,i.isFragmented=this.moov.mvex!=null,i.isFragmented&&this.moov.mvex.mehd&&(i.fragment_duration=this.moov.mvex.mehd.fragment_duration),i.isProgressive=this.isProgressive,i.hasIOD=this.moov.iods!=null,i.brands=[],i.brands.push(this.ftyp.major_brand),i.brands=i.brands.concat(this.ftyp.compatible_brands),i.created=new Date(m+this.moov.mvhd.creation_time*1e3),i.modified=new Date(m+this.moov.mvhd.modification_time*1e3),i.tracks=[],i.audioTracks=[],i.videoTracks=[],i.subtitleTracks=[],i.metadataTracks=[],i.hintTracks=[],i.otherTracks=[],t=0;t<this.moov.traks.length;t++){if(r=this.moov.traks[t],f=r.mdia.minf.stbl.stsd.entries[0],a={},i.tracks.push(a),a.id=r.tkhd.track_id,a.name=r.mdia.hdlr.name,a.references=[],r.tref)for(e=0;e<r.tref.boxes.length;e++)p={},a.references.push(p),p.type=r.tref.boxes[e].type,p.track_ids=r.tref.boxes[e].track_ids;r.edts&&(a.edits=r.edts.elst.entries),a.created=new Date(m+r.tkhd.creation_time*1e3),a.modified=new Date(m+r.tkhd.modification_time*1e3),a.movie_duration=r.tkhd.duration,a.movie_timescale=i.timescale,a.layer=r.tkhd.layer,a.alternate_group=r.tkhd.alternate_group,a.volume=r.tkhd.volume,a.matrix=r.tkhd.matrix,a.track_width=r.tkhd.width/65536,a.track_height=r.tkhd.height/65536,a.timescale=r.mdia.mdhd.timescale,a.cts_shift=r.mdia.minf.stbl.cslg,a.duration=r.mdia.mdhd.duration,a.samples_duration=r.samples_duration,a.codec=f.getCodec(),a.kind=r.udta&&r.udta.kinds.length?r.udta.kinds[0]:{schemeURI:"",value:""},a.language=r.mdia.elng?r.mdia.elng.extended_language:r.mdia.mdhd.languageString,a.nb_samples=r.samples.length,a.size=r.samples_size,a.bitrate=a.size*8*a.timescale/a.samples_duration,f.isAudio()?(a.type="audio",i.audioTracks.push(a),a.audio={},a.audio.sample_rate=f.getSampleRate(),a.audio.channel_count=f.getChannelCount(),a.audio.sample_size=f.getSampleSize()):f.isVideo()?(a.type="video",i.videoTracks.push(a),a.video={},a.video.width=f.getWidth(),a.video.height=f.getHeight()):f.isSubtitle()?(a.type="subtitles",i.subtitleTracks.push(a)):f.isHint()?(a.type="metadata",i.hintTracks.push(a)):f.isMetadata()?(a.type="metadata",i.metadataTracks.push(a)):(a.type="metadata",i.otherTracks.push(a))}else i.hasMoov=!1;if(i.mime="",i.hasMoov&&i.tracks){for(i.videoTracks&&i.videoTracks.length>0?i.mime+='video/mp4; codecs="':i.audioTracks&&i.audioTracks.length>0?i.mime+='audio/mp4; codecs="':i.mime+='application/mp4; codecs="',t=0;t<i.tracks.length;t++)t!==0&&(i.mime+=","),i.mime+=i.tracks[t].codec;i.mime+='"; profiles="',i.mime+=this.ftyp.compatible_brands.join(),i.mime+='"'}return i},g.prototype.processSamples=function(t){var e,i;if(this.sampleProcessingStarted){if(this.isFragmentationInitialized&&this.onSegment!==null)for(e=0;e<this.fragmentedTracks.length;e++){var r=this.fragmentedTracks[e];for(i=r.trak;i.nextSample<i.samples.length&&this.sampleProcessingStarted;){n.debug("ISOFile","Creating media fragment on track #"+r.id+" for sample "+i.nextSample);var a=this.createFragment(r.id,i.nextSample,r.segmentStream);if(a)r.segmentStream=a,i.nextSample++;else break;if((i.nextSample%r.nb_samples===0||t||i.nextSample>=i.samples.length)&&(n.info("ISOFile","Sending fragmented data on track #"+r.id+" for samples ["+Math.max(0,i.nextSample-r.nb_samples)+","+(i.nextSample-1)+"]"),n.info("ISOFile","Sample data size in memory: "+this.getAllocatedSampleDataSize()),this.onSegment&&this.onSegment(r.id,r.user,r.segmentStream.buffer,i.nextSample,t||i.nextSample>=i.samples.length),r.segmentStream=null,r!==this.fragmentedTracks[e]))break}}if(this.onSamples!==null)for(e=0;e<this.extractedTracks.length;e++){var p=this.extractedTracks[e];for(i=p.trak;i.nextSample<i.samples.length&&this.sampleProcessingStarted;){n.debug("ISOFile","Exporting on track #"+p.id+" sample #"+i.nextSample);var f=this.getSample(i,i.nextSample);if(f)i.nextSample++,p.samples.push(f);else break;if((i.nextSample%p.nb_samples===0||i.nextSample>=i.samples.length)&&(n.debug("ISOFile","Sending samples on track #"+p.id+" for sample "+i.nextSample),this.onSamples&&this.onSamples(p.id,p.user,p.samples),p.samples=[],p!==this.extractedTracks[e]))break}}}},g.prototype.getBox=function(t){var e=this.getBoxes(t,!0);return e.length?e[0]:null},g.prototype.getBoxes=function(t,e){var i=[];return g._sweep.call(this,t,i,e),i},g._sweep=function(t,e,i){this.type&&this.type==t&&e.push(this);for(var r in this.boxes){if(e.length&&i)return;g._sweep.call(this.boxes[r],t,e,i)}},g.prototype.getTrackSamplesInfo=function(t){var e=this.getTrackById(t);if(e)return e.samples},g.prototype.getTrackSample=function(t,e){var i=this.getTrackById(t),r=this.getSample(i,e);return r},g.prototype.releaseUsedSamples=function(t,e){var i=0,r=this.getTrackById(t);r.lastValidSample||(r.lastValidSample=0);for(var a=r.lastValidSample;a<e;a++)i+=this.releaseSample(r,a);n.info("ISOFile","Track #"+t+" released samples up to "+e+" (released size: "+i+", remaining: "+this.samplesDataSize+")"),r.lastValidSample=e},g.prototype.start=function(){this.sampleProcessingStarted=!0,this.processSamples(!1)},g.prototype.stop=function(){this.sampleProcessingStarted=!1},g.prototype.flush=function(){n.info("ISOFile","Flushing remaining samples"),this.updateSampleLists(),this.processSamples(!0),this.stream.cleanBuffers(),this.stream.logBufferLevel(!0)},g.prototype.seekTrack=function(t,e,i){var r,a,p=1/0,f=0,m=0,_;if(i.samples.length===0)return n.info("ISOFile","No sample in track, cannot seek! Using time "+n.getDurationString(0,1)+" and offset: 0"),{offset:0,time:0};for(r=0;r<i.samples.length;r++){if(a=i.samples[r],r===0)m=0,_=a.timescale;else if(a.cts>t*a.timescale){m=r-1;break}e&&a.is_sync&&(f=r)}for(e&&(m=f),t=i.samples[m].cts,i.nextSample=m;i.samples[m].alreadyRead===i.samples[m].size&&i.samples[m+1];)m++;return p=i.samples[m].offset+i.samples[m].alreadyRead,n.info("ISOFile","Seeking to "+(e?"RAP":"")+" sample #"+i.nextSample+" on track "+i.tkhd.track_id+", time "+n.getDurationString(t,_)+" and offset: "+p),{offset:p,time:t/_}},g.prototype.seek=function(t,e){var i=this.moov,r,a,p,f={offset:1/0,time:1/0};if(this.moov){for(p=0;p<i.traks.length;p++)r=i.traks[p],a=this.seekTrack(t,e,r),a.offset<f.offset&&(f.offset=a.offset),a.time<f.time&&(f.time=a.time);return n.info("ISOFile","Seeking at time "+n.getDurationString(f.time,1)+" needs a buffer with a fileStart position of "+f.offset),f.offset===1/0?f={offset:this.nextParsePosition,time:0}:f.offset=this.stream.getEndFilePositionAfter(f.offset),n.info("ISOFile","Adjusted seek position (after checking data already in buffer): "+f.offset),f}else throw"Cannot seek: moov not received!"},g.prototype.equal=function(t){for(var e=0;e<this.boxes.length&&e<t.boxes.length;){var i=this.boxes[e],r=t.boxes[e];if(!s.boxEqual(i,r))return!1;e++}return!0},l.ISOFile=g,g.prototype.lastBoxStartPosition=0,g.prototype.parsingMdat=null,g.prototype.nextParsePosition=0,g.prototype.discardMdatData=!1,g.prototype.processIncompleteBox=function(t){var e,i,r;return t.type==="mdat"?(e=new s[t.type+"Box"](t.size),this.parsingMdat=e,this.boxes.push(e),this.mdats.push(e),e.start=t.start,e.hdr_size=t.hdr_size,this.stream.addUsedBytes(e.hdr_size),this.lastBoxStartPosition=e.start+e.size,r=this.stream.seek(e.start+e.size,!1,this.discardMdatData),r?(this.parsingMdat=null,!0):(this.moovStartFound?this.nextParsePosition=this.stream.findEndContiguousBuf():this.nextParsePosition=e.start+e.size,!1)):(t.type==="moov"&&(this.moovStartFound=!0,this.mdats.length===0&&(this.isProgressive=!0)),i=this.stream.mergeNextBuffer?this.stream.mergeNextBuffer():!1,i?(this.nextParsePosition=this.stream.getEndPosition(),!0):(t.type?this.moovStartFound?this.nextParsePosition=this.stream.getEndPosition():this.nextParsePosition=this.stream.getPosition()+t.size:this.nextParsePosition=this.stream.getEndPosition(),!1))},g.prototype.hasIncompleteMdat=function(){return this.parsingMdat!==null},g.prototype.processIncompleteMdat=function(){var t,e;return t=this.parsingMdat,e=this.stream.seek(t.start+t.size,!1,this.discardMdatData),e?(n.debug("ISOFile","Found 'mdat' end in buffered data"),this.parsingMdat=null,!0):(this.nextParsePosition=this.stream.findEndContiguousBuf(),!1)},g.prototype.restoreParsePosition=function(){return this.stream.seek(this.lastBoxStartPosition,!0,this.discardMdatData)},g.prototype.saveParsePosition=function(){this.lastBoxStartPosition=this.stream.getPosition()},g.prototype.updateUsedBytes=function(t,e){this.stream.addUsedBytes&&(t.type==="mdat"?(this.stream.addUsedBytes(t.hdr_size),this.discardMdatData&&this.stream.addUsedBytes(t.size-t.hdr_size)):this.stream.addUsedBytes(t.size))},g.prototype.add=s.Box.prototype.add,g.prototype.addBox=s.Box.prototype.addBox,g.prototype.init=function(t){var e=t||{};this.add("ftyp").set("major_brand",e.brands&&e.brands[0]||"iso4").set("minor_version",0).set("compatible_brands",e.brands||["iso4"]);var i=this.add("moov");return i.add("mvhd").set("timescale",e.timescale||600).set("rate",e.rate||65536).set("creation_time",0).set("modification_time",0).set("duration",e.duration||0).set("volume",e.width?0:256).set("matrix",[65536,0,0,0,65536,0,0,0,1073741824]).set("next_track_id",1),i.add("mvex"),this},g.prototype.addTrack=function(t){this.moov||this.init(t);var e=t||{};e.width=e.width||320,e.height=e.height||320,e.id=e.id||this.moov.mvhd.next_track_id,e.type=e.type||"avc1";var i=this.moov.add("trak");this.moov.mvhd.next_track_id=e.id+1,i.add("tkhd").set("flags",s.TKHD_FLAG_ENABLED|s.TKHD_FLAG_IN_MOVIE|s.TKHD_FLAG_IN_PREVIEW).set("creation_time",0).set("modification_time",0).set("track_id",e.id).set("duration",e.duration||0).set("layer",e.layer||0).set("alternate_group",0).set("volume",1).set("matrix",[0,0,0,0,0,0,0,0,0]).set("width",e.width<<16).set("height",e.height<<16);var r=i.add("mdia");r.add("mdhd").set("creation_time",0).set("modification_time",0).set("timescale",e.timescale||1).set("duration",e.media_duration||0).set("language",e.language||"und"),r.add("hdlr").set("handler",e.hdlr||"vide").set("name",e.name||"Track created with MP4Box.js"),r.add("elng").set("extended_language",e.language||"fr-FR");var a=r.add("minf");if(s[e.type+"SampleEntry"]!==void 0){var p=new s[e.type+"SampleEntry"];p.data_reference_index=1;var f="";for(var m in s.sampleEntryCodes)for(var _=s.sampleEntryCodes[m],v=0;v<_.length;v++)if(_.indexOf(e.type)>-1){f=m;break}switch(f){case"Visual":if(a.add("vmhd").set("graphicsmode",0).set("opcolor",[0,0,0]),p.set("width",e.width).set("height",e.height).set("horizresolution",72<<16).set("vertresolution",72<<16).set("frame_count",1).set("compressorname",e.type+" Compressor").set("depth",24),e.avcDecoderConfigRecord){var S=new s.avcCBox,E=new h(e.avcDecoderConfigRecord);S.parse(E),p.addBox(S)}break;case"Audio":a.add("smhd").set("balance",e.balance||0),p.set("channel_count",e.channel_count||2).set("samplesize",e.samplesize||16).set("samplerate",e.samplerate||65536);break;case"Hint":a.add("hmhd");break;case"Subtitle":(a.add("sthd"),e.type)==="stpp"&&p.set("namespace",e.namespace||"nonamespace").set("schema_location",e.schema_location||"").set("auxiliary_mime_types",e.auxiliary_mime_types||"");break;case"Metadata":a.add("nmhd");break;case"System":a.add("nmhd");break;default:a.add("nmhd");break}e.description&&p.addBox(e.description),e.description_boxes&&e.description_boxes.forEach(function(U){p.addBox(U)}),a.add("dinf").add("dref").addEntry(new s["url Box"]().set("flags",1));var z=a.add("stbl");return z.add("stsd").addEntry(p),z.add("stts").set("sample_counts",[]).set("sample_deltas",[]),z.add("stsc").set("first_chunk",[]).set("samples_per_chunk",[]).set("sample_description_index",[]),z.add("stco").set("chunk_offsets",[]),z.add("stsz").set("sample_sizes",[]),this.moov.mvex.add("trex").set("track_id",e.id).set("default_sample_description_index",e.default_sample_description_index||1).set("default_sample_duration",e.default_sample_duration||0).set("default_sample_size",e.default_sample_size||0).set("default_sample_flags",e.default_sample_flags||0),this.buildTrakSampleLists(i),e.id}},s.Box.prototype.computeSize=function(t){var e=t||new o;e.endianness=o.BIG_ENDIAN,this.write(e)},g.prototype.addSample=function(t,e,i){var r=i||{},a={},p=this.getTrackById(t);if(p!==null){a.number=p.samples.length,a.track_id=p.tkhd.track_id,a.timescale=p.mdia.mdhd.timescale,a.description_index=r.sample_description_index?r.sample_description_index-1:0,a.description=p.mdia.minf.stbl.stsd.entries[a.description_index],a.data=e,a.size=e.byteLength,a.alreadyRead=a.size,a.duration=r.duration||1,a.cts=r.cts||0,a.dts=r.dts||0,a.is_sync=r.is_sync||!1,a.is_leading=r.is_leading||0,a.depends_on=r.depends_on||0,a.is_depended_on=r.is_depended_on||0,a.has_redundancy=r.has_redundancy||0,a.degradation_priority=r.degradation_priority||0,a.offset=0,a.subsamples=r.subsamples,p.samples.push(a),p.samples_size+=a.size,p.samples_duration+=a.duration,p.first_dts||(p.first_dts=r.dts),this.processSamples();var f=this.createSingleSampleMoof(a);return this.addBox(f),f.computeSize(),f.trafs[0].truns[0].data_offset=f.size+8,this.add("mdat").data=new Uint8Array(e),a}},g.prototype.createSingleSampleMoof=function(t){var e=0;t.is_sync?e=1<<25:e=65536;var i=new s.moofBox;i.add("mfhd").set("sequence_number",this.nextMoofNumber),this.nextMoofNumber++;var r=i.add("traf"),a=this.getTrackById(t.track_id);return r.add("tfhd").set("track_id",t.track_id).set("flags",s.TFHD_FLAG_DEFAULT_BASE_IS_MOOF),r.add("tfdt").set("baseMediaDecodeTime",t.dts-(a.first_dts||0)),r.add("trun").set("flags",s.TRUN_FLAGS_DATA_OFFSET|s.TRUN_FLAGS_DURATION|s.TRUN_FLAGS_SIZE|s.TRUN_FLAGS_FLAGS|s.TRUN_FLAGS_CTS_OFFSET).set("data_offset",0).set("first_sample_flags",0).set("sample_count",1).set("sample_duration",[t.duration]).set("sample_size",[t.size]).set("sample_flags",[e]).set("sample_composition_time_offset",[t.cts-t.dts]),i},g.prototype.lastMoofIndex=0,g.prototype.samplesDataSize=0,g.prototype.resetTables=function(){var t,e,i,r,a,p,f,m;for(this.initial_duration=this.moov.mvhd.duration,this.moov.mvhd.duration=0,t=0;t<this.moov.traks.length;t++){e=this.moov.traks[t],e.tkhd.duration=0,e.mdia.mdhd.duration=0,i=e.mdia.minf.stbl.stco||e.mdia.minf.stbl.co64,i.chunk_offsets=[],r=e.mdia.minf.stbl.stsc,r.first_chunk=[],r.samples_per_chunk=[],r.sample_description_index=[],a=e.mdia.minf.stbl.stsz||e.mdia.minf.stbl.stz2,a.sample_sizes=[],p=e.mdia.minf.stbl.stts,p.sample_counts=[],p.sample_deltas=[],f=e.mdia.minf.stbl.ctts,f&&(f.sample_counts=[],f.sample_offsets=[]),m=e.mdia.minf.stbl.stss;var _=e.mdia.minf.stbl.boxes.indexOf(m);_!=-1&&(e.mdia.minf.stbl.boxes[_]=null)}},g.initSampleGroups=function(t,e,i,r,a){var p,f,m,_;function v(S,E,z){this.grouping_type=S,this.grouping_type_parameter=E,this.sbgp=z,this.last_sample_in_run=-1,this.entry_index=-1}for(e&&(e.sample_groups_info=[]),t.sample_groups_info||(t.sample_groups_info=[]),f=0;f<i.length;f++){for(_=i[f].grouping_type+"/"+i[f].grouping_type_parameter,m=new v(i[f].grouping_type,i[f].grouping_type_parameter,i[f]),e&&(e.sample_groups_info[_]=m),t.sample_groups_info[_]||(t.sample_groups_info[_]=m),p=0;p<r.length;p++)r[p].grouping_type===i[f].grouping_type&&(m.description=r[p],m.description.used=!0);if(a)for(p=0;p<a.length;p++)a[p].grouping_type===i[f].grouping_type&&(m.fragment_description=a[p],m.fragment_description.used=!0,m.is_fragment=!0)}if(e){if(a)for(f=0;f<a.length;f++)!a[f].used&&a[f].version>=2&&(_=a[f].grouping_type+"/0",m=new v(a[f].grouping_type,0),m.is_fragment=!0,e.sample_groups_info[_]||(e.sample_groups_info[_]=m))}else for(f=0;f<r.length;f++)!r[f].used&&r[f].version>=2&&(_=r[f].grouping_type+"/0",m=new v(r[f].grouping_type,0),t.sample_groups_info[_]||(t.sample_groups_info[_]=m))},g.setSampleGroupProperties=function(t,e,i,r){var a,p;e.sample_groups=[];for(a in r)if(e.sample_groups[a]={},e.sample_groups[a].grouping_type=r[a].grouping_type,e.sample_groups[a].grouping_type_parameter=r[a].grouping_type_parameter,i>=r[a].last_sample_in_run&&(r[a].last_sample_in_run<0&&(r[a].last_sample_in_run=0),r[a].entry_index++,r[a].entry_index<=r[a].sbgp.entries.length-1&&(r[a].last_sample_in_run+=r[a].sbgp.entries[r[a].entry_index].sample_count)),r[a].entry_index<=r[a].sbgp.entries.length-1?e.sample_groups[a].group_description_index=r[a].sbgp.entries[r[a].entry_index].group_description_index:e.sample_groups[a].group_description_index=-1,e.sample_groups[a].group_description_index!==0){var f;r[a].fragment_description?f=r[a].fragment_description:f=r[a].description,e.sample_groups[a].group_description_index>0?(e.sample_groups[a].group_description_index>65535?p=(e.sample_groups[a].group_description_index>>16)-1:p=e.sample_groups[a].group_description_index-1,f&&p>=0&&(e.sample_groups[a].description=f.entries[p])):f&&f.version>=2&&f.default_group_description_index>0&&(e.sample_groups[a].description=f.entries[f.default_group_description_index-1])}},g.process_sdtp=function(t,e,i){e&&(t?(e.is_leading=t.is_leading[i],e.depends_on=t.sample_depends_on[i],e.is_depended_on=t.sample_is_depended_on[i],e.has_redundancy=t.sample_has_redundancy[i]):(e.is_leading=0,e.depends_on=0,e.is_depended_on=0,e.has_redundancy=0))},g.prototype.buildSampleLists=function(){var t,e;for(t=0;t<this.moov.traks.length;t++)e=this.moov.traks[t],this.buildTrakSampleLists(e)},g.prototype.buildTrakSampleLists=function(t){var e,i,r,a,p,f,m,_,v,S,E,z,U,F,k,dt,bt,nt,N,Q,Lt,ee,J,wt;if(t.samples=[],t.samples_duration=0,t.samples_size=0,i=t.mdia.minf.stbl.stco||t.mdia.minf.stbl.co64,r=t.mdia.minf.stbl.stsc,a=t.mdia.minf.stbl.stsz||t.mdia.minf.stbl.stz2,p=t.mdia.minf.stbl.stts,f=t.mdia.minf.stbl.ctts,m=t.mdia.minf.stbl.stss,_=t.mdia.minf.stbl.stsd,v=t.mdia.minf.stbl.subs,z=t.mdia.minf.stbl.stdp,S=t.mdia.minf.stbl.sbgps,E=t.mdia.minf.stbl.sgpds,nt=-1,N=-1,Q=-1,Lt=-1,ee=0,J=0,wt=0,g.initSampleGroups(t,null,S,E),!(typeof a>"u")){for(e=0;e<a.sample_sizes.length;e++){var C={};C.number=e,C.track_id=t.tkhd.track_id,C.timescale=t.mdia.mdhd.timescale,C.alreadyRead=0,t.samples[e]=C,C.size=a.sample_sizes[e],t.samples_size+=C.size,e===0?(F=1,U=0,C.chunk_index=F,C.chunk_run_index=U,bt=r.samples_per_chunk[U],dt=0,U+1<r.first_chunk.length?k=r.first_chunk[U+1]-1:k=1/0):e<bt?(C.chunk_index=F,C.chunk_run_index=U):(F++,C.chunk_index=F,dt=0,F<=k||(U++,U+1<r.first_chunk.length?k=r.first_chunk[U+1]-1:k=1/0),C.chunk_run_index=U,bt+=r.samples_per_chunk[U]),C.description_index=r.sample_description_index[C.chunk_run_index]-1,C.description=_.entries[C.description_index],C.offset=i.chunk_offsets[C.chunk_index-1]+dt,dt+=C.size,e>nt&&(N++,nt<0&&(nt=0),nt+=p.sample_counts[N]),e>0?(t.samples[e-1].duration=p.sample_deltas[N],t.samples_duration+=t.samples[e-1].duration,C.dts=t.samples[e-1].dts+t.samples[e-1].duration):C.dts=0,f?(e>=Q&&(Lt++,Q<0&&(Q=0),Q+=f.sample_counts[Lt]),C.cts=t.samples[e].dts+f.sample_offsets[Lt]):C.cts=C.dts,m?(e==m.sample_numbers[ee]-1?(C.is_sync=!0,ee++):(C.is_sync=!1,C.degradation_priority=0),v&&v.entries[J].sample_delta+wt==e+1&&(C.subsamples=v.entries[J].subsamples,wt+=v.entries[J].sample_delta,J++)):C.is_sync=!0,g.process_sdtp(t.mdia.minf.stbl.sdtp,C,C.number),z?C.degradation_priority=z.priority[e]:C.degradation_priority=0,v&&v.entries[J].sample_delta+wt==e&&(C.subsamples=v.entries[J].subsamples,wt+=v.entries[J].sample_delta),(S.length>0||E.length>0)&&g.setSampleGroupProperties(t,C,e,t.sample_groups_info)}e>0&&(t.samples[e-1].duration=Math.max(t.mdia.mdhd.duration-t.samples[e-1].dts,0),t.samples_duration+=t.samples[e-1].duration)}},g.prototype.updateSampleLists=function(){var t,e,i,r,a,p,f,m,_,v,S,E,z,U,F;if(this.moov!==void 0){for(;this.lastMoofIndex<this.moofs.length;)if(_=this.moofs[this.lastMoofIndex],this.lastMoofIndex++,_.type=="moof")for(v=_,t=0;t<v.trafs.length;t++){for(S=v.trafs[t],E=this.getTrackById(S.tfhd.track_id),z=this.getTrexById(S.tfhd.track_id),S.tfhd.flags&s.TFHD_FLAG_SAMPLE_DESC?r=S.tfhd.default_sample_description_index:r=z?z.default_sample_description_index:1,S.tfhd.flags&s.TFHD_FLAG_SAMPLE_DUR?a=S.tfhd.default_sample_duration:a=z?z.default_sample_duration:0,S.tfhd.flags&s.TFHD_FLAG_SAMPLE_SIZE?p=S.tfhd.default_sample_size:p=z?z.default_sample_size:0,S.tfhd.flags&s.TFHD_FLAG_SAMPLE_FLAGS?f=S.tfhd.default_sample_flags:f=z?z.default_sample_flags:0,S.sample_number=0,S.sbgps.length>0&&g.initSampleGroups(E,S,S.sbgps,E.mdia.minf.stbl.sgpds,S.sgpds),e=0;e<S.truns.length;e++){var k=S.truns[e];for(i=0;i<k.sample_count;i++){U={},U.moof_number=this.lastMoofIndex,U.number_in_traf=S.sample_number,S.sample_number++,U.number=E.samples.length,S.first_sample_index=E.samples.length,E.samples.push(U),U.track_id=E.tkhd.track_id,U.timescale=E.mdia.mdhd.timescale,U.description_index=r-1,U.description=E.mdia.minf.stbl.stsd.entries[U.description_index],U.size=p,k.flags&s.TRUN_FLAGS_SIZE&&(U.size=k.sample_size[i]),E.samples_size+=U.size,U.duration=a,k.flags&s.TRUN_FLAGS_DURATION&&(U.duration=k.sample_duration[i]),E.samples_duration+=U.duration,E.first_traf_merged||i>0?U.dts=E.samples[E.samples.length-2].dts+E.samples[E.samples.length-2].duration:(S.tfdt?U.dts=S.tfdt.baseMediaDecodeTime:U.dts=0,E.first_traf_merged=!0),U.cts=U.dts,k.flags&s.TRUN_FLAGS_CTS_OFFSET&&(U.cts=U.dts+k.sample_composition_time_offset[i]),F=f,k.flags&s.TRUN_FLAGS_FLAGS?F=k.sample_flags[i]:i===0&&k.flags&s.TRUN_FLAGS_FIRST_FLAG&&(F=k.first_sample_flags),U.is_sync=!(F>>16&1),U.is_leading=F>>26&3,U.depends_on=F>>24&3,U.is_depended_on=F>>22&3,U.has_redundancy=F>>20&3,U.degradation_priority=F&65535;var dt=!!(S.tfhd.flags&s.TFHD_FLAG_BASE_DATA_OFFSET),bt=!!(S.tfhd.flags&s.TFHD_FLAG_DEFAULT_BASE_IS_MOOF),nt=!!(k.flags&s.TRUN_FLAGS_DATA_OFFSET),N=0;dt?N=S.tfhd.base_data_offset:bt||e===0?N=v.start:N=m,e===0&&i===0?nt?U.offset=N+k.data_offset:U.offset=N:U.offset=m,m=U.offset+U.size,(S.sbgps.length>0||S.sgpds.length>0||E.mdia.minf.stbl.sbgps.length>0||E.mdia.minf.stbl.sgpds.length>0)&&g.setSampleGroupProperties(E,U,U.number_in_traf,S.sample_groups_info)}}if(S.subs){E.has_fragment_subsamples=!0;var Q=S.first_sample_index;for(e=0;e<S.subs.entries.length;e++)Q+=S.subs.entries[e].sample_delta,U=E.samples[Q-1],U.subsamples=S.subs.entries[e].subsamples}}}},g.prototype.getSample=function(t,e){var i,r=t.samples[e];if(!this.moov)return null;if(!r.data)r.data=new Uint8Array(r.size),r.alreadyRead=0,this.samplesDataSize+=r.size,n.debug("ISOFile","Allocating sample #"+e+" on track #"+t.tkhd.track_id+" of size "+r.size+" (total: "+this.samplesDataSize+")");else if(r.alreadyRead==r.size)return r;for(;;){var a=this.stream.findPosition(!0,r.offset+r.alreadyRead,!1);if(a>-1){i=this.stream.buffers[a];var p=i.byteLength-(r.offset+r.alreadyRead-i.fileStart);if(r.size-r.alreadyRead<=p)return n.debug("ISOFile","Getting sample #"+e+" data (alreadyRead: "+r.alreadyRead+" offset: "+(r.offset+r.alreadyRead-i.fileStart)+" read size: "+(r.size-r.alreadyRead)+" full size: "+r.size+")"),o.memcpy(r.data.buffer,r.alreadyRead,i,r.offset+r.alreadyRead-i.fileStart,r.size-r.alreadyRead),i.usedBytes+=r.size-r.alreadyRead,this.stream.logBufferLevel(),r.alreadyRead=r.size,r;if(p===0)return null;n.debug("ISOFile","Getting sample #"+e+" partial data (alreadyRead: "+r.alreadyRead+" offset: "+(r.offset+r.alreadyRead-i.fileStart)+" read size: "+p+" full size: "+r.size+")"),o.memcpy(r.data.buffer,r.alreadyRead,i,r.offset+r.alreadyRead-i.fileStart,p),r.alreadyRead+=p,i.usedBytes+=p,this.stream.logBufferLevel()}else return null}},g.prototype.releaseSample=function(t,e){var i=t.samples[e];return i.data?(this.samplesDataSize-=i.size,i.data=null,i.alreadyRead=0,i.size):0},g.prototype.getAllocatedSampleDataSize=function(){return this.samplesDataSize},g.prototype.getCodecs=function(){var t,e="";for(t=0;t<this.moov.traks.length;t++){var i=this.moov.traks[t];t>0&&(e+=","),e+=i.mdia.minf.stbl.stsd.entries[0].getCodec()}return e},g.prototype.getTrexById=function(t){var e;if(!this.moov||!this.moov.mvex)return null;for(e=0;e<this.moov.mvex.trexs.length;e++){var i=this.moov.mvex.trexs[e];if(i.track_id==t)return i}return null},g.prototype.getTrackById=function(t){if(this.moov===void 0)return null;for(var e=0;e<this.moov.traks.length;e++){var i=this.moov.traks[e];if(i.tkhd.track_id==t)return i}return null},g.prototype.items=[],g.prototype.itemsDataSize=0,g.prototype.flattenItemInfo=function(){var t=this.items,e,i,r,a=this.meta;if(a!=null&&a.hdlr!==void 0&&a.iinf!==void 0){for(e=0;e<a.iinf.item_infos.length;e++)r={},r.id=a.iinf.item_infos[e].item_ID,t[r.id]=r,r.ref_to=[],r.name=a.iinf.item_infos[e].item_name,a.iinf.item_infos[e].protection_index>0&&(r.protection=a.ipro.protections[a.iinf.item_infos[e].protection_index-1]),a.iinf.item_infos[e].item_type?r.type=a.iinf.item_infos[e].item_type:r.type="mime",r.content_type=a.iinf.item_infos[e].content_type,r.content_encoding=a.iinf.item_infos[e].content_encoding;if(a.iloc)for(e=0;e<a.iloc.items.length;e++){var p=a.iloc.items[e];switch(r=t[p.item_ID],p.data_reference_index!==0&&(n.warn("Item storage with reference to other files: not supported"),r.source=a.dinf.boxes[p.data_reference_index-1]),p.construction_method){case 0:break;case 1:n.warn("Item storage with construction_method : not supported");break;case 2:n.warn("Item storage with construction_method : not supported");break}for(r.extents=[],r.size=0,i=0;i<p.extents.length;i++)r.extents[i]={},r.extents[i].offset=p.extents[i].extent_offset+p.base_offset,r.extents[i].length=p.extents[i].extent_length,r.extents[i].alreadyRead=0,r.size+=r.extents[i].length}if(a.pitm&&(t[a.pitm.item_id].primary=!0),a.iref)for(e=0;e<a.iref.references.length;e++){var f=a.iref.references[e];for(i=0;i<f.references.length;i++)t[f.from_item_ID].ref_to.push({type:f.type,id:f.references[i]})}if(a.iprp)for(var m=0;m<a.iprp.ipmas.length;m++){var _=a.iprp.ipmas[m];for(e=0;e<_.associations.length;e++){var v=_.associations[e];for(r=t[v.id],r.properties===void 0&&(r.properties={},r.properties.boxes=[]),i=0;i<v.props.length;i++){var S=v.props[i];if(S.property_index>0&&S.property_index-1<a.iprp.ipco.boxes.length){var E=a.iprp.ipco.boxes[S.property_index-1];r.properties[E.type]=E,r.properties.boxes.push(E)}}}}}},g.prototype.getItem=function(t){var e,i;if(!this.meta)return null;if(i=this.items[t],!i.data&&i.size)i.data=new Uint8Array(i.size),i.alreadyRead=0,this.itemsDataSize+=i.size,n.debug("ISOFile","Allocating item #"+t+" of size "+i.size+" (total: "+this.itemsDataSize+")");else if(i.alreadyRead===i.size)return i;for(var r=0;r<i.extents.length;r++){var a=i.extents[r];if(a.alreadyRead!==a.length){var p=this.stream.findPosition(!0,a.offset+a.alreadyRead,!1);if(p>-1){e=this.stream.buffers[p];var f=e.byteLength-(a.offset+a.alreadyRead-e.fileStart);if(a.length-a.alreadyRead<=f)n.debug("ISOFile","Getting item #"+t+" extent #"+r+" data (alreadyRead: "+a.alreadyRead+" offset: "+(a.offset+a.alreadyRead-e.fileStart)+" read size: "+(a.length-a.alreadyRead)+" full extent size: "+a.length+" full item size: "+i.size+")"),o.memcpy(i.data.buffer,i.alreadyRead,e,a.offset+a.alreadyRead-e.fileStart,a.length-a.alreadyRead),e.usedBytes+=a.length-a.alreadyRead,this.stream.logBufferLevel(),i.alreadyRead+=a.length-a.alreadyRead,a.alreadyRead=a.length;else return n.debug("ISOFile","Getting item #"+t+" extent #"+r+" partial data (alreadyRead: "+a.alreadyRead+" offset: "+(a.offset+a.alreadyRead-e.fileStart)+" read size: "+f+" full extent size: "+a.length+" full item size: "+i.size+")"),o.memcpy(i.data.buffer,i.alreadyRead,e,a.offset+a.alreadyRead-e.fileStart,f),a.alreadyRead+=f,i.alreadyRead+=f,e.usedBytes+=f,this.stream.logBufferLevel(),null}else return null}}return i.alreadyRead===i.size?i:null},g.prototype.releaseItem=function(t){var e=this.items[t];if(e.data){this.itemsDataSize-=e.size,e.data=null,e.alreadyRead=0;for(var i=0;i<e.extents.length;i++){var r=e.extents[i];r.alreadyRead=0}return e.size}else return 0},g.prototype.processItems=function(t){for(var e in this.items){var i=this.items[e];this.getItem(i.id),t&&!i.sent&&(t(i),i.sent=!0,i.data=null)}},g.prototype.hasItem=function(t){for(var e in this.items){var i=this.items[e];if(i.name===t)return i.id}return-1},g.prototype.getMetaHandler=function(){return this.meta?this.meta.hdlr.handler:null},g.prototype.getPrimaryItem=function(){return!this.meta||!this.meta.pitm?null:this.getItem(this.meta.pitm.item_id)},g.prototype.itemToFragmentedTrackFile=function(t){var e=t||{},i=null;if(e.itemId?i=this.getItem(e.itemId):i=this.getPrimaryItem(),i==null)return null;var r=new g;r.discardMdatData=!1;var a={type:i.type,description_boxes:i.properties.boxes};i.properties.ispe&&(a.width=i.properties.ispe.image_width,a.height=i.properties.ispe.image_height);var p=r.addTrack(a);return p?(r.addSample(p,i.data),r):null},g.prototype.write=function(t){for(var e=0;e<this.boxes.length;e++)this.boxes[e].write(t)},g.prototype.createFragment=function(t,e,i){var r=this.getTrackById(t),a=this.getSample(r,e);if(a==null)return a=r.samples[e],this.nextSeekPosition?this.nextSeekPosition=Math.min(a.offset+a.alreadyRead,this.nextSeekPosition):this.nextSeekPosition=r.samples[e].offset+a.alreadyRead,null;var p=i||new o;p.endianness=o.BIG_ENDIAN;var f=this.createSingleSampleMoof(a);f.write(p),f.trafs[0].truns[0].data_offset=f.size+8,n.debug("MP4Box","Adjusting data_offset with new value "+f.trafs[0].truns[0].data_offset),p.adjustUint32(f.trafs[0].truns[0].data_offset_position,f.trafs[0].truns[0].data_offset);var m=new s.mdatBox;return m.data=a.data,m.write(p),p},g.writeInitializationSegment=function(t,e,i,r){var a;n.debug("ISOFile","Generating initialization segment");var p=new o;p.endianness=o.BIG_ENDIAN,t.write(p);var f=e.add("mvex");for(i&&f.add("mehd").set("fragment_duration",i),a=0;a<e.traks.length;a++)f.add("trex").set("track_id",e.traks[a].tkhd.track_id).set("default_sample_description_index",1).set("default_sample_duration",r).set("default_sample_size",0).set("default_sample_flags",65536);return e.write(p),p.buffer},g.prototype.save=function(t){var e=new o;e.endianness=o.BIG_ENDIAN,this.write(e),e.save(t)},g.prototype.getBuffer=function(){var t=new o;return t.endianness=o.BIG_ENDIAN,this.write(t),t.buffer},g.prototype.initializeSegmentation=function(){var t,e,i,r;for(this.onSegment===null&&n.warn("MP4Box","No segmentation callback set!"),this.isFragmentationInitialized||(this.isFragmentationInitialized=!0,this.nextMoofNumber=0,this.resetTables()),e=[],t=0;t<this.fragmentedTracks.length;t++){var a=new s.moovBox;a.mvhd=this.moov.mvhd,a.boxes.push(a.mvhd),i=this.getTrackById(this.fragmentedTracks[t].id),a.boxes.push(i),a.traks.push(i),r={},r.id=i.tkhd.track_id,r.user=this.fragmentedTracks[t].user,r.buffer=g.writeInitializationSegment(this.ftyp,a,this.moov.mvex&&this.moov.mvex.mehd?this.moov.mvex.mehd.fragment_duration:void 0,this.moov.traks[t].samples.length>0?this.moov.traks[t].samples[0].duration:0),e.push(r)}return e},s.Box.prototype.printHeader=function(t){this.size+=8,this.size>d&&(this.size+=8),this.type==="uuid"&&(this.size+=16),t.log(t.indent+"size:"+this.size),t.log(t.indent+"type:"+this.type)},s.FullBox.prototype.printHeader=function(t){this.size+=4,s.Box.prototype.printHeader.call(this,t),t.log(t.indent+"version:"+this.version),t.log(t.indent+"flags:"+this.flags)},s.Box.prototype.print=function(t){this.printHeader(t)},s.ContainerBox.prototype.print=function(t){this.printHeader(t);for(var e=0;e<this.boxes.length;e++)if(this.boxes[e]){var i=t.indent;t.indent+=" ",this.boxes[e].print(t),t.indent=i}},g.prototype.print=function(t){t.indent="";for(var e=0;e<this.boxes.length;e++)this.boxes[e]&&this.boxes[e].print(t)},s.mvhdBox.prototype.print=function(t){s.FullBox.prototype.printHeader.call(this,t),t.log(t.indent+"creation_time: "+this.creation_time),t.log(t.indent+"modification_time: "+this.modification_time),t.log(t.indent+"timescale: "+this.timescale),t.log(t.indent+"duration: "+this.duration),t.log(t.indent+"rate: "+this.rate),t.log(t.indent+"volume: "+(this.volume>>8)),t.log(t.indent+"matrix: "+this.matrix.join(", ")),t.log(t.indent+"next_track_id: "+this.next_track_id)},s.tkhdBox.prototype.print=function(t){s.FullBox.prototype.printHeader.call(this,t),t.log(t.indent+"creation_time: "+this.creation_time),t.log(t.indent+"modification_time: "+this.modification_time),t.log(t.indent+"track_id: "+this.track_id),t.log(t.indent+"duration: "+this.duration),t.log(t.indent+"volume: "+(this.volume>>8)),t.log(t.indent+"matrix: "+this.matrix.join(", ")),t.log(t.indent+"layer: "+this.layer),t.log(t.indent+"alternate_group: "+this.alternate_group),t.log(t.indent+"width: "+this.width),t.log(t.indent+"height: "+this.height)};var x={};x.createFile=function(t,e){var i=t!==void 0?t:!0,r=new g(e);return r.discardMdatData=!i,r},l.createFile=x.createFile})(je);var L=Ai(je),K={sampleRate:48e3,channelCount:2,codec:"mp4a.40.2"};function ye(l,n){let h=n.videoTracks[0],o={};if(h!=null){let c=Bi(l.getTrackById(h.id)).buffer,{descKey:u,type:s}=h.codec.startsWith("avc1")?{descKey:"avcDecoderConfigRecord",type:"avc1"}:h.codec.startsWith("hvc1")?{descKey:"hevcDecoderConfigRecord",type:"hvc1"}:{descKey:"",type:""};u!==""&&(o.videoTrackConf={timescale:h.timescale,duration:h.duration,width:h.video.width,height:h.video.height,brands:n.brands,type:s,[u]:c}),o.videoDecoderConf={codec:h.codec,codedHeight:h.video.height,codedWidth:h.video.width,description:c}}let d=n.audioTracks[0];if(d!=null){let c=Ae(l);o.audioTrackConf={timescale:d.timescale,samplerate:d.audio.sample_rate,channel_count:d.audio.channel_count,hdlr:"soun",type:d.codec.startsWith("mp4a")?"mp4a":d.codec,description:Ae(l)},o.audioDecoderConf={codec:d.codec.startsWith("mp4a")?K.codec:d.codec,numberOfChannels:d.audio.channel_count,sampleRate:d.audio.sample_rate,...c==null?{}:Ci(c)}}return o}function Bi(l){for(let n of l.mdia.minf.stbl.stsd.entries){let h=n.avcC??n.hvcC??n.vpcC;if(h!=null){let o=new L.DataStream(void 0,0,L.DataStream.BIG_ENDIAN);return h.write(o),new Uint8Array(o.buffer.slice(8))}}throw Error("avcC, hvcC or VPX not found")}function Ae(l,n="mp4a"){var h;let o=(h=l.moov)==null?void 0:h.traks.map(d=>d.mdia.minf.stbl.stsd.entries).flat().find(({type:d})=>d===n);return o?.esds}function Ci(l){var n;let h=(n=l.esd.descs[0])==null?void 0:n.descs[0];if(h==null)return{};let[o,d]=h.data,c=((o&7)<<1)+(d>>7),u=(d&127)>>3;return{sampleRate:[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350][c],numberOfChannels:u}}function Ii(l){if(l.moov!=null){for(var n=0;n<l.moov.traks.length;n++)l.moov.traks[n].samples=[];l.mdats=[],l.moofs=[]}}var Et,kt=class{constructor(){O(this,"readable"),O(this,"writable"),B(this,Et,0);let n=L.createFile(),h=!1;this.readable=new ReadableStream({start:o=>{n.onReady=c=>{var u,s;let y=(u=c.videoTracks[0])==null?void 0:u.id;y!=null&&n.setExtractionOptions(y,"video",{nbSamples:100});let w=(s=c.audioTracks[0])==null?void 0:s.id;w!=null&&n.setExtractionOptions(w,"audio",{nbSamples:100}),o.enqueue({chunkType:"ready",data:{info:c,file:n}}),n.start()};let d={};n.onSamples=(c,u,s)=>{o.enqueue({chunkType:"samples",data:{id:c,type:u,samples:s.map(y=>({...y}))}}),d[c]=(d[c]??0)+s.length,n.releaseUsedSamples(c,d[c])},n.onFlush=()=>{o.close()}},cancel:()=>{n.stop(),h=!0}},{highWaterMark:50}),this.writable=new WritableStream({write:async o=>{if(h){this.writable.abort();return}let d=o.buffer;d.fileStart=b(this,Et),A(this,Et,b(this,Et)+d.byteLength),n.appendBuffer(d)},close:()=>{var o;n.flush(),n.stop(),(o=n.onFlush)==null||o.call(n)}})}};Et=new WeakMap;var zi=0;function se(l){return l.kind==="file"&&l.createReader instanceof Function}var Gt,Yt,H,q,Ht,at,At,Bt,Ct,V,tt,Be=class{constructor(n,h={}){if(B(this,Gt,T.create(`MP4Clip id:${zi++},`)),O(this,"ready"),B(this,Yt,!1),B(this,H,{duration:0,width:0,height:0,audioSampleRate:0,audioChanCount:0}),B(this,q),B(this,Ht,1),B(this,at,[]),B(this,At,null),B(this,Bt,null),B(this,Ct,{video:null,audio:null}),B(this,V,{audio:!0}),O(this,"tickInterceptor",async(d,c)=>c),B(this,tt,new AbortController),!(n instanceof ReadableStream)&&!se(n)&&!Array.isArray(n.videoSamples))throw Error("Illegal argument");A(this,V,{audio:!0,...h}),A(this,Ht,typeof h.audio=="object"&&"volume"in h.audio?h.audio.volume:1);let o=async d=>(await zt(b(this,q),d),await b(this,q).stream());A(this,q,se(n)?n:"localFile"in n?n.localFile:$t()),this.ready=(n instanceof ReadableStream?o(n).then(d=>Ce(d,b(this,V))):se(n)?n.stream().then(d=>Ce(d,b(this,V))):Promise.resolve(n)).then(async({videoSamples:d,audioSamples:c,decoderConf:u})=>{A(this,at,d),A(this,Ct,u);let{videoFrameFinder:s,audioFrameFinder:y}=ki({video:u.video==null?null:{...u.video,hardwareAcceleration:b(this,V).__unsafe_hardwareAcceleration__},audio:u.audio},await b(this,q).createReader(),d,c,b(this,V).audio!==!1?b(this,Ht):0);return A(this,At,s),A(this,Bt,y),A(this,H,Ti(u,d,c)),b(this,Gt).info("MP4Clip meta:",b(this,H)),{...b(this,H)}})}get meta(){return{...b(this,H)}}async tick(n){var h,o;if(n>=b(this,H).duration)return await this.tickInterceptor(n,{audio:[],state:"done"});let[d,c]=await Promise.all([((h=b(this,Bt))==null?void 0:h.find(n))??[],(o=b(this,At))==null?void 0:o.find(n)]);return c==null?await this.tickInterceptor(n,{audio:d,state:"success"}):await this.tickInterceptor(n,{video:c,audio:d,state:"success"})}async thumbnails(n=100,h){b(this,tt).abort(),A(this,tt,new AbortController);let o=b(this,tt).signal;await this.ready;let d="generate thumbnails aborted";if(o.aborted)throw Error(d);let{width:c,height:u}=b(this,H),s=Ie(n,Math.round(u*(n/c)),{quality:.1,type:"image/png"});return new Promise(async(y,w)=>{let g=[],x=b(this,Ct).video;if(x==null||b(this,at).length===0){t();return}o.addEventListener("abort",()=>{w(Error(d))});async function t(){o.aborted||y(await Promise.all(g.map(async m=>({ts:m.ts,img:await m.img}))))}function e(m){g.push({ts:m.timestamp,img:s(m)})}let{start:i=0,end:r=b(this,H).duration,step:a=1e6}=h??{},p=i,f=new Ft(await b(this,q).createReader(),b(this,at),{...x,hardwareAcceleration:b(this,V).__unsafe_hardwareAcceleration__});for(;p<=r&&!o.aborted;){let m=await f.find(p);m&&e(m),p+=a}f.destroy(),t()})}async thumbnailsList(n=100,h){var o;if(((o=h?.timestamps)==null?void 0:o.length)===0)return[];b(this,tt).abort(),A(this,tt,new AbortController);let d=b(this,tt).signal;await this.ready;let c="generate thumbnails aborted";if(d.aborted)throw Error(c);let{width:u,height:s}=b(this,H),y=Ie(n,Math.round(s*(n/u)),{quality:.1,type:"image/png"});return new Promise(async(w,g)=>{let x=[],t=b(this,Ct).video;if(t==null||b(this,at).length===0){e();return}d.addEventListener("abort",()=>{g(Error(c))});async function e(){d.aborted||w(await Promise.all(x.map(async p=>({ts:p.ts,img:await p.img}))))}function i(p){x.push({ts:p.timestamp,img:y(p)})}let r=h?.timestamps??[];if(r.length===0){e();return}let a=new Ft(await b(this,q).createReader(),b(this,at),{...t,hardwareAcceleration:b(this,V).__unsafe_hardwareAcceleration__});for(let p of r){if(d.aborted)break;let f=await a.find(p);f&&i(f)}a.destroy(),e()})}destroy(){var n,h;b(this,Yt)||(b(this,Gt).info("MP4Clip destroy"),A(this,Yt,!0),(n=b(this,At))==null||n.destroy(),(h=b(this,Bt))==null||h.destroy())}};Gt=new WeakMap,Yt=new WeakMap,H=new WeakMap,q=new WeakMap,Ht=new WeakMap,at=new WeakMap,At=new WeakMap,Bt=new WeakMap,Ct=new WeakMap,V=new WeakMap,tt=new WeakMap;function Ti(l,n,h){let o={duration:0,width:0,height:0,audioSampleRate:0,audioChanCount:0};l.video!=null&&n.length>0&&(o.width=l.video.codedWidth??0,o.height=l.video.codedHeight??0),l.audio!=null&&h.length>0&&(o.audioSampleRate=K.sampleRate,o.audioChanCount=K.channelCount);let d=0,c=0;if(n.length>0)for(let u=n.length-1;u>=0;u--){let s=n[u];if(!s.deleted){d=s.cts+s.duration;break}}if(h.length>0){let u=h.at(-1);c=u.cts+u.duration}return o.duration=Math.max(d,c),o}function ki(l,n,h,o,d){return{audioFrameFinder:d===0||l.audio==null||o.length===0?null:new fe(n,o,l.audio,{volume:d,targetSampleRate:K.sampleRate}),videoFrameFinder:l.video==null||h.length===0?null:new Ft(n,h,l.video)}}async function Ce(l,n={}){let h,o={video:null,audio:null},d=[],c=[];return new Promise(async(s,y)=>{let w=-1,g=-1,x=ge(l.pipeThrough(new kt),{onChunk:async({chunkType:t,data:e})=>{if(t==="ready"){h=e.info;let{videoDecoderConf:i,audioDecoderConf:r}=ye(e.file,e.info);o.video=i??null,o.audio=r??null,i==null&&r==null&&(x(),y(Error("MP4Clip must contain at least one video or audio track"))),T.info("mp4BoxFile moov ready",{...e.info,tracks:null,videoTracks:null,audioTracks:null},o)}else if(t==="samples"){if(e.type==="video"){w===-1&&(w=e.samples[0].dts);for(let i of e.samples)d.push(u(i,w,"video"))}else if(e.type==="audio"&&n.audio){g===-1&&(g=e.samples[0].dts);for(let i of e.samples)c.push(u(i,g,"audio"))}}},onDone:()=>{let t=d.at(-1)??c.at(-1);if(h==null){y(Error("MP4Clip stream is done, but not emit ready"));return}else if(t==null){y(Error("MP4Clip stream not contain any sample"));return}let e=d[0];e!=null&&e.cts<2e5&&(e.duration+=e.cts,e.cts=0),T.info("mp4 stream parsed"),s({videoSamples:d,audioSamples:c,decoderConf:o})}})});function u(s,y=0,w){return{...s,is_idr:w==="video"&&s.is_sync&&Mi(s.data,s.description.type),cts:(s.cts-y)/s.timescale*1e6,dts:(s.dts-y)/s.timescale*1e6,duration:s.duration/s.timescale*1e6,timescale:1e6,data:w==="video"?null:s.data}}}var P,pt,ft,Vt,ut,W,R,et,ot,It,ht,Wt,mt,de,Ft=class{constructor(n,h,o){B(this,P,null),B(this,pt,0),B(this,ft,{abort:!1,st:performance.now()}),O(this,"find",async d=>((b(this,P)==null||d<=b(this,pt)||d-b(this,pt)>3e6)&&b(this,mt).call(this,d),b(this,ft).abort=!0,A(this,pt,d),A(this,ft,{abort:!1,st:performance.now()}),await b(this,It).call(this,d,b(this,P),b(this,ft)))),B(this,Vt,0),B(this,ut,!1),B(this,W,0),B(this,R,[]),B(this,et,0),B(this,ot,0),B(this,It,async(d,c,u)=>{if(c==null||c.state==="closed"||u.abort)return null;if(b(this,R).length>0){let s=b(this,R)[0];return d<s.timestamp?null:(b(this,R).shift(),d>s.timestamp+(s.duration??0)?(s.close(),await b(this,It).call(this,d,c,u)):(b(this,R).length<10&&b(this,Wt).call(this,c).catch(y=>{throw b(this,mt).call(this,d),y}),s))}if(b(this,ht)||b(this,et)<b(this,ot)&&c.decodeQueueSize>0){if(performance.now()-u.st>6e3)throw Error(`MP4Clip.tick video timeout, ${JSON.stringify(b(this,de).call(this))}`);await Ze(15)}else{if(b(this,W)>=this.samples.length)return null;try{await b(this,Wt).call(this,c)}catch(s){throw b(this,mt).call(this,d),s}}return await b(this,It).call(this,d,c,u)}),B(this,ht,!1),B(this,Wt,async d=>{var c,u;if(b(this,ht))return;A(this,ht,!0);let s=b(this,W)+1,y=!1;for(;s<this.samples.length;s++){let w=this.samples[s];if(!y&&!w.deleted&&(y=!0),w.is_idr)break}if(y){let w=this.samples.slice(b(this,W),s);if(((c=w[0])==null?void 0:c.is_idr)!==!0)T.warn("First sample not idr frame");else{let g=await Ri(w,this.localFileReader);if(d.state==="closed")return;A(this,Vt,((u=g[0])==null?void 0:u.duration)??0),Di(d,g,{onDecodingError:x=>{if(b(this,ut))throw x;b(this,et)===0&&(A(this,ut,!0),T.warn("Downgrade to software decode"),b(this,mt).call(this))}}),A(this,ot,b(this,ot)+g.length)}}A(this,W,s),A(this,ht,!1)}),B(this,mt,d=>{var c,u;if(A(this,ht,!1),b(this,R).forEach(s=>s.close()),A(this,R,[]),d==null||d===0)A(this,W,0);else{let s=0;for(let y=0;y<this.samples.length;y++){let w=this.samples[y];if(w.is_idr&&(s=y),!(w.cts<d)){A(this,W,s);break}}}A(this,ot,0),A(this,et,0),((c=b(this,P))==null?void 0:c.state)!=="closed"&&((u=b(this,P))==null||u.close()),A(this,P,new VideoDecoder({output:s=>{if(A(this,et,b(this,et)+1),s.timestamp===-1){s.close();return}let y=s;s.duration==null&&(y=new VideoFrame(s,{duration:b(this,Vt)}),s.close()),b(this,R).push(y)},error:s=>{T.error(`MP4Clip VideoDecoder err: ${s.message}`)}})),b(this,P).configure({...this.conf,...b(this,ut)?{hardwareAcceleration:"prefer-software"}:{}})}),B(this,de,()=>{var d,c;return{time:b(this,pt),decState:(d=b(this,P))==null?void 0:d.state,decQSize:(c=b(this,P))==null?void 0:c.decodeQueueSize,decCusorIdx:b(this,W),sampleLen:this.samples.length,inputCnt:b(this,ot),outputCnt:b(this,et),cacheFrameLen:b(this,R).length,softDeocde:b(this,ut)}}),O(this,"destroy",()=>{var d,c;((d=b(this,P))==null?void 0:d.state)!=="closed"&&((c=b(this,P))==null||c.close()),A(this,P,null),b(this,ft).abort=!0,b(this,R).forEach(u=>u.close()),A(this,R,[]),this.localFileReader.close()}),this.localFileReader=n,this.samples=h,this.conf=o}};P=new WeakMap,pt=new WeakMap,ft=new WeakMap,Vt=new WeakMap,ut=new WeakMap,W=new WeakMap,R=new WeakMap,et=new WeakMap,ot=new WeakMap,It=new WeakMap,ht=new WeakMap,Wt=new WeakMap,mt=new WeakMap,de=new WeakMap;var Zt,jt,Z,_t,j,it,X,Xt,Kt,ce,pe,fe=class{constructor(n,h,o,d){B(this,Zt,1),B(this,jt),B(this,Z,null),B(this,_t,{abort:!1,st:performance.now()}),O(this,"find",async c=>{if(b(this,Z)==null||c<=b(this,j)||c-b(this,j)>1e5){b(this,ce).call(this),A(this,j,c);for(let s=0;s<this.samples.length;s++)if(!(this.samples[s].cts<c)){A(this,it,s);break}return[]}b(this,_t).abort=!0;let u=c-b(this,j);return A(this,j,c),A(this,_t,{abort:!1,st:performance.now()}),await b(this,Xt).call(this,u,b(this,Z),b(this,_t))}),B(this,j,0),B(this,it,0),B(this,X,{frameCnt:0,data:[]}),B(this,Xt,async(c,u=null,s)=>{if(u==null||s.abort||u.state==="closed")return[];let y=Math.ceil(c*(b(this,jt)/1e6));if(y===0)return[];let w=b(this,X).frameCnt-y;if(w>0)return w<K.sampleRate/10&&b(this,Kt).call(this,u),Li(b(this,X),y);if(u.decodeQueueSize>10){if(performance.now()-s.st>3e3)throw s.abort=!0,Error(`MP4Clip.tick audio timeout, ${JSON.stringify(b(this,pe).call(this))}`);await Ze(15)}else{if(b(this,it)>=this.samples.length-1)return[];b(this,Kt).call(this,u)}return b(this,Xt).call(this,c,u,s)}),B(this,Kt,c=>{if(c.decodeQueueSize>100)return;let u=[],s=b(this,it);for(;s<this.samples.length;){let y=this.samples[s];if(s+=1,!y.deleted&&(u.push(y),u.length>=10))break}A(this,it,s),c.decode(u.map(y=>new EncodedAudioChunk({type:"key",timestamp:y.cts,duration:y.duration,data:y.data})))}),B(this,ce,()=>{var c;A(this,j,0),A(this,it,0),A(this,X,{frameCnt:0,data:[]}),(c=b(this,Z))==null||c.close(),A(this,Z,Fi(this.conf,{resampleRate:K.sampleRate,volume:b(this,Zt)},u=>{b(this,X).data.push(u),b(this,X).frameCnt+=u[0].length}))}),B(this,pe,()=>{var c,u;return{time:b(this,j),decState:(c=b(this,Z))==null?void 0:c.state,decQSize:(u=b(this,Z))==null?void 0:u.decodeQueueSize,decCusorIdx:b(this,it),sampleLen:this.samples.length,pcmLen:b(this,X).frameCnt}}),O(this,"destroy",()=>{A(this,Z,null),b(this,_t).abort=!0,A(this,X,{frameCnt:0,data:[]}),this.localFileReader.close()}),this.localFileReader=n,this.samples=h,this.conf=o,A(this,Zt,d.volume),A(this,jt,d.targetSampleRate)}};Zt=new WeakMap,jt=new WeakMap,Z=new WeakMap,_t=new WeakMap,j=new WeakMap,it=new WeakMap,X=new WeakMap,Xt=new WeakMap,Kt=new WeakMap,ce=new WeakMap,pe=new WeakMap;function Fi(l,n,h){let o=s=>{if(s.length!==0){if(n.volume!==1)for(let y of s)for(let w=0;w<y.length;w++)y[w]*=n.volume;s.length===1&&(s=[s[0],s[0]]),h(s)}},d=Pi(o),c=n.resampleRate!==l.sampleRate,u=new AudioDecoder({output:s=>{let y=_e(s);c?d(()=>xi(y,s.sampleRate,{rate:n.resampleRate,chanCount:s.numberOfChannels})):o(y),s.close()},error:s=>{T.error(`MP4Clip AudioDecoder err: ${s.message}`)}});return u.configure(l),{decode(s){for(let y of s)u.decode(y)},close(){u.state!=="closed"&&u.close()},get state(){return u.state},get decodeQueueSize(){return u.decodeQueueSize}}}function Pi(l){let n=[],h=0;function o(u,s){n[s]=u,d()}function d(){let u=n[h];u!=null&&(l(u),h+=1,d())}let c=0;return u=>{let s=c;c+=1,u().then(y=>o(y,s)).catch(y=>o(y,s))}}function Li(l,n){let h=[new Float32Array(n),new Float32Array(n)],o=0,d=0;for(;d<l.data.length;){let[c,u]=l.data[d];if(o+c.length>n){let s=n-o;h[0].set(c.subarray(0,s),o),h[1].set(u.subarray(0,s),o),l.data[d][0]=c.subarray(s,c.length),l.data[d][1]=u.subarray(s,u.length);break}else h[0].set(c,o),h[1].set(u,o),o+=c.length,d++}return l.data=l.data.slice(d),l.frameCnt-=n,h}async function Ri(l,n){let h=l[0],o=l.at(-1);if(o==null)return[];let d=o.offset+o.size-h.offset;if(d<3e7){let c=new Uint8Array(await n.read(d,{at:h.offset}));return l.map(u=>{let s=u.offset-h.offset,y=c.subarray(s,s+u.size);return u.is_idr&&(y=ze(y)),new EncodedVideoChunk({type:u.is_sync?"key":"delta",timestamp:u.cts,duration:u.duration,data:y})})}return await Promise.all(l.map(async c=>{let u=await n.read(c.size,{at:c.offset});return c.is_idr&&(u=ze(new Uint8Array(u))),new EncodedVideoChunk({type:c.is_sync?"key":"delta",timestamp:c.cts,duration:c.duration,data:u})}))}function Ie(l,n,h){let o=new OffscreenCanvas(l,n),d=o.getContext("2d");return async c=>(d.drawImage(c,0,0,l,n),c.close(),await o.convertToBlob(h))}function Di(l,n,h){let o=0;if(l.state==="configured"){for(;o<n.length;o++)l.decode(n[o]);l.flush().catch(d=>{if(!(d instanceof Error))throw d;if(d.message.includes("Decoding error")&&h.onDecodingError!=null){h.onDecodingError(d);return}if(!d.message.includes("Aborted due to close"))throw d})}}function ze(l){let n=new DataView(l.buffer,l.byteOffset,l.byteLength);return(n.getUint8(4)&31)===6?l.subarray(n.getUint32(0)+4):l}function Mi(l,n){if(n!=="avc1"&&n!=="hvc1")return!1;let h=new DataView(l.buffer),o=0;for(;o<l.byteLength-4;){if(n==="avc1"){if((h.getUint8(o+4)&31)===5)return!0}else if(n==="hvc1"&&(h.getUint8(o+4)>>1&63)===20)return!0;o+=h.getUint32(o)+4}return!1}var st,ue=class{constructor(){B(this,st,new Map),O(this,"on",(n,h)=>{let o=b(this,st).get(n)??new Set;return o.add(h),b(this,st).has(n)||b(this,st).set(n,o),()=>{o.delete(h),o.size===0&&b(this,st).delete(n)}}),O(this,"once",(n,h)=>{let o=this.on(n,(...d)=>{o(),h(...d)});return o}),O(this,"emit",(n,...h)=>{let o=b(this,st).get(n);o?.forEach(d=>d(...h))})}static forwardEvent(n,h,o){let d=o.map(c=>{let[u,s]=Array.isArray(c)?c:[c,c];return n.on(u,(...y)=>{h.emit(s,...y)})});return()=>{d.forEach(c=>c())}}destroy(){b(this,st).clear()}};st=new WeakMap;var be=(l,n)=>{let h=new Uint8Array(8);new DataView(h.buffer).setUint32(0,n);for(let o=0;o<4;o++)h[4+o]=l.charCodeAt(o);return h},Oi=()=>{let l=new TextEncoder,n=l.encode("mdta"),h=l.encode("mp4 handler"),o=32+h.byteLength+1,d=new Uint8Array(o),c=new DataView(d.buffer);return d.set(be("hdlr",o),0),c.setUint32(8,0),d.set(n,16),d.set(h,32),d},Ni=l=>{let n=new TextEncoder,h=n.encode("mdta"),o=l.map(y=>{let w=n.encode(y),g=8+w.byteLength,x=new Uint8Array(g);return new DataView(x.buffer).setUint32(0,g),x.set(h,4),x.set(w,4+h.byteLength),x}),d=16+o.reduce((y,w)=>y+w.byteLength,0),c=new Uint8Array(d),u=new DataView(c.buffer);c.set(be("keys",d),0),u.setUint32(8,0),u.setUint32(12,l.length);let s=16;for(let y of o)c.set(y,s),s+=y.byteLength;return c},Gi=l=>{let n=new TextEncoder,h=n.encode("data"),o=Object.entries(l).map(([s,y],w)=>{let g=w+1,x=n.encode(y),t=24+x.byteLength,e=new Uint8Array(t),i=new DataView(e.buffer);return i.setUint32(0,t),i.setUint32(4,g),i.setUint32(8,16+x.byteLength),e.set(h,12),i.setUint32(16,1),e.set(x,24),e}),d=8+o.reduce((s,y)=>s+y.byteLength,0),c=new Uint8Array(d);c.set(be("ilst",d),0);let u=8;for(let s of o)c.set(s,u),u+=s.byteLength;return c},Yi=l=>{let n=Oi(),h=Ni(Object.keys(l)),o=Gi(l),d=n.length+h.length+o.length,c=new Uint8Array(d);return c.set(n,0),c.set(h,n.length),c.set(o,n.length+h.length),c};function ss(l){T.info("recodemux opts:",l);let n=L.createFile(),h=new ue,o=(y,w)=>{let g=y.add("udta").add("meta");g.data=Yi(w),g.size=g.data.byteLength},d=!1,c=()=>{n.moov==null||d||(d=!0,l.metaDataTags!=null&&o(n.moov,l.metaDataTags),l.duration!=null&&(n.moov.mvhd.duration=l.duration))};h.once("VideoReady",c),h.once("AudioReady",c);let u=l.video!=null?Hi(l.video,n,h):null,s=l.audio!=null?Wi(l.audio,n,h):null;return l.video==null&&h.emit("VideoReady"),l.audio==null&&h.emit("AudioReady"),{encodeVideo:(y,w)=>{u?.encode(y,w),y.close()},encodeAudio:y=>{s!=null&&(s.encode(y),y.close())},getEncodeQueueSize:()=>u?.encodeQueueSize??s?.encodeQueueSize??0,flush:async()=>{await Promise.all([u?.flush(),s?.state==="configured"?s.flush():null])},close:()=>{h.destroy(),u?.close(),s?.state==="configured"&&s.close()},mp4file:n}}function Hi(l,n,h){let o={timescale:1e6,width:l.width,height:l.height,brands:["isom","iso2","avc1","mp42","mp41"],avcDecoderConfigRecord:null,name:"Track created with WebAV"},d=-1,c=!1;h.once("AudioReady",()=>{c=!0});let u={encoder0:[],encoder1:[]},s=(p,f,m)=>{var _;if(d===-1&&m!=null){let v=(_=m.decoderConfig)==null?void 0:_.description;Vi(v),o.avcDecoderConfigRecord=v,d=n.addTrack(o),h.emit("VideoReady"),T.info("VideoEncoder, video track ready, trackId:",d)}u[p].push(qt(f))},y="encoder1",w=0,g=Math.floor(1e3/l.expectFPS*1e3);function x(){if(!c)return;let p=y==="encoder1"?"encoder0":"encoder1",f=u[y],m=u[p];if(f.length===0&&m.length===0)return;let _=f[0];if(_!=null&&(!_.is_sync||_.cts-w<g)){let S=t(f);S>w&&(w=S)}let v=m[0];if(v!=null&&v.is_sync&&v.cts-w<g){y=p,x();return}if(_!=null&&_.is_sync&&v!=null&&v.is_sync)if(_.cts<=v.cts){let S=t(f);S>w&&(w=S)}else{y=p,x();return}}function t(p){let f=-1,m=0;for(;m<p.length;m++){let _=p[m];if(m>0&&_.is_sync)break;n.addSample(d,_.data,_),f=_.cts+_.duration}return p.splice(0,m),f}let e=Ye(x,15),i=Te(l,(p,f)=>s("encoder0",p,f)),r=Te(l,(p,f)=>s("encoder1",p,f)),a=0;return{get encodeQueueSize(){return i.encodeQueueSize+r.encodeQueueSize},encode:(p,f)=>{f.keyFrame&&(a+=1),(a%2===0?i:r).encode(p,f)},flush:async()=>{await Promise.all([i.state==="configured"?await i.flush():null,r.state==="configured"?await r.flush():null]),e(),x()},close:()=>{i.state==="configured"&&i.close(),r.state==="configured"&&r.close()}}}function Vi(l){let n=new Uint8Array(l);n[2].toString(2).slice(-2).includes("1")&&(n[2]=0)}function Te(l,n){let h=new VideoEncoder({error:T.error,output:n});return h.configure({codec:l.codec,framerate:l.expectFPS,hardwareAcceleration:l.__unsafe_hardwareAcceleration__,bitrate:l.bitrate,width:l.width,height:l.height,alpha:"discard",avc:{format:"avc"}}),h}function Wi(l,n,h){let o={timescale:1e6,samplerate:l.sampleRate,channel_count:l.channelCount,hdlr:"soun",type:l.codec==="aac"?"mp4a":"Opus",name:"Track created with WebAV"},d=-1,c=[],u=!1;h.once("VideoReady",()=>{u=!0,c.forEach(y=>{let w=qt(y);n.addSample(d,w.data,w)}),c=[]});let s=new AudioEncoder({error:T.error,output:(y,w)=>{var g;if(d===-1){let x=(g=w.decoderConfig)==null?void 0:g.description;d=n.addTrack({...o,description:x==null?void 0:qi(x)}),h.emit("AudioReady"),T.info("AudioEncoder, audio track ready, trackId:",d)}if(u){let x=qt(y);n.addSample(d,x.data,x)}else c.push(y)}});return s.configure({codec:l.codec==="aac"?K.codec:"opus",sampleRate:l.sampleRate,numberOfChannels:l.channelCount,bitrate:128e3}),s}function Zi(l,n,h){let o=0,d=0,c=l.boxes,u=!1,s=()=>{var x;if(!u)if(c.find(i=>i.type==="moof")!=null)u=!0;else return null;if(d>=c.length)return null;let t=new L.DataStream;t.endianness=L.DataStream.BIG_ENDIAN;let e=d;try{for(;e<c.length;)c[e].write(t),delete c[e],e+=1}catch(i){let r=c[e];throw i instanceof Error&&r!=null?Error(`${i.message} | deltaBuf( boxType: ${r.type}, boxSize: ${r.size}, boxDataLen: ${((x=r.data)==null?void 0:x.length)??-1})`):i}return Ii(l),d=c.length,new Uint8Array(t.buffer)},y=!1,w=!1,g=null;return{stream:new ReadableStream({start(x){o=self.setInterval(()=>{let t=s();t!=null&&!w&&x.enqueue(t)},n),g=t=>{if(clearInterval(o),l.flush(),t!=null){x.error(t);return}let e=s();e!=null&&!w&&x.enqueue(e),w||x.close()},y&&g()},cancel(){w=!0,clearInterval(o),h?.()}}),stop:x=>{y||(y=!0,g?.(x))}}}function ji(l){let n=0,h=l.boxes,o=[],d=0;async function c(){let i=e(h,n);n=h.length,o.forEach(({track:r,id:a})=>{let p=r.samples.at(-1);p!=null&&(d=Math.max(d,p.cts+p.duration)),l.releaseUsedSamples(a,r.samples.length),r.samples=[]}),l.mdats=[],l.moofs=[],i!=null&&await g?.write(i)}let u=[];function s(){if(u.length>0)return!0;let i=h.findIndex(r=>r.type==="moov");if(i===-1)return!1;if(u=h.slice(0,i+1),n=i+1,o.length===0)for(let r=1;;r+=1){let a=l.getTrackById(r);if(a==null)break;o.push({track:a,id:r})}return!0}let y=0,w=$t(),g=null,x=(async()=>{g=await w.createWriter(),y=self.setInterval(()=>{s()&&c()},100)})(),t=!1;return async()=>{if(t)throw Error("File exported");if(t=!0,await x,clearInterval(y),!s()||g==null)return null;l.flush(),await c(),await g?.close();let i=u.find(p=>p.type==="moov");if(i==null)return null;i.mvhd.duration=d;let r=$t(),a=e(u,0);return await zt(r,a),await zt(r,w,{overwrite:!1}),await r.stream()};function e(i,r){if(r>=i.length)return null;let a=new L.DataStream;a.endianness=L.DataStream.BIG_ENDIAN;for(let p=r;p<i.length;p++)i[p]!==null&&(i[p].write(a),delete i[p]);return new Uint8Array(a.buffer)}}function qt(l){let n=new ArrayBuffer(l.byteLength);l.copyTo(n);let h=l.timestamp;return{duration:l.duration??0,dts:h,cts:h,is_sync:l.type==="key",data:n}}async function Xi(l){let n=L.createFile(),h=ji(n);await Ki(l,n);let o=await h();if(o==null)throw Error("Can not generate file from streams");return o}async function Ki(l,n){let h=0,o=0,d=0,c=0,u=0,s=0,y=null,w=null;for(let g of l)await new Promise(async x=>{ge(g.pipeThrough(new kt),{onDone:x,onChunk:async({chunkType:t,data:e})=>{if(t==="ready"){let{videoTrackConf:i,audioTrackConf:r}=ye(e.file,e.info);h===0&&i!=null&&(h=n.addTrack(i)),c===0&&r!=null&&(c=n.addTrack(r))}else if(t==="samples"){let{type:i,samples:r}=e,a=i==="video"?h:c,p=i==="video"?o:u,f=i==="video"?d:s;r.forEach(_=>{n.addSample(a,_.data,{duration:_.duration,dts:_.dts+p,cts:_.cts+f,is_sync:_.is_sync})});let m=r.at(-1);if(m==null)return;i==="video"?y=m:i==="audio"&&(w=m)}}})}),y!=null&&(o+=y.dts,d+=y.cts),w!=null&&(u+=w.dts,s+=w.cts)}async function rs(l){return await Xi([l])}function Qi(l){let n=[],h=new AudioDecoder({output:o=>{n.push(o)},error:T.error});return h.configure(l),{decode:async o=>{o.forEach(c=>{h.decode(new EncodedAudioChunk({type:c.is_sync?"key":"delta",timestamp:1e6*c.cts/c.timescale,duration:1e6*c.duration/c.timescale,data:c.data}))}),await h.flush();let d=n;return n=[],d},close:()=>{h.close()}}}function Ji(l,n){let h=new AudioEncoder({output:c=>{n(qt(c))},error:T.error});h.configure({codec:l.codec,sampleRate:l.sampleRate,numberOfChannels:l.numberOfChannels});let o=null;function d(c,u){return new AudioData({timestamp:u,numberOfChannels:l.numberOfChannels,numberOfFrames:c.length/l.numberOfChannels,sampleRate:l.sampleRate,format:"f32-planar",data:c})}return{encode:async(c,u)=>{o!=null&&h.encode(d(o.data,o.ts)),o={data:c,ts:u}},stop:async()=>{o!=null&&($i(o.data,l.numberOfChannels,l.sampleRate),h.encode(d(o.data,o.ts)),o=null),await h.flush(),h.close()}}}function $i(l,n,h){let o=l.length-1,d=Math.min(h/2,o);for(let c=0;c<d;c++)for(let u=1;u<=n;u++)l[Math.floor(o/u)-c]*=c/d}function ns(l,n){T.info("mixinMP4AndAudio, opts:",{volume:n.volume,loop:n.loop});let h=L.createFile(),{stream:o,stop:d}=Zi(h,500),c=null,u=null,s=[],y=0,w=0,g=0,x=!0,t=48e3;ge(l.pipeThrough(new kt),{onDone:async()=>{await u?.stop(),c?.close(),d()},onChunk:async({chunkType:a,data:p})=>{if(a==="ready"){let{videoTrackConf:f,audioTrackConf:m,audioDecoderConf:_}=ye(p.file,p.info);y===0&&f!=null&&(y=h.addTrack(f));let v=m??{timescale:1e6,samplerate:t,channel_count:K.channelCount,hdlr:"soun",name:"SoundHandler",type:"mp4a"};w===0&&(w=h.addTrack(v),t=m?.samplerate??t,x=m!=null);let S=new AudioContext({sampleRate:t});s=We(await S.decodeAudioData(await new Response(n.stream).arrayBuffer())),_!=null&&(c=Qi(_)),u=Ji(_??{codec:v.type==="mp4a"?K.codec:v.type,numberOfChannels:v.channel_count,sampleRate:v.samplerate},E=>h.addSample(w,E.data,E))}else if(a==="samples"){let{id:f,type:m,samples:_}=p;if(m==="video"){_.forEach(v=>h.addSample(f,v.data,v)),x||await i(_);return}m==="audio"&&await r(_)}}});function e(a){let p=s.map(f=>n.loop?Ei(f,g,g+a):f.slice(g,g+a));if(g+=a,n.volume!==1)for(let f of p)for(let m=0;m<f.length;m++)f[m]*=n.volume;return p}async function i(a){let p=a[0],f=a[a.length-1],m=Math.floor((f.cts+f.duration-p.cts)/f.timescale*t),_=Ee([e(m)]);_.length!==0&&u?.encode(_,p.cts/p.timescale*1e6)}async function r(a){if(c==null)return;let p=(await c.decode(a)).map(_e),f=vi(p),m=e(f[0].length),_=a[0];u?.encode(Ee([f,m]),_.cts/_.timescale*1e6)}return o}function qi(l){let n=l.byteLength,h=new Uint8Array([0,0,0,0,3,23+n,0,2,0,4,18+n,64,21,0,0,0,0,0,0,0,0,0,0,0,5,n,...new Uint8Array(l instanceof ArrayBuffer?l:l.buffer),6,1,2]),o=new L.BoxParser.esdsBox(h.byteLength);return o.hdr_size=0,o.parse(new L.DataStream(h,0,L.DataStream.BIG_ENDIAN)),o}export{K as DEFAULT_AUDIO_CONF,ue as EventTool,T as Log,Be as MP4Clip,es as adjustAudioDataVolume,xi as audioResample,ge as autoReadStream,Ve as concatFloat32Array,vi as concatPCMFragments,Qe as createEl,is as decodeImg,We as extractPCM4AudioBuffer,_e as extractPCM4AudioData,Xi as fastConcatMP4,Zi as file2stream,rs as fixFMP4Duration,ns as mixinMP4AndAudio,Ee as mixinPCM,ss as recodemux,Je as renderTxt2Img,ts as renderTxt2ImgBitmap,Ei as ringSliceFloat32Array,Ye as workerTimer};
|
package/dist/react.mjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e,b as t,c as o,d as m,e as r}from"./chunks/chunk-OKB2FJUI.mjs";import"./chunks/chunk-YP7ILKMI.mjs";import{jsx as i}from"react/jsx-runtime";function n({buttonText:d="Open Video Editor",buttonClassName:p,...a}){return i(r,{...a,trigger:i(t,{size:"lg",className:e(p),children:d})})}export{o as Editor,n as VideoEditorLauncher,r as VideoEditorModal,m as VideoEditorProvider,o as default};
|