@libmedia/avplayer 0.8.2 → 0.9.0

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.
Files changed (50) hide show
  1. package/dist/esm/118.avplayer.js +1 -1
  2. package/dist/esm/217.avplayer.js +1 -1
  3. package/dist/esm/331.avplayer.js +1 -1
  4. package/dist/esm/344.avplayer.js +1 -1
  5. package/dist/esm/433.avplayer.js +1 -1
  6. package/dist/esm/453.avplayer.js +1 -1
  7. package/dist/esm/522.avplayer.js +1 -1
  8. package/dist/esm/531.avplayer.js +1 -1
  9. package/dist/esm/543.avplayer.js +1 -1
  10. package/dist/esm/576.avplayer.js +1 -1
  11. package/dist/esm/611.avplayer.js +1 -1
  12. package/dist/esm/634.avplayer.js +1 -1
  13. package/dist/esm/70.avplayer.js +1 -1
  14. package/dist/esm/791.avplayer.js +1 -1
  15. package/dist/esm/839.avplayer.js +1 -1
  16. package/dist/esm/854.avplayer.js +1 -1
  17. package/dist/esm/855.avplayer.js +1 -1
  18. package/dist/esm/904.avplayer.js +1 -1
  19. package/dist/esm/94.avplayer.js +1 -1
  20. package/dist/esm/941.avplayer.js +1 -1
  21. package/dist/esm/969.avplayer.js +1 -1
  22. package/dist/esm/avplayer.js +1 -1
  23. package/dist/types/AVPlayer.d.ts +57 -7
  24. package/dist/types/drm/drm.d.ts +6 -0
  25. package/dist/types/drm/getKeySystemFromSystemId.d.ts +2 -0
  26. package/dist/types/drm/kid2Base64.d.ts +1 -0
  27. package/dist/types/mse/MSEPipeline.d.ts +5 -2
  28. package/dist/umd/118.avplayer.js +1 -1
  29. package/dist/umd/217.avplayer.js +1 -1
  30. package/dist/umd/331.avplayer.js +1 -1
  31. package/dist/umd/344.avplayer.js +1 -1
  32. package/dist/umd/433.avplayer.js +1 -1
  33. package/dist/umd/453.avplayer.js +1 -1
  34. package/dist/umd/522.avplayer.js +1 -1
  35. package/dist/umd/531.avplayer.js +1 -1
  36. package/dist/umd/543.avplayer.js +1 -1
  37. package/dist/umd/576.avplayer.js +1 -1
  38. package/dist/umd/611.avplayer.js +1 -1
  39. package/dist/umd/634.avplayer.js +1 -1
  40. package/dist/umd/70.avplayer.js +1 -1
  41. package/dist/umd/791.avplayer.js +1 -1
  42. package/dist/umd/839.avplayer.js +1 -1
  43. package/dist/umd/854.avplayer.js +1 -1
  44. package/dist/umd/855.avplayer.js +1 -1
  45. package/dist/umd/904.avplayer.js +1 -1
  46. package/dist/umd/94.avplayer.js +1 -1
  47. package/dist/umd/941.avplayer.js +1 -1
  48. package/dist/umd/969.avplayer.js +1 -1
  49. package/dist/umd/avplayer.js +1 -1
  50. package/package.json +12 -12
@@ -1 +1 @@
1
- (self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[969],{28773:(e,t,a)=>{a.r(t),a.d(t,{default:()=>$});var i=a(134),r=a(14686),n=a(61499),o=a(63939),s=a(50932),d=(a(9599),a(58121)),c=a(68243),h=a(4624),l=a(35028),f=a(62815),p=a(95832),u=a(67659),g=a(59166),w=a(21477),m=a(82014),I=a(97077),U=a(14769),k=a(22576),M=a(87518),R=a(64093),b=a(9705),v=a(85947),B=a(37837),y=a(71517),D=a(65977),A=a(44328),C=a(77231),P=a(72739),S=a(52071),L=a(34677),T=a(73040),x=(a(55833),a(99991)),z=a(67672);const N="src/avformat/formats/IFlvFormat.ts";class $ extends v.A{constructor(e={}){super(),(0,i.A)(this,"type",0),(0,i.A)(this,"header",void 0),(0,i.A)(this,"script",void 0),(0,i.A)(this,"options",void 0),(0,i.A)(this,"firstTagPos",void 0),this.header=new d.A,this.script=new c.A,this.options=e}init(e){e.ioReader&&e.ioReader.setEndian(!0)}async readHeader(e){try{if("FLV"!==await e.ioReader.peekString(3))return h.z3("the file format is not flv",N,116),b.LR;await this.header.read(e.ioReader),0!==await e.ioReader.readUint32()&&h.R8("the previousTagSize0 is not 0",N,123);let t=0;if(18===await e.ioReader.peekUint8()){await e.ioReader.skip(1);const a=await e.ioReader.readUint24();await e.ioReader.skip(7),t=await this.script.read(e.ioReader,a)}return t>=0&&(this.firstTagPos=e.ioReader.getPos()),t}catch(t){return h.z3(t.message,N,141),e.ioReader.error}}async readModEx(e,t,a){let i=await e.ioReader.readUint8()+1;256===i&&(i=await e.ioReader.readUint16()+1);const r=await e.ioReader.readBuffer(i),n=await e.ioReader.readUint8(),d=240&n;if(0===d&&0===a||0===d&&1===a){let e=0;3===r.length?(e=r[0]<<16|r[1]<<8|r[2],this.options.useNanoTimestamp?s.M[17](t+16,o.f[17](t+16)+BigInt(e)):s.M[17](t+16,o.f[17](t+16)+BigInt(e)/BigInt(1e6)),s.M[17](t+8,o.f[17](t+16))):h.R8(`Invalid ModEx size for Type TimestampOffsetNano!, need 3 but got ${r.length}`,N,174)}else h.R8(`unknown ModEx type: ${d}`,N,178);return 15&n}async readCodecConfigurationRecord(e,t,a,i){const n=(0,B.sY)(i);t.codecpar.extradata?((0,y.Ow)(a,1,n,i),await e.ioReader.readBuffer(i,(0,r.JW)(n,i))):(t.codecpar.extradata=n,t.codecpar.extradataSize=i,await e.ioReader.readBuffer(i,(0,r.JW)(n,i)),t.sideData[1]=(0,r.s3)(n,i).slice(),27===t.codecpar.codecId?(f.XC(t),t.codecpar.bitFormat=1):173===t.codecpar.codecId?(u.XC(t),t.codecpar.bitFormat=1):196===t.codecpar.codecId?(g.XC(t),t.codecpar.bitFormat=1):225===t.codecpar.codecId?w.XC(t):167===t.codecpar.codecId?m.XC(t):139===t.codecpar.codecId?I.XC(t):86018===t.codecpar.codecId?p.XC(t):86028===t.codecpar.codecId?U.XC(t):86076===t.codecpar.codecId&&k.XC(t))}async readAVPacketData(e,t,a,i){const n=(0,B.sY)(i);(0,y.NX)(a,n,i),await e.ioReader.readBuffer(i,(0,r.JW)(n,i))}parseColorInfo(e,t,a){let i=!1,r=!1;if(a.hdrMdcv&&(i=a.hdrMdcv.redX>0&&a.hdrMdcv.redY>0&&a.hdrMdcv.blueX>0&&a.hdrMdcv.blueY>0&&a.hdrMdcv.greenX>0&&a.hdrMdcv.greenY>0&&a.hdrMdcv.whitePointX>0&&a.hdrMdcv.whitePointY>0,r=a.hdrMdcv.maxLuminance>0&&a.hdrMdcv.minLuminance>0),3!==a.colorConfig.matrixCoefficients&&(e.codecpar.colorSpace=a.colorConfig.matrixCoefficients),3!==a.colorConfig.colorPrimaries&&0!==a.colorConfig.colorPrimaries&&(e.codecpar.colorPrimaries=a.colorConfig.colorPrimaries),3!==a.colorConfig.transferCharacteristics&&0!==a.colorConfig.transferCharacteristics&&(e.codecpar.colorTrc=a.colorConfig.transferCharacteristics),a.hdrCll&&a.hdrCll.maxCLL&&a.hdrCll.maxFall){const o=(0,B.Gy)(8);s.M[8](o,a.hdrCll.maxCLL),s.M[8](o+4,a.hdrCll.maxFall),(0,y.sn)(e.codecpar[n.o9]+20,e.codecpar[n.o9]+24,22)?(0,y.Ow)(t,22,o,8):(0,y.$W)(e.codecpar[n.o9]+20,e.codecpar[n.o9]+24,22,o,8)}if(r||i){const d=(0,B.Gy)(88);function c(e,t){const a=(0,A.j2)(t,C.go);s.M[15](e+4,a.den),s.M[15](e,a.num)}r&&(s.M[15](d+84,1),c(d+72,a.hdrMdcv.maxLuminance),c(d+64,a.hdrMdcv.minLuminance)),i&&(s.M[15](d+80,1),c(d,a.hdrMdcv.redX),c(d+8,a.hdrMdcv.redY),c(d+16,a.hdrMdcv.greenX),c(d+16+8,a.hdrMdcv.greenY),c(d+32,a.hdrMdcv.blueX),c(d+32+8,a.hdrMdcv.blueY)),(0,y.sn)(e.codecpar[n.o9]+20,e.codecpar[n.o9]+24,20)?(0,y.Ow)(t,20,d,88):(0,y.$W)(e.codecpar[n.o9]+20,e.codecpar[n.o9]+24,20,d,88)}}findStream(e,t,a){for(let i=0;i<e.streams.length;i++)if(e.streams[i].codecpar.codecType===t){const t=e.streams[i].privData;if(t&&t.trackId===a)return e.streams[i]}}createStream(e,t,a,i){var r;const n=e.createStream();n.codecpar.codecType=t,n.timeBase.den=this.options.useNanoTimestamp?C.H3:C.qs,n.timeBase.num=1,n.startTime=o.f[17](a+8);const s={trackId:i};var d,c,h;if(n.privData=s,null!==(r=this.script.onMetaData)&&void 0!==r&&r.duration&&(n.duration=(0,A.k)(BigInt(Math.floor(1e3*this.script.onMetaData.duration)),C.i0,n.timeBase)),0===t)(null===(d=this.script.onMetaData)||void 0===d?void 0:d.width)>0&&(n.codecpar.width=this.script.onMetaData.width),(null===(c=this.script.onMetaData)||void 0===c?void 0:c.height)>0&&(n.codecpar.height=this.script.onMetaData.height),null!==(h=this.script.onMetaData)&&void 0!==h&&null!==(h=h.videoTrackIdInfoMap)&&void 0!==h&&h[i]&&(this.script.onMetaData.videoTrackIdInfoMap[i].title&&(n.metadata.title=this.script.onMetaData.videoTrackIdInfoMap[i].title),this.script.onMetaData.videoTrackIdInfoMap[i].lang&&(n.metadata.language=this.script.onMetaData.videoTrackIdInfoMap[i].lang),this.script.onMetaData.videoTrackIdInfoMap[i].width>0&&(n.codecpar.width=this.script.onMetaData.videoTrackIdInfoMap[i].width),this.script.onMetaData.videoTrackIdInfoMap[i].height>0&&(n.codecpar.height=this.script.onMetaData.videoTrackIdInfoMap[i].height),this.script.onMetaData.videoTrackIdInfoMap[i].duration>0&&(n.duration=(0,A.k)(BigInt(1e3*this.script.onMetaData.videoTrackIdInfoMap[i].duration),C.i0,n.timeBase)));else if(1===t){var l;null!==(l=this.script.onMetaData)&&void 0!==l&&null!==(l=l.audioTrackIdInfoMap)&&void 0!==l&&l[i]&&(this.script.onMetaData.audioTrackIdInfoMap[i].title&&(n.metadata.title=this.script.onMetaData.audioTrackIdInfoMap[i].title),this.script.onMetaData.audioTrackIdInfoMap[i].lang&&(n.metadata.language=this.script.onMetaData.audioTrackIdInfoMap[i].lang),this.script.onMetaData.audioTrackIdInfoMap[i].duration>0&&(n.duration=(0,A.k)(BigInt(1e3*this.script.onMetaData.audioTrackIdInfoMap[i].duration),C.i0,n.timeBase)))}return this.onStreamAdd&&this.onStreamAdd(n),n}async readAVPacket_(e,t){const a=e.ioReader.getPos();s.M[17](t+56,a);let i=!1;const d=31&await e.ioReader.readUint8();let c=await e.ioReader.readUint24(),f=await e.ioReader.readUint24();const p=await e.ioReader.readUint8();if(p&&(f|=p<<24),s.M[17](t+16,this.options.useNanoTimestamp?(0,A.k)(BigInt(Math.floor(f)),C.i0,C.FQ):BigInt(Math.floor(f))),s.M[17](t+8,o.f[17](t+16)),await e.ioReader.skip(3),8===d){s.M[15](t+36,1|o.f[15](t+36));const d=await e.ioReader.readUint8();c--;const f=(240&d)>>4;if(9===f){let l=!1,f=15&d;for(;7===f;){let a=e.ioReader.getPos();f=await this.readModEx(e,t,1),c-=Number(BigInt.asIntN(32,e.ioReader.getPos()-a))}let p=0,u=0;if(5===f){l=!0;const t=await e.ioReader.readUint8();c--,u=(240&t)>>4,f=15&t,2!==u&&(p=await e.ioReader.readUint32(),c-=4)}else p=await e.ioReader.readUint32(),c-=4;let g=t;for(;;){let d=c,w=0;l&&(2===u&&(p=await e.ioReader.readUint32(),c-=4),w=await e.ioReader.readUint8(),c--,0!==u?(d=await e.ioReader.readUint24(),c-=3):d=c);let m=this.findStream(e,1,w);if(m||(m=this.createStream(e,1,g,w),p===(0,D.A)("ac-3")?m.codecpar.codecId=86019:p===(0,D.A)("ec-3")?m.codecpar.codecId=86056:p===(0,D.A)("Opus")?(m.codecpar.codecId=86076,m.codecpar.sampleRate=48e3):p===(0,D.A)(".mp3")?m.codecpar.codecId=86017:p===(0,D.A)("fLaC")?m.codecpar.codecId=86028:p===(0,D.A)("mp4a")?m.codecpar.codecId=86018:(h.R8(`unknown codec fourcc(${p.toString(16)})`,N,510),m.codecpar.codecId=0)),s.M[15](g+32,m.index),c-=d,4===f){const t=await e.ioReader.readUint8(),a=await e.ioReader.readUint8();if(d-=2,(0,x.bl)(m.codecpar[n.o9]+112),2===t){(0,x.xY)(m.codecpar[n.o9]+112,a);for(let t=0;t<a;t++){const a=await e.ioReader.readUint8();d--,a<18?s.M[15](m.codecpar.chLayout.u.map+24*t,a):a>=18&&a<=23?s.M[15](m.codecpar.chLayout.u.map+24*t,a-18+35):254===a?s.M[15](m.codecpar.chLayout.u.map+24*t,512):s.M[15](m.codecpar.chLayout.u.map+24*t,768)}}else if(1===t){let t=BigInt(await e.ioReader.readUint32());d-=4,t=t&BigInt(262143)|(t&BigInt(16515072))<<BigInt(35)-BigInt(18),(0,x.ML)(m.codecpar[n.o9]+112,t)}i=!0}else if(0===f)d?(await this.readCodecConfigurationRecord(e,m,g,d),d=0,i=!1,(0,y.fQ)(t,1)||(i=!0)):i=!0;else if(2===f)s.M[15](g+36,32|o.f[15](g+36)),i=!1;else if(1===f){if(await this.readAVPacketData(e,m,g,d),(86019===m.codecpar.codecId||86056===m.codecpar.codecId||86017===m.codecpar.codecId)&&m.codecpar.sampleRate===C.N_)if(86019===m.codecpar.codecId||86056===m.codecpar.codecId){const e=M.R((0,y.iI)(g));z.ai(e)||(m.codecpar.sampleRate=e.sampleRate,m.codecpar.chLayout.nbChannels=e.channels,m.codecpar.bitrate=BigInt(e.bitrate))}else 86017===m.codecpar.codecId&&R.XC(m,(0,y.iI)(g));i=!1,d=0}else h.R8(`invalid audioPacketType ${f}`,N,592);if(d&&await e.ioReader.skip(d),g===t||i||e.interval.packetBuffer.push(g),!l||0===u||!c)break;g=(0,y._5)(),s.M[17](g+56,a),(0,r.Mr)(g+72,t+72,8),s.M[17](g+16,o.f[17](t+16)),s.M[17](g+8,o.f[17](t+8)),s.M[15](g+36,1|o.f[15](g+36))}}else{let a=this.findStream(e,1,0);if(!a){if(a=this.createStream(e,1,t,0),a.disposition|=1,a.codecpar.chLayout.nbChannels=1&~d?1:2,a.codecpar.sampleRate=44100<<((12&d)>>>2)>>3,a.codecpar.bitsPerCodedSample=2&d?16:8,0===f)a.codecpar.codecId=8===a.codecpar.bitsPerCodedSample?65541:65536;else if(3===f)a.codecpar.codecId=8===a.codecpar.bitsPerCodedSample?65541:65536;else{var u;a.codecpar.codecId=null!==(u=l.FJ[f])&&void 0!==u?u:0}86051===a.codecpar.codecId?(a.codecpar.sampleRate=16e3,a.codecpar.chLayout.nbChannels=1):65543!==a.codecpar.codecId&&65542!==a.codecpar.codecId||(a.codecpar.sampleRate=8e3)}s.M[15](t+32,a.index),86018===a.codecpar.codecId&&(c--,0===await e.ioReader.readUint8()&&(this.readCodecConfigurationRecord(e,a,t,c),c=0,(0,y.fQ)(t,1)||(i=!0))),c&&(await this.readAVPacketData(e,a,t,c),c=0)}}else if(9===d){const n=await e.ioReader.readUint8(),d=128&n,f=(112&n)>>4;if(c--,1===f&&s.M[15](t+36,1|o.f[15](t+36)),d){let d=!0,l=!1,p=15&n;for(;7===p;){let a=e.ioReader.getPos();p=await this.readModEx(e,t,0),c-=Number(BigInt.asIntN(32,e.ioReader.getPos()-a))}let u=0,g=0;if(4!==p&&5===f)d=!1,i=!0;else if(6===p){l=!0;const t=await e.ioReader.readUint8();c--,g=(240&t)>>4,p=15&t,2!==g&&(u=await e.ioReader.readUint32(),c-=4)}else u=await e.ioReader.readUint32(),c-=4;let w=t;for(;d;){let n=c,d=0;l&&(2===g&&(u=await e.ioReader.readUint32(),c-=4),d=await e.ioReader.readUint8(),c--,0!==g?(n=await e.ioReader.readUint24(),c-=3):n=c);let m=this.findStream(e,0,d);if(m||(m=this.createStream(e,0,w,d),u===(0,D.A)("avc1")?m.codecpar.codecId=27:u===(0,D.A)("hvc1")?m.codecpar.codecId=173:u===(0,D.A)("vvc1")?m.codecpar.codecId=196:u===(0,D.A)("av01")?m.codecpar.codecId=225:u===(0,D.A)("vp09")?m.codecpar.codecId=167:u===(0,D.A)("vp08")&&(m.codecpar.codecId=139)),s.M[15](w+32,m.index),c-=n,27!==m.codecpar.codecId&&173!==m.codecpar.codecId&&196!==m.codecpar.codecId||s.M[15](t+80,1),4===p){const t=e.ioReader.getPos()+BigInt(Math.floor(n)),a=await T.$x(e.ioReader,t),r=await T.$x(e.ioReader,t);"colorInfo"===a?this.parseColorInfo(m,w,r):h.R8(`unknown metadata key ${a}`,N,775),e.ioReader.getPos()<t&&await e.ioReader.seek(t),i=!0,n=0}else if(0===p)n?(await this.readCodecConfigurationRecord(e,m,w,n),n=0,i=!1,(0,y.fQ)(t,1)||(i=!0)):i=!0;else if(2===p)s.M[15](w+36,32|o.f[15](w+36)),i=!1;else if(5===p)225===m.codecpar.codecId?(await this.readCodecConfigurationRecord(e,m,w,n-2),i=!1,n=0,(0,y.fQ)(t,1)||(i=!0)):i=!0;else if(1===p||3===p){if(1===p&&(173===m.codecpar.codecId||196===m.codecpar.codecId||27===m.codecpar.codecId)){const a=await e.ioReader.readInt24();s.M[17](w+8,o.f[17](w+16)+(this.options.useNanoTimestamp?(0,A.FP)(BigInt(0|a),C.i0,t+72):BigInt(0|a))),n-=3}await this.readAVPacketData(e,m,w,n),n=0,i=!1}else h.R8(`invalid videoPacketType ${p}`,N,834);if(n&&await e.ioReader.skip(n),i||w===t||e.interval.packetBuffer.push(w),!l||0===g||!c)break;w=(0,y._5)(),s.M[17](w+56,a),(0,r.Mr)(w+72,t+72,8),s.M[17](w+16,o.f[17](t+16)),s.M[17](w+8,o.f[17](t+8)),1===f&&s.M[15](w+36,1|o.f[15](w+36))}}else if(5!==f){let a=this.findStream(e,0,0);var g;if(a||(a=this.createStream(e,0,t,0),a.disposition|=1,a.codecpar.codecId=null!==(g=l.U5[15&n])&&void 0!==g?g:0),s.M[15](t+32,a.index),27===a.codecpar.codecId||173===a.codecpar.codecId||196===a.codecpar.codecId||12===a.codecpar.codecId){s.M[15](t+80,1);const r=await e.ioReader.readUint8(),n=await e.ioReader.readInt24();c-=4,s.M[17](t+8,o.f[17](t+16)+(this.options.useNanoTimestamp?(0,A.FP)(BigInt(0|n),C.i0,t+72):BigInt(0|n))),0===r?(await this.readCodecConfigurationRecord(e,a,t,c),(0,y.fQ)(t,1)||(i=!0)):2===r?s.M[15](t+36,32|o.f[15](t+36)):await this.readAVPacketData(e,a,t,c)}else await this.readAVPacketData(e,a,t,c);c=0}else i=!0}else{if(18===d){let a=await this.script.read(e.ioReader,c);return a<0?a:await this.readAVPacket_(e,t)}if(15!==d)return h.R8(`invalid tag type: ${d}, try to sync to next tag`,N,921),await this.syncTag(e),this.readAVPacket_(e,t);h.R8("not support script tag encoded by amf3, ignore it",N,918)}c&&await e.ioReader.skip(c);const w=e.ioReader.getPos()-a,m=BigInt(Math.floor(await e.ioReader.readUint32()));return w!==m?(h.R8(`tag ${d} size not match, size: ${w}, previousTagSize: ${m}`,N,934),b.LR):i?this.readAVPacket_(e,t):0}async readAVPacket(e,t){try{return s.M[15](t+76,this.options.useNanoTimestamp?C.H3:C.qs),s.M[15](t+72,1),await this.readAVPacket_(e,t)}catch(t){return-1048576!==e.ioReader.error?(h.z3(`read packet error, ${t}`,N,952),b.LR):e.ioReader.error}}async syncTag(e){let t=C.Dh;for(;;)try{if(8&e.ioReader.flags)break;const a=await e.ioReader.readUint8();if(8===a||9===a){t=e.ioReader.getPos()-BigInt(1);const a=await e.ioReader.readUint24();if(a>10485760){await e.ioReader.seek(t+BigInt(1));continue}if(await e.ioReader.skip(4),0!==await e.ioReader.readUint24()){await e.ioReader.seek(t+BigInt(1));continue}await e.ioReader.skip(a);if(e.ioReader.getPos()-t!==BigInt(Math.floor(await e.ioReader.readUint32()))){await e.ioReader.seek(t+BigInt(1)),t=C.Dh;continue}{let a=0;for(;a<=3;){const t=e.ioReader.getPos(),i=await e.ioReader.readUint8();if(8!==i&&9!==i&&18!==i)break;{const i=await e.ioReader.readUint24();await e.ioReader.skip(7+i);if(e.ioReader.getPos()-t!==BigInt(Math.floor(await e.ioReader.readUint32())))break;a++}}if(!(a<3))break;await e.ioReader.seek(t+BigInt(1)),t=C.Dh}}}catch(e){break}t!==C.Dh&&await e.ioReader.seek(t)}async seek(e,t,a,i){const r=e.ioReader.getPos();if(2&i)return await e.ioReader.seek(a),4&i||await this.syncTag(e),r;if(t&&t.sampleIndexes.length){let i=P.El(t.sampleIndexes,(e=>e.pts>a?-1:1));if(i>0&&(0,A.k)(a-t.sampleIndexes[i-1].pts,t.timeBase,C.i0)<BigInt(1e4))return h.Yz(`seek in sampleIndexes, found index: ${i}, pts: ${t.sampleIndexes[i-1].pts}, pos: ${t.sampleIndexes[i-1].pos}`,N,1059),await e.ioReader.seek(t.sampleIndexes[i-1].pos),r}if(this.script.canSeek()){const{pos:i,dts:n}=this.script.dts2Position(Number((0,A.k)(a,t.timeBase,C.i0)/BigInt(1e3)));if(i>0){h.Yz(`seek in filepositions, found pts: ${n}, pos: ${i}`,N,1068),await e.ioReader.seek(BigInt(Math.floor(i)));const t=await e.ioReader.peekUint8();return 8!==t&&9!==t&&18!==t&&await this.syncTag(e),r}}return h.Yz("not found any keyframe index, try to seek in bytes",N,1078),(0,S.A)(e,t,a,this.firstTagPos,this.readAVPacket.bind(this),this.syncTag.bind(this))}getAnalyzeStreamsCount(){let e=0;return(this.header.hasAudio||(0,L.A)(this.script.onMetaData.audiocodecid))&&e++,(this.header.hasVideo||(0,L.A)(this.script.onMetaData.videocodecid))&&e++,e}}},85947:(e,t,a)=>{a.d(t,{A:()=>r});var i=a(134);class r{constructor(){(0,i.A)(this,"type",-1),(0,i.A)(this,"onStreamAdd",void 0)}async destroy(e){}}},58121:(e,t,a)=>{a.d(t,{A:()=>r});var i=a(134);class r{constructor(){(0,i.A)(this,"signature",void 0),(0,i.A)(this,"version",void 0),(0,i.A)(this,"flags",void 0),(0,i.A)(this,"dataOffset",void 0),(0,i.A)(this,"hasVideo",void 0),(0,i.A)(this,"hasAudio",void 0),this.signature="FLV",this.version=1,this.flags=0,this.dataOffset=9,this.hasAudio=!1,this.hasVideo=!1}async read(e){this.signature=await e.readString(3),this.version=await e.readUint8(),this.flags=await e.readUint8(),this.dataOffset=await e.readUint32(),this.hasAudio=!!(4&this.flags),this.hasVideo=!!(1&this.flags)}write(e){this.flags=0,this.hasAudio&&(this.flags|=4),this.hasVideo&&(this.flags|=1),e.writeString(this.signature),e.writeUint8(this.version),e.writeUint8(this.flags),e.writeUint32(this.dataOffset)}}},68243:(e,t,a)=>{a.d(t,{A:()=>h});var i=a(134),r=a(35336),n=a(92647),o=a(4624),s=a(94889),d=a(9705),c=a(73040);class h{constructor(){(0,i.A)(this,"onMetaData",void 0),this.onMetaData={canSeekToEnd:!1}}async read(e,t){const a=e.getPos(),i=a+BigInt(Math.floor(t)),r=await(0,c.$x)(e,i),n=await(0,c.$x)(e,i);this[r]=n,i>e.getPos()&&await e.skip(Number(BigInt.asIntN(32,i-e.getPos())));const s=Number(e.getPos()-a),h=await e.readUint32();return s+11!==h?(o.R8(`script size not match, size: ${s+11}, previousTagSize: ${h}`,"src/avformat/formats/flv/FlvScriptTag.ts",63),d.LR):0}computeSize(){const e=[],t=new r.A;return t.onFlush=t=>(e.push(t.slice()),0),(0,c.bD)(t,"onMetaData"),(0,c.bD)(t,this.onMetaData),t.flush(),(0,n.A)(Uint8Array,e).length}write(e){if(this.onMetaData){const t=[],a=new r.A;a.onFlush=e=>(t.push(e.slice()),0),(0,c.bD)(a,"onMetaData"),(0,c.bD)(a,this.onMetaData),a.flush();const i=(0,n.A)(Uint8Array,t);s.M5(e,18,BigInt(0),void 0,i)}}dts2Position(e){if(this.canSeek()){let t=-1;const a=this.onMetaData.keyframes.times,i=this.onMetaData.keyframes.filepositions;let r;for(r=0;r<a.length;r++){if(a[r]===e){t=r;break}if(a[r]>e){t=Math.max(r-1,0);break}}return r&&r===a.length&&(t=a.length-1),{pos:i[t],dts:a[t]}}return{pos:-1,dts:-1}}position2DTS(e){if(this.canSeek()){let a=-1;const i=this.onMetaData.keyframes.times,r=this.onMetaData.keyframes.filepositions;let n=0;for(n=0;n<r.length;n++)if(r[n]>e){a=n;break}var t;return n===r.length?null!==(t=this.onMetaData.duration)&&void 0!==t?t:i[i.length-1]:i[a]}return-1}canSeek(){return!!(this.onMetaData.keyframes&&this.onMetaData.keyframes.filepositions&&this.onMetaData.keyframes.filepositions.length)}}},35028:(e,t,a)=>{a.d(t,{FJ:()=>i,U5:()=>r});const i={10:86018,2:86017,11:86051,1:69645,4:86049,5:86049,6:86049,7:65543,8:65542},r={7:27,12:173,9:12,2:4,3:86,4:92,5:106,6:131}},94889:(e,t,a)=>{a.d(t,{M5:()=>n}),a(35028),a(44328),a(77231),a(65977);var i=a(67672);function r(e,t,a){const i=e.getPos(),r=e.getPointer(),n=i-BigInt(Math.floor(r));t<i&&t>=n?(e.seekInline(r+Number(t-i)),e.writeUint24(a),e.seekInline(r)):(e.seek(t),e.writeUint24(a),e.seek(i))}function n(e,t,a,n,o,s){e.flush(),e.writeUint8(t);const d=e.getPos();e.writeUint24(0),e.writeUint24(Number(a&BigInt(16777215))),e.writeUint8(Number(a>>BigInt(24)&BigInt(255))),e.writeUint24(0);const c=e.getPos();n&&n(e),i.Pc(o)?(o(e),r(e,d,Number(e.getPos()-c))):o&&(r(e,d,o.length+Number(e.getPos()-c)),e.writeBuffer(o));const h=Number(e.getPos()-d)+1;s&&s(h),e.writeUint32(h)}},2187:(e,t,a)=>{a.d(t,{d:()=>o});var i=a(72739),r=a(44328),n=a(77231);function o(e,t,a){let o=BigInt(0);return i.__(e,(e=>{o+=e.codecpar.bitrate*(0,r.k)(t,a,n.i0)/BigInt(8e3)})),o}},65977:(e,t,a)=>{a.d(t,{A:()=>n});var i=a(4624);const r="src/avformat/function/mktag.ts";function n(e){4!==e.length&&i.R8(`tag length is not 4, tag: ${e}`,r,30);let t=0;for(let a=0;a<4;a++)t=t<<8|e.charCodeAt(a);return t}},52071:(e,t,a)=>{a.d(t,{A:()=>l});var i=a(63939),r=(a(9599),a(77231)),n=a(44328),o=a(2187),s=a(71517),d=a(9705),c=a(4624);const h="src/avformat/function/seekInBytes.ts";async function l(e,t,a,l,f,p){const u=e.ioReader.getPos(),g=await e.ioReader.fileSize();let w=r.Dh,m=a;t.startTime!==r.Dh?m-=t.startTime:m-=t.firstDTS;const I=(0,n.k)(a,t.timeBase,r.i0);if(I<BigInt(1e4))return c.Yz(`seek pts is earlier then 10s, seek to first packet pos(${l}) directly`,h,62),await e.ioReader.seek(l),u;let U=(0,o.d)(e.streams,m,t.timeBase);const k=g-(0,o.d)(e.streams,BigInt(1e4),r.i0),M=(0,o.d)(e.streams,BigInt(1e4),r.i0);if(U>k&&(U=k),U<l)return await e.ioReader.seek(l),u;const R=(0,s._5)();let b=g,v=BigInt(0);for(;;){if(b-v<M){w=v;break}if(await e.ioReader.seek(U),await p(e),8&e.ioReader.flags)break;const t=e.ioReader.getPos();if(!(await f(e,R)>=0)){w=r.Dh;break}{const e=(0,n.Mr)(i.f[17](R+8),R+72,r.i0),a=e-I;if(c.Yz(`try to seek to pos: ${U}, got packet pts: ${i.f[17](R+8)}(${e}ms), diff: ${a}ms`,h,100),a<=BigInt(0)&&-a<BigInt(1e4)){w=t;break}a>BigInt(0)?(b=U,U=v+b>>BigInt(1)):(v=U,U=v+b>>BigInt(1))}if(8&e.ioReader.flags)break}return(0,s.Qe)(R),w!==r.Dh?(c.Yz(`finally seek to pos ${w}`,h,131),await e.ioReader.seek(w),await p(e),u):(await e.ioReader.seek(u),8&e.ioReader.flags?BigInt(d.LT):BigInt(d.E$))}},95832:(e,t,a)=>{a.d(t,{Bq:()=>l,Ij:()=>h,XC:()=>c,f7:()=>f,uF:()=>n});var i=a(77231),r=a(37246);const n={1:"Main",2:"LC",3:"LC",4:"LC",5:"HE",6:"HE"},o={96e3:0,88200:1,64e3:2,48e3:3,44100:4,32e3:5,24e3:6,22050:7,16e3:8,12e3:9,11025:10,8e3:11,7350:12},s=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350,i.N_,i.N_,i.N_],d=[i.N_,1,2,3,4,5,6,7];function c(e,t){if(!t&&e.sideData[1]&&(t=e.sideData[1]),t){const{profile:a,sampleRate:r,channels:n}=function(e){let t=i.N_,a=i.N_,r=i.N_;return e.length>=2&&(t=e[0]>>3&31,a=s[(7&e[0])<<1|e[1]>>7],r=d[e[1]>>3&15]),{profile:t,sampleRate:a,channels:r}}(t);e.codecpar.profile=a,e.codecpar.sampleRate=r,e.codecpar.chLayout.nbChannels=n,e.codecpar.frameSize=5===a?2048:1024,e.codecpar.format=8}}function h(e){const t=o[e.sampleRate],a=e.chLayout.nbChannels,r=e.profile===i.N_?2:e.profile,n=new Uint8Array(2);return n[0]=(31&r)<<3|(14&t)>>1,n[1]=(1&t)<<7|(15&a)<<3,n}function l(e){if(e.length<7)return-1;const t=e[0]<<4|e[1]>>4;if(4095!==t)return-1;const a=1&e[1],i=(192&e[2])>>>6,r=(60&e[2])>>>2,n=(1&e[2])<<2|(192&e[3])>>>6,o=(3&e[3])<<11|e[4]<<3|(224&e[5])>>>5,c=3&e[6];let h=1===a?7:9,l=o-h;return{syncWord:t,profile:i+1,sampleRate:s[r],channels:d[n],aacFrameLength:o,numberOfRawDataBlocksInFrame:c,headerLength:h,framePayloadLength:l}}function f(e,t){function a(){const e=t.readU(2);let a=0;for(let i=0;i<=e;i++)a<<=8,a|=t.readU(8);return a}t||(t=new r.A).appendBuffer(e);const i=t.getPointer(),n={syncWord:0,profile:0,sampleRate:0,channels:0,useSameStreamMux:!1,headerLength:0,framePayloadLength:0,muxLengthBytes:0},o=t.readU(11);if(695!==o)return-1;n.syncWord=o,n.muxLengthBytes=t.readU(13);const c=1===t.readU1();if(n.useSameStreamMux=c,!c){const e=1===t.readU1();if(e&&1===t.readU1())return-1;if(e&&a(),1!==t.readU1())return-1;if(0!==t.readU(6))return-1;if(0!==t.readU(4))return-1;if(0!==t.readU(3))return-1;let i=e?a():0;const r=t.readU(5);i-=5;const o=t.readU(4);i-=4;const c=t.readU(4);if(i-=4,t.readU(3),i-=3,i>0&&t.readU(i),0!==t.readU(3))return-1;if(t.readU(8),1===t.readU1())if(e)a();else{let e=0;for(;;){e<<=8;const a=1===t.readU1();if(e+=t.readU(8),!a)break}}1===t.readU1()&&t.readU(8),n.profile=r+1,n.sampleRate=s[o],n.channels=d[c]}let h=0;for(;;){const e=t.readU(8);if(h+=e,255!==e)break}return n.framePayloadLength=h,n.headerLength=t.getPointer()-i+(8===t.getBitLeft()?0:1),n}},87518:(e,t,a)=>{a.d(t,{R:()=>p,j:()=>r});var i=a(37246);const r=[3,4,3,7,259,263,1539,1543],n=[[64,69,96],[64,70,96],[80,87,120],[80,88,120],[96,104,144],[96,105,144],[112,121,168],[112,122,168],[128,139,192],[128,140,192],[160,174,240],[160,175,240],[192,208,288],[192,209,288],[224,243,336],[224,244,336],[256,278,384],[256,279,384],[320,348,480],[320,349,480],[384,417,576],[384,418,576],[448,487,672],[448,488,672],[512,557,768],[512,558,768],[640,696,960],[640,697,960],[768,835,1152],[768,836,1152],[896,975,1344],[896,976,1344],[1024,1114,1536],[1024,1115,1536],[1152,1253,1728],[1152,1254,1728],[1280,1393,1920],[1280,1394,1920]],o=[4,5,6,5],s=[4,6,7,6],d=[48e3,44100,32e3,0],c=[32,40,48,56,64,80,96,112,128,160,192,224,256,320,384,448,512,576,640],h=[2,1,2,3,3,4,4,5],l=[1,2,3,6],f=7;function p(e){const t=new i.A(e.length);t.appendBuffer(e);const a={syncWord:0,crc1:0,srCode:0,bitstreamId:0,bitstreamMode:0,channelMode:0,lfeOn:0,frameType:0,substreamId:0,centerMixLevel:0,surroundMixLevel:0,channelMap:0,numBlocks:0,dolbySurroundMode:0,srShift:0,sampleRate:0,bitrate:0,channels:0,frameSize:0,channelLayout:BigInt(0),ac3BitrateCode:0};if(a.syncWord=t.readU(16),2935!==a.syncWord)return-1;if(a.bitstreamId=31&t.peekU(29),a.bitstreamId>16)return-2;if(a.numBlocks=6,a.ac3BitrateCode=-1,a.centerMixLevel=5,a.surroundMixLevel=6,a.dolbySurroundMode=0,a.bitstreamId<=10){if(a.crc1=t.readU(16),a.srCode=t.readU(2),3===a.srCode)return-3;const e=t.readU(6);if(e>37)return-4;a.ac3BitrateCode=e>>1,t.readU(5),a.bitstreamMode=t.readU(3),a.channelMode=t.readU(3),2==a.channelMode?a.dolbySurroundMode=t.readU(2):(1&a.channelMode&&1!=a.channelMode&&(a.centerMixLevel=o[t.readU(2)]),4&a.channelMode&&(a.surroundMixLevel=s[t.readU(2)])),a.lfeOn=t.readU(1),a.srShift=Math.max(a.bitstreamId,8)-8,a.sampleRate=d[a.srCode]>>a.srShift,a.bitrate=1e3*c[a.ac3BitrateCode]>>a.srShift,a.channels=h[a.channelMode]+a.lfeOn,a.frameSize=2*n[e][a.srCode],a.frameType=2,a.substreamId=0}else{if(a.crc1=0,a.frameType=t.readU(2),3==a.frameType)return-5;if(a.substreamId=t.readU(3),a.frameSize=t.readU(11)+1<<1,a.frameSize<f)return-6;if(a.srCode=t.readU(2),3==a.srCode){const e=t.readU(2);if(3==e)return-7;a.sampleRate=d[e]/2,a.srShift=1}else a.numBlocks=l[t.readU(2)],a.sampleRate=d[a.srCode],a.srShift=0;a.channelMode=t.readU(3),a.lfeOn=t.readU(1),a.bitrate=8*a.frameSize*a.sampleRate/(256*a.numBlocks),a.channels=h[a.channelMode]+a.lfeOn}return a.channelLayout=BigInt(r[a.channelMode]),a.lfeOn&&(a.channelLayout|=BigInt(8)),a}},21477:(e,t,a)=>{a.d(t,{Ui:()=>o,XC:()=>n,zk:()=>r});var i=a(37246);a(83314),a(97317);const r={0:"Main",1:"High",2:"Professional"};function n(e,t){if(!t&&e.sideData[1]&&(t=e.sideData[1]),t&&t.length>=4){const a=o(t);e.codecpar.profile=a.profile,e.codecpar.level=a.level}}function o(e){const t=new i.A(e.length);t.appendBuffer(e),t.readU1(),t.readU(7);const a=t.readU(3),r=t.readU(5),n=t.readU1();let o=t.readU1()?10:8;return t.readU1()&&(o=12),{profile:a,level:r,tier:n,bitDepth:o,monochrome:t.readU1(),chromaSubsamplingX:t.readU1(),chromaSubsamplingY:t.readU1(),chromaSamplePosition:t.readU(2)}}},14769:(e,t,a)=>{a.d(t,{DK:()=>s,XC:()=>c,Xr:()=>d,jA:()=>n,ob:()=>r,oe:()=>o});var i=a(31865);const r=34,n=8,o=[0,8,12,0,16,20,24,32],s=[0,88200,176400,192e3,8e3,16e3,22050,24e3,32e3,44100,48e3,96e3,0,0,0,0],d=[0,192,576,1152,2304,4608,0,0,256,512,1024,2048,4096,8192,16384,32768];function c(e,t){if(!t&&e.sideData[1]&&(t=e.sideData[1]),t&&t.length===r){const{bitsPerRawSample:a,sampleRate:r,channels:n}=function(e){const t=new i.A(e);t.skip(10);const a=t.readUint24();return{sampleRate:a>>4,channels:1+((15&a)>>>1),bitsPerRawSample:1+((1&a)<<4|(240&t.readUint8())>>>4)}}(t);e.codecpar.bitsPerRawSample=a,e.codecpar.sampleRate=r,e.codecpar.chLayout.nbChannels=n}}},64093:(e,t,a)=>{a.d(t,{Au:()=>I,He:()=>U,XC:()=>k,Y2:()=>g,hG:()=>w,oz:()=>m});var i=a(77231);const r=[44100,48e3,32e3,0],n=[22050,24e3,16e3,0],o=[11025,12e3,8e3,0],s=[0,1152,1152,384],d=[0,576,1152,384],c=[0,576,1152,384],h=[0,32,64,96,128,160,192,224,256,288,320,352,384,416,448,-1],l=[0,32,48,56,64,80,96,112,128,160,192,224,256,320,384,-1],f=[0,32,40,48,56,64,80,96,112,128,160,192,224,256,320,-1],p=[0,32,48,56,64,80,96,112,128,144,160,176,192,224,256,-1],u=[0,8,16,24,32,40,48,56,64,80,96,112,128,144,160,-1];function g(e,t){switch(e){case 0:return o[t];case 2:return n[t];case 3:return r[t]}return i.N_}function w(e,t){switch(e){case 0:return c[t];case 2:return d[t];case 3:return s[t]}return i.N_}function m(e,t,a){switch(t){case 1:switch(e){case 0:case 2:return u[a];case 3:return f[a]}break;case 2:switch(e){case 0:case 2:return u[a];case 3:return l[a]}case 3:switch(e){case 0:case 2:return p[a];case 3:return h[a]}}return i.N_}function I(e){switch(e){case 1:return 34;case 2:return 33;case 3:return 32}return i.N_}const U={32:"Layer1",33:"Layer2",34:"Layer3"};function k(e,t){if(t&&t.length>=4){const a=t[1]>>>3&3,i=(6&t[1])>>1,r=(12&t[2])>>>2,n=3&~(t[3]>>>6)?2:1,o=I(i),s=g(a,r);e.codecpar.profile=o,e.codecpar.sampleRate=s,e.codecpar.chLayout.nbChannels=n}}},22576:(e,t,a)=>{a.d(t,{Ij:()=>c,XC:()=>d,kt:()=>s});var i=a(31865),r=a(729),n=a(44328);const o=[480,960,1920,2880,480,960,1920,2880,480,960,1920,2880,480,960,480,960,120,240,480,960,120,240,480,960,120,240,480,960,120,240,480,960];function s(e){let t=0,a=0,i=0;if(e.length<1)return 0;switch(t=e[0],a=o[t>>3],3&t){case 0:i=1;break;case 1:case 2:i=2;break;case 3:if(e.length<2)return 0;i=63&e[1]}return i*a}function d(e,t){if(!t&&e.sideData[1]&&(t=e.sideData[1]),t&&t.length>=19){const a=new i.A(t,!1);a.skip(9),e.codecpar.chLayout.nbChannels=a.readUint8(),e.codecpar.initialPadding=a.readUint16(),e.codecpar.sampleRate=a.readUint32(),e.codecpar.seekPreroll=Number((0,n.k)(BigInt(80),{den:1e3,num:1},{den:48e3,num:1}))}}function c(e){const t=new Uint8Array(19),a=new r.A(t,!1);return a.writeString("OpusHead"),a.writeUint8(1),a.writeUint8(e.chLayout.nbChannels),a.writeUint16(e.initialPadding),a.writeUint32(e.sampleRate),t}},97077:(e,t,a)=>{a.d(t,{Ui:()=>n,XC:()=>r});var i=a(37246);function r(e,t){if(!t&&e.sideData[1]&&(t=e.sideData[1]),t&&t.length>=6){const a=n(t);e.codecpar.profile=a.profile,e.codecpar.level=a.level}}function n(e){const t=new i.A(e.length);return t.appendBuffer(e.subarray(4)),{profile:t.readU(8),level:t.readU(8),bitDepth:t.readU(4),chromaSubsampling:t.readU(3),fullRangeFlag:t.readU1(),colorPrimaries:t.readU(8),colorTrc:t.readU(8),colorSpace:t.readU(8)}}},82014:(e,t,a)=>{a.d(t,{Ui:()=>o,XC:()=>n,wN:()=>r}),a(9599);var i=a(37246);a(77231),a(97317),a(44328),a(729);const r={0:"Profile0",1:"Profile1",2:"Profile2",3:"Profile3"};function n(e,t){if(!t&&e.sideData[1]&&(t=e.sideData[1]),t&&t.length>=6){const a=o(t);e.codecpar.profile=a.profile,e.codecpar.level=a.level}}function o(e){const t=new i.A(e.length);return t.appendBuffer(e),{profile:t.readU(8),level:t.readU(8),bitDepth:t.readU(4),chromaSubsampling:t.readU(3),fullRangeFlag:t.readU1(),colorPrimaries:t.readU(8),colorTrc:t.readU(8),colorSpace:t.readU(8)}}},73040:(e,t,a)=>{a.d(t,{$x:()=>s,bD:()=>d});var i=a(67672),r=a(72739),n=a(95335);async function o(e,t){return{key:await e.readString(await e.readUint16()),value:await s(e,t)}}async function s(e,t){let a;switch(await e.readUint8()){case 0:a=await e.readDouble();break;case 1:a=!!await e.readUint8();break;case 2:a=await e.readString(await e.readUint16());break;case 3:for(a={};e.getPos()<t;){const{key:i,value:r}=await o(e,t);if(a[i]=r,9==(16777215&await e.peekUint24())){await e.skip(3);break}}break;case 8:for(a={},await e.skip(4);e.getPos()<t;){const{key:i,value:r}=await o(e,t);if(a[i]=r,9==(16777215&await e.peekUint24())){await e.skip(3);break}}break;case 9:case 5:a=null;break;case 10:a=[];const i=await e.readUint32();for(let r=0;r<i;r++)a.push(await s(e,t));break;case 11:const r=await e.readDouble(),n=await e.readInt16();a=new Date(r+60*n*1e3);break;case 12:a=await e.readString(await e.readUint32())}return a}function d(e,t){i.ai(t)?(e.writeUint8(0),e.writeDouble(t)):i.o(t)?(e.writeUint8(0),e.writeDouble(Number(t))):i.zM(t)?(e.writeUint8(1),e.writeUint8(t?1:0)):i.Yj(t)?t.length>=65536?(e.writeUint8(12),e.writeUint32(t.length),e.writeString(t)):(e.writeUint8(2),e.writeUint16(t.length),e.writeString(t)):i.YO(t)?(e.writeUint8(10),e.writeUint32(t.length),r.__(t,(t=>{d(e,t)}))):i.Ik(t)?(e.writeUint8(3),n.__(t,((t,a)=>{e.writeUint16(a.length),e.writeString(a),d(e,t)})),e.writeUint24(9)):t instanceof Date?(e.writeUint8(11),e.writeDouble(t.getTime()),e.writeInt16(0)):null==t&&e.writeUint8(5)}},null:()=>{},35336:(e,t,a)=>{a.d(t,{A:()=>n});var i=a(134),r=a(50011);class n{constructor(e=1048576,t=!0,a){if((0,i.A)(this,"data",void 0),(0,i.A)(this,"buffer",void 0),(0,i.A)(this,"pointer",void 0),(0,i.A)(this,"pos",void 0),(0,i.A)(this,"size",void 0),(0,i.A)(this,"littleEndian",void 0),(0,i.A)(this,"error",void 0),(0,i.A)(this,"onFlush",void 0),(0,i.A)(this,"onSeek",void 0),this.pointer=0,this.pos=BigInt(0),this.size=e,this.littleEndian=!t,this.error=0,a&&a.view)this.size=a.length,this.buffer=a,this.data=a.view;else if(a&&!a.byteOffset)this.size=a.length,this.buffer=a,this.data=new DataView(this.buffer.buffer);else{if(a)throw new Error("not support subarray of ArrayBuffer");this.buffer=new Uint8Array(this.size),this.data=new DataView(this.buffer.buffer)}}writeUint8(e){this.remainingLength()<1&&this.flush(),this.data.setUint8(this.pointer,e),this.pointer++,this.pos++}writeUint16(e){this.remainingLength()<2&&this.flush(),this.data.setUint16(this.pointer,e,this.littleEndian),this.pointer+=2,this.pos+=BigInt(2)}writeUint24(e){this.remainingLength()<3&&this.flush();const t=(16711680&e)>>16,a=(65280&e)>>8,i=255&e;this.littleEndian?(this.writeUint8(i),this.writeUint8(a),this.writeUint8(t)):(this.writeUint8(t),this.writeUint8(a),this.writeUint8(i))}writeUint32(e){this.remainingLength()<4&&this.flush(),this.data.setUint32(this.pointer,e,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeUint64(e){this.remainingLength()<8&&this.flush(),this.data.setBigUint64(this.pointer,e,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}writeInt8(e){this.remainingLength()<1&&this.flush(),this.data.setInt8(this.pointer,e),this.pointer++,this.pos++}writeInt16(e){this.remainingLength()<2&&this.flush(),this.data.setInt16(this.pointer,e,this.littleEndian),this.pointer+=2,this.pos+=BigInt(2)}writeInt24(e){this.writeUint24(e<0?e+16777216:e)}writeInt32(e){this.remainingLength()<4&&this.flush(),this.data.setInt32(this.pointer,e,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeInt64(e){this.remainingLength()<8&&this.flush(),this.data.setBigInt64(this.pointer,e,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}writeFloat(e){this.remainingLength()<4&&this.flush(),this.data.setFloat32(this.pointer,e,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeDouble(e){this.remainingLength()<8&&this.flush(),this.data.setFloat64(this.pointer,e,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}getPointer(){return this.pointer}getPos(){return this.pos}remainingLength(){return this.size-this.pointer}writeBuffer(e){if(!e.length)return;let t=e.length;if(this.remainingLength()<t){let a=0;for(;t>0;){this.flush();const i=Math.min(this.size,t);this.buffer.set(e.subarray(a,a+i),this.pointer),this.pointer+=i,this.pos+=BigInt(i),a+=i,t-=i}}else this.buffer.set(e,this.pointer),this.pointer+=t,this.pos+=BigInt(t)}writeString(e){const t=r.encode(e);return this.writeBuffer(t),t.length}flush(){if(!this.onFlush)throw this.error=-1048574,Error("IOWriter error, flush failed because of no flush callback");if(this.pointer){const e=this.onFlush(this.buffer.subarray(0,this.pointer));if(0!==e)throw this.error=e,Error("IOWriter error, flush failed")}this.pointer=0}flushToPos(e){if(!this.onFlush)throw this.error=-1048574,Error("IOWriter error, flush failed because of no flush callback");if(this.pointer){const t=this.onFlush(this.buffer.subarray(0,this.pointer),e);if(0!==t)throw this.error=t,Error("IOWriter error, flush failed")}this.pointer=0}seek(e){if(!this.onSeek)throw this.error=-1048574,Error("IOWriter error, seek failed because of no seek callback");this.flush();const t=this.onSeek(e);if(0!==t)throw this.error=t,Error("IOWriter error, seek failed");this.pos=e}seekInline(e){const t=this.pointer;this.pointer=Math.max(0,Math.min(this.size,e)),this.pos+=BigInt(this.pointer-t)}skip(e){const t=this.pointer;this.pointer=Math.min(this.size,this.pointer+e),this.pos+=BigInt(this.pointer-t)}back(e){const t=this.pointer;this.pointer=Math.max(0,this.pointer-e),this.pos+=BigInt(this.pointer-t)}getBuffer(){return this.buffer.subarray(0,this.pointer)}setEndian(e){this.littleEndian=!e}reset(){this.pointer=0,this.pos=BigInt(0),this.error=0}getBufferSize(){return this.size}}}}]);
1
+ (self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[969],{28773:(e,t,a)=>{a.r(t),a.d(t,{default:()=>E});var i=a(134),r=a(14686),o=a(61499),n=a(63939),s=a(50932),d=(a(9599),a(58121)),c=a(68243),h=a(4624),l=a(35028),f=a(62815),p=a(95832),u=a(67659),g=a(59166),w=a(21477),m=a(82014),I=a(97077),U=a(14769),k=a(22576),M=a(87518),R=a(64093),b=a(9705),v=a(85947),B=a(37837),y=a(71517),D=a(65977),A=a(44328),P=a(77231),C=a(72739),S=a(52071),L=a(34677),T=a(73040),x=(a(55833),a(99991)),z=a(67672);const N="src/avformat/formats/IFlvFormat.ts";class E extends v.A{constructor(e={}){super(),(0,i.A)(this,"type",0),(0,i.A)(this,"header",void 0),(0,i.A)(this,"script",void 0),(0,i.A)(this,"options",void 0),(0,i.A)(this,"firstTagPos",void 0),this.header=new d.A,this.script=new c.A,this.options=e}init(e){e.ioReader&&e.ioReader.setEndian(!0)}async readHeader(e){try{if("FLV"!==await e.ioReader.peekString(3))return h.z3("the file format is not flv",N,116),b.LR;await this.header.read(e.ioReader),0!==await e.ioReader.readUint32()&&h.R8("the previousTagSize0 is not 0",N,123);let t=0;if(18===await e.ioReader.peekUint8()){await e.ioReader.skip(1);const a=await e.ioReader.readUint24();await e.ioReader.skip(7),t=await this.script.read(e.ioReader,a)}return t>=0&&(this.firstTagPos=e.ioReader.getPos()),t}catch(t){return h.z3(t.message,N,141),e.ioReader.error}}async readModEx(e,t,a){let i=await e.ioReader.readUint8()+1;256===i&&(i=await e.ioReader.readUint16()+1);const r=await e.ioReader.readBuffer(i),o=await e.ioReader.readUint8(),d=240&o;if(0===d&&0===a||0===d&&1===a){let e=0;3===r.length?(e=r[0]<<16|r[1]<<8|r[2],this.options.useNanoTimestamp?s.M[17](t+16,n.f[17](t+16)+BigInt(e)):s.M[17](t+16,n.f[17](t+16)+BigInt(e)/BigInt(1e6)),s.M[17](t+8,n.f[17](t+16))):h.R8(`Invalid ModEx size for Type TimestampOffsetNano!, need 3 but got ${r.length}`,N,174)}else h.R8(`unknown ModEx type: ${d}`,N,178);return 15&o}async readCodecConfigurationRecord(e,t,a,i){const o=(0,B.sY)(i);t.codecpar.extradata?((0,y.Ow)(a,1,o,i),await e.ioReader.readBuffer(i,(0,r.JW)(o,i))):(t.codecpar.extradata=o,t.codecpar.extradataSize=i,await e.ioReader.readBuffer(i,(0,r.JW)(o,i)),t.sideData[1]=(0,r.s3)(o,i).slice(),27===t.codecpar.codecId?(f.XC(t),t.codecpar.bitFormat=1):173===t.codecpar.codecId?(u.XC(t),t.codecpar.bitFormat=1):196===t.codecpar.codecId?(g.XC(t),t.codecpar.bitFormat=1):225===t.codecpar.codecId?w.XC(t):167===t.codecpar.codecId?m.XC(t):139===t.codecpar.codecId?I.XC(t):86018===t.codecpar.codecId?p.XC(t):86028===t.codecpar.codecId?U.XC(t):86076===t.codecpar.codecId&&k.XC(t))}async readAVPacketData(e,t,a,i){const o=(0,B.sY)(i);(0,y.NX)(a,o,i),await e.ioReader.readBuffer(i,(0,r.JW)(o,i))}parseColorInfo(e,t,a){let i=!1,r=!1;if(a.hdrMdcv&&(i=a.hdrMdcv.redX>0&&a.hdrMdcv.redY>0&&a.hdrMdcv.blueX>0&&a.hdrMdcv.blueY>0&&a.hdrMdcv.greenX>0&&a.hdrMdcv.greenY>0&&a.hdrMdcv.whitePointX>0&&a.hdrMdcv.whitePointY>0,r=a.hdrMdcv.maxLuminance>0&&a.hdrMdcv.minLuminance>0),3!==a.colorConfig.matrixCoefficients&&(e.codecpar.colorSpace=a.colorConfig.matrixCoefficients),3!==a.colorConfig.colorPrimaries&&0!==a.colorConfig.colorPrimaries&&(e.codecpar.colorPrimaries=a.colorConfig.colorPrimaries),3!==a.colorConfig.transferCharacteristics&&0!==a.colorConfig.transferCharacteristics&&(e.codecpar.colorTrc=a.colorConfig.transferCharacteristics),a.hdrCll&&a.hdrCll.maxCLL&&a.hdrCll.maxFall){const n=(0,B.Gy)(8);s.M[8](n,a.hdrCll.maxCLL),s.M[8](n+4,a.hdrCll.maxFall),(0,y.sn)(e.codecpar[o.o9]+20,e.codecpar[o.o9]+24,22)?(0,y.Ow)(t,22,n,8):(0,y.$W)(e.codecpar[o.o9]+20,e.codecpar[o.o9]+24,22,n,8)}if(r||i){const d=(0,B.Gy)(88);function c(e,t){const a=(0,A.j2)(t,P.go);s.M[15](e+4,a.den),s.M[15](e,a.num)}r&&(s.M[15](d+84,1),c(d+72,a.hdrMdcv.maxLuminance),c(d+64,a.hdrMdcv.minLuminance)),i&&(s.M[15](d+80,1),c(d,a.hdrMdcv.redX),c(d+8,a.hdrMdcv.redY),c(d+16,a.hdrMdcv.greenX),c(d+16+8,a.hdrMdcv.greenY),c(d+32,a.hdrMdcv.blueX),c(d+32+8,a.hdrMdcv.blueY)),(0,y.sn)(e.codecpar[o.o9]+20,e.codecpar[o.o9]+24,20)?(0,y.Ow)(t,20,d,88):(0,y.$W)(e.codecpar[o.o9]+20,e.codecpar[o.o9]+24,20,d,88)}}findStream(e,t,a){for(let i=0;i<e.streams.length;i++)if(e.streams[i].codecpar.codecType===t){const t=e.streams[i].privData;if(t&&t.trackId===a)return e.streams[i]}}createStream(e,t,a,i){var r;const o=e.createStream();o.codecpar.codecType=t,o.timeBase.den=this.options.useNanoTimestamp?P.H3:P.qs,o.timeBase.num=1,o.startTime=n.f[17](a+8);const s={trackId:i};var d,c,h;if(o.privData=s,null!==(r=this.script.onMetaData)&&void 0!==r&&r.duration&&(o.duration=(0,A.k)(BigInt(Math.floor(1e3*this.script.onMetaData.duration)),P.i0,o.timeBase)),0===t)(null===(d=this.script.onMetaData)||void 0===d?void 0:d.width)>0&&(o.codecpar.width=this.script.onMetaData.width),(null===(c=this.script.onMetaData)||void 0===c?void 0:c.height)>0&&(o.codecpar.height=this.script.onMetaData.height),null!==(h=this.script.onMetaData)&&void 0!==h&&null!==(h=h.videoTrackIdInfoMap)&&void 0!==h&&h[i]&&(this.script.onMetaData.videoTrackIdInfoMap[i].title&&(o.metadata.title=this.script.onMetaData.videoTrackIdInfoMap[i].title),this.script.onMetaData.videoTrackIdInfoMap[i].lang&&(o.metadata.language=this.script.onMetaData.videoTrackIdInfoMap[i].lang),this.script.onMetaData.videoTrackIdInfoMap[i].width>0&&(o.codecpar.width=this.script.onMetaData.videoTrackIdInfoMap[i].width),this.script.onMetaData.videoTrackIdInfoMap[i].height>0&&(o.codecpar.height=this.script.onMetaData.videoTrackIdInfoMap[i].height),this.script.onMetaData.videoTrackIdInfoMap[i].duration>0&&(o.duration=(0,A.k)(BigInt(1e3*this.script.onMetaData.videoTrackIdInfoMap[i].duration),P.i0,o.timeBase)));else if(1===t){var l;null!==(l=this.script.onMetaData)&&void 0!==l&&null!==(l=l.audioTrackIdInfoMap)&&void 0!==l&&l[i]&&(this.script.onMetaData.audioTrackIdInfoMap[i].title&&(o.metadata.title=this.script.onMetaData.audioTrackIdInfoMap[i].title),this.script.onMetaData.audioTrackIdInfoMap[i].lang&&(o.metadata.language=this.script.onMetaData.audioTrackIdInfoMap[i].lang),this.script.onMetaData.audioTrackIdInfoMap[i].duration>0&&(o.duration=(0,A.k)(BigInt(1e3*this.script.onMetaData.audioTrackIdInfoMap[i].duration),P.i0,o.timeBase)))}return this.onStreamAdd&&this.onStreamAdd(o),o}async readAVPacket_(e,t){const a=e.ioReader.getPos();s.M[17](t+56,a);let i=!1;const d=31&await e.ioReader.readUint8();let c=await e.ioReader.readUint24(),f=await e.ioReader.readUint24();const p=await e.ioReader.readUint8();if(p&&(f|=p<<24),s.M[17](t+16,this.options.useNanoTimestamp?(0,A.k)(BigInt(Math.floor(f)),P.i0,P.FQ):BigInt(Math.floor(f))),s.M[17](t+8,n.f[17](t+16)),await e.ioReader.skip(3),8===d){s.M[15](t+36,1|n.f[15](t+36));const d=await e.ioReader.readUint8();c--;const f=(240&d)>>4;if(9===f){let l=!1,f=15&d;for(;7===f;){let a=e.ioReader.getPos();f=await this.readModEx(e,t,1),c-=Number(BigInt.asIntN(32,e.ioReader.getPos()-a))}let p=0,u=0;if(5===f){l=!0;const t=await e.ioReader.readUint8();c--,u=(240&t)>>4,f=15&t,2!==u&&(p=await e.ioReader.readUint32(),c-=4)}else p=await e.ioReader.readUint32(),c-=4;let g=t;for(;;){let d=c,w=0;l&&(2===u&&(p=await e.ioReader.readUint32(),c-=4),w=await e.ioReader.readUint8(),c--,0!==u?(d=await e.ioReader.readUint24(),c-=3):d=c);let m=this.findStream(e,1,w);if(m||(m=this.createStream(e,1,g,w),p===(0,D.A)("ac-3")?m.codecpar.codecId=86019:p===(0,D.A)("ec-3")?m.codecpar.codecId=86056:p===(0,D.A)("Opus")?(m.codecpar.codecId=86076,m.codecpar.sampleRate=48e3):p===(0,D.A)(".mp3")?m.codecpar.codecId=86017:p===(0,D.A)("fLaC")?m.codecpar.codecId=86028:p===(0,D.A)("mp4a")?m.codecpar.codecId=86018:(h.R8(`unknown codec fourcc(${p.toString(16)})`,N,510),m.codecpar.codecId=0)),s.M[15](g+32,m.index),c-=d,4===f){const t=await e.ioReader.readUint8(),a=await e.ioReader.readUint8();if(d-=2,(0,x.bl)(m.codecpar[o.o9]+112),2===t){(0,x.xY)(m.codecpar[o.o9]+112,a);for(let t=0;t<a;t++){const a=await e.ioReader.readUint8();d--,a<18?s.M[15](m.codecpar.chLayout.u.map+24*t,a):a>=18&&a<=23?s.M[15](m.codecpar.chLayout.u.map+24*t,a-18+35):254===a?s.M[15](m.codecpar.chLayout.u.map+24*t,512):s.M[15](m.codecpar.chLayout.u.map+24*t,768)}}else if(1===t){let t=BigInt(await e.ioReader.readUint32());d-=4,t=t&BigInt(262143)|(t&BigInt(16515072))<<BigInt(35)-BigInt(18),(0,x.ML)(m.codecpar[o.o9]+112,t)}i=!0}else if(0===f)d?(await this.readCodecConfigurationRecord(e,m,g,d),d=0,i=!1,(0,y.fQ)(t,1)||(i=!0)):i=!0;else if(2===f)s.M[15](g+36,32|n.f[15](g+36)),i=!1;else if(1===f){if(await this.readAVPacketData(e,m,g,d),(86019===m.codecpar.codecId||86056===m.codecpar.codecId||86017===m.codecpar.codecId)&&m.codecpar.sampleRate===P.N_)if(86019===m.codecpar.codecId||86056===m.codecpar.codecId){const e=M.R((0,y.iI)(g));z.ai(e)||(m.codecpar.sampleRate=e.sampleRate,m.codecpar.chLayout.nbChannels=e.channels,m.codecpar.bitrate=BigInt(e.bitrate))}else 86017===m.codecpar.codecId&&R.XC(m,(0,y.iI)(g));i=!1,d=0}else h.R8(`invalid audioPacketType ${f}`,N,592);if(d&&await e.ioReader.skip(d),g===t||i||e.interval.packetBuffer.push(g),!l||0===u||!c)break;g=(0,y._5)(),s.M[17](g+56,a),(0,r.Mr)(g+72,t+72,8),s.M[17](g+16,n.f[17](t+16)),s.M[17](g+8,n.f[17](t+8)),s.M[15](g+36,1|n.f[15](g+36))}}else{let a=this.findStream(e,1,0);if(!a){if(a=this.createStream(e,1,t,0),a.disposition|=1,a.codecpar.chLayout.nbChannels=1&~d?1:2,a.codecpar.sampleRate=44100<<((12&d)>>>2)>>3,a.codecpar.bitsPerCodedSample=2&d?16:8,0===f)a.codecpar.codecId=8===a.codecpar.bitsPerCodedSample?65541:65536;else if(3===f)a.codecpar.codecId=8===a.codecpar.bitsPerCodedSample?65541:65536;else{var u;a.codecpar.codecId=null!==(u=l.FJ[f])&&void 0!==u?u:0}86051===a.codecpar.codecId?(a.codecpar.sampleRate=16e3,a.codecpar.chLayout.nbChannels=1):65543!==a.codecpar.codecId&&65542!==a.codecpar.codecId||(a.codecpar.sampleRate=8e3)}s.M[15](t+32,a.index),86018===a.codecpar.codecId&&(c--,0===await e.ioReader.readUint8()&&(this.readCodecConfigurationRecord(e,a,t,c),c=0,(0,y.fQ)(t,1)||(i=!0))),c&&(await this.readAVPacketData(e,a,t,c),c=0)}}else if(9===d){const o=await e.ioReader.readUint8(),d=128&o,f=(112&o)>>4;if(c--,1===f&&s.M[15](t+36,1|n.f[15](t+36)),d){let d=!0,l=!1,p=15&o;for(;7===p;){let a=e.ioReader.getPos();p=await this.readModEx(e,t,0),c-=Number(BigInt.asIntN(32,e.ioReader.getPos()-a))}let u=0,g=0;if(4!==p&&5===f)d=!1,i=!0;else if(6===p){l=!0;const t=await e.ioReader.readUint8();c--,g=(240&t)>>4,p=15&t,2!==g&&(u=await e.ioReader.readUint32(),c-=4)}else u=await e.ioReader.readUint32(),c-=4;let w=t;for(;d;){let o=c,d=0;l&&(2===g&&(u=await e.ioReader.readUint32(),c-=4),d=await e.ioReader.readUint8(),c--,0!==g?(o=await e.ioReader.readUint24(),c-=3):o=c);let m=this.findStream(e,0,d);if(m||(m=this.createStream(e,0,w,d),u===(0,D.A)("avc1")?m.codecpar.codecId=27:u===(0,D.A)("hvc1")?m.codecpar.codecId=173:u===(0,D.A)("vvc1")?m.codecpar.codecId=196:u===(0,D.A)("av01")?m.codecpar.codecId=225:u===(0,D.A)("vp09")?m.codecpar.codecId=167:u===(0,D.A)("vp08")&&(m.codecpar.codecId=139)),s.M[15](w+32,m.index),c-=o,27!==m.codecpar.codecId&&173!==m.codecpar.codecId&&196!==m.codecpar.codecId||s.M[15](t+80,1),4===p){const t=e.ioReader.getPos()+BigInt(Math.floor(o)),a=await T.$x(e.ioReader,t),r=await T.$x(e.ioReader,t);"colorInfo"===a?this.parseColorInfo(m,w,r):h.R8(`unknown metadata key ${a}`,N,775),e.ioReader.getPos()<t&&await e.ioReader.seek(t),i=!0,o=0}else if(0===p)o?(await this.readCodecConfigurationRecord(e,m,w,o),o=0,i=!1,(0,y.fQ)(t,1)||(i=!0)):i=!0;else if(2===p)s.M[15](w+36,32|n.f[15](w+36)),i=!1;else if(5===p)225===m.codecpar.codecId?(await this.readCodecConfigurationRecord(e,m,w,o-2),i=!1,o=0,(0,y.fQ)(t,1)||(i=!0)):i=!0;else if(1===p||3===p){if(1===p&&(173===m.codecpar.codecId||196===m.codecpar.codecId||27===m.codecpar.codecId)){const a=await e.ioReader.readInt24();s.M[17](w+8,n.f[17](w+16)+(this.options.useNanoTimestamp?(0,A.FP)(BigInt(0|a),P.i0,t+72):BigInt(0|a))),o-=3}await this.readAVPacketData(e,m,w,o),o=0,i=!1}else h.R8(`invalid videoPacketType ${p}`,N,834);if(o&&await e.ioReader.skip(o),i||w===t||e.interval.packetBuffer.push(w),!l||0===g||!c)break;w=(0,y._5)(),s.M[17](w+56,a),(0,r.Mr)(w+72,t+72,8),s.M[17](w+16,n.f[17](t+16)),s.M[17](w+8,n.f[17](t+8)),1===f&&s.M[15](w+36,1|n.f[15](w+36))}}else if(5!==f){let a=this.findStream(e,0,0);var g;if(a||(a=this.createStream(e,0,t,0),a.disposition|=1,a.codecpar.codecId=null!==(g=l.U5[15&o])&&void 0!==g?g:0),s.M[15](t+32,a.index),27===a.codecpar.codecId||173===a.codecpar.codecId||196===a.codecpar.codecId||12===a.codecpar.codecId){s.M[15](t+80,1);const r=await e.ioReader.readUint8(),o=await e.ioReader.readInt24();c-=4,s.M[17](t+8,n.f[17](t+16)+(this.options.useNanoTimestamp?(0,A.FP)(BigInt(0|o),P.i0,t+72):BigInt(0|o))),0===r?(await this.readCodecConfigurationRecord(e,a,t,c),(0,y.fQ)(t,1)||(i=!0)):2===r?s.M[15](t+36,32|n.f[15](t+36)):await this.readAVPacketData(e,a,t,c)}else await this.readAVPacketData(e,a,t,c);c=0}else i=!0}else{if(18===d){let a=await this.script.read(e.ioReader,c);return a<0?a:await this.readAVPacket_(e,t)}if(15!==d)return h.R8(`invalid tag type: ${d}, try to sync to next tag`,N,921),await this.syncTag(e),this.readAVPacket_(e,t);h.R8("not support script tag encoded by amf3, ignore it",N,918)}c&&await e.ioReader.skip(c);const w=e.ioReader.getPos()-a,m=BigInt(Math.floor(await e.ioReader.readUint32()));return w!==m?(h.R8(`tag ${d} size not match, size: ${w}, previousTagSize: ${m}`,N,934),b.LR):i?this.readAVPacket_(e,t):0}async readAVPacket(e,t){try{return s.M[15](t+76,this.options.useNanoTimestamp?P.H3:P.qs),s.M[15](t+72,1),await this.readAVPacket_(e,t)}catch(t){return-1048576!==e.ioReader.error&&-1048572!==e.ioReader.error?(h.z3(`read packet error, ${t}`,N,954),b.LR):e.ioReader.error}}async syncTag(e){let t=P.Dh;for(;;)try{if(8&e.ioReader.flags)break;const a=await e.ioReader.readUint8();if(8===a||9===a){t=e.ioReader.getPos()-BigInt(1);const a=await e.ioReader.readUint24();if(a>10485760){await e.ioReader.seek(t+BigInt(1));continue}if(await e.ioReader.skip(4),0!==await e.ioReader.readUint24()){await e.ioReader.seek(t+BigInt(1));continue}await e.ioReader.skip(a);if(e.ioReader.getPos()-t!==BigInt(Math.floor(await e.ioReader.readUint32()))){await e.ioReader.seek(t+BigInt(1)),t=P.Dh;continue}{let a=0;for(;a<=3;){const t=e.ioReader.getPos(),i=await e.ioReader.readUint8();if(8!==i&&9!==i&&18!==i)break;{const i=await e.ioReader.readUint24();await e.ioReader.skip(7+i);if(e.ioReader.getPos()-t!==BigInt(Math.floor(await e.ioReader.readUint32())))break;a++}}if(!(a<3))break;await e.ioReader.seek(t+BigInt(1)),t=P.Dh}}}catch(e){break}t!==P.Dh&&await e.ioReader.seek(t)}async seek(e,t,a,i){const r=e.ioReader.getPos();if(2&i)return await e.ioReader.seek(a),4&i||await this.syncTag(e),r;if(t&&t.sampleIndexes.length){let i=C.El(t.sampleIndexes,(e=>e.pts>a?-1:1));if(i>0&&(0,A.k)(a-t.sampleIndexes[i-1].pts,t.timeBase,P.i0)<BigInt(1e4))return h.Yz(`seek in sampleIndexes, found index: ${i}, pts: ${t.sampleIndexes[i-1].pts}, pos: ${t.sampleIndexes[i-1].pos}`,N,1061),await e.ioReader.seek(t.sampleIndexes[i-1].pos),r}if(this.script.canSeek()){const{pos:i,dts:o}=this.script.dts2Position(Number((0,A.k)(a,t.timeBase,P.i0)/BigInt(1e3)));if(i>0){h.Yz(`seek in filepositions, found pts: ${o}, pos: ${i}`,N,1070),await e.ioReader.seek(BigInt(Math.floor(i)));const t=await e.ioReader.peekUint8();return 8!==t&&9!==t&&18!==t&&await this.syncTag(e),r}}return h.Yz("not found any keyframe index, try to seek in bytes",N,1080),(0,S.A)(e,t,a,this.firstTagPos,this.readAVPacket.bind(this),this.syncTag.bind(this))}getAnalyzeStreamsCount(){let e=0;return(this.header.hasAudio||(0,L.A)(this.script.onMetaData.audiocodecid))&&e++,(this.header.hasVideo||(0,L.A)(this.script.onMetaData.videocodecid))&&e++,e}}},85947:(e,t,a)=>{a.d(t,{A:()=>r});var i=a(134);class r{constructor(){(0,i.A)(this,"type",-1),(0,i.A)(this,"onStreamAdd",void 0)}async destroy(e){}}},58121:(e,t,a)=>{a.d(t,{A:()=>r});var i=a(134);class r{constructor(){(0,i.A)(this,"signature",void 0),(0,i.A)(this,"version",void 0),(0,i.A)(this,"flags",void 0),(0,i.A)(this,"dataOffset",void 0),(0,i.A)(this,"hasVideo",void 0),(0,i.A)(this,"hasAudio",void 0),this.signature="FLV",this.version=1,this.flags=0,this.dataOffset=9,this.hasAudio=!1,this.hasVideo=!1}async read(e){this.signature=await e.readString(3),this.version=await e.readUint8(),this.flags=await e.readUint8(),this.dataOffset=await e.readUint32(),this.hasAudio=!!(4&this.flags),this.hasVideo=!!(1&this.flags)}write(e){this.flags=0,this.hasAudio&&(this.flags|=4),this.hasVideo&&(this.flags|=1),e.writeString(this.signature),e.writeUint8(this.version),e.writeUint8(this.flags),e.writeUint32(this.dataOffset)}}},68243:(e,t,a)=>{a.d(t,{A:()=>h});var i=a(134),r=a(35336),o=a(92647),n=a(4624),s=a(94889),d=a(9705),c=a(73040);class h{constructor(){(0,i.A)(this,"onMetaData",void 0),this.onMetaData={canSeekToEnd:!1}}async read(e,t){const a=e.getPos(),i=a+BigInt(Math.floor(t)),r=await(0,c.$x)(e,i),o=await(0,c.$x)(e,i);this[r]=o,i>e.getPos()&&await e.skip(Number(BigInt.asIntN(32,i-e.getPos())));const s=Number(e.getPos()-a),h=await e.readUint32();return s+11!==h?(n.R8(`script size not match, size: ${s+11}, previousTagSize: ${h}`,"src/avformat/formats/flv/FlvScriptTag.ts",63),d.LR):0}computeSize(){const e=[],t=new r.A;return t.onFlush=t=>(e.push(t.slice()),0),(0,c.bD)(t,"onMetaData"),(0,c.bD)(t,this.onMetaData),t.flush(),(0,o.A)(Uint8Array,e).length}write(e){if(this.onMetaData){const t=[],a=new r.A;a.onFlush=e=>(t.push(e.slice()),0),(0,c.bD)(a,"onMetaData"),(0,c.bD)(a,this.onMetaData),a.flush();const i=(0,o.A)(Uint8Array,t);s.M5(e,18,BigInt(0),void 0,i)}}dts2Position(e){if(this.canSeek()){let t=-1;const a=this.onMetaData.keyframes.times,i=this.onMetaData.keyframes.filepositions;let r;for(r=0;r<a.length;r++){if(a[r]===e){t=r;break}if(a[r]>e){t=Math.max(r-1,0);break}}return r&&r===a.length&&(t=a.length-1),{pos:i[t],dts:a[t]}}return{pos:-1,dts:-1}}position2DTS(e){if(this.canSeek()){let a=-1;const i=this.onMetaData.keyframes.times,r=this.onMetaData.keyframes.filepositions;let o=0;for(o=0;o<r.length;o++)if(r[o]>e){a=o;break}var t;return o===r.length?null!==(t=this.onMetaData.duration)&&void 0!==t?t:i[i.length-1]:i[a]}return-1}canSeek(){return!!(this.onMetaData.keyframes&&this.onMetaData.keyframes.filepositions&&this.onMetaData.keyframes.filepositions.length)}}},35028:(e,t,a)=>{a.d(t,{FJ:()=>i,U5:()=>r});const i={10:86018,2:86017,11:86051,1:69645,4:86049,5:86049,6:86049,7:65543,8:65542},r={7:27,12:173,9:12,2:4,3:86,4:92,5:106,6:131}},94889:(e,t,a)=>{a.d(t,{M5:()=>o}),a(35028),a(44328),a(77231),a(65977);var i=a(67672);function r(e,t,a){const i=e.getPos(),r=e.getPointer(),o=i-BigInt(Math.floor(r));t<i&&t>=o?(e.seekInline(r+Number(t-i)),e.writeUint24(a),e.seekInline(r)):(e.seek(t),e.writeUint24(a),e.seek(i))}function o(e,t,a,o,n,s){e.flush(),e.writeUint8(t);const d=e.getPos();e.writeUint24(0),e.writeUint24(Number(a&BigInt(16777215))),e.writeUint8(Number(a>>BigInt(24)&BigInt(255))),e.writeUint24(0);const c=e.getPos();o&&o(e),i.Pc(n)?(n(e),r(e,d,Number(e.getPos()-c))):n&&(r(e,d,n.length+Number(e.getPos()-c)),e.writeBuffer(n));const h=Number(e.getPos()-d)+1;s&&s(h),e.writeUint32(h)}},2187:(e,t,a)=>{a.d(t,{d:()=>n});var i=a(72739),r=a(44328),o=a(77231);function n(e,t,a){let n=BigInt(0);return i.__(e,(e=>{n+=e.codecpar.bitrate*(0,r.k)(t,a,o.i0)/BigInt(8e3)})),n}},65977:(e,t,a)=>{a.d(t,{A:()=>o});var i=a(4624);const r="src/avformat/function/mktag.ts";function o(e){4!==e.length&&i.R8(`tag length is not 4, tag: ${e}`,r,30);let t=0;for(let a=0;a<4;a++)t=t<<8|e.charCodeAt(a);return t}},52071:(e,t,a)=>{a.d(t,{A:()=>l});var i=a(63939),r=(a(9599),a(77231)),o=a(44328),n=a(2187),s=a(71517),d=a(9705),c=a(4624);const h="src/avformat/function/seekInBytes.ts";async function l(e,t,a,l,f,p){const u=e.ioReader.getPos(),g=await e.ioReader.fileSize();let w=r.Dh,m=a;t.startTime!==r.Dh?m-=t.startTime:m-=t.firstDTS;const I=(0,o.k)(a,t.timeBase,r.i0);if(I<BigInt(1e4))return c.Yz(`seek pts is earlier then 10s, seek to first packet pos(${l}) directly`,h,62),await e.ioReader.seek(l),u;let U=(0,n.d)(e.streams,m,t.timeBase);const k=g-(0,n.d)(e.streams,BigInt(1e4),r.i0),M=(0,n.d)(e.streams,BigInt(1e4),r.i0);if(U>k&&(U=k),U<l)return await e.ioReader.seek(l),u;const R=(0,s._5)();let b=g,v=BigInt(0);for(;;){if(b-v<M){w=v;break}if(await e.ioReader.seek(U),await p(e),8&e.ioReader.flags)break;const t=e.ioReader.getPos();if(!(await f(e,R)>=0)){w=r.Dh;break}{const e=(0,o.Mr)(i.f[17](R+8),R+72,r.i0),a=e-I;if(c.Yz(`try to seek to pos: ${U}, got packet pts: ${i.f[17](R+8)}(${e}ms), diff: ${a}ms`,h,100),a<=BigInt(0)&&-a<BigInt(1e4)){w=t;break}a>BigInt(0)?(b=U,U=v+b>>BigInt(1)):(v=U,U=v+b>>BigInt(1))}if(8&e.ioReader.flags)break}return(0,s.Qe)(R),w!==r.Dh?(c.Yz(`finally seek to pos ${w}`,h,131),await e.ioReader.seek(w),await p(e),u):(await e.ioReader.seek(u),8&e.ioReader.flags?BigInt(d.LT):BigInt(d.E$))}},95832:(e,t,a)=>{a.d(t,{Bq:()=>l,Ij:()=>h,XC:()=>c,f7:()=>f,uF:()=>o});var i=a(77231),r=a(37246);const o={1:"Main",2:"LC",3:"SSR",4:"LTP",5:"HE",6:"SCALABLE",29:"HEv2",23:"LD",39:"ELD"},n={96e3:0,88200:1,64e3:2,48e3:3,44100:4,32e3:5,24e3:6,22050:7,16e3:8,12e3:9,11025:10,8e3:11,7350:12},s=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350,i.N_,i.N_,i.N_],d=[i.N_,1,2,3,4,5,6,7];function c(e,t){if(!t&&e.sideData[1]&&(t=e.sideData[1]),t){const{profile:a,sampleRate:r,channels:o}=function(e){let t=i.N_,a=i.N_,r=i.N_;return e.length>=2&&(t=e[0]>>3&31,a=s[(7&e[0])<<1|e[1]>>7],r=d[e[1]>>3&15]),{profile:t,sampleRate:a,channels:r}}(t);e.codecpar.profile=a,e.codecpar.sampleRate=r,e.codecpar.chLayout.nbChannels=o,e.codecpar.frameSize=5===a?2048:1024,e.codecpar.format=8}}function h(e){const t=n[e.sampleRate],a=e.chLayout.nbChannels,r=e.profile===i.N_?2:e.profile,o=new Uint8Array(2);return o[0]=(31&r)<<3|(14&t)>>1,o[1]=(1&t)<<7|(15&a)<<3,o}function l(e){if(e.length<7)return-1;const t=e[0]<<4|e[1]>>4;if(4095!==t)return-1;const a=1&e[1],i=(192&e[2])>>>6,r=(60&e[2])>>>2,o=(1&e[2])<<2|(192&e[3])>>>6,n=(3&e[3])<<11|e[4]<<3|(224&e[5])>>>5,c=3&e[6];let h=1===a?7:9,l=n-h;return{syncWord:t,profile:i+1,sampleRate:s[r],channels:d[o],aacFrameLength:n,numberOfRawDataBlocksInFrame:c,headerLength:h,framePayloadLength:l}}function f(e,t){function a(){const e=t.readU(2);let a=0;for(let i=0;i<=e;i++)a<<=8,a|=t.readU(8);return a}t||(t=new r.A).appendBuffer(e);const i=t.getPointer(),o={syncWord:0,profile:0,sampleRate:0,channels:0,useSameStreamMux:!1,headerLength:0,framePayloadLength:0,muxLengthBytes:0},n=t.readU(11);if(695!==n)return-1;o.syncWord=n,o.muxLengthBytes=t.readU(13);const c=1===t.readU1();if(o.useSameStreamMux=c,!c){const e=1===t.readU1();if(e&&1===t.readU1())return-1;if(e&&a(),1!==t.readU1())return-1;if(0!==t.readU(6))return-1;if(0!==t.readU(4))return-1;if(0!==t.readU(3))return-1;let i=e?a():0;const r=t.readU(5);i-=5;const n=t.readU(4);i-=4;const c=t.readU(4);if(i-=4,t.readU(3),i-=3,i>0&&t.readU(i),0!==t.readU(3))return-1;if(t.readU(8),1===t.readU1())if(e)a();else{let e=0;for(;;){e<<=8;const a=1===t.readU1();if(e+=t.readU(8),!a)break}}1===t.readU1()&&t.readU(8),o.profile=r+1,o.sampleRate=s[n],o.channels=d[c]}let h=0;for(;;){const e=t.readU(8);if(h+=e,255!==e)break}return o.framePayloadLength=h,o.headerLength=t.getPointer()-i+(8===t.getBitLeft()?0:1),o}},87518:(e,t,a)=>{a.d(t,{R:()=>p,j:()=>r});var i=a(37246);const r=[3,4,3,7,259,263,1539,1543],o=[[64,69,96],[64,70,96],[80,87,120],[80,88,120],[96,104,144],[96,105,144],[112,121,168],[112,122,168],[128,139,192],[128,140,192],[160,174,240],[160,175,240],[192,208,288],[192,209,288],[224,243,336],[224,244,336],[256,278,384],[256,279,384],[320,348,480],[320,349,480],[384,417,576],[384,418,576],[448,487,672],[448,488,672],[512,557,768],[512,558,768],[640,696,960],[640,697,960],[768,835,1152],[768,836,1152],[896,975,1344],[896,976,1344],[1024,1114,1536],[1024,1115,1536],[1152,1253,1728],[1152,1254,1728],[1280,1393,1920],[1280,1394,1920]],n=[4,5,6,5],s=[4,6,7,6],d=[48e3,44100,32e3,0],c=[32,40,48,56,64,80,96,112,128,160,192,224,256,320,384,448,512,576,640],h=[2,1,2,3,3,4,4,5],l=[1,2,3,6],f=7;function p(e){const t=new i.A(e.length);t.appendBuffer(e);const a={syncWord:0,crc1:0,srCode:0,bitstreamId:0,bitstreamMode:0,channelMode:0,lfeOn:0,frameType:0,substreamId:0,centerMixLevel:0,surroundMixLevel:0,channelMap:0,numBlocks:0,dolbySurroundMode:0,srShift:0,sampleRate:0,bitrate:0,channels:0,frameSize:0,channelLayout:BigInt(0),ac3BitrateCode:0};if(a.syncWord=t.readU(16),2935!==a.syncWord)return-1;if(a.bitstreamId=31&t.peekU(29),a.bitstreamId>16)return-2;if(a.numBlocks=6,a.ac3BitrateCode=-1,a.centerMixLevel=5,a.surroundMixLevel=6,a.dolbySurroundMode=0,a.bitstreamId<=10){if(a.crc1=t.readU(16),a.srCode=t.readU(2),3===a.srCode)return-3;const e=t.readU(6);if(e>37)return-4;a.ac3BitrateCode=e>>1,t.readU(5),a.bitstreamMode=t.readU(3),a.channelMode=t.readU(3),2==a.channelMode?a.dolbySurroundMode=t.readU(2):(1&a.channelMode&&1!=a.channelMode&&(a.centerMixLevel=n[t.readU(2)]),4&a.channelMode&&(a.surroundMixLevel=s[t.readU(2)])),a.lfeOn=t.readU(1),a.srShift=Math.max(a.bitstreamId,8)-8,a.sampleRate=d[a.srCode]>>a.srShift,a.bitrate=1e3*c[a.ac3BitrateCode]>>a.srShift,a.channels=h[a.channelMode]+a.lfeOn,a.frameSize=2*o[e][a.srCode],a.frameType=2,a.substreamId=0}else{if(a.crc1=0,a.frameType=t.readU(2),3==a.frameType)return-5;if(a.substreamId=t.readU(3),a.frameSize=t.readU(11)+1<<1,a.frameSize<f)return-6;if(a.srCode=t.readU(2),3==a.srCode){const e=t.readU(2);if(3==e)return-7;a.sampleRate=d[e]/2,a.srShift=1}else a.numBlocks=l[t.readU(2)],a.sampleRate=d[a.srCode],a.srShift=0;a.channelMode=t.readU(3),a.lfeOn=t.readU(1),a.bitrate=8*a.frameSize*a.sampleRate/(256*a.numBlocks),a.channels=h[a.channelMode]+a.lfeOn}return a.channelLayout=BigInt(r[a.channelMode]),a.lfeOn&&(a.channelLayout|=BigInt(8)),a}},21477:(e,t,a)=>{a.d(t,{Ui:()=>n,XC:()=>o,zk:()=>r});var i=a(37246);a(83314),a(97317);const r={0:"Main",1:"High",2:"Professional"};function o(e,t){if(!t&&e.sideData[1]&&(t=e.sideData[1]),t&&t.length>=4){const a=n(t);e.codecpar.profile=a.profile,e.codecpar.level=a.level}}function n(e){const t=new i.A(e.length);t.appendBuffer(e),t.readU1(),t.readU(7);const a=t.readU(3),r=t.readU(5),o=t.readU1();let n=t.readU1()?10:8;return t.readU1()&&(n=12),{profile:a,level:r,tier:o,bitDepth:n,monochrome:t.readU1(),chromaSubsamplingX:t.readU1(),chromaSubsamplingY:t.readU1(),chromaSamplePosition:t.readU(2)}}},14769:(e,t,a)=>{a.d(t,{DK:()=>s,XC:()=>c,Xr:()=>d,jA:()=>o,ob:()=>r,oe:()=>n});var i=a(31865);const r=34,o=8,n=[0,8,12,0,16,20,24,32],s=[0,88200,176400,192e3,8e3,16e3,22050,24e3,32e3,44100,48e3,96e3,0,0,0,0],d=[0,192,576,1152,2304,4608,0,0,256,512,1024,2048,4096,8192,16384,32768];function c(e,t){if(!t&&e.sideData[1]&&(t=e.sideData[1]),t&&t.length===r){const{bitsPerRawSample:a,sampleRate:r,channels:o}=function(e){const t=new i.A(e);t.skip(10);const a=t.readUint24();return{sampleRate:a>>4,channels:1+((15&a)>>>1),bitsPerRawSample:1+((1&a)<<4|(240&t.readUint8())>>>4)}}(t);e.codecpar.bitsPerRawSample=a,e.codecpar.sampleRate=r,e.codecpar.chLayout.nbChannels=o}}},64093:(e,t,a)=>{a.d(t,{Au:()=>I,He:()=>U,XC:()=>k,Y2:()=>g,hG:()=>w,oz:()=>m});var i=a(77231);const r=[44100,48e3,32e3,0],o=[22050,24e3,16e3,0],n=[11025,12e3,8e3,0],s=[0,1152,1152,384],d=[0,576,1152,384],c=[0,576,1152,384],h=[0,32,64,96,128,160,192,224,256,288,320,352,384,416,448,-1],l=[0,32,48,56,64,80,96,112,128,160,192,224,256,320,384,-1],f=[0,32,40,48,56,64,80,96,112,128,160,192,224,256,320,-1],p=[0,32,48,56,64,80,96,112,128,144,160,176,192,224,256,-1],u=[0,8,16,24,32,40,48,56,64,80,96,112,128,144,160,-1];function g(e,t){switch(e){case 0:return n[t];case 2:return o[t];case 3:return r[t]}return i.N_}function w(e,t){switch(e){case 0:return c[t];case 2:return d[t];case 3:return s[t]}return i.N_}function m(e,t,a){switch(t){case 1:switch(e){case 0:case 2:return u[a];case 3:return f[a]}break;case 2:switch(e){case 0:case 2:return u[a];case 3:return l[a]}case 3:switch(e){case 0:case 2:return p[a];case 3:return h[a]}}return i.N_}function I(e){switch(e){case 1:return 34;case 2:return 33;case 3:return 32}return i.N_}const U={32:"Layer1",33:"Layer2",34:"Layer3"};function k(e,t){if(t&&t.length>=4){const a=t[1]>>>3&3,i=(6&t[1])>>1,r=(12&t[2])>>>2,o=3&~(t[3]>>>6)?2:1,n=I(i),s=g(a,r);e.codecpar.profile=n,e.codecpar.sampleRate=s,e.codecpar.chLayout.nbChannels=o}}},22576:(e,t,a)=>{a.d(t,{Ij:()=>c,XC:()=>d,kt:()=>s});var i=a(31865),r=a(729),o=a(44328);const n=[480,960,1920,2880,480,960,1920,2880,480,960,1920,2880,480,960,480,960,120,240,480,960,120,240,480,960,120,240,480,960,120,240,480,960];function s(e){let t=0,a=0,i=0;if(e.length<1)return 0;switch(t=e[0],a=n[t>>3],3&t){case 0:i=1;break;case 1:case 2:i=2;break;case 3:if(e.length<2)return 0;i=63&e[1]}return i*a}function d(e,t){if(!t&&e.sideData[1]&&(t=e.sideData[1]),t&&t.length>=19){const a=new i.A(t,!1);a.skip(9),e.codecpar.chLayout.nbChannels=a.readUint8(),e.codecpar.initialPadding=a.readUint16(),e.codecpar.sampleRate=a.readUint32(),e.codecpar.seekPreroll=Number((0,o.k)(BigInt(80),{den:1e3,num:1},{den:48e3,num:1}))}}function c(e){const t=new Uint8Array(19),a=new r.A(t,!1);return a.writeString("OpusHead"),a.writeUint8(1),a.writeUint8(e.chLayout.nbChannels),a.writeUint16(e.initialPadding),a.writeUint32(e.sampleRate),t}},97077:(e,t,a)=>{a.d(t,{Ui:()=>o,XC:()=>r});var i=a(37246);function r(e,t){if(!t&&e.sideData[1]&&(t=e.sideData[1]),t&&t.length>=6){const a=o(t);e.codecpar.profile=a.profile,e.codecpar.level=a.level}}function o(e){const t=new i.A(e.length);return t.appendBuffer(e.subarray(4)),{profile:t.readU(8),level:t.readU(8),bitDepth:t.readU(4),chromaSubsampling:t.readU(3),fullRangeFlag:t.readU1(),colorPrimaries:t.readU(8),colorTrc:t.readU(8),colorSpace:t.readU(8)}}},82014:(e,t,a)=>{a.d(t,{Ui:()=>n,XC:()=>o,wN:()=>r}),a(9599);var i=a(37246);a(77231),a(97317),a(44328),a(729);const r={0:"Profile0",1:"Profile1",2:"Profile2",3:"Profile3"};function o(e,t){if(!t&&e.sideData[1]&&(t=e.sideData[1]),t&&t.length>=6){const a=n(t);e.codecpar.profile=a.profile,e.codecpar.level=a.level}}function n(e){const t=new i.A(e.length);return t.appendBuffer(e),{profile:t.readU(8),level:t.readU(8),bitDepth:t.readU(4),chromaSubsampling:t.readU(3),fullRangeFlag:t.readU1(),colorPrimaries:t.readU(8),colorTrc:t.readU(8),colorSpace:t.readU(8)}}},73040:(e,t,a)=>{a.d(t,{$x:()=>s,bD:()=>d});var i=a(67672),r=a(72739),o=a(95335);async function n(e,t){return{key:await e.readString(await e.readUint16()),value:await s(e,t)}}async function s(e,t){let a;switch(await e.readUint8()){case 0:a=await e.readDouble();break;case 1:a=!!await e.readUint8();break;case 2:a=await e.readString(await e.readUint16());break;case 3:for(a={};e.getPos()<t;){const{key:i,value:r}=await n(e,t);if(a[i]=r,9==(16777215&await e.peekUint24())){await e.skip(3);break}}break;case 8:for(a={},await e.skip(4);e.getPos()<t;){const{key:i,value:r}=await n(e,t);if(a[i]=r,9==(16777215&await e.peekUint24())){await e.skip(3);break}}break;case 9:case 5:a=null;break;case 10:a=[];const i=await e.readUint32();for(let r=0;r<i;r++)a.push(await s(e,t));break;case 11:const r=await e.readDouble(),o=await e.readInt16();a=new Date(r+60*o*1e3);break;case 12:a=await e.readString(await e.readUint32())}return a}function d(e,t){i.ai(t)?(e.writeUint8(0),e.writeDouble(t)):i.o(t)?(e.writeUint8(0),e.writeDouble(Number(t))):i.zM(t)?(e.writeUint8(1),e.writeUint8(t?1:0)):i.Yj(t)?t.length>=65536?(e.writeUint8(12),e.writeUint32(t.length),e.writeString(t)):(e.writeUint8(2),e.writeUint16(t.length),e.writeString(t)):i.YO(t)?(e.writeUint8(10),e.writeUint32(t.length),r.__(t,(t=>{d(e,t)}))):i.Ik(t)?(e.writeUint8(3),o.__(t,((t,a)=>{e.writeUint16(a.length),e.writeString(a),d(e,t)})),e.writeUint24(9)):t instanceof Date?(e.writeUint8(11),e.writeDouble(t.getTime()),e.writeInt16(0)):null==t&&e.writeUint8(5)}},null:()=>{},35336:(e,t,a)=>{a.d(t,{A:()=>o});var i=a(134),r=a(50011);class o{constructor(e=1048576,t=!0,a){if((0,i.A)(this,"data",void 0),(0,i.A)(this,"buffer",void 0),(0,i.A)(this,"pointer",void 0),(0,i.A)(this,"pos",void 0),(0,i.A)(this,"size",void 0),(0,i.A)(this,"littleEndian",void 0),(0,i.A)(this,"error",void 0),(0,i.A)(this,"onFlush",void 0),(0,i.A)(this,"onSeek",void 0),this.pointer=0,this.pos=BigInt(0),this.size=e,this.littleEndian=!t,this.error=0,a&&a.view)this.size=a.length,this.buffer=a,this.data=a.view;else if(a&&!a.byteOffset)this.size=a.length,this.buffer=a,this.data=new DataView(this.buffer.buffer);else{if(a)throw new Error("not support subarray of ArrayBuffer");this.buffer=new Uint8Array(this.size),this.data=new DataView(this.buffer.buffer)}}writeUint8(e){this.remainingLength()<1&&this.flush(),this.data.setUint8(this.pointer,e),this.pointer++,this.pos++}writeUint16(e){this.remainingLength()<2&&this.flush(),this.data.setUint16(this.pointer,e,this.littleEndian),this.pointer+=2,this.pos+=BigInt(2)}writeUint24(e){this.remainingLength()<3&&this.flush();const t=(16711680&e)>>16,a=(65280&e)>>8,i=255&e;this.littleEndian?(this.writeUint8(i),this.writeUint8(a),this.writeUint8(t)):(this.writeUint8(t),this.writeUint8(a),this.writeUint8(i))}writeUint32(e){this.remainingLength()<4&&this.flush(),this.data.setUint32(this.pointer,e,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeUint64(e){this.remainingLength()<8&&this.flush(),this.data.setBigUint64(this.pointer,e,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}writeInt8(e){this.remainingLength()<1&&this.flush(),this.data.setInt8(this.pointer,e),this.pointer++,this.pos++}writeInt16(e){this.remainingLength()<2&&this.flush(),this.data.setInt16(this.pointer,e,this.littleEndian),this.pointer+=2,this.pos+=BigInt(2)}writeInt24(e){this.writeUint24(e<0?e+16777216:e)}writeInt32(e){this.remainingLength()<4&&this.flush(),this.data.setInt32(this.pointer,e,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeInt64(e){this.remainingLength()<8&&this.flush(),this.data.setBigInt64(this.pointer,e,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}writeFloat(e){this.remainingLength()<4&&this.flush(),this.data.setFloat32(this.pointer,e,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeDouble(e){this.remainingLength()<8&&this.flush(),this.data.setFloat64(this.pointer,e,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}getPointer(){return this.pointer}getPos(){return this.pos}remainingLength(){return this.size-this.pointer}writeBuffer(e){if(!e.length)return;let t=e.length;if(this.remainingLength()<t){let a=0;for(;t>0;){this.flush();const i=Math.min(this.size,t);this.buffer.set(e.subarray(a,a+i),this.pointer),this.pointer+=i,this.pos+=BigInt(i),a+=i,t-=i}}else this.buffer.set(e,this.pointer),this.pointer+=t,this.pos+=BigInt(t)}writeString(e){const t=r.encode(e);return this.writeBuffer(t),t.length}flush(){if(!this.onFlush)throw this.error=-1048574,Error("IOWriter error, flush failed because of no flush callback");if(this.pointer){const e=this.onFlush(this.buffer.subarray(0,this.pointer));if(0!==e)throw this.error=e,Error("IOWriter error, flush failed")}this.pointer=0}flushToPos(e){if(!this.onFlush)throw this.error=-1048574,Error("IOWriter error, flush failed because of no flush callback");if(this.pointer){const t=this.onFlush(this.buffer.subarray(0,this.pointer),e);if(0!==t)throw this.error=t,Error("IOWriter error, flush failed")}this.pointer=0}seek(e){if(!this.onSeek)throw this.error=-1048574,Error("IOWriter error, seek failed because of no seek callback");this.flush();const t=this.onSeek(e);if(0!==t)throw this.error=t,Error("IOWriter error, seek failed");this.pos=e}seekInline(e){const t=this.pointer;this.pointer=Math.max(0,Math.min(this.size,e)),this.pos+=BigInt(this.pointer-t)}skip(e){const t=this.pointer;this.pointer=Math.min(this.size,this.pointer+e),this.pos+=BigInt(this.pointer-t)}back(e){const t=this.pointer;this.pointer=Math.max(0,this.pointer-e),this.pos+=BigInt(this.pointer-t)}getBuffer(){return this.buffer.subarray(0,this.pointer)}setEndian(e){this.littleEndian=!e}reset(){this.pointer=0,this.pos=BigInt(0),this.error=0}getBufferSize(){return this.size}}}}]);