@libmedia/avplayer-ui 1.2.2 → 1.3.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 (122) hide show
  1. package/dist/esm/163.avplayer.js +1 -0
  2. package/dist/esm/182.avplayer.js +1 -0
  3. package/dist/esm/195.avplayer.js +1 -0
  4. package/dist/esm/199.avplayer.js +1 -0
  5. package/dist/esm/239.avplayer.js +1 -0
  6. package/dist/esm/248.avplayer.js +1 -0
  7. package/dist/esm/26.avplayer.js +1 -0
  8. package/dist/esm/261.avplayer.js +1 -0
  9. package/dist/esm/266.avplayer.js +1 -0
  10. package/dist/esm/325.avplayer.js +1 -0
  11. package/dist/esm/33.avplayer.js +1 -0
  12. package/dist/esm/384.avplayer.js +1 -1
  13. package/dist/esm/43.avplayer.js +1 -0
  14. package/dist/esm/462.avplayer.js +1 -0
  15. package/dist/esm/502.avplayer.js +1 -0
  16. package/dist/esm/573.avplayer.js +1 -0
  17. package/dist/esm/630.avplayer.js +1 -0
  18. package/dist/esm/641.avplayer.js +1 -0
  19. package/dist/esm/747.avplayer.js +1 -0
  20. package/dist/esm/749.avplayer.js +1 -0
  21. package/dist/esm/790.avplayer.js +1 -0
  22. package/dist/esm/794.avplayer.js +1 -0
  23. package/dist/esm/850.avplayer.js +1 -0
  24. package/dist/esm/881.avplayer.js +1 -0
  25. package/dist/esm/931.avplayer.js +1 -0
  26. package/dist/esm/932.avplayer.js +1 -0
  27. package/dist/esm/943.avplayer.js +1 -0
  28. package/dist/esm/956.avplayer.js +1 -0
  29. package/dist/esm/961.avplayer.js +1 -1
  30. package/dist/esm/97.avplayer.js +1 -0
  31. package/dist/esm/991.avplayer.js +1 -0
  32. package/dist/esm/avplayer.js +1 -1
  33. package/dist/umd/163.avplayer.js +1 -0
  34. package/dist/umd/182.avplayer.js +1 -0
  35. package/dist/umd/195.avplayer.js +1 -0
  36. package/dist/umd/199.avplayer.js +1 -0
  37. package/dist/umd/239.avplayer.js +1 -0
  38. package/dist/umd/248.avplayer.js +1 -0
  39. package/dist/umd/26.avplayer.js +1 -0
  40. package/dist/umd/{427.avplayer.js → 261.avplayer.js} +1 -1
  41. package/dist/umd/266.avplayer.js +1 -0
  42. package/dist/umd/325.avplayer.js +1 -0
  43. package/dist/umd/33.avplayer.js +1 -0
  44. package/dist/umd/384.avplayer.js +1 -1
  45. package/dist/umd/43.avplayer.js +1 -0
  46. package/dist/umd/462.avplayer.js +1 -0
  47. package/dist/umd/502.avplayer.js +1 -0
  48. package/dist/umd/573.avplayer.js +1 -0
  49. package/dist/umd/630.avplayer.js +1 -0
  50. package/dist/umd/641.avplayer.js +1 -0
  51. package/dist/umd/747.avplayer.js +1 -0
  52. package/dist/umd/749.avplayer.js +1 -0
  53. package/dist/umd/790.avplayer.js +1 -0
  54. package/dist/umd/794.avplayer.js +1 -0
  55. package/dist/umd/850.avplayer.js +1 -0
  56. package/dist/umd/881.avplayer.js +1 -0
  57. package/dist/umd/931.avplayer.js +1 -0
  58. package/dist/umd/932.avplayer.js +1 -0
  59. package/dist/umd/943.avplayer.js +1 -0
  60. package/dist/umd/956.avplayer.js +1 -0
  61. package/dist/umd/961.avplayer.js +1 -1
  62. package/dist/umd/97.avplayer.js +1 -0
  63. package/dist/umd/991.avplayer.js +1 -0
  64. package/dist/umd/avplayer.js +1 -1
  65. package/package.json +2 -2
  66. package/dist/esm/105.avplayer.js +0 -1
  67. package/dist/esm/153.avplayer.js +0 -1
  68. package/dist/esm/168.avplayer.js +0 -1
  69. package/dist/esm/171.avplayer.js +0 -1
  70. package/dist/esm/240.avplayer.js +0 -1
  71. package/dist/esm/259.avplayer.js +0 -1
  72. package/dist/esm/274.avplayer.js +0 -1
  73. package/dist/esm/296.avplayer.js +0 -1
  74. package/dist/esm/4.avplayer.js +0 -1
  75. package/dist/esm/405.avplayer.js +0 -1
  76. package/dist/esm/41.avplayer.js +0 -1
  77. package/dist/esm/423.avplayer.js +0 -1
  78. package/dist/esm/427.avplayer.js +0 -1
  79. package/dist/esm/452.avplayer.js +0 -1
  80. package/dist/esm/473.avplayer.js +0 -1
  81. package/dist/esm/475.avplayer.js +0 -1
  82. package/dist/esm/508.avplayer.js +0 -1
  83. package/dist/esm/535.avplayer.js +0 -1
  84. package/dist/esm/559.avplayer.js +0 -1
  85. package/dist/esm/567.avplayer.js +0 -1
  86. package/dist/esm/620.avplayer.js +0 -1
  87. package/dist/esm/628.avplayer.js +0 -1
  88. package/dist/esm/653.avplayer.js +0 -1
  89. package/dist/esm/820.avplayer.js +0 -1
  90. package/dist/esm/945.avplayer.js +0 -1
  91. package/dist/esm/953.avplayer.js +0 -1
  92. package/dist/esm/964.avplayer.js +0 -1
  93. package/dist/esm/965.avplayer.js +0 -1
  94. package/dist/esm/976.avplayer.js +0 -1
  95. package/dist/umd/105.avplayer.js +0 -1
  96. package/dist/umd/153.avplayer.js +0 -1
  97. package/dist/umd/168.avplayer.js +0 -1
  98. package/dist/umd/171.avplayer.js +0 -1
  99. package/dist/umd/240.avplayer.js +0 -1
  100. package/dist/umd/259.avplayer.js +0 -1
  101. package/dist/umd/274.avplayer.js +0 -1
  102. package/dist/umd/296.avplayer.js +0 -1
  103. package/dist/umd/4.avplayer.js +0 -1
  104. package/dist/umd/405.avplayer.js +0 -1
  105. package/dist/umd/41.avplayer.js +0 -1
  106. package/dist/umd/423.avplayer.js +0 -1
  107. package/dist/umd/452.avplayer.js +0 -1
  108. package/dist/umd/473.avplayer.js +0 -1
  109. package/dist/umd/475.avplayer.js +0 -1
  110. package/dist/umd/508.avplayer.js +0 -1
  111. package/dist/umd/535.avplayer.js +0 -1
  112. package/dist/umd/559.avplayer.js +0 -1
  113. package/dist/umd/567.avplayer.js +0 -1
  114. package/dist/umd/620.avplayer.js +0 -1
  115. package/dist/umd/628.avplayer.js +0 -1
  116. package/dist/umd/653.avplayer.js +0 -1
  117. package/dist/umd/820.avplayer.js +0 -1
  118. package/dist/umd/945.avplayer.js +0 -1
  119. package/dist/umd/953.avplayer.js +0 -1
  120. package/dist/umd/964.avplayer.js +0 -1
  121. package/dist/umd/965.avplayer.js +0 -1
  122. package/dist/umd/976.avplayer.js +0 -1
@@ -1 +0,0 @@
1
- (self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[452],{59829:(t,e,i)=>{i.d(e,{A:()=>o});var a=i(19371),r=i(42524),s=i(31184),n=i(62787);class o{constructor(){(0,a.A)(this,"inCodecpar",void 0),(0,a.A)(this,"inTimeBase",void 0),(0,a.A)(this,"outCodecpar",void 0)}init(t,e){return this.inCodecpar=(0,s.Gy)(168),(0,n.Yi)(this.inCodecpar,t),this.inTimeBase={den:r.f[15](e+4),num:r.f[15](e)},0}destroy(){this.inCodecpar&&((0,n.dn)(this.inCodecpar),this.inCodecpar=0)}}},53174:(t,e,i)=>{i.d(e,{A:()=>m});var a=i(19371),r=i(42524),s=i(77389),n=i(59829),o=i(41863),c=i(87339),d=i(1818),u=i(31184),f=i(47378),l=i(61556),p=i(73872),h=i(17635);class m extends n.A{constructor(){let t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];super(),(0,a.A)(this,"cache",void 0),(0,a.A)(this,"cached",void 0),(0,a.A)(this,"reverseSps",void 0),this.reverseSps=t}init(t,e){return super.init(t,e),this.cache=(0,d._5)(),this.cached=!1,0}destroy(){super.destroy(),(0,d.Qe)(this.cache),this.cache=0}sendAVPacket(t){if(64&r.f[15](t+36)){let e;(0,d.zu)(this.cache,t);const i=(0,o.JW)(r.f[20](t+24),r.f[15](t+28));if(27===r.f[15](this.inCodecpar+4)?e=l.oT(i,this.reverseSps):173===r.f[15](this.inCodecpar+4)?e=p.oT(i,this.reverseSps):196===r.f[15](this.inCodecpar+4)?e=h.oT(i,this.reverseSps):c.h2(`not support for codecId: ${r.f[15](this.inCodecpar+4)}`,"packages/avformat/src/bsf/h2645/Annexb2AvccFilter.ts",114),s.M[15](this.cache+36,-65&r.f[15](this.cache+36)),(0,d.NX)(this.cache,e.bufferPointer,e.length),e.key&&s.M[15](this.cache+36,1|r.f[15](this.cache+36)),e.extradata){const t=(0,u.sY)(e.extradata.length);(0,o.lW)(t,e.extradata.length,e.extradata),(0,d.Ow)(this.cache,1,t,e.extradata.length)}}else(0,d.rN)(this.cache,t);return this.cached=!0,0}receiveAVPacket(t){return this.cached?((0,d.Up)(t),(0,d.rN)(t,this.cache),this.cached=!1,0):f.LR}reset(){return 0}}},55242:(t,e,i)=>{i.d(e,{A:()=>r});var a=i(19371);class r{constructor(){(0,a.A)(this,"type",-1)}async destroy(t){}}(0,a.A)(r,"Capabilities",[])},98686:(t,e,i)=>{i.d(e,{A:()=>M});var a=i(19371),r=i(75354),s=i(42524),n=i(55242),o=i(6285),c=i(50012),d=i(31752),u=i(13101),f=i(78663),l=i(9233),p=i(39188),h=i(62204),m=i(53174),g=i(76070),k=i(41863),w=i(1818),b=i(30027),v=i(91278),U=i(95704),I=i(79939),P=i(25092),y=i(17630),S=i(33134),B=i(81819),A=i(87339),x=i(29592),T=i(21279);const C="packages/avformat/src/formats/OIsobmffFormat.ts",D={fragmentMode:0,mp4Mode:0,fragment:!1,fastOpen:!1,defaultBaseIsMoof:!1,reverseSpsInAvcc:!1,ignoreEncryption:!1,minFragmentLength:5e3,minFragmentIndexLength:5e3,hasTfra:!0,useMetadataTags:!1};class M extends n.A{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};super(),(0,a.A)(this,"type",1),(0,a.A)(this,"context",void 0),(0,a.A)(this,"options",void 0),(0,a.A)(this,"annexb2AvccFilter",void 0),(0,a.A)(this,"avpacket",void 0),this.options=P.X$({},D,t),this.context=(0,o.A)()}init(t){return t.ioWriter.setEndian(!0),t.streams.forEach((t=>{this.annexb2AvccFilter||27!==t.codecpar.codecId&&173!==t.codecpar.codecId&&196!==t.codecpar.codecId||(this.annexb2AvccFilter=new m.A(this.options.reverseSpsInAvcc),this.annexb2AvccFilter.init(t.codecpar[r.o9],t.timeBase[r.o9]))})),this.avpacket=(0,w._5)(),this.context.metadata=t.metadata,this.context.chapters=t.chapters,0}async destroy(t){this.annexb2AvccFilter&&(this.annexb2AvccFilter.destroy(),this.annexb2AvccFilter=null),this.avpacket&&((0,w.Qe)(this.avpacket),this.avpacket=0)}enableStreams(t){const e=[],i=[];for(let t=0;t<5;t++)e[t]=0,i[t]=-1;y.__(t.streams,((t,a)=>{if(-1===t.codecpar.codecType||t.codecpar.codecType>=5||1024&t.disposition)return!0;i[t.codecpar.codecType]<0&&(i[t.codecpar.codecType]=a),1&t.disposition&&(e[t.codecpar.codecType]++,t.privData.flags|=1)}));for(let a=0;a<5;a++)switch(a){case 0:case 1:case 3:e[a]>1&&(t.streams[e[a]].privData.perStreamGrouping=!0),!e[a]&&i[a]>=0&&(t.streams[i[a]].privData.flags|=1)}}writeHeader(t){this.context.majorBrand=(0,c.A)("isom"),this.context.minorVersion=512,this.context.compatibleBrand=[(0,c.A)("isom")],this.context.timescale=1e3,this.context.ignoreEncryption=this.options.ignoreEncryption,this.context.useMetadataTags=this.options.useMetadataTags;const e=t.streams.find((t=>1024&t.disposition&&(7===t.codecpar.codecId||61===t.codecpar.codecId||78===t.codecpar.codecId)));if(e&&e.attachedPic&&(this.context.covr={type:27,data:(0,w.iI)(e.attachedPic)},61===e.codecpar.codecId?this.context.covr.type=14:7===e.codecpar.codecId&&(this.context.covr.type=13)),this.options.fragment&&(this.context.compatibleBrand.push((0,c.A)("iso6")),this.context.fragment=!0),1===this.options.mp4Mode&&(this.context.isom=!0,this.context.majorBrand=(0,c.A)("qt "),this.context.compatibleBrand=[this.context.majorBrand]),1!==this.options.mp4Mode){this.context.compatibleBrand.push((0,c.A)("iso2"));const e=t.getStreamByMediaType(0);e&&27===e.codecpar.codecId&&this.context.compatibleBrand.push((0,c.A)("avc1")),this.context.compatibleBrand.push((0,c.A)("mp41"))}if(d.l7(t.ioWriter,this.context),this.context.holdMoovPos=t.ioWriter.getPos(),this.options.fragment)this.context.currentFragment={pos:BigInt(0),currentTrack:null,sequence:1,tracks:[],size:0,firstWrote:!1},y.__(t.streams,((t,e)=>{const i=(0,u.A)();if(t.privData=i,i.chunkOffsets=[],i.cttsSampleCounts=[],i.cttsSampleOffsets=[],i.stscFirstChunk=[],i.stscSamplesPerChunk=[],i.stscSampleDescriptionIndex=[],i.stssSampleNumbers=[],i.sampleSizes=[],i.sttsSampleCounts=[],i.sttsSampleDeltas=[],i.alternateGroup=e,!(1024&t.disposition)){const e=(0,f.A)();e.baseIsMoof=this.options.defaultBaseIsMoof,e.streamIndex=t.index,e.trackId=this.context.nextTrackId++,i.trackId=e.trackId;const a=this.options.encryption||t.metadata.encryption;if(a){const t=this.context.cencs||{};t[e.trackId]={schemeType:a.schemeType,schemeVersion:a.schemeVersion,cryptByteBlock:a.cryptByteBlock,skipByteBlock:a.skipByteBlock,defaultConstantIV:a.constantIV,isProtected:1,defaultPerSampleIVSize:a.perSampleIVSize,defaultKeyId:a.kid,pattern:!!a.pattern},this.context.cencs=t}e.ioWriter=new T.A,e.ioWriter.onFlush=t=>(e.buffers.push(t.slice()),0),this.context.currentFragment.tracks.push(e)}})),this.enableStreams(t),d.dI(t.ioWriter,t,this.context),t.ioWriter.flush();else{y.__(t.streams,((t,e)=>{const i=(0,u.A)();t.privData=i,i.trackId=this.context.nextTrackId++,i.chunkOffsets=[],i.cttsSampleCounts=[],i.cttsSampleOffsets=[],i.stscFirstChunk=[],i.stscSamplesPerChunk=[],i.stscSampleDescriptionIndex=[],i.stssSampleNumbers=[],i.sampleSizes=[],i.sttsSampleCounts=[],i.sttsSampleDeltas=[],i.alternateGroup=e})),this.enableStreams(t);const e=t.ioWriter.getPos();t.ioWriter.writeUint32(0),t.ioWriter.writeUint32((0,c.A)("mdat")),this.context.boxsPositionInfo.push({pos:e,type:"mdat",size:0})}return t.getStreamByMediaType(0)||(this.context.audioOnly=!0),0}updateCurrentChunk(t){let e=this.context.currentChunk;if(!e||!e.sampleCount)return;const i=t.streams.find((t=>t.index===e.streamIndex)).privData;i.chunkCount++,i.chunkOffsets.push(e.pos),i.stscFirstChunk.length?i.lastStscCount!==e.sampleCount&&(i.stscFirstChunk.push(i.chunkCount),i.stscSamplesPerChunk.push(e.sampleCount),i.stscSampleDescriptionIndex.push(1),i.lastStscCount=e.sampleCount):(i.stscFirstChunk.push(i.chunkCount),i.stscSamplesPerChunk.push(e.sampleCount),i.stscSampleDescriptionIndex.push(1),i.lastStscCount=e.sampleCount)}updateCurrentFragment(t,e){if(this.context.currentFragment.firstWrote){y.__(this.context.currentFragment.tracks,(i=>{const a=t.streams.find((t=>t.index===i.streamIndex));if(!i.sampleCount||!a)return!0;const r=a.privData;var s,n;i.baseDataOffset=t.ioWriter.getPos(),this.context.currentFragment.pos=t.ioWriter.getPos(),i.sampleDurations.length?e&&i.sampleDurations.length===i.sampleSizes.length-1&&i.sampleDurations.push(Number(e-r.lastDts)):1===a.codecpar.codecType?e?i.sampleDurations.push(Number(e-r.lastDts)):a.codecpar.frameSize>0?i.sampleDurations.push(Number((0,b.k)(BigInt(Math.floor(a.codecpar.frameSize/a.codecpar.sampleRate*v.SF)),v.KR,a.timeBase))):(a.codecpar.codecId,i.sampleDurations.push(Number((0,b.k)(BigInt(Math.floor(1024/a.codecpar.sampleRate*v.SF)),v.KR,a.timeBase)))):0===a.codecpar.codecType?e?i.sampleDurations.push(Number(e-r.lastDts)):(0,b.lb)(a.codecpar.framerate)>0?i.sampleDurations.push(Number((0,b.k)(BigInt(Math.floor(1/(0,b.lb)(a.codecpar.framerate)*v.SF)),v.KR,a.timeBase))):i.sampleDurations.push(a.timeBase.den/(30*a.timeBase.num)>>>0):i.sampleDurations.push(0),r.lastDuration=i.sampleDurations[i.sampleSizes.length-1],(1===i.sampleFlags.length||(0,h.A)(i.sampleFlags,1))&&(i.firstSampleFlags=i.sampleFlags[0],i.defaultSampleFlags=null!==(s=i.sampleFlags[1])&&void 0!==s?s:i.firstSampleFlags,i.sampleFlags=[]),(1===i.sampleSizes.length||(0,h.A)(i.sampleSizes))&&(i.defaultSampleSize=i.sampleSizes[0],i.sampleSizes=[]),(1===i.sampleDurations.length||(0,h.A)(i.sampleDurations))&&(i.defaultSampleDuration=i.sampleDurations[0],i.sampleDurations=[]),i.cenc&&(1===i.cenc.sampleSizes.length||(0,h.A)(i.cenc.sampleSizes))&&(i.cenc.defaultSampleInfoSize=i.cenc.sampleSizes[0],i.cenc.sampleSizes=[]),1===a.codecpar.codecType?i.defaultSampleFlags=33554432:i.sampleFlags.length&&(i.defaultSampleFlags=i.sampleFlags[0]),i.sampleSizes.length&&(i.defaultSampleSize=i.sampleSizes[0]),i.sampleDurations.length&&(i.defaultSampleDuration=i.sampleDurations[0]),this.options.hasTfra&&(!r.fragIndexes.length||0===this.options.fragmentMode||(0,b.k)(i.baseDataOffset-i.lastFragIndexDts,a.timeBase,v.i0)>=this.options.minFragmentIndexLength)&&(r.fragIndexes.push({pos:i.baseDataOffset,time:i.baseMediaDecodeTime+BigInt(Math.floor(null!==(n=i.sampleCompositionTimeOffset[0])&&void 0!==n?n:0))}),i.lastFragIndexDts=r.lastDts)})),t.ioWriter.flush(),this.options.onFragmentStart&&this.options.onFragmentStart(),d.Ro(t.ioWriter,t,this.context);let i=this.context.currentFragment.size+8;const a=[];let r=8;y.__(this.context.currentFragment.tracks,(e=>{if(!e.sampleCount)return!0;e.ioWriter.flush();const s=(0,S.A)(Uint8Array,e.buffers);e.dataOffset=i,i+=s.length,r+=s.length,a.push(s),(0,p.A)(t.ioWriter,e.dataOffsetPos,e.dataOffset,"int32"),e.cenc&&e.cenc.offsetPos&&(0,p.A)(t.ioWriter,e.cenc.offsetPos,e.cenc.offset,"int32"),e.buffers=[],e.sampleFlags=[],e.sampleSizes=[],e.sampleDurations=[],e.sampleCompositionTimeOffset=[],e.sampleCount=0,e.firstSampleFlags=0,e.cenc=null})),t.ioWriter.writeUint32(r),t.ioWriter.writeUint32((0,c.A)("mdat")),y.__(a,(e=>{t.ioWriter.writeBuffer(e)})),(0,l.A)(t.ioWriter,this.context),t.ioWriter.flush(),this.context.currentFragment.firstWrote=!1,this.context.currentFragment.sequence++}}handleEAC3(t,e){this.context.ac3Info||(this.context.ac3Info={done:!1,numBlocks:0,dataRate:0,ac3BitrateCode:-1,numIndSub:0,substream:[]});const i=this.context.ac3Info,a=I.R((0,k.s3)(s.f[20](t+24),s.f[15](t+28)));if(B.ai(a))i.done=!0;else if(i.dataRate=Math.max(i.dataRate,a.bitrate/1e3),i.ac3BitrateCode=Math.max(i.ac3BitrateCode,a.ac3BitrateCode),!i.done){if(a.bitstreamId<=10&&0!=a.substreamId)return;if(0===a.frameType||2==a.frameType){var r;if(a.substreamId>i.numIndSub+1)return;if(a.substreamId==i.numIndSub+1)return;if(a.substreamId<i.numIndSub||0==a.substreamId&&null!==(r=i.substream[0])&&void 0!==r&&r.bsid)return void(i.done=!0)}else if(0!=a.substreamId)return;if(i.substream[a.substreamId]||(i.substream[a.substreamId]={fscod:0,bsid:0,bsmod:0,acmod:0,lfeon:0,numDepSub:0,chanLoc:0}),i.substream[a.substreamId].fscod=a.srCode,i.substream[a.substreamId].bsid=a.bitstreamId,i.substream[a.substreamId].bsmod=a.bitstreamMode,i.substream[a.substreamId].acmod=a.channelMode,i.substream[a.substreamId].lfeon=a.lfeOn,86019===e.codecpar.codecId)return void(i.done=!0)}}writeTrackData(t,e,i,a){if(94226===a.codecpar.codecId){const r=a.privData;if(r.lastDuration>0){const n=r.lastDts+BigInt(Math.floor(r.lastDuration));if(n<i&&(0,b.k)(i-n,a.timeBase,v.i0)>200){t.writeUint32(8),t.writeString("vtte");const a=Number(i-n);if(this.context.fragment){const t=this.context.currentFragment.tracks.find((t=>t.streamIndex===s.f[15](e+32)));t.sampleCount++,t.sampleSizes.length||(t.baseMediaDecodeTime=n),t.sampleDurations.push(a),t.sampleSizes.push(8)}else{const t=Number(n-r.lastDts);this.context.currentChunk.sampleCount++,r.sampleSizes.push(8),r.sttsSampleDeltas[r.sttsSampleDeltas.length-1]===t?r.sttsSampleCounts[r.sttsSampleCounts.length-1]++:(r.sttsSampleCounts.push(1),r.sttsSampleDeltas.push(t))}r.lastPts=n,r.lastDts=n,r.lastDuration=a}}const n=(0,w.rU)(e,16),o=(0,w.rU)(e,17);let c=s.f[15](e+28)+8;return n&&(c+=8+(0|s.f[25](n+4))),o&&(c+=8+(0|s.f[25](o+4))),t.writeUint32(8+c),t.writeString("vttc"),n&&(t.writeUint32(8+s.f[25](n+4)),t.writeString("iden"),t.writeBuffer((0,k.s3)(s.f[20](n),s.f[25](n+4)))),o&&(t.writeUint32(8+s.f[25](o+4)),t.writeString("sttg"),t.writeBuffer((0,k.s3)(s.f[20](o),s.f[25](o+4)))),t.writeUint32(8+s.f[15](e+28)),t.writeString("payl"),t.writeBuffer((0,w.iI)(e)),8+c}return t.writeBuffer((0,w.iI)(e)),s.f[15](e+28)}writeAVPacket(t,e){if(!s.f[15](e+28))return A.R8(`packet's size is 0: ${s.f[15](e+32)}, ignore it`,C,781),0;const i=t.getStreamByIndex(s.f[15](e+32));if(!i||1024&i.disposition)return void A.R8(`can not found the stream width the avpacket's streamIndex: ${s.f[15](e+32)}, ignore it`,C,788);const a=i.privData;let r=(0,b.Mr)(s.f[17](e+16),e+72,i.timeBase),n=(0,b.Mr)(s.f[17](e+8)!==v.Dh?s.f[17](e+8):s.f[17](e+16),e+72,i.timeBase);const o=s.f[17](e+48)!==v.Dh?(0,b.Mr)(s.f[17](e+48),e+72,i.timeBase):v.Dh;if((27===i.codecpar.codecId||173===i.codecpar.codecId||196===i.codecpar.codecId)&&64&s.f[15](e+36)?(this.annexb2AvccFilter.sendAVPacket(e),this.annexb2AvccFilter.receiveAVPacket(this.avpacket),e=this.avpacket):86019!==i.codecpar.codecId&&86056!==i.codecpar.codecId||this.context.ac3Info&&this.context.ac3Info.done||this.handleEAC3(e,i),this.context.fragment){const c=this.context.currentFragment.tracks.find((t=>t.streamIndex===s.f[15](e+32)));if(c){c.tfdtDelay===v.Dh&&(c.tfdtDelay=r<0?-r:BigInt(0),n<0&&(c.trunPtsDelay=c.tfdtDelay)),r+=c.tfdtDelay,n+=c.trunPtsDelay,(0===this.options.fragmentMode&&(0===i.codecpar.codecType&&1&s.f[15](e+36)||this.context.audioOnly&&(0,b.k)(r-c.baseMediaDecodeTime,i.timeBase,v.i0)>=this.options.minFragmentLength)||1===this.options.fragmentMode)&&(1===this.context.currentFragment.tracks.length?this.updateCurrentFragment(t,r):this.updateCurrentFragment(t));const d=this.writeTrackData(c.ioWriter,e,r,i);if(c.sampleSizes.length||(c.baseMediaDecodeTime=r),c.sampleSizes.length&&(!c.sampleDurations[c.sampleSizes.length-1]||c.sampleDurations[c.sampleSizes.length-1]<=0)&&(c.sampleDurations[c.sampleSizes.length-1]=Number(r-a.lastDts)),o>0&&c.sampleDurations.push(Number(o)),c.sampleSizes.push(d),0===i.codecpar.codecType){let t=0;1&s.f[15](e+36)?t|=33554432:t|=16842752,c.sampleCompositionTimeOffset.push(Number((n!==v.Dh?n:r)-r)),c.sampleFlags.push(t)}const u=(0,w.Un)(e+40,e+44,25),f=this.context.cencs&&this.context.cencs[a.trackId];if(u&&f){const t=(0,U.p$)((0,k.s3)(s.f[20](u),s.f[25](u+4)));c.cenc||(c.cenc={sampleCount:0,defaultSampleInfoSize:0,sampleSizes:[],offset:0,useSubsamples:!1,sampleInfoOffset:[],sampleEncryption:[]}),t.subsamples.length&&(!c.cenc.useSubsamples&&c.cenc.sampleSizes.length&&(c.cenc.sampleSizes=c.cenc.sampleSizes.map((t=>t+2))),c.cenc.useSubsamples=!0),c.cenc.sampleCount++,c.cenc.sampleSizes.push(f.defaultPerSampleIVSize+(c.cenc.useSubsamples?2+6*t.subsamples.length:0)),c.cenc.sampleEncryption.push({iv:t.iv,subsamples:t.subsamples})}c.sampleCount++,a.lastPts=x.T9(a.lastPts,n+(o!==v.Dh?o:BigInt(0))),a.lastDts=r,o>0&&(a.lastDuration=Number(o)),this.context.currentFragment.firstWrote=!0}else A.R8(`can not found track width streamIndex ${s.f[15](e+32)}, ignore it`,C,926)}else{const c=t.ioWriter.getPos();let d=this.context.currentChunk;if(d?d.streamIndex!==s.f[15](e+32)?(this.updateCurrentChunk(t),d.streamIndex=s.f[15](e+32),d.sampleCount=1,d.pos=c):d.sampleCount++:d=this.context.currentChunk={pos:c,streamIndex:s.f[15](e+32),sampleCount:1},a.sampleSizes.push(this.writeTrackData(t.ioWriter,e,r,i)),0===i.codecpar.codecType&&1&s.f[15](e+36)&&a.stssSampleNumbers.push(a.sampleSizes.length),a.firstWrote){const t=Number(r-a.lastDts);a.sttsSampleDeltas[a.sttsSampleDeltas.length-1]===t?a.sttsSampleCounts[a.sttsSampleCounts.length-1]++:(a.sttsSampleCounts.push(1),a.sttsSampleDeltas.push(t))}else a.startDts=r,a.startCT=Number((n!==v.Dh?n:r)-r),a.firstWrote=!0;if(n>=0&&(a.startPts===v.Dh?a.startPts=n:a.startPts=x.jk(a.startPts,n)),0===i.codecpar.codecType){const t=Number((n!==v.Dh?n:r)-r);a.cttsSampleCounts.length&&a.cttsSampleOffsets[a.cttsSampleOffsets.length-1]===t?a.cttsSampleCounts[a.cttsSampleCounts.length-1]++:(a.cttsSampleCounts.push(1),a.cttsSampleOffsets.push(t))}a.lastPts=x.T9(a.lastPts,n+(o!==v.Dh?o:BigInt(0))),a.lastDts=r,a.lastDuration=Number(o)}return 0}writeTrailer(t){if(this.context.fragment)y.__(this.context.currentFragment.tracks,(e=>{const i=t.streams.find((t=>t.index===e.streamIndex)).privData;e.sampleCount&&(e.sampleDurations.length?e.sampleDurations.push(e.sampleDurations[e.sampleDurations.length-1]):e.sampleDurations=[i.lastDuration])})),this.updateCurrentFragment(t),this.options.hasTfra?d.yT(t.ioWriter,t,this.context):(t.ioWriter.writeUint32(8),t.ioWriter.writeString("mfra")),t.ioWriter.flush();else{this.updateCurrentChunk(t);let e=BigInt(0);y.__(t.streams,(t=>{if(1024&t.disposition)return!0;const i=t.privData;i.sampleSizes.length&&(i.sttsSampleDeltas.length?i.lastDuration>0&&i.lastDuration!==i.sttsSampleDeltas[i.sttsSampleDeltas.length-1]?(i.sttsSampleCounts.push(1),i.sttsSampleDeltas.push(i.lastDuration)):i.sttsSampleCounts[i.sttsSampleCounts.length-1]++:(i.sttsSampleCounts=[1],i.sttsSampleDeltas=[0]));const a=(0,b.k)((0,g.A)(i),t.timeBase,{den:1e3,num:1});a>e&&(e=a)})),this.context.duration=e;const i=this.context.boxsPositionInfo[this.context.boxsPositionInfo.length-1];if("mdat"!==i.type&&A.z3("last box is not mdat",C,1053),i.size=Number(t.ioWriter.getPos()-i.pos),i.size>v.f7){const e=t.ioWriter.getPos();t.ioWriter.seek(i.pos-BigInt(8)),t.ioWriter.writeUint32(1),t.ioWriter.writeUint32((0,c.A)("mdat")),t.ioWriter.writeUint64(BigInt(i.size)+BigInt(8)),t.ioWriter.seek(e),this.context.boxsPositionInfo.pop(),this.context.use64Mdat=!0}if((0,l.A)(t.ioWriter,this.context),this.options.fastOpen){t.ioWriter.flush();let e=[];const i=t.ioWriter.onFlush;t.ioWriter.onFlush=t=>(e.push(t.slice()),0),d.dI(t.ioWriter,t,this.context),t.ioWriter.flush();let a=(0,S.A)(Uint8Array,e);y.__(t.streams,(t=>{const e=t.privData;if(e.chunkOffsets.length)for(let t=0;t<e.chunkOffsets.length;t++)e.chunkOffsets[t]+=BigInt(Math.floor(a.length))})),e=[],d.dI(t.ioWriter,t,this.context),t.ioWriter.flush(),a=(0,S.A)(Uint8Array,e),i&&i(a,this.context.holdMoovPos),t.ioWriter.onFlush=i}else d.dI(t.ioWriter,t,this.context),t.ioWriter.flush()}return 0}flush(t){return this.options.fragment&&(y.__(this.context.currentFragment.tracks,(e=>{const i=t.streams.find((t=>t.index===e.streamIndex)).privData;e.sampleCount&&(e.sampleDurations.length?e.sampleDurations.push(e.sampleDurations[e.sampleDurations.length-1]):e.sampleDurations=[i.lastDuration])})),this.updateCurrentFragment(t)),t.ioWriter.flush(),0}getCapabilities(){return M.Capabilities}}(0,a.A)(M,"Capabilities",[86021,86076,86018,86017,86028,86051,86019,86056,167,225,27,173,196,12,94226,94213])},76070:(t,e,i)=>{i.d(e,{A:()=>r});var a=i(91278);function r(t){return t.startPts!==a.Dh?t.lastPts-t.startPts:t.startDts===a.Dh?t.lastPts:t.lastPts-(t.startDts+BigInt(0|t.startCT))}},9233:(t,e,i)=>{i.d(e,{A:()=>r});var a=i(17630);function r(t,e){const i=t.getPos(),r=t.getPointer(),s=i-BigInt(Math.floor(r)),n=[];a.__(e.boxsPositionInfo,(e=>{e.pos<i&&e.pos>=s?(t.seekInline(r+Number(e.pos-i)),t.writeUint32(e.size)):n.push(e)})),t.seekInline(r),n.length&&(a.__(n,(e=>{t.seek(e.pos),t.writeUint32(e.size)})),t.seek(i)),e.boxsPositionInfo=[]}},26201:(t,e,i)=>{i.d(e,{BB:()=>r,Ip:()=>s,Jl:()=>a});const a={1:function(t,e){return[{type:"tkhd"},{type:"mdia",children:[{type:"mdhd"},{type:"hdlr"},{type:"minf",children:[{type:"smhd"},t.isom?{type:"minf_hdlr"}:null,{type:"dinf",children:[{type:"dref",children:[{type:"url "}]}]},{type:"stbl",children:[{type:"stsd"},{type:"stts"},{type:"stsc"},{type:"stsz"},{type:"stco"}]}]}]}]},0:function(t,e){return[{type:"tkhd"},{type:"mdia",children:[{type:"mdhd"},{type:"hdlr"},{type:"minf",children:[{type:"vmhd"},t.isom?{type:"minf_hdlr"}:null,{type:"dinf",children:[{type:"dref",children:[{type:"url "}]}]},{type:"stbl",children:[{type:"stsd"},{type:"stts"},{type:"stsc"},{type:"stsz"},{type:"stco"}]}]}]}]},3:function(t,e){return[{type:"tkhd"},{type:"mdia",children:[{type:"mdhd"},{type:"hdlr"},{type:"minf",children:[{type:94232===e.codecpar.codecId?"sthd":"nmhd"},t.isom?{type:"minf_hdlr"}:null,{type:"dinf",children:[{type:"dref",children:[{type:"url "}]}]},{type:"stbl",children:[{type:"stsd"},{type:"stts"},{type:"stsc"},{type:"stsz"},{type:"stco"}]}]}]}]}},r={1:function(t,e){return[{type:"tkhd"},{type:"edts"},{type:"mdia",children:[{type:"mdhd"},{type:"hdlr"},{type:"minf",children:[{type:"smhd"},t.isom?{type:"minf_hdlr"}:null,{type:"dinf",children:[{type:"dref",children:[{type:"url "}]}]},{type:"stbl",children:[{type:"stsd"},{type:"stts"},{type:"stsc"},{type:"stsz"},{type:t.use64Mdat?"co64":"stco"}]}]}]}]},0:function(t,e){let i=!0;if(27===e.codecpar.codecId||173===e.codecpar.codecId||196===e.codecpar.codecId){const t=e.privData;2&e.codecpar.flags&&(!t.cttsSampleCounts||!t.cttsSampleCounts.length||1===t.cttsSampleCounts.length&&0===t.cttsSampleOffsets[0])&&(i=!1)}return[{type:"tkhd"},{type:"edts"},{type:"mdia",children:[{type:"mdhd"},{type:"hdlr"},{type:"minf",children:[{type:"vmhd"},t.isom?{type:"minf_hdlr"}:null,{type:"dinf",children:[{type:"dref",children:[{type:"url "}]}]},{type:"stbl",children:[{type:"stsd"},{type:"stts"},{type:"stss"},i?{type:"ctts"}:null,{type:"stsc"},{type:"stsz"},{type:t.use64Mdat?"co64":"stco"}]}]}]}]},3:function(t,e){return[{type:"tkhd"},{type:"edts"},{type:"mdia",children:[{type:"mdhd"},{type:"hdlr"},{type:"minf",children:[{type:94232===e.codecpar.codecId?"sthd":"nmhd"},t.isom?{type:"minf_hdlr"}:null,{type:"dinf",children:[{type:"dref",children:[{type:"url "}]}]},{type:"stbl",children:[{type:"stsd"},{type:"stts"},{type:"stsc"},{type:"stsz"},{type:t.use64Mdat?"co64":"stco"}]}]}]}]}},s=function(t){return[{type:"tfhd"},{type:"tfdt"},{type:"trun"},t.cenc&&(t.cenc.defaultSampleInfoSize||t.cenc.sampleSizes.length)?{type:"saiz"}:null,t.cenc&&(t.cenc.defaultSampleInfoSize||t.cenc.sampleSizes.length)?{type:"saio"}:null,t.cenc?{type:"senc"}:null]}},31752:(t,e,i)=>{i.d(e,{Ro:()=>w,dI:()=>k,l7:()=>m,yT:()=>b});var a=i(75354),r=i(42524),s=i(50012),n=i(76202),o=i(64080),c=i(26201),d=i(9233),u=i(17630),f=i(4068),l=i(41863),p=i(1818),h=i(95704);function m(t,e){t.flush();const i=t.getPointer(),a=t.getPos();t.writeUint32(0),t.writeUint32((0,s.A)("ftyp")),t.writeUint32(e.majorBrand||(0,s.A)("isom")),t.writeUint32(e.minorVersion||512),u.__(e.compatibleBrand,(e=>{t.writeUint32(e)})),function(t,e,i){const a=t.getPointer();t.seekInline(e),t.writeUint32(i),t.seekInline(a)}(t,i,Number(t.getPos()-a)),e.isom?(t.writeUint32(8),t.writeUint32((0,s.A)("wide"))):e.fragment||(t.writeUint32(8),t.writeUint32((0,s.A)("free")))}function g(t,e,i,a){u.__(e,(e=>{if(!e)return!0;if(o.A[e.type])o.A[e.type](t,i,a);else if(e.children){const r=t.getPos();t.writeUint32(0),t.writeUint32((0,s.A)(e.type)),g(t,e.children,i,a),a.boxsPositionInfo.push({pos:r,type:e.type,size:Number(t.getPos()-r)})}else!function(t,e){const i=u.zy(n._l,e);t.writeUint32(i?12:8),t.writeUint32((0,s.A)(e)),i&&t.writeUint32(0)}(t,e.type)}))}function k(t,e,i){var n;const m=t.getPos();t.writeUint32(0),t.writeUint32((0,s.A)("moov")),o.A.mvhd(t,null,i),u.__(e.streams,(e=>{if(1024&e.disposition||1!==e.codecpar.codecType&&0!==e.codecpar.codecType&&3!==e.codecpar.codecType)return!0;const a=t.getPos();t.writeUint32(0),t.writeUint32((0,s.A)("trak")),g(t,i.fragment?c.Jl[e.codecpar.codecType](i,e):c.BB[e.codecpar.codecType](i,e),e,i);const r=e.metadata.title;if(r){const e=f.encode(r);t.writeUint32(16+e.length),t.writeUint32((0,s.A)("udta")),t.writeUint32(8+e.length),t.writeUint32((0,s.A)("name")),t.writeBuffer(e)}i.boxsPositionInfo.push({pos:a,type:"trak",size:Number(t.getPos()-a)})}));let k=t.getPos();if(t.writeUint32(0),t.writeUint32((0,s.A)("udta")),o.A.meta(t,null,i),null!==(n=i.chapters)&&void 0!==n&&n.length&&o.A.chpl(t,null,i),i.boxsPositionInfo.push({pos:k,type:"udta",size:Number(t.getPos()-k)}),i.fragment){const n=t.getPos();t.writeUint32(0),t.writeUint32((0,s.A)("mvex")),u.__(e.streams,(e=>{if(1024&e.disposition||1!==e.codecpar.codecType&&0!==e.codecpar.codecType&&3!==e.codecpar.codecType)return!0;o.A.trex(t,e,i)})),i.boxsPositionInfo.push({pos:n,type:"mvex",size:Number(t.getPos()-n)}),i.ignoreEncryption||function(t,e,i){const n=[];u.__(e.streams,(t=>{const e=(0,p.Un)(t.codecpar[a.o9]+20,t.codecpar[a.o9]+24,24);e&&(0,h.ZK)((0,l.s3)(r.f[20](e),r.f[25](e+4))).forEach((t=>{(function(t){if(!n.length)return!1;for(let e=0;e<n.length;e++){const i=n[e];if(!u.FB(i.systemId,t.systemId))return!1;if(!i.keyIds||!t.keyIds)return!1;if(i.keyIds.length!==t.keyIds.length)return!1;for(let e=0;e<i.keyIds.length;e++)if(!u.FB(i.keyIds[e],t.keyIds[e]))return!1;if(!u.FB(i.data,t.data))return!1}return!0})(t)||n.push(t)}))})),n.length&&n.forEach((e=>{const a=t.getPos();t.writeUint32(0),t.writeUint32((0,s.A)("pssh")),t.writeUint8(1),t.writeUint24(0),t.writeBuffer(e.systemId),t.writeUint32(e.keyIds.length),e.keyIds.forEach((e=>{t.writeBuffer(e)})),t.writeUint32(e.data.length),t.writeBuffer(e.data),i.boxsPositionInfo.push({pos:a,type:"pssh",size:Number(t.getPos()-a)})}))}(t,e,i)}i.boxsPositionInfo.push({pos:m,type:"moov",size:Number(t.getPos()-m)}),(0,d.A)(t,i)}function w(t,e,i){const a=t.getPos();t.writeUint32(0),t.writeUint32((0,s.A)("moof")),o.A.mfhd(t,null,i),u.__(i.currentFragment.tracks,(a=>{if(!a.sampleCount)return!0;const r=t.getPos();t.writeUint32(0),t.writeUint32((0,s.A)("traf"));const n=e.streams.find((t=>t.privData.trackId===a.trackId));g(t,(0,c.Ip)(a),n,i),i.boxsPositionInfo.push({pos:r,type:"traf",size:Number(t.getPos()-r)})}));const r=Number(t.getPos()-a);i.boxsPositionInfo.push({pos:a,type:"moof",size:r}),i.currentFragment.size=r}function b(t,e,i){let a=24;u.__(i.currentFragment.tracks,(t=>{const i=e.streams.find((e=>e.index===t.streamIndex)).privData;i.fragIndexes.length&&(a+=24+19*i.fragIndexes.length)})),t.writeUint32(a),t.writeString("mfra"),u.__(i.currentFragment.tracks,(i=>{const a=e.streams.find((t=>t.index===i.streamIndex)).privData;a.fragIndexes.length&&(t.writeUint32(24+19*a.fragIndexes.length),t.writeString("tfra"),t.writeUint8(1),t.writeUint24(0),t.writeUint32(i.trackId),t.writeUint32(0),t.writeUint32(a.fragIndexes.length),a.fragIndexes.forEach((e=>{t.writeUint64(e.time),t.writeUint64(e.pos),t.writeUint8(1),t.writeUint8(1),t.writeUint8(1)})))})),t.writeUint32(16),t.writeString("mfro"),t.writeUint32(0),t.writeUint32(a)}},34085:(t,e,i)=>{i.d(e,{A:()=>r});var a=i(41863);function r(t,e,i){var r;t.writeUint32(8+(null!==(r=e.codecpar.extradataSize)&&void 0!==r?r:0)),t.writeString("av1C"),i.fragment&&e.sideData[1]?(t.writeBuffer(e.sideData[1]),delete e.sideData[1]):e.codecpar.extradata&&t.writeBuffer((0,a.s3)(e.codecpar.extradata,e.codecpar.extradataSize))}},87451:(t,e,i)=>{i.d(e,{A:()=>n});var a=i(41863),r=i(61556),s=i(5639);function n(t,e,i){let n;i.fragment&&e.sideData[1]?(n=e.sideData[1],delete e.sideData[1]):e.codecpar.extradata&&(n=(0,a.s3)(e.codecpar.extradata,e.codecpar.extradataSize)),n&&s.Bs(n)&&(n=r.S1(n)),t.writeUint32(8+(n?n.length:0)),t.writeString("avcC"),n&&t.writeBuffer(n)}},97878:(t,e,i)=>{function a(t,e,i){t.writeUint32(20),t.writeString("btrt"),t.writeUint32(0),t.writeUint32(0),t.writeUint32(0)}i.d(e,{A:()=>a})},49569:(t,e,i)=>{i.d(e,{A:()=>n});var a=i(81819),r=i(4068),s=i(30027);function n(t,e,i){const n=t.getPos();t.writeUint32(0),t.writeString("chpl"),t.writeUint32(16777216),t.writeUint32(0);const o=i.chapters;t.writeUint8(o.length),o.forEach((e=>{t.writeUint64((0,s.k)(e.start,e.timeBase,{num:1,den:1e7}));let i=e.metadata.title;if(i&&a.Yj(i)){let e=r.encode(i);e.length>255&&(e=e.slice(0,255)),t.writeUint8(e.length),t.writeBuffer(e)}else t.writeUint8(0)})),i.boxsPositionInfo.push({pos:n,type:"chpl",size:Number(t.getPos()-n)})}},71354:(t,e,i)=>{function a(t,e,i){const a=e.privData.chunkOffsets||[];t.writeUint32(16+8*a.length),t.writeString("co64"),t.writeUint8(0),t.writeUint24(0),t.writeUint32(a.length);for(let e=0;e<a.length;e++)t.writeUint64(a[e])}i.d(e,{A:()=>a})},82886:(t,e,i)=>{function a(t,e,i){const a=e.sideData[28];if(a)t.writeUint32(12+a.length),t.writeString("colr"),t.writeString("prof"),t.writeBuffer(a);else{const i=2===e.codecpar.colorRange;t.writeUint32(19),t.writeString("colr"),t.writeString("nclx"),t.writeUint16(e.codecpar.colorPrimaries),t.writeUint16(e.codecpar.colorTrc),t.writeUint16(e.codecpar.colorSpace),t.writeUint8(i?128:0)}}i.d(e,{A:()=>a})},16868:(t,e,i)=>{i.d(e,{A:()=>s});var a=i(87339);const r="packages/avformat/src/formats/isobmff/writing/ctts.ts";function s(t,e,i){const s=e.privData,n=s.cttsSampleCounts||[],o=s.cttsSampleOffsets||[];n.length!==o.length&&a.R8("ctts sampleCounts's length is not match sampleOffsets's length",r,39);const c=Math.min(n.length,o.length);t.writeUint32(16+8*c),t.writeString("ctts"),t.writeUint8(1),t.writeUint24(0),t.writeUint32(c);for(let e=0;e<c;e++)t.writeUint32(n[e]),t.writeInt32(o[e])}},64551:(t,e,i)=>{i.d(e,{A:()=>r});var a=i(56772);function r(t,e,i){t.writeUint32(11),t.writeString("dac3");const r=new a.A(3),s=i.ac3Info;r.writeU(2,s.substream[0].fscod),r.writeU(5,s.substream[0].bsid),r.writeU(3,s.substream[0].bsmod),r.writeU(3,s.substream[0].acmod),r.writeU(1,s.substream[0].lfeon),r.writeU(5,s.ac3BitrateCode),r.writeU(5,0),t.writeBuffer(r.getBuffer())}},43171:(t,e,i)=>{i.d(e,{A:()=>r});var a=i(56772);function r(t,e,i){const r=i.ac3Info,s=new a.A(2+(34*(r.numIndSub+1)+7>>3));s.writeU(13,r.dataRate),s.writeU(3,r.numIndSub);for(let t=0;t<r.numIndSub;t++)s.writeU(2,r.substream[t].fscod),s.writeU(5,r.substream[t].bsid),s.writeU(1,0),s.writeU(1,0),s.writeU(3,r.substream[t].bsmod),s.writeU(3,r.substream[t].acmod),s.writeU(1,r.substream[t].lfeon),s.writeU(5,0),s.writeU(4,r.substream[t].numDepSub),r.substream[t].numDepSub?s.writeU(9,r.substream[t].chanLoc):s.writeU(1,0);s.padding();const n=s.getPointer();t.writeUint32(8+n),t.writeString("dec3"),t.writeBuffer(s.getBuffer().subarray(0,n))}},23911:(t,e,i)=>{i.d(e,{A:()=>o});var a=i(87339),r=i(41863),s=i(59586);const n="packages/avformat/src/formats/isobmff/writing/dfla.ts";function o(t,e,i){let o;i.fragment&&e.sideData[1]?(o=e.sideData[1],delete e.sideData[1]):e.codecpar.extradata&&(o=(0,r.s3)(e.codecpar.extradata,e.codecpar.extradataSize)),o&&o.length===s.ob?(t.writeUint32(o.length+16),t.writeString("dfLa"),t.writeUint8(0),t.writeUint24(0),t.writeUint8(128),t.writeUint24(o.length),t.writeBuffer(o)):a.z3("invalid extradata",n,55)}},8670:(t,e,i)=>{i.d(e,{A:()=>s});var a=i(54570),r=i(41863);function s(t,e,i){let s;if(i.fragment&&e.sideData[1]?(s=e.sideData[1],delete e.sideData[1]):e.codecpar.extradata&&(s=(0,r.s3)(e.codecpar.extradata,e.codecpar.extradataSize)),!s||s.length<19)t.writeUint32(19),t.writeString("dOps"),t.writeUint8(0),t.writeUint8(e.codecpar.chLayout.nbChannels),t.writeUint16(e.codecpar.initialPadding),t.writeUint32(e.codecpar.sampleRate),t.writeUint16(0),t.writeUint8(0);else{const e=new a.A(s,!1);t.writeUint32(s.length),t.writeString("dOps"),t.writeUint8(0),e.seek(9),t.writeUint8(e.readUint8()),t.writeUint16(e.readUint16()),t.writeUint32(e.readUint32()),t.writeUint16(e.readUint16()),t.writeBuffer(s.subarray(18))}}},80127:(t,e,i)=>{function a(t,e,i){t.writeUint32(28),t.writeString("dref"),t.writeUint32(0),t.writeUint32(1),t.writeUint32(12),t.writeString("url "),t.writeUint32(1)}i.d(e,{A:()=>a})},91022:(t,e,i)=>{i.d(e,{A:()=>n});var a=i(76070),r=i(91278),s=i(30027);function n(t,e,i){const n=e.privData;let o=(0,s.k)((0,a.A)(n),e.timeBase,{den:i.timescale,num:1}),c=n.startCT;const d=(0,s.k)(n.startDts+BigInt(Math.floor(c)),e.timeBase,{den:i.timescale,num:1});let u=o<r.go?0:1;u|=d<r.go?0:1;const f=1+(d>0?1:0),l=24+f*(1===u?20:12);t.writeUint32(l),t.writeString("edts"),t.writeUint32(l-8),t.writeString("elst"),t.writeUint8(u),t.writeUint24(0),t.writeUint32(f),d>0?(1===u?(t.writeUint64(d),t.writeInt64(r.Dh)):(t.writeUint32(Number(d)),t.writeInt32(-1)),t.writeUint32(65536)):(c=-Math.min(Number(n.startDts),0),o+=d),i.fragment&&(o=BigInt(0)),1===u?(t.writeUint64(o),t.writeInt64(BigInt(Math.floor(c)))):(t.writeUint32(Number(o)),t.writeInt32(c)),t.writeUint32(65536)}},94919:(t,e,i)=>{i.d(e,{A:()=>n});var a=i(39947),r=i(41863);function s(t,e,i){t.writeUint8(e);for(let e=3;e>0;e--)t.writeUint8(i>>7*e|128);t.writeUint8(127&i)}function n(t,e,i){const n=e.privData,o=e.codecpar.extradata?5+e.codecpar.extradataSize:0,c=t.getPos();t.writeUint32(0),t.writeString("esds"),t.writeUint32(0),s(t,3,21+o+5+1),t.writeUint16(n.trackId),t.writeUint8(0),s(t,4,13+o),(86016===e.codecpar.codecId||86017===e.codecpar.codecId)&&e.codecpar.sampleRate>24e3?t.writeUint8(107):t.writeUint8(a.zs[e.codecpar.codecId]),94208===e.codecpar.codecId?t.writeUint8(225):1===e.codecpar.codecType?t.writeUint8(21):t.writeUint8(17),t.writeUint24(0),t.writeUint32(0),t.writeUint32(0),e.codecpar.extradata&&(s(t,5,e.codecpar.extradataSize),t.writeBuffer((0,r.s3)(e.codecpar.extradata,e.codecpar.extradataSize))),s(t,6,1),t.writeUint8(2),i.boxsPositionInfo.push({pos:c,type:"esds",size:Number(t.getPos()-c)})}},18763:(t,e,i)=>{function a(t,e,i,a,r,s,n){t.writeInt32(Math.floor(65536*e)),t.writeInt32(Math.floor(65536*i)),t.writeInt32(0),t.writeInt32(Math.floor(65536*a)),t.writeInt32(Math.floor(65536*r)),t.writeInt32(0),t.writeInt32(Math.floor(65536*s)),t.writeInt32(Math.floor(65536*n)),t.writeInt32(1073741824)}i.d(e,{A:()=>a})},77252:(t,e,i)=>{function a(t,e,i){const a=t.getPos();t.writeUint32(0),t.writeString("hdlr"),t.writeUint8(0),t.writeUint24(0);let r="dhlr",s="url ",n="DataHandler";e&&(r="mhlr",1===e.codecpar.codecType?(s="soun",n="SoundHandler"):0===e.codecpar.codecType?(s="vide",n="VideoHandler"):3===e.codecpar.codecType?(s="text",n="SubtitleHandler"):(e.metadata.handlerName&&(n=e.metadata.handlerName),e.metadata.hdlrType&&(s=e.metadata.hdlrType))),t.writeString(r),t.writeString(s),t.writeUint32(0),t.writeUint32(0),t.writeUint32(0),e&&!i.isom||t.writeUint8(n.length),t.writeString(n),e&&!i.isom&&t.writeUint8(0),i.boxsPositionInfo.push({pos:a,type:"hdlr",size:Number(t.getPos()-a)})}i.d(e,{A:()=>a})},7374:(t,e,i)=>{i.d(e,{A:()=>n});var a=i(41863),r=i(73872),s=i(5639);function n(t,e,i){let n;i.fragment&&e.sideData[1]?(n=e.sideData[1],delete e.sideData[1]):e.codecpar.extradata&&(n=(0,a.s3)(e.codecpar.extradata,e.codecpar.extradataSize)),n&&s.Bs(n)&&(n=r.S1(n)),t.writeUint32(8+(n?n.length:0)),t.writeString("hvcC"),n&&t.writeBuffer(n)}},67027:(t,e,i)=>{i.d(e,{A:()=>n});var a=i(76070),r=i(81819),s=i(91278);function n(t,e,i){const n=e.privData,o=(0,a.A)(n),c=e.metadata.creationTime||0,d=e.metadata.modificationTime||0;let u=21956,f=e.metadata.language;f&&r.Yj(f)&&f.length>=3&&(u=(f.charCodeAt(0)-96&31)<<10|(f.charCodeAt(1)-96&31)<<5|f.charCodeAt(2)-96&31);let l=o<BigInt(s.f7)?0:1;l=c<s.f7?0:1,l=d<s.f7?0:1,t.writeUint32(1===l?44:32),t.writeString("mdhd"),t.writeUint8(l),t.writeUint24(0),1===l?(t.writeUint64(c),t.writeUint64(d)):(t.writeUint32(Number(c)),t.writeUint32(Number(d))),t.writeUint32(e.timeBase.den),1===l?t.writeUint64(o):t.writeUint32(Number(o)),t.writeUint16(u),t.writeUint16(0)}},85947:(t,e,i)=>{i.d(e,{A:()=>c});var a=i(7761),r=i(50012),s=i(25092),n=i(81819),o=i(4068);function c(t,e,i){const c=t.getPos();t.writeUint32(0),t.writeString("meta"),t.writeUint32(0),t.writeUint32(33),t.writeString("hdlr"),t.writeUint32(0),t.writeString("dhlr"),t.writeString(i.useMetadataTags?"mdta":"mdir"),t.writeUint32(0),t.writeUint32(0),t.writeUint32(0),t.writeUint8(0);let d=[],u=[];const f=s.BE(a.c);function l(t){return i.useMetadataTags?(d.push(t),d.length):f[t]||4===t.length?(0,r.A)(f[t]||t):void 0}if(u.push({key:l("encoder"),value:"libmedia-v1.2.0-8-g3b900f94"}),i.covr&&u.push({key:l("covr"),value:i.covr.data,type:i.covr.type}),i.metadata&&s.__(i.metadata,((t,e)=>{if((n.Yj(t)||n.ai(t)||t instanceof Uint8Array)&&"encoder"!==e.toLocaleLowerCase()){let i=l(e);i&&u.push({key:i,value:t})}})),d.length&&(t.writeUint32(16+d.reduce(((t,e)=>t+(8+e.length)),0)),t.writeString("keys"),t.writeUint32(0),t.writeUint32(d.length),d.forEach((e=>{t.writeUint32(e.length+8),t.writeString("mdta"),t.writeString(e)}))),u.length){const e=t.getPos();t.writeUint32(0),t.writeString("ilst"),u.forEach((e=>{let i,a=0,r=0;if(n.ai(e.value))a=Math.trunc(e.value)===e.value?e.value<0?21:22:23,r=4;else if(e.value instanceof Uint8Array){var s;a=null!==(s=e.type)&&void 0!==s?s:0,r=e.value.length}else{if(!n.Yj(e.value))return;a=1,i=o.encode(e.value),r=i.length}t.writeUint32(24+r),t.writeUint32(e.key),t.writeUint32(16+r),t.writeString("data"),t.writeUint32(a),t.writeUint32(0),0===a||e.value instanceof Uint8Array?t.writeBuffer(e.value):1===a?t.writeBuffer(i):21===a?t.writeInt32(e.value):22===a?t.writeUint32(e.value):23===a&&t.writeFloat(e.value)})),i.boxsPositionInfo.push({pos:e,type:"ilst",size:Number(t.getPos()-e)})}i.boxsPositionInfo.push({pos:c,type:"meta",size:Number(t.getPos()-c)})}},51685:(t,e,i)=>{function a(t,e,i){t.writeUint32(16),t.writeString("mfhd"),t.writeUint8(0),t.writeUint24(0),t.writeUint32(i.currentFragment.sequence)}i.d(e,{A:()=>a})},75494:(t,e,i)=>{i.d(e,{A:()=>r});var a=i(77252);function r(t,e,i){(0,a.A)(t,null,i)}},60341:(t,e,i)=>{i.d(e,{A:()=>s});var a=i(18763),r=i(91278);function s(t,e,i){const s=i.duration,n=i.creationTime||0,o=i.modificationTime||0,c=i.timescale||0;let d=i.nextTrackId||1;i.fragment&&(d=2);let u=s<BigInt(r.f7)?0:1;u=n<r.f7?0:1,u=o<r.f7?0:1,t.writeUint32(1===u?120:108),t.writeString("mvhd"),t.writeUint8(u),t.writeUint24(0),1===u?(t.writeUint64(n),t.writeUint64(o)):(t.writeUint32(Number(n)),t.writeUint32(Number(o))),t.writeUint32(c),1===u?t.writeUint64(s):t.writeUint32(Number(s)),t.writeUint32(65536),t.writeUint16(256),t.writeUint16(0),t.writeUint32(0),t.writeUint32(0),(0,a.A)(t,1,0,0,1,0,0),t.writeUint32(0),t.writeUint32(0),t.writeUint32(0),t.writeUint32(0),t.writeUint32(0),t.writeUint32(0),t.writeUint32(d)}},3935:(t,e,i)=>{function a(t,e,i){t.writeUint32(12),t.writeString("nmhd"),t.writeUint32(0)}i.d(e,{A:()=>a})},7830:(t,e,i)=>{function a(t,e,i){t.writeUint32(16),t.writeString("pasp"),t.writeUint32(1),t.writeUint32(1)}i.d(e,{A:()=>a})},48750:(t,e,i)=>{function a(t,e,i){const a=i.currentFragment.tracks.find((t=>t.trackId===e.privData.trackId));t.writeUint32(20),t.writeString("saio"),t.writeUint32(0),t.writeUint32(1),a.cenc.offsetPos=t.getPos(),t.writeUint32(0)}i.d(e,{A:()=>a})},39897:(t,e,i)=>{function a(t,e,i){const a=i.currentFragment.tracks.find((t=>t.trackId===e.privData.trackId)),r=t.getPos();t.writeUint32(0),t.writeString("saiz"),t.writeUint32(0),t.writeUint8(a.cenc.sampleSizes.length?0:a.cenc.defaultSampleInfoSize),t.writeUint32(a.cenc.sampleCount),a.cenc.sampleSizes.length&&a.cenc.sampleSizes.forEach((e=>{t.writeUint8(e)})),i.boxsPositionInfo.push({pos:r,type:"saiz",size:Number(t.getPos()-r)})}i.d(e,{A:()=>a})},92701:(t,e,i)=>{function a(t,e,i){const a=i.currentFragment.tracks.find((t=>t.trackId===e.privData.trackId)),r=i.cencs?i.cencs[a.trackId]:null,s=t.getPos();t.writeUint32(0),t.writeString("senc"),t.writeUint32(a.cenc.useSubsamples?2:0),t.writeUint32(a.cenc.sampleEncryption.length),a.cenc.offset=Number(t.getPos()-i.currentFragment.pos),a.cenc.sampleEncryption.forEach((e=>{r.defaultPerSampleIVSize&&t.writeBuffer(e.iv),a.cenc.useSubsamples&&(t.writeUint16(e.subsamples.length),e.subsamples.forEach((e=>{t.writeUint16(e.bytesOfClearData),t.writeUint32(e.bytesOfProtectedData)})))})),i.boxsPositionInfo.push({pos:s,type:"senc",size:Number(t.getPos()-s)})}i.d(e,{A:()=>a})},92638:(t,e,i)=>{function a(t,e,i){t.writeUint32(16),t.writeString("smhd"),t.writeUint32(0),t.writeUint16(0),t.writeUint16(0)}i.d(e,{A:()=>a})},76763:(t,e,i)=>{function a(t,e,i){const a=e.privData.chunkOffsets||[];t.writeUint32(16+4*a.length),t.writeString("stco"),t.writeUint8(0),t.writeUint24(0),t.writeUint32(a.length);for(let e=0;e<a.length;e++)t.writeUint32(Number(a[e]))}i.d(e,{A:()=>a})},42053:(t,e,i)=>{function a(t,e,i){t.writeUint32(12),t.writeString("sthd"),t.writeUint32(0)}i.d(e,{A:()=>a})},21495:(t,e,i)=>{i.d(e,{A:()=>s});var a=i(87339);const r="packages/avformat/src/formats/isobmff/writing/stsc.ts";function s(t,e,i){const s=e.privData,n=s.stscFirstChunk,o=s.stscSamplesPerChunk,c=s.stscSampleDescriptionIndex;n.length===o.length&&n.length===c.length||a.R8("ctts firstChunk's length is not match samplesPerChunk's length or sampleDescriptionIndex's length",r,42);const d=Math.min(n.length,o.length,c.length);t.writeUint32(16+12*d),t.writeString("stsc"),t.writeUint8(0),t.writeUint24(0),t.writeUint32(d);for(let e=0;e<d;e++)t.writeUint32(n[e]),t.writeUint32(o[e]),t.writeUint32(c[e])}},82974:(t,e,i)=>{i.d(e,{A:()=>A});var a=i(41863),r=i(87451),s=i(7374),n=i(74852),o=i(91718),c=i(34085),d=i(23911),u=i(8670),f=i(94919),l=i(82886),p=i(7830),h=i(97878),m=i(36623),g=i(64551),k=i(43171),w=i(30018),b=i(50012);const v={27:"avc1",173:"hvc1",196:"vvc1",225:"av01",167:"vp09",86019:"ac-3",86056:"ec-3",94226:"wvtt",94232:"stpp",94213:"tx3g"};function U(t){if(t.codecTag)return(0,w.A)(t.codecTag);let e=v[t.codecId];return e||(e=0===t.codecType?"mp4v":1===t.codecType?86076===t.codecId?"Opus":86028===t.codecId?"fLaC":"mp4a":3===t.codecType?"text":"none"),e}function I(t,e,i){const a=e.privData,r=i.cencs[a.trackId],s=t.getPos();t.writeUint32(0),t.writeString("sinf"),t.writeUint32(12),t.writeString("frma"),t.writeString(U(e.codecpar)),t.writeUint32(20),t.writeString("schm"),t.writeUint32(0),t.writeUint32(r.schemeType||(0,b.A)("cenc")),t.writeUint32(r.schemeVersion||65536),t.writeUint32(16+r.defaultKeyId.length+8+(r.defaultConstantIV?1+r.defaultConstantIV.length:0)),t.writeString("schi"),t.writeUint32(16+r.defaultKeyId.length+(r.defaultConstantIV?1+r.defaultConstantIV.length:0)),t.writeString("tenc"),r.cryptByteBlock||r.skipByteBlock||r.pattern?t.writeUint8(1):t.writeUint8(0),t.writeUint24(0),t.writeUint8(0),t.writeUint8((15&(r.cryptByteBlock||0))<<4|15&(r.skipByteBlock||0)),t.writeUint8(1),t.writeUint8(r.defaultPerSampleIVSize),t.writeBuffer(r.defaultKeyId),r.defaultConstantIV&&(t.writeUint8(r.defaultConstantIV.length),t.writeBuffer(r.defaultConstantIV)),i.boxsPositionInfo.push({pos:s,type:"sinf",size:Number(t.getPos()-s)})}function P(t,e,i){const a=i.isom?1:0;t.writeUint32(0),t.writeUint16(0),t.writeUint16(1),t.writeUint16(a),t.writeUint16(0),t.writeUint32(0),i.isom?(t.writeUint16(e.codecpar.chLayout.nbChannels),65541===e.codecpar.codecId||65540===e.codecpar.codecId?t.writeUint16(8):69643===e.codecpar.codecId?t.writeUint16(e.codecpar.bitsPerCodedSample):t.writeUint16(16),t.writeUint16(-2)):(t.writeUint16(e.codecpar.chLayout.nbChannels),86028===e.codecpar.codecId||86032===e.codecpar.codecId?t.writeUint16(e.codecpar.bitsPerRawSample):t.writeUint16(16),t.writeUint16(0)),t.writeUint16(0),86076===e.codecpar.codecId?t.writeUint16(48e3):86060===e.codecpar.codecId?t.writeUint32(e.codecpar.sampleRate):t.writeUint16(e.codecpar.sampleRate),86060!==e.codecpar.codecId&&t.writeUint16(0),1===a&&(t.writeUint32(e.codecpar.frameSize),t.writeUint32(0),t.writeUint32(0),t.writeUint32(2))}function y(t,e,i){const a=U(e.codecpar);!i.isom||86018!==e.codecpar.codecId&&86019!==e.codecpar.codecId&&86056!==e.codecpar.codecId&&73728!==e.codecpar.codecId&&86032!==e.codecpar.codecId&&69638!==e.codecpar.codecId&&69633!==e.codecpar.codecId&&86035!==e.codecpar.codecId?86028===e.codecpar.codecId?(0,d.A)(t,e,i):86076===e.codecpar.codecId?(0,u.A)(t,e,i):86019===e.codecpar.codecId?(0,g.A)(t,e,i):86056===e.codecpar.codecId?(0,k.A)(t,e,i):"mp4a"==a&&(0,f.A)(t,e,i):(0,m.A)(t,e,i)}function S(t,e,i){const a=13==e.codecpar.codecId&&15==e.codecpar.format||13==e.codecpar.codecId&&1==e.codecpar.format||202==e.codecpar.codecId||203==e.codecpar.codecId||156==e.codecpar.codecId||127==e.codecpar.codecId;t.writeUint32(0),t.writeUint16(0),t.writeUint16(1),t.writeUint16(a?2:0),t.writeUint16(0),i.isom?(t.writeString("FFMP"),13===e.codecpar.codecId||a?(t.writeUint32(0),t.writeUint32(1024)):(t.writeUint32(512),t.writeUint32(512))):(t.writeUint32(0),t.writeUint32(0),t.writeUint32(0)),t.writeUint16(e.codecpar.width),t.writeUint16(e.codecpar.height),t.writeUint32(4718592),t.writeUint32(4718592),t.writeUint32(0),t.writeUint16(1);let r=e.metadata.compressorName||"";if(r=r.slice(0,31),t.writeUint8(r.length),t.writeString(r),r.length<31){let e=31-r.length;for(;e>0;)t.writeUint8(0),e--}i.isom&&e.codecpar.bitsPerCodedSample?t.writeUint16(e.codecpar.bitsPerCodedSample):t.writeUint16(24),t.writeUint16(65535)}function B(t,e,i){"mp4v"===U(e.codecpar)?(0,f.A)(t,e,i):27===e.codecpar.codecId?(0,r.A)(t,e,i):173===e.codecpar.codecId?(0,s.A)(t,e,i):196===e.codecpar.codecId?(0,n.A)(t,e,i):167===e.codecpar.codecId?(0,o.A)(t,e,i):225===e.codecpar.codecId&&(0,c.A)(t,e,i)}function A(t,e,i){const r=t.getPos();t.writeUint32(0),t.writeString("stsd");const s=e.privData,n=i.cencs&&i.cencs[s.trackId]&&(1===e.codecpar.codecType||0===e.codecpar.codecType)&&!i.ignoreEncryption;t.writeUint8(0),t.writeUint24(0),t.writeUint32(n?2:1),1===e.codecpar.codecType?(n&&function(t,e,i){const a=t.getPos();t.writeUint32(0),t.writeString("enca"),P(t,e,i),I(t,e,i),y(t,e,i),i.boxsPositionInfo.push({pos:a,type:"enca",size:Number(t.getPos()-a)})}(t,e,i),function(t,e,i){const a=t.getPos(),r=U(e.codecpar);t.writeUint32(0),t.writeString(r),P(t,e,i),y(t,e,i),i.isom||(0,h.A)(t,e,i),i.boxsPositionInfo.push({pos:a,type:r,size:Number(t.getPos()-a)})}(t,e,i)):0===e.codecpar.codecType?(n&&function(t,e,i){const a=t.getPos();t.writeUint32(0),t.writeString("encv"),S(t,e,i),I(t,e,i),B(t,e,i),i.boxsPositionInfo.push({pos:a,type:"encv",size:Number(t.getPos()-a)})}(t,e,i),function(t,e,i){const a=t.getPos(),r=U(e.codecpar);t.writeUint32(0),t.writeString(r),S(t,e,i),B(t,e,i),(0,l.A)(t,e,i),(0,p.A)(t,e,i),i.isom||(0,h.A)(t,e,i),i.boxsPositionInfo.push({pos:a,type:r,size:Number(t.getPos()-a)})}(t,e,i)):3===e.codecpar.codecType&&function(t,e,i){const r=t.getPos(),s=U(e.codecpar);t.writeUint32(0),t.writeString(s),t.writeUint32(0),t.writeUint16(0),t.writeUint16(1),94208===e.codecpar.codecId?(0,f.A)(t,e,i):e.codecpar.extradata&&t.writeBuffer((0,a.s3)(e.codecpar.extradata,e.codecpar.extradataSize)),i.isom||(0,h.A)(t,e,i),i.boxsPositionInfo.push({pos:r,type:s,size:Number(t.getPos()-r)})}(t,e,i),i.boxsPositionInfo.push({pos:r,type:"esds",size:Number(t.getPos()-r)})}},69255:(t,e,i)=>{function a(t,e,i){const a=e.privData.stssSampleNumbers;t.writeUint32(16+4*a.length),t.writeString("stss"),t.writeUint8(0),t.writeUint24(0),t.writeUint32(a.length);for(let e=0;e<a.length;e++)t.writeUint32(a[e])}i.d(e,{A:()=>a})},25104:(t,e,i)=>{function a(t,e,i){const a=e.privData.sampleSizes;t.writeUint32(20+4*a.length),t.writeString("stsz"),t.writeUint8(0),t.writeUint24(0),t.writeUint32(0),t.writeUint32(a.length);for(let e=0;e<a.length;e++)t.writeUint32(a[e])}i.d(e,{A:()=>a})},26708:(t,e,i)=>{i.d(e,{A:()=>s});var a=i(87339);const r="packages/avformat/src/formats/isobmff/writing/stts.ts";function s(t,e,i){const s=e.privData,n=s.sttsSampleCounts||[],o=s.sttsSampleDeltas||[];n.length!==o.length&&a.R8("stts sampleCounts's length is not match sampleDeltas's length",r,39);const c=Math.min(n.length,o.length);t.writeUint32(16+8*c),t.writeString("stts"),t.writeUint8(0),t.writeUint24(0),t.writeUint32(c);for(let e=0;e<c;e++)t.writeUint32(n[e]),t.writeInt32(o[e])}},81132:(t,e,i)=>{function a(t,e,i){const a=i.currentFragment.tracks.find((t=>t.trackId===e.privData.trackId)),r=a?a.baseMediaDecodeTime:BigInt(0);t.writeUint32(20),t.writeString("tfdt"),t.writeUint8(1),t.writeUint24(0),t.writeUint64(r)}i.d(e,{A:()=>a})},2960:(t,e,i)=>{function a(t,e,i){const a=i.currentFragment.tracks.find((t=>t.trackId===e.privData.trackId));let r=57;a.baseIsMoof&&(r&=-2,r|=131072);const s=t.getPos();t.writeUint32(0),t.writeString("tfhd"),t.writeUint8(0),t.writeUint24(r),t.writeUint32(a.trackId),1&r&&t.writeUint64(a.baseDataOffset),8&r&&t.writeUint32(a.defaultSampleDuration),16&r&&t.writeUint32(a.defaultSampleSize),32&r&&t.writeUint32(a.defaultSampleFlags),i.boxsPositionInfo.push({pos:s,type:"tfhd",size:Number(t.getPos()-s)})}i.d(e,{A:()=>a})},81816:(t,e,i)=>{i.d(e,{A:()=>o});var a=i(18763),r=i(76070),s=i(91278),n=i(30027);function o(t,e,i){const o=e.privData,c=(0,n.k)((0,r.A)(o),e.timeBase,{den:i.timescale,num:1}),d=e.metadata.creationTime||0,u=e.metadata.modificationTime||0,f=o.layer||0,l=o.alternateGroup||0;let p=e.codecpar.width>0?e.codecpar.width:0,h=e.codecpar.height>0?e.codecpar.height:0;const m=(0,n.lb)(e.codecpar.sampleAspectRatio);0!==m&&m!==1/0&&(p=Math.floor(p*m)),p<s.zg&&(p<<=16),h<s.zg&&(h<<=16);let g=c<BigInt(s.f7)?0:1;g=d<s.f7?0:1,g=u<s.f7?0:1;let k=2;1&o.flags&&(k|=1),t.writeUint32(1===g?100:92),t.writeString("tkhd"),t.writeUint8(g),t.writeUint24(k),1===g?(t.writeUint64(d),t.writeUint64(u)):(t.writeUint32(Number(d)),t.writeUint32(Number(u))),t.writeUint32(o.trackId),t.writeUint32(0),1===g?t.writeUint64(c):t.writeUint32(Number(c)),t.writeUint32(0),t.writeUint32(0),t.writeInt16(f),t.writeInt16(o.perStreamGrouping?l:e.codecpar.codecType),1===e.codecpar.codecType?t.writeInt16(256):t.writeInt16(0),t.writeInt16(0);const w=e.metadata.matrix;w?(0,a.A)(t,w[0],w[1],w[3],w[4],w[6],w[7]):(0,a.A)(t,1,0,0,1,0,0),t.writeUint32(p),t.writeUint32(h)}},98981:(t,e,i)=>{function a(t,e,i){var a,r,s;const n=i.currentFragment.tracks.find((t=>t.trackId===e.privData.trackId)),o=i.trexs.find((t=>{t.trackId,e.privData.trackId})),c=null!==(a=null==o?void 0:o.duration)&&void 0!==a?a:0,d=null!==(r=null==o?void 0:o.size)&&void 0!==r?r:0,u=null!==(s=null==o?void 0:o.flags)&&void 0!==s?s:0;t.writeUint32(32),t.writeString("trex"),t.writeUint8(0),t.writeUint24(0),t.writeUint32(n.trackId),t.writeUint32(1),t.writeUint32(c),t.writeUint32(d),t.writeUint32(u)}i.d(e,{A:()=>a})},38151:(t,e,i)=>{function a(t,e,i){const a=e.privData,r=i.currentFragment.tracks.find((t=>t.trackId===a.trackId)),s=r.firstSampleFlags||0,n=r.dataOffset||0,o=r.sampleDurations,c=r.sampleSizes,d=r.sampleFlags,u=r.sampleCompositionTimeOffset,f=r.sampleCount,l=o.length>0,p=c.length>0,h=d.length>0,m=u.length>0,g=0!==s;let k=1;g&&(k|=4),l&&(k|=256),p&&(k|=512),h&&(k|=1024),m&&(k|=2048);const w=t.getPos();t.writeUint32(0),t.writeString("trun"),t.writeUint8(1),t.writeUint24(k),t.writeUint32(f),r.dataOffsetPos=t.getPos(),t.writeInt32(n),g&&t.writeUint32(s);for(let e=0;e<f;e++)l&&t.writeUint32(o[e]||0),p&&t.writeUint32(c[e]||0),h&&t.writeUint32(d[e]||0),m&&t.writeInt32(u[e]||0);i.boxsPositionInfo.push({pos:w,type:"trun",size:Number(t.getPos()-w)})}i.d(e,{A:()=>a})},30759:(t,e,i)=>{function a(t,e,i){t.writeUint32(20),t.writeString("vmhd"),t.writeUint8(0),t.writeUint24(1),t.writeUint64(BigInt(0))}i.d(e,{A:()=>a})},91718:(t,e,i)=>{i.d(e,{A:()=>r});var a=i(41863);function r(t,e,i){var r;t.writeUint32(12+(null!==(r=e.codecpar.extradataSize)&&void 0!==r?r:0)),t.writeString("vpcC"),t.writeUint8(1),t.writeUint24(0),i.fragment&&e.sideData[1]?(t.writeBuffer(e.sideData[1]),delete e.sideData[1]):e.codecpar.extradata&&t.writeBuffer((0,a.s3)(e.codecpar.extradata,e.codecpar.extradataSize))}},74852:(t,e,i)=>{i.d(e,{A:()=>n});var a=i(41863),r=i(17635),s=i(5639);function n(t,e,i){let n;i.fragment&&e.sideData[1]?(n=e.sideData[1],delete e.sideData[1]):e.codecpar.extradata&&(n=(0,a.s3)(e.codecpar.extradata,e.codecpar.extradataSize)),n&&s.Bs(n)&&(n=r.S1(n)),t.writeUint32(12+(n?n.length:0)),t.writeString("vvcC"),t.writeUint8(0),t.writeUint24(0),n&&t.writeBuffer(n)}},36623:(t,e,i)=>{i.d(e,{A:()=>s});var a=i(94919),r=i(41863);function s(t,e,i){const s=t.getPos();t.writeUint32(0),t.writeString("wave"),86035!==e.codecpar.codecId&&(t.writeUint32(12),t.writeString("frma"),t.writeUint32(e.codecpar.codecTag)),86018===e.codecpar.codecId?(t.writeUint32(12),t.writeString("mp4a"),t.writeUint32(0),(0,a.A)(t,e,i)):i.fragment&&e.sideData[1]?(t.writeBuffer(e.sideData[1]),delete e.sideData[1]):e.codecpar.extradata&&t.writeBuffer((0,r.s3)(e.codecpar.extradata,e.codecpar.extradataSize)),t.writeUint32(8),t.writeUint32(0),i.boxsPositionInfo.push({pos:s,type:"wave",size:Number(t.getPos()-s)})}},64080:(t,e,i)=>{i.d(e,{A:()=>M});var a=i(26708),r=i(16868),s=i(69255),n=i(25104),o=i(21495),c=i(76763),d=i(71354),u=i(67027),f=i(60341),l=i(81816),p=i(77252),h=i(82974),m=i(30759),g=i(91022),k=i(92638),w=i(3935),b=i(42053),v=i(80127),U=i(98981),I=i(51685),P=i(2960),y=i(81132),S=i(38151),B=i(75494),A=i(39897),x=i(48750),T=i(92701),C=i(85947),D=i(49569);const M={stts:a.A,ctts:r.A,stss:s.A,stsz:n.A,stsc:o.A,stco:c.A,co64:d.A,mdhd:u.A,mvhd:f.A,tkhd:l.A,hdlr:p.A,stsd:h.A,vmhd:m.A,edts:g.A,smhd:k.A,nmhd:w.A,sthd:b.A,dref:v.A,trex:U.A,mfhd:I.A,tfhd:P.A,tfdt:y.A,trun:S.A,minf_hdlr:B.A,saio:x.A,saiz:A.A,senc:T.A,meta:C.A,chpl:D.A}},62204:(t,e,i)=>{function a(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if(!t)return!1;if(t.length<2)return!0;let i=t[e],a=e+1;for(;a<t.length&&i===t[a];a++);return a===t.length}i.d(e,{A:()=>a})},39188:(t,e,i)=>{function a(t,e,i,a){const r=t.getPos(),s=t.getPointer(),n=r-BigInt(Math.floor(s));let o=!1;switch(e<r&&e>=n?(t.seekInline(s+Number(e-r)),o=!0):t.seek(e),a){case"uint8":t.writeUint8(255&i);break;case"int8":t.writeInt8(i);break;case"uint16":t.writeUint16(65535&i);break;case"int16":t.writeInt16(i);break;case"uint32":t.writeUint32(i>>>0);break;case"int32":t.writeInt32(i);break;case"uint64":t.writeUint64(BigInt.asUintN(64,i));break;case"int64":t.writeInt64(i);break;case"float":t.writeFloat(i);break;case"double":t.writeDouble(i)}o?t.seekInline(s):t.seek(r)}i.d(e,{A:()=>a})},42853:(t,e,i)=>{i.d(e,{XA:()=>g,bX:()=>w,bx:()=>m,dJ:()=>k,ho:()=>h});var a=i(42524),r=i(77389),s=i(62765),n=i(47378),o=i(91278),c=i(25092),d=i(87339),u=i(17630),f=i(29592);const l="packages/avformat/src/mux.ts",p={zeroStart:!1,nonnegative:!1};function h(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const i=c.X$({},p,e);t.ioWriter||d.h2("need ioWriter",l,65),t.oformat||d.h2("need oformat",l,68),t.options=i,t.privateData2={firstPts:new Map,firstDts:new Map,dtsPtsDelta:new Map};let a=t.oformat.getCapabilities();if(a)for(let e=0;e<t.streams.length;e++){if(1024&t.streams[e].disposition)continue;const i=t.streams[e].codecpar.codecId,r=t.streams[e].codecpar.codecType;if(16===t.oformat.type){if(i<65536||i>69683)return d.z3(`format ${(0,s.L_)(t.oformat.type)} not support codecId ${(0,s.eG)(t.streams[e].codecpar.codecType,i)}`,l,90),n.r8}else if(2!==r&&4!==r&&!u.zy(a,i))return d.z3(`format ${(0,s.L_)(t.oformat.type)} not support codecId ${(0,s.eG)(t.streams[e].codecpar.codecType,i)}`,l,98),n.r8}return t.oformat.init(t)}function m(t){return t.oformat.writeHeader(t),0}function g(t,e){const i=t.privateData2;return i.firstDts.has(a.f[15](e+32))||i.firstDts.set(a.f[15](e+32),a.f[17](e+16)===o.Dh?BigInt(0):a.f[17](e+16)),i.firstPts.has(a.f[15](e+32))||(i.firstPts.set(a.f[15](e+32),a.f[17](e+8)===o.Dh?BigInt(0):a.f[17](e+8)),i.dtsPtsDelta.set(a.f[15](e+32),f.jk(i.firstDts.get(a.f[15](e+32)),i.firstPts.get(a.f[15](e+32))))),(t.options.zeroStart||t.options.nonnegative&&(i.firstDts.get(a.f[15](e+32))<0||i.firstPts.get(a.f[15](e+32))<0))&&(r.M[17](e+16,a.f[17](e+16)-i.dtsPtsDelta.get(a.f[15](e+32))),r.M[17](e+8,a.f[17](e+8)-i.dtsPtsDelta.get(a.f[15](e+32)))),t.oformat.writeAVPacket(t,e)}function k(t){return t.oformat.writeTrailer(t),0}function w(t){t.oformat.flush(t)}},75452:(t,e,i)=>{i.r(e),i.d(e,{default:()=>$});var a=i(41863),r=i(75354),s=i(42524),n=i(75589),o=i(3912),c=i(77389),d=i(54911),u=i(30027),f=i(1818),l=i(43776),p=i(31184),h=i(28579),m=i(81498),g=i(10567),k=i(91278),w=i(62787),b=i(47378),v=i(7615),U=i(61556),I=i(73872),P=i(77368),y=i(2198),S=i(29592),B=i(16563),A=i(71195),x=i(77969),T=i(87339),C=i(81819),D=i(21279),M=i(61738),E=i(88583),z=i(39753),F=i(48135),N=i(85266),Q=i(42853),O=i(20352),R=i(98686),W=i(50012),_=i(86223),V=i(57470),q=i(65833);const L="packages/avplayer/src/mse/MSEPipeline.ts";class $ extends V.A{constructor(){super()}async syncToKeyframe(t){let e=!0;if(t.video){let i;for(;;){if(t.video.backPacket=await this.pullAVPacket(t.video,t),t.video.backPacket<0){t.video.packetEnded=!0,t.video.backPacket=0;break}if(t.audio&&!t.audio.packetEnded&&(!t.audio.backPacket||(0,u.Mr)(s.f[17](t.audio.backPacket+8),t.audio.backPacket+72,k.i0)<(0,u.Mr)(s.f[17](t.video.backPacket+8),t.video.backPacket+72,k.i0)))for(;;){if(t.audio.backPacket>0){const e=(0,f.rU)(t.audio.backPacket,1);e&&(i=(0,a.s3)(s.f[20](e),s.f[25](e+4)).slice()),t.avpacketPool.release(t.audio.backPacket)}if(t.audio.backPacket=await this.pullAVPacket(t.audio,t),t.audio.backPacket<0){t.audio.packetEnded=!0,t.audio.backPacket=0;break}if((0,u.Mr)(s.f[17](t.audio.backPacket+8),t.audio.backPacket+72,k.i0)>(0,u.Mr)(s.f[17](t.video.backPacket+8),t.video.backPacket+72,k.i0))break}if(1&s.f[15](t.video.backPacket+36)||27===s.f[15](t.video.codecpar+4)&&U.mW(t.video.backPacket,s.f[20](t.video.codecpar+12)?1+(3&l.r8(s.f[20](t.video.codecpar+12)+4)):4)||173===s.f[15](t.video.codecpar+4)&&I.mW(t.video.backPacket,s.f[20](t.video.codecpar+12)?1+(3&l.r8(s.f[20](t.video.codecpar+12)+21)):4))break;e=!1,t.avpacketPool.release(t.video.backPacket)}if(t.audio&&t.audio.backPacket&&!(0,f.fQ)(t.audio.backPacket,1)&&i){const e=(0,p.sY)(i.length);(0,a.lW)(e,i.length,i),(0,f.Ow)(t.audio.backPacket,1,e,i.length)}}return e}getSourceOpenHandler(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:BigInt(0);return async()=>{var i,d;await this.syncToKeyframe(t);let l=e,h=e;if(!t.audio||t.audio.backPacket||t.audio.packetEnded||(t.audio.backPacket=await this.pullAVPacket(t.audio,t),t.audio.backPacket<0&&(t.audio.packetEnded=!0,t.audio.backPacket=0)),t.video&&!t.video.backPacket&&t.video.packetEnded&&(t.video.backPacket=await this.pullAVPacket(t.video,t),t.video.backPacket<0&&(t.video.packetEnded=!0,t.video.backPacket=0)),(null===(i=t.audio)||void 0===i?void 0:i.backPacket)>0&&(l=S.T9(l,(0,u.Mr)(s.f[17](t.audio.backPacket+16),t.audio.backPacket+72,k.i0))),(null===(d=t.video)||void 0===d?void 0:d.backPacket)>0&&(h=S.T9(h,(0,u.Mr)(s.f[17](t.video.backPacket+16),t.video.backPacket+72,k.i0))),t.audio&&t.video&&S.tn(l-h)>1e3)if(h>l){const e=(0,u.k)(l,k.i0,(0,n.A)(t.video.backPacket+72,o.Q));c.M[17](t.video.backPacket+48,s.f[17](t.video.backPacket+16)-e),c.M[17](t.video.backPacket+16,e),c.M[17](t.video.backPacket+8,e),h=l}else if(l>h&&86018===t.audio.oformatContext.streams[0].codecpar.codecId&&2===t.audio.oformatContext.streams[0].codecpar.profile&&t.audio.oformatContext.streams[0].codecpar.chLayout.nbChannels<3){const e=t.avpacketPool.alloc();(0,f.rN)(e,t.audio.backPacket);const i=1===t.audio.oformatContext.streams[0].codecpar.chLayout.nbChannels?new Uint8Array([0,200,0,128,35,128]):new Uint8Array([33,0,73,144,2,25,0,35,128]),r=(0,p.sY)(i.length);(0,a.lW)(r,i.length,i),(0,f.NX)(e,r,i.length),c.M[17](e+16,(0,u.k)(h,k.i0,(0,n.A)(e+72,o.Q))),c.M[17](e+8,(0,u.k)(h,k.i0,(0,n.A)(e+72,o.Q)));const d=BigInt(1024e3)/BigInt(0|t.audio.oformatContext.streams[0].codecpar.sampleRate),m=Number(BigInt.asIntN(32,(l-h)/d));let g=s.f[17](e+16)+(0,u.k)(d,k.i0,(0,n.A)(t.audio.backPacket+72,o.Q));for(let i=0;i<m-1;i++){const i=t.avpacketPool.alloc();(0,f.rN)(i,e),c.M[17](i+16,g),c.M[17](i+8,g),t.audio.pullQueue.queue.push(i),g+=(0,u.k)(d,k.i0,(0,n.A)(t.audio.backPacket+72,o.Q))}t.audio.pullQueue.queue.push(t.audio.backPacket),t.audio.backPacket=e,l=h}const m=[];t.audio&&(t.audio.track.setSourceBuffer(this.createSourceBuffer(t.mediaSource,t.audio.oformatContext.streams[0].codecpar[r.o9])),t.audio.enableRawMpeg||(Q.ho(t.audio.oformatContext),Q.bx(t.audio.oformatContext)),m.push(this.startMux(t.audio,t,S.T9(l,h)))),t.video&&(t.video.track.setSourceBuffer(this.createSourceBuffer(t.mediaSource,t.video.oformatContext.streams[0].codecpar[r.o9])),t.video.enableRawMpeg||(Q.ho(t.video.oformatContext),Q.bx(t.video.oformatContext)),m.push(this.startMux(t.video,t,S.T9(l,h)))),await Promise.all(m);let g=!1,w=!1;t.audio&&(t.audio.backPacket=await this.pullAVPacket(t.audio,t),t.audio.backPacket>0?(g=!0,t.audio.frontPacket=await this.pullAVPacket(t.audio,t),t.audio.frontPacket>0?t.audio.frontBuffered=!0:(t.audio.frontPacket=0,t.audio.packetEnded=!0)):t.audio.packetEnded=!0,t.audio.enableRawMpeg||t.audio.oformatContext.ioWriter.flush(),t.audio.track.addBuffer(t.audio.bufferQueue.flush())),t.video&&(t.video.backPacket=await this.pullAVPacket(t.video,t),t.video.backPacket>0?(w=!0,t.video.frontPacket=await this.pullAVPacket(t.video,t),t.video.frontPacket>0?t.video.frontBuffered=!0:(t.video.frontPacket=0,t.video.packetEnded=!0)):t.video.packetEnded=!0,t.video.enableRawMpeg||t.video.oformatContext.ioWriter.flush(),t.video.track.addBuffer(t.video.bufferQueue.flush())),t.audio&&(g?(this.createLoop(t.audio,t),t.audio.loop.start()):t.audio.track.end()),t.video&&(w?(this.createLoop(t.video,t),t.video.loop.start()):t.video.track.end()),await new E.A(.1);let b=0;t.audio?b=t.video?Math.max(t.audio.track.getBufferedStart(),t.video.track.getBufferedStart()):t.audio.track.getBufferedStart():t.video&&(b=t.video.track.getBufferedStart()),t.currentTimeNTP=(0,B.A)(),e>BigInt(0)?(t.currentTime=P.yw(e),t.controlIPCPort.notify("seek",{time:t.currentTime})):(A.A.safari||x.A.ios||b>.1||t.playRate>BigInt(100))&&(t.currentTime=b,t.currentTimeNTP=(0,B.A)(),t.controlIPCPort.notify("seek",{time:b}))}}getMimeType(t){let e="";return 1===s.f[15](t)?e=(0,h.A)(t):0===s.f[15](t)&&(e=(0,m.A)(t)),e||T.h2("invalid stream",L,515),e}createSourceBuffer(t,e){return t.addSourceBuffer(this.getMimeType(e))}mixExtradata(t,e,i){const s=t.oformatContext.streams[0].codecpar;s.extradata&&(0,p.Eb)(s.extradata),s.extradata=(0,p.sY)(i),(0,a.Mr)(s.extradata,e,i),s.extradataSize=i,27===s.codecId?U.XC(t.oformatContext.streams[0],(0,a.s3)(e,i)):173===s.codecId&&I.XC(t.oformatContext.streams[0],(0,a.s3)(e,i)),t.track.changeMimeType(this.getMimeType(s[r.o9]),t.enableRawMpeg?"sequence":"segments");const n=new R.A({fragmentMode:1,fragment:!0,fastOpen:!0,mp4Mode:0,defaultBaseIsMoof:!0,reverseSpsInAvcc:!0,hasTfra:!1});t.oformatContext.oformat=n,t.timestampOffsetUpdated=!1,t.enableRawMpeg||(Q.ho(t.oformatContext),Q.bx(t.oformatContext))}checkEnableEncryption(t,e){if(t.oformatContext.streams[0].metadata.encryption){const i=(0,f.fQ)(e,25);if(!i&&!t.ignoreEncryption||i&&t.ignoreEncryption){t.track.changeMimeType(this.getMimeType(t.oformatContext.streams[0].codecpar[r.o9]),t.enableRawMpeg?"sequence":"segments");const e=new R.A({fragmentMode:1,fragment:!0,fastOpen:!0,mp4Mode:0,defaultBaseIsMoof:!0,reverseSpsInAvcc:!0,ignoreEncryption:!i,hasTfra:!1});t.ignoreEncryption=!i,t.oformatContext.oformat=e,t.timestampOffsetUpdated=!1,t.enableRawMpeg||(Q.ho(t.oformatContext),Q.bx(t.oformatContext))}}}async pullAVPacketInternal(t,e){const i=await e.request("pull");if(C.ai(i)||(0,y.A)(i))return i;{const e=t.avpacketPool.alloc();return(0,g.r0)(i,e),e}}async pullAVPacket(t,e){const i=t.pullQueue;if(i.ended&&!i.queue.length)return-1048576;const n=i.queue.length?i.queue.shift():await this.pullAVPacketInternal(e,t.pullIPC);if(n<0)return i.ended=!0,-1048576;if(s.f[17](n+16)<BigInt(0))return n;if(s.f[17](n+16)<i.lastDTS&&T.R8(`got packet with dts ${s.f[17](n+16)}, which is earlier then the last packet(${i.lastDTS})`,L,627),c.M[17](n+48,k.Dh),"audio"===t.type&&s.f[17](n+16)>0)c.M[17](n+8,s.f[17](n+16));else if("video"===t.type&&!e.isLive)if(1&s.f[15](n+36)&&(27===s.f[15](e.video.codecpar+4)&&U.mW(n,s.f[20](e.video.codecpar+12)?1+(3&l.r8(s.f[20](e.video.codecpar+12)+4)):4)||173===s.f[15](e.video.codecpar+4)&&I.mW(n,s.f[20](e.video.codecpar+12)?1+(3&l.r8(s.f[20](e.video.codecpar+12)+21)):4)))if(s.f[17](n+8)<i.lastPTS){T.R8(`got video packet with pts ${s.f[17](n+8)}, which is earlier then the last packet(${i.lastPTS}), try to fix it!`,L,664),c.M[17](n+8,i.lastPTS+(s.f[17](n+16)-i.lastDTS));const a=await this.pullAVPacketInternal(e,t.pullIPC);if(a<0)i.ended=!0;else{i.queue.push(a);let r=s.f[17](a+8);const o=s.f[17](a+8);for(;;){const a=await this.pullAVPacketInternal(e,t.pullIPC);if(a<0){i.ended=!0;break}if(i.queue.push(a),s.f[17](a+8)>o)break;r=S.jk(r,s.f[17](a+8))}r<s.f[17](n+8)&&(i.diff=s.f[17](n+16)-i.lastDTS)}}else i.diff=BigInt(0);else c.M[17](n+8,s.f[17](n+8)+i.diff);return s.f[17](n+8)>i.lastPTS&&(i.lastPTS=s.f[17](n+8)),i.lastDTS=s.f[17](n+16),"audio"===t.type&&i.useSampleRateTimeBase&&(i.frameCount===k.Dh?(i.frameCount=(0,u.Mr)(s.f[17](n+16),n+72,t.oformatContext.streams[0].timeBase),c.M[17](n+16,i.frameCount),c.M[17](n+8,i.frameCount)):(i.frameCount=i.frameCount+BigInt(0|s.f[15](t.codecpar+144)),c.M[17](n+16,i.frameCount),c.M[17](n+8,i.frameCount)),(0,a.Mr)(n+72,t.oformatContext.streams[0].timeBase[r.o9],8)),n}writeAVPacket(t,e){let i=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(e.enableRawMpeg){if(!e.timestampOffsetUpdated){const i=(0,u.Mr)(s.f[17](t+8),t+72,k.i0);e.track.updateTimestampOffset(Number(BigInt.asIntN(32,i))/1e3),e.timestampOffsetUpdated=!0}e.bufferQueue.write((0,a.s3)(s.f[20](t+24),s.f[15](t+28)).slice())}else{if("video"===e.type&&1&s.f[15](t+36)||"audio"===e.type){const i=(0,f.rU)(t,1);i&&function(t,e,i,a){if(e!==a)return!0;let r=!1;for(let a=0;a<e;a++)if(s.f[2](t+a)!==s.f[2](i+a)){r=!0;break}return r}(e.oformatContext.streams[0].codecpar.extradata,e.oformatContext.streams[0].codecpar.extradataSize,s.f[20](i),0|s.f[25](i+4))&&this.mixExtradata(e,s.f[20](i),0|s.f[25](i+4))}this.checkEnableEncryption(e,t),Q.XA(e.oformatContext,t),i&&e.oformatContext.ioWriter.flush()}}swap(t,e){if(t.backPacket&&e.avpacketPool.release(t.backPacket),t.backPacket=0,!t.frontBuffered)return!1;t.backPacket=t.frontPacket,t.frontPacket=0,t.frontBuffered=!1;const i=(0,B.A)();return this.pullAVPacket(t,e).then((a=>{if(a<0)return t.packetEnded=!0,void(t.frontPacket=0);const r=(0,B.A)()-i;r>5&&(t.startTimestamp+=BigInt(Math.floor(r))),t.frontPacket=a,t.frontBuffered=!0,t.seekSync&&(t.seekSync(),t.seekSync=null),t.backPacket||this.swap(t,e)})),!0}createLoop(t,e){t.loop=new z.A((()=>{const i=t.track.getBufferedDuration(e.currentTime+((0,B.A)()-e.currentTimeNTP)/1e3);if(i>e.maxBuffer*(e.playRate>BigInt(100)?Number(e.playRate)/100:1))return t.loop.emptyTask(),void this.checkWaiting(e);if(!t.backPacket)return void(t.packetEnded&&!t.frontPacket?(t.ended=!0,t.loop.stop(),t.enableRawMpeg||(Q.dJ(t.oformatContext),Q.bX(t.oformatContext)),t.bufferQueue.size&&t.track.addBuffer(t.bufferQueue.flush()),t.track.end()):t.loop.emptyTask());let a=t.backPacket;const r=(0,u.Mr)(s.f[17](a+16),a+72,k.i0);if(t.lastDTS!==k.Dh&&r-t.lastDTS>1e3&&(Q.bX(t.oformatContext),t.startTimestamp-=r-t.lastDTS),t.lastDTS=r,e.enableJitterBuffer&&(s.f[15](e.stats+244)?s.f[15](e.stats+32)/s.f[15](e.stats+244)*1e3:s.f[15](e.stats+232)?s.f[15](e.stats+120)/s.f[15](e.stats+232)*1e3:0)<=s.f[15](e.stats+280)&&this.setPlayRate(e.taskId,1),r*BigInt(100)/e.playRate+t.startTimestamp-BigInt(Math.floor((0,B.A)()))<=0||i<e.minBuffer*(e.playRate>BigInt(100)?Number(e.playRate)/100:1)){t.track.isPaused()&&t.track.enqueue(),c.M[15](a+32,t.oformatContext.streams[0].index),this.writeAVPacket(a,t,!0),t.track.addBuffer(t.bufferQueue.flush());const i=t.oformatContext.streams[0].codecpar.codecType;if(0===i?(c.M[17](e.stats+144,s.f[17](e.stats+144)+BigInt(1)),c.M[17](e.stats+160,s.f[17](e.stats+160)+BigInt(1))):1===i&&(c.M[17](e.stats+56,s.f[17](e.stats+56)+BigInt(1)),c.M[17](e.stats+72,s.f[17](e.stats+72)+BigInt(1))),e.playRate!==e.targetRate&&(t.startTimestamp=BigInt(Math.floor((0,B.A)()))-r*BigInt(100)/e.targetRate,e.playRate=e.targetRate),t.packetEnded&&!t.frontPacket)return t.ended=!0,t.loop.stop(),t.enableRawMpeg||(Q.dJ(t.oformatContext),Q.bX(t.oformatContext)),t.bufferQueue.size&&t.track.addBuffer(t.bufferQueue.flush()),void t.track.end();this.swap(t,e)}else t.loop.emptyTask()}),0,0)}async startMux(t,e){let i,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:BigInt(0),r=k.Dh,n=k.Dh,o=BigInt(0),d=e.cacheDuration;const f=t.oformatContext.streams[0].timeBase;for(t.backPacket>0&&(r=s.f[17](t.backPacket+16),n=s.f[17](t.backPacket+8),a>n&&(d+=a-(0,u.k)(r,f,k.i0)),c.M[15](t.backPacket+32,t.oformatContext.streams[0].index),this.writeAVPacket(t.backPacket,t),e.avpacketPool.release(t.backPacket),t.backPacket=0);r===k.Dh||(0,u.k)(o-r,f,k.i0)<d;){if(i=await this.pullAVPacket(t,e),i<0){t.packetEnded=!0;break}o=s.f[17](i+16),r===k.Dh&&(r=o,n=s.f[17](i+8)),s.f[17](i+8)<n&&(n=s.f[17](i+8)),c.M[15](i+32,t.oformatContext.streams[0].index),this.writeAVPacket(i,t),e.avpacketPool.release(i)}n!==k.Dh&&t.startPTS<=BigInt(0)&&(t.startPTS=n),t.pullQueue.diff=BigInt(0),e.currentTimeNTP=(0,B.A)(),e.currentTime=0,t.startTimestamp=BigInt(Math.floor((0,B.A)()))-(0,u.k)(o,f,k.i0)*BigInt(100)/e.playRate}resetResource(t,e){t.bufferQueue.flush(),t.oformatContext.oformat.destroy(t.oformatContext);const i=new R.A({fragmentMode:1,fragment:!0,fastOpen:!0,mp4Mode:0,defaultBaseIsMoof:!0,reverseSpsInAvcc:!0,hasTfra:!1});t.oformatContext.oformat=i;const a=new _.A;a.onQuotaExceededError=()=>{t.startTimestamp-=BigInt(100)},a.onEnded=()=>{e.audio&&!e.audio.ended||e.video&&!e.video.ended||(e.mediaSource.endOfStream(),T.pq(`muxer ended, taskId: ${e.taskId}`,L,994))},t.track=a,t.packetEnded=!1,t.ended=!1,t.startTimestamp=BigInt(0),t.frontBuffered=!1,t.seekSync=null,t.loop&&(t.loop.destroy(),t.loop=null),t.frontPacket&&(e.avpacketPool.release(t.frontPacket),t.frontPacket=0),t.backPacket&&(e.avpacketPool.release(t.backPacket),t.backPacket=0),t.pullQueue.ended=!1,t.pullQueue.index=0,t.pullQueue.frameCount=k.Dh,t.pullQueue.lastPTS=BigInt(0),t.pullQueue.lastDTS=BigInt(0),t.pullQueue.diff=BigInt(0),t.lastDTS=k.Dh}async addStream(t,e,i,a,n,o,d){const f=this.tasks.get(t);if(f){const l=(0,p.Gy)(168);(0,y.A)(i)?(0,w.Yi)(l,i):(0,g.T8)(i,l);const h=new D.A(1048576),m=(0,O.fG)(),v=new R.A({fragmentMode:1,fragment:!0,fastOpen:!0,mp4Mode:0,defaultBaseIsMoof:!0,reverseSpsInAvcc:!0,hasTfra:!1}),U=new M.A;h.onFlush=t=>(U.write(t.slice()),0),h.onSeek=t=>U.seek(t)?0:b.lh;const I=m.createStream();(0,w.Yi)(I.codecpar[r.o9],l),I.metadata=n,86017===s.f[15](l+4)&&(I.codecpar.codecTag=(0,W.A)(".mp3"));const P=1===s.f[15](l)&&s.f[15](l+144)&&!f.isLive&&(0,u.lb)(a)>(0,u.lb)({num:1,den:s.f[15](l+136)});P?(I.timeBase.den=s.f[15](l+136),I.timeBase.num=1):(I.timeBase.den=a.den,I.timeBase.num=a.num),m.oformat=v,m.ioWriter=h;const B=new _.A,C={type:"audio",codecpar:l,ioWriter:h,oformatContext:m,oformat:v,track:B,bufferQueue:U,streamIndex:e,pullIPC:new N.Ay(d),loop:null,frontPacket:0,backPacket:0,frontBuffered:!1,startTimestamp:BigInt(0),packetEnded:!1,ended:!1,seekSync:null,startPTS:o,lastDTS:k.Dh,pullQueue:{queue:[],index:0,frameCount:k.Dh,diff:BigInt(0),lastPTS:BigInt(0),lastDTS:BigInt(0),ended:!1,useSampleRateTimeBase:P},enableRawMpeg:86017===s.f[15](l+4)&&!A.A.firefox,timestampOffsetUpdated:!1,ignoreEncryption:!1};B.onQuotaExceededError=()=>{C.startTimestamp-=BigInt(100)},B.onEnded=()=>{f.audio&&!f.audio.ended||f.video&&!f.video.ended||(f.mediaSource.endOfStream(),T.pq(`muxer ended, taskId: ${f.taskId}`,L,1142))},1===s.f[15](l)?(f.audio=C,c.M[15](f.stats+4,s.f[15](l+136)),c.M[15](f.stats,s.f[15](l+116))):0===s.f[15](l)&&(C.type="video",f.video=C,c.M[15](f.stats+84,s.f[15](l+56)),c.M[15](f.stats+88,s.f[15](l+60)),s.f[15](f.stats+84)*s.f[15](f.stats+88)>8294400&&(A.A.safari||x.A.ios)&&(f.cacheDuration=S.T9(BigInt(3e3),f.cacheDuration))),T.Yz(`add stream ${e}, taskId: ${t}`,L,1162)}else T.h2("task not found",L,1165)}async reAddStream(t,e,i,a,n,o){const c=this.tasks.get(t);if(c){const d=(0,p.Gy)(168);(0,y.A)(i)?(0,w.Yi)(d,i):(0,g.T8)(i,d);const f=1===s.f[15](d)?c.audio:c.video;if(f){f.bufferQueue.flush(),await new Promise((t=>{f.track.removeAllBuffer((()=>{t()}))})),f.track.reset();const t=new R.A({fragmentMode:1,fragment:!0,fastOpen:!0,mp4Mode:0,defaultBaseIsMoof:!0,reverseSpsInAvcc:!0,hasTfra:!1});f.oformatContext.oformat=t,f.codecpar&&(0,w.dn)(f.codecpar),f.codecpar=d,f.streamIndex=e,f.startPTS=o;const i=f.oformatContext.streams[0];(0,w.Yi)(i.codecpar[r.o9],d),i.metadata=n,86017===s.f[15](d+4)&&(i.codecpar.codecTag=(0,W.A)(".mp3"));const l=1===s.f[15](d)&&s.f[15](d+144)&&!c.isLive&&(0,u.lb)(a)>(0,u.lb)({num:1,den:s.f[15](d+136)});l?(i.timeBase.den=s.f[15](d+136),i.timeBase.num=1):(i.timeBase.den=a.den,i.timeBase.num=a.num),f.enableRawMpeg=86017===s.f[15](d+4)&&!A.A.firefox,f.timestampOffsetUpdated=!1,f.pullQueue.useSampleRateTimeBase=l;try{f.track.changeMimeType(this.getMimeType(i.codecpar[r.o9]),f.enableRawMpeg?"sequence":"segments")}catch(t){if(!A.A.firefox||t.message.indexOf("An attempt was made to use an object that is not")<0)throw t}f.enableRawMpeg||(Q.ho(f.oformatContext),Q.bx(f.oformatContext))}else(0,w.dn)(d);T.Yz(`readd stream ${e}, taskId: ${t}`,L,1268)}else T.h2("task not found",L,1271)}async pause(t){const e=this.tasks.get(t);var i,a,r,s;e?(null!==(i=e.audio)&&void 0!==i&&i.loop||null!==(a=e.video)&&void 0!==a&&a.loop||T.h2("task has not played",L,1279),e.pausing=!0,e.pauseTimestamp=(0,B.A)(),null===(r=e.audio)||void 0===r||r.loop.stop(),null===(s=e.video)||void 0===s||s.loop.stop(),e.fakePlayTimer&&e.fakePlayTimer.stop(),T.Yz(`pause taskId: ${t}`,L,1289)):T.h2("task not found",L,1292)}async unpause(t){const e=this.tasks.get(t);var i,a;e?(null!==(i=e.audio)&&void 0!==i&&i.loop||null!==(a=e.video)&&void 0!==a&&a.loop||T.h2("task has not played",L,1300),e.pausing=!1,e.seeking||(e.audio&&(e.audio.startTimestamp+=BigInt(Math.floor((0,B.A)()-e.pauseTimestamp)),e.audio.loop.start()),e.video&&(e.video.startTimestamp+=BigInt(Math.floor((0,B.A)()-e.pauseTimestamp)),e.video.loop.start())),e.fakePlayTimer&&e.fakePlayTimer.start(),T.Yz(`unpause taskId: ${t}`,L,1318)):T.h2("task not found",L,1321)}async beforeSeek(t){const e=this.tasks.get(t);if(e){var i,a;const r=[];e.audio&&(e.audio.ended||e.audio.frontBuffered||r.push(new Promise((t=>{e.audio.seekSync=t})))),e.video&&(e.video.ended||e.video.frontBuffered||r.push(new Promise((t=>{e.video.seekSync=t})))),await Promise.all(r),e.seeking=!0,null===(i=e.audio)||void 0===i||i.loop.stop(),null===(a=e.video)||void 0===a||a.loop.stop(),e.audio&&(e.audio.enableRawMpeg||Q.bX(e.audio.oformatContext),e.audio.bufferQueue.flush(),(A.A.safari||x.A.ios)&&await new Promise((t=>{e.audio.track.removeAllBuffer((()=>{t()}))})),e.audio.track.reset(),e.audio.packetEnded=!1,e.audio.timestampOffsetUpdated=!1,e.audio.backPacket&&(e.avpacketPool.release(e.audio.backPacket),e.audio.backPacket=0),e.audio.frontPacket&&(e.avpacketPool.release(e.audio.frontPacket),e.audio.frontPacket=0),e.audio.pullQueue.queue.length&&e.audio.pullQueue.queue.forEach((t=>{e.avpacketPool.release(t)})),e.audio.pullQueue.queue.length=0,e.audio.pullQueue.ended=!1,e.audio.pullQueue.index=0,e.audio.pullQueue.lastPTS=BigInt(0),e.audio.pullQueue.lastDTS=BigInt(0),e.audio.pullQueue.diff=BigInt(0),e.audio.pullQueue.frameCount=k.Dh,e.audio.lastDTS=k.Dh),e.video&&(e.video.enableRawMpeg||Q.bX(e.video.oformatContext),e.video.bufferQueue.flush(),(A.A.safari||x.A.ios)&&await new Promise((t=>{e.video.track.removeAllBuffer((()=>{t()}))})),e.video.track.reset(),e.video.packetEnded=!1,e.video.timestampOffsetUpdated=!1,e.video.backPacket&&(e.avpacketPool.release(e.video.backPacket),e.video.backPacket=0),e.video.frontPacket&&(e.avpacketPool.release(e.video.frontPacket),e.video.frontPacket=0),e.video.pullQueue.queue.length&&e.video.pullQueue.queue.forEach((t=>{e.avpacketPool.release(t)})),e.video.pullQueue.queue.length=0,e.video.pullQueue.ended=!1,e.video.pullQueue.index=0,e.video.pullQueue.diff=BigInt(0),e.video.pullQueue.lastPTS=BigInt(0),e.video.pullQueue.lastDTS=BigInt(0),e.video.lastDTS=k.Dh),T.Yz(`before seek end taskId: ${t}`,L,1432)}}async afterSeek(t,e){const i=this.tasks.get(t);if(i){let a=e,r=e,n=await this.syncToKeyframe(i);i.audio&&i.audio.backPacket>0&&((!n||e<BigInt(0))&&(a=(0,u.Mr)(s.f[17](i.audio.backPacket+8),i.audio.backPacket+72,k.i0)),c.M[15](i.audio.backPacket+32,i.audio.oformatContext.streams[0].index),this.writeAVPacket(i.audio.backPacket,i.audio),i.avpacketPool.release(i.audio.backPacket),i.audio.backPacket=0),i.video&&i.video.backPacket>0&&((!n||e<BigInt(0))&&(r=(0,u.Mr)(s.f[17](i.video.backPacket+8),i.video.backPacket+72,k.i0)),c.M[15](i.video.backPacket+32,i.video.oformatContext.streams[0].index),this.writeAVPacket(i.video.backPacket,i.video),i.avpacketPool.release(i.video.backPacket),i.video.backPacket=0);const o=S.T9(a,r);for(;;){if(i.audio&&!i.audio.packetEnded){if(i.audio.backPacket=await this.pullAVPacket(i.audio,i),i.audio.backPacket<0&&(i.audio.packetEnded=!0,i.audio.backPacket=0,!i.video||i.video.packetEnded))break;if(a<BigInt(0)&&(a=(0,u.Mr)(s.f[17](i.audio.backPacket+8),i.audio.backPacket+72,k.i0)),!((0,u.Mr)(s.f[17](i.audio.backPacket+8),i.audio.backPacket+72,k.i0)<o+i.cacheDuration))break;c.M[15](i.audio.backPacket+32,i.audio.oformatContext.streams[0].index),this.writeAVPacket(i.audio.backPacket,i.audio),i.audio.enableRawMpeg||Q.bX(i.audio.oformatContext),i.audio.track.addBuffer(i.audio.bufferQueue.flush()),i.avpacketPool.release(i.audio.backPacket),i.audio.backPacket=0}if(i.video&&!i.video.packetEnded){if(i.video.backPacket=await this.pullAVPacket(i.video,i),i.video.backPacket<0&&(i.video.packetEnded=!0,i.video.backPacket=0,!i.audio||i.audio.packetEnded))break;if(!((0,u.Mr)(s.f[17](i.video.backPacket+8),i.video.backPacket+72,k.i0)<o+i.cacheDuration))break;c.M[15](i.video.backPacket+32,i.video.oformatContext.streams[0].index),this.writeAVPacket(i.video.backPacket,i.video),i.video.enableRawMpeg||Q.bX(i.video.oformatContext),i.video.track.addBuffer(i.video.bufferQueue.flush()),i.avpacketPool.release(i.video.backPacket),i.video.backPacket=0}}const d=[];i.audio&&(i.audio.enableRawMpeg||Q.bX(i.audio.oformatContext),d.push(new Promise((t=>{i.audio.track.addBuffer(i.audio.bufferQueue.flush(),(()=>{t()}))})))),i.video&&(i.video.enableRawMpeg||Q.bX(i.video.oformatContext),d.push(new Promise((t=>{i.video.track.addBuffer(i.video.bufferQueue.flush(),(()=>{t()}))})))),await Promise.all(d),i.audio&&!i.audio.packetEnded&&(i.audio.backPacket<=0&&(i.audio.backPacket=await this.pullAVPacket(i.audio,i),i.audio.backPacket<0&&(i.audio.packetEnded=!0,i.audio.backPacket=0)),i.audio.packetEnded||(i.audio.frontPacket=await this.pullAVPacket(i.audio,i),i.audio.frontPacket<0?(i.audio.frontPacket=0,i.audio.packetEnded=!0,i.audio.frontBuffered=!1):(i.audio.packetEnded=!1,i.audio.frontBuffered=!0),i.audio.startTimestamp=BigInt(Math.floor((0,B.A)()))-(a+i.cacheDuration+(0,u.k)(i.audio.startPTS,i.audio.oformatContext.streams[0].timeBase,k.i0))*BigInt(100)/i.playRate,i.pausing?i.pauseTimestamp=(0,B.A)():i.audio.loop.start())),i.video&&!i.video.packetEnded&&(i.video.backPacket<=0&&(i.video.backPacket=await this.pullAVPacket(i.video,i),i.video.backPacket<0&&(i.video.packetEnded=!0,i.video.backPacket=0)),i.video.packetEnded||(i.video.frontPacket=await this.pullAVPacket(i.video,i),i.video.frontPacket<0?(i.video.packetEnded=!0,i.video.frontBuffered=!1,i.video.frontPacket=0):(i.video.packetEnded=!1,i.video.frontBuffered=!0),i.video.startTimestamp=BigInt(Math.floor((0,B.A)()))-(r+i.cacheDuration+(0,u.k)(i.video.startPTS,i.video.oformatContext.streams[0].timeBase,k.i0))*BigInt(100)/i.playRate,i.pausing?i.pauseTimestamp=(0,B.A)():i.video.loop.start())),await Promise.all([new Promise((t=>{i.audio?i.audio.track.insertEnqueueCallback(t):t()})),new Promise((t=>{i.video?i.video.track.insertEnqueueCallback(t):t()}))]);let f=0,l=0;i.audio?i.video?(f=Math.max(i.audio.track.getBufferedStart(),i.video.track.getBufferedStart()),l=Math.min(i.audio.track.getBufferedEnd(),i.video.track.getBufferedEnd())):(f=i.audio.track.getBufferedStart(),l=i.audio.track.getBufferedEnd()):i.video&&(f=i.video.track.getBufferedStart(),l=i.video.track.getBufferedEnd());let p=P.yw(o);return p>=f&&p<=l||(p=Math.abs(p-f)>Math.abs(p-l)?l:f),i.currentTimeNTP=(0,B.A)(),i.currentTime=p,i.seeking=!1,T.Yz(`after seek end, seekTime: ${p} taskId: ${t}`,L,1670),p}return 0}async setPlayRate(t,e){const i=this.tasks.get(t);if(i){if(i.enableJitterBuffer){let t=s.f[15](i.stats+244)?s.f[15](i.stats+32)/s.f[15](i.stats+244)*1e3:s.f[15](i.stats+232)?s.f[15](i.stats+120)/s.f[15](i.stats+232)*1e3:0;t&&t<=s.f[15](i.stats+280)&&(e=1)}i.targetRate=BigInt(Math.floor(Math.floor(100*e))),i.enableJitterBuffer||(i.audio&&i.audio.loop&&i.audio.loop.resetInterval(),i.video&&i.video.loop&&i.video.loop.resetInterval())}}async restart(t){const e=this.tasks.get(t);if(e){e.audio&&this.resetResource(e.audio,e),e.video&&this.resetResource(e.video,e);const t=new((0,q.A)());t.onsourceopen=this.getSourceOpenHandler(e),e.mediaSource=t}}async setCurrentTime(t,e){const i=this.tasks.get(t);i?(i.audio&&i.audio.track.removeBuffer(e),i.video&&s.f[15](i.stats+92)>0&&(i.video.track.setMediaBufferMax(Math.max(i.video.track.getMediaBufferMax(),Math.ceil(s.f[15](i.stats+92)/1e3*1.5),10)),i.video.track.removeBuffer(e)),i.currentTime=e,i.currentTimeNTP=(0,B.A)()):T.h2("task not found",L,1743)}async checkWaiting(t){let e=-1,i=-1;const a=t.currentTime+((0,B.A)()-t.currentTimeNTP)/1e3;if(t.audio){const i=t.audio.track.getSourceBuffer();i&&2===i.buffered.length&&i.buffered.end(1)-i.buffered.start(1)>=t.maxBuffer&&i.buffered.end(0)<a&&t.currentTime<i.buffered.start(1)&&(e=i.buffered.start(1))}if(t.video){const e=t.video.track.getSourceBuffer();e&&2===e.buffered.length&&e.buffered.end(1)-e.buffered.start(1)>=t.maxBuffer&&e.buffered.end(0)<a&&t.currentTime<e.buffered.start(1)&&(i=e.buffered.start(1))}if(t.audio&&t.video){if(e>0&&i>0){const a=Math.min(e,i);t.currentTime=a,t.controlIPCPort.notify("seek",{time:a})}}else e>0?(t.currentTime=e,t.controlIPCPort.notify("seek",{time:e})):i>0&&(t.currentTime=i,t.controlIPCPort.notify("seek",{time:i}))}async getMediaSource(t){const e=this.tasks.get(t);if(e)return e.mediaSource.handle?(this.getMediaSource.transfer.push(e.mediaSource.handle),e.mediaSource.handle):e.mediaSource;T.h2("task not found",L,1808)}async isManagedMediaSource(t){const e=this.tasks.get(t);if(e)return"function"==typeof ManagedMediaSource&&e.mediaSource instanceof ManagedMediaSource;T.h2("task not found",L,1819)}createTask(t,e){const i=new N.Ay(t.controlPort),a=new((0,q.A)()),r={...t,mediaSource:a,audio:null,video:null,playRate:BigInt(100),targetRate:BigInt(100),pauseTimestamp:0,seeking:!1,pausing:!1,controlIPCPort:i,currentTime:0,currentTimeNTP:0,cacheDuration:BigInt(Math.floor(500)),avpacketPool:new v.A((0,n.A)(t.avpacketList,d.A),t.avpacketListMutex),maxBuffer:t.isLive?1:4,minBuffer:t.isLive?.5:2,visibilityHidden:!1,fakePlayTimer:null};return this.tasks.set(t.taskId,r),a.onsourceopen=this.getSourceOpenHandler(r,e),i.on(N.Wo,(e=>{"visibilitychange"===e.method&&this.setVisibilityHidden(t.taskId,e.params.visibilityHidden)})),0}async setVisibilityHidden(t,e){const i=this.tasks.get(t);i&&(i.visibilityHidden=e,e?i.isLive&&i.video&&!i.audio&&(i.fakePlayTimer&&i.fakePlayTimer.destroy(),i.fakePlayTimer=new F.A((()=>{this.setCurrentTime(i.taskId,i.currentTime+((0,B.A)()-i.currentTimeNTP)/1e3)}),0,1e3),i.fakePlayTimer.start()):i.fakePlayTimer&&(i.fakePlayTimer.destroy(),i.fakePlayTimer=null,i.video.track.getBufferedTime()>(i.isLive?2:4)&&(this.setCurrentTime(i.taskId,Math.max(i.video.track.getBufferedEnd()-(i.isLive?1:4),i.video.track.getBufferedStart())),i.controlIPCPort.notify("seek",{time:i.currentTime}))))}async registerTask(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:BigInt(0);return this.tasks.has(t.taskId)?b.lh:this.createTask(t,e)}async unregisterTask(t){const e=this.tasks.get(t);e&&(e.audio&&(e.audio.loop&&(await e.audio.oformatContext.destroy(),e.audio.loop.destroy()),e.audio.pullIPC&&e.audio.pullIPC.destroy(),e.audio.pullQueue.queue.length&&(e.audio.pullQueue.queue.forEach((t=>{e.avpacketPool.release(t)})),e.audio.pullQueue.queue.length=0),e.audio.codecpar&&(0,w.dn)(e.audio.codecpar)),e.video&&(e.video.loop&&(await e.video.oformatContext.destroy(),e.video.loop.destroy()),e.video.pullIPC&&e.video.pullIPC.destroy(),e.video.pullQueue.queue.length&&(e.video.pullQueue.queue.forEach((t=>{e.avpacketPool.release(t)})),e.video.pullQueue.queue.length=0),e.video.codecpar&&(0,w.dn)(e.video.codecpar)),e.controlIPCPort&&e.controlIPCPort.destroy(),this.tasks.delete(t))}}},86223:(t,e,i)=>{i.d(e,{A:()=>c});var a,r=i(19371),s=i(25092),n=i(87339);!function(t){t[t.ADD=0]="ADD",t[t.REMOVE=1]="REMOVE",t[t.UPDATE_TIMESTAMP_OFFSET=2]="UPDATE_TIMESTAMP_OFFSET",t[t.CALLBACK=3]="CALLBACK",t[t.CHANGE_MIME_TYPE=4]="CHANGE_MIME_TYPE"}(a||(a={}));const o={mediaBufferMax:10};class c{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};(0,r.A)(this,"sourceBuffer",void 0),(0,r.A)(this,"operatorQueue",void 0),(0,r.A)(this,"updating",void 0),(0,r.A)(this,"lastRemoveTime",void 0),(0,r.A)(this,"paddingCallback",void 0),(0,r.A)(this,"options",void 0),(0,r.A)(this,"ending",void 0),(0,r.A)(this,"onQuotaExceededError",void 0),(0,r.A)(this,"onEnded",void 0),this.options=s.X$({},o,t),this.operatorQueue=[],this.updating=!1,this.lastRemoveTime=0,this.ending=!1}setSourceBuffer(t){this.sourceBuffer&&(this.sourceBuffer.onupdateend=null,this.sourceBuffer.onerror=null),this.sourceBuffer=t,this.sourceBuffer.onupdateend=()=>{this.paddingCallback&&(this.paddingCallback(),this.paddingCallback=null),this.operatorQueue&&this.operatorQueue.length?this.enqueue():(this.updating=!1,this.ending&&this.onEnded&&this.onEnded())},this.sourceBuffer.onerror=t=>{n.z3(`track update buffer error: ${t}`,"packages/avrender/src/track/Track.ts",112)}}changeMimeType(t,e){this.sourceBuffer&&(this.operatorQueue.push({operator:a.CHANGE_MIME_TYPE,type:t,mode:e}),this.updating||this.enqueue())}enqueue(){if(this.operatorQueue.length){const t=this.operatorQueue.shift();if(t.operator===a.ADD)try{this.sourceBuffer.appendBuffer(t.buffer),this.updating=!0,t.callback&&(this.paddingCallback=t.callback)}catch(e){if(!(e instanceof DOMException&&"QuotaExceededError"===e.name))throw e;this.operatorQueue.unshift(t),this.onQuotaExceededError&&this.onQuotaExceededError(),this.updating=!1}else t.operator===a.REMOVE?(this.sourceBuffer.remove(t.start,t.end),this.updating=!0,t.callback&&(this.paddingCallback=t.callback)):t.operator===a.UPDATE_TIMESTAMP_OFFSET?(this.sourceBuffer.timestampOffset=t.timestampOffset,t.callback&&t.callback(),this.operatorQueue.length?this.enqueue():this.updating=!1):t.operator===a.CALLBACK?(t.callback&&t.callback(),this.operatorQueue.length?this.enqueue():this.updating=!1):t.operator===a.CHANGE_MIME_TYPE&&(this.sourceBuffer.changeType(t.type),this.sourceBuffer.mode=t.mode,this.sourceBuffer.timestampOffset=0)}}addBuffer(t,e){t?(this.operatorQueue.push({operator:a.ADD,buffer:t,callback:e}),this.updating||this.enqueue()):e&&e()}insertEnqueueCallback(t){this.operatorQueue.push({operator:a.CALLBACK,callback:t}),this.updating||this.enqueue()}updateTimestampOffset(t,e){this.operatorQueue.push({operator:a.UPDATE_TIMESTAMP_OFFSET,timestampOffset:t,callback:e}),this.updating||this.enqueue()}removeBuffer(t,e){this.ending||(t=Math.floor(t))-this.lastRemoveTime<this.options.mediaBufferMax<<1||(this.operatorQueue.push({operator:a.REMOVE,start:this.lastRemoveTime,end:t-this.options.mediaBufferMax,callback:e}),this.updating||this.enqueue(),this.lastRemoveTime=t-this.options.mediaBufferMax)}removeAllBuffer(t){this.sourceBuffer.buffered.length?(this.operatorQueue.push({operator:a.REMOVE,start:this.sourceBuffer.buffered.start(0),end:this.sourceBuffer.buffered.end(this.sourceBuffer.buffered.length-1),callback:t}),this.updating||this.enqueue()):t&&t()}end(){this.ending=!0,this.updating||this.operatorQueue.length||this.onEnded&&this.onEnded()}stop(){if(this.sourceBuffer){try{this.sourceBuffer.abort(),this.updating=!1}catch(t){}try{this.sourceBuffer.buffered.length&&(this.updating?this.operatorQueue.push({operator:a.REMOVE,start:this.sourceBuffer.buffered.start(0),end:this.sourceBuffer.buffered.end(this.sourceBuffer.buffered.length-1)}):(this.sourceBuffer.remove(this.sourceBuffer.buffered.start(0),this.sourceBuffer.buffered.end(this.sourceBuffer.buffered.length-1)),this.updating=!0)),this.paddingCallback&&(this.paddingCallback(),this.paddingCallback=null)}catch(t){}}}reset(){this.stop(),this.operatorQueue.length=0,this.ending=!1}isPaused(){return!this.updating&&this.operatorQueue.length}getQueueLength(){return this.operatorQueue.length}getBufferedTime(){return this.sourceBuffer&&this.sourceBuffer.buffered.length?this.sourceBuffer.buffered.end(this.sourceBuffer.buffered.length-1)-this.sourceBuffer.buffered.start(0):0}getBufferedStart(){return this.sourceBuffer&&this.sourceBuffer.buffered.length?this.sourceBuffer.buffered.start(0):0}getBufferedEnd(){return this.sourceBuffer&&this.sourceBuffer.buffered.length?this.sourceBuffer.buffered.end(this.sourceBuffer.buffered.length-1):0}getBufferedDuration(t){if(this.sourceBuffer&&this.sourceBuffer.buffered.length){let e=0;try{for(let i=0;i<this.sourceBuffer.buffered.length;i++){const a=Math.max(t,this.sourceBuffer.buffered.start(i));e+=Math.max(t,this.sourceBuffer.buffered.end(i))-a}}catch(t){}return e}return 0}getSourceBuffer(){return this.sourceBuffer}setMediaBufferMax(t){this.options.mediaBufferMax=t}getMediaBufferMax(){return this.options.mediaBufferMax}destroy(){this.stop(),this.operatorQueue=null,this.sourceBuffer&&(this.sourceBuffer.onupdateend=this.sourceBuffer.onerror=null,this.sourceBuffer=null)}}},21279:(t,e,i)=>{i.d(e,{A:()=>s});var a=i(19371),r=i(4068);class s{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1048576,e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=arguments.length>2?arguments[2]:void 0;if((0,a.A)(this,"data",void 0),(0,a.A)(this,"buffer",void 0),(0,a.A)(this,"pointer",void 0),(0,a.A)(this,"pos",void 0),(0,a.A)(this,"size",void 0),(0,a.A)(this,"littleEndian",void 0),(0,a.A)(this,"error",void 0),(0,a.A)(this,"onFlush",void 0),(0,a.A)(this,"onSeek",void 0),this.pointer=0,this.pos=BigInt(0),this.size=t,this.littleEndian=!e,this.error=0,i&&i.view)this.size=i.length,this.buffer=i,this.data=i.view;else if(i&&!i.byteOffset)this.size=i.length,this.buffer=i,this.data=new DataView(this.buffer.buffer);else{if(i)throw new Error("not support subarray of ArrayBuffer");this.buffer=new Uint8Array(this.size),this.data=new DataView(this.buffer.buffer)}}writeUint8(t){this.remainingLength()<1&&this.flush(),this.data.setUint8(this.pointer,t),this.pointer++,this.pos++}writeUint16(t){this.remainingLength()<2&&this.flush(),this.data.setUint16(this.pointer,t,this.littleEndian),this.pointer+=2,this.pos+=BigInt(2)}writeUint24(t){this.remainingLength()<3&&this.flush();const e=(16711680&t)>>16,i=(65280&t)>>8,a=255&t;this.littleEndian?(this.writeUint8(a),this.writeUint8(i),this.writeUint8(e)):(this.writeUint8(e),this.writeUint8(i),this.writeUint8(a))}writeUint32(t){this.remainingLength()<4&&this.flush(),this.data.setUint32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeUint64(t){this.remainingLength()<8&&this.flush(),this.data.setBigUint64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}writeInt8(t){this.remainingLength()<1&&this.flush(),this.data.setInt8(this.pointer,t),this.pointer++,this.pos++}writeInt16(t){this.remainingLength()<2&&this.flush(),this.data.setInt16(this.pointer,t,this.littleEndian),this.pointer+=2,this.pos+=BigInt(2)}writeInt24(t){this.writeUint24(t<0?t+16777216:t)}writeInt32(t){this.remainingLength()<4&&this.flush(),this.data.setInt32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeInt64(t){this.remainingLength()<8&&this.flush(),this.data.setBigInt64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}writeFloat(t){this.remainingLength()<4&&this.flush(),this.data.setFloat32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeDouble(t){this.remainingLength()<8&&this.flush(),this.data.setFloat64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}getPointer(){return this.pointer}getPos(){return this.pos}remainingLength(){return this.size-this.pointer}writeBuffer(t){if(!t.length)return;let e=t.length;if(this.remainingLength()<e){let i=0;for(;e>0;){this.flush();const a=Math.min(this.size,e);this.buffer.set(t.subarray(i,i+a),this.pointer),this.pointer+=a,this.pos+=BigInt(a),i+=a,e-=a}}else this.buffer.set(t,this.pointer),this.pointer+=e,this.pos+=BigInt(e)}writeString(t){const e=r.encode(t);return this.writeBuffer(e),e.length}flush(){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));if(0!==t)throw this.error=t,Error("IOWriter error, flush failed")}this.pointer=0}flushToPos(t){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),t);if(0!==e)throw this.error=e,Error("IOWriter error, flush failed")}this.pointer=0}seek(t){if(!this.onSeek)throw this.error=-1048574,Error("IOWriter error, seek failed because of no seek callback");this.flush();const e=this.onSeek(t);if(0!==e)throw this.error=e,Error("IOWriter error, seek failed");this.pos=t}seekInline(t){const e=this.pointer;this.pointer=Math.max(0,Math.min(this.size,t)),this.pos+=BigInt(this.pointer-e)}skip(t){const e=this.pointer;this.pointer=Math.min(this.size,this.pointer+t),this.pos+=BigInt(this.pointer-e)}back(t){const e=this.pointer;this.pointer=Math.max(0,this.pointer-t),this.pos+=BigInt(this.pointer-e)}getBuffer(){return this.buffer.subarray(0,this.pointer)}setEndian(t){this.littleEndian=!t}reset(){this.pointer=0,this.pos=BigInt(0),this.error=0}getBufferSize(){return this.size}}},61738:(t,e,i)=>{i.d(e,{A:()=>s});var a=i(19371),r=i(33134);class s{constructor(){(0,a.A)(this,"queue",void 0),(0,a.A)(this,"pos",void 0),(0,a.A)(this,"startPos",void 0),(0,a.A)(this,"endPos",void 0),(0,a.A)(this,"index",void 0),(0,a.A)(this,"offset",void 0),this.queue=[],this.startPos=BigInt(0),this.endPos=BigInt(0),this.pos=BigInt(0)}write(t){if(this.pos===this.endPos)this.queue.push(t),this.endPos+=BigInt(t.length),this.pos+=BigInt(t.length);else if(t.length<this.queue[this.index].length-this.offset)this.queue[this.index].set(t,this.offset),this.offset+=t.length,this.pos+=BigInt(t.length),this.offset===this.queue[this.index].length&&(this.index++,this.offset=0),this.index===this.queue.length&&(this.index=-1,this.offset=-1,this.pos=this.endPos);else{let e=0;for(;e<t.length;){const i=Math.min(this.queue[this.index].length-this.offset,t.length-e);if(this.queue[this.index].set(t.subarray(e,e+i),this.offset),e+=i,this.offset+=i,this.pos+=BigInt(i),this.offset===this.queue[this.index].length){if(this.index+1===this.queue.length){if(e<t.length){const i=t.subarray(t.length-e);this.queue.push(i),this.endPos+=BigInt(i.length)}this.pos=this.endPos,this.index=-1,this.offset=-1;break}this.index++,this.offset=0}}}}seek(t){if(t<this.startPos||t>this.endPos)return!1;this.pos=t,this.index=-1,this.offset=-1;let e=this.startPos;for(let i=0;i<this.queue.length;i++){if(t<=e+BigInt(this.queue[i].length)){this.index=i,this.offset=Number(t-e);break}e+=BigInt(this.queue[i].length)}return this.index<0&&(this.pos=this.endPos),!0}flush(){this.startPos=this.endPos,this.pos=this.endPos,this.index=-1,this.offset=-1;const t=(0,r.A)(Uint8Array,this.queue);return this.queue.length=0,t}get size(){return this.queue.length}}}}]);
@@ -1 +0,0 @@
1
- (self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[473],{59829:(e,t,i)=>{i.d(t,{A:()=>o});var a=i(19371),r=i(42524),s=i(31184),n=i(62787);class o{constructor(){(0,a.A)(this,"inCodecpar",void 0),(0,a.A)(this,"inTimeBase",void 0),(0,a.A)(this,"outCodecpar",void 0)}init(e,t){return this.inCodecpar=(0,s.Gy)(168),(0,n.Yi)(this.inCodecpar,e),this.inTimeBase={den:r.f[15](t+4),num:r.f[15](t)},0}destroy(){this.inCodecpar&&((0,n.dn)(this.inCodecpar),this.inCodecpar=0)}}},70517:(e,t,i)=>{i.d(t,{A:()=>b});var a=i(19371),r=i(42524),s=i(77389),n=i(36271),o=i(75589),h=i(59829),d=i(41863),c=i(81819),f=i(87339),l=i(5043),p=i(91278),u=i(47378),g=i(30027),m=i(31184),w=i(1818),k=i(54829);class b extends h.A{constructor(){super(...arguments),(0,a.A)(this,"bitReader",void 0),(0,a.A)(this,"streamMuxConfig",void 0),(0,a.A)(this,"caches",void 0),(0,a.A)(this,"refSampleDuration",void 0)}init(e,t){return super.init(e,t),this.caches=[],this.refSampleDuration=BigInt(0),this.bitReader=new l.A,this.streamMuxConfig={profile:p.N_,sampleRate:p.N_,channels:p.N_},0}sendAVPacket(e){const t=(0,d.s3)(r.f[20](e+24),r.f[15](e+28));this.bitReader.appendBuffer(t);let i=r.f[17](e+16)!==p.Dh?r.f[17](e+16):r.f[17](e+8);for(;this.bitReader.remainingLength()>=20;){const t=this.bitReader.getPointer(),a=k.f7(null,this.bitReader);if(c.ai(a)){let e=!1;for(;this.bitReader.remainingLength()>=20;){if(695===this.bitReader.peekU(11)){e=!0;break}this.bitReader.readU1()}if(e)continue;return f.z3("AACLATMParser parse failed","packages/avformat/src/bsf/aac/LATM2RawFilter.ts",129),this.bitReader.reset(),u.LR}if(a.framePayloadLength>=this.bitReader.remainingLength()){this.bitReader.skipPadding(),this.bitReader.setPointer(t);break}a.useSameStreamMux||(this.streamMuxConfig.profile=a.profile,this.streamMuxConfig.sampleRate=a.sampleRate,this.streamMuxConfig.channels=a.channels);const h=a.framePayloadLength,l=new Uint8Array(h);for(let e=0;e<h;e++)l[e]=this.bitReader.readU(8);const w={dts:i,buffer:l,extradata:null,pos:r.f[17](e+56)};if(r.f[15](this.inCodecpar+48)!==this.streamMuxConfig.profile||r.f[15](this.inCodecpar+136)!==this.streamMuxConfig.sampleRate||r.f[15](this.inCodecpar+116)!==this.streamMuxConfig.channels){this.refSampleDuration=(0,g.k)(BigInt(Math.floor(1024/this.streamMuxConfig.sampleRate*p.SF)),p.KR,this.inTimeBase),s.M[15](this.inCodecpar+48,this.streamMuxConfig.profile),s.M[15](this.inCodecpar+136,this.streamMuxConfig.sampleRate),s.M[15](this.inCodecpar+116,this.streamMuxConfig.channels);const e=k.Ij((0,o.A)(this.inCodecpar,n.A));r.f[20](this.inCodecpar+12)&&(0,m.Eb)(r.f[20](this.inCodecpar+12)),s.M[20](this.inCodecpar+12,(0,m.sY)(e.length)),(0,d.lW)(r.f[20](this.inCodecpar+12),e.length,e),s.M[15](this.inCodecpar+16,e.length),w.extradata=e}this.caches.push(w),i+=this.refSampleDuration,this.bitReader.skipPadding()}return 0}receiveAVPacket(e){if(this.caches.length){(0,w.Up)(e);const t=this.caches.shift(),i=(0,m.sY)(t.buffer.length);if((0,d.lW)(i,t.buffer.length,t.buffer),(0,w.NX)(e,i,t.buffer.length),s.M[17](e+16,t.dts),s.M[17](e+8,t.dts),s.M[17](e+56,t.pos),s.M[15](e+36,1|r.f[15](e+36)),s.M[17](e+48,this.refSampleDuration),t.extradata){const i=(0,m.sY)(t.extradata.length);(0,d.lW)(i,t.extradata.length,t.extradata),(0,w.Ow)(e,1,i,t.extradata.length)}return 0}return u.LT}reset(){return this.bitReader.reset(),this.caches.length=0,0}}},37607:(e,t,i)=>{i.r(t),i.d(t,{default:()=>U});var a=i(19371),r=i(75354),s=i(42524),n=i(77389),o=i(6072),h=i(70517),d=i(76919),c=i(41863),f=i(91278),l=i(31184),p=i(47378),u=i(30027),g=i(1818),m=i(54829),w=i(81819),k=i(33134),b=i(87339),R=i(17630),B=i(5043);const I="packages/avformat/src/formats/IAacFormat.ts",P=1024;class U extends o.A{constructor(){super(),(0,a.A)(this,"type",15),(0,a.A)(this,"frameType",void 0),(0,a.A)(this,"fileSize",void 0),(0,a.A)(this,"currentPts",void 0),(0,a.A)(this,"latmFilter",void 0),(0,a.A)(this,"encodeSampleRate",void 0),(0,a.A)(this,"currentPos",void 0),(0,a.A)(this,"pendingData",void 0),(0,a.A)(this,"firstFramePos",void 0),(0,a.A)(this,"pendingPos",void 0),(0,a.A)(this,"streamMuxConfig",void 0)}init(e){this.currentPts=BigInt(0),this.currentPos=BigInt(0),this.firstFramePos=BigInt(0),this.streamMuxConfig={profile:f.N_,sampleRate:f.N_,channels:f.N_}}async destroy(e){this.latmFilter&&(this.latmFilter.destroy(),this.latmFilter=null)}async estimateTotalBlock(e){let t=0;const i=e.ioReader.getPos();for(;;)try{const i=await e.ioReader.peekBuffer(7),a=(3&i[3])<<11|i[4]<<3|(224&i[5])>>>5;t+=1+(3&i[6]),await e.ioReader.skip(a)}catch(e){break}return await e.ioReader.seek(i),t}async parseTransportStreamTimestamp(e){if("ID3"===await e.ioReader.peekString(3)){await e.ioReader.skip(3);const t={version:await e.ioReader.readUint8(),revision:await e.ioReader.readUint8(),flags:await e.ioReader.readUint8()},i={},a=(127&await e.ioReader.readUint8())<<21|(127&await e.ioReader.readUint8())<<14|(127&await e.ioReader.readUint8())<<7|127&await e.ioReader.readUint8();if(await d.qg(e.ioReader,a,t,i),w.o(i["com.apple.streaming.transportStreamTimestamp"]))return i["com.apple.streaming.transportStreamTimestamp"]}}async readHeader(e){let t;2&e.ioReader.flags&&(t=await this.parseTransportStreamTimestamp(e));const i=await e.ioReader.peekBuffer(4);if(this.fileSize=await e.ioReader.fileSize(),65===i[0]&&68===i[1]&&73===i[2]&&70===i[3]){const t=e.createStream();t.codecpar.codecId=86018,t.codecpar.codecType=1,this.frameType=0,t.duration=this.fileSize;const i=new B.A;i.appendBuffer(await e.ioReader.readBuffer(Math.min(20,Number(this.fileSize)))),i.skip(32),i.readU1()&&i.skip(72),i.skip(1),i.skip(1),i.skip(1);const a=i.readU(23);t.timeBase.den=16384,t.timeBase.num=1,a&&(t.timeBase.den=a);const r=i.readU(4);e.ioReader.getPos()<this.fileSize&&i.appendBuffer(await e.ioReader.readBuffer(Math.min(312*r,Number(this.fileSize-e.ioReader.getPos()))));for(let e=0;e<r;e++){i.readU(4);const a=i.readU(2),r=i.readU(4),s=i.readU(4),n=i.readU(4),o=i.readU(4),h=i.readU(2),d=i.readU(3),f=i.readU(4);i.readU1()&&i.skip(4),i.readU1()&&i.skip(4),i.readU1()&&i.skip(3);let p=h;for(e=0;e<s;e++)p+=i.readU1()?2:1,i.skip(4);for(e=0;e<n;e++)p+=i.readU1()?2:1,i.skip(4);for(e=0;e<o;e++)p+=i.readU1()?2:1,i.skip(4);for(e=0;e<h;e++)i.skip(4);for(e=0;e<d;e++)i.skip(4);for(e=0;e<f;e++)i.skip(5);i.skipPadding();const u=i.readU(8);if(u&&i.skip(8*u),!e){t.codecpar.profile=a,t.codecpar.chLayout.nbChannels=p,t.codecpar.sampleRate=m.hY[r];const e=m.Ij(t.codecpar);t.codecpar.extradata=(0,l.sY)(e.length),(0,c.lW)(t.codecpar.extradata,e.length,e),t.codecpar.extradataSize=e.length}}i.skipPadding(),this.firstFramePos=i.getPos(),i.remainingLength()&&(this.pendingData=i.getBuffer().slice(i.getPointer()),this.pendingPos=this.firstFramePos)}else if(255!==i[0]||240&~i[1]){if(86!==i[0]||224&~i[1])return p.LR;{this.frameType=2;const t=e.createStream();t.codecpar.codecId=86018,t.codecpar.codecType=1;const i=m.f7(await e.ioReader.peekBuffer(20));if(w.ai(i))return p.LR;t.codecpar.profile=i.profile,t.codecpar.sampleRate=i.sampleRate,t.codecpar.chLayout.nbChannels=i.channels;const a=m.Ij(t.codecpar);t.codecpar.extradata=(0,l.sY)(a.length),(0,c.lW)(t.codecpar.extradata,a.length,a),t.codecpar.extradataSize=a.length,t.duration=f.Dh,t.timeBase.den=i.sampleRate,t.timeBase.num=1,this.latmFilter=new h.A,this.latmFilter.init(t.codecpar[r.o9],t.timeBase[r.o9])}}else{this.frameType=1;const i=e.createStream();i.codecpar.codecId=86018,i.codecpar.codecType=1;const a=m.Bq(await e.ioReader.peekBuffer(20));if(w.ai(a))return p.LR;this.encodeSampleRate=a.sampleRate,i.codecpar.profile=a.profile,i.codecpar.sampleRate=a.sampleRate,i.codecpar.chLayout.nbChannels=a.channels;const r=m.Ij(i.codecpar);i.codecpar.extradata=(0,l.sY)(r.length),(0,c.lW)(i.codecpar.extradata,r.length,r),i.codecpar.extradataSize=r.length,i.timeBase.den=i.codecpar.sampleRate,i.timeBase.num=1,this.streamMuxConfig.profile=a.profile,this.streamMuxConfig.sampleRate=a.sampleRate,this.streamMuxConfig.channels=a.channels,2&e.ioReader.flags?w.o(t)&&(this.currentPts=(0,u.k)(t,{num:1,den:9e4},i.timeBase)):i.duration=(0,u.k)(BigInt(Math.floor(1024*await this.estimateTotalBlock(e)/this.encodeSampleRate*f.SF)),f.KR,i.timeBase)}return 0}async readAVPacket(e,t){const i=e.streams.find((e=>e.codecpar.codecType=1));try{if(2&e.ioReader.flags){let t=await this.parseTransportStreamTimestamp(e);w.o(t)&&(this.currentPts=(0,u.k)(t,{num:1,den:9e4},i.timeBase))}let a,r=e.ioReader.getPos();if(0===this.frameType){let i=P;if(this.pendingData&&(r=this.pendingPos,a=this.pendingData.subarray(0,i),i-=a.length,a.length<this.pendingData.length?(this.pendingData=this.pendingData.subarray(a.length),this.pendingPos+=BigInt(a.length)):this.pendingData=null),i){const t=Math.min(i,Number(BigInt.asIntN(32,this.fileSize-r))),s=t?await e.ioReader.readBuffer(t):void 0;a&&s?a=(0,k.A)(Uint8Array,[a,s]):s&&(a=s)}if(!a)return-1048576;const s=(0,l.sY)(a.length);(0,c.lW)(s,a.length,a),(0,g.NX)(t,s,a.length),n.M[17](t+48,BigInt(P)),n.M[17](t+56,r)}else if(1===this.frameType){const s=await e.ioReader.readBuffer(7),o=1&s[1],h=1+((192&s[2])>>>6),d=(60&s[2])>>>2,p=(1&s[2])<<2|(192&s[3])>>>6,w=m.hY[d],k=m.En[p];if(this.streamMuxConfig.profile!==h||this.streamMuxConfig.sampleRate!==w||this.streamMuxConfig.channels!==k){this.streamMuxConfig.profile=h,this.streamMuxConfig.sampleRate=w,this.streamMuxConfig.channels=k;const e=m.Ij({profile:h,sampleRate:w,chLayout:{nbChannels:k}}),i=(0,l.sY)(e.length);(0,c.lW)(i,e.length,e),(0,g.Ow)(t,1,i,e.length)}const b=(3&s[3])<<11|s[4]<<3|(224&s[5])>>>5,R=3&s[6];let B=1===o?7:9,I=b-B;9===B&&await e.ioReader.skip(2);const P=(0,u.k)(BigInt(Math.floor(1024*(R+1)/this.encodeSampleRate*f.SF)),f.KR,i.timeBase);n.M[17](t+48,P),a=await e.ioReader.readBuffer(I);const U=(0,l.sY)(a.length);(0,c.lW)(U,a.length,a),(0,g.NX)(t,U,a.length),n.M[17](t+56,r)}else if(2===this.frameType){if(r===this.fileSize)return-1048576;for(;;){let i=this.latmFilter.receiveAVPacket(t);if(i!==p.LT){if(i<0)return i;n.M[17](t+48,BigInt(1024)),n.M[17](t+56,this.currentPos),this.currentPos+=BigInt(0|s.f[15](t+28));break}{if(e.ioReader.getPos()===this.fileSize)return-1048576;n.M[17](t+56,e.ioReader.getPos()),a=await e.ioReader.readBuffer(Math.min(P,Number(BigInt.asIntN(32,this.fileSize-r))));const i=(0,l.sY)(a.length);(0,c.lW)(i,a.length,a),(0,g.NX)(t,i,a.length),this.latmFilter.sendAVPacket(t)}}}return n.M[15](t+32,i.index),n.M[15](t+76,i.timeBase.den),n.M[15](t+72,i.timeBase.num),n.M[17](t+16,this.currentPts),n.M[17](t+8,this.currentPts),n.M[15](t+36,1|s.f[15](t+36)),this.currentPts+=s.f[17](t+48),0}catch(t){return-1048576!==e.ioReader.error&&-1048572!==e.ioReader.error?(b.z3(`read packet error, ${t}`,I,527),p.LR):e.ioReader.error}}async syncFrame(e){if(0===this.frameType)return;let t=f.Dh;const i=1===this.frameType?4095:695,a=1===this.frameType?4:5;for(;;)try{let r=0;for(t=e.ioReader.getPos();3!==r&&await e.ioReader.peekUint16()>>>a===i;){const t=1===this.frameType?m.Bq(await e.ioReader.peekBuffer(9)):m.f7(await e.ioReader.peekBuffer(20));if(w.ai(t))break;r++,await e.ioReader.skip(t.headerLength+t.framePayloadLength)}if(3===r)break;await e.ioReader.skip(1)}catch(e){break}t!==f.Dh&&await e.ioReader.seek(t)}async seek(e,t,i,a){if(16&a&&2&e.ioReader.flags){const a=(0,u.k)(i,t.timeBase,f.i0);return await e.ioReader.seek(a,!0),this.currentPts=i,BigInt(0)}if(1===this.frameType||2===this.frameType){const r=e.ioReader.getPos();if(2&a){const s=await e.ioReader.fileSize();return s<=BigInt(0)?BigInt(p.E$):(i<BigInt(0)?i=BigInt(0):i>s&&(i=s),await e.ioReader.seek(i),4&a||(await this.syncFrame(e),t.duration&&this.fileSize&&(this.currentPts=i/this.fileSize*t.duration)),r)}if(t&&t.sampleIndexes.length){let a=R.El(t.sampleIndexes,(e=>e.pts>i?-1:1));if(a>0&&(0,u.k)(i-t.sampleIndexes[a-1].pts,t.timeBase,f.i0)<BigInt(5e3))return b.Yz(`seek in sampleIndexes, found index: ${a}, pts: ${t.sampleIndexes[a-1].pts}, pos: ${t.sampleIndexes[a-1].pos}`,I,635),await e.ioReader.seek(t.sampleIndexes[a-1].pos),this.currentPts=i,r}if(2===this.frameType)return BigInt(p.E$);if(b.Yz("not found any keyframe index, try to seek in bytes",I,646),!t.duration)return BigInt(p.E$);{await e.ioReader.seek(BigInt(0));let a=BigInt(0);for(;;)try{if(a>=i)return this.currentPts=a,r;const s=await e.ioReader.peekBuffer(7),n=(3&s[3])<<11|s[4]<<3|(224&s[5])>>>5,o=3&s[6];a+=(0,u.k)(BigInt(Math.floor(1024*(o+1)/this.encodeSampleRate*f.SF)),f.KR,t.timeBase),await e.ioReader.skip(n)}catch(e){return BigInt(p.E$)}}}else if(0===this.frameType){this.latmFilter&&this.latmFilter.reset();const t=e.ioReader.getPos();return i<=BigInt(0)?i=this.firstFramePos:i>this.fileSize&&(i=this.fileSize),await e.ioReader.seek(i),this.currentPts=i,t}return BigInt(p.E$)}getAnalyzeStreamsCount(){return 1}}},6072:(e,t,i)=>{i.d(t,{A:()=>r});var a=i(19371);class r{constructor(){(0,a.A)(this,"type",-1),(0,a.A)(this,"onStreamAdd",void 0)}async destroy(e){}}},76919:(e,t,i)=>{i.d(t,{In:()=>p,fz:()=>u,hm:()=>b,qg:()=>k});var a=i(42524),r=i(77389),s=i(41863),n=i(1818),o=i(31184),h=i(87339),d=i(4068),c=i(17630),f=i(54570);const l="packages/avformat/src/formats/mp3/id3v2.ts",p={JPG:7,PNG:61,"image/gif":97,"image/jpeg":7,"image/jpg":7,"image/png":61,"image/tiff":96,"image/bmp":78,"image/webp":171},u=["Other","32x32 pixels 'file icon'","Other file icon","Cover (front)","Cover (back)","Leaflet page","Media (e.g. label side of CD)","Lead artist/lead performer/soloist","Artist/performer","Conductor","Band/Orchestra","Composer","Lyricist/text writer","Recording Location","During recording","During performance","Movie/video screen capture","A bright coloured fish","Illustration","Band/artist logotype","Publisher/Studio logotype"];function g(e,t){let i="utf-8";return 0===e?i="iso-8859-1":1===e?i="utf-16":2===e&&(i="utf-16be"),new TextDecoder(i).decode(t)}function m(e){return(127&e)+((32512&e)>>1)+((8323072&e)>>2)+((2130706432&e)>>3)}async function w(e,t){await e.seek(t);const i=await e.readString(4);return/^[A-Z0-9]+$/.test(i)}async function k(e,t,i,a){const r=2!==i.version,s=r?10:6;let n=e.getPos()+BigInt(0|t);async function o(){await e.skip(Number(BigInt.asIntN(32,n-e.getPos())))}if(r&&64&i.flags){let a=await async function(e,t){let i=0;for(;t--;)i=(i<<7)+(127&await e.readUint8());return i}(e,4);if(4===i.version&&(a-=4),a<0)return h.z3("invalid extended header length",l,149),await o();if(await e.skip(a),(t-=a+4)<0)return h.z3("extended header too long",l,155),await o()}for(;t>s;){let n,o;if(r){if(n=await e.readString(4),o=await e.readUint32(),!o){h.z3("invalid frame size",l,168);break}if(4===i.version&&o>127)if(o<t){await e.flush();const t=e.getPos();if(!(1&e.flags||6+o<e.remainingLength()))break;if(await w(e,t+BigInt(2)+BigInt(m(o))))o=m(o);else if(!await w(e,t+BigInt(2)+BigInt(o)))break;await e.seek(t)}else o=m(o);await e.readUint16()}else n=await e.readString(3),o=await e.readUint24();if("APIC"===n)a.apic||(a.apic=[]),a.apic.push(await e.readBuffer(o));else if("USLT"===n){const t=await e.readUint8(),i=await e.readString(3),r=await e.readBuffer(o-4);a.lyrics=`${i} ${g(t,r)}`}else if("COMM"===n||"COM"===n){const t=await e.readUint8(),i=await e.readString(3),r=await e.readBuffer(o-4);a.comment=`${i} ${g(t,r)}`}else if("PRIV"===n){const t=e.getPos(),i=[];for(;;){const t=await e.readUint8();if(0===t)break;i.push(t)}const r=d.decode(new Uint8Array(i));let s;s="com.apple.streaming.transportStreamTimestamp"===r?await e.readUint64():await e.readBuffer(o-Number(e.getPos()-t)),a[r]=s}else{let t;switch(t="T"===n[0]?g(await e.readUint8(),await e.readBuffer(o-1)):await e.readBuffer(o),n){case"TIT2":case"TT2":a.title=t;break;case"TPE1":case"TP1":a.artist=t;break;case"TPE2":case"TP2":a.albumArtist=t;break;case"TPOS":a.disc=t;break;case"TCOP":a.copyright=t;break;case"TALB":case"TAL":a.album=t;break;case"TRCK":case"TRK":a.track=t;break;case"TYER":case"TDRL":case"TDRC":a.date=t;break;case"COMM":case"COM":a.comment=t;break;case"TCON":case"TCO":a.genre=t;break;case"TSSE":case"TEN":a.encoder=t;break;case"TCOM":a.composer=t;break;case"TENC":a.vendor=t;break;case"TLAN":a.language=t;break;case"TPE3":case"TP3":a.performer=t;break;case"TPUB":a.publisher=t;break;case"TCMP":case"TCP":a.compilation=t;break;case"TDEN":a.creationTime=t;break;case"TSOA":a.albumSort=t;break;case"TSOP":a.artistSort=t;break;case"TSOT":a.titleSort=t;break;case"TIT1":a.grouping=t;break;default:a[n]=t}}t-=o+s}4==i.version&&16&i.flags&&(n+=BigInt(10)),await e.skip(Number(BigInt.asIntN(32,n-e.getPos())))}function b(e,t,i){const h=2!==i.version;t.forEach((t=>{const i=new f.A(t),d=i.readUint8();let l;function m(){let e=Number(i.getPos());for(;e<t.length&&t[e];)e++;return e}if(h?(l=i.readString(m()-Number(i.getPos())),i.skip(1)):l=i.readString(3),!p[l])return;const w=i.readUint8();let k;const b=m()-Number(i.getPos());b&&(k=g(d,i.readBuffer(b))),i.skip(1);const R=e.createStream();R.codecpar.codecId=p[l],R.codecpar.codecType=0,R.disposition|=1024,R.attachedPic=(0,n._5)(),r.M[15](R.attachedPic+32,R.index);const B=i.remainingSize(),I=(0,o.sY)(B),P=i.readBuffer(B);(0,s.lW)(I,B,P),P.length>=8&&c.FB(P.subarray(0,8),new Uint8Array([137,80,78,71,13,10,26,10]))&&(R.codecpar.codecId=61),(0,n.NX)(R.attachedPic,I,B),r.M[15](R.attachedPic+36,1|a.f[15](R.attachedPic+36)),R.metadata.comment=u[w],k&&(R.metadata.title=k)}))}},54829:(e,t,i)=>{i.d(t,{Bq:()=>f,En:()=>h,Ij:()=>c,XC:()=>d,f7:()=>l,hY:()=>o,uF:()=>s});var a=i(91278),r=i(5043);const s={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},o=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350,a.N_,a.N_,a.N_],h=[a.N_,1,2,3,4,5,6,7];function d(e,t){if(!t&&e.sideData[1]&&(t=e.sideData[1]),t){const{profile:i,sampleRate:r,channels:s}=function(e){let t=a.N_,i=a.N_,r=a.N_;return e.length>=2&&(t=e[0]>>3&31,i=o[(7&e[0])<<1|e[1]>>7],r=h[e[1]>>3&15]),{profile:t,sampleRate:i,channels:r}}(t);e.codecpar.profile=i,e.codecpar.sampleRate=r,e.codecpar.chLayout.nbChannels=s,e.codecpar.frameSize=5===i?2048:1024,e.codecpar.format=8}}function c(e){const t=n[e.sampleRate],i=e.chLayout.nbChannels,r=e.profile===a.N_?2:e.profile,s=new Uint8Array(2);return s[0]=(31&r)<<3|(14&t)>>1,s[1]=(1&t)<<7|(15&i)<<3,s}function f(e){if(e.length<7)return-1;const t=e[0]<<4|e[1]>>4;if(4095!==t)return-1;const i=1&e[1],a=(192&e[2])>>>6,r=(60&e[2])>>>2,s=(1&e[2])<<2|(192&e[3])>>>6,n=(3&e[3])<<11|e[4]<<3|(224&e[5])>>>5,d=3&e[6];let c=1===i?7:9,f=n-c;return{syncWord:t,profile:a+1,sampleRate:o[r],channels:h[s],aacFrameLength:n,numberOfRawDataBlocksInFrame:d,headerLength:c,framePayloadLength:f}}function l(e,t){function i(){const e=t.readU(2);let i=0;for(let a=0;a<=e;a++)i<<=8,i|=t.readU(8);return i}t||(t=new r.A).appendBuffer(e);const a=t.getPointer(),s={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;s.syncWord=n,s.muxLengthBytes=t.readU(13);const d=1===t.readU1();if(s.useSameStreamMux=d,!d){const e=1===t.readU1();if(e&&1===t.readU1())return-1;if(e&&i(),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 a=e?i():0;const r=t.readU(5);a-=5;const n=t.readU(4);a-=4;const d=t.readU(4);if(a-=4,t.readU(3),a-=3,a>0&&t.readU(a),0!==t.readU(3))return-1;if(t.readU(8),1===t.readU1())if(e)i();else{let e=0;for(;;){e<<=8;const i=1===t.readU1();if(e+=t.readU(8),!i)break}}1===t.readU1()&&t.readU(8),s.profile=r+1,s.sampleRate=o[n],s.channels=h[d]}let c=0;for(;;){const e=t.readU(8);if(c+=e,255!==e)break}return s.framePayloadLength=c,s.headerLength=t.getPointer()-a+(8===t.getBitLeft()?0:1),s}},21279:(e,t,i)=>{i.d(t,{A:()=>s});var a=i(19371),r=i(4068);class s{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1048576,t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=arguments.length>2?arguments[2]:void 0;if((0,a.A)(this,"data",void 0),(0,a.A)(this,"buffer",void 0),(0,a.A)(this,"pointer",void 0),(0,a.A)(this,"pos",void 0),(0,a.A)(this,"size",void 0),(0,a.A)(this,"littleEndian",void 0),(0,a.A)(this,"error",void 0),(0,a.A)(this,"onFlush",void 0),(0,a.A)(this,"onSeek",void 0),this.pointer=0,this.pos=BigInt(0),this.size=e,this.littleEndian=!t,this.error=0,i&&i.view)this.size=i.length,this.buffer=i,this.data=i.view;else if(i&&!i.byteOffset)this.size=i.length,this.buffer=i,this.data=new DataView(this.buffer.buffer);else{if(i)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,i=(65280&e)>>8,a=255&e;this.littleEndian?(this.writeUint8(a),this.writeUint8(i),this.writeUint8(t)):(this.writeUint8(t),this.writeUint8(i),this.writeUint8(a))}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 i=0;for(;t>0;){this.flush();const a=Math.min(this.size,t);this.buffer.set(e.subarray(i,i+a),this.pointer),this.pointer+=a,this.pos+=BigInt(a),i+=a,t-=a}}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 +0,0 @@
1
- (self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[475],{28034:(t,i,e)=>{e.d(i,{A:()=>r});var s=e(19371);class r{constructor(){(0,s.A)(this,"signature",void 0),(0,s.A)(this,"version",void 0),(0,s.A)(this,"flags",void 0),(0,s.A)(this,"dataOffset",void 0),(0,s.A)(this,"hasVideo",void 0),(0,s.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(t){this.signature=await t.readString(3),this.version=await t.readUint8(),this.flags=await t.readUint8(),this.dataOffset=await t.readUint32(),this.hasAudio=!!(4&this.flags),this.hasVideo=!!(1&this.flags)}write(t){this.flags=0,this.hasAudio&&(this.flags|=4),this.hasVideo&&(this.flags|=1),t.writeString(this.signature),t.writeUint8(this.version),t.writeUint8(this.flags),t.writeUint32(this.dataOffset)}}},35206:(t,i,e)=>{e.d(i,{A:()=>f});var s=e(19371),r=e(38568),n=e(44109),a=e(47378),h=e(87339),o=e(33134),l=e(21279);class f{constructor(){(0,s.A)(this,"onMetaData",void 0),this.onMetaData={canSeekToEnd:!1}}async read(t,i){const e=t.getPos(),s=e+BigInt(Math.floor(i)),r=await n.$x(t,s),o=await n.$x(t,s);this[r]=o,s>t.getPos()&&await t.skip(Number(BigInt.asIntN(32,s-t.getPos())));const l=Number(t.getPos()-e),f=await t.readUint32();return l+11!==f?(h.R8(`script size not match, size: ${l+11}, previousTagSize: ${f}`,"packages/avformat/src/formats/flv/FlvScriptTag.ts",60),a.LR):0}computeSize(){const t=[],i=new l.A;return i.onFlush=i=>(t.push(i.slice()),0),n.bD(i,"onMetaData"),n.bD(i,this.onMetaData),i.flush(),(0,o.A)(Uint8Array,t).length}write(t){if(this.onMetaData){const i=[],e=new l.A;e.onFlush=t=>(i.push(t.slice()),0),n.bD(e,"onMetaData"),n.bD(e,this.onMetaData),e.flush();const s=(0,o.A)(Uint8Array,i);r.M5(t,18,BigInt(0),void 0,s)}}dts2Position(t){if(this.canSeek()){let i=-1;const e=this.onMetaData.keyframes.times,s=this.onMetaData.keyframes.filepositions;let r;for(r=0;r<e.length;r++){if(e[r]===t){i=r;break}if(e[r]>t){i=Math.max(r-1,0);break}}return r&&r===e.length&&(i=e.length-1),{pos:s[i],dts:e[i]}}return{pos:-1,dts:-1}}position2DTS(t){if(this.canSeek()){let e=-1;const s=this.onMetaData.keyframes.times,r=this.onMetaData.keyframes.filepositions;let n=0;for(n=0;n<r.length;n++)if(r[n]>t){e=n;break}var i;return n===r.length?null!==(i=this.onMetaData.duration)&&void 0!==i?i:s[s.length-1]:s[e]}return-1}canSeek(){return!!(this.onMetaData.keyframes&&this.onMetaData.keyframes.filepositions&&this.onMetaData.keyframes.filepositions.length)}}},38568:(t,i,e)=>{e.d(i,{M5:()=>n});var s=e(81819);function r(t,i,e){const s=t.getPos(),r=t.getPointer(),n=s-BigInt(Math.floor(r));i<s&&i>=n?(t.seekInline(r+Number(i-s)),t.writeUint24(e),t.seekInline(r)):(t.seek(i),t.writeUint24(e),t.seek(s))}function n(t,i,e,n,a,h){t.flush(),t.writeUint8(i);const o=t.getPos();t.writeUint24(0),t.writeUint24(Number(e&BigInt(16777215))),t.writeUint8(Number(e>>BigInt(24)&BigInt(255))),t.writeUint24(0);const l=t.getPos();n&&n(t),s.Pc(a)?(a(t),r(t,o,Number(t.getPos()-l))):a&&(r(t,o,a.length+Number(t.getPos()-l)),t.writeBuffer(a));const f=Number(t.getPos()-o)+1;h&&h(f),t.writeUint32(f)}},44109:(t,i,e)=>{e.d(i,{$x:()=>h,bD:()=>o});var s=e(81819),r=e(17630),n=e(25092);async function a(t,i){return{key:await t.readString(await t.readUint16()),value:await h(t,i)}}async function h(t,i){let e;switch(await t.readUint8()){case 0:e=await t.readDouble();break;case 1:e=!!await t.readUint8();break;case 2:e=await t.readString(await t.readUint16());break;case 3:for(e={};t.getPos()<i;){const{key:s,value:r}=await a(t,i);if(e[s]=r,9==(16777215&await t.peekUint24())){await t.skip(3);break}}break;case 8:for(e={},await t.skip(4);t.getPos()<i;){const{key:s,value:r}=await a(t,i);if(e[s]=r,9==(16777215&await t.peekUint24())){await t.skip(3);break}}break;case 9:case 5:e=null;break;case 10:e=[];const s=await t.readUint32();for(let r=0;r<s;r++)e.push(await h(t,i));break;case 11:const r=await t.readDouble(),n=await t.readInt16();e=new Date(r+60*n*1e3);break;case 12:e=await t.readString(await t.readUint32())}return e}function o(t,i){s.ai(i)?(t.writeUint8(0),t.writeDouble(i)):s.o(i)?(t.writeUint8(0),t.writeDouble(Number(i))):s.zM(i)?(t.writeUint8(1),t.writeUint8(i?1:0)):s.Yj(i)?i.length>=65536?(t.writeUint8(12),t.writeUint32(i.length),t.writeString(i)):(t.writeUint8(2),t.writeUint16(i.length),t.writeString(i)):s.YO(i)?(t.writeUint8(10),t.writeUint32(i.length),r.__(i,(i=>{o(t,i)}))):s.Ik(i)?(t.writeUint8(3),n.__(i,((i,e)=>{t.writeUint16(e.length),t.writeString(e),o(t,i)})),t.writeUint24(9)):i instanceof Date?(t.writeUint8(11),t.writeDouble(i.getTime()),t.writeInt16(0)):null==i&&t.writeUint8(5)}},21279:(t,i,e)=>{e.d(i,{A:()=>n});var s=e(19371),r=e(4068);class n{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1048576,i=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],e=arguments.length>2?arguments[2]:void 0;if((0,s.A)(this,"data",void 0),(0,s.A)(this,"buffer",void 0),(0,s.A)(this,"pointer",void 0),(0,s.A)(this,"pos",void 0),(0,s.A)(this,"size",void 0),(0,s.A)(this,"littleEndian",void 0),(0,s.A)(this,"error",void 0),(0,s.A)(this,"onFlush",void 0),(0,s.A)(this,"onSeek",void 0),this.pointer=0,this.pos=BigInt(0),this.size=t,this.littleEndian=!i,this.error=0,e&&e.view)this.size=e.length,this.buffer=e,this.data=e.view;else if(e&&!e.byteOffset)this.size=e.length,this.buffer=e,this.data=new DataView(this.buffer.buffer);else{if(e)throw new Error("not support subarray of ArrayBuffer");this.buffer=new Uint8Array(this.size),this.data=new DataView(this.buffer.buffer)}}writeUint8(t){this.remainingLength()<1&&this.flush(),this.data.setUint8(this.pointer,t),this.pointer++,this.pos++}writeUint16(t){this.remainingLength()<2&&this.flush(),this.data.setUint16(this.pointer,t,this.littleEndian),this.pointer+=2,this.pos+=BigInt(2)}writeUint24(t){this.remainingLength()<3&&this.flush();const i=(16711680&t)>>16,e=(65280&t)>>8,s=255&t;this.littleEndian?(this.writeUint8(s),this.writeUint8(e),this.writeUint8(i)):(this.writeUint8(i),this.writeUint8(e),this.writeUint8(s))}writeUint32(t){this.remainingLength()<4&&this.flush(),this.data.setUint32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeUint64(t){this.remainingLength()<8&&this.flush(),this.data.setBigUint64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}writeInt8(t){this.remainingLength()<1&&this.flush(),this.data.setInt8(this.pointer,t),this.pointer++,this.pos++}writeInt16(t){this.remainingLength()<2&&this.flush(),this.data.setInt16(this.pointer,t,this.littleEndian),this.pointer+=2,this.pos+=BigInt(2)}writeInt24(t){this.writeUint24(t<0?t+16777216:t)}writeInt32(t){this.remainingLength()<4&&this.flush(),this.data.setInt32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeInt64(t){this.remainingLength()<8&&this.flush(),this.data.setBigInt64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}writeFloat(t){this.remainingLength()<4&&this.flush(),this.data.setFloat32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeDouble(t){this.remainingLength()<8&&this.flush(),this.data.setFloat64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}getPointer(){return this.pointer}getPos(){return this.pos}remainingLength(){return this.size-this.pointer}writeBuffer(t){if(!t.length)return;let i=t.length;if(this.remainingLength()<i){let e=0;for(;i>0;){this.flush();const s=Math.min(this.size,i);this.buffer.set(t.subarray(e,e+s),this.pointer),this.pointer+=s,this.pos+=BigInt(s),e+=s,i-=s}}else this.buffer.set(t,this.pointer),this.pointer+=i,this.pos+=BigInt(i)}writeString(t){const i=r.encode(t);return this.writeBuffer(i),i.length}flush(){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));if(0!==t)throw this.error=t,Error("IOWriter error, flush failed")}this.pointer=0}flushToPos(t){if(!this.onFlush)throw this.error=-1048574,Error("IOWriter error, flush failed because of no flush callback");if(this.pointer){const i=this.onFlush(this.buffer.subarray(0,this.pointer),t);if(0!==i)throw this.error=i,Error("IOWriter error, flush failed")}this.pointer=0}seek(t){if(!this.onSeek)throw this.error=-1048574,Error("IOWriter error, seek failed because of no seek callback");this.flush();const i=this.onSeek(t);if(0!==i)throw this.error=i,Error("IOWriter error, seek failed");this.pos=t}seekInline(t){const i=this.pointer;this.pointer=Math.max(0,Math.min(this.size,t)),this.pos+=BigInt(this.pointer-i)}skip(t){const i=this.pointer;this.pointer=Math.min(this.size,this.pointer+t),this.pos+=BigInt(this.pointer-i)}back(t){const i=this.pointer;this.pointer=Math.max(0,this.pointer-t),this.pos+=BigInt(this.pointer-i)}getBuffer(){return this.buffer.subarray(0,this.pointer)}setEndian(t){this.littleEndian=!t}reset(){this.pointer=0,this.pos=BigInt(0),this.error=0}getBufferSize(){return this.size}}}}]);
@@ -1 +0,0 @@
1
- (self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[508],{7132:(t,e,i)=>{i.d(e,{A:()=>a});var s=i(19371);class a{constructor(){(0,s.A)(this,"onFlush",void 0)}}},97648:(t,e,i)=>{i.d(e,{A:()=>p});var s=i(19371),a=i(7132),r=i(27669),n=i(80687),o=i(87339),h=i(88583);const l="packages/avnetwork/src/bsp/aes/AESDecryptPipe.ts",d=16;let u=!0;const c=new Uint8Array(d).fill(d);class p extends a.A{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1048576;super(),(0,s.A)(this,"buffer",void 0),(0,s.A)(this,"aesSoftDecryptor",void 0),(0,s.A)(this,"aesWebDecryptor",void 0),(0,s.A)(this,"aesTargetDecryptor",void 0),(0,s.A)(this,"pointer",void 0),(0,s.A)(this,"endPointer",void 0),(0,s.A)(this,"size",void 0),(0,s.A)(this,"ended",void 0),(0,s.A)(this,"iv",void 0),(0,s.A)(this,"key",void 0),(0,s.A)(this,"mode",void 0),(0,s.A)(this,"pos",void 0),this.mode=t,this.size=e,this.pointer=0,this.endPointer=0,this.pos=0,this.ended=!1,this.buffer=new Uint8Array(e),this.aesSoftDecryptor=new r.A(t),n.A.isSupport()&&u&&(this.aesWebDecryptor=new n.A(t)),this.aesTargetDecryptor=this.aesWebDecryptor||this.aesSoftDecryptor}remainingLength(){return this.endPointer-this.pointer}async expandKey(t,e){this.key=t,this.iv=e,this.aesWebDecryptor&&await this.aesWebDecryptor.expandKey(t),t.byteLength<=8&&this.aesSoftDecryptor.expandKey(t)}async flush_(t){for(;;){const e=await this.onFlush(t);if(-1048575!==e)return e;await new h.A(0)}}async flush(){if(this.size-this.remainingLength()<=0)return;this.pointer<this.endPointer?this.pointer&&(this.buffer.set(this.buffer.subarray(this.pointer,this.endPointer),0),this.endPointer=this.endPointer-this.pointer):this.endPointer=0,this.pointer=0;const t=await this.flush_(this.buffer.subarray(this.endPointer));if(t<0){if(-1048576===t)return void(this.ended=!0);o.h2(`AESPipe error, flush failed, ret: ${t}`,l,130)}this.endPointer+=t}removePadding(t){const e=t.length,i=e&&new DataView(t.buffer).getUint8(e-1);return i?t.subarray(0,e-i):t}async decryptCBC(t){let e,i=0;this.aesTargetDecryptor!==this.aesWebDecryptor||this.ended||(e=this.buffer.subarray(this.pointer+t,this.pointer+t+d).slice(),this.buffer.set((await this.aesWebDecryptor.encryptPadding(c,this.buffer.subarray(this.pointer+t-d,this.pointer+t))).subarray(0,d),this.pointer+t),i=d);try{const s=this.buffer.subarray(this.pointer,this.pointer+t+i),a=await this.aesTargetDecryptor.decrypt(s,this.iv);return this.iv=s.slice(s.length-d-i,s.length-i).buffer,e&&this.buffer.set(e,this.pointer+t),this.pointer+=t,this.pos+=t,new Uint8Array(a)}catch(i){if(this.aesTargetDecryptor===this.aesWebDecryptor&&this.key.byteLength<=8)return o.R8("web aes decrypt failed, try to use soft decryptor",l,180),e&&this.buffer.set(e,this.pointer+t),this.aesTargetDecryptor=this.aesSoftDecryptor,u=!1,this.decryptCBC(t);o.h2("aes decrypt failed",l,190)}}getCTRIv(){const t=new Uint8Array(this.iv).slice();let e=Math.floor(this.pos/d);for(let i=15;i>=0&&e>0;i--){const s=t[i]+(255&e);t[i]=255&s,e=(e>>>8)+(s>>8)}return t.buffer}async decryptCTR(t){try{const e=this.buffer.subarray(this.pointer,this.pointer+t),i=await this.aesTargetDecryptor.decrypt(e,this.getCTRIv());return this.pointer+=t,this.pos+=t,new Uint8Array(i)}catch(e){if(this.aesTargetDecryptor===this.aesWebDecryptor&&this.key.byteLength<=8)return o.R8("web aes decrypt failed, try to use soft decryptor",l,216),this.aesTargetDecryptor=this.aesSoftDecryptor,u=!1,this.decryptCTR(t);o.h2("aes decrypt failed",l,222)}}async read(t){for(;!this.ended&&this.remainingLength()<48;)await this.flush();if(0===this.remainingLength())return-1048576;if(0===this.mode){const e=Math.min(Math.floor((this.remainingLength()-(this.ended?0:32))/d)*d,t.length);let i=await this.decryptCBC(e);return this.ended&&this.aesTargetDecryptor===this.aesSoftDecryptor&&(i=this.removePadding(i)),t.set(i),i.length}{const e=this.ended?this.remainingLength():Math.min(Math.floor(this.remainingLength()/d)*d,t.length);let i=await this.decryptCTR(e);return t.set(i),i.length}}}},90508:(t,e,i)=>{i.r(e),i.d(e,{default:()=>v});var s=i(19371),a=i(88583),r=i(47378),n=i(25092),o=i(87339),h=i(80687),l=i(97494),d=i(16563),u=i(81819),c=i(91390),p=i(59435),m=i(80853),f=i(39989),T=i(97648);const E="packages/avnetwork/src/ioLoader/HlsIOLoader.ts";function y(t){var e,i,s;const a={method:"GET",headers:{},mode:"cors",cache:"default",referrerPolicy:"no-referrer-when-downgrade"};return null!==(e=t.httpOptions)&&void 0!==e&&e.headers&&n.__(t.httpOptions.headers,((t,e)=>{a.headers[e]=t})),null!==(i=t.httpOptions)&&void 0!==i&&i.credentials&&(a.credentials=t.httpOptions.credentials),null!==(s=t.httpOptions)&&void 0!==s&&s.referrerPolicy&&(a.referrerPolicy=t.httpOptions.referrerPolicy),a}async function A(t,e,i,s){return new Promise(((r,n)=>{let h=0;!async function l(){try{const n=await fetch(t,{...y(e),signal:s}),u=await n.text(),c=(0,m.A)(u);if(i.isLive&&(!c.segments||c.segments.length<2)){var d;let t=5;null!==(d=c.segments)&&void 0!==d&&d.length&&(t=c.segments[0].duration*(2-c.segments.length)),o.R8(`wait for min buffer time, now segments: ${c.segments.length}`,E,84),await new a.A(t),h=0,l()}r(c)}catch(t){if("AbortError"===(null==t?void 0:t.name))return void r(null);if(h<i.retryCount)return h++,o.z3(`failed fetch m3u8 file, retry(${h}/3)`,E,98),await new a.A(i.retryInterval),l();o.z3("HLSLoader: exception, fetch slice error",E,103),n()}}()}))}class g{constructor(t,e,i,a){(0,s.A)(this,"options",void 0),(0,s.A)(this,"info",void 0),(0,s.A)(this,"mediaPlayList",void 0),(0,s.A)(this,"fetchedMap",void 0),(0,s.A)(this,"fetchedHistoryList",void 0),(0,s.A)(this,"mediaListUrl",void 0),(0,s.A)(this,"segmentIndex",void 0),(0,s.A)(this,"currentUri",void 0),(0,s.A)(this,"loader",void 0),(0,s.A)(this,"keyMap",void 0),(0,s.A)(this,"currentIV",void 0),(0,s.A)(this,"currentKey",void 0),(0,s.A)(this,"aesDecryptPipe",void 0),(0,s.A)(this,"initLoaded",void 0),(0,s.A)(this,"isInitLoader",void 0),(0,s.A)(this,"minBuffer",void 0),(0,s.A)(this,"pendingBuffer",void 0),(0,s.A)(this,"magicAdded",void 0),(0,s.A)(this,"sleep",void 0),(0,s.A)(this,"aborted",void 0),(0,s.A)(this,"signal",void 0),this.options=t,this.info=e,this.segmentIndex=0,this.fetchedMap=new Map,this.fetchedHistoryList=[],this.keyMap=new Map,this.aborted=!1,i&&a&&this.setMediaPlayList(i,a)}setMediaPlayList(t,e){if(this.options.isLive){this.fetchedMap.clear(),this.fetchedHistoryList.length=0,this.segmentIndex=0;const t=e.segments.find((t=>t.uri===this.currentUri));if(t)for(e.segments.forEach(((e,i)=>{e.mediaSequenceNumber===t.mediaSequenceNumber+1?this.segmentIndex=i:e.mediaSequenceNumber<=t.mediaSequenceNumber&&(this.fetchedMap.set(e.uri,!0),this.fetchedHistoryList.push(e.uri))}));this.fetchedHistoryList.length>=10;)this.fetchedMap.delete(this.fetchedHistoryList.shift())}if(this.mediaListUrl=t,this.mediaPlayList=e,this.minBuffer=this.mediaPlayList.duration||0,this.mediaPlayList.endlist&&(this.options.isLive=!1),this.initLoaded=!0,this.mediaPlayList.segments.length&&this.mediaPlayList.segments[0].map&&(this.initLoaded=!1),this.mediaPlayList.lowLatencyCompatibility){const t=this.mediaPlayList.lowLatencyCompatibility.partHoldBack||this.mediaPlayList.lowLatencyCompatibility.holdBack||this.minBuffer;let e=0,s=!1,a=0;for(let r=this.mediaPlayList.segments.length-1;r>=0;r--){var i;const n=this.mediaPlayList.segments[r];if(null!==(i=n.parts)&&void 0!==i&&i.length){if(!n.uri)continue;for(let i=n.parts.length-1;i>=0;i--){const o=n.parts[i];if(!o.hint&&(e+=o.duration,o.independent&&(s=!0),e>=t&&s)){a=r;break}}if(e>=t&&s)break}else if(e+=n.duration,s=!0,e>=t&&s){a=r;break}}this.fetchedMap.clear(),this.fetchedHistoryList.length=0;for(let t=0;t<a;t++){const e=this.mediaPlayList.segments[t];this.fetchedMap.set(e.uri,!0),this.fetchedHistoryList.push(e.uri)}for(;this.fetchedHistoryList.length>=10;)this.fetchedMap.delete(this.fetchedHistoryList.shift());this.segmentIndex=a,this.minBuffer=e}}getMediaListUrl(){return this.mediaListUrl}async checkNeedDecrypt(t,e,i){if(!t)return void(this.aesDecryptPipe=null);if("aes-128"!==t.method.toLocaleLowerCase()&&"aes-128-ctr"!==t.method.toLocaleLowerCase()&&("aes-256"!==t.method.toLocaleLowerCase()&&"aes-256-ctr"!==t.method.toLocaleLowerCase()||!h.A.isSupport())){if("mp4"===e.split(".").pop())return void(this.aesDecryptPipe=null);o.h2(`m3u8 ts not support EXT-X-KEY METHOD ${t.method}`,E,276)}const s=t.uri;if(this.keyMap.has(s)?this.currentKey=this.keyMap.get(s):(this.currentKey=await(await fetch(l.ll(this.mediaListUrl,s),y(this.info))).arrayBuffer(),this.keyMap.set(s,this.currentKey)),t.iv)this.currentIV=t.iv.buffer;else{const t=new Uint8Array(16);new DataView(t.buffer).setUint32(12,i,!1),this.currentIV=t.buffer}this.aesDecryptPipe=new T.A(t.method.toLocaleLowerCase().indexOf("ctr")>0?1:0),this.aesDecryptPipe.onFlush=async t=>this.loader.read(t),await this.aesDecryptPipe.expandKey(this.currentKey,this.currentIV)}handleSlice(t,e){const i=this.loader.getUrl().split(".").pop();if("mp3"!==i&&!this.magicAdded&&73===e[0]&&68===e[1]&&51===e[2]){var s;const a=null!==(s=c.HR[i])&&void 0!==s?s:-1;return-1===a?t:(t+6>e.length&&(this.pendingBuffer=e.slice(t-6)),e.set(e.slice(0,t-6),6),e[0]=76,e[1]=73,e[2]=77,e[3]=65,e[4]=a>>>8&255,e[5]=255&a,this.magicAdded=!0,this.pendingBuffer?t:t+6)}return t}async read(t){if(this.pendingBuffer){let e=this.pendingBuffer.length;return t.set(this.pendingBuffer),this.pendingBuffer=null,e}let e=0;if(this.loader){if(e=this.aesDecryptPipe?await this.aesDecryptPipe.read(t):await this.loader.read(t),-1048576!==e||this.aborted)return e;if(this.isInitLoader)this.initLoaded=!0;else if(this.options.isLive)this.fetchedMap.set(this.currentUri,!0),10===this.fetchedHistoryList.length&&this.fetchedMap.delete(this.fetchedHistoryList.shift()),this.fetchedHistoryList.push(this.currentUri),this.segmentIndex++;else if(this.segmentIndex++,this.segmentIndex>=this.mediaPlayList.segments.length)return-1048576;this.loader=null}if(this.options.isLive){var i,s;const e=this.mediaPlayList.segments.filter((t=>t.uri&&!this.fetchedMap.get(t.uri)));if(!e.length){var r;if(this.mediaPlayList.endlist)return-1048576;const e=(this.minBuffer-((0,d.A)()-this.mediaPlayList.timestamp)/1e3)/2;return e>0&&(this.sleep=new a.A(e),await this.sleep,this.sleep=null,this.aborted)?-1048576:("function"==typeof AbortController&&(this.signal=new AbortController),this.mediaPlayList=await A(this.mediaListUrl,this.info,this.options,null===(r=this.signal)||void 0===r?void 0:r.signal),this.signal=null,this.aborted?-1048576:this.read(t))}this.isInitLoader=!(null===(i=e[0].map)||void 0===i||!i.uri||this.initLoaded),this.currentUri=e[0].uri,this.isInitLoader?null!==(s=e[0].map)&&void 0!==s&&s.key&&await this.checkNeedDecrypt(e[0].map.key,e[0].map.uri,this.segmentIndex+(this.mediaPlayList.mediaSequenceBase||0)):await this.checkNeedDecrypt(e[0].key,this.currentUri,this.segmentIndex+(this.mediaPlayList.mediaSequenceBase||0)),this.loader=new f.A(n.X$({},this.options,{disableSegment:!0,loop:!1}));const o=l.ll(this.mediaListUrl,this.isInitLoader?e[0].map.uri:this.currentUri),h={from:0,to:-1},u=this.isInitLoader?e[0].map.byterange:e[0].byterange;u&&(h.from=u.offset,h.to=u.offset+u.length),await this.loader.open(n.X$({},this.info,{url:o}),h);const c=await(this.aesDecryptPipe?this.aesDecryptPipe.read(t):this.loader.read(t));return c>10?this.handleSlice(c,t):c}{var o,h;this.loader=new f.A(n.X$({},this.options,{disableSegment:!0,loop:!1}));let e=this.mediaPlayList.segments[this.segmentIndex];for(;e&&!e.uri;)e=this.mediaPlayList.segments[++this.segmentIndex];this.isInitLoader=!(null===(o=e.map)||void 0===o||!o.uri||this.initLoaded),this.isInitLoader?null!==(h=e.map)&&void 0!==h&&h.key&&await this.checkNeedDecrypt(e.map.key,e.map.uri,this.segmentIndex+(this.mediaPlayList.mediaSequenceBase||0)):await this.checkNeedDecrypt(e.key,e.uri,this.segmentIndex+(this.mediaPlayList.mediaSequenceBase||0));const i=l.ll(this.mediaListUrl,this.isInitLoader?e.map.uri:e.uri),s={from:0,to:-1},a=this.isInitLoader?e.map.byterange:e.byterange;a&&(s.from=a.offset,s.to=a.offset+a.length),await this.loader.open(n.X$({},this.info,{url:i}),s);const r=await(this.aesDecryptPipe?this.aesDecryptPipe.read(t):this.loader.read(t));return r>10?this.handleSlice(r,t):r}}async seek(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;this.loader&&(await this.loader.abort(),this.loader=null);let i=e,s=Number(t),a=-1;for(let t=0;t<this.mediaPlayList.segments.length;t++)if(u.ai(this.mediaPlayList.segments[t].duration)&&(i+=this.mediaPlayList.segments[t].duration,1e3*i>=s)){a=t;break}return-1===a&&(a=this.mediaPlayList.segments.length-1),this.segmentIndex=a,this.aborted=!1,0}abortSleep(){this.aborted=!0,this.loader&&this.loader.abortSleep(),this.sleep&&(this.sleep.stop(),this.sleep=null)}async abort(){this.abortSleep(),this.signal&&(this.signal.abort(),this.signal=null),this.loader&&(await this.loader.abort(),this.loader=null)}getMinBuffer(){return this.minBuffer}getDuration(){return this.mediaPlayList.duration}getNextFragmentStart(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;if(this.segmentIndex>=this.mediaPlayList.segments.length-1)return-1;for(let e=0;e<this.segmentIndex+1;e++){if(!u.ai(this.mediaPlayList.segments[e].duration))return-1;t+=this.mediaPlayList.segments[e].duration}return t}}class v extends p.A{constructor(){super(...arguments),(0,s.A)(this,"info",void 0),(0,s.A)(this,"masterPlaylist",void 0),(0,s.A)(this,"mediaPlayListIndex",void 0),(0,s.A)(this,"mainLoader",void 0),(0,s.A)(this,"loaders",void 0),(0,s.A)(this,"audioSelectedIndex",void 0),(0,s.A)(this,"subtitleSelectedIndex",void 0),(0,s.A)(this,"sleep",void 0),(0,s.A)(this,"aborted",void 0),(0,s.A)(this,"start",void 0)}async fetchMasterPlayList(){try{const e=await fetch(this.info.url,y(this.info)),i=await e.text(),s=(0,m.A)(i);if(s.isMasterPlaylist){if(this.masterPlaylist=s,this.options.preferResolution||this.options.preferVideoCodec){let t=1,e=1;if(this.options.preferResolution){const i=this.options.preferResolution.split("*");t=+i[0]||1,e=+i[1]||1}let i=!1,s=1/0,a=this.masterPlaylist.variants.some((t=>t.codecs&&t.codecs.indexOf(this.options.preferVideoCodec)>=0));this.masterPlaylist.variants.forEach(((r,n)=>{if(!(this.options.preferVideoCodec&&a&&r.codecs&&-1===r.codecs.indexOf(this.options.preferVideoCodec))&&(i||(this.mediaPlayListIndex=n,i=!0),r.resolution&&this.options.preferResolution)){const i=1===t?1:r.resolution.width,a=1===e?1:r.resolution.height;Math.abs(i*a-t*e)<s&&(s=Math.abs(i*a-t*e),this.mediaPlayListIndex=n)}}))}const t=this.masterPlaylist.variants[this.mediaPlayListIndex];if(t){if(t.audio.length&&this.options.preferAudioLang){let e=!1;t.audio.forEach(((t,i)=>{t.language&&t.language.indexOf(this.options.preferAudioLang)>=0&&!e&&(this.audioSelectedIndex=i,t.language===this.options.preferAudioLang&&(e=!0))}))}if(t.subtitles.length&&this.options.preferSubtitleLang){let e=!1;t.subtitles.forEach(((t,i)=>{t.language&&t.language.indexOf(this.options.preferSubtitleLang)>=0&&!e&&(this.subtitleSelectedIndex=i,t.language===this.options.preferSubtitleLang&&(e=!0))}))}}}else{const e=s;if(this.options.isLive&&(!e.segments||e.segments.length<2)){var t;let i=5;return null!==(t=e.segments)&&void 0!==t&&t.length&&(i=e.segments[0].duration*(2-e.segments.length)),o.R8(`wait for min buffer time, now segments: ${e.segments.length}`,E,656),await new a.A(i),this.fetchMasterPlayList()}this.mainLoader=new g(n.X$({enableBandwidthReader:!0},this.options),this.info,this.info.url,e),this.loaders.set(0,this.mainLoader)}return s}catch(t){if(this.retryCount<this.options.retryCount)return this.retryCount++,o.z3(`failed fetch m3u8 file, retry(${this.retryCount}/3)`,E,673),this.sleep=new a.A(3),await this.sleep,this.sleep=null,this.aborted&&o.h2("HLSLoader: exception, fetch abort",E,678),this.fetchMasterPlayList();this.status=3,o.h2("HLSLoader: exception, fetch slice error",E,684)}}buildUrl(t){return/^https?/.test(t)||(t=l.ll(this.info.url,t)),t}async createLoader(){if(this.masterPlaylist){const t=this.masterPlaylist.variants[this.mediaPlayListIndex];if(t||o.h2("no media playlist",E,700),t.audio.length){const e=this.buildUrl(t.audio[this.audioSelectedIndex].uri);this.loaders.set(1,new g(this.options,this.info,e,await A(e,this.info,this.options)))}if(t.subtitles.length){const e=this.buildUrl(t.subtitles[this.subtitleSelectedIndex].uri);this.loaders.set(3,new g(this.options,this.info,e,await A(e,this.info,this.options)))}const e=this.buildUrl(t.uri);this.mainLoader=new g(n.X$({enableBandwidthReader:!0},this.options),this.info,e,await A(e,this.info,this.options)),this.loaders.set(0,this.mainLoader)}}async open(t){return 2===this.status?0:0!==this.status?r.lh:(this.info=t,this.mediaPlayListIndex=0,this.audioSelectedIndex=0,this.subtitleSelectedIndex=0,this.loaders=new Map,this.status=1,this.retryCount=0,this.aborted=!1,this.start=0,await this.fetchMasterPlayList(),!this.loaders.size&&this.masterPlaylist&&await this.createLoader(),this.status=2,0)}async read(t,e){if(!e)return r.UY;const i=await this.loaders.get(e.mediaType).read(t);return i<0&&-1048575!==i&&(this.status=-1048576===i?4:3),i}async seek(t,e){return e?(await this.loaders.get(e.mediaType).seek(t,this.start),4===this.status&&(this.status=2),0):r.UY}async size(){return BigInt(0)}async abort(){for(let t of this.loaders)await t[1].abort();this.aborted=!0,this.sleep&&(this.sleep.stop(),this.sleep=null)}async stop(){await this.abort(),this.status=0}getDuration(){var t,e;return null!==(t=null===(e=this.mainLoader)||void 0===e?void 0:e.getDuration())&&void 0!==t?t:0}hasVideo(){return this.masterPlaylist?this.masterPlaylist.variants.length>0:!!this.mainLoader}hasAudio(){if(this.masterPlaylist)return this.masterPlaylist.variants[this.mediaPlayListIndex].audio.length>0}hasSubtitle(){if(this.masterPlaylist)return this.masterPlaylist.variants[this.mediaPlayListIndex].subtitles.length>0}getVideoList(){var t,e;return{list:null!==(t=null===(e=this.masterPlaylist)||void 0===e?void 0:e.variants.map((t=>{var e,i,s,a,r;return{width:null!==(e=null===(i=t.resolution)||void 0===i?void 0:i.width)&&void 0!==e?e:0,height:null!==(s=null===(a=t.resolution)||void 0===a?void 0:a.height)&&void 0!==s?s:0,frameRate:null!==(r=t.frameRate)&&void 0!==r?r:0,codec:t.codecs,bandwidth:t.bandwidth}})))&&void 0!==t?t:[],selectedIndex:this.mediaPlayListIndex||0}}getAudioList(){return this.masterPlaylist&&this.hasAudio()?{list:this.masterPlaylist.variants[this.mediaPlayListIndex].audio.map((t=>({lang:t.language,codec:t.name}))),selectedIndex:this.audioSelectedIndex}:{list:[],selectedIndex:0}}getSubtitleList(){return this.masterPlaylist&&this.hasSubtitle()?{list:this.masterPlaylist.variants[this.mediaPlayListIndex].subtitles.map((t=>({lang:t.language,codec:t.name}))),selectedIndex:this.subtitleSelectedIndex}:{list:[],selectedIndex:0}}async selectVideo(t){if(this.masterPlaylist){const e=this.masterPlaylist.variants[t];if(e){const i=this.buildUrl(e.uri),s=await A(i,this.info,this.options);if(this.loaders.get(0).setMediaPlayList(i,s),this.mediaPlayListIndex=t,1===e.audio.length&&this.loaders.has(1)&&this.buildUrl(e.audio[0].uri)!==this.loaders.get(1).getMediaListUrl()){const t=this.buildUrl(e.audio[0].uri),i=await A(t,this.info,this.options);this.loaders.get(1).setMediaPlayList(t,i)}if(1===e.subtitles.length&&this.loaders.has(3)&&this.buildUrl(e.subtitles[0].uri)!==this.loaders.get(3).getMediaListUrl()){const t=this.buildUrl(e.subtitles[0].uri),i=await A(t,this.info,this.options);this.loaders.get(3).setMediaPlayList(t,i)}return this.loaders.get(0).getNextFragmentStart(this.start)}}return-1}async selectAudio(t){if(this.masterPlaylist){const e=this.masterPlaylist.variants[this.mediaPlayListIndex];if(null!=e&&e.audio[t]){const i=this.buildUrl(e.audio[t].uri),s=await A(i,this.info,this.options);return this.loaders.get(1).setMediaPlayList(i,s),this.audioSelectedIndex=t,this.loaders.get(1).getNextFragmentStart(this.start)}}return-1}async selectSubtitle(t){if(this.masterPlaylist){const e=this.masterPlaylist.variants[this.mediaPlayListIndex];if(null!=e&&e.subtitles[t]){const i=this.buildUrl(e.subtitles[t].uri),s=await A(i,this.info,this.options);return this.loaders.get(3).setMediaPlayList(i,s),this.subtitleSelectedIndex=t,this.loaders.get(3).getNextFragmentStart(this.start)}}return-1}getMinBuffer(){var t,e;return null!==(t=null===(e=this.mainLoader)||void 0===e?void 0:e.getMinBuffer())&&void 0!==t?t:0}setStart(t){this.start=t}}},80853:(t,e,i)=>{i.d(e,{A:()=>I});var s=i(39381),a=i(3137),r=i(87339);const n="packages/avprotocol/src/m3u8/parser.ts";function o(t){return s.Bq(t,'"')}function h(t){const e=s.gI(t,",");return{duration:s.Ro(e[0]),title:decodeURIComponent(escape(e[1]))}}function l(t){const e=s.gI(t,"@");return{length:s.Ro(e[0]),offset:e[1]?s.Ro(e[1]):-1}}function d(t){const e=s.gI(t,"x");return{width:s.Ro(e[0]),height:s.Ro(e[1])}}function u(t){const e="ALLOWED-CPC: Each entry must consit of KEYFORMAT and Content Protection Configuration",i=t.split(",");0===i.length&&r.z3(e,n,105);const a=[];for(const t of i){const[i,o]=s.gI(t,":");i&&o?a.push({format:i,cpcList:o.split("/")}):r.z3(e,n,111)}return a}function c(t){const e=s.m2(t);return 16!==e.length&&r.z3("IV must be a 128-bit unsigned integer",n,122),e}function p(t,e){e.IV&&t.compatibleVersion<2&&(t.compatibleVersion=2),(e.KEYFORMAT||e.KEYFORMATVERSIONS)&&t.compatibleVersion<5&&(t.compatibleVersion=5)}function m(t){const e={};for(const a of s.HG(t)){const[t,h]=s.gI(a,"="),p=o(h);switch(t){case"URI":e[t]=p;break;case"START-DATE":case"END-DATE":e[t]=new Date(p);break;case"IV":e[t]=c(p);break;case"BYTERANGE":e[t]=l(p);break;case"RESOLUTION":e[t]=d(p);break;case"ALLOWED-CPC":e[t]=u(p);break;case"END-ON-NEXT":case"DEFAULT":case"AUTOSELECT":case"FORCED":case"PRECISE":case"CAN-BLOCK-RELOAD":case"INDEPENDENT":case"GAP":e[t]="YES"===p;break;case"DURATION":case"PLANNED-DURATION":case"BANDWIDTH":case"AVERAGE-BANDWIDTH":case"FRAME-RATE":case"TIME-OFFSET":case"CAN-SKIP-UNTIL":case"HOLD-BACK":case"PART-HOLD-BACK":case"PART-TARGET":case"BYTERANGE-START":case"BYTERANGE-LENGTH":case"LAST-MSN":case"LAST-PART":case"SKIPPED-SEGMENTS":case"SCORE":case"PROGRAM-ID":e[t]=s.Ro(p);break;default:t.startsWith("SCTE35-")?e[t]=s.m2(p):t.startsWith("X-")?e[t]=(i=h).startsWith('"')?o(i):i.startsWith("0x")||i.startsWith("0X")?s.m2(i):s.Ro(i):("VIDEO-RANGE"===t&&"SDR"!==p&&"HLG"!==p&&"PQ"!==p&&r.h2(`VIDEO-RANGE: unknown value "${p}"`,n,209),e[t]=p)}}var i;return e}function f(t,e,i){const o=function(t){let{attributes:e}=t;return new a.ru({type:e.TYPE,uri:e.URI,groupId:e["GROUP-ID"],language:e.LANGUAGE,assocLanguage:e["ASSOC-LANGUAGE"],name:e.NAME,isDefault:e.DEFAULT,autoselect:e.AUTOSELECT,forced:e.FORCED,instreamId:e["INSTREAM-ID"],characteristics:e.CHARACTERISTICS,channels:e.CHANNELS})}(e),h=t[s.Th(i)],l=function(t,e){let i=!1;for(const s of t){if(s.name===e.name)return"All EXT-X-MEDIA tags in the same Group MUST have different NAME attributes.";s.isDefault&&(i=!0)}return i&&e.isDefault?"EXT-X-MEDIA A Group MUST NOT have more than one member with a DEFAULT attribute of YES.":""}(h,o);l&&r.h2(l,n,318),h.push(o),o.isDefault&&(t.currentRenditions[s.Th(i)]=h.length-1)}function T(t,e,i,o,h){const l=new a.KT({uri:i,bandwidth:e.BANDWIDTH,averageBandwidth:e["AVERAGE-BANDWIDTH"],score:e.SCORE,codecs:e.CODECS,resolution:e.RESOLUTION,frameRate:e["FRAME-RATE"],hdcpLevel:e["HDCP-LEVEL"],allowedCpc:e["ALLOWED-CPC"],videoRange:e["VIDEO-RANGE"],stableVariantId:e["STABLE-VARIANT-ID"],programId:e["PROGRAM-ID"]});for(const i of t)if("EXT-X-MEDIA"===i.name){const t=i.attributes,s=t.TYPE;if(s&&t["GROUP-ID"]||r.h2("EXT-X-MEDIA TYPE attribute is REQUIRED.",n,358),e[s]===t["GROUP-ID"]&&(f(l,i,s),"CLOSED-CAPTIONS"===s))for(const{instreamId:t}of l.closedCaptions)if(t&&t.startsWith("SERVICE")&&h.compatibleVersion<7){h.compatibleVersion=7;break}}return function(t,e,i){for(const a of["AUDIO","VIDEO","SUBTITLES","CLOSED-CAPTIONS"])"CLOSED-CAPTIONS"===a&&"NONE"===t[a]?(i.isClosedCaptionsNone=!0,e.closedCaptions=[]):t[a]&&!e[s.Th(a)].some((e=>e.groupId===t[a]))&&r.h2(`${a} attribute MUST match the value of the GROUP-ID attribute of an EXT-X-MEDIA tag whose TYPE attribute is ${a}.`,n,333)}(e,l,h),l.isIFrameOnly=o,l}function E(t,e){if(t.method!==e.method)return!1;if(t.uri!==e.uri)return!1;if(t.iv){if(!e.iv)return!1;if(t.iv.length!==e.iv.length)return!1;for(let i=0;i<t.iv.length;i++)if(t.iv[i]!==e.iv[i])return!1}else if(e.iv)return!1;return t.format===e.format&&t.formatVersion===e.formatVersion}function y(t,e,i,s,o,h,l){const d=new a.Y4({uri:e,mediaSequenceNumber:o,discontinuitySequence:h});let u=!1,c=!1;for(let e=i;e<=s;e++){const{name:i,value:s,attributes:o}=t[e];if("EXTINF"===i)!Number.isInteger(s.duration)&&l.compatibleVersion<3&&(l.compatibleVersion=3),Math.round(s.duration)>l.targetDuration&&r.h2("EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration",n,520),d.duration=s.duration,d.title=s.title;else if("EXT-X-BYTERANGE"===i)l.compatibleVersion<4&&(l.compatibleVersion=4),d.byterange=s;else if("EXT-X-DISCONTINUITY"===i)d.parts.length>0&&r.h2("EXT-X-DISCONTINUITY must appear before the first EXT-X-PART tag of the Parent Segment.",n,533),d.discontinuity=!0;else if("EXT-X-KEY"===i)d.parts.length>0&&r.h2("EXT-X-KEY must appear before the first EXT-X-PART tag of the Parent Segment.",n,539),"NONE"!==o.METHOD?(p(l,o),d.key=new a.Uz({method:o.METHOD,uri:o.URI,iv:o.IV,format:o.KEYFORMAT,formatVersion:o.KEYFORMATVERSIONS})):d.key=null;else if("EXT-X-MAP"===i)d.parts.length>0&&r.h2("EXT-X-MAP must appear before the first EXT-X-PART tag of the Parent Segment.",n,558),l.compatibleVersion<5&&(l.compatibleVersion=5),l.hasMap=!0,d.map=new a.qP({uri:o.URI,byterange:o.BYTERANGE,key:d.key});else if("EXT-X-PROGRAM-DATE-TIME"===i)d.programDateTime=s;else if("EXT-X-DATERANGE"===i){const t={};for(const e of Object.keys(o))(e.startsWith("SCTE35-")||e.startsWith("X-"))&&(t[e]=o[e]);d.dateRange=new a.ad({id:o.ID,classId:o.CLASS,start:o["START-DATE"],end:o["END-DATE"],duration:o.DURATION,plannedDuration:o["PLANNED-DURATION"],endOnNext:o["END-ON-NEXT"],attributes:t})}else if("EXT-X-CUE-OUT"===i)d.markers.push(new a.xC({type:"OUT",duration:o&&o.DURATION||s}));else if("EXT-X-CUE-IN"===i)d.markers.push(new a.xC({type:"IN"}));else if("EXT-X-CUE-OUT-CONT"===i||"EXT-X-CUE"===i||"EXT-OATCLS-SCTE35"===i||"EXT-X-ASSET"===i||"EXT-X-SCTE35"===i)d.markers.push(new a.xC({type:"RAW",tagName:i,value:s}));else if("EXT-X-PRELOAD-HINT"!==i||o.TYPE)if("EXT-X-PRELOAD-HINT"===i&&"PART"===o.TYPE&&c)r.h2("Servers should not add more than one EXT-X-PRELOAD-HINT tag with the same TYPE attribute to a Playlist.",n,619);else if("EXT-X-PART"!==i&&"EXT-X-PRELOAD-HINT"!==i||o.URI){if("EXT-X-PRELOAD-HINT"===i&&"MAP"===o.TYPE)u&&r.h2("Servers should not add more than one EXT-X-PRELOAD-HINT tag with the same TYPE attribute to a Playlist.",n,626),u=!0,l.hasMap=!0,d.map=new a.qP({hint:!0,uri:o.URI,byterange:{length:o["BYTERANGE-LENGTH"],offset:o["BYTERANGE-START"]||0}});else if("EXT-X-PART"===i||"EXT-X-PRELOAD-HINT"===i&&"PART"===o.TYPE){"EXT-X-PART"!==i||o.DURATION||r.h2("EXT-X-PART: DURATION attribute is mandatory",n,638),"EXT-X-PRELOAD-HINT"===i&&(c=!0);const t=new a.nw({hint:"EXT-X-PRELOAD-HINT"===i,uri:o.URI,byterange:"EXT-X-PART"===i?o.BYTERANGE:{length:o["BYTERANGE-LENGTH"],offset:o["BYTERANGE-START"]||0},duration:o.DURATION,independent:o.INDEPENDENT,gap:o.GAP});d.parts.push(t)}}else r.h2("EXT-X-PART / EXT-X-PRELOAD-HINT: URI attribute is mandatory",n,622);else r.h2("EXT-X-PRELOAD-HINT: TYPE attribute is mandatory",n,616)}return d}function A(t,e,i,s,o,h,l){const d=new a.Vd({uri:e,mediaSequenceNumber:o,discontinuitySequence:h});for(let e=i;e<=s;e++){const{name:i,attributes:s}=t[e];"EXTINF"===i?r.h2("A prefetch segment must not be advertised with an EXTINF tag.",n,670):"EXT-X-DISCONTINUITY"===i?r.h2("A prefetch segment must not be advertised with an EXT-X-DISCONTINUITY tag.",n,673):"EXT-X-PREFETCH-DISCONTINUITY"===i?d.discontinuity=!0:"EXT-X-KEY"===i?"NONE"!==s.METHOD&&(p(l,s),d.key=new a.Uz({method:s.METHOD,uri:s.URI,iv:s.IV,format:s.KEYFORMAT,formatVersion:s.KEYFORMATVERSIONS})):"EXT-X-MAP"===i&&r.h2("Prefetch segments must not be advertised with an EXT-X-MAP tag.",n,691)}return d}function g(t,e,i,s,a){const{discontinuity:o,key:h,map:l,byterange:d,uri:u}=e;if(o&&(e.discontinuitySequence=i+1),h||(e.key=s),l||(e.map=a),d&&-1===d.offset){const{segments:e}=t;if(e.length>0){const t=e[e.length-1];t.byterange&&t.uri===u?d.offset=t.byterange.offset+t.byterange.length:r.h2("If offset of EXT-X-BYTERANGE is not present, a previous Media Segment MUST be a sub-range of the same media resource",n,915)}else r.h2("If offset of EXT-X-BYTERANGE is not present, a previous Media Segment MUST appear in the Playlist file",n,919)}return t.segments.push(e),[e.discontinuitySequence,e.key,e.map]}function v(t,e){const[i,a]=function(t){const e=t.indexOf(":");return-1===e?[t.slice(1).trim(),null]:[t.slice(1,e).trim(),t.slice(e+1).trim()]}(t),o=function(t){switch(t){case"EXTM3U":case"EXT-X-VERSION":return"Basic";case"EXTINF":case"EXT-X-BYTERANGE":case"EXT-X-DISCONTINUITY":case"EXT-X-PREFETCH-DISCONTINUITY":case"EXT-X-KEY":case"EXT-X-MAP":case"EXT-X-PROGRAM-DATE-TIME":case"EXT-X-DATERANGE":case"EXT-X-CUE-OUT":case"EXT-X-CUE-IN":case"EXT-X-CUE-OUT-CONT":case"EXT-X-CUE":case"EXT-OATCLS-SCTE35":case"EXT-X-ASSET":case"EXT-X-SCTE35":case"EXT-X-PART":case"EXT-X-PRELOAD-HINT":return"Segment";case"EXT-X-TARGETDURATION":case"EXT-X-MEDIA-SEQUENCE":case"EXT-X-DISCONTINUITY-SEQUENCE":case"EXT-X-ENDLIST":case"EXT-X-PLAYLIST-TYPE":case"EXT-X-I-FRAMES-ONLY":case"EXT-X-SERVER-CONTROL":case"EXT-X-PART-INF":case"EXT-X-PREFETCH":case"EXT-X-RENDITION-REPORT":case"EXT-X-SKIP":return"MediaPlaylist";case"EXT-X-MEDIA":case"EXT-X-STREAM-INF":case"EXT-X-I-FRAME-STREAM-INF":case"EXT-X-SESSION-DATA":case"EXT-X-SESSION-KEY":return"MasterPlaylist";case"EXT-X-INDEPENDENT-SEGMENTS":case"EXT-X-START":return"MediaorMasterPlaylist";default:return"Unknown"}}(i);if(function(t,e){if("Segment"===t||"MediaPlaylist"===t)return void 0===e.isMasterPlaylist?void(e.isMasterPlaylist=!1):void(e.isMasterPlaylist&&r.h2("The file contains both media and master playlist tags.",n,1026));if("MasterPlaylist"===t){if(void 0===e.isMasterPlaylist)return void(e.isMasterPlaylist=!0);!1===e.isMasterPlaylist&&r.h2("The file contains both media and master playlist tags.",n,1036)}}(o,e),"Unknown"===o)return null;"MediaPlaylist"===o&&"EXT-X-RENDITION-REPORT"!==i&&"EXT-X-PREFETCH"!==i&&(e.hash[i]&&r.h2("There MUST NOT be more than one Media Playlist tag of each type in any Media Playlist",n,1057),e.hash[i]=!0);const[d,u]=function(t,e){switch(t){case"EXTM3U":case"EXT-X-DISCONTINUITY":case"EXT-X-ENDLIST":case"EXT-X-I-FRAMES-ONLY":case"EXT-X-INDEPENDENT-SEGMENTS":case"EXT-X-CUE-IN":return[null,null];case"EXT-X-VERSION":case"EXT-X-TARGETDURATION":case"EXT-X-MEDIA-SEQUENCE":case"EXT-X-DISCONTINUITY-SEQUENCE":return[s.Ro(e),null];case"EXT-X-CUE-OUT":return Number.isNaN(Number(e))?[null,m(e)]:[s.Ro(e),null];case"EXT-X-KEY":case"EXT-X-MAP":case"EXT-X-DATERANGE":case"EXT-X-MEDIA":case"EXT-X-STREAM-INF":case"EXT-X-I-FRAME-STREAM-INF":case"EXT-X-SESSION-DATA":case"EXT-X-SESSION-KEY":case"EXT-X-START":case"EXT-X-SERVER-CONTROL":case"EXT-X-PART-INF":case"EXT-X-PART":case"EXT-X-PRELOAD-HINT":case"EXT-X-RENDITION-REPORT":case"EXT-X-SKIP":return[null,m(e)];case"EXTINF":return[h(e),null];case"EXT-X-BYTERANGE":return[l(e),null];case"EXT-X-PROGRAM-DATE-TIME":return[new Date(e),null];default:return[e,null]}}(i,a);return{name:i,category:o,value:d,attributes:u}}function b(t,e){let i;return e.isMasterPlaylist?i=function(t,e){const i=new a.ts;let s=!1;for(const[o,{name:h,value:l,attributes:d}]of t.entries())if("EXT-X-VERSION"===h)i.version=l;else if("EXT-X-STREAM-INF"===h){const a=t[o+1];("string"!=typeof a||a.startsWith("#EXT"))&&r.h2("EXT-X-STREAM-INF must be followed by a URI line",n,420);const h=T(t,d,a,!1,e);h&&("number"==typeof h.score&&(s=!0,h.score<0&&r.h2("SCORE attribute on EXT-X-STREAM-INF must be positive decimal-floating-point number.",n,427)),i.variants.push(h))}else if("EXT-X-I-FRAME-STREAM-INF"===h){const s=T(t,d,d.URI,!0,e);s&&i.variants.push(s)}else if("EXT-X-SESSION-DATA"===h){const t=new a.pf({id:d["DATA-ID"],value:d.VALUE,uri:d.URI,language:d.LANGUAGE});i.sessionDataList.some((e=>e.id===t.id&&e.language===t.language))&&r.h2("A Playlist MUST NOT contain more than one EXT-X-SESSION-DATA tag with the same DATA-ID attribute and the same LANGUAGE attribute.",n,447),i.sessionDataList.push(t)}else if("EXT-X-SESSION-KEY"===h){"NONE"===d.METHOD&&r.h2("EXT-X-SESSION-KEY: The value of the METHOD attribute MUST NOT be NONE",n,453);const t=new a.Uz({method:d.METHOD,uri:d.URI,iv:d.IV,format:d.KEYFORMAT,formatVersion:d.KEYFORMATVERSIONS});i.sessionKeyList.some((e=>E(e,t)))&&r.h2("A Master Playlist MUST NOT contain more than one EXT-X-SESSION-KEY tag with the same METHOD, URI, IV, KEYFORMAT, and KEYFORMATVERSIONS attribute values.",n,463),p(e,d),i.sessionKeyList.push(t)}else"EXT-X-INDEPENDENT-SEGMENTS"===h?(i.independentSegments&&r.h2("EXT-X-INDEPENDENT-SEGMENTS tag MUST NOT appear more than once in a Playlist",n,470),i.independentSegments=!0):"EXT-X-START"===h&&(i.start&&r.h2("EXT-X-START tag MUST NOT appear more than once in a Playlist",n,476),"number"!=typeof d["TIME-OFFSET"]&&r.h2("EXT-X-START: TIME-OFFSET attribute is REQUIRED",n,479),i.start={offset:d["TIME-OFFSET"],precise:d.PRECISE||!1});if(s)for(const t of i.variants)"number"!=typeof t.score&&r.h2("If any Variant Stream contains the SCORE attribute, then all Variant Streams in the Master Playlist SHOULD have a SCORE attribute",n,487);if(e.isClosedCaptionsNone)for(const t of i.variants)t.closedCaptions.length>0&&r.h2("If there is a variant with CLOSED-CAPTIONS attribute of NONE, all EXT-X-STREAM-INF tags MUST have this attribute with a value of NONE",n,494);return i}(t,e):(i=function(t,e){const i=new a.tk;let s=-1,o=0,h=!1,l=!1,d=0,u=null,c=null,p=!1;for(const[m,f]of t.entries()){const{name:T,value:E,attributes:v,category:b}=f;if("Segment"!==b){if("EXT-X-VERSION"===T)void 0===i.version?i.version=E:r.h2("A Playlist file MUST NOT contain more than one EXT-X-VERSION tag.",n,723);else if("EXT-X-TARGETDURATION"===T)i.targetDuration=e.targetDuration=E;else if("EXT-X-MEDIA-SEQUENCE"===T)i.segments.length>0&&r.h2("The EXT-X-MEDIA-SEQUENCE tag MUST appear before the first Media Segment in the Playlist.",n,731),i.mediaSequenceBase=o=E;else if("EXT-X-DISCONTINUITY-SEQUENCE"===T)i.segments.length>0&&r.h2("The EXT-X-DISCONTINUITY-SEQUENCE tag MUST appear before the first Media Segment in the Playlist.",n,737),h&&r.h2("The EXT-X-DISCONTINUITY-SEQUENCE tag MUST appear before any EXT-X-DISCONTINUITY tag.",n,740),i.discontinuitySequenceBase=d=E;else if("EXT-X-ENDLIST"===T)i.endlist=!0;else if("EXT-X-PLAYLIST-TYPE"===T)i.playlistType=E;else if("EXT-X-I-FRAMES-ONLY"===T)e.compatibleVersion<4&&(e.compatibleVersion=4),i.isIFrame=!0;else if("EXT-X-INDEPENDENT-SEGMENTS"===T)i.independentSegments&&r.h2("EXT-X-INDEPENDENT-SEGMENTS tag MUST NOT appear more than once in a Playlist",n,758),i.independentSegments=!0;else if("EXT-X-START"===T)i.start&&r.h2("EXT-X-START tag MUST NOT appear more than once in a Playlist",n,764),"number"!=typeof v["TIME-OFFSET"]&&r.h2("EXT-X-START: TIME-OFFSET attribute is REQUIRED",n,767),i.start={offset:v["TIME-OFFSET"],precise:v.PRECISE||!1};else if("EXT-X-SERVER-CONTROL"===T)v["CAN-BLOCK-RELOAD"]||r.h2("EXT-X-SERVER-CONTROL: CAN-BLOCK-RELOAD=YES is mandatory for Low-Latency HLS",n,773),i.lowLatencyCompatibility={canBlockReload:v["CAN-BLOCK-RELOAD"],canSkipUntil:v["CAN-SKIP-UNTIL"],holdBack:v["HOLD-BACK"],partHoldBack:v["PART-HOLD-BACK"]};else if("EXT-X-PART-INF"===T)v["PART-TARGET"]||r.h2("EXT-X-PART-INF: PART-TARGET attribute is mandatory",n,784),i.partTargetDuration=v["PART-TARGET"];else if("EXT-X-RENDITION-REPORT"===T)v.URI||r.h2("EXT-X-RENDITION-REPORT: URI attribute is mandatory",n,790),0===v.URI.search(/^[a-z]+:/)&&r.h2("EXT-X-RENDITION-REPORT: URI must be relative to the playlist uri",n,793),i.renditionReports.push(new a.h4({uri:v.URI,lastMSN:v["LAST-MSN"],lastPart:v["LAST-PART"]}));else if("EXT-X-SKIP"===T)v["SKIPPED-SEGMENTS"]||r.h2("EXT-X-SKIP: SKIPPED-SEGMENTS attribute is mandatory",n,803),e.compatibleVersion<9&&(e.compatibleVersion=9),i.skip=v["SKIPPED-SEGMENTS"],o+=i.skip;else if("EXT-X-PREFETCH"===T){const a=A(t,E,-1===s?m:s,m-1,o++,d,e);a&&(a.discontinuity&&(a.discontinuitySequence++,d=a.discontinuitySequence),a.key?u=a.key:null===a.key?u=void 0:a.key=u,i.prefetchSegments.push(a)),l=!0,s=-1}else if("string"==typeof f){-1===s&&r.h2("A URI line is not preceded by any segment tags",n,843),i.targetDuration||r.h2("The EXT-X-TARGETDURATION tag is REQUIRED",n,846),l&&r.h2("These segments must appear after all complete segments.",n,849);const a=y(t,f,s,m-1,o++,d,e);a&&(null===a.key&&(u=void 0),[d,u,c]=g(i,a,d,u,c),!p&&a.parts.length>0&&(p=!0)),s=-1}}else-1===s&&(s=m),"EXT-X-DISCONTINUITY"===T&&(h=!0)}if(-1!==s){const a=y(t,"",s,t.length-1,o++,d,e);if(a){var m;null===a.key&&(u=void 0);const{parts:t}=a;!(t.length>0)||i.endlist||null!==(m=t[t.length-1])&&void 0!==m&&m.hint||r.h2("If the Playlist contains EXT-X-PART tags and does not contain an EXT-X-ENDLIST tag, the Playlist must contain an EXT-X-PRELOAD-HINT tag with a TYPE=PART attribute",n,872),g(i,a,d,u,c),!p&&a.parts.length>0&&(p=!0)}}return function(t){const e=new Map,i=new Map;let s=!1,a=!1;for(let o=t.length-1;o>=0;o--){const{programDateTime:h,dateRange:l}=t[o];if(h&&(a=!0),l&&l.start){s=!0,l.endOnNext&&(l.end||l.duration)&&r.h2("An EXT-X-DATERANGE tag with an END-ON-NEXT=YES attribute MUST NOT contain DURATION or END-DATE attributes.",n,939);const t=l.start.getTime(),a=l.duration||0;l.end&&l.duration&&t+1e3*a!==l.end.getTime()&&r.h2("END-DATE MUST be equal to the value of the START-DATE attribute plus the value of the DURATION",n,945),l.endOnNext&&(l.end=e.get(l.classId)),e.set(l.classId,l.start);const o=l.end?l.end.getTime():l.start.getTime()+1e3*(l.duration||0),h=i.get(l.classId);if(h){for(const e of h)(e.start<=t&&e.end>t||e.start>=t&&e.start<o)&&r.h2("DATERANGE tags with the same CLASS should not overlap",n,957);h.push({start:t,end:o})}else l.classId&&i.set(l.classId,[{start:t,end:o}])}}s&&!a&&r.h2("If a Playlist contains an EXT-X-DATERANGE tag, it MUST also contain at least one EXT-X-PROGRAM-DATE-TIME tag.",n,968)}(i.segments),i.lowLatencyCompatibility&&function(t,e){let{lowLatencyCompatibility:i,targetDuration:s,partTargetDuration:a,segments:o,renditionReports:h}=t;const{canSkipUntil:l,holdBack:d,partHoldBack:u}=i;if(l<6*s&&r.h2("The Skip Boundary must be at least six times the EXT-X-TARGETDURATION.",n,975),d<3*s&&r.h2("HOLD-BACK must be at least three times the EXT-X-TARGETDURATION.",n,979),e){void 0===a&&r.h2("EXT-X-PART-INF is required if a Playlist contains one or more EXT-X-PART tags",n,983),void 0===u&&r.h2("EXT-X-PART: PART-HOLD-BACK attribute is mandatory",n,986),u<a&&r.h2("PART-HOLD-BACK must be at least PART-TARGET",n,989);for(const[t,{parts:e}]of o.entries())for(const[t,{duration:i}]of e.entries())void 0!==i&&(i>a&&r.h2("PART-TARGET is the maximum duration of any Partial Segment",n,1e3),t<e.length-1&&i<.85*a&&r.h2("All Partial Segments except the last part of a segment must have a duration of at least 85% of PART-TARGET",n,1003))}for(const t of h){const e=o[o.length-1];null!==t.lastMSN&&void 0!==t.lastMSN||(t.lastMSN=e.mediaSequenceNumber),(null===t.lastPart||void 0===t.lastPart)&&e.parts.length>0&&(t.lastPart=e.parts.length-1)}}(i,p),i.duration=i.segments.reduce(((t,e)=>"number"==typeof e.duration?t+e.duration:t),0),i}(t,e),!i.isIFrame&&e.hasMap&&e.compatibleVersion<6&&(e.compatibleVersion=6)),e.compatibleVersion>1&&(!i.version||i.version<e.compatibleVersion)&&r.h2(`EXT-X-VERSION needs to be ${e.compatibleVersion} or higher.`,n,1107),i}function I(t){const e={version:void 0,isMasterPlaylist:void 0,hasMap:!1,targetDuration:0,compatibleVersion:1,isClosedCaptionsNone:!1,hash:{}},i=function(t,e){const i=[];for(const s of t.split("\n")){const t=s.trim();if(t)if(t.startsWith("#")){if(t.startsWith("#EXT")){const s=v(t,e);s&&i.push(s)}}else i.push(t)}return 0!==i.length&&"EXTM3U"===i[0].name||r.h2("The EXTM3U tag MUST be the first line.",n,1089),i}(t,e),s=b(i,e);return s.source=t,s}},3137:(t,e,i)=>{i.d(e,{KT:()=>n,Uz:()=>h,Vd:()=>y,Y4:()=>T,ad:()=>d,h4:()=>A,nw:()=>E,pf:()=>o,qP:()=>l,ru:()=>r,tk:()=>f,ts:()=>m,xC:()=>u});var s=i(19371),a=i(16563);class r{constructor(t){let{type:e,uri:i,groupId:a,language:r,assocLanguage:n,name:o,isDefault:h,autoselect:l,forced:d,instreamId:u,characteristics:c,channels:p}=t;(0,s.A)(this,"type",void 0),(0,s.A)(this,"uri",void 0),(0,s.A)(this,"groupId",void 0),(0,s.A)(this,"language",void 0),(0,s.A)(this,"assocLanguage",void 0),(0,s.A)(this,"name",void 0),(0,s.A)(this,"isDefault",void 0),(0,s.A)(this,"autoselect",void 0),(0,s.A)(this,"forced",void 0),(0,s.A)(this,"instreamId",void 0),(0,s.A)(this,"characteristics",void 0),(0,s.A)(this,"channels",void 0),this.type=e,this.uri=i,this.groupId=a,this.language=r,this.assocLanguage=n,this.name=o,this.isDefault=h,this.autoselect=l,this.forced=d,this.instreamId=u,this.characteristics=c,this.channels=p}}class n{constructor(t){let{uri:e,isIFrameOnly:i=!1,bandwidth:a,averageBandwidth:r,score:n,codecs:o,resolution:h,frameRate:l,hdcpLevel:d,allowedCpc:u,videoRange:c,stableVariantId:p,programId:m,audio:f=[],video:T=[],subtitles:E=[],closedCaptions:y=[],currentRenditions:A={audio:0,video:0,subtitles:0,closedCaptions:0}}=t;(0,s.A)(this,"uri",void 0),(0,s.A)(this,"isIFrameOnly",void 0),(0,s.A)(this,"bandwidth",void 0),(0,s.A)(this,"averageBandwidth",void 0),(0,s.A)(this,"score",void 0),(0,s.A)(this,"codecs",void 0),(0,s.A)(this,"resolution",void 0),(0,s.A)(this,"frameRate",void 0),(0,s.A)(this,"hdcpLevel",void 0),(0,s.A)(this,"allowedCpc",void 0),(0,s.A)(this,"videoRange",void 0),(0,s.A)(this,"stableVariantId",void 0),(0,s.A)(this,"programId",void 0),(0,s.A)(this,"audio",void 0),(0,s.A)(this,"video",void 0),(0,s.A)(this,"subtitles",void 0),(0,s.A)(this,"closedCaptions",void 0),(0,s.A)(this,"currentRenditions",void 0),this.uri=e,this.isIFrameOnly=i,this.bandwidth=a,this.averageBandwidth=r,this.score=n,this.codecs=o,this.resolution=h,this.frameRate=l,this.hdcpLevel=d,this.allowedCpc=u,this.videoRange=c,this.stableVariantId=p,this.programId=m,this.audio=f,this.video=T,this.subtitles=E,this.closedCaptions=y,this.currentRenditions=A}}class o{constructor(t){let{id:e,value:i,uri:a,language:r}=t;(0,s.A)(this,"id",void 0),(0,s.A)(this,"value",void 0),(0,s.A)(this,"uri",void 0),(0,s.A)(this,"language",void 0),this.id=e,this.value=i,this.uri=a,this.language=r}}class h{constructor(t){let{method:e,uri:i,iv:a,format:r,formatVersion:n}=t;(0,s.A)(this,"method",void 0),(0,s.A)(this,"uri",void 0),(0,s.A)(this,"iv",void 0),(0,s.A)(this,"format",void 0),(0,s.A)(this,"formatVersion",void 0),this.method=e,this.uri=i,this.iv=a,this.format=r,this.formatVersion=n}}class l{constructor(t){let{hint:e=!1,uri:i,mimeType:a,byterange:r,key:n}=t;(0,s.A)(this,"hint",void 0),(0,s.A)(this,"uri",void 0),(0,s.A)(this,"mimeType",void 0),(0,s.A)(this,"byterange",void 0),(0,s.A)(this,"key",void 0),this.hint=e,this.uri=i,this.mimeType=a,this.byterange=r,this.key=n}}class d{constructor(t){let{id:e,classId:i,start:a,end:r,duration:n,plannedDuration:o,endOnNext:h,attributes:l={}}=t;(0,s.A)(this,"id",void 0),(0,s.A)(this,"classId",void 0),(0,s.A)(this,"start",void 0),(0,s.A)(this,"end",void 0),(0,s.A)(this,"duration",void 0),(0,s.A)(this,"plannedDuration",void 0),(0,s.A)(this,"endOnNext",void 0),(0,s.A)(this,"attributes",void 0),this.id=e,this.classId=i,this.start=a,this.end=r,this.duration=n,this.plannedDuration=o,this.endOnNext=h,this.attributes=l}}class u{constructor(t){let{type:e,duration:i,tagName:a,value:r}=t;(0,s.A)(this,"type",void 0),(0,s.A)(this,"duration",void 0),(0,s.A)(this,"tagName",void 0),(0,s.A)(this,"value",void 0),this.type=e,this.duration=i,this.tagName=a,this.value=r}}class c{constructor(t){(0,s.A)(this,"type",void 0),this.type=t}}class p extends c{constructor(t){let{isMasterPlaylist:e,uri:i,version:a,independentSegments:r=!1,start:n,source:o}=t;super("playlist"),(0,s.A)(this,"isMasterPlaylist",void 0),(0,s.A)(this,"uri",void 0),(0,s.A)(this,"version",void 0),(0,s.A)(this,"independentSegments",void 0),(0,s.A)(this,"start",void 0),(0,s.A)(this,"source",void 0),this.isMasterPlaylist=e,this.uri=i,this.version=a,this.independentSegments=r,this.start=n,this.source=o}}class m extends p{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};super({...t,isMasterPlaylist:!0}),(0,s.A)(this,"variants",void 0),(0,s.A)(this,"currentVariant",void 0),(0,s.A)(this,"sessionDataList",void 0),(0,s.A)(this,"sessionKeyList",void 0);const{variants:e=[],currentVariant:i,sessionDataList:a=[],sessionKeyList:r=[]}=t;this.variants=e,this.currentVariant=i,this.sessionDataList=a,this.sessionKeyList=r}}class f extends p{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};super({...t,isMasterPlaylist:!1}),(0,s.A)(this,"targetDuration",void 0),(0,s.A)(this,"mediaSequenceBase",void 0),(0,s.A)(this,"discontinuitySequenceBase",void 0),(0,s.A)(this,"endlist",void 0),(0,s.A)(this,"playlistType",void 0),(0,s.A)(this,"isIFrame",void 0),(0,s.A)(this,"segments",void 0),(0,s.A)(this,"prefetchSegments",void 0),(0,s.A)(this,"lowLatencyCompatibility",void 0),(0,s.A)(this,"partTargetDuration",void 0),(0,s.A)(this,"renditionReports",void 0),(0,s.A)(this,"skip",void 0),(0,s.A)(this,"hash",void 0),(0,s.A)(this,"duration",void 0),(0,s.A)(this,"timestamp",void 0);const{targetDuration:e,mediaSequenceBase:i=0,discontinuitySequenceBase:r=0,endlist:n=!1,playlistType:o,isIFrame:h,segments:l=[],prefetchSegments:d=[],lowLatencyCompatibility:u,partTargetDuration:c,renditionReports:p=[],skip:m=0,hash:f,duration:T=0}=t;this.targetDuration=e,this.mediaSequenceBase=i,this.discontinuitySequenceBase=r,this.endlist=n,this.playlistType=o,this.isIFrame=h,this.segments=l,this.prefetchSegments=d,this.lowLatencyCompatibility=u,this.partTargetDuration=c,this.renditionReports=p,this.skip=m,this.hash=f,this.duration=T,this.timestamp=(0,a.A)()}}class T extends c{constructor(t){let{uri:e,mimeType:i,data:a,duration:r,title:n,byterange:o,discontinuity:h,mediaSequenceNumber:l=0,discontinuitySequence:d=0,key:u,map:c,programDateTime:p,dateRange:m,markers:f=[],parts:T=[]}=t;super("segment"),(0,s.A)(this,"uri",void 0),(0,s.A)(this,"mimeType",void 0),(0,s.A)(this,"data",void 0),(0,s.A)(this,"duration",void 0),(0,s.A)(this,"title",void 0),(0,s.A)(this,"byterange",void 0),(0,s.A)(this,"discontinuity",void 0),(0,s.A)(this,"mediaSequenceNumber",void 0),(0,s.A)(this,"discontinuitySequence",void 0),(0,s.A)(this,"key",void 0),(0,s.A)(this,"map",void 0),(0,s.A)(this,"programDateTime",void 0),(0,s.A)(this,"dateRange",void 0),(0,s.A)(this,"markers",void 0),(0,s.A)(this,"parts",void 0),this.uri=e,this.mimeType=i,this.data=a,this.duration=r,this.title=n,this.byterange=o,this.discontinuity=h,this.mediaSequenceNumber=l,this.discontinuitySequence=d,this.key=u,this.map=c,this.programDateTime=p,this.dateRange=m,this.markers=f,this.parts=T}}class E extends c{constructor(t){let{hint:e=!1,uri:i,duration:a,independent:r,byterange:n,gap:o}=t;super("part"),(0,s.A)(this,"hint",void 0),(0,s.A)(this,"uri",void 0),(0,s.A)(this,"duration",void 0),(0,s.A)(this,"independent",void 0),(0,s.A)(this,"byterange",void 0),(0,s.A)(this,"gap",void 0),this.hint=e,this.uri=i,this.duration=a,this.independent=r,this.duration=a,this.byterange=n,this.gap=o}}class y extends c{constructor(t){let{uri:e,discontinuity:i,mediaSequenceNumber:a=0,discontinuitySequence:r=0,key:n}=t;super("prefetch"),(0,s.A)(this,"uri",void 0),(0,s.A)(this,"discontinuity",void 0),(0,s.A)(this,"mediaSequenceNumber",void 0),(0,s.A)(this,"discontinuitySequence",void 0),(0,s.A)(this,"key",void 0),this.uri=e,this.discontinuity=i,this.mediaSequenceNumber=a,this.discontinuitySequence=r,this.key=n}}class A{constructor(t){let{uri:e,lastMSN:i,lastPart:a}=t;(0,s.A)(this,"uri",void 0),(0,s.A)(this,"lastMSN",void 0),(0,s.A)(this,"lastPart",void 0),this.uri=e,this.lastMSN=i,this.lastPart=a}}},39381:(t,e,i)=>{function s(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:10;if("number"==typeof t)return t;const i=10===e?Number.parseFloat(t):Number.parseInt(t,e);return Number.isNaN(i)?0:i}function a(t){(t.startsWith("0x")||t.startsWith("0X"))&&(t=t.slice(2));const e=[];for(let i=0;i<t.length;i+=2)e.push(s(t.slice(i,i+2),16));return new Uint8Array(e)}function r(t,e){let i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,s=-1;for(let a=0,r=0;a<t.length;a++)if(t[a]===e){if(r++===i)return[t.slice(0,a),t.slice(a+1)];s=a}return-1!==s?[t.slice(0,s),t.slice(s+1)]:[t]}function n(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:" ";return t?(t=t.trim()," "===e||(t.startsWith(e)&&(t=t.slice(1)),t.endsWith(e)&&(t=t.slice(0,-1))),t):t}function o(t){const e=[];let i=!0,s=0;const a=[];for(let r=0;r<t.length;r++){const n=t[r];i&&","===n?(e.push(t.slice(s,r).trim()),s=r+1):'"'!==n&&"'"!==n||(i?(a.push(n),i=!1):n===a[a.length-1]?(a.pop(),i=!0):a.push(n))}return e.push(t.slice(s).trim()),e}function h(t){const e=[];let i=!1;for(const s of t)"-"!==s&&"_"!==s?i?(e.push(s.toUpperCase()),i=!1):e.push(s.toLowerCase()):i=!0;return e.join("")}i.d(e,{Bq:()=>n,HG:()=>o,Ro:()=>s,Th:()=>h,gI:()=>r,m2:()=>a})},91390:(t,e,i)=>{i.d(e,{$$:()=>r,Eh:()=>f,HR:()=>a,IY:()=>g,Ki:()=>A,Ld:()=>l,Mb:()=>E,Sz:()=>u,Xp:()=>h,_R:()=>n,_m:()=>m,d8:()=>T,iW:()=>c,mX:()=>p,n1:()=>o,os:()=>s,qO:()=>d,u6:()=>y});const s={86017:"mp3",86018:"mp4a.40",86021:"vorbis",86028:"flac",86076:"opus",65542:"ulaw",65543:"alaw",86019:"ac-3",86056:"ec-3",86020:"dtsc",65541:"pcm-u8",65540:"pcm-s8",65536:"pcm-s16",65537:"pcm-s16be",65548:"pcm-s24",65549:"pcm-s24be",65544:"pcm-s32",65545:"pcm-s32be",65557:"pcm-f32",65556:"pcm-f32be",65559:"pcm-f64",65558:"pcm-f64be",225:"av01",27:"avc1",173:"hev1",196:"vvc1",139:"vp8",167:"vp09",12:"mp4v"},a={flv:0,mp4:1,m4s:1,mov:1,ts:2,mts:2,m2ts:2,ivf:5,opus:4,oggs:4,ogg:4,m3u8:2,m3u:2,mpd:1,mp3:14,mkv:8,mka:8,webm:9,aac:15,flac:17,wav:16,srt:19,vtt:18,ssa:20,ass:20,xml:21,ttml:21,h264:11,264:11,avc:11,h265:12,265:12,hevc:12,h266:13,266:13,vvc:13,mpeg:3,mpg:3,rtsp:6,rtmp:7,avi:10,avif:1,heic:1},r={m3u8:4,m3u:4,mpd:5},n={copy:0,h264:27,h261:3,h263:4,h263i:20,h263p:19,mjpeg:7,wmv1:17,wmv2:18,wmv3:71,avc:27,hevc:173,h265:173,vvc:196,h266:196,av1:225,vp9:167,vp8:139,mpeg4:12,theora:30,mpeg2video:2,rv10:5,rv20:6,rv30:68,rv40:69,png:61,bmp:78,webp:171,tiff:96,gif:97},o={copy:0,aac:86018,ac3:86019,eac3:86056,dts:86020,mp3:86017,opus:86076,flac:86028,speex:86051,vorbis:86021,pcm_alaw:65543,pcm_mulaw:65542,wmav1:86023,wmav2:86024,cook:86036,sipr:86057,ralf:86073,pcm_u8:65541,pcm_s16le:65536,pcm_s24le:65548,pcm_s32le:65544,pcm_s64le:65567,pcm_f32le:65557,pcm_f64le:65559},h={webvtt:94226,subrip:94225,ass:94230,ttml:94232,mov_text:94213,hdmv_pgs:94214,hdmv_text:94231,dvd:94208,dvb:94209,eia_608:94218},l={bin_data:98314},d={yuv420p:0,yuv422p:4,yuv444p:5,yuva420p:33,yuva422p:78,yuva444p:79,yuvj420p:12,yuvj422p:13,yuvj444p:14,yuv420p10le:62,yuv422p10le:64,yuv444p10le:68,yuva420p10le:87,yuva422p10le:89,yuva444p10le:91,yuv420p10be:61,yuv422p10be:63,yuv444p10be:67,yuva420p10be:86,yuva422p10be:88,yuva444p10be:90,rgba:26,rgb24:2,bgr24:3,gray:8},u={u8:0,"u8-planar":5,s16:1,"s16-planar":6,s32:2,"s32-planar":7,s64:10,"s64-planar":11,float:3,"float-planar":8,double:4,"double-planar":9},c={flv:0,isobmff:1,mp4:1,mov:1,ts:2,mpegts:2,mpeg:3,ivf:5,ogg:4,opus:4,m3u8:2,m3u:2,mpd:1,mp3:14,mkv:8,matroska:8,mka:8,webm:9,aac:15,flac:17,wav:16,raw_h264:11,raw_h265:12,raw_vvc:13,rtsp:6,rtmp:7,avi:10,h264:11,h265:12,h266:13},p={tv:1,pc:2},m={bt709:1,fcc:4,bt470bg:5,smpte170m:6,smpte240m:7,ycgco:8,gbr:0,bt2020nc:9},f={bt709:1,bt470m:4,bt470bg:5,smpte170m:6,smpte240m:7,smpte428:10,film:8,smpte431:11,smpte432:12,bt2020:9,"jedec-p22":22,ebu3213:22},T={bt709:1,gamma22:4,gamma28:5,smpte170m:6,smpte240m:7,srgb:13,xvycc:11,"bt2020-10":14,"bt2020-12":15,smpte2084:16,"arib-std-b67":18},E={Audio:1,Video:0,Subtitle:3,Attachment:4,Data:2},y={"Tile Grid":3,"Audio Element":1,"Mix Presentation":2},A={default:1,dub:2,original:4,comment:8,lyrics:16,karaoke:32,forced:64,"hearing impaired":128,"visual impaired":256,"clean effects":512,"attached pic":1024,"timed thumbnails":2048,captions:65536,descriptions:131072,metadata:262144,dependent:524288,"still image":1048576,thumbnail:8192},g={mono:4,stereo:3,2.1:11,"3.0":7,"3.0(back)":259,"4.0":263,quad:51,"quad(side)":1539,3.1:15,"5.0":55,"5.0(side)":1543,4.1:271,5.1:63,"5.1(side)":1551,"6.0":1799,"6.0(front)":1731,"3.1.2":20495,hexagonal:311,6.1:1807,"6.1(back)":319,"6.1(front)":1739,"7.0":1591,"7.0(front)":1735,7.1:1599,"7.1(wide)":255,"7.1(wide-side)":1743,"5.1.2":20543,octagonal:1847,cube:184371,"5.1.4":184383,"7.1.2":22079,"7.1.4":185919,"7.2.3":34359825983,"9.1.4":186111,hexadecagonal:6442710839,downmix:1610612736,22.2:2164663779327}},27669:(t,e,i)=>{i.d(e,{A:()=>a});var s=i(19371);class a{constructor(){(0,s.A)(this,"rcon",[0,1,2,4,8,16,32,64,128,27,54]),(0,s.A)(this,"subMix",[new Uint32Array(256),new Uint32Array(256),new Uint32Array(256),new Uint32Array(256)]),(0,s.A)(this,"invSubMix",[new Uint32Array(256),new Uint32Array(256),new Uint32Array(256),new Uint32Array(256)]),(0,s.A)(this,"sBox",new Uint32Array(256)),(0,s.A)(this,"invSBox",new Uint32Array(256)),(0,s.A)(this,"key",new Uint32Array(0)),(0,s.A)(this,"ksRows",0),(0,s.A)(this,"keySize",0),(0,s.A)(this,"keySchedule",void 0),(0,s.A)(this,"invKeySchedule",void 0),this.initTable()}uint8ArrayToUint32Array_(t){const e=new DataView(t),i=new Uint32Array(4);for(let t=0;t<4;t++)i[t]=e.getUint32(4*t);return i}initTable(){const t=this.sBox,e=this.invSBox,i=this.subMix,s=i[0],a=i[1],r=i[2],n=i[3],o=this.invSubMix,h=o[0],l=o[1],d=o[2],u=o[3],c=new Uint32Array(256);let p=0,m=0,f=0;for(f=0;f<256;f++)c[f]=f<128?f<<1:f<<1^283;for(f=0;f<256;f++){let i=m^m<<1^m<<2^m<<3^m<<4;i=i>>>8^255&i^99,t[p]=i,e[i]=p;const o=c[p],f=c[o],T=c[f];let E=257*c[i]^16843008*i;s[p]=E<<24|E>>>8,a[p]=E<<16|E>>>16,r[p]=E<<8|E>>>24,n[p]=E,E=16843009*T^65537*f^257*o^16843008*p,h[i]=E<<24|E>>>8,l[i]=E<<16|E>>>16,d[i]=E<<8|E>>>24,u[i]=E,p?(p=o^c[c[c[T^o]]],m^=c[c[m]]):p=m=1}}async expandKey(t){const e=this.uint8ArrayToUint32Array_(t);if(this.key){let t=!0,i=0;for(;i<e.length&&t;)t=e[i]===this.key[i],i++;if(t)return}this.key=e;const i=this.keySize=this.key.length;if(4!==i&&6!==i&&8!==i)throw new Error("Invalid aes key size="+i);const s=this.ksRows=4*(i+6+1);let a,r;const n=this.keySchedule=new Uint32Array(s),o=this.invKeySchedule=new Uint32Array(s),h=this.sBox,l=this.rcon,d=this.invSubMix,u=d[0],c=d[1],p=d[2],m=d[3];let f,T;for(a=0;a<s;a++)a<i?f=n[a]=e[a]:(T=f,a%i==0?(T=T<<8|T>>>24,T=h[T>>>24]<<24|h[T>>>16&255]<<16|h[T>>>8&255]<<8|h[255&T],T^=l[a/i|0]<<24):i>6&&a%i==4&&(T=h[T>>>24]<<24|h[T>>>16&255]<<16|h[T>>>8&255]<<8|h[255&T]),n[a]=f=(n[a-i]^T)>>>0);for(r=0;r<s;r++)a=s-r,T=3&r?n[a]:n[a-4],o[r]=r<4||a<=4?T:u[h[T>>>24]]^c[h[T>>>16&255]]^p[h[T>>>8&255]]^m[h[255&T]],o[r]=o[r]>>>0}networkToHostOrderSwap(t){return t<<24|(65280&t)<<8|(16711680&t)>>8|t>>>24}async decrypt(t,e){const i=this.keySize+6,s=this.invKeySchedule,a=this.invSBox,r=this.invSubMix,n=r[0],o=r[1],h=r[2],l=r[3],d=this.uint8ArrayToUint32Array_(e);let u=d[0],c=d[1],p=d[2],m=d[3];const f=new Int32Array(t.buffer).subarray(t.byteOffset>>>2,(t.byteOffset>>>2)+(t.length>>>2)),T=new Int32Array(f.length);let E,y,A,g,v,b,I,S,X,N,R,P,L,D;const w=this.networkToHostOrderSwap;let O=0;for(;O<f.length;){for(X=w(f[O]),N=w(f[O+1]),R=w(f[O+2]),P=w(f[O+3]),v=X^s[0],b=P^s[1],I=R^s[2],S=N^s[3],L=4,D=1;D<i;D++)E=n[v>>>24]^o[b>>16&255]^h[I>>8&255]^l[255&S]^s[L],y=n[b>>>24]^o[I>>16&255]^h[S>>8&255]^l[255&v]^s[L+1],A=n[I>>>24]^o[S>>16&255]^h[v>>8&255]^l[255&b]^s[L+2],g=n[S>>>24]^o[v>>16&255]^h[b>>8&255]^l[255&I]^s[L+3],v=E,b=y,I=A,S=g,L+=4;E=a[v>>>24]<<24^a[b>>16&255]<<16^a[I>>8&255]<<8^a[255&S]^s[L],y=a[b>>>24]<<24^a[I>>16&255]<<16^a[S>>8&255]<<8^a[255&v]^s[L+1],A=a[I>>>24]<<24^a[S>>16&255]<<16^a[v>>8&255]<<8^a[255&b]^s[L+2],g=a[S>>>24]<<24^a[v>>16&255]<<16^a[b>>8&255]<<8^a[255&I]^s[L+3],T[O]=w(E^u),T[O+1]=w(g^c),T[O+2]=w(A^p),T[O+3]=w(y^m),u=X,c=N,p=R,m=P,O+=4}return T.buffer}}},80687:(t,e,i)=>{i.d(e,{A:()=>a});var s=i(19371);class a{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;(0,s.A)(this,"subtle",void 0),(0,s.A)(this,"key",void 0),(0,s.A)(this,"mode",void 0),(0,s.A)(this,"keyBuffer",void 0),this.mode=t,this.subtle=crypto.subtle||crypto.webkitSubtle}getSubtleAlgoName(){switch(this.mode){case 0:return"AES-CBC";case 1:return"AES-CTR"}}async expandKey(t){let e=new Uint8Array(t);if(this.keyBuffer){let t=!0,i=0;for(;i<e.length&&t;)t=e[i]===this.keyBuffer[i],i++;if(t)return}this.keyBuffer=e,this.key=await this.subtle.importKey("raw",t,{name:this.getSubtleAlgoName()},!1,["encrypt","decrypt"])}async encryptPadding(t,e){return new Uint8Array(await crypto.subtle.encrypt({name:"AES-CBC",iv:e},this.key,t))}async decrypt(t,e){switch(this.mode){case 0:return this.subtle.decrypt({name:"AES-CBC",iv:e},this.key,t);case 1:return this.subtle.decrypt({name:"AES-CTR",counter:e,length:64},this.key,t)}}static isSupport(){return"object"==typeof(crypto.subtle||crypto.webkitSubtle)}}},13943:(t,e,i)=>{i.d(e,{A:()=>r});var s=i(81819),a=i(17630);function r(t,e){const i=[];return s.ai(t)&&(t+=""),t&&s.Yj(t)&&a.__(t.split(e),((t,e)=>{(t=t.trim())&&i.push(t)})),i}},97494:(t,e,i)=>{i.d(e,{ll:()=>f,mA:()=>n,qg:()=>o});var s=i(81819),a=i(13943),r=i(17630);function n(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"&";const i={};if(s.Yj(t)&&t.indexOf("=")>=0){let s=t.charAt(0),n="?"===s||"#"===s?1:0;n>0&&(t=t.substr(n)),r.__((0,a.A)(t,e),(t=>{let e=t.split("=");if(2===e.length){var s;let t=null===(s=e[0])||void 0===s?void 0:s.trim();t&&(i[t]=decodeURIComponent(e[1]))}}))}return i}function o(t){const e=t,i=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],s=/:\/\/([^\/@]*@?)\[(\S+)\]/;let a="";s.test(t)&&(t=t.replace(s,((t,e,i)=>(a=i,`://${e||""}a.b`))));const r={},n=/^(?:(?![^:@\/]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@\/]*)(?::([^:@\/]*))?)?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/.exec(t);let o=14;for(;o--;){var h;r[i[o]]=null!==(h=n[o])&&void 0!==h?h:""}return a&&(r.host=a,r.source=e,r.authority=a+(r.port?":"+r.port:"")),{protocol:r.protocol,file:r.file,host:r.host,port:r.port,user:r.user,password:r.password,origin:`${r.protocol}://${r.authority}`,pathname:r.path,search:`?${r.query}`,hash:r.anchor?`#${r.anchor}`:""}}const h=/(?:\/|^)\.(?=\/)/g,l=/(?:\/|^)\.\.\/(?!\.\.\/)[^\/]*(?=\/)/g,d=/^(?=([^\/?#]*))\1([^]*)$/,u=/^(?=((?:[a-zA-Z0-9+\-.]+:)?))\1(?=((?:\/\/[^\/?#]*)?))\2(?=((?:(?:[^?#\/]*\/)*[^;?#\/]*)?))\3((?:;[^?#]*)?)(\?[^#]*)?(#[^]*)?$/;function c(t){return t.scheme+t.netLoc+t.path+t.params+t.query+t.fragment}function p(t){const e=u.exec(t);return e?{scheme:e[1]||"",netLoc:e[2]||"",path:e[3]||"",params:e[4]||"",query:e[5]||"",fragment:e[6]||""}:null}function m(t){for(t=t.split("").reverse().join("").replace(h,"");t.length!==(t=t.replace(l,"")).length;);return t.split("").reverse().join("")}function f(t,e,i){if(i=i||{},t=t.trim(),!(e=e.trim())){if(!i.alwaysNormalize)return t;let e=p(t);if(!e)throw new Error("Error trying to parse base URL.");return e.path=m(e.path),c(e)}let s=p(e);if(!s)throw new Error("Error trying to parse relative URL.");if(s.scheme)return i.alwaysNormalize?(s.path=m(s.path),c(s)):e;let a=p(t);if(!a)throw new Error("Error trying to parse base URL.");if(!a.netLoc&&a.path&&"/"!==a.path[0]){let t=d.exec(a.path);a.netLoc=t[1],a.path=t[2]}a.netLoc&&!a.path&&(a.path="/");const r={scheme:a.scheme,netLoc:s.netLoc,path:null,params:s.params,query:s.query,fragment:s.fragment};if(!s.netLoc&&(r.netLoc=a.netLoc,"/"!==s.path[0]))if(s.path){let t=a.path,e=t.substring(0,t.lastIndexOf("/")+1)+s.path;r.path=m(e)}else r.path=a.path,s.params||(r.params=a.params,s.query||(r.query=a.query));return null===r.path&&(r.path=i.alwaysNormalize?m(s.path):s.path),c(r)}}}]);
@@ -1 +0,0 @@
1
- (self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[535],{66584:(e,t,a)=>{a.r(t),a.d(t,{default:()=>E});var i=a(19371),r=a(41863),n=a(75354),o=a(42524),s=a(77389),d=a(28034),c=a(35206),h=a(87227),l=a(6072),f=a(50012),p=a(722),u=a(47378),g=a(31184),w=a(1818),m=a(30027),I=a(91278),U=a(61556),k=a(73872),M=a(17635),R=a(44980),v=a(93535),b=a(35536),B=a(54829),y=a(59586),D=a(31027),A=a(21962),P=a(79939),C=a(69048),S=a(44109),L=a(87339),T=a(81819),x=a(17630),z=a(65992);const N="packages/avformat/src/formats/IFlvFormat.ts";class E extends l.A{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};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 L.z3("the file format is not flv",N,155),u.LR;await this.header.read(e.ioReader),0!==await e.ioReader.readUint32()&&L.R8("the previousTagSize0 is not 0",N,162);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 L.z3(t.message,N,180),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))):L.R8(`Invalid ModEx size for Type TimestampOffsetNano!, need 3 but got ${r.length}`,N,213)}else L.R8(`unknown ModEx type: ${d}`,N,217);return 15&n}async readCodecConfigurationRecord(e,t,a,i){const n=(0,g.sY)(i);t.codecpar.extradata?((0,w.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?U.XC(t):173===t.codecpar.codecId?k.XC(t):196===t.codecpar.codecId?M.XC(t):225===t.codecpar.codecId?R.XC(t):167===t.codecpar.codecId?v.XC(t):139===t.codecpar.codecId?b.XC(t):86018===t.codecpar.codecId?B.XC(t):86028===t.codecpar.codecId?y.XC(t):86076===t.codecpar.codecId&&D.XC(t))}async readAVPacketData(e,t,a,i){const n=(0,g.sY)(i);(0,w.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,g.Gy)(8);s.M[8](o,a.hdrCll.maxCLL),s.M[8](o+4,a.hdrCll.maxFall),(0,w.sn)(e.codecpar[n.o9]+20,e.codecpar[n.o9]+24,22)?(0,w.Ow)(t,22,o,8):(0,w.$W)(e.codecpar[n.o9]+20,e.codecpar[n.o9]+24,22,o,8)}if(r||i){const d=(0,g.Gy)(88);function c(e,t){const a=(0,m.j2)(t,I.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,w.sn)(e.codecpar[n.o9]+20,e.codecpar[n.o9]+24,20)?(0,w.Ow)(t,20,d,88):(0,w.$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?I.H3:I.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,m.k)(BigInt(Math.floor(1e3*this.script.onMetaData.duration)),I.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,m.k)(BigInt(1e3*this.script.onMetaData.videoTrackIdInfoMap[i].duration),I.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,m.k)(BigInt(1e3*this.script.onMetaData.audioTrackIdInfoMap[i].duration),I.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(),l=await e.ioReader.readUint24();const p=await e.ioReader.readUint8();if(p&&(l|=p<<24),s.M[17](t+16,this.options.useNanoTimestamp?(0,m.k)(BigInt(Math.floor(l)),I.i0,I.FQ):BigInt(Math.floor(l))),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 l=(240&d)>>4;if(9===l){let h=!1,l=15&d;for(;7===l;){let a=e.ioReader.getPos();l=await this.readModEx(e,t,1),c-=Number(BigInt.asIntN(32,e.ioReader.getPos()-a))}let p=0,u=0;if(5===l){h=!0;const t=await e.ioReader.readUint8();c--,u=(240&t)>>4,l=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,m=0;h&&(2===u&&(p=await e.ioReader.readUint32(),c-=4),m=await e.ioReader.readUint8(),c--,0!==u?(d=await e.ioReader.readUint24(),c-=3):d=c);let U=this.findStream(e,1,m);if(U||(U=this.createStream(e,1,g,m),p===(0,f.A)("ac-3")?U.codecpar.codecId=86019:p===(0,f.A)("ec-3")?U.codecpar.codecId=86056:p===(0,f.A)("Opus")?(U.codecpar.codecId=86076,U.codecpar.sampleRate=48e3):p===(0,f.A)(".mp3")?U.codecpar.codecId=86017:p===(0,f.A)("fLaC")?U.codecpar.codecId=86028:p===(0,f.A)("mp4a")?U.codecpar.codecId=86018:(L.R8(`unknown codec fourcc(${p.toString(16)})`,N,546),U.codecpar.codecId=0)),s.M[15](g+32,U.index),c-=d,4===l){const t=await e.ioReader.readUint8(),a=await e.ioReader.readUint8();if(d-=2,A.bl(U.codecpar[n.o9]+112),2===t){A.xY(U.codecpar[n.o9]+112,a);for(let t=0;t<a;t++){const a=await e.ioReader.readUint8();d--,a<18?s.M[15](U.codecpar.chLayout.u.map+24*t,a):a>=18&&a<=23?s.M[15](U.codecpar.chLayout.u.map+24*t,a-18+35):254===a?s.M[15](U.codecpar.chLayout.u.map+24*t,512):s.M[15](U.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),A.ML(U.codecpar[n.o9]+112,t)}i=!0}else if(0===l)d?(await this.readCodecConfigurationRecord(e,U,g,d),d=0,i=!1,(0,w.fQ)(t,1)||(i=!0)):i=!0;else if(2===l)s.M[15](g+36,32|o.f[15](g+36)),i=!1;else if(1===l){if(await this.readAVPacketData(e,U,g,d),(86019===U.codecpar.codecId||86056===U.codecpar.codecId||86017===U.codecpar.codecId)&&U.codecpar.sampleRate===I.N_)if(86019===U.codecpar.codecId||86056===U.codecpar.codecId){const e=P.R((0,w.iI)(g));T.ai(e)||(U.codecpar.sampleRate=e.sampleRate,U.codecpar.chLayout.nbChannels=e.channels,U.codecpar.bitrate=BigInt(e.bitrate))}else 86017===U.codecpar.codecId&&C.XC(U,(0,w.iI)(g));i=!1,d=0}else L.R8(`invalid audioPacketType ${l}`,N,628);if(d&&await e.ioReader.skip(d),g===t||i||e.interval.packetBuffer.push(g),!h||0===u||!c)break;g=(0,w._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===l)a.codecpar.codecId=8===a.codecpar.bitsPerCodedSample?65541:65536;else if(3===l)a.codecpar.codecId=8===a.codecpar.bitsPerCodedSample?65541:65536;else{var u;a.codecpar.codecId=null!==(u=h.FJ[l])&&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,w.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,l=(112&n)>>4;if(c--,1===l&&s.M[15](t+36,1|o.f[15](t+36)),d){let d=!0,h=!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===l)d=!1,i=!0;else if(6===p){h=!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 U=t;for(;d;){let n=c,d=0;h&&(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 k=this.findStream(e,0,d);if(k||(k=this.createStream(e,0,U,d),u===(0,f.A)("avc1")?k.codecpar.codecId=27:u===(0,f.A)("hvc1")?k.codecpar.codecId=173:u===(0,f.A)("vvc1")?k.codecpar.codecId=196:u===(0,f.A)("av01")?k.codecpar.codecId=225:u===(0,f.A)("vp09")?k.codecpar.codecId=167:u===(0,f.A)("vp08")&&(k.codecpar.codecId=139)),s.M[15](U+32,k.index),c-=n,4===p){const t=e.ioReader.getPos()+BigInt(Math.floor(n)),a=await S.$x(e.ioReader,t),r=await S.$x(e.ioReader,t);"colorInfo"===a?this.parseColorInfo(k,U,r):L.R8(`unknown metadata key ${a}`,N,805),e.ioReader.getPos()<t&&await e.ioReader.seek(t),i=!0,n=0}else if(0===p)n?(await this.readCodecConfigurationRecord(e,k,U,n),n=0,i=!1,(0,w.fQ)(t,1)||(i=!0)):i=!0;else if(2===p)s.M[15](U+36,32|o.f[15](U+36)),i=!1;else if(5===p)225===k.codecpar.codecId?(await this.readCodecConfigurationRecord(e,k,U,n-2),i=!1,n=0,(0,w.fQ)(t,1)||(i=!0)):i=!0;else if(1===p||3===p){if(1===p&&(173===k.codecpar.codecId||196===k.codecpar.codecId||27===k.codecpar.codecId)){const a=await e.ioReader.readInt24();s.M[17](U+8,o.f[17](U+16)+(this.options.useNanoTimestamp?(0,m.FP)(BigInt(0|a),I.i0,t+72):BigInt(0|a))),n-=3}await this.readAVPacketData(e,k,U,n),n=0,i=!1}else L.R8(`invalid videoPacketType ${p}`,N,864);if(n&&await e.ioReader.skip(n),i||U===t||e.interval.packetBuffer.push(U),!h||0===g||!c)break;U=(0,w._5)(),s.M[17](U+56,a),(0,r.Mr)(U+72,t+72,8),s.M[17](U+16,o.f[17](t+16)),s.M[17](U+8,o.f[17](t+8)),1===l&&s.M[15](U+36,1|o.f[15](U+36))}}else if(5!==l){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=h.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){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,m.FP)(BigInt(0|n),I.i0,t+72):BigInt(0|n))),0===r?(await this.readCodecConfigurationRecord(e,a,t,c),(0,w.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 L.R8(`invalid tag type: ${d}, try to sync to next tag`,N,950),await this.syncTag(e),this.readAVPacket_(e,t);L.R8("not support script tag encoded by amf3, ignore it",N,947)}c&&await e.ioReader.skip(c);const U=e.ioReader.getPos()-a,k=BigInt(Math.floor(await e.ioReader.readUint32()));return U!==k&&L.R8(`tag ${d} size not match, size: ${U}, previousTagSize: ${k}`,N,963),i?this.readAVPacket_(e,t):0}async readAVPacket(e,t){try{return s.M[15](t+76,this.options.useNanoTimestamp?I.H3:I.qs),s.M[15](t+72,1),await this.readAVPacket_(e,t)}catch(t){return-1048576!==e.ioReader.error&&-1048572!==e.ioReader.error?(L.z3(`read packet error, ${t}`,N,981),u.LR):e.ioReader.error}}async syncTag(e){let t=I.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=I.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=I.Dh}}}catch(e){break}t!==I.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=x.El(t.sampleIndexes,(e=>e.pts>a?-1:1));if(i>0&&(0,m.k)(a-t.sampleIndexes[i-1].pts,t.timeBase,I.i0)<BigInt(1e4))return L.Yz(`seek in sampleIndexes, found index: ${i}, pts: ${t.sampleIndexes[i-1].pts}, pos: ${t.sampleIndexes[i-1].pos}`,N,1088),await e.ioReader.seek(t.sampleIndexes[i-1].pos),r}if(this.script.canSeek()){const{pos:i,dts:n}=this.script.dts2Position(Number((0,m.k)(a,t.timeBase,I.i0)/BigInt(1e3)));if(i>0){L.Yz(`seek in filepositions, found pts: ${n}, pos: ${i}`,N,1097),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 L.Yz("not found any keyframe index, try to seek in bytes",N,1107),(0,p.A)(e,t,a,this.firstTagPos,this.readAVPacket.bind(this),this.syncTag.bind(this))}getAnalyzeStreamsCount(){let e=0;return(this.header.hasAudio||(0,z.A)(this.script.onMetaData.audiocodecid))&&e++,(this.header.hasVideo||(0,z.A)(this.script.onMetaData.videocodecid))&&e++,e}}},6072:(e,t,a)=>{a.d(t,{A:()=>r});var i=a(19371);class r{constructor(){(0,i.A)(this,"type",-1),(0,i.A)(this,"onStreamAdd",void 0)}async destroy(e){}}},28034:(e,t,a)=>{a.d(t,{A:()=>r});var i=a(19371);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)}}},35206:(e,t,a)=>{a.d(t,{A:()=>h});var i=a(19371),r=a(38568),n=a(44109),o=a(47378),s=a(87339),d=a(33134),c=a(21279);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 n.$x(e,i),d=await n.$x(e,i);this[r]=d,i>e.getPos()&&await e.skip(Number(BigInt.asIntN(32,i-e.getPos())));const c=Number(e.getPos()-a),h=await e.readUint32();return c+11!==h?(s.R8(`script size not match, size: ${c+11}, previousTagSize: ${h}`,"packages/avformat/src/formats/flv/FlvScriptTag.ts",60),o.LR):0}computeSize(){const e=[],t=new c.A;return t.onFlush=t=>(e.push(t.slice()),0),n.bD(t,"onMetaData"),n.bD(t,this.onMetaData),t.flush(),(0,d.A)(Uint8Array,e).length}write(e){if(this.onMetaData){const t=[],a=new c.A;a.onFlush=e=>(t.push(e.slice()),0),n.bD(a,"onMetaData"),n.bD(a,this.onMetaData),a.flush();const i=(0,d.A)(Uint8Array,t);r.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)}}},87227:(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}},38568:(e,t,a)=>{a.d(t,{M5:()=>n});var i=a(81819);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)}},56628:(e,t,a)=>{a.d(t,{d:()=>o});var i=a(17630),r=a(91278),n=a(30027);function o(e,t,a){let o=BigInt(0);return i.__(e,(e=>{o+=e.codecpar.bitrate*(0,n.k)(t,a,r.i0)/BigInt(8e3)})),o}},50012:(e,t,a)=>{a.d(t,{A:()=>n});var i=a(87339);const r="packages/avformat/src/function/mktag.ts";function n(e){4!==e.length&&i.R8(`tag length is not 4, tag: ${e}`,r,31);let t=0;for(let a=0;a<4;a++)t=t<<8|e.charCodeAt(a);return t}},722:(e,t,a)=>{a.d(t,{A:()=>l});var i=a(42524),r=a(56628),n=a(91278),o=a(30027),s=a(1818),d=a(47378),c=a(87339);const h="packages/avformat/src/function/seekInBytes.ts";async function l(e,t,a,l,f,p){const u=e.ioReader.getPos(),g=await e.ioReader.fileSize();let w=n.Dh,m=a;t.startTime!==n.Dh?m-=t.startTime:m-=t.firstDTS;const I=(0,o.k)(a,t.timeBase,n.i0);if(I<BigInt(1e4))return c.Yz(`seek pts is earlier then 10s, seek to first packet pos(${l}) directly`,h,78),await e.ioReader.seek(l),u;let U=(0,r.d)(e.streams,m,t.timeBase);const k=g-(0,r.d)(e.streams,BigInt(1e4),n.i0),M=(0,r.d)(e.streams,BigInt(1e4),n.i0);if(U>k&&(U=k),U<l)return await e.ioReader.seek(l),u;const R=(0,s._5)();let v=g,b=BigInt(0);e:for(;v-b<M&&(U=b),await e.ioReader.seek(U),await p(e),!(8&e.ioReader.flags);){let a=await f(e,R),r=i.f[17](R+56);if(!(a>=0)){w=n.Dh;break}{const d=(0,o.Mr)(i.f[17](R+8),R+72,n.i0);let l=d-I;if(c.Yz(`try to seek to pos: ${U}, got packet pts: ${i.f[17](R+8)}(${d}ms), diff: ${l}ms`,h,115),l<=BigInt(0)&&-l<BigInt(1e4)||v-b<M){const d=[r];for(;l<=0;){if(i.f[15](R+32)===t.index&&1&i.f[15](R+36)&&d.push(r),(0,s.Up)(R),a=await f(e,R),a<0){if(-1048576===a)break;if(-1048575===a)continue;w=n.Dh;break e}r=i.f[17](R+56),l=(0,o.Mr)(i.f[17](R+8),R+72,n.i0)-I}w=d.pop();break}l>BigInt(0)?(v=U,U=b+v>>BigInt(1)):(b=U,U=b+v>>BigInt(1))}if(8&e.ioReader.flags)break}return(0,s.Qe)(R),w!==n.Dh?(c.Yz(`finally seek to pos ${w}`,h,170),await e.ioReader.seek(w),await p(e),u):(await e.ioReader.seek(u),8&e.ioReader.flags?BigInt(d.LT):BigInt(d.E$))}},54829:(e,t,a)=>{a.d(t,{Bq:()=>l,En:()=>d,Ij:()=>h,XC:()=>c,f7:()=>f,hY:()=>s,uF:()=>n});var i=a(91278),r=a(5043);const n={1:"Main",2:"LC",3:"SSR",4:"LTP",5:"HE",6:"SCALABLE",29:"HEv2",23:"LD",39:"ELD"},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}},79939:(e,t,a)=>{a.d(t,{R:()=>p,j:()=>r});var i=a(5043);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}},44980:(e,t,a)=>{a.d(t,{Ui:()=>o,XC:()=>n,zk:()=>r});var i=a(5043);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)}}},59586:(e,t,a)=>{a.d(t,{DK:()=>s,XC:()=>c,Xr:()=>d,jA:()=>n,ob:()=>r,oe:()=>o});var i=a(54570);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}}},69048:(e,t,a)=>{a.d(t,{Au:()=>I,He:()=>U,XC:()=>k,Y2:()=>g,hG:()=>w,oz:()=>m});var i=a(91278);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}}},31027:(e,t,a)=>{a.d(t,{Ij:()=>c,XC:()=>d,kt:()=>s});var i=a(30027),r=a(54570),n=a(21374);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 r.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,i.k)(BigInt(80),{den:1e3,num:1},{den:48e3,num:1}))}}function c(e){const t=new Uint8Array(19),a=new n.A(t,!1);return a.writeString("OpusHead"),a.writeUint8(1),a.writeUint8(e.chLayout.nbChannels),a.writeUint16(e.initialPadding),a.writeUint32(e.sampleRate),t}},35536:(e,t,a)=>{a.d(t,{Ui:()=>n,XC:()=>r});var i=a(5043);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)}}},93535:(e,t,a)=>{a.d(t,{Ui:()=>o,XC:()=>n,wN:()=>r});var i=a(5043);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)}}},44109:(e,t,a)=>{a.d(t,{$x:()=>s,bD:()=>d});var i=a(81819),r=a(17630),n=a(25092);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:()=>{},21279:(e,t,a)=>{a.d(t,{A:()=>n});var i=a(19371),r=a(4068);class n{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1048576,t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],a=arguments.length>2?arguments[2]:void 0;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}}}}]);