@libmedia/avplayer 1.2.0 → 1.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/esm/163.avplayer.js +1 -1
- package/dist/esm/182.avplayer.js +1 -1
- package/dist/esm/195.avplayer.js +1 -1
- package/dist/esm/199.avplayer.js +1 -1
- package/dist/esm/239.avplayer.js +1 -1
- package/dist/esm/248.avplayer.js +1 -1
- package/dist/esm/26.avplayer.js +1 -1
- package/dist/esm/261.avplayer.js +1 -1
- package/dist/esm/272.avplayer.js +1 -1
- package/dist/esm/325.avplayer.js +1 -1
- package/dist/esm/33.avplayer.js +1 -1
- package/dist/esm/43.avplayer.js +1 -1
- package/dist/esm/462.avplayer.js +1 -1
- package/dist/esm/502.avplayer.js +1 -1
- package/dist/esm/573.avplayer.js +1 -1
- package/dist/esm/630.avplayer.js +1 -1
- package/dist/esm/641.avplayer.js +1 -1
- package/dist/esm/735.avplayer.js +1 -1
- package/dist/esm/747.avplayer.js +1 -1
- package/dist/esm/790.avplayer.js +1 -1
- package/dist/esm/794.avplayer.js +1 -1
- package/dist/esm/850.avplayer.js +1 -1
- package/dist/esm/881.avplayer.js +1 -1
- package/dist/esm/932.avplayer.js +1 -1
- package/dist/esm/943.avplayer.js +1 -1
- package/dist/esm/956.avplayer.js +1 -1
- package/dist/esm/961.avplayer.js +1 -1
- package/dist/esm/97.avplayer.js +1 -1
- package/dist/esm/991.avplayer.js +1 -1
- package/dist/esm/avplayer.js +1 -1
- package/dist/umd/163.avplayer.js +1 -1
- package/dist/umd/182.avplayer.js +1 -1
- package/dist/umd/195.avplayer.js +1 -1
- package/dist/umd/199.avplayer.js +1 -1
- package/dist/umd/239.avplayer.js +1 -1
- package/dist/umd/248.avplayer.js +1 -1
- package/dist/umd/26.avplayer.js +1 -1
- package/dist/umd/261.avplayer.js +1 -1
- package/dist/umd/272.avplayer.js +1 -1
- package/dist/umd/325.avplayer.js +1 -1
- package/dist/umd/33.avplayer.js +1 -1
- package/dist/umd/43.avplayer.js +1 -1
- package/dist/umd/462.avplayer.js +1 -1
- package/dist/umd/502.avplayer.js +1 -1
- package/dist/umd/573.avplayer.js +1 -1
- package/dist/umd/630.avplayer.js +1 -1
- package/dist/umd/641.avplayer.js +1 -1
- package/dist/umd/735.avplayer.js +1 -1
- package/dist/umd/747.avplayer.js +1 -1
- package/dist/umd/790.avplayer.js +1 -1
- package/dist/umd/794.avplayer.js +1 -1
- package/dist/umd/850.avplayer.js +1 -1
- package/dist/umd/881.avplayer.js +1 -1
- package/dist/umd/932.avplayer.js +1 -1
- package/dist/umd/943.avplayer.js +1 -1
- package/dist/umd/956.avplayer.js +1 -1
- package/dist/umd/961.avplayer.js +1 -1
- package/dist/umd/97.avplayer.js +1 -1
- package/dist/umd/991.avplayer.js +1 -1
- package/dist/umd/avplayer.js +1 -1
- package/package.json +5 -4
package/dist/esm/26.avplayer.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const __webpack_esm_id__=26;export const __webpack_esm_ids__=[26];export const __webpack_esm_modules__={26:(t,e,i)=>{i.r(e),i.d(e,{default:()=>$});var a=i(80209),r=i(54568),s=i(56238),n=i(49103),o=i(55982),c=i(6927),d=i(64017),u=i(35924),f=i(46564),l=i(46626),p=i(26669),h=i(98901),m=i(29688),g=i(67669),k=i(23226),w=i(41933),b=i(20296),v=i(61457),U=i(20642),I=i(12062),P=i(22694),y=i(19784),S=i(937),B=i(51091),x=i(84777),A=i(83446),T=i(34117),D=i(44905),C=i(74817),M=i(74872),E=i(56289),z=i(57595),F=i(37765),N=i(15716),Q=i(14307),_=i(88962),O=i(88560),R=i(37766),W=i(2633),V=i(84044),q=i(16627);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,h.Mr)(s.f[17](t.audio.backPacket+8),t.audio.backPacket+72,m.i0)<(0,h.Mr)(s.f[17](t.video.backPacket+8),t.video.backPacket+72,m.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,h.Mr)(s.f[17](t.audio.backPacket+8),t.audio.backPacket+72,m.i0)>(0,h.Mr)(s.f[17](t.video.backPacket+8),t.video.backPacket+72,m.i0))break}if(1&s.f[15](t.video.backPacket+36)||27===s.f[15](t.video.codecpar+4)&&U.KD(t.video.backPacket,s.f[20](t.video.codecpar+12)?1+(3&k.r8(s.f[20](t.video.codecpar+12)+4)):4)||173===s.f[15](t.video.codecpar+4)&&I.KD(t.video.backPacket,s.f[20](t.video.codecpar+12)?1+(3&k.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,l.sY)(i.length);(0,a.lW)(e,i.length,i),(0,f.Ow)(t.audio.backPacket,1,e,i.length)}}return e}getSourceOpenHandler(t,e=BigInt(0)){return async()=>{var i,d;await this.syncToKeyframe(t);let u=e,p=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&&(u=A.T9(u,(0,h.Mr)(s.f[17](t.audio.backPacket+16),t.audio.backPacket+72,m.i0))),(null===(d=t.video)||void 0===d?void 0:d.backPacket)>0&&(p=A.T9(p,(0,h.Mr)(s.f[17](t.video.backPacket+16),t.video.backPacket+72,m.i0))),t.audio&&t.video&&A.tn(u-p)>1e3)if(p>u){const e=(0,h.k)(u,m.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),p=u}else if(u>p&&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,l.sY)(i.length);(0,a.lW)(r,i.length,i),(0,f.NX)(e,r,i.length),c.M[17](e+16,(0,h.k)(p,m.i0,(0,n.A)(e+72,o.Q))),c.M[17](e+8,(0,h.k)(p,m.i0,(0,n.A)(e+72,o.Q)));const d=BigInt(1024e3)/BigInt(0|t.audio.oformatContext.streams[0].codecpar.sampleRate),g=Number(BigInt.asIntN(32,(u-p)/d));let k=s.f[17](e+16)+(0,h.k)(d,m.i0,(0,n.A)(t.audio.backPacket+72,o.Q));for(let i=0;i<g-1;i++){const i=t.avpacketPool.alloc();(0,f.rN)(i,e),c.M[17](i+16,k),c.M[17](i+8,k),t.audio.pullQueue.queue.push(i),k+=(0,h.k)(d,m.i0,(0,n.A)(t.audio.backPacket+72,o.Q))}t.audio.pullQueue.queue.push(t.audio.backPacket),t.audio.backPacket=e,u=p}const g=[];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)),g.push(this.startMux(t.audio,t,A.T9(u,p)))),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)),g.push(this.startMux(t.video,t,A.T9(u,p)))),await Promise.all(g);let k=!1,w=!1;t.audio&&(t.audio.backPacket=await this.pullAVPacket(t.audio,t),t.audio.backPacket>0?(k=!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&&(k?(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,D.A)(),e>BigInt(0)?(t.currentTime=P.yw(e),t.controlIPCPort.notify("seek",{time:t.currentTime})):(S.A.safari||B.A.ios||b>.1||t.playRate>BigInt(100))&&(t.currentTime=b,t.currentTimeNTP=(0,D.A)(),t.controlIPCPort.notify("seek",{time:b}))}}getMimeType(t){let e="";return 1===s.f[15](t)?e=(0,w.A)(t):0===s.f[15](t)&&(e=(0,b.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,l.Eb)(s.extradata),s.extradata=(0,l.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 O.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 O.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(x.ai(i)||(0,y.A)(i))return i;{const e=t.avpacketPool.alloc();return(0,p.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,m.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.KD(n,s.f[20](e.video.codecpar+12)?1+(3&k.r8(s.f[20](e.video.codecpar+12)+4)):4)||173===s.f[15](e.video.codecpar+4)&&I.KD(n,s.f[20](e.video.codecpar+12)?1+(3&k.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=A.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===m.Dh?(i.frameCount=(0,h.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,i=!1){if(e.enableRawMpeg){if(!e.timestampOffsetUpdated){const i=(0,h.Mr)(s.f[17](t+8),t+72,m.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,D.A)();return this.pullAVPacket(t,e).then((a=>{if(a<0)return t.packetEnded=!0,void(t.frontPacket=0);const r=(0,D.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,D.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,h.Mr)(s.f[17](a+16),a+72,m.i0);if(t.lastDTS!==m.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,D.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,D.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,i=BigInt(0)){let a,r=m.Dh,n=m.Dh,o=BigInt(0),d=e.cacheDuration;const u=t.oformatContext.streams[0].timeBase;for(t.backPacket>0&&(r=s.f[17](t.backPacket+16),n=s.f[17](t.backPacket+8),i>n&&(d+=i-(0,h.k)(r,u,m.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===m.Dh||(0,h.k)(o-r,u,m.i0)<d;){if(a=await this.pullAVPacket(t,e),a<0){t.packetEnded=!0;break}o=s.f[17](a+16),r===m.Dh&&(r=o,n=s.f[17](a+8)),s.f[17](a+8)<n&&(n=s.f[17](a+8)),c.M[15](a+32,t.oformatContext.streams[0].index),this.writeAVPacket(a,t),e.avpacketPool.release(a)}n!==m.Dh&&t.startPTS<=BigInt(0)&&(t.startPTS=n),t.pullQueue.diff=BigInt(0),e.currentTimeNTP=(0,D.A)(),e.currentTime=0,t.startTimestamp=BigInt(Math.floor((0,D.A)()))-(0,h.k)(o,u,m.i0)*BigInt(100)/e.playRate}resetResource(t,e){t.bufferQueue.flush(),t.oformatContext.oformat.destroy(t.oformatContext);const i=new O.A({fragmentMode:1,fragment:!0,fastOpen:!0,mp4Mode:0,defaultBaseIsMoof:!0,reverseSpsInAvcc:!0,hasTfra:!1});t.oformatContext.oformat=i;const a=new W.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=m.Dh,t.pullQueue.lastPTS=BigInt(0),t.pullQueue.lastDTS=BigInt(0),t.pullQueue.diff=BigInt(0),t.lastDTS=m.Dh}async addStream(t,e,i,a,n,o,d){const f=this.tasks.get(t);if(f){const k=(0,l.Gy)(168);(0,y.A)(i)?(0,g.Yi)(k,i):(0,p.T8)(i,k);const w=new C.A(1048576),b=(0,_.fG)(),v=new O.A({fragmentMode:1,fragment:!0,fastOpen:!0,mp4Mode:0,defaultBaseIsMoof:!0,reverseSpsInAvcc:!0,hasTfra:!1}),U=new M.A;w.onFlush=t=>(U.write(t.slice()),0),w.onSeek=t=>U.seek(t)?0:u.lh;const I=b.createStream();(0,g.Yi)(I.codecpar[r.o9],k),I.metadata=n,86017===s.f[15](k+4)&&(I.codecpar.codecTag=(0,R.A)(".mp3"));const P=1===s.f[15](k)&&s.f[15](k+144)&&!f.isLive&&(0,h.lb)(a)>(0,h.lb)({num:1,den:s.f[15](k+136)});P?(I.timeBase.den=s.f[15](k+136),I.timeBase.num=1):(I.timeBase.den=a.den,I.timeBase.num=a.num),b.oformat=v,b.ioWriter=w;const x=new W.A,D={type:"audio",codecpar:k,ioWriter:w,oformatContext:b,oformat:v,track:x,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:m.Dh,pullQueue:{queue:[],index:0,frameCount:m.Dh,diff:BigInt(0),lastPTS:BigInt(0),lastDTS:BigInt(0),ended:!1,useSampleRateTimeBase:P},enableRawMpeg:86017===s.f[15](k+4)&&!S.A.firefox,timestampOffsetUpdated:!1,ignoreEncryption:!1};x.onQuotaExceededError=()=>{D.startTimestamp-=BigInt(100)},x.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](k)?(f.audio=D,c.M[15](f.stats+4,s.f[15](k+136)),c.M[15](f.stats,s.f[15](k+116))):0===s.f[15](k)&&(D.type="video",f.video=D,c.M[15](f.stats+84,s.f[15](k+56)),c.M[15](f.stats+88,s.f[15](k+60)),s.f[15](f.stats+84)*s.f[15](f.stats+88)>8294400&&(S.A.safari||B.A.ios)&&(f.cacheDuration=A.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,l.Gy)(168);(0,y.A)(i)?(0,g.Yi)(d,i):(0,p.T8)(i,d);const u=1===s.f[15](d)?c.audio:c.video;if(u){u.bufferQueue.flush(),await new Promise((t=>{u.track.removeAllBuffer((()=>{t()}))})),u.track.reset();const t=new O.A({fragmentMode:1,fragment:!0,fastOpen:!0,mp4Mode:0,defaultBaseIsMoof:!0,reverseSpsInAvcc:!0,hasTfra:!1});u.oformatContext.oformat=t,u.codecpar&&(0,g.dn)(u.codecpar),u.codecpar=d,u.streamIndex=e,u.startPTS=o;const i=u.oformatContext.streams[0];(0,g.Yi)(i.codecpar[r.o9],d),i.metadata=n,86017===s.f[15](d+4)&&(i.codecpar.codecTag=(0,R.A)(".mp3"));const f=1===s.f[15](d)&&s.f[15](d+144)&&!c.isLive&&(0,h.lb)(a)>(0,h.lb)({num:1,den:s.f[15](d+136)});f?(i.timeBase.den=s.f[15](d+136),i.timeBase.num=1):(i.timeBase.den=a.den,i.timeBase.num=a.num),u.enableRawMpeg=86017===s.f[15](d+4)&&!S.A.firefox,u.timestampOffsetUpdated=!1,u.pullQueue.useSampleRateTimeBase=f;try{u.track.changeMimeType(this.getMimeType(i.codecpar[r.o9]),u.enableRawMpeg?"sequence":"segments")}catch(t){if(!S.A.firefox||t.message.indexOf("An attempt was made to use an object that is not")<0)throw t}u.enableRawMpeg||(Q.ho(u.oformatContext),Q.bx(u.oformatContext))}else(0,g.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,D.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,D.A)()-e.pauseTimestamp)),e.audio.loop.start()),e.video&&(e.video.startTimestamp+=BigInt(Math.floor((0,D.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(),(S.A.safari||B.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=m.Dh,e.audio.lastDTS=m.Dh),e.video&&(e.video.enableRawMpeg||Q.bX(e.video.oformatContext),e.video.bufferQueue.flush(),(S.A.safari||B.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=m.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,h.Mr)(s.f[17](i.audio.backPacket+8),i.audio.backPacket+72,m.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,h.Mr)(s.f[17](i.video.backPacket+8),i.video.backPacket+72,m.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=A.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,h.Mr)(s.f[17](i.audio.backPacket+8),i.audio.backPacket+72,m.i0)),!((0,h.Mr)(s.f[17](i.audio.backPacket+8),i.audio.backPacket+72,m.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,h.Mr)(s.f[17](i.video.backPacket+8),i.video.backPacket+72,m.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,D.A)()))-(a+i.cacheDuration+(0,h.k)(i.audio.startPTS,i.audio.oformatContext.streams[0].timeBase,m.i0))*BigInt(100)/i.playRate,i.pausing?i.pauseTimestamp=(0,D.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,D.A)()))-(r+i.cacheDuration+(0,h.k)(i.video.startPTS,i.video.oformatContext.streams[0].timeBase,m.i0))*BigInt(100)/i.playRate,i.pausing?i.pauseTimestamp=(0,D.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 u=0,f=0;i.audio?i.video?(u=Math.max(i.audio.track.getBufferedStart(),i.video.track.getBufferedStart()),f=Math.min(i.audio.track.getBufferedEnd(),i.video.track.getBufferedEnd())):(u=i.audio.track.getBufferedStart(),f=i.audio.track.getBufferedEnd()):i.video&&(u=i.video.track.getBufferedStart(),f=i.video.track.getBufferedEnd());let l=P.yw(o);return l>=u&&l<=f||(l=Math.abs(l-u)>Math.abs(l-f)?f:u),i.currentTimeNTP=(0,D.A)(),i.currentTime=l,i.seeking=!1,T.Yz(`after seek end, seekTime: ${l} taskId: ${t}`,L,1670),l}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,D.A)()):T.h2("task not found",L,1743)}async checkWaiting(t){let e=-1,i=-1;const a=t.currentTime+((0,D.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,D.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,e=BigInt(0)){return this.tasks.has(t.taskId)?u.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,g.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,g.dn)(e.video.codecpar)),e.controlIPCPort&&e.controlIPCPort.destroy(),this.tasks.delete(t))}}},2633:(t,e,i)=>{i.d(e,{A:()=>o});var a,r=i(23902),s=i(34117);!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 n={mediaBufferMax:10};class o{sourceBuffer;operatorQueue;updating;lastRemoveTime;paddingCallback;options;ending;onQuotaExceededError;onEnded;constructor(t={}){this.options=r.X$({},n,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=>{s.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)}}},2843:(t,e,i)=>{i.d(e,{A:()=>n});var a=i(56238),r=i(46626),s=i(67669);class n{inCodecpar;inTimeBase;outCodecpar;init(t,e){return this.inCodecpar=(0,r.Gy)(168),(0,s.Yi)(this.inCodecpar,t),this.inTimeBase={den:a.f[15](e+4),num:a.f[15](e)},0}destroy(){this.inCodecpar&&((0,s.dn)(this.inCodecpar),this.inCodecpar=0)}}},8433:(t,e,i)=>{i.d(e,{A:()=>o});var a=i(32057),r=i(11984),s=i(29688),n=i(98901);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)}},9235:(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})},9993:(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})},10516:(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})},11429:(t,e,i)=>{i.d(e,{A:()=>r});var a=i(22105);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))}},11984:(t,e,i)=>{i.d(e,{A:()=>r});var a=i(29688);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))}},14307:(t,e,i)=>{i.d(e,{XA:()=>g,bX:()=>w,bx:()=>m,dJ:()=>k,ho:()=>h});var a=i(56238),r=i(6927),s=i(87903),n=i(35924),o=i(29688),c=i(83796),d=i(23902),u=i(83446),f=i(34117);const l="packages/avformat/src/mux.ts",p={zeroStart:!1,nonnegative:!1};function h(t,e={}){const i=d.X$({},p,e);t.ioWriter||f.h2("need ioWriter",l,65),t.oformat||f.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 f.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&&!c.zy(a,i))return f.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),u.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)}},15933:(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})},20444:(t,e,i)=>{i.d(e,{A:()=>n});var a=i(80209),r=i(12062),s=i(99817);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)}},22582:(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})},25675:(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})},28917:(t,e,i)=>{i.d(e,{A:()=>c});var a=i(3031),r=i(37766),s=i(84777),n=i(23902),o=i(41662);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=n.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.1.0-8-g1fffe61f"}),i.covr&&u.push({key:l("covr"),value:i.covr.data,type:i.covr.type}),i.metadata&&n.__(i.metadata,((t,e)=>{if((s.Yj(t)||s.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(s.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 n;a=null!==(n=e.type)&&void 0!==n?n:0,r=e.value.length}else{if(!s.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)})}},31641:(t,e,i)=>{i.d(e,{A:()=>n});var a=i(80209),r=i(20642),s=i(99817);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)}},32057:(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})},32476:(t,e,i)=>{i.d(e,{A:()=>a});class a{type=-1;async destroy(t){}static Capabilities=[]}},34814:(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})},35131:(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]}},35476:(t,e,i)=>{i.d(e,{A:()=>r});var a=i(80209);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))}},39695:(t,e,i)=>{i.d(e,{A:()=>r});var a=i(80209);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))}},40475:(t,e,i)=>{i.d(e,{A:()=>r});var a=i(83796);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=[]}},40924:(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})},41067:(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})},41287:(t,e,i)=>{i.d(e,{A:()=>n});var a=i(84777),r=i(41662),s=i(98901);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)})}},43621:(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})},43628:(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})},44523:(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})},44593:(t,e,i)=>{i.d(e,{A:()=>r});var a=i(22105);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())}},44753:(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})},52189:(t,e,i)=>{i.d(e,{A:()=>n});var a=i(11984),r=i(84777),s=i(29688);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)}},52706:(t,e,i)=>{function a(t,e=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})},54070:(t,e,i)=>{i.d(e,{Ro:()=>w,dI:()=>k,l7:()=>m,yT:()=>b});var a=i(54568),r=i(56238),s=i(37766),n=i(23716),o=i(76902),c=i(35131),d=i(40475),u=i(83796),f=i(41662),l=i(80209),p=i(85626),h=i(46564);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,h.Un)(t.codecpar[a.o9]+20,t.codecpar[a.o9]+24,24);e&&(0,p.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)}},57170:(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})},58030:(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})},60033:(t,e,i)=>{i.d(e,{A:()=>n});var a=i(52617),r=i(80209);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)})}},62029:(t,e,i)=>{i.d(e,{A:()=>s});var a=i(34117);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])}},64276:(t,e,i)=>{i.d(e,{A:()=>r});var a=i(57170);function r(t,e,i){(0,a.A)(t,null,i)}},65584:(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})},69829:(t,e,i)=>{i.d(e,{A:()=>o});var a=i(34117),r=i(80209),s=i(73448);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)}},71422:(t,e,i)=>{i.d(e,{A:()=>s});var a=i(34117);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])}},74817:(t,e,i)=>{i.d(e,{A:()=>r});var a=i(41662);class r{data;buffer;pointer;pos;size;littleEndian;error;onFlush;onSeek;constructor(t=1048576,e=!0,i){if(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=a.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}}},74872:(t,e,i)=>{i.d(e,{A:()=>r});var a=i(18528);class r{queue;pos;startPos;endPos;index;offset;constructor(){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,a.A)(Uint8Array,this.queue);return this.queue.length=0,t}get size(){return this.queue.length}}},75873:(t,e,i)=>{i.d(e,{A:()=>s});var a=i(60033),r=i(80209);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)})}},76091:(t,e,i)=>{i.d(e,{A:()=>s});var a=i(32057),r=i(29688);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)}},76902:(t,e,i)=>{i.d(e,{A:()=>M});var a=i(92782),r=i(71422),s=i(15933),n=i(58030),o=i(62029),c=i(9993),d=i(87608),u=i(52189),f=i(76091),l=i(8433),p=i(57170),h=i(76928),m=i(43621),g=i(81364),k=i(43628),w=i(77789),b=i(98075),v=i(80505),U=i(41067),I=i(44523),P=i(22582),y=i(76938),S=i(44753),B=i(64276),x=i(25675),A=i(65584),T=i(9235),D=i(28917),C=i(41287);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:A.A,saiz:x.A,senc:T.A,meta:D.A,chpl:C.A}},76928:(t,e,i)=>{i.d(e,{A:()=>x});var a=i(80209),r=i(31641),s=i(20444),n=i(95414),o=i(35476),c=i(39695),d=i(69829),u=i(98552),f=i(60033),l=i(10516),p=i(40924),h=i(77632),m=i(75873),g=i(44593),k=i(11429),w=i(28320),b=i(37766);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 x(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)})}},76938:(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})},77632:(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})},77789:(t,e,i)=>{function a(t,e,i){t.writeUint32(12),t.writeString("nmhd"),t.writeUint32(0)}i.d(e,{A:()=>a})},80505:(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})},81364:(t,e,i)=>{i.d(e,{A:()=>n});var a=i(11984),r=i(29688),s=i(98901);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)}},84724:(t,e,i)=>{i.d(e,{A:()=>h});var a=i(56238),r=i(6927),s=i(2843),n=i(80209),o=i(34117),c=i(35924),d=i(46564),u=i(46626),f=i(20642),l=i(12062),p=i(25721);class h extends s.A{cache;cached;reverseSps;constructor(t=!1){super(),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&a.f[15](t+36)){let e;(0,d.zu)(this.cache,t);const i=(0,n.JW)(a.f[20](t+24),a.f[15](t+28));if(27===a.f[15](this.inCodecpar+4)?e=f.oT(i,this.reverseSps):173===a.f[15](this.inCodecpar+4)?e=l.oT(i,this.reverseSps):196===a.f[15](this.inCodecpar+4)?e=p.oT(i,this.reverseSps):o.h2(`not support for codecId: ${a.f[15](this.inCodecpar+4)}`,"packages/avformat/src/bsf/h2645/Annexb2AvccFilter.ts",114),r.M[15](this.cache+36,-65&a.f[15](this.cache+36)),(0,d.NX)(this.cache,e.bufferPointer,e.length),e.key&&r.M[15](this.cache+36,1|a.f[15](this.cache+36)),e.extradata){const t=(0,u.sY)(e.extradata.length);(0,n.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):c.LR}reset(){return 0}}},87608:(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})},88560:(t,e,i)=>{i.d(e,{A:()=>C});var a=i(54568),r=i(56238),s=i(32476),n=i(62743),o=i(37766),c=i(54070),d=i(78215),u=i(23905),f=i(40475),l=i(34814),p=i(52706),h=i(84724),m=i(11984),g=i(80209),k=i(85626),w=i(46564),b=i(98901),v=i(29688),U=i(56901),I=i(84777),P=i(83796),y=i(23902),S=i(83446),B=i(34117),x=i(18528),A=i(74817);const T="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 C extends s.A{type=1;context;options;annexb2AvccFilter;avpacket;constructor(t={}){super(),this.options=y.X$({},D,t),this.context=(0,n.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 h.A(this.options.reverseSpsInAvcc),this.annexb2AvccFilter.init(t.codecpar[a.o9],t.timeBase[a.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;P.__(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,o.A)("isom"),this.context.minorVersion=512,this.context.compatibleBrand=[(0,o.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,o.A)("iso6")),this.context.fragment=!0),1===this.options.mp4Mode&&(this.context.isom=!0,this.context.majorBrand=(0,o.A)("qt "),this.context.compatibleBrand=[this.context.majorBrand]),1!==this.options.mp4Mode){this.context.compatibleBrand.push((0,o.A)("iso2"));const e=t.getStreamByMediaType(0);e&&27===e.codecpar.codecId&&this.context.compatibleBrand.push((0,o.A)("avc1")),this.context.compatibleBrand.push((0,o.A)("mp41"))}if(c.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},P.__(t.streams,((t,e)=>{const i=(0,d.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,u.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 A.A,e.ioWriter.onFlush=t=>(e.buffers.push(t.slice()),0),this.context.currentFragment.tracks.push(e)}})),this.enableStreams(t),c.dI(t.ioWriter,t,this.context),t.ioWriter.flush();else{P.__(t.streams,((t,e)=>{const i=(0,d.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,o.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){P.__(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,p.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,p.A)(i.sampleSizes))&&(i.defaultSampleSize=i.sampleSizes[0],i.sampleSizes=[]),(1===i.sampleDurations.length||(0,p.A)(i.sampleDurations))&&(i.defaultSampleDuration=i.sampleDurations[0],i.sampleDurations=[]),i.cenc&&(1===i.cenc.sampleSizes.length||(0,p.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(),c.Ro(t.ioWriter,t,this.context);let i=this.context.currentFragment.size+8;const a=[];let r=8;P.__(this.context.currentFragment.tracks,(e=>{if(!e.sampleCount)return!0;e.ioWriter.flush();const s=(0,x.A)(Uint8Array,e.buffers);e.dataOffset=i,i+=s.length,r+=s.length,a.push(s),(0,l.A)(t.ioWriter,e.dataOffsetPos,e.dataOffset,"int32"),e.cenc&&e.cenc.offsetPos&&(0,l.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,o.A)("mdat")),P.__(a,(e=>{t.ioWriter.writeBuffer(e)})),(0,f.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=U.R((0,g.s3)(r.f[20](t+24),r.f[15](t+28)));if(I.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 s;if(a.substreamId>i.numIndSub+1)return;if(a.substreamId==i.numIndSub+1)return;if(a.substreamId<i.numIndSub||0==a.substreamId&&null!==(s=i.substream[0])&&void 0!==s&&s.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 s=a.privData;if(s.lastDuration>0){const n=s.lastDts+BigInt(Math.floor(s.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===r.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-s.lastDts);this.context.currentChunk.sampleCount++,s.sampleSizes.push(8),s.sttsSampleDeltas[s.sttsSampleDeltas.length-1]===t?s.sttsSampleCounts[s.sttsSampleCounts.length-1]++:(s.sttsSampleCounts.push(1),s.sttsSampleDeltas.push(t))}s.lastPts=n,s.lastDts=n,s.lastDuration=a}}const n=(0,w.rU)(e,16),o=(0,w.rU)(e,17);let c=r.f[15](e+28)+8;return n&&(c+=8+(0|r.f[25](n+4))),o&&(c+=8+(0|r.f[25](o+4))),t.writeUint32(8+c),t.writeString("vttc"),n&&(t.writeUint32(8+r.f[25](n+4)),t.writeString("iden"),t.writeBuffer((0,g.s3)(r.f[20](n),r.f[25](n+4)))),o&&(t.writeUint32(8+r.f[25](o+4)),t.writeString("sttg"),t.writeBuffer((0,g.s3)(r.f[20](o),r.f[25](o+4)))),t.writeUint32(8+r.f[15](e+28)),t.writeString("payl"),t.writeBuffer((0,w.iI)(e)),8+c}return t.writeBuffer((0,w.iI)(e)),r.f[15](e+28)}writeAVPacket(t,e){if(!r.f[15](e+28))return B.R8(`packet's size is 0: ${r.f[15](e+32)}, ignore it`,T,781),0;const i=t.getStreamByIndex(r.f[15](e+32));if(!i||1024&i.disposition)return void B.R8(`can not found the stream width the avpacket's streamIndex: ${r.f[15](e+32)}, ignore it`,T,788);const a=i.privData;let s=(0,b.Mr)(r.f[17](e+16),e+72,i.timeBase),n=(0,b.Mr)(r.f[17](e+8)!==v.Dh?r.f[17](e+8):r.f[17](e+16),e+72,i.timeBase);const o=r.f[17](e+48)!==v.Dh?(0,b.Mr)(r.f[17](e+48),e+72,i.timeBase):v.Dh;if((27===i.codecpar.codecId||173===i.codecpar.codecId||196===i.codecpar.codecId)&&64&r.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===r.f[15](e+32)));if(c){c.tfdtDelay===v.Dh&&(c.tfdtDelay=s<0?-s:BigInt(0),n<0&&(c.trunPtsDelay=c.tfdtDelay)),s+=c.tfdtDelay,n+=c.trunPtsDelay,(0===this.options.fragmentMode&&(0===i.codecpar.codecType&&1&r.f[15](e+36)||this.context.audioOnly&&(0,b.k)(s-c.baseMediaDecodeTime,i.timeBase,v.i0)>=this.options.minFragmentLength)||1===this.options.fragmentMode)&&(1===this.context.currentFragment.tracks.length?this.updateCurrentFragment(t,s):this.updateCurrentFragment(t));const d=this.writeTrackData(c.ioWriter,e,s,i);if(c.sampleSizes.length||(c.baseMediaDecodeTime=s),c.sampleSizes.length&&(!c.sampleDurations[c.sampleSizes.length-1]||c.sampleDurations[c.sampleSizes.length-1]<=0)&&(c.sampleDurations[c.sampleSizes.length-1]=Number(s-a.lastDts)),o>0&&c.sampleDurations.push(Number(o)),c.sampleSizes.push(d),0===i.codecpar.codecType){let t=0;1&r.f[15](e+36)?t|=33554432:t|=16842752,c.sampleCompositionTimeOffset.push(Number((n!==v.Dh?n:s)-s)),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,k.p$)((0,g.s3)(r.f[20](u),r.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=S.T9(a.lastPts,n+(o!==v.Dh?o:BigInt(0))),a.lastDts=s,o>0&&(a.lastDuration=Number(o)),this.context.currentFragment.firstWrote=!0}else B.R8(`can not found track width streamIndex ${r.f[15](e+32)}, ignore it`,T,926)}else{const c=t.ioWriter.getPos();let d=this.context.currentChunk;if(d?d.streamIndex!==r.f[15](e+32)?(this.updateCurrentChunk(t),d.streamIndex=r.f[15](e+32),d.sampleCount=1,d.pos=c):d.sampleCount++:d=this.context.currentChunk={pos:c,streamIndex:r.f[15](e+32),sampleCount:1},a.sampleSizes.push(this.writeTrackData(t.ioWriter,e,s,i)),0===i.codecpar.codecType&&1&r.f[15](e+36)&&a.stssSampleNumbers.push(a.sampleSizes.length),a.firstWrote){const t=Number(s-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=s,a.startCT=Number((n!==v.Dh?n:s)-s),a.firstWrote=!0;if(n>=0&&(a.startPts===v.Dh?a.startPts=n:a.startPts=S.jk(a.startPts,n)),0===i.codecpar.codecType){const t=Number((n!==v.Dh?n:s)-s);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=S.T9(a.lastPts,n+(o!==v.Dh?o:BigInt(0))),a.lastDts=s,a.lastDuration=Number(o)}return 0}writeTrailer(t){if(this.context.fragment)P.__(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?c.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);P.__(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,m.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&&B.z3("last box is not mdat",T,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,o.A)("mdat")),t.ioWriter.writeUint64(BigInt(i.size)+BigInt(8)),t.ioWriter.seek(e),this.context.boxsPositionInfo.pop(),this.context.use64Mdat=!0}if((0,f.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),c.dI(t.ioWriter,t,this.context),t.ioWriter.flush();let a=(0,x.A)(Uint8Array,e);P.__(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=[],c.dI(t.ioWriter,t,this.context),t.ioWriter.flush(),a=(0,x.A)(Uint8Array,e),i&&i(a,this.context.holdMoovPos),t.ioWriter.onFlush=i}else c.dI(t.ioWriter,t,this.context),t.ioWriter.flush()}return 0}flush(t){return this.options.fragment&&(P.__(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 C.Capabilities}static Capabilities=[86021,86076,86018,86017,86028,86051,86019,86056,167,225,27,173,196,12,94226,94213]}},92782:(t,e,i)=>{i.d(e,{A:()=>s});var a=i(34117);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])}},95414:(t,e,i)=>{i.d(e,{A:()=>n});var a=i(80209),r=i(25721),s=i(99817);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)}},98075:(t,e,i)=>{function a(t,e,i){t.writeUint32(12),t.writeString("sthd"),t.writeUint32(0)}i.d(e,{A:()=>a})},98552:(t,e,i)=>{i.d(e,{A:()=>s});var a=i(70704),r=i(80209);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))}}}};
|
|
1
|
+
export const __webpack_esm_id__=26;export const __webpack_esm_ids__=[26];export const __webpack_esm_modules__={26:(t,e,i)=>{i.r(e),i.d(e,{default:()=>$});var a=i(80209),r=i(54568),s=i(56238),n=i(49103),o=i(55982),c=i(6927),d=i(64017),u=i(35924),f=i(46564),l=i(46626),p=i(26669),h=i(98901),m=i(29688),g=i(67669),k=i(23226),w=i(41933),b=i(20296),v=i(61457),U=i(20642),I=i(12062),P=i(22694),y=i(19784),S=i(937),B=i(51091),A=i(84777),x=i(83446),T=i(34117),D=i(44905),C=i(74817),M=i(74872),E=i(56289),z=i(57595),F=i(37765),N=i(15716),Q=i(14307),_=i(88962),O=i(88560),R=i(37766),W=i(2633),V=i(84044),q=i(16627);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,h.Mr)(s.f[17](t.audio.backPacket+8),t.audio.backPacket+72,m.i0)<(0,h.Mr)(s.f[17](t.video.backPacket+8),t.video.backPacket+72,m.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,h.Mr)(s.f[17](t.audio.backPacket+8),t.audio.backPacket+72,m.i0)>(0,h.Mr)(s.f[17](t.video.backPacket+8),t.video.backPacket+72,m.i0))break}if(1&s.f[15](t.video.backPacket+36)||27===s.f[15](t.video.codecpar+4)&&U.KD(t.video.backPacket,s.f[20](t.video.codecpar+12)?1+(3&k.r8(s.f[20](t.video.codecpar+12)+4)):4)||173===s.f[15](t.video.codecpar+4)&&I.KD(t.video.backPacket,s.f[20](t.video.codecpar+12)?1+(3&k.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,l.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 u=e,p=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&&(u=x.T9(u,(0,h.Mr)(s.f[17](t.audio.backPacket+16),t.audio.backPacket+72,m.i0))),(null===(d=t.video)||void 0===d?void 0:d.backPacket)>0&&(p=x.T9(p,(0,h.Mr)(s.f[17](t.video.backPacket+16),t.video.backPacket+72,m.i0))),t.audio&&t.video&&x.tn(u-p)>1e3)if(p>u){const e=(0,h.k)(u,m.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),p=u}else if(u>p&&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,l.sY)(i.length);(0,a.lW)(r,i.length,i),(0,f.NX)(e,r,i.length),c.M[17](e+16,(0,h.k)(p,m.i0,(0,n.A)(e+72,o.Q))),c.M[17](e+8,(0,h.k)(p,m.i0,(0,n.A)(e+72,o.Q)));const d=BigInt(1024e3)/BigInt(0|t.audio.oformatContext.streams[0].codecpar.sampleRate),g=Number(BigInt.asIntN(32,(u-p)/d));let k=s.f[17](e+16)+(0,h.k)(d,m.i0,(0,n.A)(t.audio.backPacket+72,o.Q));for(let i=0;i<g-1;i++){const i=t.avpacketPool.alloc();(0,f.rN)(i,e),c.M[17](i+16,k),c.M[17](i+8,k),t.audio.pullQueue.queue.push(i),k+=(0,h.k)(d,m.i0,(0,n.A)(t.audio.backPacket+72,o.Q))}t.audio.pullQueue.queue.push(t.audio.backPacket),t.audio.backPacket=e,u=p}const g=[];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)),g.push(this.startMux(t.audio,t,x.T9(u,p)))),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)),g.push(this.startMux(t.video,t,x.T9(u,p)))),await Promise.all(g);let k=!1,w=!1;t.audio&&(t.audio.backPacket=await this.pullAVPacket(t.audio,t),t.audio.backPacket>0?(k=!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&&(k?(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,D.A)(),e>BigInt(0)?(t.currentTime=P.yw(e),t.controlIPCPort.notify("seek",{time:t.currentTime})):(S.A.safari||B.A.ios||b>.1||t.playRate>BigInt(100))&&(t.currentTime=b,t.currentTimeNTP=(0,D.A)(),t.controlIPCPort.notify("seek",{time:b}))}}getMimeType(t){let e="";return 1===s.f[15](t)?e=(0,w.A)(t):0===s.f[15](t)&&(e=(0,b.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,l.Eb)(s.extradata),s.extradata=(0,l.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 O.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 O.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(A.ai(i)||(0,y.A)(i))return i;{const e=t.avpacketPool.alloc();return(0,p.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,m.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.KD(n,s.f[20](e.video.codecpar+12)?1+(3&k.r8(s.f[20](e.video.codecpar+12)+4)):4)||173===s.f[15](e.video.codecpar+4)&&I.KD(n,s.f[20](e.video.codecpar+12)?1+(3&k.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=x.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===m.Dh?(i.frameCount=(0,h.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,h.Mr)(s.f[17](t+8),t+72,m.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,D.A)();return this.pullAVPacket(t,e).then((a=>{if(a<0)return t.packetEnded=!0,void(t.frontPacket=0);const r=(0,D.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,D.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,h.Mr)(s.f[17](a+16),a+72,m.i0);if(t.lastDTS!==m.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,D.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,D.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=m.Dh,n=m.Dh,o=BigInt(0),d=e.cacheDuration;const u=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,h.k)(r,u,m.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===m.Dh||(0,h.k)(o-r,u,m.i0)<d;){if(i=await this.pullAVPacket(t,e),i<0){t.packetEnded=!0;break}o=s.f[17](i+16),r===m.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!==m.Dh&&t.startPTS<=BigInt(0)&&(t.startPTS=n),t.pullQueue.diff=BigInt(0),e.currentTimeNTP=(0,D.A)(),e.currentTime=0,t.startTimestamp=BigInt(Math.floor((0,D.A)()))-(0,h.k)(o,u,m.i0)*BigInt(100)/e.playRate}resetResource(t,e){t.bufferQueue.flush(),t.oformatContext.oformat.destroy(t.oformatContext);const i=new O.A({fragmentMode:1,fragment:!0,fastOpen:!0,mp4Mode:0,defaultBaseIsMoof:!0,reverseSpsInAvcc:!0,hasTfra:!1});t.oformatContext.oformat=i;const a=new W.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=m.Dh,t.pullQueue.lastPTS=BigInt(0),t.pullQueue.lastDTS=BigInt(0),t.pullQueue.diff=BigInt(0),t.lastDTS=m.Dh}async addStream(t,e,i,a,n,o,d){const f=this.tasks.get(t);if(f){const k=(0,l.Gy)(168);(0,y.A)(i)?(0,g.Yi)(k,i):(0,p.T8)(i,k);const w=new C.A(1048576),b=(0,_.fG)(),v=new O.A({fragmentMode:1,fragment:!0,fastOpen:!0,mp4Mode:0,defaultBaseIsMoof:!0,reverseSpsInAvcc:!0,hasTfra:!1}),U=new M.A;w.onFlush=t=>(U.write(t.slice()),0),w.onSeek=t=>U.seek(t)?0:u.lh;const I=b.createStream();(0,g.Yi)(I.codecpar[r.o9],k),I.metadata=n,86017===s.f[15](k+4)&&(I.codecpar.codecTag=(0,R.A)(".mp3"));const P=1===s.f[15](k)&&s.f[15](k+144)&&!f.isLive&&(0,h.lb)(a)>(0,h.lb)({num:1,den:s.f[15](k+136)});P?(I.timeBase.den=s.f[15](k+136),I.timeBase.num=1):(I.timeBase.den=a.den,I.timeBase.num=a.num),b.oformat=v,b.ioWriter=w;const A=new W.A,D={type:"audio",codecpar:k,ioWriter:w,oformatContext:b,oformat:v,track:A,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:m.Dh,pullQueue:{queue:[],index:0,frameCount:m.Dh,diff:BigInt(0),lastPTS:BigInt(0),lastDTS:BigInt(0),ended:!1,useSampleRateTimeBase:P},enableRawMpeg:86017===s.f[15](k+4)&&!S.A.firefox,timestampOffsetUpdated:!1,ignoreEncryption:!1};A.onQuotaExceededError=()=>{D.startTimestamp-=BigInt(100)},A.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](k)?(f.audio=D,c.M[15](f.stats+4,s.f[15](k+136)),c.M[15](f.stats,s.f[15](k+116))):0===s.f[15](k)&&(D.type="video",f.video=D,c.M[15](f.stats+84,s.f[15](k+56)),c.M[15](f.stats+88,s.f[15](k+60)),s.f[15](f.stats+84)*s.f[15](f.stats+88)>8294400&&(S.A.safari||B.A.ios)&&(f.cacheDuration=x.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,l.Gy)(168);(0,y.A)(i)?(0,g.Yi)(d,i):(0,p.T8)(i,d);const u=1===s.f[15](d)?c.audio:c.video;if(u){u.bufferQueue.flush(),await new Promise((t=>{u.track.removeAllBuffer((()=>{t()}))})),u.track.reset();const t=new O.A({fragmentMode:1,fragment:!0,fastOpen:!0,mp4Mode:0,defaultBaseIsMoof:!0,reverseSpsInAvcc:!0,hasTfra:!1});u.oformatContext.oformat=t,u.codecpar&&(0,g.dn)(u.codecpar),u.codecpar=d,u.streamIndex=e,u.startPTS=o;const i=u.oformatContext.streams[0];(0,g.Yi)(i.codecpar[r.o9],d),i.metadata=n,86017===s.f[15](d+4)&&(i.codecpar.codecTag=(0,R.A)(".mp3"));const f=1===s.f[15](d)&&s.f[15](d+144)&&!c.isLive&&(0,h.lb)(a)>(0,h.lb)({num:1,den:s.f[15](d+136)});f?(i.timeBase.den=s.f[15](d+136),i.timeBase.num=1):(i.timeBase.den=a.den,i.timeBase.num=a.num),u.enableRawMpeg=86017===s.f[15](d+4)&&!S.A.firefox,u.timestampOffsetUpdated=!1,u.pullQueue.useSampleRateTimeBase=f;try{u.track.changeMimeType(this.getMimeType(i.codecpar[r.o9]),u.enableRawMpeg?"sequence":"segments")}catch(t){if(!S.A.firefox||t.message.indexOf("An attempt was made to use an object that is not")<0)throw t}u.enableRawMpeg||(Q.ho(u.oformatContext),Q.bx(u.oformatContext))}else(0,g.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,D.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,D.A)()-e.pauseTimestamp)),e.audio.loop.start()),e.video&&(e.video.startTimestamp+=BigInt(Math.floor((0,D.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(),(S.A.safari||B.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=m.Dh,e.audio.lastDTS=m.Dh),e.video&&(e.video.enableRawMpeg||Q.bX(e.video.oformatContext),e.video.bufferQueue.flush(),(S.A.safari||B.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=m.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,h.Mr)(s.f[17](i.audio.backPacket+8),i.audio.backPacket+72,m.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,h.Mr)(s.f[17](i.video.backPacket+8),i.video.backPacket+72,m.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=x.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,h.Mr)(s.f[17](i.audio.backPacket+8),i.audio.backPacket+72,m.i0)),!((0,h.Mr)(s.f[17](i.audio.backPacket+8),i.audio.backPacket+72,m.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,h.Mr)(s.f[17](i.video.backPacket+8),i.video.backPacket+72,m.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,D.A)()))-(a+i.cacheDuration+(0,h.k)(i.audio.startPTS,i.audio.oformatContext.streams[0].timeBase,m.i0))*BigInt(100)/i.playRate,i.pausing?i.pauseTimestamp=(0,D.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,D.A)()))-(r+i.cacheDuration+(0,h.k)(i.video.startPTS,i.video.oformatContext.streams[0].timeBase,m.i0))*BigInt(100)/i.playRate,i.pausing?i.pauseTimestamp=(0,D.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 u=0,f=0;i.audio?i.video?(u=Math.max(i.audio.track.getBufferedStart(),i.video.track.getBufferedStart()),f=Math.min(i.audio.track.getBufferedEnd(),i.video.track.getBufferedEnd())):(u=i.audio.track.getBufferedStart(),f=i.audio.track.getBufferedEnd()):i.video&&(u=i.video.track.getBufferedStart(),f=i.video.track.getBufferedEnd());let l=P.yw(o);return l>=u&&l<=f||(l=Math.abs(l-u)>Math.abs(l-f)?f:u),i.currentTimeNTP=(0,D.A)(),i.currentTime=l,i.seeking=!1,T.Yz(`after seek end, seekTime: ${l} taskId: ${t}`,L,1670),l}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,D.A)()):T.h2("task not found",L,1743)}async checkWaiting(t){let e=-1,i=-1;const a=t.currentTime+((0,D.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,D.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)?u.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,g.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,g.dn)(e.video.codecpar)),e.controlIPCPort&&e.controlIPCPort.destroy(),this.tasks.delete(t))}}},2633:(t,e,i)=>{i.d(e,{A:()=>c});var a,r=i(19371),s=i(23902),n=i(34117);!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)}}},2843:(t,e,i)=>{i.d(e,{A:()=>o});var a=i(19371),r=i(56238),s=i(46626),n=i(67669);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)}}},8433:(t,e,i)=>{i.d(e,{A:()=>o});var a=i(32057),r=i(11984),s=i(29688),n=i(98901);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)}},9235:(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})},9993:(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})},10516:(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})},11429:(t,e,i)=>{i.d(e,{A:()=>r});var a=i(22105);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))}},11984:(t,e,i)=>{i.d(e,{A:()=>r});var a=i(29688);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))}},14307:(t,e,i)=>{i.d(e,{XA:()=>g,bX:()=>w,bx:()=>m,dJ:()=>k,ho:()=>h});var a=i(56238),r=i(6927),s=i(87903),n=i(35924),o=i(29688),c=i(83796),d=i(23902),u=i(83446),f=i(34117);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=d.X$({},p,e);t.ioWriter||f.h2("need ioWriter",l,65),t.oformat||f.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 f.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&&!c.zy(a,i))return f.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),u.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)}},15933:(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})},20444:(t,e,i)=>{i.d(e,{A:()=>n});var a=i(80209),r=i(12062),s=i(99817);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)}},22582:(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})},25675:(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})},28917:(t,e,i)=>{i.d(e,{A:()=>c});var a=i(3031),r=i(37766),s=i(84777),n=i(23902),o=i(41662);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=n.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-2-g863cd5eb"}),i.covr&&u.push({key:l("covr"),value:i.covr.data,type:i.covr.type}),i.metadata&&n.__(i.metadata,((t,e)=>{if((s.Yj(t)||s.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(s.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 n;a=null!==(n=e.type)&&void 0!==n?n:0,r=e.value.length}else{if(!s.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)})}},31641:(t,e,i)=>{i.d(e,{A:()=>n});var a=i(80209),r=i(20642),s=i(99817);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)}},32057:(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})},32476:(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",[])},34814:(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})},35131:(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]}},35476:(t,e,i)=>{i.d(e,{A:()=>r});var a=i(80209);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))}},39695:(t,e,i)=>{i.d(e,{A:()=>r});var a=i(80209);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))}},40475:(t,e,i)=>{i.d(e,{A:()=>r});var a=i(83796);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=[]}},40924:(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})},41067:(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})},41287:(t,e,i)=>{i.d(e,{A:()=>n});var a=i(84777),r=i(41662),s=i(98901);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)})}},43621:(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})},43628:(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})},44523:(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})},44593:(t,e,i)=>{i.d(e,{A:()=>r});var a=i(22105);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())}},44753:(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})},52189:(t,e,i)=>{i.d(e,{A:()=>n});var a=i(11984),r=i(84777),s=i(29688);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)}},52706:(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})},54070:(t,e,i)=>{i.d(e,{Ro:()=>w,dI:()=>k,l7:()=>m,yT:()=>b});var a=i(54568),r=i(56238),s=i(37766),n=i(23716),o=i(76902),c=i(35131),d=i(40475),u=i(83796),f=i(41662),l=i(80209),p=i(85626),h=i(46564);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,h.Un)(t.codecpar[a.o9]+20,t.codecpar[a.o9]+24,24);e&&(0,p.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)}},57170:(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})},58030:(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})},60033:(t,e,i)=>{i.d(e,{A:()=>n});var a=i(52617),r=i(80209);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)})}},62029:(t,e,i)=>{i.d(e,{A:()=>s});var a=i(34117);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])}},64276:(t,e,i)=>{i.d(e,{A:()=>r});var a=i(57170);function r(t,e,i){(0,a.A)(t,null,i)}},65584:(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})},69829:(t,e,i)=>{i.d(e,{A:()=>o});var a=i(34117),r=i(80209),s=i(73448);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)}},71422:(t,e,i)=>{i.d(e,{A:()=>s});var a=i(34117);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])}},74817:(t,e,i)=>{i.d(e,{A:()=>s});var a=i(19371),r=i(41662);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}}},74872:(t,e,i)=>{i.d(e,{A:()=>s});var a=i(19371),r=i(18528);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}}},75873:(t,e,i)=>{i.d(e,{A:()=>s});var a=i(60033),r=i(80209);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)})}},76091:(t,e,i)=>{i.d(e,{A:()=>s});var a=i(32057),r=i(29688);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)}},76902:(t,e,i)=>{i.d(e,{A:()=>M});var a=i(92782),r=i(71422),s=i(15933),n=i(58030),o=i(62029),c=i(9993),d=i(87608),u=i(52189),f=i(76091),l=i(8433),p=i(57170),h=i(76928),m=i(43621),g=i(81364),k=i(43628),w=i(77789),b=i(98075),v=i(80505),U=i(41067),I=i(44523),P=i(22582),y=i(76938),S=i(44753),B=i(64276),A=i(25675),x=i(65584),T=i(9235),D=i(28917),C=i(41287);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:D.A,chpl:C.A}},76928:(t,e,i)=>{i.d(e,{A:()=>A});var a=i(80209),r=i(31641),s=i(20444),n=i(95414),o=i(35476),c=i(39695),d=i(69829),u=i(98552),f=i(60033),l=i(10516),p=i(40924),h=i(77632),m=i(75873),g=i(44593),k=i(11429),w=i(28320),b=i(37766);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)})}},76938:(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})},77632:(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})},77789:(t,e,i)=>{function a(t,e,i){t.writeUint32(12),t.writeString("nmhd"),t.writeUint32(0)}i.d(e,{A:()=>a})},80505:(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})},81364:(t,e,i)=>{i.d(e,{A:()=>n});var a=i(11984),r=i(29688),s=i(98901);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)}},84724:(t,e,i)=>{i.d(e,{A:()=>m});var a=i(19371),r=i(56238),s=i(6927),n=i(2843),o=i(80209),c=i(34117),d=i(35924),u=i(46564),f=i(46626),l=i(20642),p=i(12062),h=i(25721);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,u._5)(),this.cached=!1,0}destroy(){super.destroy(),(0,u.Qe)(this.cache),this.cache=0}sendAVPacket(t){if(64&r.f[15](t+36)){let e;(0,u.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,u.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,f.sY)(e.extradata.length);(0,o.lW)(t,e.extradata.length,e.extradata),(0,u.Ow)(this.cache,1,t,e.extradata.length)}}else(0,u.rN)(this.cache,t);return this.cached=!0,0}receiveAVPacket(t){return this.cached?((0,u.Up)(t),(0,u.rN)(t,this.cache),this.cached=!1,0):d.LR}reset(){return 0}}},87608:(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})},88560:(t,e,i)=>{i.d(e,{A:()=>M});var a=i(19371),r=i(54568),s=i(56238),n=i(32476),o=i(62743),c=i(37766),d=i(54070),u=i(78215),f=i(23905),l=i(40475),p=i(34814),h=i(52706),m=i(84724),g=i(11984),k=i(80209),w=i(85626),b=i(46564),v=i(98901),U=i(29688),I=i(56901),P=i(84777),y=i(83796),S=i(23902),B=i(83446),A=i(34117),x=i(18528),T=i(74817);const D="packages/avformat/src/formats/OIsobmffFormat.ts",C={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=S.X$({},C,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,b._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,b.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,b.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,v.k)(BigInt(Math.floor(a.codecpar.frameSize/a.codecpar.sampleRate*U.SF)),U.KR,a.timeBase))):(a.codecpar.codecId,i.sampleDurations.push(Number((0,v.k)(BigInt(Math.floor(1024/a.codecpar.sampleRate*U.SF)),U.KR,a.timeBase)))):0===a.codecpar.codecType?e?i.sampleDurations.push(Number(e-r.lastDts)):(0,v.lb)(a.codecpar.framerate)>0?i.sampleDurations.push(Number((0,v.k)(BigInt(Math.floor(1/(0,v.lb)(a.codecpar.framerate)*U.SF)),U.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,v.k)(i.baseDataOffset-i.lastFragIndexDts,a.timeBase,U.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,x.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(P.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,v.k)(i-n,a.timeBase,U.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,b.rU)(e,16),o=(0,b.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,b.iI)(e)),8+c}return t.writeBuffer((0,b.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`,D,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`,D,788);const a=i.privData;let r=(0,v.Mr)(s.f[17](e+16),e+72,i.timeBase),n=(0,v.Mr)(s.f[17](e+8)!==U.Dh?s.f[17](e+8):s.f[17](e+16),e+72,i.timeBase);const o=s.f[17](e+48)!==U.Dh?(0,v.Mr)(s.f[17](e+48),e+72,i.timeBase):U.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===U.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,v.k)(r-c.baseMediaDecodeTime,i.timeBase,U.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!==U.Dh?n:r)-r)),c.sampleFlags.push(t)}const u=(0,b.Un)(e+40,e+44,25),f=this.context.cencs&&this.context.cencs[a.trackId];if(u&&f){const t=(0,w.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=B.T9(a.lastPts,n+(o!==U.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`,D,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!==U.Dh?n:r)-r),a.firstWrote=!0;if(n>=0&&(a.startPts===U.Dh?a.startPts=n:a.startPts=B.jk(a.startPts,n)),0===i.codecpar.codecType){const t=Number((n!==U.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=B.T9(a.lastPts,n+(o!==U.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,v.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",D,1053),i.size=Number(t.ioWriter.getPos()-i.pos),i.size>U.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,x.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,x.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])},92782:(t,e,i)=>{i.d(e,{A:()=>s});var a=i(34117);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])}},95414:(t,e,i)=>{i.d(e,{A:()=>n});var a=i(80209),r=i(25721),s=i(99817);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)}},98075:(t,e,i)=>{function a(t,e,i){t.writeUint32(12),t.writeString("sthd"),t.writeUint32(0)}i.d(e,{A:()=>a})},98552:(t,e,i)=>{i.d(e,{A:()=>s});var a=i(70704),r=i(80209);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))}}}};
|