@4players/odin-plugin-web 1.9.4 → 1.9.5
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.
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var
|
|
1
|
+
var K=Object.defineProperty;var O=(A,F)=>{for(var x in F)K(A,x,{get:F[x],enumerable:!0})};import{Strand as ex}from"@4players/odin-common";var e={};O(e,{AdditionalCaptureBlocks:()=>P,AdditionalPlaybackBlocks:()=>w,ClockJumpCheckInterval:()=>R,ClockJumpThreshold:()=>Q,ConnectInterval:()=>rx,ConnectTimeout:()=>xx,DefaultRefreshRate:()=>T,DefaultVideoCodec:()=>Dx,HealthCheckTimeout:()=>W,MainConnectionPingInterval:()=>X,MaxNumberOfDecoders:()=>V,MinDBFs:()=>i,MinTokenLifetime:()=>Ax,MinTokenRefreshInterval:()=>Fx,PlaybackPreload:()=>M,RenderQuantumSize:()=>S,VadPreload:()=>U,WebRtcIceTimeout:()=>Z,WebRtcStatsSnapshotInterval:()=>z,WebRtcTimeout:()=>Y});var w=3,P=3,M=3,T=250,U=3,V=512,S=128,i=-758.596,W=1e4,R=1e3,Q=1e4,X=3e3,z=1e3,Z=3e3,Y=1e4,xx=5e3,Ax=6e4,Fx=5e3,rx=[0,100,200,200,500],Dx="H264";function v(A,F,x){return A.postMessage(F,x)}function o(A,F){return new Promise(x=>{let r=D=>{let[j,B]=D.data;j===F&&(x(D.data[1]),A.removeEventListener("message",r))};A.addEventListener("message",r)})}function a(A,F){A.values[0]=F[0],A.values[1]=F[1]}function m(A,F){return A.values[2+F*5]}function I(A,F,x){let r=2+F*5+1;A.values[r+0]=x[0],A.values[r+1]=x[1]}function $(A){return A.values[0]!==0}function g(A){return A.values[1]}function L(A){return A.values[2]}function H(A,F){return A.values[3]=F}import{error as jx,warn as Gx,info as hx,debug as px,Logger as mx,LogLevel as $x,CallbackSink as Lx,Formatter as Hx}from"@4players/odin-common";var y;function k(A,...F){let x=Bx(F);y?y?.error(A,x):jx(A,x)}function Bx(...A){if(A.length===1&&typeof A[0]=="object"&&A[0]!==null)return{...A[0]};if(A.length>0)return{args:A}}var N={isSilent:!0,rmsDBFS:-758.596};function E(A){return A.connectionId*4294967296+A.mediaId}var f=[],C=[],s=class{constructor(F,x,r){this.audioContext=F;this.worklet=x;this.worker=r;this.availableIndexes=[];this.medias=new Map;r.addEventListener("message",this._OnMessages.bind(this))}connectOutput(F){this.worklet.disconnect(),this.worklet.connect(F)}receivePacket(F,x){v(this.worker,["playbackReceivePacket",{connectionId:F,packet:x}],[x.buffer])}addMedias(F,x,r=[1,1]){let D=[];for(let j of x){let B=this._GetFreeIndex();B!==void 0&&(this.medias.set(E({connectionId:F,mediaId:j}),{index:B}),D.push({connectionId:F,mediaId:j,index:B,volume:r}))}v(this.worker,["playbackUpdateMedias",{added:D,removed:[]}])}removeMedias(F,x){let r=[];for(let D of x){let j=E({connectionId:F,mediaId:D}),B=this.medias.get(j);B!==void 0&&(this.medias.delete(j),this.availableIndexes.push(B.index),r.push({connectionId:F,mediaId:D,index:B.index}))}v(this.worker,["playbackUpdateMedias",{added:[],removed:r}])}close(){v(this.worker,["close",void 0]),v(this.worklet.port,["close",void 0]);let F=f.indexOf(this.worker);F>=0&&f.splice(F,1);let x=C.indexOf(this.worklet);x>=0&&C.splice(x,1)}async dump(){return{playbackWorker:await n(this.worker),playbackWorklet:await n(this.worklet.port)}}_GetFreeIndex(){return this.availableIndexes.pop()}_OnMessages(F){}},l=class A{constructor(F,x,r,D,j){this.worklet=F;this.worker=x;this.sink=(B,t)=>{j.deref()!==void 0?r(B,t):(k("capture worker was left abandoned, aborting capture worker"),A.shutdown(F,x))},this.monitorSink=(B,t)=>{j.deref()!==void 0?D(B,t):(k("capture worker was left abandoned, aborting capture worker"),A.shutdown(F,x))},x.addEventListener("message",this._OnMessages.bind(this))}get context(){return this.worklet.context}setMedias(F){v(this.worker,["captureSetMedias",{connections:F}])}setVad(F){v(this.worker,["captureSetVad",F])}close(){A.shutdown(this.worklet,this.worker)}static shutdown(F,x){v(F.port,["close",void 0]),v(x,["close",void 0]);let r=f.indexOf(x);r>=0&&f.splice(r,1);let D=C.indexOf(F);D>=0&&C.splice(D,1)}async dump(){return{captureWorker:await n(this.worker),captureWorklet:await n(this.worklet.port)}}_OnMessages(F){let[x,r]=F.data;x==="sendPacket"&&(r.connectionId===0?this.monitorSink(r.connectionId,r.packet):this.sink(r.connectionId,r.packet))}};function d(A,F,x,r,D){return Promise.all([vx(A),tx(x,F,r,D)])}async function vx(A){let F=URL.createObjectURL(new Blob([A],{type:"text/javascript"})),x=new Worker(F,{type:"module",name:"odin worker"});return f.push(x),x}var u=new WeakMap;async function tx(A,F,x,r){try{let B=new AudioWorkletNode(A,x,r);return C.push(B),B}catch{}let D=u.get(A);if(D===void 0){let B=URL.createObjectURL(new Blob([F],{type:"text/javascript"}));D=A.audioWorklet.addModule(B),u.set(A,D),D.catch(()=>u.delete(A))}await D;let j=new AudioWorkletNode(A,x,r);return C.push(j),j}function n(A){let{port1:F,port2:x}=new MessageChannel,{promise:r,resolve:D}=Promise.withResolvers();return x.onmessage=j=>D(j.data),setTimeout(()=>D("timeout"),100),v(A,["dump",{result:F}],[F]),r}var c=`"use strict";(()=>{var Cn=Object.create;var or=Object.defineProperty;var Gn=Object.getOwnPropertyDescriptor;var pn=Object.getOwnPropertyNames;var hn=Object.getPrototypeOf,In=Object.prototype.hasOwnProperty;var mn=(n,A)=>()=>(A||n((A={exports:{}}).exports,A),A.exports),En=(n,A)=>{for(var t in A)or(n,t,{get:A[t],enumerable:!0})},$n=(n,A,t,e)=>{if(A&&typeof A=="object"||typeof A=="function")for(let i of pn(A))!In.call(n,i)&&i!==t&&or(n,i,{get:()=>A[i],enumerable:!(e=Gn(A,i))||e.enumerable});return n};var Fn=(n,A,t)=>(t=n!=null?Cn(hn(n)):{},$n(A||!n||!n.__esModule?or(t,"default",{value:n,enumerable:!0}):t,n));var $t=mn((Et,MA)=>{"use strict";var wA=(()=>{var n=globalThis.document?.currentScript?.src;return async function(A={}){var t,e=A,i=!!globalThis.window,d=!!globalThis.WorkerGlobalScope,q=globalThis.process?.versions?.node&&globalThis.process?.type!="renderer",C=d&&globalThis.name=="em-pthread",v=[],B="./this.program",CA=(r,j)=>{throw j};d&&(n=self.location.href);var w="",Ht,_t;if(i||d){try{w=new URL(".",n).href}catch{}d&&(_t=r=>{var j=new XMLHttpRequest;return j.open("GET",r,!1),j.responseType="arraybuffer",j.send(null),new Uint8Array(j.response)}),Ht=async r=>{var j=await fetch(r,{credentials:"same-origin"});if(j.ok)return j.arrayBuffer();throw new Error(j.status+" : "+j.url)}}var TA=console.log.bind(console),N=console.error.bind(console),gr,eA,GA=!1,Q;function yt(r){for(var j=0,s=r.length,l=new Uint8Array(s),o;j<s;++j)o=r.charCodeAt(j),l[j]=~o>>8&o;return l}var UA,Lr,Hr;if(C){let r=function(j){try{var s=j.data,l=s.cmd;if(l==="load"){let o=[];self.onmessage=k=>o.push(k),Hr=()=>{postMessage({cmd:"loaded"});for(let k of o)r(k);self.onmessage=r};for(let k of s.handlers)(!e[k]||e[k].proxy)&&(e[k]=(...a)=>{postMessage({cmd:"callHandler",handler:k,args:a})},k=="print"&&(TA=e[k]),k=="printErr"&&(N=e[k]));X=s.wasmMemory,yr(),eA=s.wasmModule,Nr(),Dj()}else if(l==="run"){St(s.pthread_ptr),sr(s.pthread_ptr,0,0,1,0,0),h.threadInitTLS(),tr(s.pthread_ptr),SA||(Ij(),SA=!0);try{Vt(s.start_routine,s.arg)}catch(o){if(o!="unwind")throw o}}else s.target==="setimmediate"||(l==="checkMailbox"?SA&&HA():l&&(N(\`worker: received unknown command \${l}\`),N(s)))}catch(o){throw mj(),o}};var ys=r,SA=!1;self.onunhandledrejection=j=>{throw j.reason||j},self.onmessage=r}var _r=!1;function yr(){var r=X.buffer;V=new Int8Array(r),pA=new Int16Array(r),e.HEAPU8=x=new Uint8Array(r),nA=new Uint16Array(r),e.HEAP32=z=new Int32Array(r),e.HEAPU32=E=new Uint32Array(r),e.HEAPF32=Jr=new Float32Array(r),hA=new Float64Array(r),S=new BigInt64Array(r),Kr=new BigUint64Array(r)}function xt(){if(!C){if(e.wasmMemory)X=e.wasmMemory;else{var r=e.INITIAL_MEMORY||16777216;X=new WebAssembly.Memory({initial:r/65536,maximum:r/65536,shared:!0})}yr()}}function Dt(){if(e.preRun)for(typeof e.preRun=="function"&&(e.preRun=[e.preRun]);e.preRun.length;)Ot(e.preRun.shift());wr(Mr)}function xr(){if(_r=!0,C)return Hr();jA.F()}function Bt(){if(!C){if(e.postRun)for(typeof e.postRun=="function"&&(e.postRun=[e.postRun]);e.postRun.length;)Ut(e.postRun.shift());wr(Vr)}}function VA(r){e.onAbort?.(r),r="Aborted("+r+")",N(r),GA=!0,r+=". Build with -sASSERTIONS for more info.";var j=new WebAssembly.RuntimeError(r);throw Lr?.(j),j}var Dr;function Nt(){return yt(\`\\0asm\\0\\0\\0\\xB2>\\\`\\x7F\\0\\\`\\x7F\\x7F\\\`\\x7F\\x7F\\x7F\\0\\\`\\x7F\\x7F\\0\\\`\\x7F\\x7F\\x7F\\x7F\\0\\\`\\x7F\\x7F\\x7F\\\`\\x7F\\x7F\\x7F\\x7F\\x7F\\0\\\`\\x7F\\x7F\\x7F\\x7F\\\`\\0\\0\\\`\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\0\\\`\\x7F\\x7F\\x7F\\x7F\\x7F\\\`\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\\`||\\\`\\x7F}\\\`}}\\\`\\x07\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\\`\\0\\x7F\\\`\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\\`\\b\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\0\\\`\\x7F~\\x7F~\\\`\\x7F\\x7F}\\\`\\x7F}}\\\`\\x7F\\x7F}}\\0\\\`
|
|
2
2
|
\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\0\\\`|}\\\`|\\x7F|\\\`\\x7F\\x7F}\\0\\\`\\x07\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\0\\\` \\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\0\\\`\\f\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\0\\\`\\b\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\\`\\x7F|\\x7F\\x7F\\x7F\\x7F\\x7F\\\`\\x7F\\x7F\\x7F|}\\\`\\0|\\\`\\x7F\\x7F\\x7F~~\\0\\\`\\x07\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F|\\\`\\r\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\0\\\`\\x7F~\\x7F\\x7F\\x7F\\\`\\x7F\\x7F|\\\`\\v\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F}\\x7F\\x7F\\x7F\\\`\\v\\x7F\\x7F\\x7F\\x7F\\x7F}}\\x7F\\x7F\\x7F\\x7F\\0\\\`~\\x7F\\x7F\\\` \\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F}\\x7F\\x7F\\\`||\\x7F|\\\`|||\\\`\\x7F\\x7F\\x7F|\\\`\\x7F\\x7F|\\x7F\\\`\\v\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\0\\\`\\v\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\\`\\x07\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F}\\\`\\f\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\\`}\\x7F\\x7F\\\`|\\x7F\\x7F\\\`\\x7F\\x7F\\x7F}\\\`\\x7F}\\x7F\\0\\\`\\x7F\\x7F}\\x7F\\x7F\\x7F}\\\`\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\\`\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F}\\x7F\\x7F\\\`\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\0\\\`\\x7F\\x7F\\x7F}}\\0\\\`\\x7F\\x7F\\x7F\\x7F\\x7F|\\\`\\x7F\\x7F|\\0\\xBFab\\0ac\\0ad\\0ae\\0af\\0!ag\\0ah\\0"ai\\0aj\\0
|
|
3
3
|
ak\\0#al\\0am\\0 an\\0$ao\\0ap\\0aq\\0ar\\0\\0as\\0\\0at\\0au\\0av\\0%aw\\0ax\\0\\bay\\0\\0az\\0\\0aA\\0\\baB\\0\\0aC\\0\\baD\\0\\0aE\\0aa\\x80\\x80\\xFB\\xF9\\0\\x07\\f&\\0\\f\\x07\\f\\f\\0\\x07\\0\\x07'(
|
|
4
4
|
\\b\\v)\\x07*\\0\\f+,-\\v\\0\\0\\x07\\0.\\b\\b\\x1B
|
|
@@ -3233,4 +3233,4 @@ K\\xE08\\xDF\\0}\\xBC\\x8A\\x1B\\f\\xE5\\xFF\\xCF\\xE8?\\x9F\\xFFFq\\0\\x88\\xB
|
|
|
3233
3233
|
return ret;
|
|
3234
3234
|
\`),f+=\`}
|
|
3235
3235
|
\`,new Function(I,f)}function rr(r,j,s,l,o,k){var a=j.length;a<2&&p("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var u=j[1]!==null&&s!==null,c=ij(j),f=!j[0].isVoid,G=j[0],I=j[1],$=[r,p,l,o,sj,G.fromWireType.bind(G),I?.toWireType.bind(I)],m=2;m<a;++m){var F=j[m];$.push(F.toWireType.bind(F))}if(!c)for(var m=u?1:2;m<j.length;++m)j[m].destructorFunction!==null&&$.push(j[m].destructorFunction);var P=Ie(j,u,f,k)(...$);return Aj(r,P)}var me=(r,j,s,l,o,k)=>{var a=Ar(j,s);o=K(l,o),M([],[r],u=>{u=u[0];var c=\`constructor \${u.name}\`;if(u.registeredClass.constructor_body===void 0&&(u.registeredClass.constructor_body=[]),u.registeredClass.constructor_body[j-1]!==void 0)throw new iA(\`Cannot register multiple constructors with identical number of parameters (\${j-1}) for class '\${u.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!\`);return u.registeredClass.constructor_body[j-1]=()=>{AA(\`Cannot construct \${u.name} due to unbound types\`,a)},M([],a,f=>(f.splice(1,0,null),u.registeredClass.constructor_body[j-1]=rr(c,f,null,o,k),[])),[]})},lj=r=>{r=r.trim();let j=r.indexOf("(");return j===-1?r:r.slice(0,j)},Ee=(r,j,s,l,o,k,a,u,c,f)=>{var G=Ar(s,l);j=g(j),j=lj(j),k=K(o,k,c),M([],[r],I=>{I=I[0];var $=\`\${I.name}.\${j}\`;j.startsWith("@@")&&(j=Symbol[j.substring(2)]),u&&I.registeredClass.pureVirtualFunctions.push(j);function m(){AA(\`Cannot call \${$} due to unbound types\`,G)}var F=I.registeredClass.instancePrototype,_=F[j];return _===void 0||_.overloadTable===void 0&&_.className!==I.name&&_.argCount===s-2?(m.argCount=s-2,m.className=I.name,F[j]=m):(jj(F,j,$),F[j].overloadTable[s-2]=m),M([],G,P=>{var y=rr($,P,I,k,a,c);return F[j].overloadTable===void 0?(y.argCount=s-2,F[j]=y):F[j].overloadTable[s-2]=y,[]}),[]})},oj=(r,j,s)=>(r instanceof Object||p(\`\${s} with invalid "this": \${r}\`),r instanceof j.registeredClass.constructor||p(\`\${s} incompatible with "this" of type \${r.constructor.name}\`),r.$$.ptr||p(\`cannot call emscripten binding method \${s} on deleted object\`),$A(r.$$.ptr,r.$$.ptrType.registeredClass,j.registeredClass)),$e=(r,j,s,l,o,k,a,u,c,f)=>{j=g(j),o=K(l,o),M([],[r],G=>{G=G[0];var I=\`\${G.name}.\${j}\`,$={get(){AA(\`Cannot access \${I} due to unbound types\`,[s,a])},enumerable:!0,configurable:!0};return c?$.set=()=>AA(\`Cannot access \${I} due to unbound types\`,[s,a]):$.set=m=>p(I+" is a read-only property"),Object.defineProperty(G.registeredClass.instancePrototype,j,$),M([],c?[s,a]:[s],m=>{var F=m[0],_={get(){var y=oj(this,G,I+" getter");return F.fromWireType(o(k,y))},enumerable:!0};if(c){c=K(u,c);var P=m[1];_.set=function(y){var oA=oj(this,G,I+" setter"),H=[];c(f,oA,P.toWireType(H,y)),sj(H)}}return Object.defineProperty(G.registeredClass.instancePrototype,j,_),[]}),[]})},aj=[],rA=[0,1,,1,null,1,!0,1,!1,1],Fe=r=>{r>9&&--rA[r+1]===0&&(rA[r]=void 0,aj.push(r))},jr={toValue:r=>(r||p(\`Cannot use deleted val. handle = \${r}\`),rA[r]),toHandle:r=>{switch(r){case void 0:return 2;case null:return 4;case!0:return 6;case!1:return 8;default:{let j=aj.pop()||rA.length;return rA[j]=r,rA[j+1]=1,j}}}},ve={name:"emscripten::val",fromWireType:r=>{var j=jr.toValue(r);return Fe(r),j},toWireType:(r,j)=>jr.toHandle(j),readValueFromPointer:FA,destructorFunction:null},ge=r=>b(r,ve),Le=(r,j)=>{switch(j){case 4:return function(s){return this.fromWireType(Jr[s>>2])};case 8:return function(s){return this.fromWireType(hA[s>>3])};default:throw new TypeError(\`invalid float width (\${j}): \${r}\`)}},He=(r,j,s)=>{j=g(j),b(r,{name:j,fromWireType:l=>l,toWireType:(l,o)=>o,readValueFromPointer:Le(j,s),destructorFunction:null})},_e=(r,j,s,l,o,k,a,u)=>{var c=Ar(j,s);r=g(r),r=lj(r),o=K(l,o,a),tj(r,function(){AA(\`Cannot call \${r} due to unbound types\`,c)},j-1),M([],c,f=>{var G=[f[0],null].concat(f.slice(1));return nj(r,rr(r,G,null,o,k,a),j-1),[]})},ye=(r,j,s,l,o)=>{j=g(j);let k=l===0,a=c=>c;if(k){var u=32-8*s;a=c=>c<<u>>>u,o=a(o)}b(r,{name:j,fromWireType:a,toWireType:(c,f)=>f,readValueFromPointer:zr(j,s,l!==0),destructorFunction:null})},xe=(r,j,s)=>{var l=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,BigInt64Array,BigUint64Array],o=l[j];function k(a){var u=E[a>>2],c=E[a+4>>2];return new o(V.buffer,c,u)}s=g(s),b(r,{name:s,fromWireType:k,readValueFromPointer:k},{ignoreDuplicateRegistrations:!0})},De=(r,j,s,l)=>{if(!(l>0))return 0;for(var o=s,k=s+l-1,a=0;a<r.length;++a){var u=r.codePointAt(a);if(u<=127){if(s>=k)break;j[s++]=u}else if(u<=2047){if(s+1>=k)break;j[s++]=192|u>>6,j[s++]=128|u&63}else if(u<=65535){if(s+2>=k)break;j[s++]=224|u>>12,j[s++]=128|u>>6&63,j[s++]=128|u&63}else{if(s+3>=k)break;j[s++]=240|u>>18,j[s++]=128|u>>12&63,j[s++]=128|u>>6&63,j[s++]=128|u&63,a++}}return j[s]=0,s-o},Be=(r,j,s)=>De(r,x,j,s),Ne=r=>{for(var j=0,s=0;s<r.length;++s){var l=r.charCodeAt(s);l<=127?j++:l<=2047?j+=2:l>=55296&&l<=57343?(j+=4,++s):j+=3}return j},kj=globalThis.TextDecoder&&new TextDecoder,uj=(r,j,s,l)=>{var o=j+s;if(l)return o;for(;r[j]&&!(j>=o);)++j;return j},cj=(r,j=0,s,l)=>{var o=uj(r,j,s,l);if(o-j>16&&r.buffer&&kj)return kj.decode(r.buffer instanceof ArrayBuffer?r.subarray(j,o):r.slice(j,o));for(var k="";j<o;){var a=r[j++];if(!(a&128)){k+=String.fromCharCode(a);continue}var u=r[j++]&63;if((a&224)==192){k+=String.fromCharCode((a&31)<<6|u);continue}var c=r[j++]&63;if((a&240)==224?a=(a&15)<<12|u<<6|c:a=(a&7)<<18|u<<12|c<<6|r[j++]&63,a<65536)k+=String.fromCharCode(a);else{var f=a-65536;k+=String.fromCharCode(55296|f>>10,56320|f&1023)}}return k},be=(r,j,s)=>r?cj(x,r,j,s):"",Je=(r,j)=>{j=g(j);var s=!0;b(r,{name:j,fromWireType(l){var o=E[l>>2],k=l+4,a;if(s)a=be(k,o,!0);else{a="";for(var u=0;u<o;++u)a+=String.fromCharCode(x[k+u])}return O(l),a},toWireType(l,o){o instanceof ArrayBuffer&&(o=new Uint8Array(o));var k,a=typeof o=="string";a||ArrayBuffer.isView(o)&&o.BYTES_PER_ELEMENT==1||p("Cannot pass non-string to std::string"),s&&a?k=Ne(o):k=o.length;var u=nr(4+k+1),c=u+4;if(E[u>>2]=k,a)if(s)Be(o,c,k+1);else for(var f=0;f<k;++f){var G=o.charCodeAt(f);G>255&&(O(u),p("String has UTF-16 code units that do not fit in 8 bits")),x[c+f]=G}else x.set(o,c);return l!==null&&l.push(O,u),u},readValueFromPointer:FA,destructorFunction(l){O(l)}})},dj=globalThis.TextDecoder?new TextDecoder("utf-16le"):void 0,Ke=(r,j,s)=>{var l=r>>1,o=uj(nA,l,j/2,s);if(o-l>16&&dj)return dj.decode(nA.slice(l,o));for(var k="",a=l;a<o;++a){var u=nA[a];k+=String.fromCharCode(u)}return k},Oe=(r,j,s)=>{if(s??=2147483647,s<2)return 0;s-=2;for(var l=j,o=s<r.length*2?s/2:r.length,k=0;k<o;++k){var a=r.charCodeAt(k);pA[j>>1]=a,j+=2}return pA[j>>1]=0,j-l},Pe=r=>r.length*2,we=(r,j,s)=>{for(var l="",o=r>>2,k=0;!(k>=j/4);k++){var a=E[o+k];if(!a&&!s)break;l+=String.fromCodePoint(a)}return l},Me=(r,j,s)=>{if(s??=2147483647,s<4)return 0;for(var l=j,o=l+s-4,k=0;k<r.length;++k){var a=r.codePointAt(k);if(a>65535&&k++,z[j>>2]=a,j+=4,j+4>o)break}return z[j>>2]=0,j-l},Te=r=>{for(var j=0,s=0;s<r.length;++s){var l=r.codePointAt(s);l>65535&&s++,j+=4}return j},Ue=(r,j,s)=>{s=g(s);var l,o,k;j===2?(l=Ke,o=Oe,k=Pe):(l=we,o=Me,k=Te),b(r,{name:s,fromWireType:a=>{var u=E[a>>2],c=l(a+4,u*j,!0);return O(a),c},toWireType:(a,u)=>{typeof u!="string"&&p(\`Cannot pass non-string to C++ string type \${s}\`);var c=k(u),f=nr(4+c+j);return E[f>>2]=c/j,o(u,f+4,c+j),a!==null&&a.push(O,f),f},readValueFromPointer:FA,destructorFunction(a){O(a)}})},Se=(r,j)=>{j=g(j),b(r,{isVoid:!0,name:j,fromWireType:()=>{},toWireType:(s,l)=>{}})},Ve=r=>{sr(r,!d,1,!i,65536,!1),h.threadInitTLS()},qj=r=>{if(r instanceof br||r=="unwind")return Q;CA(1,r)},Re=()=>{if(!WA())try{if(C){_A()&&ir(Q);return}QA(Q)}catch(r){qj(r)}},fj=r=>{if(!GA)try{return r()}catch(j){qj(j)}finally{Re()}},We=!Atomics.waitAsync||globalThis.navigator?.userAgent&&Number((navigator.userAgent.match(/Chrom(e|ium)\\/([0-9]+)\\./)||[])[2])<91,tr=r=>{if(!We){var j=Atomics.waitAsync(z,r>>2,r);j.value.then(HA);var s=r+120;Atomics.store(z,s>>2,1)}},HA=()=>fj(()=>{var r=_A();r&&(tr(r),vj())}),Qe=(r,j)=>{if(r==j)setTimeout(HA);else if(C)postMessage({targetThread:r,cmd:"checkMailbox"});else{var s=h.pthreads[r];if(!s)return;s.postMessage({cmd:"checkMailbox"})}},er=[],ze=(r,j,s,l,o,k,a)=>{er.length=0;for(var u=o>>3,c=o+l>>3;u<c;){var f;S[u++]?f=S[u++]:f=hA[u++],er.push(f)}var G=kn[r];h.currentProxiedOperationCallerThread=s;var I=G(...er);if(h.currentProxiedOperationCallerThread=0,k){I.then($=>Ej(k,a,$));return}return I},Xe=r=>{C?postMessage({cmd:"cleanupThread",thread:r}):Pr(r)},Ze=r=>{},Ye=()=>performance.timeOrigin+performance.now(),An=9007199254740992,rn=-9007199254740992,jn=r=>r<rn||r>An?NaN:Number(r),tn=()=>{},en=()=>{RA+=1},nn=()=>{throw en(),"unwind"},sn=r=>{VA("OOM")},ln=r=>{var j=x.length;r>>>=0,sn(r)};function Cj(r){return C?sA(2,0,1,r):52}function Gj(r,j,s,l){return C?sA(3,0,1,r,j,s,l):(j=jn(j),70)}var on=[null,[],[]],an=(r,j)=>{var s=on[r];j===0||j===10?((r===1?TA:N)(cj(s)),s.length=0):s.push(j)};function pj(r,j,s,l){if(C)return sA(4,0,1,r,j,s,l);for(var o=0,k=0;k<s;k++){var a=E[j>>2],u=E[j+4>>2];j+=8;for(var c=0;c<u;c++)an(r,x[a+c]);o+=u}return E[l>>2]=o,0}if(h.init(),ee(),Ce(),xt(),e.noExitRuntime&&(zA=e.noExitRuntime),e.print&&(TA=e.print),e.printErr&&(N=e.printErr),e.wasmBinary&&(gr=e.wasmBinary),e.arguments&&(v=e.arguments),e.thisProgram&&(B=e.thisProgram),e.preInit)for(typeof e.preInit=="function"&&(e.preInit=[e.preInit]);e.preInit.length>0;)e.preInit.shift()();var kn=[Ur,Sr,Cj,Gj,pj],hj,Ij,_A,nr,O,un,sr,mj,Ej,$j,Fj,ir,vj,gj,Lj,Hj,_j,cn,yj;function dn(r){hj=r.G,Ij=r.H,_A=r.J,nr=e._malloc=r.K,O=e._free=r.L,un=r.M,sr=r.N,mj=r.O,Ej=r.P,$j=r.Q,Fj=r.R,ir=r.S,vj=r.T,gj=r.U,Lj=r.V,Hj=r.W,_j=r.X,cn=yj=r.I}var xj;function qn(){xj={i:zt,C:Xt,h:Yt,o:Ae,n:he,m:me,e:Ee,b:$e,D:ge,l:He,q:_e,d:ye,c:xe,E:Je,g:Ue,p:Se,z:Ve,u:Qe,k:ze,s:Xe,y:tr,B:Ze,x:tn,A:nn,f:Ye,t:ln,r:QA,w:Cj,v:Gj,j:pj,a:X}}function Dj(){if(C){UA?.(e),xr();return}Dt();function r(){e.calledRun=!0,!GA&&(xr(),UA?.(e),e.onRuntimeInitialized?.(),Bt())}e.setStatus?(e.setStatus("Running..."),setTimeout(()=>{setTimeout(()=>e.setStatus(""),1),r()},1)):r()}var jA;return C||(jA=await Nr(),Dj()),_r?t=e:t=new Promise((r,j)=>{UA=r,Lr=j}),t}})();typeof Et=="object"&&typeof MA=="object"?(MA.exports=wA,MA.exports.default=wA):typeof define=="function"&&define.amd&&define([],()=>wA);var Hs=globalThis.name=="em-pthread";Hs&&wA()});var J={};En(J,{AdditionalCaptureBlocks:()=>gn,AdditionalPlaybackBlocks:()=>vn,ClockJumpCheckInterval:()=>Bn,ClockJumpThreshold:()=>Nn,ConnectInterval:()=>Tn,ConnectTimeout:()=>Pn,DefaultRefreshRate:()=>Hn,DefaultVideoCodec:()=>Un,HealthCheckTimeout:()=>Dn,MainConnectionPingInterval:()=>bn,MaxNumberOfDecoders:()=>yn,MinDBFs:()=>Jj,MinTokenLifetime:()=>wn,MinTokenRefreshInterval:()=>Mn,PlaybackPreload:()=>Ln,RenderQuantumSize:()=>xn,VadPreload:()=>_n,WebRtcIceTimeout:()=>Kn,WebRtcStatsSnapshotInterval:()=>Jn,WebRtcTimeout:()=>On});var vn=3,gn=3,Ln=3,Hn=250,_n=3,yn=512,xn=128,Jj=-758.596,Dn=1e4,Bn=1e3,Nn=1e4,bn=3e3,Jn=1e3,Kn=3e3,On=1e4,Pn=5e3,wn=6e4,Mn=5e3,Tn=[0,100,200,200,500],Un="H264";function aA(n,A,t){return n.postMessage(A,t)}function ar(n){return n.sampleRate*.02*(n.stereo?2:1)}function kr(n,A){let t=ar(n),e=t*A,i=e+t;return n.samples.subarray(e,i)}function ur(n,A,t){n.headers[A]=t.id}function Kj(n){return[n.values[0],n.values[1]]}function Oj(n,A){n.values[0]=A[0],n.values[1]=A[1]}function Pj(n,A){return n.values[2+A*5]}function wj(n,A,t){n.values[2+A*5]=t}function Mj(n,A){let t=2+A*5+1;return[n.values[t+0],n.values[t+1]]}function Tj(n,A,t){let e=2+A*5+1;n.values[e+0]=t[0],n.values[e+1]=t[1]}function Uj(n,A){return n.values[2+A*5+3]}function Sj(n,A,t){n.values[2+A*5+3]=t}function Vj(n,A){return n.values[2+A*5+4]}function Rj(n,A,t){n.values[2+A*5+4]=t}function Wj(n){return n.values[0]!==0}function Qj(n){return n.values[1]}function zj(n){return n.values[2]}function Xj(n){return n.values[3]}function Zj(n,A){return n.values[3]=A}function Yj(n){return n?Array.from(n).map(A=>A.toString(16).padStart(2,"0")).join(""):null}var Sn;(n=>{let A;(t=>(t[t.InvalidPassword=-1]="InvalidPassword",t[t.Unknown=0]="Unknown",t[t.Unencrypted=1]="Unencrypted",t[t.Encrypted=2]="Encrypted"))(A=n.PeerCipherStatus||={})})(Sn||={});function et(n){return{type:"Success",value:n}}function D(n){return{type:"Failure",reason:n}}var{Deno:At}=globalThis,Vn=typeof At?.noColor=="boolean"?At.noColor:!1,Rn=!Vn;function dr(n,A){return{open:\`\\x1B[\${n.join(";")}m\`,close:\`\\x1B[\${A}m\`,regexp:new RegExp(\`\\\\x1b\\\\[\${A}m\`,"g")}}function qr(n,A){return Rn?\`\${A.open}\${n.replace(A.regexp,A.open)}\${A.close}\`:n}function cr(n){return qr(n,dr([0],0))}function rt(n){return qr(n,dr([1],22))}function Wn(n){return qr(n,dr([2],22))}var Ts=new RegExp(["[\\\\u001B\\\\u009B][[\\\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\\\d\\\\/#&.:=?%@~_]+)*|[a-zA-Z\\\\d]+(?:;[-a-zA-Z\\\\d\\\\/#&.:=?%@~_]*)*)?\\\\u0007)","(?:(?:\\\\d{1,4}(?:;\\\\d{0,4})*)?[\\\\dA-PR-TXZcf-nq-uy=><~]))"].join("|"),"g"),Qn=new Date,yA=(n=>(n[n.CRITICAL=0]="CRITICAL",n[n.ERROR=1]="ERROR",n[n.WARN=2]="WARN",n[n.INFO=3]="INFO",n[n.DEBUG=4]="DEBUG",n))(yA||{}),nt={0:"\\u{1F4A5}",1:"\\u{1F534}",2:"\\u{1F7E1}",3:"\\u{1F535}",4:"\\u{1F7E3}"},zn={4:Wn,3:cr,2:cr,1:rt,0:rt};function Xn({message:n}){return String(n)}function jt(n){return JSON.stringify({timestamp:n.date.toISOString(),level:yA[n.level],message:n.message,extra:n.extra})}function tt(n){function A(q,C){return[Math.floor(q/C),q%C]}function t(){let q,C=n.date.valueOf()-Qn.valueOf();[C,q]=A(C,1e3);let[v,B]=A(C,60);return\`\${v.toString().padStart(4,"0")}:\${B.toString().padStart(2,"0")}.\${q.toString().padStart(3,"0")}\`}function e(){return n.extra===void 0?"":typeof Deno=="object"?" "+Deno.inspect(n.extra,{compact:!1,colors:!0,trailingComma:!0}).trimStart():" "+JSON.stringify(n.extra)}let i=nt[n.level],d=n.logger.name!==void 0?\`@\${n.logger.name}\`:"";return\`\${cr(t())}\${d} \${i} \${zn[n.level](String(n.message))}\${e()}\`}function Zn(n){let A=\`[\${n.date.toISOString()}]\`,t=\`[\${yA[n.level]}]\`,e=n.logger.name!==void 0?\`[\${n.logger.name}] \`:"",i=nt[n.level];return\`\${A} \${i} \${t.padEnd(7," ")} \${e}\${n.message}\`}function Yn(){return typeof Deno=="object"&&Deno.stdout.isTerminal()}var st=class{static sparse=Xn;static json=jt;static pretty=tt;static structured=Zn;static default=Yn()?tt:jt;constructor(){}},As=class{formatter;consoleObject;filter;constructor(n=st.default,A=4,t=console){this.filter=A,this.formatter=n,this.consoleObject=t}handle(n){let A=this.formatter(n);switch(n.level){case 0:case 1:this.consoleObject.error(A);break;case 2:this.consoleObject.warn(A);break;case 3:this.consoleObject.info(A);break;case 4:this.consoleObject.debug(A);break}}};var R=class{#A;sinks;filter;parent;get name(){return this.#A}constructor(n,A=void 0,t=[],e=void 0){this.#A=A,this.sinks=t,this.filter=n,this.parent=e}log(n,A,t=void 0){let e={date:new Date,level:n,logger:this,message:A,extra:t};this.filter<n||this.insert(e)}insert(n){if(!(this.filter<n.level)){for(let A of this.sinks)A.filter>=n.level&&A.handle(n);this.parent!==void 0&&this.parent.insert(n)}}error=this.log.bind(this,1);warn=this.log.bind(this,2);info=this.log.bind(this,3);debug=this.log.bind(this,4)},kA=new R(3,void 0,[new As]),rs=R.prototype.log.bind(kA,1),js=R.prototype.log.bind(kA,2),it=R.prototype.log.bind(kA,3),ts=R.prototype.log.bind(kA,4),Us=R.prototype.log.bind(kA);var lt;function ot(n,...A){let t=es(A);lt?lt?.info(n,t):it(n,t)}function es(...n){if(n.length===1&&typeof n[0]=="object"&&n[0]!==null)return{...n[0]};if(n.length>0)return{args:n}}function xA(n){return n.connectionId*4294967296+n.mediaId}function at(n){return{mediaId:n%4294967296,connectionId:Math.floor(n/4294967296)}}function T(n,A,t){let e;switch(A){case"f32":e=n.HEAPF32;break;case"u32":e=n.HEAPU32;break;case"i32":e=n.HEAP32;break;case"u8":e=n.HEAPU8;break;default:throw new Error(\`allocating \${A} is not supported\`)}let i=n._malloc(t*e.BYTES_PER_ELEMENT);if(i===0||i%e.BYTES_PER_ELEMENT!==0)throw new Error(\`failed allocating a \${t} \${A} array\`);let d=i/e.BYTES_PER_ELEMENT;return e.subarray(d,d+t)}function tA(n,A){n._free(A.byteOffset)}function fr(n,A,t,e){return{headers:T(n,"i32",t),samples:T(n,"f32",t*ar({sampleRate:A,stereo:e})),length:t,sampleRate:A,stereo:e}}function Cr(n,A){tA(n,A.headers),tA(n,A.samples)}function kt(n,A){return{values:T(n,"f32",2+A*5),length:A}}function ut(n,A){tA(n,A.values)}function ct(n){return{values:T(n,"f32",4)}}function dt(n,A){tA(n,A.values)}function qt(n){let A=n.length,t=0,e=0;for(;e<A;){let i=n.charCodeAt(e++);if((i&4294967168)===0){t++;continue}else if((i&4294965248)===0)t+=2;else{if(i>=55296&&i<=56319&&e<A){let d=n.charCodeAt(e);(d&64512)===56320&&(++e,i=((i&1023)<<10)+(d&1023)+65536)}(i&4294901760)===0?t+=3:t+=4}}return t}function ns(n,A,t){let e=n.length,i=t,d=0;for(;d<e;){let q=n.charCodeAt(d++);if((q&4294967168)===0){A[i++]=q;continue}else if((q&4294965248)===0)A[i++]=q>>6&31|192;else{if(q>=55296&&q<=56319&&d<e){let C=n.charCodeAt(d);(C&64512)===56320&&(++d,q=((q&1023)<<10)+(C&1023)+65536)}(q&4294901760)===0?(A[i++]=q>>12&15|224,A[i++]=q>>6&63|128):(A[i++]=q>>18&7|240,A[i++]=q>>12&63|128,A[i++]=q>>6&63|128)}A[i++]=q&63|128}}var ss=new TextEncoder,is=50;function ls(n,A,t){ss.encodeInto(n,A.subarray(t))}function ft(n,A,t){n.length>is?ls(n,A,t):ns(n,A,t)}var os=4096;function Gr(n,A,t){let e=A,i=e+t,d=[],q="";for(;e<i;){let C=n[e++];if((C&128)===0)d.push(C);else if((C&224)===192){let v=n[e++]&63;d.push((C&31)<<6|v)}else if((C&240)===224){let v=n[e++]&63,B=n[e++]&63;d.push((C&31)<<12|v<<6|B)}else if((C&248)===240){let v=n[e++]&63,B=n[e++]&63,CA=n[e++]&63,w=(C&7)<<18|v<<12|B<<6|CA;w>65535&&(w-=65536,d.push(w>>>10&1023|55296),w=56320|w&1023),d.push(w)}else d.push(C);d.length>=os&&(q+=String.fromCharCode(...d),d.length=0)}return d.length>0&&(q+=String.fromCharCode(...d)),q}var as=new TextDecoder,ks=200;function us(n,A,t){let e=n.subarray(A,A+t);return as.decode(e)}function Ct(n,A,t){return t>ks?us(n,A,t):Gr(n,A,t)}var W=class{constructor(A,t){this.type=A,this.data=t}};var L=class n extends Error{constructor(A){super(A);let t=Object.create(n.prototype);Object.setPrototypeOf(this,t),Object.defineProperty(this,"name",{configurable:!0,enumerable:!1,value:n.name})}};function Gt(n,A,t){let e=t/4294967296,i=t;n.setUint32(A,e),n.setUint32(A+4,i)}function DA(n,A,t){let e=Math.floor(t/4294967296),i=t;n.setUint32(A,e),n.setUint32(A+4,i)}function BA(n,A){let t=n.getInt32(A),e=n.getUint32(A+4);return t*4294967296+e}function pt(n,A){let t=n.getUint32(A),e=n.getUint32(A+4);return t*4294967296+e}var cs=-1,ds=4294967296-1,qs=17179869184-1;function fs({sec:n,nsec:A}){if(n>=0&&A>=0&&n<=qs)if(A===0&&n<=ds){let t=new Uint8Array(4);return new DataView(t.buffer).setUint32(0,n),t}else{let t=n/4294967296,e=n&4294967295,i=new Uint8Array(8),d=new DataView(i.buffer);return d.setUint32(0,A<<2|t&3),d.setUint32(4,e),i}else{let t=new Uint8Array(12),e=new DataView(t.buffer);return e.setUint32(0,A),DA(e,4,n),t}}function Cs(n){let A=n.getTime(),t=Math.floor(A/1e3),e=(A-t*1e3)*1e6,i=Math.floor(e/1e9);return{sec:t+i,nsec:e-i*1e9}}function Gs(n){if(n instanceof Date){let A=Cs(n);return fs(A)}else return null}function ps(n){let A=new DataView(n.buffer,n.byteOffset,n.byteLength);switch(n.byteLength){case 4:return{sec:A.getUint32(0),nsec:0};case 8:{let t=A.getUint32(0),e=A.getUint32(4),i=(t&3)*4294967296+e,d=t>>>2;return{sec:i,nsec:d}}case 12:{let t=BA(A,4),e=A.getUint32(0);return{sec:t,nsec:e}}default:throw new L(\`Unrecognized data size for timestamp (expected 4, 8, or 12): \${n.length}\`)}}function hs(n){let A=ps(n);return new Date(A.sec*1e3+A.nsec/1e6)}var ht={type:cs,encode:Gs,decode:hs};var U=class{constructor(){this.builtInEncoders=[],this.builtInDecoders=[],this.encoders=[],this.decoders=[],this.register(ht)}register({type:A,encode:t,decode:e}){if(A>=0)this.encoders[A]=t,this.decoders[A]=e;else{let i=-1-A;this.builtInEncoders[i]=t,this.builtInDecoders[i]=e}}tryToEncode(A,t){for(let e=0;e<this.builtInEncoders.length;e++){let i=this.builtInEncoders[e];if(i!=null){let d=i(A,t);if(d!=null){let q=-1-e;return new W(q,d)}}}for(let e=0;e<this.encoders.length;e++){let i=this.encoders[e];if(i!=null){let d=i(A,t);if(d!=null){let q=e;return new W(q,d)}}}return A instanceof W?A:null}decode(A,t,e){let i=t<0?this.builtInDecoders[-1-t]:this.decoders[t];return i?i(A,t,e):new W(t,A)}};U.defaultCodec=new U;function Is(n){return n instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&n instanceof SharedArrayBuffer}function uA(n){return n instanceof Uint8Array?n:ArrayBuffer.isView(n)?new Uint8Array(n.buffer,n.byteOffset,n.byteLength):Is(n)?new Uint8Array(n):Uint8Array.from(n)}var ms=100,Es=2048,NA=class n{constructor(A){this.entered=!1,this.extensionCodec=A?.extensionCodec??U.defaultCodec,this.context=A?.context,this.useBigInt64=A?.useBigInt64??!1,this.maxDepth=A?.maxDepth??ms,this.initialBufferSize=A?.initialBufferSize??Es,this.sortKeys=A?.sortKeys??!1,this.forceFloat32=A?.forceFloat32??!1,this.ignoreUndefined=A?.ignoreUndefined??!1,this.forceIntegerToFloat=A?.forceIntegerToFloat??!1,this.pos=0,this.view=new DataView(new ArrayBuffer(this.initialBufferSize)),this.bytes=new Uint8Array(this.view.buffer)}clone(){return new n({extensionCodec:this.extensionCodec,context:this.context,useBigInt64:this.useBigInt64,maxDepth:this.maxDepth,initialBufferSize:this.initialBufferSize,sortKeys:this.sortKeys,forceFloat32:this.forceFloat32,ignoreUndefined:this.ignoreUndefined,forceIntegerToFloat:this.forceIntegerToFloat})}reinitializeState(){this.pos=0}encodeSharedRef(A){if(this.entered)return this.clone().encodeSharedRef(A);try{return this.entered=!0,this.reinitializeState(),this.doEncode(A,1),this.bytes.subarray(0,this.pos)}finally{this.entered=!1}}encode(A){if(this.entered)return this.clone().encode(A);try{return this.entered=!0,this.reinitializeState(),this.doEncode(A,1),this.bytes.slice(0,this.pos)}finally{this.entered=!1}}doEncode(A,t){if(t>this.maxDepth)throw new Error(\`Too deep objects in depth \${t}\`);A==null?this.encodeNil():typeof A=="boolean"?this.encodeBoolean(A):typeof A=="number"?this.forceIntegerToFloat?this.encodeNumberAsFloat(A):this.encodeNumber(A):typeof A=="string"?this.encodeString(A):this.useBigInt64&&typeof A=="bigint"?this.encodeBigInt64(A):this.encodeObject(A,t)}ensureBufferSizeToWrite(A){let t=this.pos+A;this.view.byteLength<t&&this.resizeBuffer(t*2)}resizeBuffer(A){let t=new ArrayBuffer(A),e=new Uint8Array(t),i=new DataView(t);e.set(this.bytes),this.view=i,this.bytes=e}encodeNil(){this.writeU8(192)}encodeBoolean(A){A===!1?this.writeU8(194):this.writeU8(195)}encodeNumber(A){!this.forceIntegerToFloat&&Number.isSafeInteger(A)?A>=0?A<128?this.writeU8(A):A<256?(this.writeU8(204),this.writeU8(A)):A<65536?(this.writeU8(205),this.writeU16(A)):A<4294967296?(this.writeU8(206),this.writeU32(A)):this.useBigInt64?this.encodeNumberAsFloat(A):(this.writeU8(207),this.writeU64(A)):A>=-32?this.writeU8(224|A+32):A>=-128?(this.writeU8(208),this.writeI8(A)):A>=-32768?(this.writeU8(209),this.writeI16(A)):A>=-2147483648?(this.writeU8(210),this.writeI32(A)):this.useBigInt64?this.encodeNumberAsFloat(A):(this.writeU8(211),this.writeI64(A)):this.encodeNumberAsFloat(A)}encodeNumberAsFloat(A){this.forceFloat32?(this.writeU8(202),this.writeF32(A)):(this.writeU8(203),this.writeF64(A))}encodeBigInt64(A){A>=BigInt(0)?(this.writeU8(207),this.writeBigUint64(A)):(this.writeU8(211),this.writeBigInt64(A))}writeStringHeader(A){if(A<32)this.writeU8(160+A);else if(A<256)this.writeU8(217),this.writeU8(A);else if(A<65536)this.writeU8(218),this.writeU16(A);else if(A<4294967296)this.writeU8(219),this.writeU32(A);else throw new Error(\`Too long string: \${A} bytes in UTF-8\`)}encodeString(A){let e=qt(A);this.ensureBufferSizeToWrite(5+e),this.writeStringHeader(e),ft(A,this.bytes,this.pos),this.pos+=e}encodeObject(A,t){let e=this.extensionCodec.tryToEncode(A,this.context);if(e!=null)this.encodeExtension(e);else if(Array.isArray(A))this.encodeArray(A,t);else if(ArrayBuffer.isView(A))this.encodeBinary(A);else if(typeof A=="object")this.encodeMap(A,t);else throw new Error(\`Unrecognized object: \${Object.prototype.toString.apply(A)}\`)}encodeBinary(A){let t=A.byteLength;if(t<256)this.writeU8(196),this.writeU8(t);else if(t<65536)this.writeU8(197),this.writeU16(t);else if(t<4294967296)this.writeU8(198),this.writeU32(t);else throw new Error(\`Too large binary: \${t}\`);let e=uA(A);this.writeU8a(e)}encodeArray(A,t){let e=A.length;if(e<16)this.writeU8(144+e);else if(e<65536)this.writeU8(220),this.writeU16(e);else if(e<4294967296)this.writeU8(221),this.writeU32(e);else throw new Error(\`Too large array: \${e}\`);for(let i of A)this.doEncode(i,t+1)}countWithoutUndefined(A,t){let e=0;for(let i of t)A[i]!==void 0&&e++;return e}encodeMap(A,t){let e=Object.keys(A);this.sortKeys&&e.sort();let i=this.ignoreUndefined?this.countWithoutUndefined(A,e):e.length;if(i<16)this.writeU8(128+i);else if(i<65536)this.writeU8(222),this.writeU16(i);else if(i<4294967296)this.writeU8(223),this.writeU32(i);else throw new Error(\`Too large map object: \${i}\`);for(let d of e){let q=A[d];this.ignoreUndefined&&q===void 0||(this.encodeString(d),this.doEncode(q,t+1))}}encodeExtension(A){if(typeof A.data=="function"){let e=A.data(this.pos+6),i=e.length;if(i>=4294967296)throw new Error(\`Too large extension object: \${i}\`);this.writeU8(201),this.writeU32(i),this.writeI8(A.type),this.writeU8a(e);return}let t=A.data.length;if(t===1)this.writeU8(212);else if(t===2)this.writeU8(213);else if(t===4)this.writeU8(214);else if(t===8)this.writeU8(215);else if(t===16)this.writeU8(216);else if(t<256)this.writeU8(199),this.writeU8(t);else if(t<65536)this.writeU8(200),this.writeU16(t);else if(t<4294967296)this.writeU8(201),this.writeU32(t);else throw new Error(\`Too large extension object: \${t}\`);this.writeI8(A.type),this.writeU8a(A.data)}writeU8(A){this.ensureBufferSizeToWrite(1),this.view.setUint8(this.pos,A),this.pos++}writeU8a(A){let t=A.length;this.ensureBufferSizeToWrite(t),this.bytes.set(A,this.pos),this.pos+=t}writeI8(A){this.ensureBufferSizeToWrite(1),this.view.setInt8(this.pos,A),this.pos++}writeU16(A){this.ensureBufferSizeToWrite(2),this.view.setUint16(this.pos,A),this.pos+=2}writeI16(A){this.ensureBufferSizeToWrite(2),this.view.setInt16(this.pos,A),this.pos+=2}writeU32(A){this.ensureBufferSizeToWrite(4),this.view.setUint32(this.pos,A),this.pos+=4}writeI32(A){this.ensureBufferSizeToWrite(4),this.view.setInt32(this.pos,A),this.pos+=4}writeF32(A){this.ensureBufferSizeToWrite(4),this.view.setFloat32(this.pos,A),this.pos+=4}writeF64(A){this.ensureBufferSizeToWrite(8),this.view.setFloat64(this.pos,A),this.pos+=8}writeU64(A){this.ensureBufferSizeToWrite(8),Gt(this.view,this.pos,A),this.pos+=8}writeI64(A){this.ensureBufferSizeToWrite(8),DA(this.view,this.pos,A),this.pos+=8}writeBigUint64(A){this.ensureBufferSizeToWrite(8),this.view.setBigUint64(this.pos,A),this.pos+=8}writeBigInt64(A){this.ensureBufferSizeToWrite(8),this.view.setBigInt64(this.pos,A),this.pos+=8}};function pr(n,A){return new NA(A).encodeSharedRef(n)}function bA(n){return\`\${n<0?"-":""}0x\${Math.abs(n).toString(16).padStart(2,"0")}\`}var $s=16,Fs=16,JA=class{constructor(A=$s,t=Fs){this.hit=0,this.miss=0,this.maxKeyLength=A,this.maxLengthPerKey=t,this.caches=[];for(let e=0;e<this.maxKeyLength;e++)this.caches.push([])}canBeCached(A){return A>0&&A<=this.maxKeyLength}find(A,t,e){let i=this.caches[e-1];A:for(let d of i){let q=d.bytes;for(let C=0;C<e;C++)if(q[C]!==A[t+C])continue A;return d.str}return null}store(A,t){let e=this.caches[A.length-1],i={bytes:A,str:t};e.length>=this.maxLengthPerKey?e[Math.random()*e.length|0]=i:e.push(i)}decode(A,t,e){let i=this.find(A,t,e);if(i!=null)return this.hit++,i;this.miss++;let d=Gr(A,t,e),q=Uint8Array.prototype.slice.call(A,t,t+e);return this.store(q,d),d}};var hr="array",qA="map_key",mt="map_value",vs=n=>{if(typeof n=="string"||typeof n=="number")return n;throw new L("The type of key must be string or number but "+typeof n)},Ir=class{constructor(){this.stack=[],this.stackHeadPosition=-1}get length(){return this.stackHeadPosition+1}top(){return this.stack[this.stackHeadPosition]}pushArrayState(A){let t=this.getUninitializedStateFromPool();t.type=hr,t.position=0,t.size=A,t.array=new Array(A)}pushMapState(A){let t=this.getUninitializedStateFromPool();t.type=qA,t.readCount=0,t.size=A,t.map={}}getUninitializedStateFromPool(){if(this.stackHeadPosition++,this.stackHeadPosition===this.stack.length){let A={type:void 0,size:0,array:void 0,position:0,readCount:0,map:void 0,key:null};this.stack.push(A)}return this.stack[this.stackHeadPosition]}release(A){if(this.stack[this.stackHeadPosition]!==A)throw new Error("Invalid stack state. Released state is not on top of the stack.");if(A.type===hr){let e=A;e.size=0,e.array=void 0,e.position=0,e.type=void 0}if(A.type===qA||A.type===mt){let e=A;e.size=0,e.map=void 0,e.readCount=0,e.type=void 0}this.stackHeadPosition--}reset(){this.stack.length=0,this.stackHeadPosition=-1}},dA=-1,mr=new DataView(new ArrayBuffer(0)),gs=new Uint8Array(mr.buffer);try{mr.getInt8(0)}catch(n){if(!(n instanceof RangeError))throw new Error("This module is not supported in the current JavaScript engine because DataView does not throw RangeError on out-of-bounds access")}var It=new RangeError("Insufficient data"),Ls=new JA,KA=class n{constructor(A){this.totalPos=0,this.pos=0,this.view=mr,this.bytes=gs,this.headByte=dA,this.stack=new Ir,this.entered=!1,this.extensionCodec=A?.extensionCodec??U.defaultCodec,this.context=A?.context,this.useBigInt64=A?.useBigInt64??!1,this.rawStrings=A?.rawStrings??!1,this.maxStrLength=A?.maxStrLength??4294967295,this.maxBinLength=A?.maxBinLength??4294967295,this.maxArrayLength=A?.maxArrayLength??4294967295,this.maxMapLength=A?.maxMapLength??4294967295,this.maxExtLength=A?.maxExtLength??4294967295,this.keyDecoder=A?.keyDecoder!==void 0?A.keyDecoder:Ls,this.mapKeyConverter=A?.mapKeyConverter??vs}clone(){return new n({extensionCodec:this.extensionCodec,context:this.context,useBigInt64:this.useBigInt64,rawStrings:this.rawStrings,maxStrLength:this.maxStrLength,maxBinLength:this.maxBinLength,maxArrayLength:this.maxArrayLength,maxMapLength:this.maxMapLength,maxExtLength:this.maxExtLength,keyDecoder:this.keyDecoder})}reinitializeState(){this.totalPos=0,this.headByte=dA,this.stack.reset()}setBuffer(A){let t=uA(A);this.bytes=t,this.view=new DataView(t.buffer,t.byteOffset,t.byteLength),this.pos=0}appendBuffer(A){if(this.headByte===dA&&!this.hasRemaining(1))this.setBuffer(A);else{let t=this.bytes.subarray(this.pos),e=uA(A),i=new Uint8Array(t.length+e.length);i.set(t),i.set(e,t.length),this.setBuffer(i)}}hasRemaining(A){return this.view.byteLength-this.pos>=A}createExtraByteError(A){let{view:t,pos:e}=this;return new RangeError(\`Extra \${t.byteLength-e} of \${t.byteLength} byte(s) found at buffer[\${A}]\`)}decode(A){if(this.entered)return this.clone().decode(A);try{this.entered=!0,this.reinitializeState(),this.setBuffer(A);let t=this.doDecodeSync();if(this.hasRemaining(1))throw this.createExtraByteError(this.pos);return t}finally{this.entered=!1}}*decodeMulti(A){if(this.entered){yield*this.clone().decodeMulti(A);return}try{for(this.entered=!0,this.reinitializeState(),this.setBuffer(A);this.hasRemaining(1);)yield this.doDecodeSync()}finally{this.entered=!1}}async decodeAsync(A){if(this.entered)return this.clone().decodeAsync(A);try{this.entered=!0;let t=!1,e;for await(let C of A){if(t)throw this.entered=!1,this.createExtraByteError(this.totalPos);this.appendBuffer(C);try{e=this.doDecodeSync(),t=!0}catch(v){if(!(v instanceof RangeError))throw v}this.totalPos+=this.pos}if(t){if(this.hasRemaining(1))throw this.createExtraByteError(this.totalPos);return e}let{headByte:i,pos:d,totalPos:q}=this;throw new RangeError(\`Insufficient data in parsing \${bA(i)} at \${q} (\${d} in the current buffer)\`)}finally{this.entered=!1}}decodeArrayStream(A){return this.decodeMultiAsync(A,!0)}decodeStream(A){return this.decodeMultiAsync(A,!1)}async*decodeMultiAsync(A,t){if(this.entered){yield*this.clone().decodeMultiAsync(A,t);return}try{this.entered=!0;let e=t,i=-1;for await(let d of A){if(t&&i===0)throw this.createExtraByteError(this.totalPos);this.appendBuffer(d),e&&(i=this.readArraySize(),e=!1,this.complete());try{for(;yield this.doDecodeSync(),--i!==0;);}catch(q){if(!(q instanceof RangeError))throw q}this.totalPos+=this.pos}}finally{this.entered=!1}}doDecodeSync(){A:for(;;){let A=this.readHeadByte(),t;if(A>=224)t=A-256;else if(A<192)if(A<128)t=A;else if(A<144){let i=A-128;if(i!==0){this.pushMapState(i),this.complete();continue A}else t={}}else if(A<160){let i=A-144;if(i!==0){this.pushArrayState(i),this.complete();continue A}else t=[]}else{let i=A-160;t=this.decodeString(i,0)}else if(A===192)t=null;else if(A===194)t=!1;else if(A===195)t=!0;else if(A===202)t=this.readF32();else if(A===203)t=this.readF64();else if(A===204)t=this.readU8();else if(A===205)t=this.readU16();else if(A===206)t=this.readU32();else if(A===207)this.useBigInt64?t=this.readU64AsBigInt():t=this.readU64();else if(A===208)t=this.readI8();else if(A===209)t=this.readI16();else if(A===210)t=this.readI32();else if(A===211)this.useBigInt64?t=this.readI64AsBigInt():t=this.readI64();else if(A===217){let i=this.lookU8();t=this.decodeString(i,1)}else if(A===218){let i=this.lookU16();t=this.decodeString(i,2)}else if(A===219){let i=this.lookU32();t=this.decodeString(i,4)}else if(A===220){let i=this.readU16();if(i!==0){this.pushArrayState(i),this.complete();continue A}else t=[]}else if(A===221){let i=this.readU32();if(i!==0){this.pushArrayState(i),this.complete();continue A}else t=[]}else if(A===222){let i=this.readU16();if(i!==0){this.pushMapState(i),this.complete();continue A}else t={}}else if(A===223){let i=this.readU32();if(i!==0){this.pushMapState(i),this.complete();continue A}else t={}}else if(A===196){let i=this.lookU8();t=this.decodeBinary(i,1)}else if(A===197){let i=this.lookU16();t=this.decodeBinary(i,2)}else if(A===198){let i=this.lookU32();t=this.decodeBinary(i,4)}else if(A===212)t=this.decodeExtension(1,0);else if(A===213)t=this.decodeExtension(2,0);else if(A===214)t=this.decodeExtension(4,0);else if(A===215)t=this.decodeExtension(8,0);else if(A===216)t=this.decodeExtension(16,0);else if(A===199){let i=this.lookU8();t=this.decodeExtension(i,1)}else if(A===200){let i=this.lookU16();t=this.decodeExtension(i,2)}else if(A===201){let i=this.lookU32();t=this.decodeExtension(i,4)}else throw new L(\`Unrecognized type byte: \${bA(A)}\`);this.complete();let e=this.stack;for(;e.length>0;){let i=e.top();if(i.type===hr)if(i.array[i.position]=t,i.position++,i.position===i.size)t=i.array,e.release(i);else continue A;else if(i.type===qA){if(t==="__proto__")throw new L("The key __proto__ is not allowed");i.key=this.mapKeyConverter(t),i.type=mt;continue A}else if(i.map[i.key]=t,i.readCount++,i.readCount===i.size)t=i.map,e.release(i);else{i.key=null,i.type=qA;continue A}}return t}}readHeadByte(){return this.headByte===dA&&(this.headByte=this.readU8()),this.headByte}complete(){this.headByte=dA}readArraySize(){let A=this.readHeadByte();switch(A){case 220:return this.readU16();case 221:return this.readU32();default:{if(A<160)return A-144;throw new L(\`Unrecognized array type byte: \${bA(A)}\`)}}}pushMapState(A){if(A>this.maxMapLength)throw new L(\`Max length exceeded: map length (\${A}) > maxMapLengthLength (\${this.maxMapLength})\`);this.stack.pushMapState(A)}pushArrayState(A){if(A>this.maxArrayLength)throw new L(\`Max length exceeded: array length (\${A}) > maxArrayLength (\${this.maxArrayLength})\`);this.stack.pushArrayState(A)}decodeString(A,t){return!this.rawStrings||this.stateIsMapKey()?this.decodeUtf8String(A,t):this.decodeBinary(A,t)}decodeUtf8String(A,t){if(A>this.maxStrLength)throw new L(\`Max length exceeded: UTF-8 byte length (\${A}) > maxStrLength (\${this.maxStrLength})\`);if(this.bytes.byteLength<this.pos+t+A)throw It;let e=this.pos+t,i;return this.stateIsMapKey()&&this.keyDecoder?.canBeCached(A)?i=this.keyDecoder.decode(this.bytes,e,A):i=Ct(this.bytes,e,A),this.pos+=t+A,i}stateIsMapKey(){return this.stack.length>0?this.stack.top().type===qA:!1}decodeBinary(A,t){if(A>this.maxBinLength)throw new L(\`Max length exceeded: bin length (\${A}) > maxBinLength (\${this.maxBinLength})\`);if(!this.hasRemaining(A+t))throw It;let e=this.pos+t,i=this.bytes.subarray(e,e+A);return this.pos+=t+A,i}decodeExtension(A,t){if(A>this.maxExtLength)throw new L(\`Max length exceeded: ext length (\${A}) > maxExtLength (\${this.maxExtLength})\`);let e=this.view.getInt8(this.pos+t),i=this.decodeBinary(A,t+1);return this.extensionCodec.decode(i,e,this.context)}lookU8(){return this.view.getUint8(this.pos)}lookU16(){return this.view.getUint16(this.pos)}lookU32(){return this.view.getUint32(this.pos)}readU8(){let A=this.view.getUint8(this.pos);return this.pos++,A}readI8(){let A=this.view.getInt8(this.pos);return this.pos++,A}readU16(){let A=this.view.getUint16(this.pos);return this.pos+=2,A}readI16(){let A=this.view.getInt16(this.pos);return this.pos+=2,A}readU32(){let A=this.view.getUint32(this.pos);return this.pos+=4,A}readI32(){let A=this.view.getInt32(this.pos);return this.pos+=4,A}readU64(){let A=pt(this.view,this.pos);return this.pos+=8,A}readI64(){let A=BA(this.view,this.pos);return this.pos+=8,A}readU64AsBigInt(){let A=this.view.getBigUint64(this.pos);return this.pos+=8,A}readI64AsBigInt(){let A=this.view.getBigInt64(this.pos);return this.pos+=8,A}readF32(){let A=this.view.getFloat32(this.pos);return this.pos+=4,A}readF64(){let A=this.view.getFloat64(this.pos);return this.pos+=8,A}};function Er(n,A){return new KA(A).decode(n)}var fA=class n{constructor(A,t,e,i,d){this.mediaIds=A;this.sequenceNumber=t;this.timeStamp=e;this.isEndOfSpurt=i;this.payload=d}static parse(A){let t;try{t=Er(A)}catch{return D("not valid msgpack")}if(!Array.isArray(t))return D("container must be an array");if(t.length<6)return D("missing fields");if(t[0]!==1)return D("unknown type");if(!Array.isArray(t[1]))return D("media ids must be an array");if(!t[1].every(B=>typeof B=="number"))return D("media ids must be numbers");if(typeof t[2]!="number")return D("sequence number must be a number");if(typeof t[3]!="number")return D("timestamp must be a number");if(typeof t[4]!="number")return D("flags must be a number");let e=t[1],i=t[2]>>>0,d=t[3]>>>0,C=(t[4]&1)!==0,v=t[t.length-1];return v instanceof Uint8Array?et(new n(e,i,d,C,v)):D("payload must be bytes")}toBytes(){let A=Number(this.isEndOfSpurt),t=[1,this.mediaIds,this.sequenceNumber>>>0,this.timeStamp>>>0,A,this.payload];return new Uint8Array(pr(t,{forceFloat32:!0,ignoreUndefined:!0}))}};var OA=class{constructor(A,t){this.sampleRate=A;this.wasm=t;this.sequenceNumber=Math.random()*Math.pow(2,32)>>0;this.timestamp=Math.random()*Math.pow(2,32)>>0;this.connections=[];this.monitoring=!1;this.active=!1;this.stats={numberPackets:0,numberTicks:0,numberPacketError:0,numberPacketsMediaNotFound:0};this.encoder=new t.Encoder(A,15,!0,J.VadPreload),this.encoder.complexity=navigator.hardwareConcurrency>=4?6:4,this.information=ct(this.wasm),this.outBuffer=T(this.wasm,"u8",1270),Zj(this.information,1)}setVad(A){this.encoder.set_volume_gate(A.volumeGate!==void 0,A.volumeGate?.attackThreshold??0,A.volumeGate?.releaseThreshold??0),this.encoder.set_speech_detection(A.voiceActivity!==void 0,A.voiceActivity?.attackThreshold??0,A.voiceActivity?.releaseThreshold??0)}setMedias(A){this.connections=A.filter(({mediaIds:t})=>t.length>0)}close(){dt(this.wasm,this.information),tA(this.wasm,this.outBuffer),this.encoder.delete()}encode(A){for(this.encoder.push(A.byteOffset,this.information.values.byteOffset);;){let t=this.encoder.pop(this.connections.length===0?0:this.outBuffer.byteOffset,this.outBuffer.length);if(t===0)break;if(t<0){ot(\`failed encoding packet: \${t}\`);return}if(this.timestamp=this.timestamp+1800>>0,t===1)continue;this.sequenceNumber=this.sequenceNumber+1>>0;let e=this.active&&!this.encoder.active;this.active=this.encoder.active,this.monitoring=this.connections.some(i=>i.id===0);for(let i of this.connections){if(this.monitoring&&i.id!==0)continue;let d=new fA(i.mediaIds,this.sequenceNumber,this.timestamp,e,this.outBuffer.subarray(0,t));aA(globalThis,["sendPacket",{connectionId:i.id,packet:d.toBytes()}])}}}onMessage(A){let[t,e]=A;switch(t){case"captureSetVad":this?.setVad(e);break;case"captureSetMedias":this?.setMedias(e.connections);break;case"close":this.close();break;case"dump":e.result.postMessage(this.dump());break}}dump(){return{sequenceNumber:this.sequenceNumber,timestamp:this.timestamp,connections:this.connections.map(A=>\`\${A.id} => \${A.mediaIds.join(",")}\`),active:this.active,monitoring:this.monitoring,information:{active:Wj(this.information),speechProbability:Qj(this.information),rmsDBFS:zj(this.information),volume:Xj(this.information)},encoder:{sample_rate:this.encoder.sample_rate,fec_packet_loss:this.encoder.fec_packet_loss,voip:this.encoder.voip,vad_preload:this.encoder.vad_preload,complexity:this.encoder.complexity,speech_probability:this.encoder.speech_probability,rms_dbfs:this.encoder.rms_dbfs,active:this.encoder.active,speech_detection_enabled:this.encoder.speech_detection_enabled,speech_detection_going_active:this.encoder.speech_detection_going_active,speech_detection_going_inactive:this.encoder.speech_detection_going_inactive,volume_gate_enabled:this.encoder.volume_gate_enabled,volume_gate_going_active:this.encoder.volume_gate_going_active,volume_gate_going_inactive:this.encoder.volume_gate_going_inactive}}}},PA=class{constructor(A){this.wasm=A;this.medias=new Map;this.stats={numberPackets:0,numberTicks:0,numberPacketError:0,numberPacketsMediaNotFound:0,numberTicksWithAudio:0};this.largestIndex=-1;this.decoders=T(this.wasm,"u32",J.MaxNumberOfDecoders),this.information=kt(this.wasm,J.MaxNumberOfDecoders),Oj(this.information,[1,1])}close(){ut(this.wasm,this.information);for(let{decoder:A}of this.medias.values())A.delete()}receivePacket(A,t){this.stats.numberPackets++;let e=fA.parse(t);if(e.type==="Failure"){this.stats.numberPacketError++;let i=Array.from(t).map(d=>d.toString(16).padStart(2,"0")).join("");console.error(\`failed decoding audio packet; reason: \${e.reason}, connection: \${A}, dump: \${i}\`);return}for(let i of e.value.mediaIds){let d=this.medias.get(xA({connectionId:A,mediaId:i}));if(d===void 0){this.stats.numberPacketsMediaNotFound++;continue}d.lastPacket=t;let q=T(this.wasm,"u8",e.value.payload.length);q.set(e.value.payload),d.decoder.push(e.value.sequenceNumber,e.value.timeStamp,e.value.isEndOfSpurt,q.byteOffset,q.length)}}insertMedia(A,t,e,i=[1,1]){let d=xA({connectionId:t,mediaId:e}),q=new this.wasm.Decoder;this.medias.set(d,{index:A,decoder:q,lastPacket:void 0}),this.decoders[A]=q.$$.ptr,this.largestIndex=Math.max(this.largestIndex,A),Tj(this.information,A,i),Rj(this.information,A,0),Sj(this.information,A,0)}removeMedia(A,t,e){let i=xA({connectionId:t,mediaId:e}),d=this.medias.get(i);if(!(d===void 0||d.index!==A)&&(this.medias.delete(i),wj(this.information,A,0),this.decoders[A]=0,d.decoder.delete(),A===this.largestIndex)){for(A=A-1;A>=0&&this.decoders[A]===0;A--);this.largestIndex=A}}decode(A){return{hasAudio:this.wasm.pop_many(this.decoders.byteOffset,this.information.values.byteOffset,this.largestIndex+1,A.byteOffset)}}onMessage(A){let[t,e]=A;switch(t){case"playbackReceivePacket":this.receivePacket(e.connectionId,e.packet);break;case"playbackUpdateMedias":for(let{index:i,connectionId:d,mediaId:q}of e.removed)this.removeMedia(i,d,q);for(let{index:i,connectionId:d,mediaId:q,volume:C}of e.added)this.insertMedia(i,d,q,C);break;case"close":this.close();break;case"dump":e.result.postMessage(this.dump());break}}dump(){let A=[];for(let[t,e]of this.medias){let i=at(t);A.push({index:e.index,connectionId:i.connectionId,mediaId:i.mediaId,rmsDBFS:Pj(this.information,e.index),volume:Mj(this.information,e.index),voicedBlocks:Vj(this.information,e.index),silentBlocks:Uj(this.information,e.index),time:e.decoder.time,consecutive_silence:e.decoder.consecutive_silence,last_voiced_time_point:e.decoder.last_voiced_time_point,sequence_number:e.decoder.sequence_number,packetsSeen:e.decoder.packets_seen,packetsInvalid:e.decoder.packets_invalid,packetsTooLate:e.decoder.packets_too_late,packetsTooEarly:e.decoder.packets_too_early,packetsRepeated:e.decoder.packets_repeated,packetsProcessed:e.decoder.packets_processed,packetsLost:e.decoder.packets_lost,rewinds:e.decoder.rewinds,cacheLength:e.decoder.cache_length,lastPacket:Yj(e.lastPacket)})}return{largestIndex:this.largestIndex,globalVolume:Kj(this.information),decoders:A}}};var Lt=Fn($t()),Ft=(0,Lt.default)(),vt,gt;globalThis.addEventListener("message",$r);async function $r(n){let A=n.data,[t,e]=A;switch(t){case"captureInit":e.workletPort.onmessage=$r,vt=new Fr(e.sampleRate,await Ft);break;case"playbackInit":e.workletPort.onmessage=$r,gt=new vr(await Ft);break;case"close":globalThis.close();break}vt?.onMessage(A),gt?.onMessage(A)}var Fr=class extends OA{constructor(t,e){super(t,e);this.id=-1;this.samples=fr(this.wasm,t,2+J.VadPreload+J.AdditionalCaptureBlocks,!1),aA(globalThis,["captureReady",{sampleBuffer:this.samples,informationBuffer:this.information}])}close(){super.close(),Cr(this.wasm,this.samples)}onMessage(t){super.onMessage(t);let[e,i]=t;e==="captureTick"&&this.tick(i.id)}tick(t){for(;this.id<t;this.id+=1)this.encode(kr(this.samples,this.id%this.samples.length))}dump(){return{type:"shared capture worker",id:this.id,sampleRate:this.samples.sampleRate,stereo:this.samples.stereo,length:this.samples.length,...super.dump()}}},vr=class extends PA{constructor(A){super(A);let t=2+J.AdditionalPlaybackBlocks;this.sampleBuffer=fr(A,48e3,t,!0),this.sampleBuffer.samples.fill(0),this.prefill=t-2;for(let e=0;e<this.prefill;e++)ur(this.sampleBuffer,e,{id:e});this.id=this.prefill,aA(globalThis,["playbackReady",{sampleBuffer:this.sampleBuffer,informationBuffer:this.information}])}close(){super.close(),Cr(this.wasm,this.sampleBuffer)}onMessage(A){super.onMessage(A);let[t,e]=A;t==="playbackTick"&&this.tick(e.id)}tick(A){for(this.stats.numberTicks++;this.id<A+this.prefill;this.id++){let t=this.id%this.sampleBuffer.length,{hasAudio:e}=this.decode(kr(this.sampleBuffer,t));e&&(this.stats.numberTicksWithAudio++,ur(this.sampleBuffer,t,{id:this.id}))}}dump(){return{type:"shared playback worker",id:this.id,prefill:this.prefill,sampleRate:this.sampleBuffer.sampleRate,stereo:this.sampleBuffer.stereo,...super.dump()}}};})();
|
|
3236
|
-
`;var
|
|
3236
|
+
`;var q='"use strict";(()=>{var R=Object.defineProperty;var F=(e,t)=>{for(var r in t)R(e,r,{get:t[r],enumerable:!0})};var l={};F(l,{AdditionalCaptureBlocks:()=>C,AdditionalPlaybackBlocks:()=>D,ClockJumpCheckInterval:()=>$,ClockJumpThreshold:()=>j,ConnectInterval:()=>K,ConnectTimeout:()=>Z,DefaultRefreshRate:()=>V,DefaultVideoCodec:()=>X,HealthCheckTimeout:()=>W,MainConnectionPingInterval:()=>H,MaxNumberOfDecoders:()=>_,MinDBFs:()=>k,MinTokenLifetime:()=>q,MinTokenRefreshInterval:()=>Q,PlaybackPreload:()=>L,RenderQuantumSize:()=>N,VadPreload:()=>O,WebRtcIceTimeout:()=>z,WebRtcStatsSnapshotInterval:()=>J,WebRtcTimeout:()=>G});var D=3,C=3,L=3,V=250,O=3,_=512,N=128,k=-758.596,W=1e4,$=1e3,j=1e4,H=3e3,J=1e3,z=3e3,G=1e4,Z=5e3,q=6e4,Q=5e3,K=[0,100,200,200,500],X="H264";function p(e,t,r){return e.postMessage(t,r)}function Y(e){return e.sampleRate*.02*(e.stereo?2:1)}function f(e,t){let r=Y(e),n=r*t,s=n+r;return e.samples.subarray(n,s)}function S(e,t){return{id:e.headers[t]}}function I(e,t,r){e.headers[t]=r.id}var ee;(e=>{let t;(r=>(r[r.InvalidPassword=-1]="InvalidPassword",r[r.Unknown=0]="Unknown",r[r.Unencrypted=1]="Unencrypted",r[r.Encrypted=2]="Encrypted"))(t=e.PeerCipherStatus||={})})(ee||={});var{Deno:U}=globalThis,te=typeof U?.noColor=="boolean"?U.noColor:!1,re=!te;function h(e,t){return{open:`\\x1B[${e.join(";")}m`,close:`\\x1B[${t}m`,regexp:new RegExp(`\\\\x1b\\\\[${t}m`,"g")}}function b(e,t){return re?`${t.open}${e.replace(t.regexp,t.open)}${t.close}`:e}function m(e){return b(e,h([0],0))}function T(e){return b(e,h([1],22))}function ne(e){return b(e,h([2],22))}var Te=new RegExp(["[\\\\u001B\\\\u009B][[\\\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\\\d\\\\/#&.:=?%@~_]+)*|[a-zA-Z\\\\d]+(?:;[-a-zA-Z\\\\d\\\\/#&.:=?%@~_]*)*)?\\\\u0007)","(?:(?:\\\\d{1,4}(?:;\\\\d{0,4})*)?[\\\\dA-PR-TXZcf-nq-uy=><~]))"].join("|"),"g"),se=new Date,d=(e=>(e[e.CRITICAL=0]="CRITICAL",e[e.ERROR=1]="ERROR",e[e.WARN=2]="WARN",e[e.INFO=3]="INFO",e[e.DEBUG=4]="DEBUG",e))(d||{}),P={0:"\\u{1F4A5}",1:"\\u{1F534}",2:"\\u{1F7E1}",3:"\\u{1F535}",4:"\\u{1F7E3}"},ae={4:ne,3:m,2:m,1:T,0:T};function oe({message:e}){return String(e)}function B(e){return JSON.stringify({timestamp:e.date.toISOString(),level:d[e.level],message:e.message,extra:e.extra})}function w(e){function t(c,i){return[Math.floor(c/i),c%i]}function r(){let c,i=e.date.valueOf()-se.valueOf();[i,c]=t(i,1e3);let[M,E]=t(i,60);return`${M.toString().padStart(4,"0")}:${E.toString().padStart(2,"0")}.${c.toString().padStart(3,"0")}`}function n(){return e.extra===void 0?"":typeof Deno=="object"?" "+Deno.inspect(e.extra,{compact:!1,colors:!0,trailingComma:!0}).trimStart():" "+JSON.stringify(e.extra)}let s=P[e.level],o=e.logger.name!==void 0?`@${e.logger.name}`:"";return`${m(r())}${o} ${s} ${ae[e.level](String(e.message))}${n()}`}function ie(e){let t=`[${e.date.toISOString()}]`,r=`[${d[e.level]}]`,n=e.logger.name!==void 0?`[${e.logger.name}] `:"",s=P[e.level];return`${t} ${s} ${r.padEnd(7," ")} ${n}${e.message}`}function ce(){return typeof Deno=="object"&&Deno.stdout.isTerminal()}var A=class{static sparse=oe;static json=B;static pretty=w;static structured=ie;static default=ce()?w:B;constructor(){}},le=class{formatter;consoleObject;filter;constructor(e=A.default,t=4,r=console){this.filter=t,this.formatter=e,this.consoleObject=r}handle(e){let t=this.formatter(e);switch(e.level){case 0:case 1:this.consoleObject.error(t);break;case 2:this.consoleObject.warn(t);break;case 3:this.consoleObject.info(t);break;case 4:this.consoleObject.debug(t);break}}};var a=class{#e;sinks;filter;parent;get name(){return this.#e}constructor(e,t=void 0,r=[],n=void 0){this.#e=t,this.sinks=r,this.filter=e,this.parent=n}log(e,t,r=void 0){let n={date:new Date,level:e,logger:this,message:t,extra:r};this.filter<e||this.insert(n)}insert(e){if(!(this.filter<e.level)){for(let t of this.sinks)t.filter>=e.level&&t.handle(e);this.parent!==void 0&&this.parent.insert(e)}}error=this.log.bind(this,1);warn=this.log.bind(this,2);info=this.log.bind(this,3);debug=this.log.bind(this,4)},u=new a(3,void 0,[new le]),ue=a.prototype.log.bind(u,1),fe=a.prototype.log.bind(u,2),de=a.prototype.log.bind(u,3),pe=a.prototype.log.bind(u,4),Be=a.prototype.log.bind(u);var x=class extends AudioWorkletProcessor{constructor(){super();this.alive=!0;this.blocks=0;this.port.onmessage=this.onMessage.bind(this)}async onMessage(r){let[n,s]=r.data;switch(n){case"init":this.state=new g(s.sampleBuffer,s.workerPort,sampleRate*.02);break;case"close":this.alive=!1;break;case"dump":s.result.postMessage(this.dump());break}}process(r,n,s){if(this.state===void 0||r.length<1||r[0].length<1)return this.alive;let o=this.state.fill(0,r[0][0]);return this.state.offset===this.state.length&&(this.blocks+=1,this.state.flush(),this.state.fill(o,r[0][0])),this.alive}dump(){return{type:"shared capture worklet",alive:this.alive,sampleRate,id:this.state?.id||null,offset:this.state?.offset||null,length:this.state?.length||null,blocks:this.blocks}}},y=class extends AudioWorkletProcessor{constructor(){super();this.alive=!0;this.silenceBlocks=0;this.voiceBlocks=0;this.totalBlocks=0;this.port.onmessage=this.onMessage.bind(this)}async onMessage(r){let[n,s]=r.data;switch(n){case"close":this.alive=!1;break;case"init":this.state=new v(s.workerPort,s.sampleBuffer,sampleRate*.02);break;case"dump":s.result.postMessage(this.dump());break}n==="close"&&(this.alive=!1)}process(r,n,s){if(this.state===void 0||n.length<1||n[0].length<2)return this.alive;let o=this.state.fill(0,n[0][0],n[0][1]);return o<l.RenderQuantumSize&&(this.totalBlocks+=1,this.state.next(),this.state.hasVoice?this.voiceBlocks+=1:this.silenceBlocks+=1,this.state.fill(o,n[0][0],n[0][1])),this.alive}dump(){return{type:"shared playback worklet",alive:this.alive,sampleRate,id:this.state?.id||null,offset:this.state?.offset||null,length:this.state?.length||null,hasVoice:this.state?.hasVoice??!1,silenceBlocks:this.silenceBlocks,voiceBlocks:this.voiceBlocks,totalBlocks:this.totalBlocks}}},g=class{constructor(t,r,n){this.samples=t;this.port=r;this.length=n;this.id=0,this.offset=0,this.entry=f(this.samples,0)}fill(t,r){let n=Math.min(r.length-t,this.length-this.offset);return this.entry.set(r.subarray(t,t+n),this.offset),this.offset+=n,t+n}flush(){this.id+=1,p(this.port,["captureTick",{id:this.id}]);let t=this.id%this.samples.length;this.entry=f(this.samples,t),I(this.samples,t,{id:this.id}),this.offset=0}},v=class{constructor(t,r,n){this.port=t;this.samples=r;this.length=n;this.id=-1,this.offset=0,this.entry=void 0,this.next()}get hasVoice(){return this.entry!==void 0}fill(t,r,n){let s=Math.min(l.RenderQuantumSize-t,this.length-this.offset);return this.entry!==void 0&&(r.set(this.entry.subarray(this.offset,this.offset+s),t),n.set(this.entry.subarray(this.offset+this.length,this.offset+this.length+s),t)),this.offset+=s,t+s}next(){this.id+=1;let t=this.id%this.samples.length,{id:r}=S(this.samples,t);this.entry=this.id===r?f(this.samples,t):void 0,this.offset=0,p(this.port,["playbackTick",{id:this.id}])}};registerProcessor("OdinCaptureProcessor",x);registerProcessor("OdinPlaybackProcessor",y);})();\n';var fx=new ex;function e0(A,F,x,r,D=e.DefaultRefreshRate){return fx.enqueue(async()=>{let[j,B]=await d(c,q,A,"OdinCaptureProcessor",{channelCount:1,numberOfInputs:1,numberOfOutputs:0});return h.create(A,F,x,j,B,r)})}async function f0(A,F=e.DefaultRefreshRate){if(A.sampleRate!==48e3)throw new Error("playback sample rate must be 48kHz ");let[x,r]=await d(c,q,A,"OdinPlaybackProcessor",{numberOfInputs:0,numberOfOutputs:1,outputChannelCount:[2]});return G.create(A,x,r)}var G=class A extends s{constructor(x,r,D,j){super(x,r,D);this.information=j}static async create(x,r,D){let{port1:j,port2:B}=new MessageChannel;v(r,["playbackInit",{workletPort:j}],[j]);let{informationBuffer:t,sampleBuffer:b}=await o(r,"playbackReady");return a(t,[1,1]),v(D.port,["init",{sampleBuffer:b,workerPort:B}],[B]),new A(x,D,r,t)}getActivity(x){let r=this.medias.get(E(x));if(r===void 0)return;let D=m(this.information,r.index);return D===0?N:{isSilent:!1,rmsDBFS:D}}getJitterStats(x){}setGlobalVolume(x){a(this.information,x)}setVolume(x,r){let D=this.medias.get(E(x));D!==void 0&&I(this.information,D.index,r)}_GetFreeIndex(){let x=super._GetFreeIndex();if(x!==void 0)return x;if(this.information.length>this.medias.size)return this.medias.size}},h=class A extends l{constructor(x,r,D,j,B,t){super(x,r,D,j,t);this.information=B}static async create(x,r,D,j,B,t){let{port1:b,port2:p}=new MessageChannel;v(j,["captureInit",{sampleRate:x.sampleRate,workletPort:b}],[b]);let{sampleBuffer:_,informationBuffer:J}=await o(j,"captureReady");return v(B.port,["init",{workerPort:p,sampleBuffer:_}],[p]),new A(B,j,r,D,J,t)}get activity(){return{isSilent:!$(this.information),rmsDBFS:L(this.information)}}get speechProbability(){return g(this.information)}setVolume(x){H(this.information,x)}};export{e0 as createCaptureWorker,f0 as createPlaybackWorker};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var
|
|
1
|
+
var $=Object.defineProperty;var g=(r,D)=>{for(var x in D)$(r,x,{get:D[x],enumerable:!0})};import{Strand as Dx}from"@4players/odin-common";var E={};g(E,{AdditionalCaptureBlocks:()=>y,AdditionalPlaybackBlocks:()=>L,ClockJumpCheckInterval:()=>w,ClockJumpThreshold:()=>P,ConnectInterval:()=>Q,ConnectTimeout:()=>S,DefaultRefreshRate:()=>N,DefaultVideoCodec:()=>z,HealthCheckTimeout:()=>O,MainConnectionPingInterval:()=>M,MaxNumberOfDecoders:()=>J,MinDBFs:()=>n,MinTokenLifetime:()=>W,MinTokenRefreshInterval:()=>R,PlaybackPreload:()=>H,RenderQuantumSize:()=>K,VadPreload:()=>_,WebRtcIceTimeout:()=>U,WebRtcStatsSnapshotInterval:()=>T,WebRtcTimeout:()=>V});var L=3,y=3,H=3,N=250,_=3,J=512,K=128,n=-758.596,O=1e4,w=1e3,P=1e4,M=3e3,T=1e3,U=3e3,V=1e4,S=5e3,W=6e4,R=5e3,Q=[0,100,200,200,500],z="H264";function v(r,D,x){return r.postMessage(D,x)}function i(r,D){return new Promise(x=>{let F=A=>{let[B,j]=A.data;B===D&&(x(A.data[1]),r.removeEventListener("message",F))};r.addEventListener("message",F)})}import{error as X,warn as ix,info as ox,debug as ax,Logger as kx,LogLevel as dx,CallbackSink as qx,Formatter as Gx}from"@4players/odin-common";var I;function o(r,...D){let x=Z(D);I?I?.error(r,x):X(r,x)}function Z(...r){if(r.length===1&&typeof r[0]=="object"&&r[0]!==null)return{...r[0]};if(r.length>0)return{args:r}}var a={isSilent:!0,rmsDBFS:-758.596};function C(r){return r.connectionId*4294967296+r.mediaId}var f=[],e=[],b=class{constructor(D,x,F){this.audioContext=D;this.worklet=x;this.worker=F;this.availableIndexes=[];this.medias=new Map;F.addEventListener("message",this._OnMessages.bind(this))}connectOutput(D){this.worklet.disconnect(),this.worklet.connect(D)}receivePacket(D,x){v(this.worker,["playbackReceivePacket",{connectionId:D,packet:x}],[x.buffer])}addMedias(D,x,F=[1,1]){let A=[];for(let B of x){let j=this._GetFreeIndex();j!==void 0&&(this.medias.set(C({connectionId:D,mediaId:B}),{index:j}),A.push({connectionId:D,mediaId:B,index:j,volume:F}))}v(this.worker,["playbackUpdateMedias",{added:A,removed:[]}])}removeMedias(D,x){let F=[];for(let A of x){let B=C({connectionId:D,mediaId:A}),j=this.medias.get(B);j!==void 0&&(this.medias.delete(B),this.availableIndexes.push(j.index),F.push({connectionId:D,mediaId:A,index:j.index}))}v(this.worker,["playbackUpdateMedias",{added:[],removed:F}])}close(){v(this.worker,["close",void 0]),v(this.worklet.port,["close",void 0]);let D=f.indexOf(this.worker);D>=0&&f.splice(D,1);let x=e.indexOf(this.worklet);x>=0&&e.splice(x,1)}async dump(){return{playbackWorker:await l(this.worker),playbackWorklet:await l(this.worklet.port)}}_GetFreeIndex(){return this.availableIndexes.pop()}_OnMessages(D){}},s=class r{constructor(D,x,F,A,B){this.worklet=D;this.worker=x;this.sink=(j,t)=>{B.deref()!==void 0?F(j,t):(o("capture worker was left abandoned, aborting capture worker"),r.shutdown(D,x))},this.monitorSink=(j,t)=>{B.deref()!==void 0?A(j,t):(o("capture worker was left abandoned, aborting capture worker"),r.shutdown(D,x))},x.addEventListener("message",this._OnMessages.bind(this))}get context(){return this.worklet.context}setMedias(D){v(this.worker,["captureSetMedias",{connections:D}])}setVad(D){v(this.worker,["captureSetVad",D])}close(){r.shutdown(this.worklet,this.worker)}static shutdown(D,x){v(D.port,["close",void 0]),v(x,["close",void 0]);let F=f.indexOf(x);F>=0&&f.splice(F,1);let A=e.indexOf(D);A>=0&&e.splice(A,1)}async dump(){return{captureWorker:await l(this.worker),captureWorklet:await l(this.worklet.port)}}_OnMessages(D){let[x,F]=D.data;x==="sendPacket"&&(F.connectionId===0?this.monitorSink(F.connectionId,F.packet):this.sink(F.connectionId,F.packet))}};function u(r,D,x,F,A){return Promise.all([Y(r),xx(x,D,F,A)])}async function Y(r){let D=URL.createObjectURL(new Blob([r],{type:"text/javascript"})),x=new Worker(D,{type:"module",name:"odin worker"});return f.push(x),x}var k=new WeakMap;async function xx(r,D,x,F){try{let j=new AudioWorkletNode(r,x,F);return e.push(j),j}catch{}let A=k.get(r);if(A===void 0){let j=URL.createObjectURL(new Blob([D],{type:"text/javascript"}));A=r.audioWorklet.addModule(j),k.set(r,A),A.catch(()=>k.delete(r))}await A;let B=new AudioWorkletNode(r,x,F);return e.push(B),B}function l(r){let{port1:D,port2:x}=new MessageChannel,{promise:F,resolve:A}=Promise.withResolvers();return x.onmessage=B=>A(B.data),setTimeout(()=>A("timeout"),100),v(r,["dump",{result:D}],[D]),F}var d=`"use strict";(()=>{var oe=Object.create;var WA=Object.defineProperty;var ae=Object.getOwnPropertyDescriptor;var ke=Object.getOwnPropertyNames;var ue=Object.getPrototypeOf,ce=Object.prototype.hasOwnProperty;var de=(n,A)=>()=>(A||n((A={exports:{}}).exports,A),A.exports),qe=(n,A)=>{for(var t in A)WA(n,t,{get:A[t],enumerable:!0})},fe=(n,A,t,e)=>{if(A&&typeof A=="object"||typeof A=="function")for(let l of ke(A))!ce.call(n,l)&&l!==t&&WA(n,l,{get:()=>A[l],enumerable:!(e=ae(A,l))||e.enumerable});return n};var Ce=(n,A,t)=>(t=n!=null?oe(ue(n)):{},fe(A||!n||!n.__esModule?WA(t,"default",{value:n,enumerable:!0}):t,n));var Hj=de((Lj,JA)=>{"use strict";var er=(()=>{var n=globalThis.document?.currentScript?.src;return async function(A={}){var t,e=A,l=!!globalThis.window,d=!!globalThis.WorkerGlobalScope,q=globalThis.process?.versions?.node&&globalThis.process?.type!="renderer",p=[],F="./this.program";d&&(n=self.location.href);var x="",KA,O;if(l||d){try{x=new URL(".",n).href}catch{}d&&(O=j=>{var r=new XMLHttpRequest;return r.open("GET",j,!1),r.responseType="arraybuffer",r.send(null),new Uint8Array(r.response)}),KA=async j=>{var r=await fetch(j,{credentials:"same-origin"});if(r.ok)return r.arrayBuffer();throw new Error(r.status+" : "+r.url)}}var ir=console.log.bind(console),oA=console.error.bind(console),or,ar=!1;function Nj(j){for(var r=0,s=j.length,i=new Uint8Array(s),o;r<s;++r)o=j.charCodeAt(r),i[r]=~o>>8&o;return i}var kr,ur,cr=!1;function Bj(){var j=Ur.buffer;U=new Int8Array(j),aA=new Int16Array(j),e.HEAPU8=_=new Uint8Array(j),Z=new Uint16Array(j),e.HEAP32=kA=new Int32Array(j),e.HEAPU32=m=new Uint32Array(j),e.HEAPF32=fr=new Float32Array(j),Cr=new Float64Array(j),qr=new BigInt64Array(j),Gr=new BigUint64Array(j)}function bj(){if(e.preRun)for(typeof e.preRun=="function"&&(e.preRun=[e.preRun]);e.preRun.length;)Sj(e.preRun.shift());pr(hr)}function Jj(){cr=!0,rA.v()}function Kj(){if(e.postRun)for(typeof e.postRun=="function"&&(e.postRun=[e.postRun]);e.postRun.length;)Vj(e.postRun.shift());pr(Ir)}function OA(j){e.onAbort?.(j),j="Aborted("+j+")",oA(j),ar=!0,j+=". Build with -sASSERTIONS for more info.";var r=new WebAssembly.RuntimeError(j);throw ur?.(r),r}var dr;function Oj(){return Nj(\`\\0asm\\0\\0\\0\\x8D9\\\`\\x7F\\x7F\\\`\\x7F\\0\\\`\\x7F\\x7F\\x7F\\0\\\`\\x7F\\x7F\\x7F\\x7F\\0\\\`\\x7F\\x7F\\0\\\`\\x7F\\x7F\\x7F\\x7F\\x7F\\0\\\`\\x7F\\x7F\\x7F\\x7F\\\`\\x7F\\x7F\\x7F\\\`\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\0\\\`\\x7F\\x7F\\x7F\\x7F\\x7F\\\`\\0\\0\\\`\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\\`||\\\`\\x7F}\\\`}}\\\`\\x07\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\\`\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\\`\\b\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\0\\\`\\x7F~\\x7F~\\\`\\x7F\\x7F}\\\`\\x7F}}\\\`\\x7F\\x7F}}\\0\\\`
|
|
2
2
|
\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\0\\\`|}\\\`|\\x7F|\\\`\\x7F\\x7F}\\0\\\`\\x07\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\0\\\` \\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\0\\\`\\f\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\0\\\`\\b\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\\`\\x7F|\\x7F\\x7F\\x7F\\x7F\\x7F\\\`\\x7F\\x7F\\x7F|}\\\`\\0\\x7F\\\`\\x7F\\x7F\\x7F~~\\0\\\`\\r\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\0\\\`\\x7F~\\x7F\\x7F\\x7F\\\`\\x7F\\x7F|\\\`\\v\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F}\\x7F\\x7F\\x7F\\\`\\v\\x7F\\x7F\\x7F\\x7F\\x7F}}\\x7F\\x7F\\x7F\\x7F\\0\\\`~\\x7F\\x7F\\\` \\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F}\\x7F\\x7F\\\`||\\x7F|\\\`|||\\\`\\x7F\\x7F\\x7F|\\\`\\v\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\0\\\`\\v\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\\`\\x07\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F}\\\`\\f\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\\`}\\x7F\\x7F\\\`|\\x7F\\x7F\\\`\\x7F\\x7F\\x7F}\\\`\\x7F}\\x7F\\0\\\`\\x7F\\x7F}\\x7F\\x7F\\x7F}\\\`\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\\`\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F}\\x7F\\x7F\\\`\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\x7F\\0\\\`\\x7F\\x7F\\x7F}}\\0yaa\\0ab\\0ac\\0ad\\0ae\\0af\\0!ag\\0ah\\0 ai\\0aj\\0\\bak\\0"al\\0am\\0an\\0ao\\0\\0ap\\0#aq\\0\\0ar\\0
|
|
3
3
|
as\\0at\\0\\xBB\\xB9\\0\\0\\f$\\f\\x07\\0\\f\\x07\\f\\x07\\0%& \\0
|
|
4
4
|
\\0\\x07\\v\\0'\\0\\0(\\0\\f\\0)*+\\x07\\v\\x07\\0
|
|
@@ -3198,4 +3198,4 @@ K\\xE08\\xDF\\0}\\xBC\\x8A\\x1B\\f\\xE5\\xFF\\xCF\\xE8?\\x9F\\xFFFq\\0\\x88\\xB
|
|
|
3198
3198
|
return ret;
|
|
3199
3199
|
\`),f+=\`}
|
|
3200
3200
|
\`,new Function(h,f)}function UA(j,r,s,i,o,a){var k=r.length;k<2&&G("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var u=r[1]!==null&&s!==null,c=Br(r),f=!r[0].isVoid,C=r[0],h=r[1],E=[j,G,i,o,Nr,C.fromWireType.bind(C),h?.toWireType.bind(h)],I=2;I<k;++I){var $=r[I];E.push($.toWireType.bind($))}if(!c)for(var I=u?1:2;I<r.length;++I)r[I].destructorFunction!==null&&E.push(r[I].destructorFunction);var J=mt(r,u,f,a)(...E);return gr(j,J)}var Et=(j,r,s,i,o,a)=>{var k=TA(r,s);o=B(i,o),P([],[j],u=>{u=u[0];var c=\`constructor \${u.name}\`;if(u.registeredClass.constructor_body===void 0&&(u.registeredClass.constructor_body=[]),u.registeredClass.constructor_body[r-1]!==void 0)throw new Y(\`Cannot register multiple constructors with identical number of parameters (\${r-1}) for class '\${u.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!\`);return u.registeredClass.constructor_body[r-1]=()=>{z(\`Cannot construct \${u.name} due to unbound types\`,k)},P([],k,f=>(f.splice(1,0,null),u.registeredClass.constructor_body[r-1]=UA(c,f,null,o,a),[])),[]})},br=j=>{j=j.trim();let r=j.indexOf("(");return r===-1?j:j.slice(0,r)},$t=(j,r,s,i,o,a,k,u,c,f)=>{var C=TA(s,i);r=v(r),r=br(r),a=B(o,a,c),P([],[j],h=>{h=h[0];var E=\`\${h.name}.\${r}\`;r.startsWith("@@")&&(r=Symbol[r.substring(2)]),u&&h.registeredClass.pureVirtualFunctions.push(r);function I(){z(\`Cannot call \${E} due to unbound types\`,C)}var $=h.registeredClass.instancePrototype,H=$[r];return H===void 0||H.overloadTable===void 0&&H.className!==h.name&&H.argCount===s-2?(I.argCount=s-2,I.className=h.name,$[r]=I):(Hr($,r,E),$[r].overloadTable[s-2]=I),P([],C,J=>{var y=UA(E,J,h,a,k,c);return $[r].overloadTable===void 0?(y.argCount=s-2,$[r]=y):$[r].overloadTable[s-2]=y,[]}),[]})},Jr=(j,r,s)=>(j instanceof Object||G(\`\${s} with invalid "this": \${j}\`),j instanceof r.registeredClass.constructor||G(\`\${s} incompatible with "this" of type \${j.constructor.name}\`),j.$$.ptr||G(\`cannot call emscripten binding method \${s} on deleted object\`),qA(j.$$.ptr,j.$$.ptrType.registeredClass,r.registeredClass)),Ft=(j,r,s,i,o,a,k,u,c,f)=>{r=v(r),o=B(i,o),P([],[j],C=>{C=C[0];var h=\`\${C.name}.\${r}\`,E={get(){z(\`Cannot access \${h} due to unbound types\`,[s,k])},enumerable:!0,configurable:!0};return c?E.set=()=>z(\`Cannot access \${h} due to unbound types\`,[s,k]):E.set=I=>G(h+" is a read-only property"),Object.defineProperty(C.registeredClass.instancePrototype,r,E),P([],c?[s,k]:[s],I=>{var $=I[0],H={get(){var y=Jr(this,C,h+" getter");return $.fromWireType(o(a,y))},enumerable:!0};if(c){c=B(u,c);var J=I[1];H.set=function(y){var jA=Jr(this,C,h+" setter"),L=[];c(f,jA,J.toWireType(L,y)),Nr(L)}}return Object.defineProperty(C.registeredClass.instancePrototype,r,H),[]}),[]})},Kr=[],X=[0,1,,1,null,1,!0,1,!1,1],vt=j=>{j>9&&--X[j+1]===0&&(X[j]=void 0,Kr.push(j))},VA={toValue:j=>(j||G(\`Cannot use deleted val. handle = \${j}\`),X[j]),toHandle:j=>{switch(j){case void 0:return 2;case null:return 4;case!0:return 6;case!1:return 8;default:{let r=Kr.pop()||X.length;return X[r]=j,X[r+1]=1,r}}}},gt={name:"emscripten::val",fromWireType:j=>{var r=VA.toValue(j);return vt(j),r},toWireType:(j,r)=>VA.toHandle(r),readValueFromPointer:fA,destructorFunction:null},Lt=j=>N(j,gt),Ht=(j,r)=>{switch(r){case 4:return function(s){return this.fromWireType(fr[s>>2])};case 8:return function(s){return this.fromWireType(Cr[s>>3])};default:throw new TypeError(\`invalid float width (\${r}): \${j}\`)}},yt=(j,r,s)=>{r=v(r),N(j,{name:r,fromWireType:i=>i,toWireType:(i,o)=>o,readValueFromPointer:Ht(r,s),destructorFunction:null})},_t=(j,r,s,i,o,a,k,u)=>{var c=TA(r,s);j=v(j),j=br(j),o=B(i,o,k),yr(j,function(){z(\`Cannot call \${j} due to unbound types\`,c)},r-1),P([],c,f=>{var C=[f[0],null].concat(f.slice(1));return Dr(j,UA(j,C,null,o,a,k),r-1),[]})},Dt=(j,r,s,i,o)=>{r=v(r);let a=i===0,k=c=>c;if(a){var u=32-8*s;k=c=>c<<u>>>u,o=k(o)}N(j,{name:r,fromWireType:k,toWireType:(c,f)=>f,readValueFromPointer:Er(r,s,i!==0),destructorFunction:null})},xt=(j,r,s)=>{var i=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,BigInt64Array,BigUint64Array],o=i[r];function a(k){var u=m[k>>2],c=m[k+4>>2];return new o(U.buffer,c,u)}s=v(s),N(j,{name:s,fromWireType:a,readValueFromPointer:a},{ignoreDuplicateRegistrations:!0})},Nt=(j,r,s,i)=>{if(!(i>0))return 0;for(var o=s,a=s+i-1,k=0;k<j.length;++k){var u=j.codePointAt(k);if(u<=127){if(s>=a)break;r[s++]=u}else if(u<=2047){if(s+1>=a)break;r[s++]=192|u>>6,r[s++]=128|u&63}else if(u<=65535){if(s+2>=a)break;r[s++]=224|u>>12,r[s++]=128|u>>6&63,r[s++]=128|u&63}else{if(s+3>=a)break;r[s++]=240|u>>18,r[s++]=128|u>>12&63,r[s++]=128|u>>6&63,r[s++]=128|u&63,k++}}return r[s]=0,s-o},Bt=(j,r,s)=>Nt(j,_,r,s),bt=j=>{for(var r=0,s=0;s<j.length;++s){var i=j.charCodeAt(s);i<=127?r++:i<=2047?r+=2:i>=55296&&i<=57343?(r+=4,++s):r+=3}return r},Or=globalThis.TextDecoder&&new TextDecoder,Pr=(j,r,s,i)=>{var o=r+s;if(i)return o;for(;j[r]&&!(r>=o);)++r;return r},wr=(j,r=0,s,i)=>{var o=Pr(j,r,s,i);if(o-r>16&&j.buffer&&Or)return Or.decode(j.subarray(r,o));for(var a="";r<o;){var k=j[r++];if(!(k&128)){a+=String.fromCharCode(k);continue}var u=j[r++]&63;if((k&224)==192){a+=String.fromCharCode((k&31)<<6|u);continue}var c=j[r++]&63;if((k&240)==224?k=(k&15)<<12|u<<6|c:k=(k&7)<<18|u<<12|c<<6|j[r++]&63,k<65536)a+=String.fromCharCode(k);else{var f=k-65536;a+=String.fromCharCode(55296|f>>10,56320|f&1023)}}return a},Jt=(j,r,s)=>j?wr(_,j,r,s):"",Kt=(j,r)=>{r=v(r);var s=!0;N(j,{name:r,fromWireType(i){var o=m[i>>2],a=i+4,k;if(s)k=Jt(a,o,!0);else{k="";for(var u=0;u<o;++u)k+=String.fromCharCode(_[a+u])}return b(i),k},toWireType(i,o){o instanceof ArrayBuffer&&(o=new Uint8Array(o));var a,k=typeof o=="string";k||ArrayBuffer.isView(o)&&o.BYTES_PER_ELEMENT==1||G("Cannot pass non-string to std::string"),s&&k?a=bt(o):a=o.length;var u=SA(4+a+1),c=u+4;if(m[u>>2]=a,k)if(s)Bt(o,c,a+1);else for(var f=0;f<a;++f){var C=o.charCodeAt(f);C>255&&(b(u),G("String has UTF-16 code units that do not fit in 8 bits")),_[c+f]=C}else _.set(o,c);return i!==null&&i.push(b,u),u},readValueFromPointer:fA,destructorFunction(i){b(i)}})},Mr=globalThis.TextDecoder?new TextDecoder("utf-16le"):void 0,Ot=(j,r,s)=>{var i=j>>1,o=Pr(Z,i,r/2,s);if(o-i>16&&Mr)return Mr.decode(Z.subarray(i,o));for(var a="",k=i;k<o;++k){var u=Z[k];a+=String.fromCharCode(u)}return a},Pt=(j,r,s)=>{if(s??=2147483647,s<2)return 0;s-=2;for(var i=r,o=s<j.length*2?s/2:j.length,a=0;a<o;++a){var k=j.charCodeAt(a);aA[r>>1]=k,r+=2}return aA[r>>1]=0,r-i},wt=j=>j.length*2,Mt=(j,r,s)=>{for(var i="",o=j>>2,a=0;!(a>=r/4);a++){var k=m[o+a];if(!k&&!s)break;i+=String.fromCodePoint(k)}return i},Tt=(j,r,s)=>{if(s??=2147483647,s<4)return 0;for(var i=r,o=i+s-4,a=0;a<j.length;++a){var k=j.codePointAt(a);if(k>65535&&a++,kA[r>>2]=k,r+=4,r+4>o)break}return kA[r>>2]=0,r-i},Ut=j=>{for(var r=0,s=0;s<j.length;++s){var i=j.codePointAt(s);i>65535&&s++,r+=4}return r},Vt=(j,r,s)=>{s=v(s);var i,o,a;r===2?(i=Ot,o=Pt,a=wt):(i=Mt,o=Tt,a=Ut),N(j,{name:s,fromWireType:k=>{var u=m[k>>2],c=i(k+4,u*r,!0);return b(k),c},toWireType:(k,u)=>{typeof u!="string"&&G(\`Cannot pass non-string to C++ string type \${s}\`);var c=a(u),f=SA(4+c+r);return m[f>>2]=c/r,o(u,f+4,c+r),k!==null&&k.push(b,f),f},readValueFromPointer:fA,destructorFunction(k){b(k)}})},St=(j,r)=>{r=v(r),N(j,{isVoid:!0,name:r,fromWireType:()=>{},toWireType:(s,i)=>{}})},Rt=j=>{OA("OOM")},Wt=j=>{var r=_.length;j>>>=0,Rt(j)},Qt=j=>52,zt=9007199254740992,Xt=-9007199254740992,Zt=j=>j<Xt||j>zt?NaN:Number(j);function Yt(j,r,s,i){return r=Zt(r),70}var Ae=[null,[],[]],re=(j,r)=>{var s=Ae[j];r===0||r===10?((j===1?ir:oA)(wr(s)),s.length=0):s.push(r)},je=(j,r,s,i)=>{for(var o=0,a=0;a<s;a++){var k=m[r>>2],u=m[r+4>>2];r+=8;for(var c=0;c<u;c++)re(j,_[k+c]);o+=u}return m[i>>2]=o,0};if(et(),Ct(),e.noExitRuntime&&(Rj=e.noExitRuntime),e.print&&(ir=e.print),e.printErr&&(oA=e.printErr),e.wasmBinary&&(or=e.wasmBinary),e.arguments&&(p=e.arguments),e.thisProgram&&(F=e.thisProgram),e.preInit)for(typeof e.preInit=="function"&&(e.preInit=[e.preInit]);e.preInit.length>0;)e.preInit.shift()();var Tr,SA,b,te,ee,Ur,Vr;function ne(j){Tr=j.w,SA=e._malloc=j.y,b=e._free=j.z,te=Ur=j.u,ee=Vr=j.x}var se={g:zj,r:Xj,f:Yj,l:At,k:ht,j:Et,d:$t,a:Ft,s:Lt,i:yt,n:_t,c:Dt,b:xt,t:Kt,e:Vt,m:St,o:Wt,q:Qt,p:Yt,h:je};function le(){bj();function j(){e.calledRun=!0,!ar&&(Jj(),kr?.(e),e.onRuntimeInitialized?.(),Kj())}e.setStatus?(e.setStatus("Running..."),setTimeout(()=>{setTimeout(()=>e.setStatus(""),1),j()},1)):j()}var rA;return rA=await Uj(),le(),cr?t=e:t=new Promise((j,r)=>{kr=j,ur=r}),t}})();typeof Lj=="object"&&typeof JA=="object"?(JA.exports=er,JA.exports.default=er):typeof define=="function"&&define.amd&&define([],()=>er)});var w={};qe(w,{AdditionalCaptureBlocks:()=>pe,AdditionalPlaybackBlocks:()=>Ge,ClockJumpCheckInterval:()=>ve,ClockJumpThreshold:()=>ge,ConnectInterval:()=>Be,ConnectTimeout:()=>De,DefaultRefreshRate:()=>he,DefaultVideoCodec:()=>be,HealthCheckTimeout:()=>Fe,MainConnectionPingInterval:()=>Le,MaxNumberOfDecoders:()=>Ee,MinDBFs:()=>Qr,MinTokenLifetime:()=>xe,MinTokenRefreshInterval:()=>Ne,PlaybackPreload:()=>Ie,RenderQuantumSize:()=>$e,VadPreload:()=>me,WebRtcIceTimeout:()=>ye,WebRtcStatsSnapshotInterval:()=>He,WebRtcTimeout:()=>_e});var Ge=3,pe=3,Ie=3,he=250,me=3,Ee=512,$e=128,Qr=-758.596,Fe=1e4,ve=1e3,ge=1e4,Le=3e3,He=1e3,ye=3e3,_e=1e4,De=5e3,xe=6e4,Ne=5e3,Be=[0,100,200,200,500],be="H264";function M(n,A,t){return n.postMessage(A,t)}function zr(n){return[n.values[0],n.values[1]]}function IA(n,A){n.values[0]=A[0],n.values[1]=A[1]}function hA(n,A){return n.values[2+A*5]}function Xr(n,A,t){n.values[2+A*5]=t}function Zr(n,A){let t=2+A*5+1;return[n.values[t+0],n.values[t+1]]}function mA(n,A,t){let e=2+A*5+1;n.values[e+0]=t[0],n.values[e+1]=t[1]}function Yr(n,A){return n.values[2+A*5+3]}function Aj(n,A,t){n.values[2+A*5+3]=t}function rj(n,A){return n.values[2+A*5+4]}function jj(n,A,t){n.values[2+A*5+4]=t}function EA(n){return n.values[0]!==0}function $A(n){return n.values[1]}function FA(n){return n.values[2]}function tj(n){return n.values[3]}function vA(n,A){return n.values[3]=A}function ej(n){return n?Array.from(n).map(A=>A.toString(16).padStart(2,"0")).join(""):null}var Je;(n=>{let A;(t=>(t[t.InvalidPassword=-1]="InvalidPassword",t[t.Unknown=0]="Unknown",t[t.Unencrypted=1]="Unencrypted",t[t.Encrypted=2]="Encrypted"))(A=n.PeerCipherStatus||={})})(Je||={});function oj(n){return{type:"Success",value:n}}function D(n){return{type:"Failure",reason:n}}var{Deno:nj}=globalThis,Ke=typeof nj?.noColor=="boolean"?nj.noColor:!1,Oe=!Ke;function zA(n,A){return{open:\`\\x1B[\${n.join(";")}m\`,close:\`\\x1B[\${A}m\`,regexp:new RegExp(\`\\\\x1b\\\\[\${A}m\`,"g")}}function XA(n,A){return Oe?\`\${A.open}\${n.replace(A.regexp,A.open)}\${A.close}\`:n}function QA(n){return XA(n,zA([0],0))}function sj(n){return XA(n,zA([1],22))}function Pe(n){return XA(n,zA([2],22))}var Bn=new RegExp(["[\\\\u001B\\\\u009B][[\\\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\\\d\\\\/#&.:=?%@~_]+)*|[a-zA-Z\\\\d]+(?:;[-a-zA-Z\\\\d\\\\/#&.:=?%@~_]*)*)?\\\\u0007)","(?:(?:\\\\d{1,4}(?:;\\\\d{0,4})*)?[\\\\dA-PR-TXZcf-nq-uy=><~]))"].join("|"),"g"),we=new Date,gA=(n=>(n[n.CRITICAL=0]="CRITICAL",n[n.ERROR=1]="ERROR",n[n.WARN=2]="WARN",n[n.INFO=3]="INFO",n[n.DEBUG=4]="DEBUG",n))(gA||{}),aj={0:"\\u{1F4A5}",1:"\\u{1F534}",2:"\\u{1F7E1}",3:"\\u{1F535}",4:"\\u{1F7E3}"},Me={4:Pe,3:QA,2:QA,1:sj,0:sj};function Te({message:n}){return String(n)}function lj(n){return JSON.stringify({timestamp:n.date.toISOString(),level:gA[n.level],message:n.message,extra:n.extra})}function ij(n){function A(q,p){return[Math.floor(q/p),q%p]}function t(){let q,p=n.date.valueOf()-we.valueOf();[p,q]=A(p,1e3);let[F,x]=A(p,60);return\`\${F.toString().padStart(4,"0")}:\${x.toString().padStart(2,"0")}.\${q.toString().padStart(3,"0")}\`}function e(){return n.extra===void 0?"":typeof Deno=="object"?" "+Deno.inspect(n.extra,{compact:!1,colors:!0,trailingComma:!0}).trimStart():" "+JSON.stringify(n.extra)}let l=aj[n.level],d=n.logger.name!==void 0?\`@\${n.logger.name}\`:"";return\`\${QA(t())}\${d} \${l} \${Me[n.level](String(n.message))}\${e()}\`}function Ue(n){let A=\`[\${n.date.toISOString()}]\`,t=\`[\${gA[n.level]}]\`,e=n.logger.name!==void 0?\`[\${n.logger.name}] \`:"",l=aj[n.level];return\`\${A} \${l} \${t.padEnd(7," ")} \${e}\${n.message}\`}function Ve(){return typeof Deno=="object"&&Deno.stdout.isTerminal()}var kj=class{static sparse=Te;static json=lj;static pretty=ij;static structured=Ue;static default=Ve()?ij:lj;constructor(){}},Se=class{formatter;consoleObject;filter;constructor(n=kj.default,A=4,t=console){this.filter=A,this.formatter=n,this.consoleObject=t}handle(n){let A=this.formatter(n);switch(n.level){case 0:case 1:this.consoleObject.error(A);break;case 2:this.consoleObject.warn(A);break;case 3:this.consoleObject.info(A);break;case 4:this.consoleObject.debug(A);break}}};var V=class{#A;sinks;filter;parent;get name(){return this.#A}constructor(n,A=void 0,t=[],e=void 0){this.#A=A,this.sinks=t,this.filter=n,this.parent=e}log(n,A,t=void 0){let e={date:new Date,level:n,logger:this,message:A,extra:t};this.filter<n||this.insert(e)}insert(n){if(!(this.filter<n.level)){for(let A of this.sinks)A.filter>=n.level&&A.handle(n);this.parent!==void 0&&this.parent.insert(n)}}error=this.log.bind(this,1);warn=this.log.bind(this,2);info=this.log.bind(this,3);debug=this.log.bind(this,4)},tA=new V(3,void 0,[new Se]),Re=V.prototype.log.bind(tA,1),We=V.prototype.log.bind(tA,2),uj=V.prototype.log.bind(tA,3),Qe=V.prototype.log.bind(tA,4),bn=V.prototype.log.bind(tA);var cj;function dj(n,...A){let t=ze(A);cj?cj?.info(n,t):uj(n,t)}function ze(...n){if(n.length===1&&typeof n[0]=="object"&&n[0]!==null)return{...n[0]};if(n.length>0)return{args:n}}function LA(n){return n.connectionId*4294967296+n.mediaId}function qj(n){return{mediaId:n%4294967296,connectionId:Math.floor(n/4294967296)}}function K(n,A,t){let e;switch(A){case"f32":e=n.HEAPF32;break;case"u32":e=n.HEAPU32;break;case"i32":e=n.HEAP32;break;case"u8":e=n.HEAPU8;break;default:throw new Error(\`allocating \${A} is not supported\`)}let l=n._malloc(t*e.BYTES_PER_ELEMENT);if(l===0||l%e.BYTES_PER_ELEMENT!==0)throw new Error(\`failed allocating a \${t} \${A} array\`);let d=l/e.BYTES_PER_ELEMENT;return e.subarray(d,d+t)}function S(n,A){n._free(A.byteOffset)}function fj(n,A){return{values:K(n,"f32",2+A*5),length:A}}function Cj(n,A){S(n,A.values)}function Gj(n){return{values:K(n,"f32",4)}}function pj(n,A){S(n,A.values)}function Ij(n){let A=n.length,t=0,e=0;for(;e<A;){let l=n.charCodeAt(e++);if((l&4294967168)===0){t++;continue}else if((l&4294965248)===0)t+=2;else{if(l>=55296&&l<=56319&&e<A){let d=n.charCodeAt(e);(d&64512)===56320&&(++e,l=((l&1023)<<10)+(d&1023)+65536)}(l&4294901760)===0?t+=3:t+=4}}return t}function Xe(n,A,t){let e=n.length,l=t,d=0;for(;d<e;){let q=n.charCodeAt(d++);if((q&4294967168)===0){A[l++]=q;continue}else if((q&4294965248)===0)A[l++]=q>>6&31|192;else{if(q>=55296&&q<=56319&&d<e){let p=n.charCodeAt(d);(p&64512)===56320&&(++d,q=((q&1023)<<10)+(p&1023)+65536)}(q&4294901760)===0?(A[l++]=q>>12&15|224,A[l++]=q>>6&63|128):(A[l++]=q>>18&7|240,A[l++]=q>>12&63|128,A[l++]=q>>6&63|128)}A[l++]=q&63|128}}var Ze=new TextEncoder,Ye=50;function An(n,A,t){Ze.encodeInto(n,A.subarray(t))}function hj(n,A,t){n.length>Ye?An(n,A,t):Xe(n,A,t)}var rn=4096;function ZA(n,A,t){let e=A,l=e+t,d=[],q="";for(;e<l;){let p=n[e++];if((p&128)===0)d.push(p);else if((p&224)===192){let F=n[e++]&63;d.push((p&31)<<6|F)}else if((p&240)===224){let F=n[e++]&63,x=n[e++]&63;d.push((p&31)<<12|F<<6|x)}else if((p&248)===240){let F=n[e++]&63,x=n[e++]&63,KA=n[e++]&63,O=(p&7)<<18|F<<12|x<<6|KA;O>65535&&(O-=65536,d.push(O>>>10&1023|55296),O=56320|O&1023),d.push(O)}else d.push(p);d.length>=rn&&(q+=String.fromCharCode(...d),d.length=0)}return d.length>0&&(q+=String.fromCharCode(...d)),q}var jn=new TextDecoder,tn=200;function en(n,A,t){let e=n.subarray(A,A+t);return jn.decode(e)}function mj(n,A,t){return t>tn?en(n,A,t):ZA(n,A,t)}var R=class{constructor(A,t){this.type=A,this.data=t}};var g=class n extends Error{constructor(A){super(A);let t=Object.create(n.prototype);Object.setPrototypeOf(this,t),Object.defineProperty(this,"name",{configurable:!0,enumerable:!1,value:n.name})}};function Ej(n,A,t){let e=t/4294967296,l=t;n.setUint32(A,e),n.setUint32(A+4,l)}function HA(n,A,t){let e=Math.floor(t/4294967296),l=t;n.setUint32(A,e),n.setUint32(A+4,l)}function yA(n,A){let t=n.getInt32(A),e=n.getUint32(A+4);return t*4294967296+e}function $j(n,A){let t=n.getUint32(A),e=n.getUint32(A+4);return t*4294967296+e}var nn=-1,sn=4294967296-1,ln=17179869184-1;function on({sec:n,nsec:A}){if(n>=0&&A>=0&&n<=ln)if(A===0&&n<=sn){let t=new Uint8Array(4);return new DataView(t.buffer).setUint32(0,n),t}else{let t=n/4294967296,e=n&4294967295,l=new Uint8Array(8),d=new DataView(l.buffer);return d.setUint32(0,A<<2|t&3),d.setUint32(4,e),l}else{let t=new Uint8Array(12),e=new DataView(t.buffer);return e.setUint32(0,A),HA(e,4,n),t}}function an(n){let A=n.getTime(),t=Math.floor(A/1e3),e=(A-t*1e3)*1e6,l=Math.floor(e/1e9);return{sec:t+l,nsec:e-l*1e9}}function kn(n){if(n instanceof Date){let A=an(n);return on(A)}else return null}function un(n){let A=new DataView(n.buffer,n.byteOffset,n.byteLength);switch(n.byteLength){case 4:return{sec:A.getUint32(0),nsec:0};case 8:{let t=A.getUint32(0),e=A.getUint32(4),l=(t&3)*4294967296+e,d=t>>>2;return{sec:l,nsec:d}}case 12:{let t=yA(A,4),e=A.getUint32(0);return{sec:t,nsec:e}}default:throw new g(\`Unrecognized data size for timestamp (expected 4, 8, or 12): \${n.length}\`)}}function cn(n){let A=un(n);return new Date(A.sec*1e3+A.nsec/1e6)}var Fj={type:nn,encode:kn,decode:cn};var T=class{constructor(){this.builtInEncoders=[],this.builtInDecoders=[],this.encoders=[],this.decoders=[],this.register(Fj)}register({type:A,encode:t,decode:e}){if(A>=0)this.encoders[A]=t,this.decoders[A]=e;else{let l=-1-A;this.builtInEncoders[l]=t,this.builtInDecoders[l]=e}}tryToEncode(A,t){for(let e=0;e<this.builtInEncoders.length;e++){let l=this.builtInEncoders[e];if(l!=null){let d=l(A,t);if(d!=null){let q=-1-e;return new R(q,d)}}}for(let e=0;e<this.encoders.length;e++){let l=this.encoders[e];if(l!=null){let d=l(A,t);if(d!=null){let q=e;return new R(q,d)}}}return A instanceof R?A:null}decode(A,t,e){let l=t<0?this.builtInDecoders[-1-t]:this.decoders[t];return l?l(A,t,e):new R(t,A)}};T.defaultCodec=new T;function dn(n){return n instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&n instanceof SharedArrayBuffer}function eA(n){return n instanceof Uint8Array?n:ArrayBuffer.isView(n)?new Uint8Array(n.buffer,n.byteOffset,n.byteLength):dn(n)?new Uint8Array(n):Uint8Array.from(n)}var qn=100,fn=2048,_A=class n{constructor(A){this.entered=!1,this.extensionCodec=A?.extensionCodec??T.defaultCodec,this.context=A?.context,this.useBigInt64=A?.useBigInt64??!1,this.maxDepth=A?.maxDepth??qn,this.initialBufferSize=A?.initialBufferSize??fn,this.sortKeys=A?.sortKeys??!1,this.forceFloat32=A?.forceFloat32??!1,this.ignoreUndefined=A?.ignoreUndefined??!1,this.forceIntegerToFloat=A?.forceIntegerToFloat??!1,this.pos=0,this.view=new DataView(new ArrayBuffer(this.initialBufferSize)),this.bytes=new Uint8Array(this.view.buffer)}clone(){return new n({extensionCodec:this.extensionCodec,context:this.context,useBigInt64:this.useBigInt64,maxDepth:this.maxDepth,initialBufferSize:this.initialBufferSize,sortKeys:this.sortKeys,forceFloat32:this.forceFloat32,ignoreUndefined:this.ignoreUndefined,forceIntegerToFloat:this.forceIntegerToFloat})}reinitializeState(){this.pos=0}encodeSharedRef(A){if(this.entered)return this.clone().encodeSharedRef(A);try{return this.entered=!0,this.reinitializeState(),this.doEncode(A,1),this.bytes.subarray(0,this.pos)}finally{this.entered=!1}}encode(A){if(this.entered)return this.clone().encode(A);try{return this.entered=!0,this.reinitializeState(),this.doEncode(A,1),this.bytes.slice(0,this.pos)}finally{this.entered=!1}}doEncode(A,t){if(t>this.maxDepth)throw new Error(\`Too deep objects in depth \${t}\`);A==null?this.encodeNil():typeof A=="boolean"?this.encodeBoolean(A):typeof A=="number"?this.forceIntegerToFloat?this.encodeNumberAsFloat(A):this.encodeNumber(A):typeof A=="string"?this.encodeString(A):this.useBigInt64&&typeof A=="bigint"?this.encodeBigInt64(A):this.encodeObject(A,t)}ensureBufferSizeToWrite(A){let t=this.pos+A;this.view.byteLength<t&&this.resizeBuffer(t*2)}resizeBuffer(A){let t=new ArrayBuffer(A),e=new Uint8Array(t),l=new DataView(t);e.set(this.bytes),this.view=l,this.bytes=e}encodeNil(){this.writeU8(192)}encodeBoolean(A){A===!1?this.writeU8(194):this.writeU8(195)}encodeNumber(A){!this.forceIntegerToFloat&&Number.isSafeInteger(A)?A>=0?A<128?this.writeU8(A):A<256?(this.writeU8(204),this.writeU8(A)):A<65536?(this.writeU8(205),this.writeU16(A)):A<4294967296?(this.writeU8(206),this.writeU32(A)):this.useBigInt64?this.encodeNumberAsFloat(A):(this.writeU8(207),this.writeU64(A)):A>=-32?this.writeU8(224|A+32):A>=-128?(this.writeU8(208),this.writeI8(A)):A>=-32768?(this.writeU8(209),this.writeI16(A)):A>=-2147483648?(this.writeU8(210),this.writeI32(A)):this.useBigInt64?this.encodeNumberAsFloat(A):(this.writeU8(211),this.writeI64(A)):this.encodeNumberAsFloat(A)}encodeNumberAsFloat(A){this.forceFloat32?(this.writeU8(202),this.writeF32(A)):(this.writeU8(203),this.writeF64(A))}encodeBigInt64(A){A>=BigInt(0)?(this.writeU8(207),this.writeBigUint64(A)):(this.writeU8(211),this.writeBigInt64(A))}writeStringHeader(A){if(A<32)this.writeU8(160+A);else if(A<256)this.writeU8(217),this.writeU8(A);else if(A<65536)this.writeU8(218),this.writeU16(A);else if(A<4294967296)this.writeU8(219),this.writeU32(A);else throw new Error(\`Too long string: \${A} bytes in UTF-8\`)}encodeString(A){let e=Ij(A);this.ensureBufferSizeToWrite(5+e),this.writeStringHeader(e),hj(A,this.bytes,this.pos),this.pos+=e}encodeObject(A,t){let e=this.extensionCodec.tryToEncode(A,this.context);if(e!=null)this.encodeExtension(e);else if(Array.isArray(A))this.encodeArray(A,t);else if(ArrayBuffer.isView(A))this.encodeBinary(A);else if(typeof A=="object")this.encodeMap(A,t);else throw new Error(\`Unrecognized object: \${Object.prototype.toString.apply(A)}\`)}encodeBinary(A){let t=A.byteLength;if(t<256)this.writeU8(196),this.writeU8(t);else if(t<65536)this.writeU8(197),this.writeU16(t);else if(t<4294967296)this.writeU8(198),this.writeU32(t);else throw new Error(\`Too large binary: \${t}\`);let e=eA(A);this.writeU8a(e)}encodeArray(A,t){let e=A.length;if(e<16)this.writeU8(144+e);else if(e<65536)this.writeU8(220),this.writeU16(e);else if(e<4294967296)this.writeU8(221),this.writeU32(e);else throw new Error(\`Too large array: \${e}\`);for(let l of A)this.doEncode(l,t+1)}countWithoutUndefined(A,t){let e=0;for(let l of t)A[l]!==void 0&&e++;return e}encodeMap(A,t){let e=Object.keys(A);this.sortKeys&&e.sort();let l=this.ignoreUndefined?this.countWithoutUndefined(A,e):e.length;if(l<16)this.writeU8(128+l);else if(l<65536)this.writeU8(222),this.writeU16(l);else if(l<4294967296)this.writeU8(223),this.writeU32(l);else throw new Error(\`Too large map object: \${l}\`);for(let d of e){let q=A[d];this.ignoreUndefined&&q===void 0||(this.encodeString(d),this.doEncode(q,t+1))}}encodeExtension(A){if(typeof A.data=="function"){let e=A.data(this.pos+6),l=e.length;if(l>=4294967296)throw new Error(\`Too large extension object: \${l}\`);this.writeU8(201),this.writeU32(l),this.writeI8(A.type),this.writeU8a(e);return}let t=A.data.length;if(t===1)this.writeU8(212);else if(t===2)this.writeU8(213);else if(t===4)this.writeU8(214);else if(t===8)this.writeU8(215);else if(t===16)this.writeU8(216);else if(t<256)this.writeU8(199),this.writeU8(t);else if(t<65536)this.writeU8(200),this.writeU16(t);else if(t<4294967296)this.writeU8(201),this.writeU32(t);else throw new Error(\`Too large extension object: \${t}\`);this.writeI8(A.type),this.writeU8a(A.data)}writeU8(A){this.ensureBufferSizeToWrite(1),this.view.setUint8(this.pos,A),this.pos++}writeU8a(A){let t=A.length;this.ensureBufferSizeToWrite(t),this.bytes.set(A,this.pos),this.pos+=t}writeI8(A){this.ensureBufferSizeToWrite(1),this.view.setInt8(this.pos,A),this.pos++}writeU16(A){this.ensureBufferSizeToWrite(2),this.view.setUint16(this.pos,A),this.pos+=2}writeI16(A){this.ensureBufferSizeToWrite(2),this.view.setInt16(this.pos,A),this.pos+=2}writeU32(A){this.ensureBufferSizeToWrite(4),this.view.setUint32(this.pos,A),this.pos+=4}writeI32(A){this.ensureBufferSizeToWrite(4),this.view.setInt32(this.pos,A),this.pos+=4}writeF32(A){this.ensureBufferSizeToWrite(4),this.view.setFloat32(this.pos,A),this.pos+=4}writeF64(A){this.ensureBufferSizeToWrite(8),this.view.setFloat64(this.pos,A),this.pos+=8}writeU64(A){this.ensureBufferSizeToWrite(8),Ej(this.view,this.pos,A),this.pos+=8}writeI64(A){this.ensureBufferSizeToWrite(8),HA(this.view,this.pos,A),this.pos+=8}writeBigUint64(A){this.ensureBufferSizeToWrite(8),this.view.setBigUint64(this.pos,A),this.pos+=8}writeBigInt64(A){this.ensureBufferSizeToWrite(8),this.view.setBigInt64(this.pos,A),this.pos+=8}};function YA(n,A){return new _A(A).encodeSharedRef(n)}function DA(n){return\`\${n<0?"-":""}0x\${Math.abs(n).toString(16).padStart(2,"0")}\`}var Cn=16,Gn=16,xA=class{constructor(A=Cn,t=Gn){this.hit=0,this.miss=0,this.maxKeyLength=A,this.maxLengthPerKey=t,this.caches=[];for(let e=0;e<this.maxKeyLength;e++)this.caches.push([])}canBeCached(A){return A>0&&A<=this.maxKeyLength}find(A,t,e){let l=this.caches[e-1];A:for(let d of l){let q=d.bytes;for(let p=0;p<e;p++)if(q[p]!==A[t+p])continue A;return d.str}return null}store(A,t){let e=this.caches[A.length-1],l={bytes:A,str:t};e.length>=this.maxLengthPerKey?e[Math.random()*e.length|0]=l:e.push(l)}decode(A,t,e){let l=this.find(A,t,e);if(l!=null)return this.hit++,l;this.miss++;let d=ZA(A,t,e),q=Uint8Array.prototype.slice.call(A,t,t+e);return this.store(q,d),d}};var Ar="array",lA="map_key",gj="map_value",pn=n=>{if(typeof n=="string"||typeof n=="number")return n;throw new g("The type of key must be string or number but "+typeof n)},rr=class{constructor(){this.stack=[],this.stackHeadPosition=-1}get length(){return this.stackHeadPosition+1}top(){return this.stack[this.stackHeadPosition]}pushArrayState(A){let t=this.getUninitializedStateFromPool();t.type=Ar,t.position=0,t.size=A,t.array=new Array(A)}pushMapState(A){let t=this.getUninitializedStateFromPool();t.type=lA,t.readCount=0,t.size=A,t.map={}}getUninitializedStateFromPool(){if(this.stackHeadPosition++,this.stackHeadPosition===this.stack.length){let A={type:void 0,size:0,array:void 0,position:0,readCount:0,map:void 0,key:null};this.stack.push(A)}return this.stack[this.stackHeadPosition]}release(A){if(this.stack[this.stackHeadPosition]!==A)throw new Error("Invalid stack state. Released state is not on top of the stack.");if(A.type===Ar){let e=A;e.size=0,e.array=void 0,e.position=0,e.type=void 0}if(A.type===lA||A.type===gj){let e=A;e.size=0,e.map=void 0,e.readCount=0,e.type=void 0}this.stackHeadPosition--}reset(){this.stack.length=0,this.stackHeadPosition=-1}},sA=-1,jr=new DataView(new ArrayBuffer(0)),In=new Uint8Array(jr.buffer);try{jr.getInt8(0)}catch(n){if(!(n instanceof RangeError))throw new Error("This module is not supported in the current JavaScript engine because DataView does not throw RangeError on out-of-bounds access")}var vj=new RangeError("Insufficient data"),hn=new xA,NA=class n{constructor(A){this.totalPos=0,this.pos=0,this.view=jr,this.bytes=In,this.headByte=sA,this.stack=new rr,this.entered=!1,this.extensionCodec=A?.extensionCodec??T.defaultCodec,this.context=A?.context,this.useBigInt64=A?.useBigInt64??!1,this.rawStrings=A?.rawStrings??!1,this.maxStrLength=A?.maxStrLength??4294967295,this.maxBinLength=A?.maxBinLength??4294967295,this.maxArrayLength=A?.maxArrayLength??4294967295,this.maxMapLength=A?.maxMapLength??4294967295,this.maxExtLength=A?.maxExtLength??4294967295,this.keyDecoder=A?.keyDecoder!==void 0?A.keyDecoder:hn,this.mapKeyConverter=A?.mapKeyConverter??pn}clone(){return new n({extensionCodec:this.extensionCodec,context:this.context,useBigInt64:this.useBigInt64,rawStrings:this.rawStrings,maxStrLength:this.maxStrLength,maxBinLength:this.maxBinLength,maxArrayLength:this.maxArrayLength,maxMapLength:this.maxMapLength,maxExtLength:this.maxExtLength,keyDecoder:this.keyDecoder})}reinitializeState(){this.totalPos=0,this.headByte=sA,this.stack.reset()}setBuffer(A){let t=eA(A);this.bytes=t,this.view=new DataView(t.buffer,t.byteOffset,t.byteLength),this.pos=0}appendBuffer(A){if(this.headByte===sA&&!this.hasRemaining(1))this.setBuffer(A);else{let t=this.bytes.subarray(this.pos),e=eA(A),l=new Uint8Array(t.length+e.length);l.set(t),l.set(e,t.length),this.setBuffer(l)}}hasRemaining(A){return this.view.byteLength-this.pos>=A}createExtraByteError(A){let{view:t,pos:e}=this;return new RangeError(\`Extra \${t.byteLength-e} of \${t.byteLength} byte(s) found at buffer[\${A}]\`)}decode(A){if(this.entered)return this.clone().decode(A);try{this.entered=!0,this.reinitializeState(),this.setBuffer(A);let t=this.doDecodeSync();if(this.hasRemaining(1))throw this.createExtraByteError(this.pos);return t}finally{this.entered=!1}}*decodeMulti(A){if(this.entered){yield*this.clone().decodeMulti(A);return}try{for(this.entered=!0,this.reinitializeState(),this.setBuffer(A);this.hasRemaining(1);)yield this.doDecodeSync()}finally{this.entered=!1}}async decodeAsync(A){if(this.entered)return this.clone().decodeAsync(A);try{this.entered=!0;let t=!1,e;for await(let p of A){if(t)throw this.entered=!1,this.createExtraByteError(this.totalPos);this.appendBuffer(p);try{e=this.doDecodeSync(),t=!0}catch(F){if(!(F instanceof RangeError))throw F}this.totalPos+=this.pos}if(t){if(this.hasRemaining(1))throw this.createExtraByteError(this.totalPos);return e}let{headByte:l,pos:d,totalPos:q}=this;throw new RangeError(\`Insufficient data in parsing \${DA(l)} at \${q} (\${d} in the current buffer)\`)}finally{this.entered=!1}}decodeArrayStream(A){return this.decodeMultiAsync(A,!0)}decodeStream(A){return this.decodeMultiAsync(A,!1)}async*decodeMultiAsync(A,t){if(this.entered){yield*this.clone().decodeMultiAsync(A,t);return}try{this.entered=!0;let e=t,l=-1;for await(let d of A){if(t&&l===0)throw this.createExtraByteError(this.totalPos);this.appendBuffer(d),e&&(l=this.readArraySize(),e=!1,this.complete());try{for(;yield this.doDecodeSync(),--l!==0;);}catch(q){if(!(q instanceof RangeError))throw q}this.totalPos+=this.pos}}finally{this.entered=!1}}doDecodeSync(){A:for(;;){let A=this.readHeadByte(),t;if(A>=224)t=A-256;else if(A<192)if(A<128)t=A;else if(A<144){let l=A-128;if(l!==0){this.pushMapState(l),this.complete();continue A}else t={}}else if(A<160){let l=A-144;if(l!==0){this.pushArrayState(l),this.complete();continue A}else t=[]}else{let l=A-160;t=this.decodeString(l,0)}else if(A===192)t=null;else if(A===194)t=!1;else if(A===195)t=!0;else if(A===202)t=this.readF32();else if(A===203)t=this.readF64();else if(A===204)t=this.readU8();else if(A===205)t=this.readU16();else if(A===206)t=this.readU32();else if(A===207)this.useBigInt64?t=this.readU64AsBigInt():t=this.readU64();else if(A===208)t=this.readI8();else if(A===209)t=this.readI16();else if(A===210)t=this.readI32();else if(A===211)this.useBigInt64?t=this.readI64AsBigInt():t=this.readI64();else if(A===217){let l=this.lookU8();t=this.decodeString(l,1)}else if(A===218){let l=this.lookU16();t=this.decodeString(l,2)}else if(A===219){let l=this.lookU32();t=this.decodeString(l,4)}else if(A===220){let l=this.readU16();if(l!==0){this.pushArrayState(l),this.complete();continue A}else t=[]}else if(A===221){let l=this.readU32();if(l!==0){this.pushArrayState(l),this.complete();continue A}else t=[]}else if(A===222){let l=this.readU16();if(l!==0){this.pushMapState(l),this.complete();continue A}else t={}}else if(A===223){let l=this.readU32();if(l!==0){this.pushMapState(l),this.complete();continue A}else t={}}else if(A===196){let l=this.lookU8();t=this.decodeBinary(l,1)}else if(A===197){let l=this.lookU16();t=this.decodeBinary(l,2)}else if(A===198){let l=this.lookU32();t=this.decodeBinary(l,4)}else if(A===212)t=this.decodeExtension(1,0);else if(A===213)t=this.decodeExtension(2,0);else if(A===214)t=this.decodeExtension(4,0);else if(A===215)t=this.decodeExtension(8,0);else if(A===216)t=this.decodeExtension(16,0);else if(A===199){let l=this.lookU8();t=this.decodeExtension(l,1)}else if(A===200){let l=this.lookU16();t=this.decodeExtension(l,2)}else if(A===201){let l=this.lookU32();t=this.decodeExtension(l,4)}else throw new g(\`Unrecognized type byte: \${DA(A)}\`);this.complete();let e=this.stack;for(;e.length>0;){let l=e.top();if(l.type===Ar)if(l.array[l.position]=t,l.position++,l.position===l.size)t=l.array,e.release(l);else continue A;else if(l.type===lA){if(t==="__proto__")throw new g("The key __proto__ is not allowed");l.key=this.mapKeyConverter(t),l.type=gj;continue A}else if(l.map[l.key]=t,l.readCount++,l.readCount===l.size)t=l.map,e.release(l);else{l.key=null,l.type=lA;continue A}}return t}}readHeadByte(){return this.headByte===sA&&(this.headByte=this.readU8()),this.headByte}complete(){this.headByte=sA}readArraySize(){let A=this.readHeadByte();switch(A){case 220:return this.readU16();case 221:return this.readU32();default:{if(A<160)return A-144;throw new g(\`Unrecognized array type byte: \${DA(A)}\`)}}}pushMapState(A){if(A>this.maxMapLength)throw new g(\`Max length exceeded: map length (\${A}) > maxMapLengthLength (\${this.maxMapLength})\`);this.stack.pushMapState(A)}pushArrayState(A){if(A>this.maxArrayLength)throw new g(\`Max length exceeded: array length (\${A}) > maxArrayLength (\${this.maxArrayLength})\`);this.stack.pushArrayState(A)}decodeString(A,t){return!this.rawStrings||this.stateIsMapKey()?this.decodeUtf8String(A,t):this.decodeBinary(A,t)}decodeUtf8String(A,t){if(A>this.maxStrLength)throw new g(\`Max length exceeded: UTF-8 byte length (\${A}) > maxStrLength (\${this.maxStrLength})\`);if(this.bytes.byteLength<this.pos+t+A)throw vj;let e=this.pos+t,l;return this.stateIsMapKey()&&this.keyDecoder?.canBeCached(A)?l=this.keyDecoder.decode(this.bytes,e,A):l=mj(this.bytes,e,A),this.pos+=t+A,l}stateIsMapKey(){return this.stack.length>0?this.stack.top().type===lA:!1}decodeBinary(A,t){if(A>this.maxBinLength)throw new g(\`Max length exceeded: bin length (\${A}) > maxBinLength (\${this.maxBinLength})\`);if(!this.hasRemaining(A+t))throw vj;let e=this.pos+t,l=this.bytes.subarray(e,e+A);return this.pos+=t+A,l}decodeExtension(A,t){if(A>this.maxExtLength)throw new g(\`Max length exceeded: ext length (\${A}) > maxExtLength (\${this.maxExtLength})\`);let e=this.view.getInt8(this.pos+t),l=this.decodeBinary(A,t+1);return this.extensionCodec.decode(l,e,this.context)}lookU8(){return this.view.getUint8(this.pos)}lookU16(){return this.view.getUint16(this.pos)}lookU32(){return this.view.getUint32(this.pos)}readU8(){let A=this.view.getUint8(this.pos);return this.pos++,A}readI8(){let A=this.view.getInt8(this.pos);return this.pos++,A}readU16(){let A=this.view.getUint16(this.pos);return this.pos+=2,A}readI16(){let A=this.view.getInt16(this.pos);return this.pos+=2,A}readU32(){let A=this.view.getUint32(this.pos);return this.pos+=4,A}readI32(){let A=this.view.getInt32(this.pos);return this.pos+=4,A}readU64(){let A=$j(this.view,this.pos);return this.pos+=8,A}readI64(){let A=yA(this.view,this.pos);return this.pos+=8,A}readU64AsBigInt(){let A=this.view.getBigUint64(this.pos);return this.pos+=8,A}readI64AsBigInt(){let A=this.view.getBigInt64(this.pos);return this.pos+=8,A}readF32(){let A=this.view.getFloat32(this.pos);return this.pos+=4,A}readF64(){let A=this.view.getFloat64(this.pos);return this.pos+=8,A}};function tr(n,A){return new NA(A).decode(n)}var iA=class n{constructor(A,t,e,l,d){this.mediaIds=A;this.sequenceNumber=t;this.timeStamp=e;this.isEndOfSpurt=l;this.payload=d}static parse(A){let t;try{t=tr(A)}catch{return D("not valid msgpack")}if(!Array.isArray(t))return D("container must be an array");if(t.length<6)return D("missing fields");if(t[0]!==1)return D("unknown type");if(!Array.isArray(t[1]))return D("media ids must be an array");if(!t[1].every(x=>typeof x=="number"))return D("media ids must be numbers");if(typeof t[2]!="number")return D("sequence number must be a number");if(typeof t[3]!="number")return D("timestamp must be a number");if(typeof t[4]!="number")return D("flags must be a number");let e=t[1],l=t[2]>>>0,d=t[3]>>>0,p=(t[4]&1)!==0,F=t[t.length-1];return F instanceof Uint8Array?oj(new n(e,l,d,p,F)):D("payload must be bytes")}toBytes(){let A=Number(this.isEndOfSpurt),t=[1,this.mediaIds,this.sequenceNumber>>>0,this.timeStamp>>>0,A,this.payload];return new Uint8Array(YA(t,{forceFloat32:!0,ignoreUndefined:!0}))}};var BA=class{constructor(A,t){this.sampleRate=A;this.wasm=t;this.sequenceNumber=Math.random()*Math.pow(2,32)>>0;this.timestamp=Math.random()*Math.pow(2,32)>>0;this.connections=[];this.monitoring=!1;this.active=!1;this.stats={numberPackets:0,numberTicks:0,numberPacketError:0,numberPacketsMediaNotFound:0};this.encoder=new t.Encoder(A,15,!0,w.VadPreload),this.encoder.complexity=navigator.hardwareConcurrency>=4?6:4,this.information=Gj(this.wasm),this.outBuffer=K(this.wasm,"u8",1270),vA(this.information,1)}setVad(A){this.encoder.set_volume_gate(A.volumeGate!==void 0,A.volumeGate?.attackThreshold??0,A.volumeGate?.releaseThreshold??0),this.encoder.set_speech_detection(A.voiceActivity!==void 0,A.voiceActivity?.attackThreshold??0,A.voiceActivity?.releaseThreshold??0)}setMedias(A){this.connections=A.filter(({mediaIds:t})=>t.length>0)}close(){pj(this.wasm,this.information),S(this.wasm,this.outBuffer),this.encoder.delete()}encode(A){for(this.encoder.push(A.byteOffset,this.information.values.byteOffset);;){let t=this.encoder.pop(this.connections.length===0?0:this.outBuffer.byteOffset,this.outBuffer.length);if(t===0)break;if(t<0){dj(\`failed encoding packet: \${t}\`);return}if(this.timestamp=this.timestamp+1800>>0,t===1)continue;this.sequenceNumber=this.sequenceNumber+1>>0;let e=this.active&&!this.encoder.active;this.active=this.encoder.active,this.monitoring=this.connections.some(l=>l.id===0);for(let l of this.connections){if(this.monitoring&&l.id!==0)continue;let d=new iA(l.mediaIds,this.sequenceNumber,this.timestamp,e,this.outBuffer.subarray(0,t));M(globalThis,["sendPacket",{connectionId:l.id,packet:d.toBytes()}])}}}onMessage(A){let[t,e]=A;switch(t){case"captureSetVad":this?.setVad(e);break;case"captureSetMedias":this?.setMedias(e.connections);break;case"close":this.close();break;case"dump":e.result.postMessage(this.dump());break}}dump(){return{sequenceNumber:this.sequenceNumber,timestamp:this.timestamp,connections:this.connections.map(A=>\`\${A.id} => \${A.mediaIds.join(",")}\`),active:this.active,monitoring:this.monitoring,information:{active:EA(this.information),speechProbability:$A(this.information),rmsDBFS:FA(this.information),volume:tj(this.information)},encoder:{sample_rate:this.encoder.sample_rate,fec_packet_loss:this.encoder.fec_packet_loss,voip:this.encoder.voip,vad_preload:this.encoder.vad_preload,complexity:this.encoder.complexity,speech_probability:this.encoder.speech_probability,rms_dbfs:this.encoder.rms_dbfs,active:this.encoder.active,speech_detection_enabled:this.encoder.speech_detection_enabled,speech_detection_going_active:this.encoder.speech_detection_going_active,speech_detection_going_inactive:this.encoder.speech_detection_going_inactive,volume_gate_enabled:this.encoder.volume_gate_enabled,volume_gate_going_active:this.encoder.volume_gate_going_active,volume_gate_going_inactive:this.encoder.volume_gate_going_inactive}}}},bA=class{constructor(A){this.wasm=A;this.medias=new Map;this.stats={numberPackets:0,numberTicks:0,numberPacketError:0,numberPacketsMediaNotFound:0,numberTicksWithAudio:0};this.largestIndex=-1;this.decoders=K(this.wasm,"u32",w.MaxNumberOfDecoders),this.information=fj(this.wasm,w.MaxNumberOfDecoders),IA(this.information,[1,1])}close(){Cj(this.wasm,this.information);for(let{decoder:A}of this.medias.values())A.delete()}receivePacket(A,t){this.stats.numberPackets++;let e=iA.parse(t);if(e.type==="Failure"){this.stats.numberPacketError++;let l=Array.from(t).map(d=>d.toString(16).padStart(2,"0")).join("");console.error(\`failed decoding audio packet; reason: \${e.reason}, connection: \${A}, dump: \${l}\`);return}for(let l of e.value.mediaIds){let d=this.medias.get(LA({connectionId:A,mediaId:l}));if(d===void 0){this.stats.numberPacketsMediaNotFound++;continue}d.lastPacket=t;let q=K(this.wasm,"u8",e.value.payload.length);q.set(e.value.payload),d.decoder.push(e.value.sequenceNumber,e.value.timeStamp,e.value.isEndOfSpurt,q.byteOffset,q.length)}}insertMedia(A,t,e,l=[1,1]){let d=LA({connectionId:t,mediaId:e}),q=new this.wasm.Decoder;this.medias.set(d,{index:A,decoder:q,lastPacket:void 0}),this.decoders[A]=q.$$.ptr,this.largestIndex=Math.max(this.largestIndex,A),mA(this.information,A,l),jj(this.information,A,0),Aj(this.information,A,0)}removeMedia(A,t,e){let l=LA({connectionId:t,mediaId:e}),d=this.medias.get(l);if(!(d===void 0||d.index!==A)&&(this.medias.delete(l),Xr(this.information,A,0),this.decoders[A]=0,d.decoder.delete(),A===this.largestIndex)){for(A=A-1;A>=0&&this.decoders[A]===0;A--);this.largestIndex=A}}decode(A){return{hasAudio:this.wasm.pop_many(this.decoders.byteOffset,this.information.values.byteOffset,this.largestIndex+1,A.byteOffset)}}onMessage(A){let[t,e]=A;switch(t){case"playbackReceivePacket":this.receivePacket(e.connectionId,e.packet);break;case"playbackUpdateMedias":for(let{index:l,connectionId:d,mediaId:q}of e.removed)this.removeMedia(l,d,q);for(let{index:l,connectionId:d,mediaId:q,volume:p}of e.added)this.insertMedia(l,d,q,p);break;case"close":this.close();break;case"dump":e.result.postMessage(this.dump());break}}dump(){let A=[];for(let[t,e]of this.medias){let l=qj(t);A.push({index:e.index,connectionId:l.connectionId,mediaId:l.mediaId,rmsDBFS:hA(this.information,e.index),volume:Zr(this.information,e.index),voicedBlocks:rj(this.information,e.index),silentBlocks:Yr(this.information,e.index),time:e.decoder.time,consecutive_silence:e.decoder.consecutive_silence,last_voiced_time_point:e.decoder.last_voiced_time_point,sequence_number:e.decoder.sequence_number,packetsSeen:e.decoder.packets_seen,packetsInvalid:e.decoder.packets_invalid,packetsTooLate:e.decoder.packets_too_late,packetsTooEarly:e.decoder.packets_too_early,packetsRepeated:e.decoder.packets_repeated,packetsProcessed:e.decoder.packets_processed,packetsLost:e.decoder.packets_lost,rewinds:e.decoder.rewinds,cacheLength:e.decoder.cache_length,lastPacket:ej(e.lastPacket)})}return{largestIndex:this.largestIndex,globalVolume:zr(this.information),decoders:A}}};var xj=Ce(Hj()),yj=(0,xj.default)(),_j,Dj;globalThis.addEventListener("message",nr);async function nr(n){let A=n.data,[t,e]=A;switch(t){case"captureInit":e.workletPort.onmessage=nr,_j=new sr(e.sampleRate,await yj,e.refreshRate);break;case"playbackInit":e.workletPort.onmessage=nr,Dj=new lr(await yj,e.workletPort,e.refreshRate);break;case"close":globalThis.close();break}_j?.onMessage(A),Dj?.onMessage(A)}var sr=class extends BA{constructor(t,e,l){super(t,e);this.sampleRate=t;this.inBuffer=K(this.wasm,"f32",t*.02),this.updateHandle=setInterval(()=>this.update(),l),M(globalThis,["captureReady",{}])}close(){super.close(),S(this.wasm,this.inBuffer),clearInterval(this.updateHandle)}onMessage(t){super.onMessage(t);let[e,l]=t;switch(e){case"captureSetVolume":this.setVolume(l.value);break;case"captureTick":this.tick(l.buffer);break}}setVolume(t){vA(this.information,t)}tick(t){this.inBuffer.set(t,0),this.encode(this.inBuffer)}update(){M(globalThis,["captureUpdate",{active:EA(this.information),rmsDBFs:FA(this.information),speechProbability:$A(this.information)}])}dump(){return{type:"unshared capture worker",sampleRate:this.sampleRate,...super.dump()}}},lr=class extends bA{constructor(t,e,l){super(t);this.workletPort=e;this.id=w.PlaybackPreload,this.outBuffer=K(this.wasm,"f32",48e3*.02*2),this.updateHandle=setInterval(()=>this.update(),l),M(globalThis,["playbackReady",{}])}close(){super.close(),S(this.wasm,this.outBuffer),clearInterval(this.updateHandle)}onMessage(t){super.onMessage(t);let[e,l]=t;switch(e){case"playbackSetVolume":this.setVolume(l.index,l.value);break;case"playbackTick":this.tick();break}}setVolume(t,e){t==="global"?IA(this.information,e):mA(this.information,t,e)}tick(){this.stats.numberTicks++,this.id+=1;let{hasAudio:t}=this.decode(this.outBuffer);if(t){let e=this.outBuffer.slice();M(this.workletPort,["samples",{id:this.id,buffer:e}],[e.buffer])}}update(){let t=new Float32Array(this.information.length*2);for(let l=0;l<=this.largestIndex;l++)t[l]=hA(this.information,l);let e=[];for(let[l,d]of this.medias)e[d.index]={packetsBuffered:d.decoder.cache_length,packetsSeen:d.decoder.packets_seen,packetsProcessed:d.decoder.packets_processed,packetsTooEarly:d.decoder.packets_too_early,packetsTooLate:d.decoder.packets_too_late,packetsDropped:0,packetsInvalid:d.decoder.packets_invalid,packetsRepeated:d.decoder.packets_repeated,packetsLost:d.decoder.packets_lost};M(globalThis,["playbackUpdate",{activities:t,jitterStats:e}],[t.buffer])}dump(){return{type:"unshared playback worker",id:this.id,...super.dump()}}};})();
|
|
3201
|
-
`;var
|
|
3201
|
+
`;var c='"use strict";(()=>{var P=Object.defineProperty;var M=(e,t)=>{for(var r in t)P(e,r,{get:t[r],enumerable:!0})};var u={};M(u,{AdditionalCaptureBlocks:()=>R,AdditionalPlaybackBlocks:()=>E,ClockJumpCheckInterval:()=>_,ClockJumpThreshold:()=>N,ConnectInterval:()=>Z,ConnectTimeout:()=>J,DefaultRefreshRate:()=>D,DefaultVideoCodec:()=>q,HealthCheckTimeout:()=>O,MainConnectionPingInterval:()=>W,MaxNumberOfDecoders:()=>L,MinDBFs:()=>v,MinTokenLifetime:()=>z,MinTokenRefreshInterval:()=>G,PlaybackPreload:()=>F,RenderQuantumSize:()=>V,VadPreload:()=>C,WebRtcIceTimeout:()=>j,WebRtcStatsSnapshotInterval:()=>$,WebRtcTimeout:()=>H});var E=3,R=3,F=3,D=250,C=3,L=512,V=128,v=-758.596,O=1e4,_=1e3,N=1e4,W=3e3,$=1e3,j=3e3,H=1e4,J=5e3,z=6e4,G=5e3,Z=[0,100,200,200,500],q="H264";function d(e,t,r){return e.postMessage(t,r)}var Q;(e=>{let t;(r=>(r[r.InvalidPassword=-1]="InvalidPassword",r[r.Unknown=0]="Unknown",r[r.Unencrypted=1]="Unencrypted",r[r.Encrypted=2]="Encrypted"))(t=e.PeerCipherStatus||={})})(Q||={});var{Deno:k}=globalThis,K=typeof k?.noColor=="boolean"?k.noColor:!1,X=!K;function m(e,t){return{open:`\\x1B[${e.join(";")}m`,close:`\\x1B[${t}m`,regexp:new RegExp(`\\\\x1b\\\\[${t}m`,"g")}}function h(e,t){return X?`${t.open}${e.replace(t.regexp,t.open)}${t.close}`:e}function p(e){return h(e,m([0],0))}function U(e){return h(e,m([1],22))}function Y(e){return h(e,m([2],22))}var ke=new RegExp(["[\\\\u001B\\\\u009B][[\\\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\\\d\\\\/#&.:=?%@~_]+)*|[a-zA-Z\\\\d]+(?:;[-a-zA-Z\\\\d\\\\/#&.:=?%@~_]*)*)?\\\\u0007)","(?:(?:\\\\d{1,4}(?:;\\\\d{0,4})*)?[\\\\dA-PR-TXZcf-nq-uy=><~]))"].join("|"),"g"),ee=new Date,f=(e=>(e[e.CRITICAL=0]="CRITICAL",e[e.ERROR=1]="ERROR",e[e.WARN=2]="WARN",e[e.INFO=3]="INFO",e[e.DEBUG=4]="DEBUG",e))(f||{}),T={0:"\\u{1F4A5}",1:"\\u{1F534}",2:"\\u{1F7E1}",3:"\\u{1F535}",4:"\\u{1F7E3}"},te={4:Y,3:p,2:p,1:U,0:U};function re({message:e}){return String(e)}function S(e){return JSON.stringify({timestamp:e.date.toISOString(),level:f[e.level],message:e.message,extra:e.extra})}function I(e){function t(c,i){return[Math.floor(c/i),c%i]}function r(){let c,i=e.date.valueOf()-ee.valueOf();[i,c]=t(i,1e3);let[B,A]=t(i,60);return`${B.toString().padStart(4,"0")}:${A.toString().padStart(2,"0")}.${c.toString().padStart(3,"0")}`}function n(){return e.extra===void 0?"":typeof Deno=="object"?" "+Deno.inspect(e.extra,{compact:!1,colors:!0,trailingComma:!0}).trimStart():" "+JSON.stringify(e.extra)}let s=T[e.level],o=e.logger.name!==void 0?`@${e.logger.name}`:"";return`${p(r())}${o} ${s} ${te[e.level](String(e.message))}${n()}`}function ne(e){let t=`[${e.date.toISOString()}]`,r=`[${f[e.level]}]`,n=e.logger.name!==void 0?`[${e.logger.name}] `:"",s=T[e.level];return`${t} ${s} ${r.padEnd(7," ")} ${n}${e.message}`}function se(){return typeof Deno=="object"&&Deno.stdout.isTerminal()}var w=class{static sparse=re;static json=S;static pretty=I;static structured=ne;static default=se()?I:S;constructor(){}},ae=class{formatter;consoleObject;filter;constructor(e=w.default,t=4,r=console){this.filter=t,this.formatter=e,this.consoleObject=r}handle(e){let t=this.formatter(e);switch(e.level){case 0:case 1:this.consoleObject.error(t);break;case 2:this.consoleObject.warn(t);break;case 3:this.consoleObject.info(t);break;case 4:this.consoleObject.debug(t);break}}};var a=class{#e;sinks;filter;parent;get name(){return this.#e}constructor(e,t=void 0,r=[],n=void 0){this.#e=t,this.sinks=r,this.filter=e,this.parent=n}log(e,t,r=void 0){let n={date:new Date,level:e,logger:this,message:t,extra:r};this.filter<e||this.insert(n)}insert(e){if(!(this.filter<e.level)){for(let t of this.sinks)t.filter>=e.level&&t.handle(e);this.parent!==void 0&&this.parent.insert(e)}}error=this.log.bind(this,1);warn=this.log.bind(this,2);info=this.log.bind(this,3);debug=this.log.bind(this,4)},l=new a(3,void 0,[new ae]),oe=a.prototype.log.bind(l,1),ie=a.prototype.log.bind(l,2),ce=a.prototype.log.bind(l,3),ue=a.prototype.log.bind(l,4),Ue=a.prototype.log.bind(l);var b=class extends AudioWorkletProcessor{constructor(){super();this.alive=!0;this.blocks=0;this.port.onmessage=this.onMessage.bind(this)}async onMessage(r){let[n,s]=r.data;switch(n){case"init":this.state=new y(s.workerPort,sampleRate*.02);break;case"close":this.alive=!1;break;case"dump":s.result.postMessage(this.dump());break}}process(r,n,s){if(this.state===void 0||r.length<1||r[0].length<1)return this.alive;let o=this.state.fill(0,r[0][0]);return this.state.offset===this.state.length&&(this.state.flush(),this.state.fill(o,r[0][0])),this.alive}dump(){return{type:"unshared capture worklet",alive:this.alive,sampleRate,offset:this.state?.offset||null,length:this.state?.length||null,blocks:this.blocks}}},x=class extends AudioWorkletProcessor{constructor(){super();this.alive=!0;this.silenceBlocks=0;this.voiceBlocks=0;this.totalBlocks=0;this.port.onmessage=this.onMessage.bind(this)}async onMessage(r){let[n,s]=r.data;switch(n){case"close":this.alive=!1;break;case"init":this.state=new g(s.workerPort,sampleRate*.02),s.workerPort.onmessage=this.onMessage.bind(this);break;case"samples":this.state?.add(s.id,s.buffer);break;case"dump":s.result.postMessage(this.dump());break}n==="close"&&(this.alive=!1)}process(r,n,s){if(this.state===void 0||n.length<1||n[0].length<2)return this.alive;let o=this.state.fill(0,n[0][0],n[0][1]);return o<u.RenderQuantumSize&&(this.totalBlocks+=1,this.state.next(),this.state.hasVoice?this.voiceBlocks+=1:this.silenceBlocks+=1,this.state.fill(o,n[0][0],n[0][1])),this.alive}dump(){return{type:"unshared playback worklet",alive:this.alive,sampleRate,id:this.state?.id||null,offset:this.state?.offset||null,length:this.state?.length||null,hasVoice:this.state?.hasVoice??!1,silenceBlocks:this.silenceBlocks,voiceBlocks:this.voiceBlocks,totalBlocks:this.totalBlocks}}},y=class{constructor(t,r){this.port=t;this.length=r;this.offset=0,this.buffer=new Float32Array(r)}fill(t,r){let n=Math.min(r.length-t,this.length-this.offset);return this.buffer.set(r.subarray(t,t+n),this.offset),this.offset+=n,t+n}flush(){d(this.port,["captureTick",{buffer:this.buffer}],[this.buffer.buffer]),this.offset=0,this.buffer=new Float32Array(this.length)}},g=class{constructor(t,r){this.port=t;this.length=r;this.cache=[];this.id=-1,this.offset=0,this.buffer=void 0,this.next()}get hasVoice(){return this.buffer!==void 0}fill(t,r,n){let s=Math.min(u.RenderQuantumSize-t,this.length-this.offset);return this.buffer!==void 0&&(r.set(this.buffer.subarray(this.offset,this.offset+s),t),n.set(this.buffer.subarray(this.offset+this.length,this.offset+this.length+s),t)),this.offset+=s,t+s}add(t,r){this.cache.push({id:t,buffer:r})}next(){for(this.id+=1;this.cache[0]?.id<this.id;)this.cache.shift();this.cache[0]?.id===this.id?(this.buffer=this.cache[0].buffer,this.cache.shift()):this.buffer=void 0,this.offset=0,d(this.port,["playbackTick",{}])}};registerProcessor("OdinCaptureProcessor",b);registerProcessor("OdinPlaybackProcessor",x);})();\n';var rx=new Dx;function D0(r,D,x,F,A=E.DefaultRefreshRate){return rx.enqueue(async()=>{let[B,j]=await u(d,c,r,"OdinCaptureProcessor",{channelCount:1,numberOfInputs:1,numberOfOutputs:0});return console.warn("SharedArrayBuffer is not available; creating ODIN CaptureWorker in fallback mode"),q.create(r,D,x,A,B,j,F)})}async function r0(r,D=E.DefaultRefreshRate){if(r.sampleRate!==48e3)throw new Error("playback sample rate must be 48kHz ");let[x,F]=await u(d,c,r,"OdinPlaybackProcessor",{numberOfInputs:0,numberOfOutputs:1,outputChannelCount:[2]});return G.create(r,D,x,F)}var q=class r extends s{constructor(x,F,A,B,j){super(x,F,A,B,j);this._Activity=a;this._SpeechProbability=0;F.addEventListener("message",this._OnMessages.bind(this))}static async create(x,F,A,B,j,t,m){let{port1:h,port2:p}=new MessageChannel;return v(j,["captureInit",{sampleRate:x.sampleRate,refreshRate:B,workletPort:h}],[h]),await i(j,"captureReady"),v(t.port,["init",{workerPort:p}],[p]),new r(t,j,F,A,m)}get activity(){return this._Activity}get speechProbability(){return this._SpeechProbability}setVolume(x){v(this.worker,["captureSetVolume",{value:x}])}_OnMessages(x){super._OnMessages(x);let[F,A]=x.data;F==="captureUpdate"&&(this._Activity={isSilent:!A.active,rmsDBFS:A.rmsDBFs},this._SpeechProbability=A.speechProbability)}},G=class r extends b{constructor(x,F,A){super(x,F,A);this.activities=new Float32Array;this.jitterStats=[]}static async create(x,F,A,B){let{port1:j,port2:t}=new MessageChannel;return v(A,["playbackInit",{workletPort:j,refreshRate:F}],[j]),await i(A,"playbackReady"),v(B.port,["init",{workerPort:t}],[t]),new r(x,B,A)}getActivity(x){let F=this.medias.get(C(x));if(F===void 0)return;let A=this.activities.at(F.index);if(A!==void 0)return A===0?a:{isSilent:!1,rmsDBFS:A}}getJitterStats(x){let F=this.medias.get(C(x));if(F===void 0)return;let A=this.jitterStats.at(F.index);if(A!==void 0)return A}setGlobalVolume(x){v(this.worker,["playbackSetVolume",{index:"global",value:x}])}setVolume(x,F){let A=this.medias.get(C(x));A!==void 0&&v(this.worker,["playbackSetVolume",{index:A.index,value:F}])}_GetFreeIndex(){let x=super._GetFreeIndex();if(x!==void 0)return x;if(this.medias.size<E.MaxNumberOfDecoders)return this.medias.size}_OnMessages(x){super._OnMessages(x);let[F,A]=x.data;F==="playbackUpdate"&&(this.activities=A.activities,this.jitterStats=A.jitterStats)}};export{q as UnsharedCaptureWorker,G as UnsharedPlaybackWorker,D0 as createCaptureWorker,r0 as createPlaybackWorker};
|
package/package.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@4players/odin-plugin-web",
|
|
3
|
-
"version": "1.9.
|
|
3
|
+
"version": "1.9.5",
|
|
4
4
|
"description": "A backend plugin providing the custom WebAssembly audio processing module for ODIN web clients",
|
|
5
5
|
"homepage": "https://www.4players.io",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
8
|
-
"url": "https://github.com/4Players/odin-sdk-web.git"
|
|
8
|
+
"url": "git+https://github.com/4Players/odin-sdk-web.git"
|
|
9
9
|
},
|
|
10
10
|
"license": "UNLICENSED",
|
|
11
11
|
"main": "./lib/cjs/plugin/index.cjs",
|