@libmedia/avplayer 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (72) hide show
  1. package/COPYING.LGPLv3 +165 -0
  2. package/README.md +13 -0
  3. package/dist/esm/118.avplayer.js +1 -0
  4. package/dist/esm/217.avplayer.js +1 -0
  5. package/dist/esm/299.avplayer.js +1 -0
  6. package/dist/esm/331.avplayer.js +1 -0
  7. package/dist/esm/344.avplayer.js +1 -0
  8. package/dist/esm/433.avplayer.js +1 -0
  9. package/dist/esm/453.avplayer.js +1 -0
  10. package/dist/esm/487.avplayer.js +1 -0
  11. package/dist/esm/522.avplayer.js +1 -0
  12. package/dist/esm/531.avplayer.js +1 -0
  13. package/dist/esm/543.avplayer.js +1 -0
  14. package/dist/esm/576.avplayer.js +1 -0
  15. package/dist/esm/611.avplayer.js +1 -0
  16. package/dist/esm/634.avplayer.js +1 -0
  17. package/dist/esm/70.avplayer.js +1 -0
  18. package/dist/esm/791.avplayer.js +1 -0
  19. package/dist/esm/808.avplayer.js +1 -0
  20. package/dist/esm/839.avplayer.js +1 -0
  21. package/dist/esm/854.avplayer.js +1 -0
  22. package/dist/esm/855.avplayer.js +1 -0
  23. package/dist/esm/94.avplayer.js +1 -0
  24. package/dist/esm/941.avplayer.js +1 -0
  25. package/dist/esm/969.avplayer.js +1 -0
  26. package/dist/esm/avplayer.js +1 -0
  27. package/dist/types/AVPlayer.d.ts +683 -0
  28. package/dist/types/Controller.d.ts +36 -0
  29. package/dist/types/JitterBufferController.d.ts +38 -0
  30. package/dist/types/StatsController.d.ts +22 -0
  31. package/dist/types/eventType.d.ts +21 -0
  32. package/dist/types/function/createMessageChannel.d.ts +1 -0
  33. package/dist/types/function/getMediaSource.d.ts +10 -0
  34. package/dist/types/function/supportOffscreenCanvas.d.ts +1 -0
  35. package/dist/types/mse/MSEPipeline.d.ts +98 -0
  36. package/dist/types/struct.d.ts +12 -0
  37. package/dist/types/subtitle/AssRender.d.ts +52 -0
  38. package/dist/types/subtitle/SubtitleRender.d.ts +48 -0
  39. package/dist/types/type.d.ts +6 -0
  40. package/dist/types/worker/AudioPipeline.d.ts +13 -0
  41. package/dist/types/worker/AudioPipelineProxy.d.ts +13 -0
  42. package/dist/types/worker/IODemuxPipeline.d.ts +13 -0
  43. package/dist/types/worker/IODemuxPipelineProxy.d.ts +13 -0
  44. package/dist/types/worker/MSEPipeline.d.ts +12 -0
  45. package/dist/types/worker/MSEPipelineProxy.d.ts +12 -0
  46. package/dist/types/worker/VideoPipeline.d.ts +13 -0
  47. package/dist/types/worker/VideoPipelineProxy.d.ts +13 -0
  48. package/dist/umd/118.avplayer.js +1 -0
  49. package/dist/umd/217.avplayer.js +1 -0
  50. package/dist/umd/299.avplayer.js +1 -0
  51. package/dist/umd/331.avplayer.js +1 -0
  52. package/dist/umd/344.avplayer.js +1 -0
  53. package/dist/umd/433.avplayer.js +1 -0
  54. package/dist/umd/453.avplayer.js +1 -0
  55. package/dist/umd/487.avplayer.js +1 -0
  56. package/dist/umd/522.avplayer.js +1 -0
  57. package/dist/umd/531.avplayer.js +1 -0
  58. package/dist/umd/543.avplayer.js +1 -0
  59. package/dist/umd/576.avplayer.js +1 -0
  60. package/dist/umd/611.avplayer.js +1 -0
  61. package/dist/umd/634.avplayer.js +1 -0
  62. package/dist/umd/70.avplayer.js +1 -0
  63. package/dist/umd/791.avplayer.js +1 -0
  64. package/dist/umd/808.avplayer.js +1 -0
  65. package/dist/umd/839.avplayer.js +1 -0
  66. package/dist/umd/854.avplayer.js +1 -0
  67. package/dist/umd/855.avplayer.js +1 -0
  68. package/dist/umd/94.avplayer.js +1 -0
  69. package/dist/umd/941.avplayer.js +1 -0
  70. package/dist/umd/969.avplayer.js +1 -0
  71. package/dist/umd/avplayer.js +1 -0
  72. package/package.json +42 -0
@@ -0,0 +1 @@
1
+ (self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[543],{58121:(t,i,e)=>{e.d(i,{A:()=>r});var s=e(134);class r{constructor(){(0,s.A)(this,"signature",void 0),(0,s.A)(this,"version",void 0),(0,s.A)(this,"flags",void 0),(0,s.A)(this,"dataOffset",void 0),(0,s.A)(this,"hasVideo",void 0),(0,s.A)(this,"hasAudio",void 0),this.signature="FLV",this.version=1,this.flags=0,this.dataOffset=9,this.hasAudio=!1,this.hasVideo=!1}async read(t){this.signature=await t.readString(3),this.version=await t.readUint8(),this.flags=await t.readUint8(),this.dataOffset=await t.readUint32(),this.hasAudio=!!(4&this.flags),this.hasVideo=!!(1&this.flags)}write(t){this.flags=0,this.hasAudio&&(this.flags|=4),this.hasVideo&&(this.flags|=1),t.writeString(this.signature),t.writeUint8(this.version),t.writeUint8(this.flags),t.writeUint32(this.dataOffset)}}},68243:(t,i,e)=>{e.d(i,{A:()=>l});var s=e(134),r=e(35336),n=e(92647),a=e(4624),h=e(94889),o=e(9705),f=e(73040);class l{constructor(){(0,s.A)(this,"onMetaData",void 0),this.onMetaData={canSeekToEnd:!1}}async read(t,i){const e=t.getPos(),s=e+BigInt(Math.floor(i)),r=await(0,f.$x)(t,s),n=await(0,f.$x)(t,s);this[r]=n,s>t.getPos()&&await t.skip(Number(BigInt.asIntN(32,s-t.getPos())));const h=Number(t.getPos()-e),l=await t.readUint32();return h+11!==l?(a.R8(`script size not match, size: ${h+11}, previousTagSize: ${l}`,"src/avformat/formats/flv/FlvScriptTag.ts",64),o.LR):0}computeSize(){const t=[],i=new r.A;return i.onFlush=i=>(t.push(i.slice()),0),(0,f.bD)(i,"onMetaData"),(0,f.bD)(i,this.onMetaData),i.flush(),(0,n.A)(Uint8Array,t).length}write(t){if(this.onMetaData){const i=[],e=new r.A;e.onFlush=t=>(i.push(t.slice()),0),(0,f.bD)(e,"onMetaData"),(0,f.bD)(e,this.onMetaData),e.flush();const s=(0,n.A)(Uint8Array,i),a=t.getPos();h.xk(t,18,s.length,BigInt(0)),t.writeBuffer(s),t.writeUint32(Number(t.getPos()-a))}}dts2Position(t){if(this.canSeek()){let i=-1;const e=this.onMetaData.keyframes.times,s=this.onMetaData.keyframes.filepositions;let r;for(r=0;r<e.length;r++){if(e[r]===t){i=r;break}if(e[r]>t){i=Math.max(r-1,0);break}}return r&&r===e.length&&(i=e.length-1),{pos:s[i],dts:e[i]}}return{pos:-1,dts:-1}}position2DTS(t){if(this.canSeek()){let e=-1;const s=this.onMetaData.keyframes.times,r=this.onMetaData.keyframes.filepositions;let n=0;for(n=0;n<r.length;n++)if(r[n]>t){e=n;break}var i;return n===r.length?null!==(i=this.onMetaData.duration)&&void 0!==i?i:s[s.length-1]:s[e]}return-1}canSeek(){return!!(this.onMetaData.keyframes&&this.onMetaData.keyframes.filepositions&&this.onMetaData.keyframes.filepositions.length)}}},35028:(t,i,e)=>{e.d(i,{FJ:()=>s,U5:()=>r});const s={10:86018,2:86017,11:86051,1:69645,4:86049,5:86049,6:86049,7:65543,8:65542},r={7:27,12:173,13:196,9:12,2:4,3:86,4:92,5:106,6:131}},94889:(t,i,e)=>{function s(t,i,e,s){t.writeUint8(i),t.writeUint24(e),t.writeUint24(Number(s&BigInt(16777215))),t.writeUint8(Number(s>>BigInt(24)&BigInt(255))),t.writeUint24(0)}e.d(i,{xk:()=>s}),e(35028)},67543:(t,i,e)=>{e.r(i),e.d(i,{default:()=>b});var s=e(134),r=e(36773),n=e(14619),a=e(42383),h=e(82058),o=e(24175),f=e(34531),l=e(8507),u=e(35336),d=e(58121),p=e(68243),c=e(31865),w=e(73040),g=e(34677);class b extends r.A{constructor(...t){super(...t),(0,s.A)(this,"info",void 0),(0,s.A)(this,"socket",void 0),(0,s.A)(this,"session",void 0),(0,s.A)(this,"ioReader",void 0),(0,s.A)(this,"ioWriter",void 0),(0,s.A)(this,"flvWriter",void 0),(0,s.A)(this,"flvHeader",void 0),(0,s.A)(this,"packetQueue",void 0),(0,s.A)(this,"flvHeaderWrote",void 0),(0,s.A)(this,"hasMetadata",void 0),(0,s.A)(this,"bufferReader",void 0)}writeFlvData(t){this.flvWriter.writeUint8(t.type),this.flvWriter.writeUint24(t.payload.length),this.flvWriter.writeUint24(t.timestamp),this.flvWriter.writeUint8(t.timestamp>>24),this.flvWriter.writeUint24(0),this.flvWriter.writeBuffer(t.payload),this.flvWriter.writeUint32(t.payload.length+11),this.flvWriter.flush()}async handleRtmpPacket(t){if(this.flvHeaderWrote)this.writeFlvData(t);else{if(this.packetQueue.push(t),8===t.type)this.flvHeader.hasAudio=!0;else if(9===t.type)this.flvHeader.hasVideo=!0;else if(18===t.type&&(this.bufferReader?this.bufferReader.resetBuffer(t.payload):this.bufferReader=new c.A(t.payload),"onMetaData"===await w.$x(this.bufferReader,BigInt(t.payload.length)))){this.hasMetadata=!0;const i=await w.$x(this.bufferReader,BigInt(t.payload.length));this.flvHeader.hasAudio=(0,g.A)(i.audiocodecid),this.flvHeader.hasVideo=(0,g.A)(i.videocodecid)}if(this.packetQueue.length>10||this.hasMetadata){if(this.flvHeader.write(this.flvWriter),this.flvWriter.writeUint32(0),!this.hasMetadata&&this.session.getDuration()){const t=new p.A;t.onMetaData={duration:this.session.getDuration()},t.write(this.flvWriter)}this.packetQueue.forEach((t=>{this.writeFlvData(t)})),this.packetQueue.length=0,this.flvHeaderWrote=!0}}}async send(t){return this.socket?(await this.socket.send(t),0):-1048574}async open(t){this.info=t,this.status=1,3===t.subProtocol?(this.socket=new a.A(this.options),await this.socket.open({url:t.url,webtransportOptions:t.webtransportOptions})):(this.socket=new n.A(this.options),await this.socket.open({url:t.url})),this.ioReader=new o.A,this.ioReader.onFlush=async t=>this.socket.read(t),this.ioReader.onSeek=async t=>this.socket.seek(t),this.ioReader.onSize=async()=>this.socket.size(),this.ioWriter=new f.A,this.ioWriter.onFlush=async t=>this.socket.write(t),this.ioWriter.onSeek=async t=>this.socket.seek(t),this.flvWriter=new u.A,this.flvWriter.onFlush=t=>(this.readQueue.push(t.slice()),this.consume&&this.consume(),0),this.flvHeader=new d.A,this.packetQueue=[],this.flvHeaderWrote=!1,this.hasMetadata=!1,this.session=new h.A(this.ioReader,this.ioWriter,{isLive:this.options.isLive,isPull:!0}),this.session.onMediaPacket=async(t,i)=>this.handleRtmpPacket(t),this.session.onError=()=>{this.status=3,this.consume&&this.consume()},await this.session.handshake();const i=l.qg(this.info.uri),e=i.pathname.split("/");await this.session.connect(e[1],`rtmp://${i.host}${i.port?":"+i.port:""}/${e[1]}`);const s=e.slice(2);return this.session.play((s.length>1?s.join("/"):s[0])||""),0}async seek(t){return await this.session.seek(Number(t)),0}async size(){return BigInt(0)}async stop(){this.socket&&(await this.socket.stop(),this.socket=null),this.status=4}}},46084:(t,i,e)=>{e.d(i,{u:()=>r});var s=e(134);class r{constructor(t,i,e,r){(0,s.A)(this,"channelId",void 0),(0,s.A)(this,"type",void 0),(0,s.A)(this,"timestamp",void 0),(0,s.A)(this,"tsField",0),(0,s.A)(this,"extra",0),(0,s.A)(this,"payload",void 0),this.channelId=t,this.type=i,this.timestamp=e,this.payload=r instanceof Uint8Array?r:new Uint8Array(r)}}},82058:(t,i,e)=>{e.d(i,{A:()=>v});var s=e(134),r=e(80662),n=e.n(r),a=e(54001),h=e.n(a),o=e(46084),f=e(90519),l=e(86932),u=e(729),d=e(68680),p=e(73040),c=e(98951),w=e(31865),g=e(4624),b=e(72739),y=e(67672),m=e(13724),k=e(83229);const U="src/avprotocol/rtmp/RtmpSession.ts";class v{constructor(t,i,e){(0,s.A)(this,"ioReader",void 0),(0,s.A)(this,"ioWriter",void 0),(0,s.A)(this,"prevReadPacket",void 0),(0,s.A)(this,"prevWritePacket",void 0),(0,s.A)(this,"inChunkSize",void 0),(0,s.A)(this,"outChunkSize",void 0),(0,s.A)(this,"seq",void 0),(0,s.A)(this,"bufferWriter",void 0),(0,s.A)(this,"bufferReader",void 0),(0,s.A)(this,"requestMap",void 0),(0,s.A)(this,"state",void 0),(0,s.A)(this,"maxSentUnacked",void 0),(0,s.A)(this,"receiveReportSize",void 0),(0,s.A)(this,"duration",void 0),(0,s.A)(this,"options",void 0),(0,s.A)(this,"streamIdMap",void 0),(0,s.A)(this,"sendAsync",void 0),(0,s.A)(this,"onMediaPacket",void 0),(0,s.A)(this,"onError",void 0),this.ioReader=t,this.ioWriter=i,this.options=e,this.prevReadPacket=new(n()),this.prevWritePacket=new(n()),this.requestMap=new(n()),this.streamIdMap=new(n()),this.inChunkSize=128,this.outChunkSize=128,this.seq=0,this.maxSentUnacked=25e5,this.receiveReportSize=1048576,this.sendAsync=new k.an,this.bufferWriter=new u.A(new Uint8Array(1)),this.bufferReader=new w.A(new Uint8Array(1)),this.state=0}async handshake(){const t=(0,l.A)();await this.ioWriter.writeUint8(3),await this.ioWriter.writeUint32(0),await this.ioWriter.writeUint32(0);const i=new Uint8Array(1528);f.y(i),await this.ioWriter.writeBuffer(i),await this.ioWriter.flush(),await this.ioReader.readUint8();const e=await this.ioReader.readUint32();await this.ioReader.skip(4);const s=await this.ioReader.readBuffer(1528);await this.ioWriter.writeUint32(e),await this.ioWriter.writeUint32((0,l.A)()-t),await this.ioWriter.writeBuffer(s),await this.ioWriter.flush(),await this.ioReader.skip(1536),this.readRtmpPacket()}async sendPacket(t){await(0,k.s2)(this.sendAsync),await(0,c.U)(this.ioWriter,this.outChunkSize,t,this.prevWritePacket.get(t.channelId)),this.prevWritePacket.set(t.channelId,t),(0,k.Tl)(this.sendAsync)}async readPacket(){const t=await(0,c.w)(this.ioReader,this.inChunkSize,this.prevReadPacket);return this.prevReadPacket.set(t.channelId,t),t}handleChunkSize(t){t.payload.length>=4&&(this.bufferReader.resetBuffer(t.payload),this.inChunkSize=this.bufferReader.readUint32())}handleUserControl(t){t.payload.length>=2&&(this.bufferReader.resetBuffer(t.payload),6===this.bufferReader.readUint16()&&this.sendPong(t,this.bufferReader.readUint32()))}handleSetPeerBW(t){t.payload.length>=4&&(this.bufferReader.resetBuffer(t.payload),this.maxSentUnacked=this.bufferReader.readUint32(),g.Yz(`Max sent, unacked = ${this.maxSentUnacked}`,U,205))}handleWindowSizeACK(t){t.payload.length>=4&&(this.bufferReader.resetBuffer(t.payload),this.receiveReportSize=this.bufferReader.readUint32(),g.Yz(`Window acknowledgement size = ${this.receiveReportSize}`,U,212),this.receiveReportSize>>=1)}async handleInvoke(t){this.bufferReader.resetBuffer(t.payload);const i=BigInt(t.payload.length),e=await p.$x(this.bufferReader,i),s=await p.$x(this.bufferReader,i);if("_result"===e||"_error"===e){if(this.requestMap.has(s)){const t=await p.$x(this.bufferReader,i),r=await p.$x(this.bufferReader,i);"_result"===e?this.requestMap.get(s).resolve({options:t,info:r}):this.requestMap.get(s).reject({options:t,info:r}),this.requestMap.delete(s)}}else if("onStatus"===e){const t=await p.$x(this.bufferReader,i);let e=await p.$x(this.bufferReader,i);if("error"===e.level)g.z3(`Server error: ${e.description}, ${e.code}`,U,248),this.requestMap.has(s)?(this.requestMap.get(s).reject({options:t,info:e}),this.requestMap.delete(s)):this.onError&&this.onError();else{switch(e.code){case"NetStream.Play.Start":case"NetStream.Seek.Notify":this.state=3;break;case"NetStream.Play.Stop":case"NetStream.Play.UnpublishNotify":this.state=8;break;case"NetStream.Publish.Start":this.state=5}this.requestMap.has(s)&&(this.requestMap.get(s).resolve({options:t,info:e}),this.requestMap.delete(s))}}else"onBWDone"===e&&await this.sendCheckBW()}async handleNotify(t){this.bufferReader.resetBuffer(t.payload),"@setDataFrame"===await p.$x(this.bufferReader,BigInt(t.payload.length))&&(t.payload=t.payload.subarray(Number(this.bufferReader.getPos()))),t.payload.length&&this.onMediaPacket&&await this.onMediaPacket(t,this.streamIdMap.get(t.extra))}async readRtmpPacket(){for(;;)try{const t=await this.readPacket();switch(t.type){case 3:default:break;case 1:this.handleChunkSize(t);break;case 4:this.handleUserControl(t);break;case 6:this.handleSetPeerBW(t);break;case 5:this.handleWindowSizeACK(t);break;case 20:await this.handleInvoke(t);break;case 18:await this.handleNotify(t);break;case 22:case 8:case 9:this.onMediaPacket&&await this.onMediaPacket(t,this.streamIdMap.get(t.extra))}}catch(t){break}}async sendPong(t,i){if(t.payload.length<6)return void g.R8(`Too short ping packet (${t.payload.length})`,U,348);const e=new o.u(2,4,t.timestamp+1,6);this.bufferWriter.resetBuffer(e.payload),this.bufferWriter.writeUint16(7),this.bufferWriter.writeUint32(i),this.sendPacket(e)}async sendWindowAckSize(){const t=new o.u(2,5,0,4);this.bufferWriter.resetBuffer(t.payload),this.bufferWriter.writeUint32(this.maxSentUnacked),await this.sendPacket(t)}async sendBufferTime(t){const i=new o.u(2,4,1,10);this.bufferWriter.resetBuffer(i.payload),this.bufferWriter.writeUint16(3),this.bufferWriter.writeUint32(t),this.bufferWriter.writeUint32(this.options.clientBufferTime||3e3),await this.sendPacket(i)}async sendFCSubscribe(t){const i=new o.u(3,20,0,27+t.length);this.bufferWriter.resetBuffer(i.payload),p.bD(this.bufferWriter,"FCSubscribe"),p.bD(this.bufferWriter,++this.seq),p.bD(this.bufferWriter,null),p.bD(this.bufferWriter,t),await this.sendPacket(i)}async sendFCPublish(t){const i=new o.u(3,20,0,25+t.length);this.bufferWriter.resetBuffer(i.payload),p.bD(this.bufferWriter,"FCPublish"),p.bD(this.bufferWriter,++this.seq),p.bD(this.bufferWriter,null),p.bD(this.bufferWriter,t),await this.sendPacket(i)}async sendReleaseStream(t){const i=new o.u(3,20,0,29+t.length);this.bufferWriter.resetBuffer(i.payload),p.bD(this.bufferWriter,"releaseStream"),p.bD(this.bufferWriter,++this.seq),p.bD(this.bufferWriter,null),p.bD(this.bufferWriter,t),await this.sendPacket(i)}async sendCheckBW(){const t=new o.u(3,20,0,21);this.bufferWriter.resetBuffer(t.payload),p.bD(this.bufferWriter,"_checkbw"),p.bD(this.bufferWriter,++this.seq),p.bD(this.bufferWriter,null),await this.sendPacket(t)}async request(t,i){const e=new o.u(3,20,0,4096+d.iD);return this.bufferWriter.resetBuffer(e.payload),p.bD(this.bufferWriter,t),p.bD(this.bufferWriter,++this.seq),b.__(i,(t=>{p.bD(this.bufferWriter,t)})),e.payload=e.payload.subarray(0,this.bufferWriter.getPos()),new(h())(((t,i)=>{this.requestMap.set(this.seq,{resolve:t,reject:i}),this.sendPacket(e)}))}async connect(t,i){await this.request("connect",[{app:t,fourCcList:["hvc1","av01","vp09"],flashVer:"LNX 9,0,124,2",tcUrl:i,fpad:0,capabilities:15,audioCodecs:4071,videoCodecs:252,videoFunction:1}]),this.options.isPull&&await this.sendWindowAckSize()}async createStream(){return(await this.request("createStream",[null])).info}async play(t){const i=await this.createStream();if(this.streamIdMap.set(i,t),!this.options.isLive){const i=await h().race([this.request("getStreamLength",[null,t]),new m.A(1)]);y.ai(i)||(this.duration=i.info)}await this.sendFCSubscribe(t),this.request("play",[null,t,-1,-1,!0]),await this.sendBufferTime(i)}async publish(t){await this.sendReleaseStream(t),await this.sendFCPublish(t);const i=await this.createStream();this.streamIdMap.set(i,t),await this.request("publish",[null,t,"live"])}async sendStreamPacket(t,i){let e=0;this.streamIdMap.forEach(((t,s)=>{t===i&&(e=s)})),t.extra=e,await this.sendPacket(t)}async seek(t){const i=new o.u(3,20,0,26);this.bufferWriter.resetBuffer(i.payload),p.bD(this.bufferWriter,"seek"),p.bD(this.bufferWriter,0),p.bD(this.bufferWriter,null),p.bD(this.bufferWriter,t),await this.sendPacket(i)}async pause(t,i){const e=new o.u(3,20,0,29);this.bufferWriter.resetBuffer(e.payload),p.bD(this.bufferWriter,"pause"),p.bD(this.bufferWriter,0),p.bD(this.bufferWriter,null),p.bD(this.bufferWriter,t),p.bD(this.bufferWriter,i),await this.sendPacket(e)}getDuration(){return this.duration}}},68680:(t,i,e)=>{e.d(i,{iD:()=>s});const s=1024},98951:(t,i,e)=>{e.d(i,{U:()=>o,w:()=>f});var s=e(46084),r=e(92647),n=e(4624);const a="src/avprotocol/rtmp/util.ts";async function h(t,i,e){if(i<64)await t.writeUint8(i|e<<6);else if(i<320)await t.writeUint8(e<<6),await t.writeUint8(i-64);else{await t.writeUint8(1|e<<6);const s=i-64;await t.writeUint8(255&s),await t.writeUint8(s>>>8)}}async function o(t,i,e,s){const r=s&&s.extra===e.extra&&e.timestamp>=s.timestamp;let n=e.timestamp;r&&(n-=s.timestamp),e.tsField=n>16777215?16777215:n;let a=0;r&&(e.type===s.type&&e.payload.length===s.payload.length?(a=2,e.tsField===s.tsField&&(a=3)):a=1),await h(t,e.channelId,a),3!==a&&(await t.writeUint24(e.tsField),2!==a&&(await t.writeUint24(e.payload.length),await t.writeUint8(e.type),0===a&&(await t.writeUint8(e.extra),await t.writeUint8(e.extra>>8),await t.writeUint8(e.extra>>16),await t.writeUint8(e.extra>>24)))),16777215===e.tsField&&await t.writeUint32(n);let o=0;for(;o<e.payload.length;){const s=Math.min(i,e.payload.length-o);await t.writeBuffer(e.payload.subarray(o,o+s)),o+=s,o<e.payload.length&&(await h(t,e.channelId,3),16777215===e.tsField&&await t.writeUint32(n))}await t.flush()}async function f(t,i,e){const h=[],o=await t.readUint8();let f=63&o;f<2&&(f=0===await t.readUint8()?await t.readUint8()+64:64+(await t.readUint8()|await t.readUint8()<<8));const l=o>>>6,u=e.get(f);let d=u?u.payload.length:0,p=u?u.type:0,c=u?u.extra:0,w=0,g=0;if(3===l?w=u.tsField:(w=await t.readUint24(),2!==l&&(d=await t.readUint24(),p=await t.readUint8(),0===l&&(c=await t.readUint8(),c|=await t.readUint8()<<8,c|=await t.readUint8()<<16,c|=await t.readUint8()<<24))),g=16777215===w?await t.readUint32():w,0!==l&&(u?g+=u.timestamp:n.R8(`got invalid message fmt, channel id ${f} can not find prev message with fmt ${l}`,a,171)),d<i)h.push(await t.readBuffer(d));else{let e=d;for(;e;){const s=Math.min(i,e);if(h.push(await t.readBuffer(s)),e-=s,e){const i=63&await t.readUint8();i<2&&await t.skip(i+1),16777215===w&&await t.skip(4)}}}const b=new s.u(f,p,g,(0,r.A)(Uint8Array,h));return b.tsField=w,b.extra=c,b}},73040:(t,i,e)=>{e.d(i,{$x:()=>h,bD:()=>o});var s=e(67672),r=e(72739),n=e(95335);async function a(t,i){return{key:await t.readString(await t.readUint16()),value:await h(t,i)}}async function h(t,i){let e;switch(await t.readUint8()){case 0:e=await t.readDouble();break;case 1:e=!!await t.readUint8();break;case 2:e=await t.readString(await t.readUint16());break;case 3:for(e={};t.getPos()<i;){const{key:s,value:r}=await a(t,i);if(e[s]=r,9==(16777215&await t.peekUint24())){await t.skip(3);break}}break;case 8:for(e={},await t.skip(4);t.getPos()<i;){const{key:s,value:r}=await a(t,i);if(e[s]=r,9==(16777215&await t.peekUint24())){await t.skip(3);break}}break;case 9:case 5:e=null;break;case 10:e=[];const s=await t.readUint32();for(let r=0;r<s;r++)e.push(await h(t,i));break;case 11:const r=await t.readDouble(),n=await t.readInt16();e=new Date(r+60*n*1e3);break;case 12:e=await t.readString(await t.readUint32())}return e}function o(t,i){s.ai(i)?(t.writeUint8(0),t.writeDouble(i)):s.o(i)?(t.writeUint8(0),t.writeDouble(Number(i))):s.zM(i)?(t.writeUint8(1),t.writeUint8(i?1:0)):s.Yj(i)?i.length>=65536?(t.writeUint8(12),t.writeUint32(i.length),t.writeString(i)):(t.writeUint8(2),t.writeUint16(i.length),t.writeString(i)):s.YO(i)?(t.writeUint8(10),t.writeUint32(i.length),r.__(i,(i=>{o(t,i)}))):s.Ik(i)?(t.writeUint8(3),n.__(i,((i,e)=>{t.writeUint16(e.length),t.writeString(e),o(t,i)})),t.writeUint24(9)):i instanceof Date?(t.writeUint8(11),t.writeDouble(i.getTime()),t.writeInt16(0)):null==i&&t.writeUint8(5)}},90519:(t,i,e)=>{function s(t){crypto.getRandomValues(t)}e.d(i,{y:()=>s})},83229:(t,i,e)=>{e.d(i,{Tl:()=>o,an:()=>a,s2:()=>h});var s=e(134),r=e(54001),n=e.n(r);class a{constructor(){(0,s.A)(this,"list",[])}}async function h(t){return new(n())((i=>{t.list.push(i),1===t.list.length&&i()}))}function o(t){t.list.shift(),t.list.length&&t.list[0]()}},6498:(t,i,e)=>{e(67672),e(72739)},24175:(t,i,e)=>{e.d(i,{A:()=>o});var s=e(134),r=e(4624),n=e(50011),a=e(13724);const h="src/common/io/IOReader.ts";class o{constructor(t=1048576,i=!0,e){if((0,s.A)(this,"data",void 0),(0,s.A)(this,"buffer",void 0),(0,s.A)(this,"pointer",void 0),(0,s.A)(this,"endPointer",void 0),(0,s.A)(this,"pos",void 0),(0,s.A)(this,"size",void 0),(0,s.A)(this,"littleEndian",void 0),(0,s.A)(this,"fileSize_",void 0),(0,s.A)(this,"error",void 0),(0,s.A)(this,"onFlush",void 0),(0,s.A)(this,"onSeek",void 0),(0,s.A)(this,"onSize",void 0),(0,s.A)(this,"flags",void 0),this.pos=BigInt(0),this.pointer=0,this.error=0,this.endPointer=0,this.littleEndian=!i,this.flags=0,e&&e.view)this.size=e.length,this.buffer=e,this.data=e.view;else if(e&&!e.byteOffset)this.size=e.length,this.buffer=e,this.data=new DataView(this.buffer.buffer);else{if(e)throw new Error("not support subarray of ArrayBuffer");this.size=Math.max(t,102400),this.buffer=new Uint8Array(this.size),this.data=new DataView(this.buffer.buffer)}}async readUint8(){this.remainingLength()<1&&await this.flush(1);const t=this.data.getUint8(this.pointer);return this.pointer++,this.pos++,t}async peekUint8(){return this.remainingLength()<1&&await this.flush(1),this.data.getUint8(this.pointer)}async readUint16(){this.remainingLength()<2&&await this.flush(2);const t=this.data.getUint16(this.pointer,this.littleEndian);return this.pointer+=2,this.pos+=BigInt(2),t}async peekUint16(){return this.remainingLength()<2&&await this.flush(2),this.data.getUint16(this.pointer,this.littleEndian)}async readUint24(){this.remainingLength()<3&&await this.flush(3);const t=await this.readUint16(),i=await this.readUint8();return this.littleEndian?i<<16|t:t<<8|i}async peekUint24(){this.remainingLength()<3&&await this.flush(3);const t=this.pointer,i=this.pos,e=await this.readUint16(),s=await this.readUint8(),r=this.littleEndian?s<<16|e:e<<8|s;return this.pointer=t,this.pos=i,r}async readUint32(){this.remainingLength()<4&&await this.flush(4);const t=this.data.getUint32(this.pointer,this.littleEndian);return this.pointer+=4,this.pos+=BigInt(4),t}async peekUint32(){return this.remainingLength()<4&&await this.flush(4),this.data.getUint32(this.pointer,this.littleEndian)}async readUint64(){this.remainingLength()<8&&await this.flush(8);const t=this.data.getBigUint64(this.pointer,this.littleEndian);return this.pointer+=8,this.pos+=BigInt(8),t}async peekUint64(){return this.remainingLength()<8&&await this.flush(8),this.data.getBigUint64(this.pointer,this.littleEndian)}async readInt8(){this.remainingLength()<1&&await this.flush(1);const t=this.data.getInt8(this.pointer);return this.pointer++,this.pos++,t}async peekInt8(){return this.remainingLength()<1&&await this.flush(1),this.data.getInt8(this.pointer)}async readInt16(){this.remainingLength()<2&&await this.flush(2);const t=this.data.getInt16(this.pointer,this.littleEndian);return this.pointer+=2,this.pos+=BigInt(2),t}async peekInt16(){return this.remainingLength()<2&&await this.flush(2),this.data.getInt16(this.pointer,this.littleEndian)}async readInt24(){const t=await this.readUint24();return 8388608&t?t-16777216:t}async peekInt24(){const t=await this.peekUint24();return 8388608&t?t-16777216:t}async readInt32(){this.remainingLength()<4&&await this.flush(4);const t=this.data.getInt32(this.pointer,this.littleEndian);return this.pointer+=4,this.pos+=BigInt(4),t}async peekInt32(){return this.remainingLength()<4&&await this.flush(4),this.data.getInt32(this.pointer,this.littleEndian)}async readInt64(){this.remainingLength()<8&&await this.flush(8);const t=this.data.getBigInt64(this.pointer,this.littleEndian);return this.pointer+=8,this.pos+=BigInt(8),t}async peekInt64(){return this.remainingLength()<8&&await this.flush(8),this.data.getBigInt64(this.pointer,this.littleEndian)}async readFloat(){this.remainingLength()<4&&await this.flush(4);const t=this.data.getFloat32(this.pointer,this.littleEndian);return this.pointer+=4,this.pos+=BigInt(4),t}async peekFloat(){return this.remainingLength()<4&&await this.flush(4),this.data.getFloat32(this.pointer,this.littleEndian)}async readDouble(){this.remainingLength()<8&&await this.flush(8);const t=this.data.getFloat64(this.pointer,this.littleEndian);return this.pointer+=8,this.pos+=BigInt(8),t}async peekDouble(){return this.remainingLength()<8&&await this.flush(8),this.data.getFloat64(this.pointer,this.littleEndian)}async readHex(t=1){let i="";for(let e=0;e<t;e++){const t=(await this.readUint8()).toString(16);i+=1===t.length?"0"+t:t}return i}async peekHex(t=1){t>this.size&&(this.error=-1048574,r.h2("peekHex, length too large",h,414)),this.remainingLength()<t&&await this.flush(t);const i=this.pointer,e=this.pos;let s="";for(let i=0;i<t;i++){const t=(await this.readUint8()).toString(16);s+=1===t.length?"0"+t:t}return this.pointer=i,this.pos=e,s}async readBuffer(t,i){if(i||(i=new Uint8Array(t)),this.remainingLength()<t){let e=0;if(this.remainingLength()>0){const s=this.remainingLength();i.set(this.buffer.subarray(this.pointer,this.pointer+s),e),e+=s,this.pointer+=s,this.pos+=BigInt(s),t-=s}for(;t>0;){await this.flush();const s=Math.min(this.endPointer-this.pointer,t);i.set(this.buffer.subarray(this.pointer,this.pointer+s),e),e+=s,this.pointer+=s,this.pos+=BigInt(s),t-=s}}else i.set(this.buffer.subarray(this.pointer,this.pointer+t),0),this.pointer+=t,this.pos+=BigInt(t);return i}async peekBuffer(t,i){return t>this.size&&(this.error=-1048574,r.h2("peekBuffer, length too large",h,499)),this.remainingLength()<t&&await this.flush(t),i||(i=new Uint8Array(t)),i.set(this.buffer.subarray(this.pointer,this.pointer+t),0),i}async readToBuffer(t,i){if(this.remainingLength()<t){let e=0;if(this.remainingLength()>0){const s=this.remainingLength();i.set(this.buffer.subarray(this.pointer,this.pointer+s),e),e+=s,this.pointer+=s,this.pos+=BigInt(s),t-=s}for(;t>0;){try{await this.flush()}catch(t){if(-1048576===this.error&&e)return e;throw t}const s=Math.min(this.endPointer-this.pointer,t);i.set(this.buffer.subarray(this.pointer,this.pointer+s),e),e+=s,this.pointer+=s,this.pos+=BigInt(s),t-=s}return e}return i.set(this.buffer.subarray(this.pointer,this.pointer+t),0),this.pointer+=t,this.pos+=BigInt(t),t}async readString(t=1){const i=await this.readBuffer(t);return n.decode(i)}async peekString(t=1){const i=await this.peekBuffer(t);return n.decode(i)}async readLine(){let t="";for(;;){let i=!1;for(let e=this.pointer;e<this.endPointer;e++)if(10===this.buffer[e]||13===this.buffer[e]){e!==this.pointer&&(t+=await this.readString(e-this.pointer)),i=!0;break}if(i)break;t+=await this.readString(this.remainingLength()),await this.flush()}let i=await this.peekUint8();return 10!==i&&13!==i||(this.pointer++,13===i&&(i=await this.peekUint8(),10===i&&this.pointer++)),t}async peekLine(){if(this.remainingLength()<this.size)try{await this.flush()}catch(t){if(-1048576!==this.error)throw t}let t="",i=!1;for(let e=this.pointer;e<this.endPointer;e++)if(10===this.buffer[e]||13===this.buffer[e]){t+=await this.peekString(e-this.pointer),i=!0;break}return i||(this.error=-1048574,r.h2("peekLine, out of buffer",h,657)),t}getPointer(){return this.pointer}getPos(){return this.pos}async skip(t){const i=t;for(;this.remainingLength()<t;)t-=this.remainingLength(),this.pointer=this.endPointer,await this.flush();this.remainingLength()>=t&&(this.pointer+=t),this.pos+=BigInt(i)}remainingLength(){return this.endPointer-this.pointer}async flush_(t){for(;;){const i=await this.onFlush(t);if(-1048575!==i)return i;await new a.A(0)}}async flush(t=0){if(this.onFlush||(this.error=-1048574,r.h2("IOReader error, flush failed because of no flush callback",h,731)),!(this.size-this.remainingLength()<=0)){if(t=Math.min(t,this.size),this.pointer<this.endPointer?(this.buffer.set(this.buffer.subarray(this.pointer,this.endPointer),0),this.endPointer=this.endPointer-this.pointer):this.endPointer=0,this.pointer=0,t)for(;this.remainingLength()<t;){const t=await this.flush_(this.buffer.subarray(this.endPointer));if(t<0)throw this.error=t,new Error(`IOReader error, flush ${-1048576===t?"ended":"failed"}, ret: ${t}`);this.endPointer+=t}else{const t=await this.flush_(this.buffer.subarray(this.endPointer));if(t<0)throw this.error=t,new Error(`IOReader error, flush ${-1048576===t?"ended":"failed"}, ret: ${t}`);this.endPointer+=t}this.error=0}}async seek(t,i=!1,e=!0){if(!i){const i=Number(t-this.pos);if(i<0&&Math.abs(i)<this.pointer)return this.pointer+=i,void(this.pos=t);if(i>0&&this.pointer+i<this.endPointer)return this.pointer+=i,void(this.pos=t);if(0===i)return}this.onSeek||(this.error=-1048574,r.h2("IOReader error, seek failed because of no seek callback",h,802)),this.pointer=this.endPointer=0,this.pos=t;const s=await this.onSeek(t);0!==s&&(this.error=s,r.h2("IOReader error, seek failed",h,811)),e&&await this.flush()}getBuffer(){return this.buffer}appendBuffer(t){if(this.size-this.endPointer>=t.length)this.buffer.set(t,this.endPointer),this.endPointer+=t.length;else if(this.buffer.set(this.buffer.subarray(this.pointer,this.endPointer),0),this.endPointer=this.endPointer-this.pointer,this.pointer=0,this.size-this.endPointer>=t.length)this.buffer.set(t,this.endPointer),this.endPointer+=t.length;else{const i=Math.min(this.size-this.endPointer,t.length);this.buffer.set(t.subarray(0,i),this.endPointer),this.endPointer+=i,r.R8("IOReader, call appendBuffer but the buffer's size is lagger then the remaining size",h,849)}}reset(){this.pointer=this.endPointer=0,this.pos=BigInt(0),this.error=0}setEndian(t){this.littleEndian=!t}async fileSize(){if(this.fileSize_)return this.fileSize_;if(!this.onSize)return r.R8("IOReader error, fileSize failed because of no onSize callback",h,882),BigInt(0);try{this.fileSize_=await this.onSize()}catch(t){r.R8(`IOReader error, call fileSize failed: ${t}`,h,889),this.fileSize_=BigInt(0)}return this.fileSize_}getBufferSize(){return this.size}async pipe(t,i){if(i)if(this.remainingLength()<i){if(this.remainingLength()>0){const e=this.remainingLength();await t.writeBuffer(this.buffer.subarray(this.pointer,this.pointer+e)),this.pointer+=e,this.pos+=BigInt(e),i-=e}for(;i>0;){await this.flush();const e=Math.min(this.remainingLength(),i);await t.writeBuffer(this.buffer.subarray(this.pointer,this.pointer+e)),this.pointer+=e,this.pos+=BigInt(e),i-=e}}else await t.writeBuffer(this.buffer.subarray(this.pointer,this.pointer+i)),this.pointer+=i,this.pos+=BigInt(i);else{if(this.remainingLength()>0){const i=this.remainingLength();await t.writeBuffer(this.buffer.subarray(this.pointer,this.pointer+i)),this.pointer+=i,this.pos+=BigInt(i)}for(;await this.flush_(this.buffer.subarray(0))>0;){const i=this.remainingLength();await t.writeBuffer(this.buffer.subarray(this.pointer,this.pointer+i)),this.pointer+=i,this.pos+=BigInt(i)}}}}},34531:(t,i,e)=>{e.d(i,{A:()=>n});var s=e(134),r=e(50011);class n{constructor(t=1048576,i=!0,e){if((0,s.A)(this,"data",void 0),(0,s.A)(this,"buffer",void 0),(0,s.A)(this,"pointer",void 0),(0,s.A)(this,"pos",void 0),(0,s.A)(this,"size",void 0),(0,s.A)(this,"littleEndian",void 0),(0,s.A)(this,"error",void 0),(0,s.A)(this,"onFlush",void 0),(0,s.A)(this,"onSeek",void 0),this.pointer=0,this.pos=BigInt(0),this.size=t,this.littleEndian=!i,this.error=0,e&&e.view)this.size=e.length,this.buffer=e,this.data=e.view;else if(e&&!e.byteOffset)this.size=e.length,this.buffer=e,this.data=new DataView(this.buffer.buffer);else{if(e)throw new Error("not support subarray of ArrayBuffer");this.buffer=new Uint8Array(this.size),this.data=new DataView(this.buffer.buffer)}}async writeUint8(t){this.remainingLength()<1&&await this.flush(),this.data.setUint8(this.pointer,t),this.pointer++,this.pos++}async writeUint16(t){this.remainingLength()<2&&await this.flush(),this.data.setUint16(this.pointer,t,this.littleEndian),this.pointer+=2,this.pos+=BigInt(2)}async writeUint24(t){this.remainingLength()<3&&await this.flush();const i=(16711680&t)>>16,e=(65280&t)>>8,s=255&t;this.littleEndian?(await this.writeUint8(s),await this.writeUint8(e),await this.writeUint8(i)):(await this.writeUint8(i),await this.writeUint8(e),await this.writeUint8(s))}async writeUint32(t){this.remainingLength()<4&&await this.flush(),this.data.setUint32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}async writeUint64(t){this.remainingLength()<8&&await this.flush(),this.data.setBigUint64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}async writeInt8(t){this.remainingLength()<1&&await this.flush(),this.data.setInt8(this.pointer,t),this.pointer++,this.pos++}async writeInt16(t){this.remainingLength()<2&&await this.flush(),this.data.setInt16(this.pointer,t,this.littleEndian),this.pointer+=2,this.pos+=BigInt(2)}async writeInt24(t){await this.writeUint24(t<0?t+16777216:t)}async writeInt32(t){this.remainingLength()<4&&await this.flush(),this.data.setInt32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}async writeInt64(t){this.remainingLength()<8&&await this.flush(),this.data.setBigInt64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}async writeFloat(t){this.remainingLength()<4&&await this.flush(),this.data.setFloat32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}async writeDouble(t){this.remainingLength()<8&&await 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}async writeBuffer(t){if(!t.length)return;let i=t.length;if(this.remainingLength()<i){let e=0;for(;i>0;){await this.flush();const s=Math.min(this.size,i);this.buffer.set(t.subarray(e,e+s),this.pointer),this.pointer+=s,this.pos+=BigInt(s),e+=s,i-=s}}else this.buffer.set(t,this.pointer),this.pointer+=i,this.pos+=BigInt(i)}async writeString(t){const i=r.encode(t);return await this.writeBuffer(i),i.length}async flush(){if(!this.onFlush)throw this.error=-1048574,Error("IOWriter error, flush failed because of no flush callback");if(this.pointer){const t=await this.onFlush(this.buffer.subarray(0,this.pointer));if(0!==t)throw this.error=t,Error("IOWriter error, flush failed")}this.pointer=0}async flushToPos(t){if(!this.onFlush)throw this.error=-1048574,Error("IOWriter error, flush failed because of no flush callback");if(this.pointer){const i=await this.onFlush(this.buffer.subarray(0,this.pointer),t);if(0!==i)throw this.error=i,Error("IOWriter error, flush failed")}this.pointer=0}async seek(t){if(!this.onSeek)throw this.error=-1048574,Error("IOWriter error, seek failed because of no seek callback");await this.flush();const i=await this.onSeek(t);if(0!==i)throw this.error=i,Error("IOWriter error, seek failed");this.pos=t}seekInline(t){const i=this.pointer;this.pointer=Math.max(0,Math.min(this.size,t)),this.pos+=BigInt(this.pointer-i)}skip(t){const i=this.pointer;this.pointer=Math.min(this.size,this.pointer+t),this.pos+=BigInt(this.pointer-i)}back(t){const i=this.pointer;this.pointer=Math.max(0,this.pointer-t),this.pos+=BigInt(this.pointer-i)}getBuffer(){return this.buffer.subarray(0,this.pointer)}setEndian(t){this.littleEndian=!t}reset(){this.pointer=0,this.pos=BigInt(0),this.error=0}getBufferSize(){return this.size}}},35336:(t,i,e)=>{e.d(i,{A:()=>n});var s=e(134),r=e(50011);class n{constructor(t=1048576,i=!0,e){if((0,s.A)(this,"data",void 0),(0,s.A)(this,"buffer",void 0),(0,s.A)(this,"pointer",void 0),(0,s.A)(this,"pos",void 0),(0,s.A)(this,"size",void 0),(0,s.A)(this,"littleEndian",void 0),(0,s.A)(this,"error",void 0),(0,s.A)(this,"onFlush",void 0),(0,s.A)(this,"onSeek",void 0),this.pointer=0,this.pos=BigInt(0),this.size=t,this.littleEndian=!i,this.error=0,e&&e.view)this.size=e.length,this.buffer=e,this.data=e.view;else if(e&&!e.byteOffset)this.size=e.length,this.buffer=e,this.data=new DataView(this.buffer.buffer);else{if(e)throw new Error("not support subarray of ArrayBuffer");this.buffer=new Uint8Array(this.size),this.data=new DataView(this.buffer.buffer)}}writeUint8(t){this.remainingLength()<1&&this.flush(),this.data.setUint8(this.pointer,t),this.pointer++,this.pos++}writeUint16(t){this.remainingLength()<2&&this.flush(),this.data.setUint16(this.pointer,t,this.littleEndian),this.pointer+=2,this.pos+=BigInt(2)}writeUint24(t){this.remainingLength()<3&&this.flush();const i=(16711680&t)>>16,e=(65280&t)>>8,s=255&t;this.littleEndian?(this.writeUint8(s),this.writeUint8(e),this.writeUint8(i)):(this.writeUint8(i),this.writeUint8(e),this.writeUint8(s))}writeUint32(t){this.remainingLength()<4&&this.flush(),this.data.setUint32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeUint64(t){this.remainingLength()<8&&this.flush(),this.data.setBigUint64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}writeInt8(t){this.remainingLength()<1&&this.flush(),this.data.setInt8(this.pointer,t),this.pointer++,this.pos++}writeInt16(t){this.remainingLength()<2&&this.flush(),this.data.setInt16(this.pointer,t,this.littleEndian),this.pointer+=2,this.pos+=BigInt(2)}writeInt24(t){this.writeUint24(t<0?t+16777216:t)}writeInt32(t){this.remainingLength()<4&&this.flush(),this.data.setInt32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeInt64(t){this.remainingLength()<8&&this.flush(),this.data.setBigInt64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}writeFloat(t){this.remainingLength()<4&&this.flush(),this.data.setFloat32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeDouble(t){this.remainingLength()<8&&this.flush(),this.data.setFloat64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}getPointer(){return this.pointer}getPos(){return this.pos}remainingLength(){return this.size-this.pointer}writeBuffer(t){if(!t.length)return;let i=t.length;if(this.remainingLength()<i){let e=0;for(;i>0;){this.flush();const s=Math.min(this.size,i);this.buffer.set(t.subarray(e,e+s),this.pointer),this.pointer+=s,this.pos+=BigInt(s),e+=s,i-=s}}else this.buffer.set(t,this.pointer),this.pointer+=i,this.pos+=BigInt(i)}writeString(t){const i=r.encode(t);return this.writeBuffer(i),i.length}flush(){if(!this.onFlush)throw this.error=-1048574,Error("IOWriter error, flush failed because of no flush callback");if(this.pointer){const t=this.onFlush(this.buffer.subarray(0,this.pointer));if(0!==t)throw this.error=t,Error("IOWriter error, flush failed")}this.pointer=0}flushToPos(t){if(!this.onFlush)throw this.error=-1048574,Error("IOWriter error, flush failed because of no flush callback");if(this.pointer){const i=this.onFlush(this.buffer.subarray(0,this.pointer),t);if(0!==i)throw this.error=i,Error("IOWriter error, flush failed")}this.pointer=0}seek(t){if(!this.onSeek)throw this.error=-1048574,Error("IOWriter error, seek failed because of no seek callback");this.flush();const i=this.onSeek(t);if(0!==i)throw this.error=i,Error("IOWriter error, seek failed");this.pos=t}seekInline(t){const i=this.pointer;this.pointer=Math.max(0,Math.min(this.size,t)),this.pos+=BigInt(this.pointer-i)}skip(t){const i=this.pointer;this.pointer=Math.min(this.size,this.pointer+t),this.pos+=BigInt(this.pointer-i)}back(t){const i=this.pointer;this.pointer=Math.max(0,this.pointer-t),this.pos+=BigInt(this.pointer-i)}getBuffer(){return this.buffer.subarray(0,this.pointer)}setEndian(t){this.littleEndian=!t}reset(){this.pointer=0,this.pos=BigInt(0),this.error=0}getBufferSize(){return this.size}}},8507:(t,i,e)=>{function s(t){const i=t,e=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],s=/:\/\/([^\/@]*@?)\[(\S+)\]/;let r="";s.test(t)&&(t=t.replace(s,((t,i,e)=>(r=e,`://${i||""}a.b`))));const n={},a=/^(?:(?![^:@\/]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@\/]*)(?::([^:@\/]*))?)?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/.exec(t);let h=14;for(;h--;){var o;n[e[h]]=null!==(o=a[h])&&void 0!==o?o:""}return r&&(n.host=r,n.source=i,n.authority=r+(n.port?":"+n.port:"")),{protocol:n.protocol,file:n.file,host:n.host,port:n.port,user:n.user,password:n.password,origin:`${n.protocol}://${n.authority}`,pathname:n.path,search:`?${n.query}`,hash:n.anchor?`#${n.anchor}`:""}}e.d(i,{ll:()=>u,qg:()=>s}),e(73146),e(67672),e(6498),e(72739),e(95335);const r=/(?:\/|^)\.(?=\/)/g,n=/(?:\/|^)\.\.\/(?!\.\.\/)[^\/]*(?=\/)/g,a=/^(?=([^\/?#]*))\1([^]*)$/,h=/^(?=((?:[a-zA-Z0-9+\-.]+:)?))\1(?=((?:\/\/[^\/?#]*)?))\2(?=((?:(?:[^?#\/]*\/)*[^;?#\/]*)?))\3((?:;[^?#]*)?)(\?[^#]*)?(#[^]*)?$/;function o(t){return t.scheme+t.netLoc+t.path+t.params+t.query+t.fragment}function f(t){const i=h.exec(t);return i?{scheme:i[1]||"",netLoc:i[2]||"",path:i[3]||"",params:i[4]||"",query:i[5]||"",fragment:i[6]||""}:null}function l(t){for(t=t.split("").reverse().join("").replace(r,"");t.length!==(t=t.replace(n,"")).length;);return t.split("").reverse().join("")}function u(t,i,e){if(e=e||{},t=t.trim(),!(i=i.trim())){if(!e.alwaysNormalize)return t;let i=f(t);if(!i)throw new Error("Error trying to parse base URL.");return i.path=l(i.path),o(i)}let s=f(i);if(!s)throw new Error("Error trying to parse relative URL.");if(s.scheme)return e.alwaysNormalize?(s.path=l(s.path),o(s)):i;let r=f(t);if(!r)throw new Error("Error trying to parse base URL.");if(!r.netLoc&&r.path&&"/"!==r.path[0]){let t=a.exec(r.path);r.netLoc=t[1],r.path=t[2]}r.netLoc&&!r.path&&(r.path="/");const n={scheme:r.scheme,netLoc:s.netLoc,path:null,params:s.params,query:s.query,fragment:s.fragment};if(!s.netLoc&&(n.netLoc=r.netLoc,"/"!==s.path[0]))if(s.path){let t=r.path,i=t.substring(0,t.lastIndexOf("/")+1)+s.path;n.path=l(i)}else n.path=r.path,s.params||(n.params=r.params,s.query||(n.query=r.query));return null===n.path&&(n.path=e.alwaysNormalize?l(s.path):s.path),o(n)}},85079:(t,i,e)=>{var s=e(46438),r=s.JSON||(s.JSON={stringify:JSON.stringify});t.exports=function(t){return r.stringify.apply(r,arguments)}},73146:(t,i,e)=>{t.exports=e(85079)}}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[576],{41576:(e,t,i)=>{i.r(t),i.d(t,{default:()=>L});var s=i(134),a=i(80662),n=i.n(a),d=i(54001),o=i.n(d),r=i(13724),l=i(82800),m=i(95335),u=i(4624),h=i(78417),c=i(77580),g=i(86932),f=i(9705);const p="src/avnetwork/ioLoader/DashIOLoader.ts";class L extends l.A{constructor(...e){super(...e),(0,s.A)(this,"info",void 0),(0,s.A)(this,"range",void 0),(0,s.A)(this,"mediaPlayList",void 0),(0,s.A)(this,"fetchMediaPlayListPromise",void 0),(0,s.A)(this,"minBuffer",void 0),(0,s.A)(this,"audioResource",void 0),(0,s.A)(this,"videoResource",void 0),(0,s.A)(this,"subtitleResource",void 0)}createResource(e){return{type:e,fetchedMap:new(n()),fetchedHistoryList:[],loader:null,segmentIndex:0,currentUri:"",selectedIndex:0,segments:[],initSegmentPadding:"",initedSegment:""}}async fetchMediaPlayList(e){var t,i,s;if(!e){if(this.fetchMediaPlayListPromise)return;this.fetchMediaPlayListPromise=new(o())((t=>{e=t}))}const a={method:"GET",headers:{},mode:"cors",cache:"default",referrerPolicy:"no-referrer-when-downgrade"};null!==(t=this.info.httpOptions)&&void 0!==t&&t.headers&&m.__(this.info.httpOptions.headers,((e,t)=>{a.headers[t]=e})),null!==(i=this.info.httpOptions)&&void 0!==i&&i.credentials&&(a.credentials=this.info.httpOptions.credentials),null!==(s=this.info.httpOptions)&&void 0!==s&&s.referrerPolicy&&(a.referrerPolicy=this.info.httpOptions.referrerPolicy);try{const t=await fetch(this.info.url,a),i=await t.text();if(this.mediaPlayList=(0,h.A)(i,this.info.url),this.minBuffer=this.mediaPlayList.minBufferTime,this.options.isLive){var n,d;const t=this.mediaPlayList.minBufferTime/this.mediaPlayList.maxSegmentDuration,i=Math.max(this.mediaPlayList.mediaList.audio&&(null===(n=this.mediaPlayList.mediaList.audio[0])||void 0===n?void 0:n.mediaSegments.length)||0,this.mediaPlayList.mediaList.video&&(null===(d=this.mediaPlayList.mediaList.video[0])||void 0===d?void 0:d.mediaSegments.length)||0);if(i<t)return await new r.A((t-i)*this.mediaPlayList.maxSegmentDuration),u.R8(`wait for min buffer time, buffer: ${i*this.mediaPlayList.maxSegmentDuration}, need: ${t*this.mediaPlayList.maxSegmentDuration}`,p,136),this.fetchMediaPlayList(e)}if("vod"===this.mediaPlayList.type?this.options.isLive=!1:this.options.isLive=!0,this.mediaPlayList.mediaList.audio.length){const e=this.mediaPlayList.mediaList.audio[this.audioResource.selectedIndex];e.file?this.audioResource.segments=[e.file]:this.options.isLive&&this.audioResource.initedSegment===e.initSegment?this.audioResource.segments=e.mediaSegments.map((e=>e.url)):(this.audioResource.segments=[e.initSegment].concat(e.mediaSegments.map((e=>e.url))),this.audioResource.initedSegment=e.initSegment)}if(this.mediaPlayList.mediaList.video.length){const e=this.mediaPlayList.mediaList.video[this.videoResource.selectedIndex];e.file?this.videoResource.segments=[e.file]:this.options.isLive&&this.videoResource.initedSegment===e.initSegment?this.videoResource.segments=e.mediaSegments.map((e=>e.url)):(this.videoResource.segments=[e.initSegment].concat(e.mediaSegments.map((e=>e.url))),this.videoResource.initedSegment=e.initSegment)}if(this.mediaPlayList.mediaList.subtitle.length){const e=this.mediaPlayList.mediaList.subtitle[this.subtitleResource.selectedIndex];e.file?this.subtitleResource.segments=[e.file]:this.options.isLive&&this.subtitleResource.initedSegment===e.initSegment?this.subtitleResource.segments=e.mediaSegments.map((e=>e.url)):(this.subtitleResource.segments=[e.initSegment].concat(e.mediaSegments.map((e=>e.url))),this.subtitleResource.initedSegment=e.initSegment)}return e(),this.fetchMediaPlayListPromise=null,this.status=2,this.retryCount=0,this.mediaPlayList}catch(t){if(this.retryCount<this.options.retryCount)return this.retryCount++,u.z3(`failed fetch mpd file, retry(${this.retryCount}/3)`,p,208),await new r.A(2===this.status?this.options.retryInterval:5),this.fetchMediaPlayList(e);this.status=3,e(),u.h2(`DashLoader: exception, fetch slice error, error: ${t.message}`,p,216)}}async open(e,t){return 0!==this.status?f.lh:(this.info=e,this.range=t,this.range.to||(this.range.to=-1),this.range.from=Math.max(this.range.from,0),this.videoResource=this.createResource("video"),this.audioResource=this.createResource("audio"),this.subtitleResource=this.createResource("subtitle"),this.status=1,this.retryCount=0,await this.fetchMediaPlayList(),0)}async readResource(e,t){let i=0;if(t.loader){if(i=await t.loader.read(e),-1048576!==i)return i;if(this.options.isLive)t.fetchedMap.set(t.currentUri,!0),10===t.fetchedHistoryList.length&&t.fetchedMap.delete(t.fetchedHistoryList.shift()),t.fetchedHistoryList.push(t.currentUri);else if(t.segmentIndex++,t.segmentIndex>=t.segments.length)return-1048576;t.loader=null}if(this.options.isLive){const i=t.segments.filter((e=>!t.fetchedMap.get(e)));if(!i.length){if(this.mediaPlayList.isEnd)return-1048576;const i=(this.mediaPlayList.duration||this.mediaPlayList.minimumUpdatePeriod)-((0,g.A)()-this.mediaPlayList.timestamp)/1e3;if(i>0&&await new r.A(Math.max(i,2)),this.fetchMediaPlayListPromise){if(await this.fetchMediaPlayListPromise,3===this.status)return-1048576}else await this.fetchMediaPlayList();return this.readResource(e,t)}return t.currentUri=i[0],t.loader=new c.A(m.X$({},this.options,{disableSegment:!0,loop:!1})),await t.loader.open(m.X$({},this.info,{url:t.currentUri}),{from:0,to:-1}),t.loader.read(e)}return t.loader=new c.A(m.X$({},this.options,{disableSegment:!0,loop:!1})),t.initSegmentPadding?(await t.loader.open(m.X$({},this.info,{url:t.initSegmentPadding}),{from:0,to:-1}),t.initSegmentPadding=null,t.segmentIndex--):await t.loader.open(m.X$({},this.info,{url:t.segments[t.segmentIndex]}),{from:0,to:-1}),t.loader.read(e)}async read(e,t){return"audio"===t.mediaType?this.readResource(e,this.audioResource):"video"===t.mediaType?this.readResource(e,this.videoResource):"subtitle"===t.mediaType?this.readResource(e,this.subtitleResource):f.UY}async seekResource(e,t){t.loader&&(await t.loader.abort(),t.loader=null);let i=Number(BigInt.asIntN(32,e));if(t.segments){let e=0;const s="audio"===t.type?this.mediaPlayList.mediaList.audio:"video"===t.type?this.mediaPlayList.mediaList.video:this.mediaPlayList.mediaList.subtitle,a=s[t.selectedIndex].mediaSegments;if(null!=a&&a.length)for(let t=0;t<a.length;t++)if(i>=1e3*a[t].start&&i<1e3*a[t].end){e=t;break}t.segmentIndex=e+(s[t.selectedIndex].initSegment?1:0)}}async seek(e,t){return"audio"===t.mediaType&&this.audioResource.loader&&await this.seekResource(e,this.audioResource),"video"===t.mediaType&&this.videoResource.loader&&await this.seekResource(e,this.videoResource),"subtitle"===t.mediaType&&this.subtitleResource.loader&&await this.seekResource(e,this.subtitleResource),4===this.status&&(this.status=2),0}async size(){return BigInt(0)}async abort(){this.videoResource.loader&&(await this.videoResource.loader.abort(),this.videoResource.loader=null),this.audioResource.loader&&(await this.audioResource.loader.abort(),this.audioResource.loader=null),this.subtitleResource.loader&&(await this.subtitleResource.loader.abort(),this.subtitleResource.loader=null)}async stop(){await this.abort(),this.status=0}getDuration(){return this.mediaPlayList.duration}hasVideo(){var e;return(null===(e=this.mediaPlayList)||void 0===e?void 0:e.mediaList.video.length)>0}hasAudio(){var e;return(null===(e=this.mediaPlayList)||void 0===e?void 0:e.mediaList.audio.length)>0}hasSubtitle(){var e;return(null===(e=this.mediaPlayList)||void 0===e?void 0:e.mediaList.subtitle.length)>0}getVideoList(){return this.hasVideo()?{list:this.mediaPlayList.mediaList.video.map((e=>({width:e.width,height:e.height,frameRate:e.frameRate,codecs:e.codecs}))),selectedIndex:this.videoResource.selectedIndex}:{list:[],selectedIndex:0}}getAudioList(){return this.hasAudio()?{list:this.mediaPlayList.mediaList.audio.map((e=>({lang:e.lang,codecs:e.codecs}))),selectedIndex:this.audioResource.selectedIndex}:{list:[],selectedIndex:0}}getSubtitleList(){return this.hasSubtitle()?{list:this.mediaPlayList.mediaList.subtitle.map((e=>({lang:e.lang,codecs:e.codecs}))),selectedIndex:this.subtitleResource.selectedIndex}:{list:[],selectedIndex:0}}selectVideo(e){if(e!==this.videoResource.selectedIndex&&this.hasVideo()&&e>=0&&e<this.mediaPlayList.mediaList.video.length){this.videoResource.selectedIndex=e;const t=this.mediaPlayList.mediaList.video[this.videoResource.selectedIndex];t.file?this.videoResource.segments=[t.file]:(this.videoResource.segments=[t.initSegment].concat(t.mediaSegments.map((e=>e.url))),this.videoResource.initSegmentPadding=t.initSegment)}}selectAudio(e){if(e!==this.audioResource.selectedIndex&&this.hasAudio()&&e>=0&&e<this.mediaPlayList.mediaList.audio.length){this.audioResource.selectedIndex=e;const t=this.mediaPlayList.mediaList.audio[this.audioResource.selectedIndex];t.file?this.audioResource.segments=[t.file]:(this.audioResource.segments=[t.initSegment].concat(t.mediaSegments.map((e=>e.url))),this.audioResource.initSegmentPadding=t.initSegment)}}selectSubtitle(e){if(e!==this.subtitleResource.selectedIndex&&this.hasSubtitle()&&e>=0&&e<this.mediaPlayList.mediaList.subtitle.length){this.subtitleResource.selectedIndex=e;const t=this.mediaPlayList.mediaList.subtitle[this.subtitleResource.selectedIndex];t.file?this.subtitleResource.segments=[t.file]:(this.subtitleResource.segments=[t.initSegment].concat(t.mediaSegments.map((e=>e.url))),this.subtitleResource.initSegmentPadding=t.initSegment)}}getMinBuffer(){return this.minBuffer}}},78417:(e,t,i)=>{i.d(t,{A:()=>g});var s=i(88032),a=i.n(s),n=i(29967),d=i.n(n),o=i(79331),r=i(67672),l=i(62100),m=i(86932);function u(e){let t=0,i=0,s=0;return(e=e.slice(e.indexOf("PT")+2)).indexOf("H")>-1&&e.indexOf("M")>-1&&e.indexOf("S")>-1?(t=a()(e.slice(0,e.indexOf("H"))),i=a()(e.slice(e.indexOf("H")+1,e.indexOf("M"))),s=a()(e.slice(e.indexOf("M")+1,e.indexOf("S")))):e.indexOf("H")<0&&e.indexOf("M")>0&&e.indexOf("S")>-1?(i=a()(e.slice(0,e.indexOf("M"))),s=a()(e.slice(e.indexOf("M")+1,e.indexOf("S")))):e.indexOf("H")<0&&e.indexOf("M")<0&&e.indexOf("S")>-1&&(s=a()(e.slice(0,e.indexOf("S")))),3600*t+60*i+s}function h(e,t){return(Array(t).join("0")+e).slice(-t)}function c(e){if(!e)return 0;if(e.indexOf("/")>-1){const t=e.split("/");return a()(t[0])/a()(t[1])}return a()(e)}function g(e,t){const i={source:e,mediaList:{audio:[],video:[],subtitle:[]},type:"live",isEnd:!1,duration:0,minBufferTime:0,maxSegmentDuration:0,minimumUpdatePeriod:0,timestamp:(0,m.A)()},s=[],n=(g=e,g?(0,o.A)(g,{aloneValueName:"value"}):null).MPD;var g;"static"===n.type&&(i.type="vod",i.isEnd=!0),n.minBufferTime&&(i.minBufferTime=u(n.minBufferTime)),n.maxSegmentDuration&&(i.maxSegmentDuration=u(n.maxSegmentDuration)),n.minimumUpdatePeriod&&(i.minimumUpdatePeriod=u(n.minimumUpdatePeriod)),n.mediaPresentationDuration&&(i.duration=u(n.mediaPresentationDuration));let f="";n.BaseURL&&(f=r.Yj(n.BaseURL)?n.BaseURL:n.BaseURL.value);const p=r.YO(n.Period)?n.Period[0]:n.Period;return!i.duration&&p&&p.duration&&(i.duration=u(p.duration)),(r.YO(p.AdaptationSet)?p.AdaptationSet:[p.AdaptationSet]).forEach(((e,n)=>{let o="video/mp4",m="avc1.64001E",u=640,g=360,p=640,L=360,S=25,R="1:1",y="1",P=588633,b=f,v="und";e.BaseURL&&(b+=e.BaseURL),e.lang&&(v=e.lang),e.mimeType?(o=e.mimeType,"video/mp4"===o?(m=e.codecs,u=a()(e.width),g=a()(e.height),e.maxWidth&&(p=a()(e.maxWidth)),e.maxHeight&&(L=a()(e.maxHeight)),e.frameRate&&(S=c(e.frameRate)),R=e.sar,y=e.startWithSAP,P=a()(e.bandwidth)):"audio/mp4"===o&&(m=e.codecs,y=e.startWithSAP,P=a()(e.bandwidth))):(e.maxWidth&&(p=a()(e.maxWidth)),e.maxHeight&&(L=a()(e.maxHeight)),e.frameRate&&(S=c(e.frameRate))),(r.YO(e.Representation)?e.Representation:[e.Representation]).forEach(((n,c)=>{s.indexOf(n.id)>-1&&(n.id=(d()(s[s.length-1])+1).toString()),s.push(n.id);let f="";const x=[];let w=0,A=0,I=t.slice(0,t.lastIndexOf("/")+1)+b;n.mimeType&&(o=n.mimeType),"video/mp4"===o?(n.codecs&&(m=n.codecs),n.width&&(u=a()(n.width)),n.height&&(g=a()(n.height)),n.maxWidth&&(p=a()(n.maxWidth)),n.maxHeight&&(L=a()(n.maxHeight)),n.frameRate&&(S=a()(n.frameRate)),n.sar&&(R=n.sar),n.startWithSAP&&(y=n.startWithSAP),n.bandwidth&&(P=a()(n.bandwidth))):(n.codecs&&(m=n.codecs),n.startWithSAP&&(y=n.startWithSAP),n.bandwidth&&(P=a()(n.bandwidth))),n.BaseURL&&(I+=n.BaseURL);let T=!1;if((e.ContentProtection||n.ContentProtection)&&(T=!0),n.SegmentBase)"video/mp4"===o?i.mediaList.video.push({id:n.id,file:I,mimeType:o,codecs:m,width:u,height:g,maxWidth:p,maxHeight:L,frameRate:S,sar:R,startWithSAP:"1"===y,bandwidth:P,timescale:w,duration:A,encrypted:T}):"audio/mp4"===o?i.mediaList.audio.push({id:n.id,file:I,mimeType:o,codecs:m,startWithSAP:"1"===y,bandwidth:P,timescale:w,duration:A,encrypted:T,lang:v}):"application/mp4"===o&&i.mediaList.subtitle.push({id:n.id,file:I,mimeType:o,codecs:m,startWithSAP:"1"===y,bandwidth:P,timescale:w,duration:A,encrypted:T,lang:v});else{let t;if(e.SegmentTemplate&&(t=r.YO(e.SegmentTemplate)?e.SegmentTemplate[0]:e.SegmentTemplate),n.SegmentTemplate&&(t=r.YO(n.SegmentTemplate)?n.SegmentTemplate[0]:n.SegmentTemplate),t){const e=d()(t.startNumber);if(f=t.initialization,w=a()(t.timescale||"1"),t.duration&&!t.SegmentTimeline){A=a()(t.duration);let s=A/w;const d=e+Math.ceil((i.duration||s)/s)-1;for(let a=e;a<=d;a++){const o=s*(a-e);let r=s*(a-e+1);a===d&&(s=i.duration-s*(d-e),r=i.duration),x.push({idx:a,start:o,end:r,url:I+t.media.replace(/\$RepresentationID\$/g,n.id).replace(/\$Number(%(\d+)d)?\$/g,((e,t,i)=>i?h(a,+i):(0,l.A)(a))),segmentDuration:s})}}else if(t.SegmentTimeline&&t.SegmentTimeline.S){const i=r.YO(t.SegmentTimeline.S)?t.SegmentTimeline.S:[t.SegmentTimeline.S];let s=0,o=e;for(let e=0;e<i.length;e++){let r=a()(i[e].d);i[e].t&&(s=a()(i[0].t));let m=1;i[e].r&&(m=d()(i[e].r)+1);for(let e=0;e<m;e++)x.push({idx:o,start:s/w,end:(s+r)/w,url:I+t.media.replace(/\$RepresentationID\$/g,n.id).replace(/\$Number(%(\d+)d)?\$/g,((e,t,i)=>i?h(o,+i):(0,l.A)(o))).replace(/\$Time\$/g,(0,l.A)(s)),segmentDuration:r/w}),o++,s+=r}}}else if(n.SegmentList){const e=r.YO(n.SegmentList.SegmentURL)?n.SegmentList.SegmentURL:[n.SegmentList.SegmentURL];let t=0,i=a()(n.SegmentList.duration);for(let s=0;s<e.length;s++)x.push({idx:s,start:t/w,end:(t+i)/w,url:I+e[s].media,segmentDuration:i/w}),t+=i}"video/mp4"===o?i.mediaList.video.push({id:n.id,baseURL:I,initSegment:I+f.replace(/\$RepresentationID\$/g,n.id).replace(/\$Bandwidth\$/g,(0,l.A)(P)),mediaSegments:x,mimeType:o,codecs:m,width:u,height:g,maxWidth:p,maxHeight:L,frameRate:S,sar:R,startWithSAP:"1"===y,bandwidth:P,timescale:w,duration:A,encrypted:T}):"audio/mp4"===o?i.mediaList.audio.push({id:n.id,baseURL:I,initSegment:I+f.replace(/\$RepresentationID\$/g,n.id).replace(/\$Bandwidth\$/g,(0,l.A)(P)),mediaSegments:x,mimeType:o,codecs:m,startWithSAP:"1"===y,bandwidth:P,timescale:w,duration:A,encrypted:T,lang:v}):"application/mp4"===o&&i.mediaList.subtitle.push({id:n.id,baseURL:I,initSegment:I+f.replace(/\$RepresentationID\$/g,n.id).replace(/\$Bandwidth\$/g,(0,l.A)(P)),mediaSegments:x,mimeType:o,codecs:m,startWithSAP:"1"===y,bandwidth:P,timescale:w,duration:A,encrypted:T,lang:v})}}))})),["video","audio"].forEach((e=>{i.mediaList[e].sort(((e,t)=>e.bandwidth-t.bandwidth))})),i}},79331:(e,t,i)=>{i.d(t,{A:()=>r});var s=i(68632),a=i.n(s),n=i(72739);const d={aloneValueName:"_@attribute"},o=[" ","/",'"',"'","<",">"];function r(e,t=d){e=(e=(e=(e=e.replace(/<!--[\s\S]*?-->/g,"")).replace(/[\n\t\r]/g,"")).replace(/>[ \t]+</g,"><")).replace(/<\?[^>]*\?>/g,"");const i=[];let s=0;function r(e,s){const n=i[i.length-1];n&&(e===t.aloneValueName||null==n.obj[t.aloneValueName]?null==n.obj[e]?n.obj[e]=s:a()(n.obj[e])?n.obj[e].push(s):n.obj[e]=[n.obj[e],s]:n.obj[t.aloneValueName]=[n.obj[t.aloneValueName],{tagName:e,...s}])}function l(t){for(;s<e.length;){if(e[s]===t)return!0;s++}return!1}function m(){u();let t="";for(;s<e.length&&!n.zy(o,e[s]);)t+=e[s],s++;return t}function u(){for(;s<e.length&&/\s|\r|\n/.test(e[s]);)s++}const h=/\s/,c=/'/,g=/"/;function f(){if(s>=e.length)return!0;u();let t=h;'"'!==e[s]&&"'"!=e[s]||(t='"'===e[s]?g:c,s++);let i="";for(;s<e.length;){if(t.test(e[s])){s++;break}i+=e[s],s++}return i}function p(){u();let t="";for(;s<e.length&&"<"!==e[s];)t+=e[s],s++;return t}function L(){for(;"<"===e[s];){const t=s;if(s++,u(),"/"!==e[s]){s=t;break}if(s++,m()===i[i.length-1].tag){if(i.length>1){const e=i.pop();r(e.tag,e.obj)}l(">"),s++,u()}else i.pop(),l(">"),s++,u()}}return function a(){if(s>=e.length)return;let n=s;if(u(),"<"!==e[s])return s=n,r(t.aloneValueName,p()),L(),a();let d=l("<");if(!d)return;n=s,s++;const o=m();if(i.push({obj:{},tag:o,start:n}),function(){for(;u(),">"!==e[s]&&"/"!==e[s];){let e=m();if(!e)break;"="===e[e.length-1]?e=e.substring(0,e.length-1):(l("="),s++),r(e,f())}}(),u(),"/"===e[s]){if(s++,i.length>1){const e=i.pop();r(e.tag,e.obj)}return l(">"),s++,L(),a()}d=l(">"),d&&(s++,u(),"<"!==e[s]&&(r(t.aloneValueName,p()),u()),L(),a())}(),{[i[0].tag]:i[0].obj}}}}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[611],{85947:(t,e,i)=>{i.d(e,{A:()=>s});var n=i(134);class s{constructor(){(0,n.A)(this,"type",-1),(0,n.A)(this,"onStreamAdd",void 0)}async destroy(t){}}},85611:(t,e,i)=>{i.r(e),i.d(e,{default:()=>m});var n=i(134),s=i(50932),r=i(4624),a=i(9705),o=i(85947),h=i(14686),u=i(37837),d=i(71517),c=i(72739),f=i(50011),l=i(54825);const g="src/avformat/formats/IWebVttFormat.ts";class m extends o.A{constructor(){super(),(0,n.A)(this,"type",18),(0,n.A)(this,"queue",void 0),(0,n.A)(this,"index",void 0)}init(t){this.queue=[]}async readChunk(t){let e="";const i=t.ioReader.getPos();for(;;){const i=await t.ioReader.readLine();if(""===i)break;e+=i+"\n"}return{chunk:e.trim(),pos:i}}async readHeader(t){const e=await t.ioReader.peekBuffer(3);if(239===e[0]&&187===e[1]&&191===e[2]&&await t.ioReader.skip(3),"WEBVTT"!==await t.ioReader.peekString(6))return r.z3("the file format is not vtt",g,89),a.LR;const i=t.createStream();i.codecpar.codecId=94226,i.codecpar.codecType=3,i.timeBase.den=1e3,i.timeBase.num=1;const n=await t.ioReader.readLine();n.indexOf("-")>0&&(i.metadata.title=n.split("-").pop().trim()),this.index=0;const s=[];let o=BigInt(0);try{for(;;){const{chunk:e,pos:n}=await this.readChunk(t);if(""===e||/^NOTE/.test(e))continue;/^STYLE/.test(e)&&s.push({style:e.replace(/STYLE[\s|\n]?/,""),pos:n});const r=e.split("\n");let a,h;-1===r[0].indexOf("--\x3e")&&(a=r.shift().trim());let u=r.shift().split("--\x3e");const d=(0,l.j)(u.shift());u=u.shift().trim().split(" ");const f=(0,l.j)(u.shift());if(f<=d)continue;u=u.filter((t=>""!==t)),u.length&&(h=u.join(" "));const g=r.join("\n").trim();if(!g)continue;i.nbFrames++,i.duration=f;const m={identifier:a,options:h,context:g,startTs:d,endTs:f,pos:n};d>=o?(this.queue.push(m),o=d):c._(this.queue,m,(t=>t.startTs<m.startTs?1:-1))}}catch(t){return i.metadata.styles=s,0}}async readAVPacket(t,e){if(!this.queue.length)return a.LR;if(this.index>=this.queue.length)return-1048576;const i=t.streams.find((t=>3===t.codecpar.codecType)),n=this.queue[this.index++];if(s.M[15](e+32,i.index),s.M[15](e+76,i.timeBase.den),s.M[15](e+72,i.timeBase.num),s.M[17](e+16,n.startTs),s.M[17](e+8,n.startTs),s.M[17](e+48,n.endTs-n.startTs),n.identifier){const t=f.encode(n.identifier),i=(0,u.sY)(t.length);(0,h.lW)(i,t.length,t),(0,d.Ow)(e,16,i,t.length)}if(n.options){const t=f.encode(n.options),i=(0,u.sY)(t.length);(0,h.lW)(i,t.length,t),(0,d.Ow)(e,17,i,t.length)}const r=f.encode(n.context),o=(0,u.sY)(r.length);return(0,h.lW)(o,r.length,r),(0,d.NX)(e,o,r.length),0}async seek(t,e,i,n){if(2&n)return BigInt(a.E$);if(i<=BigInt(0))return this.index=0,BigInt(0);const s=c.El(this.queue,(t=>t.startTs>i?-1:1));if(s>=0){for(r.Yz(`seek in cues, found index: ${s}, pts: ${this.queue[s].startTs}, pos: ${this.queue[s].pos}`,g,256),this.index=Math.max(s-1,0);this.index>0&&(this.queue[this.index-1].startTs===this.queue[this.index].startTs||this.queue[this.index-1].endTs>i);)this.index--;return BigInt(0)}return BigInt(a.LR)}getAnalyzeStreamsCount(){return 1}}},54825:(t,e,i)=>{function n(t){if(!(t=t.trim()))return-BigInt(1);let e=t.split(":"),i=BigInt(0);return 3===e.length&&(i+=BigInt(+e.shift().trim())*BigInt(36e5)),i+=BigInt(+e.shift().trim())*BigInt(6e4),e=e.shift().trim().split("."),i+=BigInt(+e.shift().trim())*BigInt(1e3),i+=BigInt(+e.shift().trim()),i}function s(t){if(!(t=t.trim()))return-BigInt(1);let e=t.split(":"),i=BigInt(0);return 3===e.length&&(i+=BigInt(+e.shift().trim())*BigInt(36e5)),i+=BigInt(+e.shift().trim())*BigInt(6e4),e=e.shift().trim().split(","),i+=BigInt(+e.shift().trim())*BigInt(1e3),i+=BigInt(+e.shift().trim()),i}i.d(e,{j:()=>n,t:()=>s})}}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[634],{85947:(e,t,r)=>{r.d(t,{A:()=>i});var a=r(134);class i{constructor(){(0,a.A)(this,"type",-1),(0,a.A)(this,"onStreamAdd",void 0)}async destroy(e){}}},16634:(e,t,r)=>{r.r(t),r.d(t,{IVFHeader:()=>f,default:()=>A});var a=r(134),i=r(63939),d=r(50932),o=r(4624),s=r(9705),h=r(85947),n=r(14686),c=r(37837),m=r(71517),u=r(77231);const R="src/avformat/formats/IIvfFormat.ts",w={VP80:139,VP90:167};class f{constructor(){(0,a.A)(this,"version",void 0),(0,a.A)(this,"length",void 0),(0,a.A)(this,"codec",void 0),(0,a.A)(this,"width",void 0),(0,a.A)(this,"height",void 0),(0,a.A)(this,"denominator",void 0),(0,a.A)(this,"numerator",void 0),(0,a.A)(this,"framesCount",void 0),this.version=0,this.length=32,this.codec="VP80",this.width=0,this.height=0,this.framesCount=0,this.denominator=1,this.numerator=0}}class A extends h.A{constructor(){super(),(0,a.A)(this,"type",5),(0,a.A)(this,"header",void 0),this.header=new f}init(e){e.ioReader&&e.ioReader.setEndian(!1)}async readHeader(e){try{if("DKIF"!==await e.ioReader.readString(4))return o.z3("the file format is not ivf",R,104),s.LR;this.header.version=await e.ioReader.readUint16(),await e.ioReader.skip(2),this.header.codec=await e.ioReader.readString(4),this.header.width=await e.ioReader.readUint16(),this.header.height=await e.ioReader.readUint16(),this.header.denominator=await e.ioReader.readUint32(),this.header.numerator=await e.ioReader.readUint32(),this.header.framesCount=await e.ioReader.readUint32(),await e.ioReader.skip(4);const t=e.createStream();return t.codecpar.codecType=0,t.codecpar.codecId=w[this.header.codec],t.timeBase.den=this.header.denominator,t.timeBase.num=this.header.numerator,t.codecpar.width=this.header.width,t.codecpar.height=this.header.height,t.nbFrames=BigInt(Math.floor(this.header.framesCount)),this.onStreamAdd&&this.onStreamAdd(t),0}catch(t){return o.z3(t.message,R,136),e.ioReader.error}}async readAVPacket(e,t){try{const r=e.getStreamByMediaType(0);if(!r)return s.LR;{const a=e.ioReader.getPos(),o=await e.ioReader.readUint32(),s=await e.ioReader.readUint64(),h=(0,c.sY)(o);(0,m.NX)(t,h,o),await e.ioReader.readBuffer(o,(0,n.JW)(h,o)),d.M[17](t+56,a),d.M[17](t+8,s),d.M[17](t+16,s),d.M[15](t+76,this.header.denominator),d.M[15](t+72,this.header.numerator),d.M[15](t+32,r.index),r.startTime===u.Dh&&(r.startTime=i.f[17](t+8)||i.f[17](t+16))}return 0}catch(t){return-1048576!==e.ioReader.error?(o.z3(`read packet error, ${t}`,R,173),s.LR):e.ioReader.error}}async seek(e,t,r,a){return BigInt(s.E$)}getAnalyzeStreamsCount(){return 1}}}}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[70],{85947:(t,e,i)=>{i.d(e,{A:()=>s});var n=i(134);class s{constructor(){(0,n.A)(this,"type",-1),(0,n.A)(this,"onStreamAdd",void 0)}async destroy(t){}}},78070:(t,e,i)=>{i.r(e),i.d(e,{default:()=>l});var n=i(134),s=i(50932),r=i(4624),u=i(9705),a=i(85947),h=i(14686),c=i(37837),d=i(71517),o=i(72739),f=i(50011),g=i(54825);class l extends a.A{constructor(){super(),(0,n.A)(this,"type",19),(0,n.A)(this,"queue",void 0),(0,n.A)(this,"index",void 0)}init(t){this.queue=[]}async readChunk(t){let e="";const i=t.ioReader.getPos();for(;;){const i=await t.ioReader.readLine();if(""===i)break;e+=i+"\n"}return{chunk:e.trim(),pos:i}}async readHeader(t){const e=t.createStream();e.codecpar.codecId=94225,e.codecpar.codecType=3,e.timeBase.den=1e3,e.timeBase.num=1,this.index=0;let i=BigInt(0);try{for(;;){const{chunk:n,pos:s}=await this.readChunk(t);if(""===n)continue;const r=n.split("\n");let u=r.shift().trim(),a=r.shift().split(/--?>/);const h=(0,g.t)(a[0]),c=(0,g.t)(a[1]);if(c<=h)continue;const d=r.join("\n").trim();if(!d)continue;e.nbFrames++,e.duration=c;const f={identifier:u,context:d,startTs:h,endTs:c,pos:s};h>=i?(this.queue.push(f),i=h):o._(this.queue,f,(t=>t.startTs<f.startTs?1:-1))}}catch(t){return 0}}async readAVPacket(t,e){if(!this.queue.length)return u.LR;if(this.index>=this.queue.length)return-1048576;const i=t.streams.find((t=>3===t.codecpar.codecType)),n=this.queue[this.index++];if(s.M[15](e+32,i.index),s.M[15](e+76,i.timeBase.den),s.M[15](e+72,i.timeBase.num),s.M[17](e+16,n.startTs),s.M[17](e+8,n.startTs),s.M[17](e+48,n.endTs-n.startTs),n.identifier){const t=f.encode(n.identifier),i=(0,c.sY)(t.length);(0,h.lW)(i,t.length,t),(0,d.Ow)(e,16,i,t.length)}const r=f.encode(n.context),a=(0,c.sY)(r.length);return(0,h.lW)(a,r.length,r),(0,d.NX)(e,a,r.length),0}async seek(t,e,i,n){if(2&n)return BigInt(u.E$);if(i<=BigInt(0))return this.index=0,BigInt(0);const s=o.El(this.queue,(t=>t.startTs>i?-1:1));if(s>=0){for(r.Yz(`seek in cues, found index: ${s}, pts: ${this.queue[s].startTs}, pos: ${this.queue[s].pos}`,"src/avformat/formats/ISubRipFormat.ts",201),this.index=Math.max(s-1,0);this.index>0&&(this.queue[this.index-1].startTs===this.queue[this.index].startTs||this.queue[this.index-1].endTs>i);)this.index--;return BigInt(0)}return BigInt(u.LR)}getAnalyzeStreamsCount(){return 1}}},54825:(t,e,i)=>{function n(t){if(!(t=t.trim()))return-BigInt(1);let e=t.split(":"),i=BigInt(0);return 3===e.length&&(i+=BigInt(+e.shift().trim())*BigInt(36e5)),i+=BigInt(+e.shift().trim())*BigInt(6e4),e=e.shift().trim().split("."),i+=BigInt(+e.shift().trim())*BigInt(1e3),i+=BigInt(+e.shift().trim()),i}function s(t){if(!(t=t.trim()))return-BigInt(1);let e=t.split(":"),i=BigInt(0);return 3===e.length&&(i+=BigInt(+e.shift().trim())*BigInt(36e5)),i+=BigInt(+e.shift().trim())*BigInt(6e4),e=e.shift().trim().split(","),i+=BigInt(+e.shift().trim())*BigInt(1e3),i+=BigInt(+e.shift().trim()),i}i.d(e,{j:()=>n,t:()=>s})}}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[791],{85947:(e,a,t)=>{t.d(a,{A:()=>s});var r=t(134);class s{constructor(){(0,r.A)(this,"type",-1),(0,r.A)(this,"onStreamAdd",void 0)}async destroy(e){}}},3791:(e,a,t)=>{t.r(a),t.d(a,{default:()=>l});var r=t(134),s=t(61499),i=t(50932),c=t(4624),n=t(9705),o=t(85947),d=t(14686),A=t(37837),u=t(71517),f=t(35531),M=t(95644);const h="src/avformat/formats/IWavFormat.ts";class l extends o.A{constructor(){super(),(0,r.A)(this,"type",16),(0,r.A)(this,"dataSize",void 0),(0,r.A)(this,"sampleCount",void 0),(0,r.A)(this,"pcmStartPos",void 0),(0,r.A)(this,"currentPts",void 0)}init(e){e.ioReader.setEndian(!1)}async readHeader(e){const a=await e.ioReader.readString(4);switch(a){case"RIFF":case"RF64":case"BW64":break;case"RIFX":e.ioReader.setEndian(!0);break;default:return c.z3("the file format is not wav",h,73),n.LR}await e.ioReader.skip(4);const t=await e.ioReader.readString(4);if("WAVE"!==t)return c.z3(`invalid start code ${t} in RIFF header`,h,83),n.LR;if("RF64"===a||"BW64"===a){if("ds64"!==await e.ioReader.readString(4))return n.LR;const a=await e.ioReader.readUint32();if(a<24)return n.LR;if(await e.ioReader.skip(8),this.dataSize=await e.ioReader.readUint64(),this.sampleCount=await e.ioReader.readUint64(),this.dataSize<0||this.sampleCount<0)return c.z3("negative data_size and/or sample_count in ds64",h,103),n.LR;await e.ioReader.skip(a-24)}const r=e.createStream(),i=await e.ioReader.fileSize();for(;e.ioReader.getPos()<i;){const a=await e.ioReader.readString(4),t=await e.ioReader.readUint32();if("fmt "===a){let a=await(0,f.y)(e.ioReader,r.codecpar[s.o9],t);if(a<0)return a}else if("data"===a){if(this.pcmStartPos=e.ioReader.getPos(),this.dataSize||(this.dataSize=BigInt(Math.floor(t))),this.pcmStartPos+this.dataSize===i)break;await e.ioReader.seek(this.pcmStartPos+this.dataSize)}else{if(this.pcmStartPos+this.dataSize===i)break;await e.ioReader.seek(e.ioReader.getPos()+BigInt(Math.floor(t)))}}return this.sampleCount||(this.sampleCount=(this.dataSize<<BigInt(3))/BigInt(r.codecpar.chLayout.nbChannels*(0,M.MZ)(r.codecpar.codecId))),r.timeBase.den=r.codecpar.sampleRate,r.timeBase.num=1,this.sampleCount&&(r.duration=this.sampleCount),this.currentPts=BigInt(0),await e.ioReader.seek(this.pcmStartPos),0}async readAVPacket(e,a){const t=e.streams.find((e=>e.codecpar.codecType=1));try{const r=1024*t.codecpar.chLayout.nbChannels*(0,M.MZ)(t.codecpar.codecId)>>>3,s=(0,A.sY)(r);return(0,u.NX)(a,s,r),i.M[17](a+16,this.currentPts),i.M[17](a+8,this.currentPts),i.M[17](a+56,e.ioReader.getPos()),await e.ioReader.readBuffer(r,(0,d.JW)(s,r)),i.M[15](a+32,t.index),i.M[15](a+76,t.timeBase.den),i.M[15](a+72,t.timeBase.num),this.currentPts+=BigInt(1024),0}catch(a){return-1048576!==e.ioReader.error?(c.z3(`read packet error, ${a}`,h,191),n.LR):e.ioReader.error}}async seek(e,a,t,r){const s=e.ioReader.getPos();if(2&r){const i=await e.ioReader.fileSize();return i<=BigInt(0)?BigInt(n.E$):(t<BigInt(0)?t=BigInt(0):t>i&&(t=i),await e.ioReader.seek(t),4&r||(this.currentPts=(t-this.pcmStartPos<<BigInt(3))/BigInt(a.codecpar.chLayout.nbChannels*(0,M.MZ)(a.codecpar.codecId))),s)}{const r=this.pcmStartPos+(t*BigInt(a.codecpar.chLayout.nbChannels*(0,M.MZ)(a.codecpar.codecId))>>BigInt(3));return await e.ioReader.seek(r),this.currentPts=t,s}}getAnalyzeStreamsCount(){return 1}}},35531:(e,a,t)=>{t.d(a,{y:()=>M});var r=t(63939),s=t(50932),i=t(4624),c=t(9705),n=t(53260),o=t(95644),d=t(37837),A=t(14686),u=t(39381);const f="src/avformat/formats/riff/iriff.ts";async function M(e,a,t){if(t<14)return i.z3("wav format size < 14",f,36),c.LR;s.M[15](a,1);const M=await e.readUint16();let h=await e.readUint16();const l=await e.readUint32();let R=8*await e.readUint32();const m=await e.readUint16();if(s.M[15](a+136,l),s.M[15](a+140,m),14===t?s.M[15](a+40,8):s.M[15](a+40,await e.readUint16()),65534===M?s.M[8](a+8,0):(s.M[8](a+8,M),s.M[15](a+4,function(e,a){let t=n.g[e];return t?(65541===t?t=(0,o.uU)(a,!1,!1,-2):65557===t&&(t=(0,o.uU)(a,!0,!1,0)),69633===t&&8===a&&(t=69676),t):0}(M,r.f[15](a+40)))),t>=18&&357!==M){let i=await e.readUint16();t-=18,i=Math.min(t,i),i>=22&&65534===M&&(await e.skip(22),i-=22,t-=22),i>0&&(s.M[20](a+12,(0,d.sY)(i)),s.M[15](a+16,i),await e.readBuffer(i,(0,A.JW)(r.f[20](a+12),i)),t-=i),t>0&&await e.skip(t)}else if(357===M&&t>=32){t-=4,s.M[20](a+12,(0,d.sY)(t)),s.M[15](a+16,t),await e.readBuffer(t,(0,A.JW)(r.f[20](a+12),t));const i=u.E3(r.f[20](a+12)+4);if(s.M[15](a+136,u.Y0(r.f[20](a+12)+12)),h=0,R=0,t<8+20*i)return c.LR;for(let e=0;e<i;e++)h+=r.f[2](r.f[20](a+12)+(8+20*e+17))}return s.M[17](a+32,BigInt(R)),r.f[15](a+136)<0?(i.z3(`Invalid sample rate: ${r.f[15](a+136)}`,f,116),c.LR):(86065===r.f[15](a+4)&&(h=0,s.M[15](a+136,0)),69643==r.f[15](a+4)&&r.f[15](a+136)&&s.M[15](a+40,Number(BigInt.asIntN(32,r.f[17](a+32)))/r.f[15](a+136)),h!=r.f[15](a+116)&&(s.M[15](a+112,0),s.M[15](a+116,h)),0)}},53260:(e,a,t)=>{t.d(a,{g:()=>s,n:()=>i});var r=t(79682);const s={1:65541,2:69638,3:65557,6:65543,7:65542,10:86052,16:69664,17:69633,23:69664,32:69646,34:86037,49:86046,50:86046,56:73728,66:86068,69:69643,20:69643,64:69643,97:69635,98:69634,100:69643,105:69633,117:86079,131:86069,255:86018,273:86068,5632:86018,5634:86065,8192:86019},i={[(0,r.A)("H264")]:27,[(0,r.A)("h264")]:27,[(0,r.A)("X264")]:27,[(0,r.A)("x264")]:27,[(0,r.A)("avc1")]:27,[(0,r.A)("DAVC")]:27,[(0,r.A)("SMV2")]:27,[(0,r.A)("VSSH")]:27,[(0,r.A)("Q264")]:27,[(0,r.A)("V264")]:27,[(0,r.A)("GAVC")]:27,[(0,r.A)("UMSV")]:27,[(0,r.A)("tshd")]:27,[(0,r.A)("INMC")]:27,[(0,r.A)("FMP4")]:12,[(0,r.A)("DIVX")]:12,[(0,r.A)("DX50")]:12,[(0,r.A)("XVID")]:12,[(0,r.A)("MP4S")]:12,[(0,r.A)("M4S2")]:12,[(0,r.A)("DIVX")]:12,4:12,[(0,r.A)("ZMP4")]:12,[(0,r.A)("DIV1")]:12,[(0,r.A)("BLZ0")]:12,[(0,r.A)("mp4v")]:12,[(0,r.A)("UMP4")]:12,[(0,r.A)("WV1F")]:12,[(0,r.A)("SEDG")]:12,[(0,r.A)("RMP4")]:12,[(0,r.A)("3IV2")]:12,[(0,r.A)("WAWV")]:12,[(0,r.A)("FFDS")]:12,[(0,r.A)("FVFW")]:12,[(0,r.A)("DCOD")]:12,[(0,r.A)("MVXM")]:12,[(0,r.A)("PM4V")]:12,[(0,r.A)("SMP4")]:12,[(0,r.A)("DXGM")]:12,[(0,r.A)("VIDM")]:12,[(0,r.A)("M4T3")]:12,[(0,r.A)("GEOX")]:12,[(0,r.A)("G264")]:12,[(0,r.A)("HDX4")]:12,[(0,r.A)("DM4V")]:12,[(0,r.A)("DMK2")]:12,[(0,r.A)("DYM4")]:12,[(0,r.A)("DIGI")]:12,[(0,r.A)("EPHV")]:12,[(0,r.A)("EM4A")]:12,[(0,r.A)("M4CC")]:12,[(0,r.A)("SN40")]:12,[(0,r.A)("VSPX")]:12,[(0,r.A)("ULDX")]:12,[(0,r.A)("GEOV")]:12,[(0,r.A)("SIPP")]:12,[(0,r.A)("SM4V")]:12,[(0,r.A)("XVIX")]:12,[(0,r.A)("DreX")]:12,[(0,r.A)("QMP4")]:12,[(0,r.A)("PLV1")]:12,[(0,r.A)("GLV4")]:12,[(0,r.A)("GMP4")]:12,[(0,r.A)("MNM4")]:12,[(0,r.A)("GTM4")]:12,[(0,r.A)("MPG4")]:14,[(0,r.A)("MP41")]:14,[(0,r.A)("MP42")]:15,[(0,r.A)("DIV2")]:15,[(0,r.A)("MP43")]:16,[(0,r.A)("DIV3")]:16,[(0,r.A)("MPG3")]:16,[(0,r.A)("DIV5")]:16,[(0,r.A)("DIV6")]:16,[(0,r.A)("DIV4")]:16,[(0,r.A)("DVX3")]:16,[(0,r.A)("AP41")]:16,[(0,r.A)("COL1")]:16,[(0,r.A)("COL0")]:16,[(0,r.A)("VP80")]:139,[(0,r.A)("VP90")]:167}},79682:(e,a,t)=>{t.d(a,{A:()=>i});var r=t(4624);const s="src/avformat/function/mktagle.ts";function i(e){4!==e.length&&r.R8(`tag length is not 4, tag: ${e}`,s,30);let a=0;for(let t=3;t>=0;t--)a=a<<8|e.charCodeAt(t);return a}},95644:(e,a,t)=>{function r(e,a,t,r){if(e<=0||e>64)return 0;if(a)switch(e){case 32:return t?65556:65557;case 64:return t?65558:65559;default:return 0}else if(e+=7,r&1<<(e>>>=3)-1)switch(e){case 1:return 65540;case 2:return t?65537:65536;case 3:return t?65549:65548;case 4:return t?65545:65544;case 8:return t?65568:65567;default:return 0}else switch(e){case 1:return 65541;case 2:return t?65539:65538;case 3:return t?65551:65550;case 4:return t?65547:65546;default:return 0}}function s(e){switch(e){case 69649:return 2;case 69648:return 3;case 69647:case 69633:case 69632:case 69645:case 69638:return 4;default:return function(e){switch(e){case 86070:case 86071:case 69674:case 69644:case 69678:case 69651:case 69661:case 69677:case 69655:case 69664:case 69636:case 69675:case 69660:case 69646:case 69670:return 4;case 86089:case 86090:case 86091:case 86092:case 65543:case 65542:case 65571:case 65540:case 65563:case 65572:case 65541:case 81924:case 81926:return 8;case 65537:case 65566:case 65536:case 65554:case 65539:case 65538:return 16;case 65552:case 65549:case 65548:case 65564:case 65551:case 65550:return 24;case 65545:case 65544:case 65565:case 65547:case 65546:case 65556:case 65557:case 65570:case 65569:return 32;case 65558:case 65559:case 65568:case 65567:return 64;default:return 0}}(e)}}t.d(a,{MZ:()=>s,uU:()=>r})}}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[808],{85947:(t,e,s)=>{s.d(e,{A:()=>h});var i=s(134);class h{constructor(){(0,i.A)(this,"type",-1),(0,i.A)(this,"onStreamAdd",void 0)}async destroy(t){}}},95808:(t,e,s)=>{s.r(e),s.d(e,{default:()=>m});var i=s(134),h=s(63939),r=s(50932),n=s(9705),a=s(85947),u=s(14686),o=s(37837),d=s(71517),c=s(95335),p=s(92647),l=s(59166),f=s(77231),b=s(37246),g=s(23991),y=s(37805);const A={framerate:{num:30,den:1}};class m extends a.A{constructor(t={}){super(),(0,i.A)(this,"type",12),(0,i.A)(this,"options",void 0),(0,i.A)(this,"currentDts",void 0),(0,i.A)(this,"currentPts",void 0),(0,i.A)(this,"step",void 0),(0,i.A)(this,"slices",void 0),(0,i.A)(this,"naluPos",void 0),(0,i.A)(this,"queue",void 0),(0,i.A)(this,"bitReader",void 0),(0,i.A)(this,"sliceType",void 0),(0,i.A)(this,"naluType",void 0),(0,i.A)(this,"poc",void 0),(0,i.A)(this,"pocTid0",void 0),(0,i.A)(this,"sps",void 0),(0,i.A)(this,"naluReader",void 0),this.options=c.X$({},A,t)}init(t){t.ioReader&&t.ioReader.setEndian(!1),this.slices=[],this.queue=[],this.bitReader=new b.A(500),this.naluReader=new y.A}async destroy(t){if(this.queue.length){for(let t=0;t<this.queue.length;t++)(0,d.Qe)(this.queue[t].avpacket);this.queue.length=0}}isFrameNalu(t){return(t[1===t[2]?4:5]>>>3&31)<12}async readNaluFrame(t){let e=!1;const s=this.slices;for(this.slices=[],s.length&&(e=this.isFrameNalu(s[0]));;){const i=await this.naluReader.read(t.ioReader);if(!i)return s;const h=i[1===i[2]?4:5]>>>3&31;if(this.isFrameNalu(i))if(e){if(i[1===i[2]?5:6]>>>7)return this.slices.push(i),s;s.push(i)}else s.push(i),e=!0;else{if(e&&(20===h||19===h||15===h||14===h||16===h||12===h||13===h))return this.slices.push(i),s;s.push(i)}}}async readHeader(t){const e=t.createStream();for(e.codecpar.codecType=0,e.codecpar.codecId=196,e.timeBase.den=f.SF,e.timeBase.num=1,e.codecpar.bitFormat=2,this.currentDts=BigInt(0),this.currentPts=BigInt(0),this.naluPos=BigInt(0),this.poc=0,this.pocTid0=0,this.step=BigInt(Math.floor(f.SF/this.options.framerate.num*this.options.framerate.den));;){const s=await this.readNaluFrame(t);if(!s.length)return-1048576;const i=(0,p.A)(Uint8Array,s),n=(0,p.A)(Uint8Array,s.filter((t=>{const e=t[1===t[2]?4:5]>>>3&31;return 14===e||15===e||16===e})));if(n){e.codecpar.extradata=(0,o.sY)(n.length),(0,u.lW)(e.codecpar.extradata,n.length,n),e.codecpar.extradataSize=n.length;const a=s.find((t=>15==(t[1===t[2]?4:5]>>>3&31)));l.QA(e,a),this.sps=l.wf(a);const c=(0,d._5)(),p=(0,o.sY)(i.length);(0,u.lW)(p,i.length,i),(0,d.NX)(c,p,i.length),r.M[17](c+56,this.naluPos),this.naluPos+=BigInt(Math.floor(i.length)),r.M[17](c+16,this.currentDts),this.currentDts+=this.step,r.M[17](c+8,this.currentPts),this.currentPts+=this.step,r.M[15](c+32,e.index),r.M[15](c+36,1|h.f[15](c+36)),r.M[15](c+72,e.timeBase.num),r.M[15](c+76,e.timeBase.den),r.M[15](c+80,2),t.interval.packetBuffer.push(c);break}this.naluPos+=BigInt(Math.floor(i.length))}return 0}computePoc(t,e,s,i){this.bitReader.reset(),this.bitReader.appendBuffer(s.subarray(0,500)),i&&this.bitReader.readU1();const h=this.bitReader.readU1(),r=this.bitReader.readU1();let n=0;h&&(n=this.bitReader.readU1()),this.bitReader.readU1()&&this.bitReader.readU1(),g.xb(this.bitReader);const a=this.bitReader.readU(this.sps.sps_log2_max_pic_order_cnt_lsb_minus4+4);n&&g.xb(this.bitReader);for(let t=0;t<8*this.sps.sps_num_extra_ph_bytes;t++)this.sps.sps_extra_ph_bit_present_flag[t]&&this.bitReader.readU1();let u=0,o=0;this.sps.sps_poc_msb_cycle_flag&&(o=this.bitReader.readU1(),o&&(u=this.bitReader.readU(this.sps.sps_poc_msb_cycle_len_minus1+1)));const d=1<<this.sps.sps_log2_max_pic_order_cnt_lsb_minus4+4;let c=0;if(8===t||7===t)c=o?u*d:0;else{const t=this.pocTid0,e=t&d-1,s=t-e;c=o?u*d:a<e&&e-a>=d/2?s+d:a>e&&a-e>d/2?s-d:s}this.poc=c+a,0!=e||r||2===t||3===t||(this.pocTid0=this.poc)}async readAVPacket_(t,e){const s=t.getStreamByMediaType(0),i=await this.readNaluFrame(t);if(!i.length)return-1048576;this.sliceType=-1;let n=!1,a=!0;i.forEach((t=>{const e=1===t[2]?t[4]:t[5],s=e>>>3&31,i=(7&e)-1;15===s&&(this.sps=l.wf(t)),8!==s&&7!==s||(n=!0),19===s&&this.computePoc(s,i,t.subarray(1===t[2]?5:6),!1),s<14&&a&&(a=!1,this.naluType=s,t[1===t[2]?5:6]>>>7&&this.computePoc(s,i,t.subarray(1===t[2]?5:6),!0))}));const c=(0,p.A)(Uint8Array,i),f=(0,o.sY)(c.length);return(0,u.lW)(f,c.length,c),(0,d.NX)(e,f,c.length),r.M[17](e+56,this.naluPos),this.naluPos+=BigInt(Math.floor(c.length)),r.M[17](e+16,this.currentDts),this.currentDts+=this.step,r.M[15](e+32,s.index),r.M[15](e+72,s.timeBase.num),r.M[15](e+76,s.timeBase.den),r.M[15](e+80,2),n&&r.M[15](e+36,1|h.f[15](e+36)),0}async readAVPacket(t,e){let s=this.queue.length;const i=()=>{this.queue.length>1&&this.queue.sort(((t,e)=>t.poc-e.poc>0?1:-1));for(let t=0;t<this.queue.length;t++)r.M[17](this.queue[t].avpacket+8,this.currentPts),this.currentPts+=this.step;this.queue.length>1&&this.queue.sort(((t,e)=>h.f[17](t.avpacket+16)-h.f[17](e.avpacket+16)>BigInt(0)?1:-1)),this.queue.length&&((0,d.rN)(e,this.queue[0].avpacket),(0,d.Qe)(this.queue[0].avpacket));for(let e=1;e<this.queue.length;e++)t.interval.packetBuffer.push(this.queue[e].avpacket);this.queue.length=0};for(;;){const e=(0,d._5)();let r=await this.readAVPacket_(t,e);if(r<0)return(0,d.Qe)(e),this.queue.length?(i(),0):r;if(1&h.f[15](e+36)||9===this.naluType||1===this.sliceType||2===this.sliceType){if(1===s||(9===this.naluType||1&h.f[15](e+36))&&this.queue.length)return i(),this.queue.push({avpacket:e,poc:this.poc}),0;this.queue.push({avpacket:e,poc:this.poc}),s++}else this.queue.push({avpacket:e,poc:this.poc})}}async seek(t,e,s,i){return BigInt(n.E$)}getAnalyzeStreamsCount(){return 1}}},37805:(t,e,s)=>{s.d(e,{A:()=>n});var i=s(134),h=s(60264),r=s(92647);class n{constructor(){(0,i.A)(this,"buffer",void 0),(0,i.A)(this,"pos",void 0),(0,i.A)(this,"end",void 0),(0,i.A)(this,"ended",void 0),this.buffer=new Uint8Array(102400),this.pos=0,this.end=0,this.ended=!1}async read(t){if(this.ended&&this.pos>=this.end)return;const e=[];if(this.pos<this.end-4){let t=h.Ky(this.buffer.subarray(this.pos,this.end-4),3);if(t.offset>-1){const e=this.buffer.slice(this.pos,this.pos+t.offset);return this.pos+=t.offset,e}e.push(this.buffer.slice(this.pos,this.end-4)),this.buffer.copyWithin(0,this.end-4,this.end),this.pos=0,this.end=4}for(;;){if(!this.ended&&this.end<this.buffer.length)try{const e=await t.readToBuffer(this.buffer.length-this.end,this.buffer.subarray(this.end));this.end+=e}catch(t){if(this.ended=!0,this.pos>=this.end)return e.length?(0,r.A)(Uint8Array,e):null}let s=h.Ky(this.buffer.subarray(this.pos,this.end-4),e.length?0:3);if(s.offset>-1)return e.push(this.buffer.slice(this.pos,this.pos+s.offset)),this.pos+=s.offset,(0,r.A)(Uint8Array,e);if(this.ended)return e.push(this.buffer.slice(this.pos,this.end)),this.pos=this.end=0,(0,r.A)(Uint8Array,e);e.push(this.buffer.slice(this.pos,this.end-4)),this.buffer.copyWithin(0,this.end-4,this.end),this.pos=0,this.end=4}}reset(){this.pos=0,this.end=0,this.ended=!1}}}}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[839],{85947:(e,a,t)=>{t.d(a,{A:()=>r});var i=t(134);class r{constructor(){(0,i.A)(this,"type",-1),(0,i.A)(this,"onStreamAdd",void 0)}async destroy(e){}}},6839:(e,a,t)=>{t.r(a),t.d(a,{default:()=>S});var i=t(134),r=t(14686),s=t(61499),o=t(63939),n=t(50932),d=(t(9599),t(4624)),c=t(85947),f=t(37837),m=t(71517),p=t(77231),g=t(50011),l=t(64093),h=t(44328),u=t(31608),R=t(43607),w=t(72739),x=t(19028),k=t(75294),I=t(9705);const B="src/avformat/formats/IMp3Format.ts";class S extends c.A{constructor(){super(),(0,i.A)(this,"type",14),(0,i.A)(this,"context",void 0)}init(e){e.ioReader&&e.ioReader.setEndian(!0),this.context={firstFramePos:p.Dh,isVBR:!1,hasID3v1:!1,id3v2:{version:p.N_,revision:p.N_,flags:p.N_},fileSize:BigInt(0)}}async readHeader(e){const a=e.createStream();a.codecpar.codecId=86017,a.codecpar.codecType=1,a.startTime=BigInt(0),a.firstDTS=BigInt(0);const t={frameHeader:new k.Vz,nbFrame:BigInt(0),tocIndexes:[],nextDTS:BigInt(0),frameLength:0};a.privData=t;const i=a.metadata={},s=await e.ioReader.fileSize();if(1&e.ioReader.flags&&s>u.c1&&(await e.ioReader.seek(s-BigInt(u.c1)),"TAG"===await e.ioReader.readString(3))){let a=await e.ioReader.readBuffer(30);i.title=g.decode(a).replace(/\s/g,""),a=await e.ioReader.readBuffer(30),i.artist=g.decode(a).replace(/\s/g,""),a=await e.ioReader.readBuffer(30),i.album=g.decode(a).replace(/\s/g,""),a=await e.ioReader.readBuffer(4),i.date=g.decode(a).replace(/\s/g,""),a=await e.ioReader.readBuffer(30),i.comment=g.decode(a).replace(/\s/g,""),0===a[28]&&0!==a[29]&&(i.track=a[29]+""),i.genre=await e.ioReader.readUint8(),this.context.hasID3v1=!0}if(await e.ioReader.seek(BigInt(0)),"ID3"===await e.ioReader.peekString(3)){await e.ioReader.skip(3),this.context.id3v2.version=await e.ioReader.readUint8(),this.context.id3v2.revision=await e.ioReader.readUint8(),this.context.id3v2.flags=await e.ioReader.readUint8();const a=(127&await e.ioReader.readUint8())<<21|(127&await e.ioReader.readUint8())<<14|(127&await e.ioReader.readUint8())<<7|127&await e.ioReader.readUint8();await x.q(e.ioReader,a,this.context.id3v2,i)}for(this.context.firstFramePos=e.ioReader.getPos();65504&~await e.ioReader.peekUint16();)await e.ioReader.skip(1);this.context.firstFramePos!==e.ioReader.getPos()&&(d.R8(`skipping ${e.ioReader.getPos()-this.context.firstFramePos} bytes of junk at ${this.context.firstFramePos}`,B,171),this.context.firstFramePos=e.ioReader.getPos()),a.codecpar.extradataSize=4,a.codecpar.extradata=(0,f.sY)(a.codecpar.extradataSize),await e.ioReader.peekBuffer(a.codecpar.extradataSize,(0,r.JW)(a.codecpar.extradata,a.codecpar.extradataSize)),k.qg(t.frameHeader,await e.ioReader.readUint32()),a.codecpar.profile=l.Au(t.frameHeader.layer),a.codecpar.frameSize=l.hG(t.frameHeader.version,t.frameHeader.layer),a.codecpar.sampleRate=l.Y2(t.frameHeader.version,t.frameHeader.samplingFrequency),a.timeBase.num=1,a.timeBase.den=a.codecpar.sampleRate;const o=3===t.frameHeader.mode?1:2;a.codecpar.chLayout.nbChannels=o;const n=BigInt(Math.floor(l.oz(t.frameHeader.version,t.frameHeader.layer,t.frameHeader.bitrateIndex))),c=k.CM(t.frameHeader,a.codecpar.sampleRate),m=e.ioReader.getPos();await e.ioReader.skip([[0,9,17],[0,0,0],[0,9,17],[0,17,32]][t.frameHeader.version][a.codecpar.chLayout.nbChannels]);const p=await e.ioReader.readString(4);if("Xing"===p||"Info"===p){this.context.isVBR=!0;const r=await e.ioReader.readUint32();1&r&&(t.nbFrame=BigInt(Math.floor(await e.ioReader.readUint32()))),2&r&&(this.context.fileSize=BigInt(Math.floor(await e.ioReader.readUint32())));const o=s>=m?s-m:BigInt(0);if(o&&this.context.fileSize){const e=R.jk(o,this.context.fileSize),a=R.T9(o,this.context.fileSize)-e;o>this.context.fileSize&&a>e>>BigInt(4)?(t.nbFrame=BigInt(0),d.R8("invalid concatenated file detected - using bitrate for duration",B,224)):a>e>>BigInt(4)&&d.R8("filesize and duration do not match (growing file?)",B,227)}if(a.duration=t.nbFrame*BigInt(0|a.codecpar.frameSize),4&r)for(let i=0;i<u.W8;i++){const r=await e.ioReader.readUint8(),s=this.context.fileSize*BigInt(Math.floor(r))/BigInt(256),o={dts:a.duration/BigInt(u.W8)*BigInt(Math.floor(i)),pos:s};t.tocIndexes.push(o)}8&r&&await e.ioReader.skip(4),i.encoder=await e.ioReader.readString(9),this.context.firstFramePos+=BigInt(Math.floor(c))}else await e.ioReader.seek(m),"VBRI"===await e.ioReader.readString(4)?(1===await e.ioReader.readUint16()&&(await e.ioReader.skip(4),this.context.fileSize=BigInt(Math.floor(await e.ioReader.readUint32())),t.nbFrame=BigInt(Math.floor(await e.ioReader.readUint32())),a.duration=t.nbFrame*BigInt(0|a.codecpar.frameSize)),this.context.firstFramePos+=BigInt(Math.floor(c))):(this.context.isVBR=!1,a.codecpar.bitrate=n*BigInt(1e3),t.nbFrame=(s-this.context.firstFramePos-BigInt(u.c1))/BigInt(Math.floor(c)),a.duration=t.nbFrame*BigInt(0|a.codecpar.frameSize),t.frameLength=c,this.context.fileSize=s);for(await e.ioReader.seek(this.context.firstFramePos);65504&~await e.ioReader.peekUint16();)await e.ioReader.skip(1);if(this.context.firstFramePos!==e.ioReader.getPos()&&(d.R8(`skipping ${e.ioReader.getPos()-this.context.firstFramePos} bytes of junk at ${this.context.firstFramePos}`,B,287),this.context.firstFramePos=e.ioReader.getPos()),t.tocIndexes.length)for(let e=0;e<u.W8;e++)t.tocIndexes[e].pos+=this.context.firstFramePos;return 0}async readAVPacket(e,a){const t=e.getStreamByMediaType(1),i=t.privData,c=e.ioReader.getPos();if(this.context.hasID3v1&&c>=this.context.fileSize-BigInt(u.c1))return-1048576;try{k.qg(i.frameHeader,await e.ioReader.peekUint32());let d=this.context.isVBR?k.CM(i.frameHeader,t.codecpar.sampleRate):i.frameLength;n.M[15](a+28,d),n.M[17](a+56,c),n.M[15](a+32,t.index),(0,r.Mr)(a+72,t.timeBase[s.o9],8),n.M[17](a+48,BigInt(0|t.codecpar.frameSize)),n.M[17](a+16,i.nextDTS),n.M[17](a+8,i.nextDTS),n.M[15](a+36,1|o.f[15](a+36)),i.nextDTS+=BigInt(0|t.codecpar.frameSize);const p=(0,f.sY)(d);return(0,m.NX)(a,p,d),await e.ioReader.readBuffer(d,(0,r.JW)(p,d)),0}catch(a){return-1048576!==e.ioReader.error&&d.z3(a.message,B,334),e.ioReader.error}}async syncToFrame(e){let a=p.Dh;const t=e.getStreamByMediaType(1),i=t.privData;for(;;)try{if(!(65504&~await e.ioReader.peekUint16())){a=e.ioReader.getPos(),k.qg(i.frameHeader,await e.ioReader.peekUint32());let r=this.context.isVBR?k.CM(i.frameHeader,t.codecpar.sampleRate):i.frameLength;if(r>512e3){await e.ioReader.skip(1);continue}await e.ioReader.skip(r);let s=0;for(;s<=3&&!(65504&~await e.ioReader.peekUint16());){k.qg(i.frameHeader,await e.ioReader.peekUint32());let a=this.context.isVBR?k.CM(i.frameHeader,t.codecpar.sampleRate):i.frameLength;await e.ioReader.skip(a),s++}if(!(s<3))break;await e.ioReader.seek(a+BigInt(1)),a=p.Dh}await e.ioReader.skip(1)}catch(e){break}a!==p.Dh&&await e.ioReader.seek(a)}async seek(e,a,t,i){const r=e.ioReader.getPos(),s=a.privData;if(2&i){const o=await e.ioReader.fileSize();return o<=BigInt(0)?BigInt(I.E$):(t<BigInt(0)?t=BigInt(0):t>o&&(t=o),await e.ioReader.seek(t),4&i||(await this.syncToFrame(e),a.duration&&o&&(s.nextDTS=t/o*a.duration)),r)}if(a.sampleIndexes.length){let i=w.El(a.sampleIndexes,(e=>e.pts>t?-1:1));if(i>0&&(0,h.k)(t-a.sampleIndexes[i-1].pts,a.timeBase,p.i0)<BigInt(1e4))return d.Yz(`seek in sampleIndexes, found index: ${i}, pts: ${a.sampleIndexes[i-1].pts}, pos: ${a.sampleIndexes[i-1].pos}`,B,443),await e.ioReader.seek(a.sampleIndexes[i-1].pos),s.nextDTS=a.sampleIndexes[i-1].dts,r}if(t===BigInt(0))return await e.ioReader.seek(this.context.firstFramePos),r;if(this.context.isVBR)if(s.tocIndexes.length){const i=s.tocIndexes[Number(BigInt.asIntN(32,t/(a.duration/BigInt(u.W8))))];if(i)d.Yz(`seek in xing toc indexes, pts: ${i.dts}, pos: ${i.pos}`,B,459),await e.ioReader.seek(i.pos),s.nextDTS=i.dts;else{d.Yz("not found any keyframe index, try to seek in bytes",B,464);const i=k.CM(s.frameHeader,a.codecpar.sampleRate),r=t/BigInt(0|a.codecpar.frameSize),o=r*BigInt(Math.floor(i))+this.context.firstFramePos;s.nextDTS=r*BigInt(0|a.codecpar.frameSize),await e.ioReader.seek(o)}}else{d.Yz("not found any keyframe index, try to seek in bytes",B,473);const i=k.CM(s.frameHeader,a.codecpar.sampleRate),r=t/BigInt(0|a.codecpar.frameSize),o=r*BigInt(Math.floor(i))+this.context.firstFramePos;s.nextDTS=r*BigInt(0|a.codecpar.frameSize),await e.ioReader.seek(o)}else{const i=t/BigInt(0|a.codecpar.frameSize),r=i*BigInt(0|s.frameLength)+this.context.firstFramePos;s.nextDTS=i*BigInt(0|a.codecpar.frameSize),await e.ioReader.seek(r)}return await this.syncToFrame(e),r}getAnalyzeStreamsCount(){return 1}}},75294:(e,a,t)=>{t.d(a,{CM:()=>n,Vz:()=>s,qg:()=>o});var i=t(134),r=t(64093);class s{constructor(){(0,i.A)(this,"version",void 0),(0,i.A)(this,"layer",void 0),(0,i.A)(this,"protection",void 0),(0,i.A)(this,"bitrateIndex",void 0),(0,i.A)(this,"samplingFrequency",void 0),(0,i.A)(this,"padding",void 0),(0,i.A)(this,"private",void 0),(0,i.A)(this,"mode",void 0),(0,i.A)(this,"modeExtension",void 0),(0,i.A)(this,"copyright",void 0),(0,i.A)(this,"original",void 0),(0,i.A)(this,"emphasis",void 0)}}function o(e,a){e.version=a>>19&3,e.layer=a>>17&3,e.protection=a>>16&1,e.bitrateIndex=a>>12&15,e.samplingFrequency=a>>10&3,e.padding=a>>9&1,e.mode=a>>6&3,e.modeExtension=a>>4&3,e.copyright=a>>3&1,e.original=a>>2&1,e.emphasis=3&a}function n(e,a){let t=r.oz(e.version,e.layer,e.bitrateIndex);switch(e.layer){case 1:default:t=144e3*t/(a<<(3===e.version?0:1))>>>0,t+=e.padding;break;case 2:t=144e3*t/a>>>0,t+=e.padding;break;case 3:t=12e3*t/a>>>0,t=4*(t+e.padding)}return t}},19028:(e,a,t)=>{t.d(a,{q:()=>o});var i=t(4624);t(50011);const r="src/avformat/formats/mp3/id3v2.ts";function s(e,a){let t="utf-8";return 0===e?t="iso-8859-1":1===e?t="utf-16":2===e&&(t="utf-16be"),new TextDecoder(t).decode(a)}async function o(e,a,t,o){const n=2!==t.version,d=n?10:6;let c=e.getPos()+BigInt(0|a);async function f(){await e.seek(c)}if(n&&64&t.flags){let s=await async function(e,a){let t=0;for(;a--;)t=(t<<7)+(127&await e.readUint8());return t}(e,4);if(4===t.version&&(s-=4),s<0)return i.z3("invalid extended header length",r,92),await f();if(await e.skip(s),(a-=s+4)<0)return i.z3("extended header too long",r,98),await e.seek(c),await f()}for(;a>d;){let t,c;if(n){if(t=await e.readString(4),c=await e.readUint32(),!c){i.z3("invalid frame size",r,112);break}await e.readUint16()}else t=await e.readString(3),c=await e.readUint24();if("APIC"===t)o.poster=await e.readBuffer(c);else if("USLT"===t){const a=await e.readUint8(),t=await e.readString(3),i=await e.readBuffer(c-4);o.lyrics=`${t} ${s(a,i)}`}else if("COMM"===t||"COM"===t){const a=await e.readUint8(),t=await e.readString(3),i=await e.readBuffer(c-4);o.comment=`${t} ${s(a,i)}`}else{let a;switch(a="T"===t[0]?s(await e.readUint8(),await e.readBuffer(c-1)):await e.readBuffer(c),t){case"TIT2":case"TT2":o.title=a;break;case"TPE1":case"TP1":o.artist=a;break;case"TPE2":case"TP2":o.albumArtist=a;break;case"TPOS":o.disc=a;break;case"TCOP":o.copyright=a;break;case"TALB":case"TAL":o.album=a;break;case"TRCK":case"TRK":o.track=a;break;case"TYER":case"TDRL":case"TDRC":o.date=a;break;case"COMM":case"COM":o.comment=a;break;case"TCON":case"TCO":o.genre=a;break;case"TSSE":case"TEN":o.encoder=a;break;case"TCOM":o.composer=a;break;case"TENC":o.encodedBy=a;break;case"TLAN":o.language=a;break;case"TPE3":case"TP3":o.performer=a;break;case"TPUB":o.publisher=a;break;case"TCMP":case"TCP":o.compilation=a;break;case"TDEN":o.creationTime=a;break;case"TSOA":o.albumSort=a;break;case"TSOP":o.artistSort=a;break;case"TSOT":o.titleSort=a;break;case"TIT1":o.grouping=a;break;default:o[t]=a}}a-=c+d}4==t.version&&16&t.flags&&(c+=BigInt(10)),await e.seek(c)}},31608:(e,a,t)=>{t.d(a,{W8:()=>i,c1:()=>r});const i=100,r=128},64093:(e,a,t)=>{t.d(a,{Au:()=>w,He:()=>x,XC:()=>k,Y2:()=>h,hG:()=>u,oz:()=>R});var i=t(77231);const r=[44100,48e3,32e3,0],s=[22050,24e3,16e3,0],o=[11025,12e3,8e3,0],n=[0,1152,1152,384],d=[0,576,1152,384],c=[0,576,1152,384],f=[0,32,64,96,128,160,192,224,256,288,320,352,384,416,448,-1],m=[0,32,48,56,64,80,96,112,128,160,192,224,256,320,384,-1],p=[0,32,40,48,56,64,80,96,112,128,160,192,224,256,320,-1],g=[0,32,48,56,64,80,96,112,128,144,160,176,192,224,256,-1],l=[0,8,16,24,32,40,48,56,64,80,96,112,128,144,160,-1];function h(e,a){switch(e){case 0:return o[a];case 2:return s[a];case 3:return r[a]}return i.N_}function u(e,a){switch(e){case 0:return c[a];case 2:return d[a];case 3:return n[a]}return i.N_}function R(e,a,t){switch(a){case 1:switch(e){case 0:case 2:return l[t];case 3:return p[t]}break;case 2:switch(e){case 0:case 2:return l[t];case 3:return m[t]}case 3:switch(e){case 0:case 2:return g[t];case 3:return f[t]}}return i.N_}function w(e){switch(e){case 1:return 34;case 2:return 33;case 3:return 32}return i.N_}const x={32:"Layer1",33:"Layer2",34:"Layer3"};function k(e,a){if(a&&a.length>=4){const t=a[1]>>>3&3,i=(6&a[1])>>1,r=(12&a[2])>>>2,s=3&~(a[3]>>>6)?2:1,o=w(i),n=h(t,r);e.codecpar.profile=o,e.codecpar.sampleRate=n,e.codecpar.chLayout.nbChannels=s}}}}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[854],{85947:(t,e,n)=>{n.d(e,{A:()=>r});var i=n(134);class r{constructor(){(0,i.A)(this,"type",-1),(0,i.A)(this,"onStreamAdd",void 0)}async destroy(t){}}},98854:(t,e,n)=>{n.r(e),n.d(e,{default:()=>m});var i=n(134),r=n(73146),a=n.n(r),o=n(50932),s=n(4624),u=n(9705),c=n(85947),d=n(14686),l=n(37837),h=n(71517),g=n(72739),f=n(50011),p=n(38115);class m extends c.A{constructor(){super(),(0,i.A)(this,"type",21),(0,i.A)(this,"queue",void 0),(0,i.A)(this,"index",void 0)}init(t){this.queue=[]}async readHeader(t){const e=t.createStream();e.codecpar.codecId=94232,e.codecpar.codecType=3,e.timeBase.den=1e3,e.timeBase.num=1;let n="";if(1&t.ioReader.flags){const e=await t.ioReader.fileSize();n=await t.ioReader.readString(Number(BigInt.asIntN(32,e)))}else try{n+=await t.ioReader.readLine()+"\n"}catch(t){}if(f){const t=p.q(n);if(this.queue=t.queue,t.head){const n=a()(t.head),i=f.encode(n);e.codecpar.extradata=(0,l.sY)(i.length),(0,d.lW)(e.codecpar.extradata,i.length,i),e.codecpar.extradataSize=i.length}}return this.index=0,0}async readAVPacket(t,e){if(!this.queue.length)return u.LR;if(this.index>=this.queue.length)return-1048576;const n=t.streams.find((t=>3===t.codecpar.codecType)),i=this.queue[this.index++];o.M[15](e+32,n.index),o.M[15](e+76,n.timeBase.den),o.M[15](e+72,n.timeBase.num),o.M[17](e+16,i.pts),o.M[17](e+8,i.pts),o.M[17](e+48,i.duration);const r=f.encode(i.context),a=(0,l.sY)(r.length);return(0,d.lW)(a,r.length,r),(0,h.NX)(e,a,r.length),0}async seek(t,e,n,i){if(2&i)return BigInt(u.E$);if(n<=BigInt(0))return this.index=0,BigInt(0);const r=g.El(this.queue,(t=>t.pts>n?-1:1));if(r>=0){for(s.Yz(`seek in cues, found index: ${r}, pts: ${this.queue[r].pts}`,"src/avformat/formats/ITtmlFormat.ts",143),this.index=Math.max(r-1,0);this.index>0&&(this.queue[this.index-1].pts===this.queue[this.index].pts||this.queue[this.index-1].pts+this.queue[this.index-1].duration>n);)this.index--;return BigInt(0)}return BigInt(u.LR)}getAnalyzeStreamsCount(){return 1}}},38115:(t,e,n)=>{n.d(e,{q:()=>s});var i=n(79331),r=n(67672),a=n(72739),o=n(54825);function s(t){const e=(0,i.A)(t,{aloneValueName:"context"});if(!e.tt)return{queue:[],head:{}};const n=[];function s(t){let e="";return a.__(t,(t=>{r.Yj(t)?e+=t:t.context?e+=`<${t.tagName}>${t.context}</${t.tagName}>`:e+=`<${t.tagName}/>`})),e}function u(t,e,i){var a;const u=(0,o.j)(e||t.begin);let c=t.context||"",d=t.region||"Default";r.YO(c)&&(c=s(c)),null!==(a=t.span)&&void 0!==a&&a.context&&(t.span.region&&(d=t.span.region),r.Yj(t.span.context)?c+=t.span.context:c+=s(t.span.context)),n.push({context:c,pts:u,region:d,duration:t.dur?(0,o.j)(t.dur):(0,o.j)(i||t.end)-u})}function c(t,e,n){r.YO(t)?a.__(t,(t=>{u(t,e,n)})):u(t,e,n)}return e.tt.body&&e.tt.body.div&&(r.YO(e.tt.body.div)?a.__(e.tt.body.div,(t=>{t.p&&c(t.p,t.begin,t.end)})):e.tt.body.div.p&&c(e.tt.body.div.p,e.tt.body.div.begin,e.tt.body.end)),{queue:n,head:e.tt.head||{}}}},54825:(t,e,n)=>{function i(t){if(!(t=t.trim()))return-BigInt(1);let e=t.split(":"),n=BigInt(0);return 3===e.length&&(n+=BigInt(+e.shift().trim())*BigInt(36e5)),n+=BigInt(+e.shift().trim())*BigInt(6e4),e=e.shift().trim().split("."),n+=BigInt(+e.shift().trim())*BigInt(1e3),n+=BigInt(+e.shift().trim()),n}function r(t){if(!(t=t.trim()))return-BigInt(1);let e=t.split(":"),n=BigInt(0);return 3===e.length&&(n+=BigInt(+e.shift().trim())*BigInt(36e5)),n+=BigInt(+e.shift().trim())*BigInt(6e4),e=e.shift().trim().split(","),n+=BigInt(+e.shift().trim())*BigInt(1e3),n+=BigInt(+e.shift().trim()),n}n.d(e,{j:()=>i,t:()=>r})},79331:(t,e,n)=>{n.d(e,{A:()=>u});var i=n(68632),r=n.n(i),a=n(72739);const o={aloneValueName:"_@attribute"},s=[" ","/",'"',"'","<",">"];function u(t,e=o){t=(t=(t=(t=t.replace(/<!--[\s\S]*?-->/g,"")).replace(/[\n\t\r]/g,"")).replace(/>[ \t]+</g,"><")).replace(/<\?[^>]*\?>/g,"");const n=[];let i=0;function u(t,i){const a=n[n.length-1];a&&(t===e.aloneValueName||null==a.obj[e.aloneValueName]?null==a.obj[t]?a.obj[t]=i:r()(a.obj[t])?a.obj[t].push(i):a.obj[t]=[a.obj[t],i]:a.obj[e.aloneValueName]=[a.obj[e.aloneValueName],{tagName:t,...i}])}function c(e){for(;i<t.length;){if(t[i]===e)return!0;i++}return!1}function d(){l();let e="";for(;i<t.length&&!a.zy(s,t[i]);)e+=t[i],i++;return e}function l(){for(;i<t.length&&/\s|\r|\n/.test(t[i]);)i++}const h=/\s/,g=/'/,f=/"/;function p(){if(i>=t.length)return!0;l();let e=h;'"'!==t[i]&&"'"!=t[i]||(e='"'===t[i]?f:g,i++);let n="";for(;i<t.length;){if(e.test(t[i])){i++;break}n+=t[i],i++}return n}function m(){l();let e="";for(;i<t.length&&"<"!==t[i];)e+=t[i],i++;return e}function b(){for(;"<"===t[i];){const e=i;if(i++,l(),"/"!==t[i]){i=e;break}if(i++,d()===n[n.length-1].tag){if(n.length>1){const t=n.pop();u(t.tag,t.obj)}c(">"),i++,l()}else n.pop(),c(">"),i++,l()}}return function r(){if(i>=t.length)return;let a=i;if(l(),"<"!==t[i])return i=a,u(e.aloneValueName,m()),b(),r();let o=c("<");if(!o)return;a=i,i++;const s=d();if(n.push({obj:{},tag:s,start:a}),function(){for(;l(),">"!==t[i]&&"/"!==t[i];){let t=d();if(!t)break;"="===t[t.length-1]?t=t.substring(0,t.length-1):(c("="),i++),u(t,p())}}(),l(),"/"===t[i]){if(i++,n.length>1){const t=n.pop();u(t.tag,t.obj)}return c(">"),i++,b(),r()}o=c(">"),o&&(i++,l(),"<"!==t[i]&&(u(e.aloneValueName,m()),l()),b(),r())}(),{[n[0].tag]:n[0].obj}}}}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[855],{64436:(e,t,a)=>{a.d(t,{A:()=>c});var s=a(134),r=a(63939),i=(a(77162),a(37837)),n=a(71766);class c{constructor(){(0,s.A)(this,"inCodecpar",void 0),(0,s.A)(this,"inTimeBase",void 0),(0,s.A)(this,"outCodecpar",void 0)}init(e,t){return this.inCodecpar=(0,i.Gy)(168),(0,n.Yi)(this.inCodecpar,e),this.inTimeBase={den:r.f[15](t+4),num:r.f[15](t)},0}destroy(){this.inCodecpar&&((0,n.dn)(this.inCodecpar),this.inCodecpar=0)}}},50848:(e,t,a)=>{a.d(t,{A:()=>b});var s=a(134),r=a(63939),i=a(50932),n=a(77162),c=a(29170),o=a(64436),d=a(14686),h=a(4624),f=a(9705),l=a(77231),p=a(95832),u=a(44328),m=a(37837),g=a(71517),x=a(67672);class b extends o.A{constructor(...e){super(...e),(0,s.A)(this,"streamMuxConfig",void 0),(0,s.A)(this,"caches",void 0)}init(e,t){return super.init(e,t),this.caches=[],this.streamMuxConfig={profile:l.N_,sampleRate:l.N_,channels:l.N_},0}sendAVPacket(e){let t=0,a=r.f[17](e+16)||r.f[17](e+8);const s=(0,d.s3)(r.f[20](e+24),r.f[15](e+28)).slice();for(;t<s.length;){const e=p.Bq(s.subarray(t));if(x.ai(e))return h.z3("AACADTSParser parse failed","src/avformat/bsf/aac/ADTS2RawFilter.ts",81),f.LR;const o={dts:a,buffer:null,extradata:null,duration:l.N_};o.buffer=s.subarray(t+e.headerLength,t+e.headerLength+e.framePayloadLength),this.streamMuxConfig.profile=e.profile,this.streamMuxConfig.sampleRate=e.sampleRate,this.streamMuxConfig.channels=e.channels;const g=r.f[15](this.inCodecpar+48)!==this.streamMuxConfig.profile||r.f[15](this.inCodecpar+136)!==this.streamMuxConfig.sampleRate||r.f[15](this.inCodecpar+116)!==this.streamMuxConfig.channels,b=(0,u.k)(BigInt(Math.floor(1024*(e.numberOfRawDataBlocksInFrame+1)/this.streamMuxConfig.sampleRate*l.SF)),l.KR,this.inTimeBase);if(o.duration=Number(b),g){i.M[15](this.inCodecpar+48,this.streamMuxConfig.profile),i.M[15](this.inCodecpar+136,this.streamMuxConfig.sampleRate),i.M[15](this.inCodecpar+116,this.streamMuxConfig.channels);const e=(0,p.Ij)((0,c.A)(this.inCodecpar,n.A));r.f[20](this.inCodecpar+12)&&(0,m.Eb)(r.f[20](this.inCodecpar+12)),i.M[20](this.inCodecpar+12,(0,m.sY)(e.length)),(0,d.lW)(r.f[20](this.inCodecpar+12),e.length,e),i.M[15](this.inCodecpar+16,e.length),o.extradata=e}this.caches.push(o),t+=e.aacFrameLength,a+=b}return 0}receiveAVPacket(e){if(this.caches.length){(0,g.Up)(e);const t=this.caches.shift(),a=(0,m.sY)(t.buffer.length);if((0,d.lW)(a,t.buffer.length,t.buffer),(0,g.NX)(e,a,t.buffer.length),i.M[17](e+16,t.dts),i.M[17](e+8,t.dts),i.M[17](e+48,BigInt(Math.floor(t.duration))),i.M[15](e+36,1|r.f[15](e+36)),t.extradata){const a=(0,m.sY)(t.extradata.length);(0,d.lW)(a,t.extradata.length,t.extradata),(0,g.Ow)(e,1,a,t.extradata.length)}return 0}return f.LT}reset(){return 0}}},51113:(e,t,a)=>{a.d(t,{A:()=>x});var s=a(134),r=a(63939),i=a(50932),n=a(64436),c=a(14686),o=a(4624),d=a(9705),h=a(77231),f=a(44328),l=a(37837),p=a(71517),u=a(87518),m=a(92647),g=a(67672);class x extends n.A{constructor(...e){super(...e),(0,s.A)(this,"caches",void 0),(0,s.A)(this,"cache",void 0),(0,s.A)(this,"lastDts",void 0)}init(e,t){return super.init(e,t),this.caches=[],0}sendAVPacket(e){let t=0,a=this.lastDts||r.f[17](e+16)||r.f[17](e+8),s=(0,c.s3)(r.f[20](e+24),r.f[15](e+28)).slice(),i=!1,n=!!this.cache;for(n&&(s=(0,m.A)(Uint8Array,[this.cache,s]),this.cache=null);t<s.length;){if(t>s.length-10)return this.cache=s.subarray(t),this.lastDts=a,0;const c=u.R(s.subarray(t));if(g.ai(c))return o.z3("parse ac3 header failed","src/avformat/bsf/ac3/Ac32RawFilter.ts",84),d.LR;const l={dts:a,buffer:null,duration:h.N_};let p=c.frameSize;if(l.buffer=s.subarray(t,t+p),t+p>s.length)return this.cache=s.subarray(t),this.lastDts=a,0;const m=(0,f.k)(BigInt(1536/c.sampleRate*h.SF),h.KR,this.inTimeBase);l.duration=Number(m),this.caches.push(l),t+=p,a+=m,!i&&n&&(i=!0,a=r.f[17](e+16)||r.f[17](e+8))}return this.lastDts=BigInt(0),0}receiveAVPacket(e){if(this.caches.length){(0,p.Up)(e);const t=this.caches.shift(),a=(0,l.sY)(t.buffer.length);return(0,c.lW)(a,t.buffer.length,t.buffer),(0,p.NX)(e,a,t.buffer.length),i.M[17](e+16,t.dts),i.M[17](e+8,t.dts),i.M[17](e+48,BigInt(Math.floor(t.duration))),i.M[15](e+36,1|r.f[15](e+36)),0}return d.LT}reset(){return this.cache=null,this.lastDts=BigInt(0),0}}},7309:(e,t,a)=>{a.d(t,{A:()=>x});var s=a(134),r=a(63939),i=a(50932),n=a(64436),c=a(14686),o=a(4624),d=a(9705),h=a(77231),f=a(44328),l=a(37837),p=a(71517),u=a(43290),m=a(92647),g=a(67672);class x extends n.A{constructor(...e){super(...e),(0,s.A)(this,"caches",void 0),(0,s.A)(this,"cache",void 0),(0,s.A)(this,"lastDts",void 0)}init(e,t){return super.init(e,t),this.caches=[],0}sendAVPacket(e){let t=0,a=this.lastDts||r.f[17](e+16)||r.f[17](e+8),s=(0,c.s3)(r.f[20](e+24),r.f[15](e+28)).slice(),i=!1,n=!!this.cache;for(n&&(s=(0,m.A)(Uint8Array,[this.cache,s]),this.cache=null);t<s.length;){if(t>s.length-6)return this.cache=s.subarray(t),this.lastDts=a,0;const c=u.R(s.subarray(t));if(g.ai(c))return o.z3("parse dts header failed","src/avformat/bsf/dts/Dts2RawFilter.ts",84),d.LR;const l={dts:a,buffer:null,duration:h.N_};let p=c.frameSize;if(l.buffer=s.subarray(t,t+p),t+p>s.length)return this.cache=s.subarray(t),this.lastDts=a,0;const m=(0,f.k)(BigInt(Math.floor(c.sampleBlock*u.u/c.sampleRate*h.SF)),h.KR,this.inTimeBase);l.duration=Number(m),this.caches.push(l),t+=p,a+=m,!i&&n&&(i=!0,a=r.f[17](e+16)||r.f[17](e+8))}return this.lastDts=BigInt(0),0}receiveAVPacket(e){if(this.caches.length){(0,p.Up)(e);const t=this.caches.shift(),a=(0,l.sY)(t.buffer.length);return(0,c.lW)(a,t.buffer.length,t.buffer),(0,p.NX)(e,a,t.buffer.length),i.M[17](e+16,t.dts),i.M[17](e+8,t.dts),i.M[17](e+48,BigInt(Math.floor(t.duration))),i.M[15](e+36,1|r.f[15](e+36)),0}return d.LT}reset(){return this.cache=null,this.lastDts=BigInt(0),0}}},56397:(e,t,a)=>{a.d(t,{A:()=>x});var s=a(134),r=a(63939),i=a(50932),n=a(64436),c=a(14686),o=a(4624),d=a(9705),h=a(77231),f=a(44328),l=a(37837),p=a(71517),u=a(75294),m=a(64093),g=a(92647);class x extends n.A{constructor(...e){super(...e),(0,s.A)(this,"frameHeader",void 0),(0,s.A)(this,"caches",void 0),(0,s.A)(this,"cache",void 0),(0,s.A)(this,"lastDts",void 0)}init(e,t){return super.init(e,t),this.caches=[],this.frameHeader=new u.Vz,0}sendAVPacket(e){let t=0,a=this.lastDts||r.f[17](e+16)||r.f[17](e+8),s=(0,c.s3)(r.f[20](e+24),r.f[15](e+28)).slice(),i=!1,n=!!this.cache;for(n&&(s=(0,g.A)(Uint8Array,[this.cache,s]),this.cache=null);t<s.length;){const c=s[t]<<4|s[t+1]>>4&14;if(4094!==c)return o.z3(`found syncWord not 0xFFE, got: 0x${c.toString(16)}`,"src/avformat/bsf/mp3/Mp32RawFilter.ts",82),d.LR;const l=s[1]>>>3&3,p=(12&s[2])>>>2,g={dts:a,buffer:null,extradata:null,duration:h.N_},x=m.Y2(l,p);u.qg(this.frameHeader,s[t]<<24|s[t+1]<<16|s[t+2]<<8|s[t+3]);let b=u.CM(this.frameHeader,x);if(g.buffer=s.subarray(t,t+b),t+b>s.length){this.cache=s.subarray(t),this.lastDts=a;break}const y=(0,f.k)(BigInt(Math.floor(b/x*h.SF)),h.KR,this.inTimeBase);g.duration=Number(y),this.caches.push(g),t+=b,a+=y,!i&&n&&(i=!0,a=r.f[17](e+16)||r.f[17](e+8))}return this.lastDts=BigInt(0),0}receiveAVPacket(e){if(this.caches.length){(0,p.Up)(e);const t=this.caches.shift(),a=(0,l.sY)(t.buffer.length);return(0,c.lW)(a,t.buffer.length,t.buffer),(0,p.NX)(e,a,t.buffer.length),i.M[17](e+16,t.dts),i.M[17](e+8,t.dts),i.M[17](e+48,BigInt(Math.floor(t.duration))),i.M[15](e+36,1|r.f[15](e+36)),0}return d.LT}reset(){return this.cache=null,this.lastDts=BigInt(0),0}}},85947:(e,t,a)=>{a.d(t,{A:()=>r});var s=a(134);class r{constructor(){(0,s.A)(this,"type",-1),(0,s.A)(this,"onStreamAdd",void 0)}async destroy(e){}}},83855:(e,t,a)=>{a.r(t),a.d(t,{default:()=>W});var s=a(134),r=a(80662),i=a.n(r),n=a(61499),c=a(63939),o=a(50932),d=a(4624),h=a(9705),f=a(51660),l=a(6403),p=a(85947),u=a(71517),m=a(77231),g=a(52071),x=a(44328),b=a(72739),y=a(95335),A=a(64093),I=a(62815),k=a(67659),M=a(59166),R=a(95832),S=a(22576),v=a(87518),B=a(43290),w=a(78887),P=a(37837),U=a(14686),C=a(10662),D=a(92647),L=a(60264),E=a(56397),z=a(75294),N=a(67672),_=a(51113),T=a(7309),F=a(50848);const V="src/avformat/formats/IMpegpsFormat.ts";class W extends p.A{constructor(){super(),(0,s.A)(this,"type",3),(0,s.A)(this,"context",void 0),(0,s.A)(this,"cacheAVPacket",void 0),this.context={headerState:255,psmType:new(i()),pes:new l.xf,slices:new(i()),lastPtsMap:new(i()),imkhCctv:!1,sofdec:!1,ioEnded:!1,paddingPES:null}}init(e){e.ioReader&&e.ioReader.setEndian(!0),this.cacheAVPacket=0}async destroy(e){this.cacheAVPacket&&((0,u.Qe)(this.cacheAVPacket),this.cacheAVPacket=0),b.__(e.streams,(e=>{const t=e.privData;t.filter&&(t.filter.destroy(),t.filter=null)}))}async findNextStartCode(e){let t=255,a=0;for(;a<C.V;){const s=await e.ioReader.readUint8();if(1===t){t=16777215&(t<<8|s);break}t=16777215&(t<<8|s),a++}return a===C.V&&(t=-1),this.context.headerState=t,t}async parsePSM(e){const t=await e.ioReader.readUint16();await e.ioReader.skip(2);const a=await e.ioReader.readUint16();await e.ioReader.skip(a),await e.ioReader.readUint16();let s=t-a-10;for(;s>=4;){const t=await e.ioReader.readUint8(),a=await e.ioReader.readUint8(),r=await e.ioReader.readUint16();this.context.psmType.set(a,t),await e.ioReader.skip(r),s-=r+4}await e.ioReader.readUint32()}async readPES(e){for(;;){const t=await this.findNextStartCode(e);if(t<0)return h.LR;if(442===t||443===t)continue;if(446===t||447===t){const t=await e.ioReader.readUint16();await e.ioReader.skip(t);continue}if(444===t){await this.parsePSM(e);continue}if(!(t>=448&&t<=479||t>=480&&t<=495||445==t||447==t||509==t))continue;const a=await e.ioReader.readUint16();this.context.pes.pos=e.ioReader.getPos()-BigInt(6),this.context.pes.streamId=255&t,this.context.pes.streamType=this.context.psmType[this.context.pes.streamId];const s=new Uint8Array(a+6);return s[0]=0,s[1]=0,s[2]=1,s[3]=this.context.pes.streamId,s[4]=a>>8,s[5]=255&a,await e.ioReader.readBuffer(a,s.subarray(6)),this.context.pes.data=s,t}}createStream(e,t,a,s){let r=0,i=-1;switch(a){case 226:i=0,r=27;break;case 128:i=1,r=86019;break;case 136:i=1,r=86020;break;case 160:i=1,r=65537;break;case 32:i=3,r=94208;break;default:switch(t){case 1:case 2:i=0,r=2;break;case 3:case 4:i=1,r=86017;break;case 15:i=1,r=86018;break;case 16:i=0,r=12;break;case 27:i=0,r=27;break;case 36:i=0,r=173;break;case 51:i=0,r=196;break;case 129:i=1,r=86019;break;case 144:i=1,r=65543;break;case 145:i=1,r=65542;break;case 447:i=2,r=98312;break;default:if(s>=480&&s<=495)i=0,r=2;else if(s>=448&&s<=479)i=1,r=86017;else if(s>=128&&s<=135)i=1,r=86019;else if(s>=136&&s<=143||s>=152&&s<=159)i=1,r=86020;else if(s>=176&&s<=191)i=1,r=86060;else if(s>=192&&s<=207)i=1,r=86019;else if(s>=32&&s<=63)i=3,r=94208;else{if(!(s>=64853&&s<=64863))return;i=0,r=70}}}const c=e.createStream();c.codecpar.codecType=i,c.codecpar.codecId=r,c.timeBase.den=9e4,c.timeBase.num=1;const o=c.privData={streamId:a,streamType:t,filter:null,paddingPES:null};return 65543!==r&&65542!==r||(c.codecpar.chLayout.nbChannels=1,c.codecpar.sampleRate=8e3,c.codecpar.chLayout.order=1,c.codecpar.chLayout.u.mask=BigInt(4)),86017===c.codecpar.codecId?o.filter=new E.A:86019===c.codecpar.codecId?o.filter=new _.A:86020===c.codecpar.codecId?o.filter=new T.A:86018===c.codecpar.codecId&&(o.filter=new F.A),o.filter&&o.filter.init(c.codecpar[n.o9],c.timeBase[n.o9]),c}async readHeader(e){const t=await e.ioReader.peekString(6);if("IMKH"===t.substring(0,4)?(this.context.imkhCctv=!0,await e.ioReader.skip(4)):"Sofdec"===t&&(this.context.sofdec=!0,await e.ioReader.skip(6)),442!==await e.ioReader.peekUint32())return d.z3("the file format is not mpegps",V,385),h.LR;if(1&e.ioReader.flags){const t=e.ioReader.getPos(),a=BigInt(500)*BigInt(1e3);let s=await e.ioReader.fileSize()-a;s<t&&(s=t),await e.ioReader.seek(s);try{for(this.context.pes.pts=m.Dh;;)await this.readPES(e),(0,f.A)(this.context.pes),this.context.pes.pts!==m.Dh&&this.context.lastPtsMap.set(this.context.pes.streamId,this.context.pes.pts)}catch(a){await e.ioReader.seek(t)}}return this.context.ioEnded=!1,0}checkExtradata(e,t){if(86017===t.codecpar.codecId&&t.codecpar.sampleRate===m.N_){const a=(0,u.iI)(e),s=a[1]>>>3&3,r=(6&a[1])>>1,i=(12&a[2])>>>2,n=3&~(a[3]>>>6)?2:1,c=A.Au(r),o=A.Y2(s,i);t.codecpar.profile=c,t.codecpar.sampleRate=o,t.codecpar.chLayout.nbChannels=n}else if(86019===t.codecpar.codecId&&t.codecpar.sampleRate===m.N_){const a=(0,u.iI)(e),s=v.R(a);N.ai(s)||(t.codecpar.sampleRate=s.sampleRate,t.codecpar.chLayout.nbChannels=s.channels,t.codecpar.bitrate=BigInt(s.bitrate))}else if(86020===t.codecpar.codecId&&t.codecpar.sampleRate===m.N_){const a=(0,u.iI)(e),s=B.R(a);N.ai(s)||(t.codecpar.sampleRate=s.sampleRate,t.codecpar.chLayout.nbChannels=s.channels,t.codecpar.bitrate=BigInt(0|s.bitrate))}else if(!t.codecpar.extradata){let a=(0,u.rU)(e,1);a&&(t.codecpar.extradata=(0,P.sY)(c.f[15](a+4)),(0,U.Mr)(t.codecpar.extradata,c.f[20](a),c.f[15](a+4)),t.codecpar.extradataSize=c.f[15](a+4),(0,u.Is)(e,1),27===t.codecpar.codecId?I.XC(t,(0,U.JW)(t.codecpar.extradata,t.codecpar.extradataSize)):173===t.codecpar.codecId?k.XC(t,(0,U.JW)(t.codecpar.extradata,t.codecpar.extradataSize)):196===t.codecpar.codecId?M.XC(t,(0,U.JW)(t.codecpar.extradata,t.codecpar.extradataSize)):86018===t.codecpar.codecId?R.XC(t,(0,U.JW)(t.codecpar.extradata,t.codecpar.extradataSize)):86076===t.codecpar.codecId&&S.XC(t,(0,U.JW)(t.codecpar.extradata,t.codecpar.extradataSize)))}}parseSlice(e,t,a,s){const r=(0,D.A)(Uint8Array,e.buffers),i=s.privData;1===s.codecpar.codecType&&o.M[15](a+36,1|c.f[15](a+36));const n=s.codecpar.codecId;27!==n&&173!==n&&196!==n||o.M[15](a+80,2),o.M[15](a+32,s.index),o.M[17](a+16,e.dts),o.M[17](a+8,e.pts),o.M[17](a+56,e.pos),o.M[15](a+76,9e4),o.M[15](a+72,1),s.startTime===m.Dh&&(s.startTime=c.f[17](a+8)||c.f[17](a+16),this.context.lastPtsMap.has(i.streamId)&&(s.duration=this.context.lastPtsMap.get(i.streamId)-s.startTime));const f=(0,P.sY)(r.length);if((0,U.lW)(f,r.length,r),(0,u.NX)(a,f,r.length),i.filter){let e=0;if(e=i.filter.sendAVPacket(a),e<0)return d.z3("send avpacket to bsf failed",V,533),h.LR;if(e=i.filter.receiveAVPacket(a),e<0)return e;for(o.M[15](a+76,9e4),o.M[15](a+72,1),o.M[15](a+32,s.index),this.checkExtradata(a,s);;){const a=this.cacheAVPacket||(0,u._5)();if(e=i.filter.receiveAVPacket(a),0!==e){this.cacheAVPacket=a;break}o.M[15](a+76,9e4),o.M[15](a+72,1),o.M[15](a+32,s.index),this.checkExtradata(a,s),t.interval.packetBuffer.push(a),this.cacheAVPacket=0}}else 2===s.codecpar.codecId?w.K(a)&&o.M[15](a+36,1|c.f[15](a+36)):27===s.codecpar.codecId?(s.codecpar.extradata||(I.ci(a,!0),this.checkExtradata(a,s),s.codecpar.bitFormat=2),I.KD(a)&&o.M[15](a+36,1|c.f[15](a+36))):173===s.codecpar.codecId?(s.codecpar.extradata||(k.ci(a,!0),this.checkExtradata(a,s),s.codecpar.bitFormat=2),k.KD(a)&&o.M[15](a+36,1|c.f[15](a+36))):196===s.codecpar.codecId&&(s.codecpar.extradata||(M.ci(a,!0),this.checkExtradata(a,s),s.codecpar.bitFormat=2),M.KD(a)&&o.M[15](a+36,1|c.f[15](a+36)));return 0}getMpegVideoNextFrame(e,t,a){for(;;){const s=L.Ky(t,e);if(!(s.offset>=0))return-1;if(27===a.codecpar.codecId&&4===s.startCode||2===a.codecpar.codecId&&3===s.startCode&&s.offset+3<t.length&&(t[s.offset+3]<1||t[s.offset+3]>175)&&181!==t[s.offset+3])return 183===t[s.offset+3]?s.offset+4:s.offset;if(2===a.codecpar.codecId&&4===s.startCode&&s.offset+4<t.length&&(t[s.offset+4]<1||t[s.offset+4]>175)&&181!==t[s.offset+4])return 183===t[s.offset+4]?s.offset+5:s.offset+1;e=s.offset+3}}getMpegAudioNextFrame(e,t){let a=0,s=2;86019===t.codecpar.codecId?a=11:86017===t.codecpar.codecId?a=255:(a=127,s=4);for(let r=0;r<e.length-s;r++)if(e[r]===a){const a=e[r+1],s=2;if(!(86017!==t.codecpar.codecId||224&~a)){if(0!==r){let t=0,a=0;for(;;){const i=new z.Vz;z.qg(i,e[r+a]<<24|e[r+a+1]<<16|e[r+a+2]<<8|e[r+a+3]);const n=e[r+a+1]>>>3&3,c=(12&e[r+a+2])>>>2,o=A.Y2(n,c);let d=z.CM(i,o);if(!(d&&r+a+d<e.length-2&&255===e[r+a+d])||224&~e[r+a+d+1])break;if(t++,a+=d,t===s)break}if(t===s)return r;continue}break}if(86019===t.codecpar.codecId&&119===a){if(0!==r){let t=0,a=0;for(;;){const i=v.R(e.subarray(r+a));if(N.ai(i)||!(r+a+i.frameSize<e.length-2)||11!==e[r+a+i.frameSize]||119!==e[r+a+i.frameSize+1])break;if(t++,a+=i.frameSize,t===s)break}if(t===s)return r;continue}break}if(86020===t.codecpar.codecId&&254===a&&128===e[r+2]&&129===e[r+3]){if(0!==r){let t=0,a=0;for(;;){const i=B.R(e.subarray(r+a));if(N.ai(i)||!(r+a+i.frameSize<e.length-4)||127!==e[r+a+i.frameSize]||254!==e[r+a+i.frameSize+1]||128!==e[r+a+i.frameSize+2]||129!==e[r+a+i.frameSize+3])break;if(t++,a+=i.frameSize,t===s)break}if(t===s)return r;continue}break}}return-1}async readAVPacket_(e,t){const a=(a,s)=>{let r=this.context.slices.get(a.streamId);if(r||(r={pts:-BigInt(1),dts:-BigInt(1),pos:-BigInt(1),buffers:[]},this.context.slices.set(a.streamId,r)),this.context.pes.dts!==m.Dh&&r.buffers.length){let i=0;if(0===s.codecpar.codecType){let e=this.getMpegVideoNextFrame(0,this.context.pes.payload,s);if(e>0)r.buffers.push(this.context.pes.payload.subarray(0,e)),this.context.pes.payload=this.context.pes.payload.subarray(e);else if(e<0)return a.paddingPES=y.X$({},this.context.pes),!0}if(2===s.codecpar.codecId){let a=(0,D.A)(Uint8Array,r.buffers);const i=[];for(;;){let e=0,t=0,r=!1;for(;;){const i=this.getMpegVideoNextFrame(t,a,s);if(!(i>=0))break;if(r){e=i;break}0===a[i+3]&&(r=!0),t=i+3}if(!(e>0))break;i.push(a.subarray(0,e)),a=a.subarray(e)}if(i.push(a),i.length>1){const a=(this.context.pes.dts-r.dts)/BigInt(Math.floor(i.length)),n=(this.context.pes.pts-r.pts)/BigInt(Math.floor(i.length));for(let c=0;c<i.length;c++)if(r.buffers.length=0,r.buffers.push(i[c]),r.dts+=a*BigInt(Math.floor(c)),r.pts+=n*BigInt(Math.floor(c)),0===c)this.parseSlice(r,e,t,s);else{const t=(0,u._5)();this.parseSlice(r,e,t,s),e.interval.packetBuffer.push(t)}}else r.buffers=i,this.parseSlice(r,e,t,s)}else i=this.parseSlice(r,e,t,s);return r.buffers.length=0,this.context.paddingPES?this.context.paddingPES.payload=this.context.pes.payload:(r.buffers.push(this.context.pes.payload),r.dts=this.context.pes.dts,r.pts=this.context.pes.pts,r.pos=this.context.pes.pos),i===h.LT}if(this.context.pes.dts!==m.Dh)if(r.dts=this.context.pes.dts,r.pts=this.context.pes.pts,r.pos=this.context.pes.pos,0===s.codecpar.codecType){const e=this.getMpegVideoNextFrame(0,this.context.pes.payload,s);if(e>0)this.context.pes.payload=this.context.pes.payload.subarray(e);else if(e<0)return a.paddingPES=y.X$({},this.context.pes),!0}else if(86019===s.codecpar.codecId||86020===s.codecpar.codecId||86017===s.codecpar.codecId){const e=this.getMpegAudioNextFrame(this.context.pes.payload,s);e>0&&(this.context.pes.payload=this.context.pes.payload.subarray(e))}return r.buffers.push(this.context.pes.payload),!0};for(;;){let t=0;this.context.paddingPES?(this.context.pes=this.context.paddingPES,this.context.paddingPES=null):(t=await this.readPES(e),(0,f.A)(this.context.pes),445===t&&(t=this.context.pes.payload[0],11===t?119===this.context.pes.payload[1]?t=128:this.context.pes.payload=this.context.pes.payload.subarray(1):this.context.pes.payload=t>=128&&t<=207?this.context.pes.payload.subarray(4):this.context.pes.payload.subarray(1),this.context.pes.streamId=255&t));let s=e.streams.find((e=>e.privData.streamId===this.context.pes.streamId));if(!s){const a=255&t;s=this.createStream(e,this.context.psmType.get(a),a,t)}if(s){const e=s.privData;if(!this.context.pes.payload)continue;if(e.paddingPES&&(e.paddingPES.payload=(0,D.A)(Uint8Array,[e.paddingPES.payload,this.context.pes.payload]),this.context.pes.dts===m.Dh?(this.context.pes=e.paddingPES,e.paddingPES=null):(this.context.paddingPES=this.context.pes,this.context.pes=e.paddingPES,e.paddingPES=null)),a(e,s))continue;return 0}}}async readAVPacket(e,t){try{if(this.context.ioEnded){if(this.context.slices.size){let a,s;if(this.context.slices.forEach(((t,r)=>{t.buffers.length&&(s=e.streams.find((e=>e.privData.streamId===r)),s&&(a=t))})),a)return this.parseSlice(a,e,t,s),a.buffers.length=0,a.pts=a.dts=a.pos=-BigInt(1),0}return-1048576}return await this.readAVPacket_(e,t)}catch(a){return-1048576!==e.ioReader.error?(d.z3(`read packet error, ${a}`,V,1025),h.LR):(this.context.ioEnded=!0,this.readAVPacket(e,t))}}async syncPSPacket(e){let t=m.Dh;try{for(this.context.pes.pts=m.Dh;this.context.pes.pts===m.Dh;)await this.readPES(e),(0,f.A)(this.context.pes),t=this.context.pes.pos}catch(e){t=m.Dh}t!==m.Dh&&await e.ioReader.seek(t)}async seek(e,t,a,s){let r=e.ioReader.getPos();if(this.context.slices.forEach((e=>{e.buffers.length&&e.pos<r&&(r=e.pos),e.buffers.length=0,e.pts=e.dts=e.pos=-BigInt(1)})),e.streams.forEach((e=>{const t=e.privData;t.filter&&t.filter.reset()})),2&s){const t=await e.ioReader.fileSize();return t<=BigInt(0)?BigInt(h.E$):(a<BigInt(0)?a=BigInt(0):a>t&&(a=t),await e.ioReader.seek(a),4&s||await this.syncPSPacket(e),this.context.ioEnded=!1,r)}{if(t&&t.sampleIndexes.length){let s=b.El(t.sampleIndexes,(e=>e.pts>a?-1:1));if(s>0&&(0,x.k)(a-t.sampleIndexes[s-1].pts,t.timeBase,m.i0)<BigInt(1e4))return d.Yz(`seek in sampleIndexes, found index: ${s}, pts: ${t.sampleIndexes[s-1].pts}, pos: ${t.sampleIndexes[s-1].pos}`,V,1110),await e.ioReader.seek(t.sampleIndexes[s-1].pos),this.context.ioEnded=!1,r}d.Yz("not found any keyframe index, try to seek in bytes",V,1117);let s=await(0,g.A)(e,t,a,BigInt(0),this.readAVPacket.bind(this),this.syncPSPacket.bind(this));return s>=0&&(this.context.ioEnded=!1),s}}getAnalyzeStreamsCount(){return 1}}},75294:(e,t,a)=>{a.d(t,{CM:()=>c,Vz:()=>i,qg:()=>n});var s=a(134),r=a(64093);class i{constructor(){(0,s.A)(this,"version",void 0),(0,s.A)(this,"layer",void 0),(0,s.A)(this,"protection",void 0),(0,s.A)(this,"bitrateIndex",void 0),(0,s.A)(this,"samplingFrequency",void 0),(0,s.A)(this,"padding",void 0),(0,s.A)(this,"private",void 0),(0,s.A)(this,"mode",void 0),(0,s.A)(this,"modeExtension",void 0),(0,s.A)(this,"copyright",void 0),(0,s.A)(this,"original",void 0),(0,s.A)(this,"emphasis",void 0)}}function n(e,t){e.version=t>>19&3,e.layer=t>>17&3,e.protection=t>>16&1,e.bitrateIndex=t>>12&15,e.samplingFrequency=t>>10&3,e.padding=t>>9&1,e.mode=t>>6&3,e.modeExtension=t>>4&3,e.copyright=t>>3&1,e.original=t>>2&1,e.emphasis=3&t}function c(e,t){let a=r.oz(e.version,e.layer,e.bitrateIndex);switch(e.layer){case 1:default:a=144e3*a/(t<<(3===e.version?0:1))>>>0,a+=e.padding;break;case 2:a=144e3*a/t>>>0,a+=e.padding;break;case 3:a=12e3*a/t>>>0,a=4*(a+e.padding)}return a}},51660:(e,t,a)=>{a.d(t,{A:()=>c});var s=a(77231),r=a(4624),i=a(9705);const n="src/avformat/formats/mpegts/function/parsePES.ts";function c(e){const t=e.data,a=t[3],c=t[4]<<8|t[5];let o=0,d=0,h=0;if(188!==a&&190!==a&&191!==a&&240!==a&&241!==a&&255!==a&&242!==a&&248!==a){let a=s.Dh,f=s.Dh;for(;;){if(6+d>=t.length)return;if(h=t[6+d],255!==h)break;d++}if(64==(192&h)&&(d+=2,h=t[6+d]),32==(224&h))o+=5,a=a=BigInt(Math.floor(536870912*(14&t[6+d])+4194304*(255&t[7+d])+16384*(254&t[8+d])+128*(255&t[9+d])+(254&t[10+d])/2)),16&h?(f=BigInt(Math.floor(536870912*(14&t[11+d])+4194304*(255&t[12+d])+16384*(254&t[13+d])+128*(255&t[14+d])+(254&t[15+d])/2)),o+=5):f=a;else if(128==(192&h)){const e=(192&t[7+d])>>>6;o=3+t[8+d],2!==e&&3!==e||(a=BigInt(Math.floor(536870912*(14&t[9+d])+4194304*(255&t[10+d])+16384*(254&t[11+d])+128*(255&t[12+d])+(254&t[13+d])/2)),f=3===e?BigInt(Math.floor(536870912*(14&t[14+d])+4194304*(255&t[15+d])+16384*(254&t[16+d])+128*(255&t[17+d])+(254&t[18+d])/2)):a)}else{if(15!==h)return r.z3("invalid data",n,121),i.LR;o=1}e.dts=f,e.pts=a;const l=6+d+o;let p=0;if(0!==c){if(c<d+o)return void r.z3("Malformed PES: PES_packet_length < 3 + PES_header_data_length",n,133);p=c-(d+o)}else p=t.byteLength-l;e.payload=t.subarray(l,l+p)}else if((188===a||191===a||240===a||241===a||255===a||242===a||248===a)&&6===e.streamId){const a=6;let s=0;s=0!==c?c:t.byteLength-a,e.payload=t.subarray(a,a+s)}return 0}},10662:(e,t,a)=>{a.d(t,{V:()=>s});const s=1e5},6403:(e,t,a)=>{a.d(t,{Cd:()=>h,I4:()=>l,am:()=>o,kJ:()=>f,pi:()=>d,xf:()=>p});var s=a(134),r=a(80662),i=a.n(r),n=a(77231);class c{constructor(){(0,s.A)(this,"discontinuityIndicator",0),(0,s.A)(this,"randomAccessIndicator",0),(0,s.A)(this,"elementaryStreamPriorityIndicator",0),(0,s.A)(this,"pcrFlag",0),(0,s.A)(this,"opcrFlag",0),(0,s.A)(this,"splicingPointFlag",0),(0,s.A)(this,"transportPrivateDataFlag",0),(0,s.A)(this,"adaptationFieldExtensionFlag",0),(0,s.A)(this,"pcr",BigInt(0)),(0,s.A)(this,"opcr",BigInt(0)),(0,s.A)(this,"spliceCountDown",0),(0,s.A)(this,"transportPrivateData",null),(0,s.A)(this,"extension",null)}}class o{constructor(){(0,s.A)(this,"pos",n.Dh),(0,s.A)(this,"payloadUnitStartIndicator",0),(0,s.A)(this,"transportPriority",0),(0,s.A)(this,"pid",n.N_),(0,s.A)(this,"adaptationFieldControl",0),(0,s.A)(this,"continuityCounter",0),(0,s.A)(this,"transportScramblingControl",0),(0,s.A)(this,"adaptationFieldInfo",new c),(0,s.A)(this,"payload",null)}}class d{constructor(){(0,s.A)(this,"slices",[]),(0,s.A)(this,"totalLength",0),(0,s.A)(this,"expectedLength",n.N_),(0,s.A)(this,"randomAccessIndicator",0),(0,s.A)(this,"pid",n.N_),(0,s.A)(this,"streamType",0),(0,s.A)(this,"pos",n.Dh)}}class h{constructor(){(0,s.A)(this,"versionNumber",0),(0,s.A)(this,"networkPid",n.N_),(0,s.A)(this,"program2PmtPid",new(i()))}}class f{constructor(){(0,s.A)(this,"tag",void 0),(0,s.A)(this,"buffer",void 0)}}class l{constructor(){(0,s.A)(this,"versionNumber",0),(0,s.A)(this,"programNumber",0),(0,s.A)(this,"pcrPid",0),(0,s.A)(this,"pid2StreamType",new(i())),(0,s.A)(this,"pid2ESDescriptor",new(i()))}}class p{constructor(){(0,s.A)(this,"pid",n.N_),(0,s.A)(this,"streamType",0),(0,s.A)(this,"streamId",n.N_),(0,s.A)(this,"dts",n.Dh),(0,s.A)(this,"pts",n.Dh),(0,s.A)(this,"pos",n.Dh),(0,s.A)(this,"payload",null),(0,s.A)(this,"data",null),(0,s.A)(this,"randomAccessIndicator",0)}}},2187:(e,t,a)=>{a.d(t,{d:()=>n});var s=a(72739),r=a(44328),i=a(77231);function n(e,t,a){let n=BigInt(0);return s.__(e,(e=>{n+=e.codecpar.bitrate*(0,r.k)(t,a,i.i0)/BigInt(8e3)})),n}},52071:(e,t,a)=>{a.d(t,{A:()=>p});var s=a(63939),r=a(9599),i=a(29170),n=a(77231),c=a(44328),o=a(2187),d=a(71517),h=a(9705),f=a(4624);const l="src/avformat/function/seekInBytes.ts";async function p(e,t,a,p,u,m){const g=e.ioReader.getPos(),x=await e.ioReader.fileSize();let b=n.Dh,y=a;t.startTime!==n.Dh?y-=t.startTime:y-=t.firstDTS;const A=(0,c.k)(a,t.timeBase,n.i0);if(A<BigInt(1e4))return f.Yz(`seek pts is earlier then 10s, seek to first packet pos(${p}) directly`,l,64),await e.ioReader.seek(p),g;let I=(0,o.d)(e.streams,y,t.timeBase);const k=x-(0,o.d)(e.streams,BigInt(1e4),n.i0),M=(0,o.d)(e.streams,BigInt(1e4),n.i0);if(I>k&&(I=k),I<p)return await e.ioReader.seek(p),g;const R=(0,d._5)();let S=x,v=BigInt(0);for(;;){if(S-v<M){b=v;break}if(await e.ioReader.seek(I),await m(e),8&e.ioReader.flags)break;const t=e.ioReader.getPos();if(!(await u(e,R)>=0)){b=n.Dh;break}{const e=(0,c.k)(s.f[17](R+8),(0,i.A)(R+72,r.P),n.i0),a=e-A;if(f.Yz(`try to seek to pos: ${I}, got packet pts: ${s.f[17](R+8)}(${e}ms), diff: ${a}ms`,l,102),a<=BigInt(0)&&-a<BigInt(1e4)){b=t;break}a>BigInt(0)?(S=I,I=v+S>>BigInt(1)):(v=I,I=v+S>>BigInt(1))}if(8&e.ioReader.flags)break}return(0,d.Qe)(R),b!==n.Dh?(f.Yz(`finally seek to pos ${b}`,l,133),await e.ioReader.seek(b),await m(e),g):(await e.ioReader.seek(g),8&e.ioReader.flags?BigInt(h.LT):BigInt(h.E$))}},95832:(e,t,a)=>{a.d(t,{Bq:()=>f,Ij:()=>h,XC:()=>d,f7:()=>l,uF:()=>i});var s=a(77231),r=a(37246);const i={1:"Main",2:"LC",3:"LC",4:"LC",5:"HE",6:"HE"},n={96e3:0,88200:1,64e3:2,48e3:3,44100:4,32e3:5,24e3:6,22050:7,16e3:8,12e3:9,11025:10,8e3:11,7350:12},c=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350,s.N_,s.N_,s.N_],o=[s.N_,1,2,3,4,5,6,7];function d(e,t){if(!t&&e.sideData[1]&&(t=e.sideData[1]),t){const{profile:a,sampleRate:r,channels:i}=function(e){let t=s.N_,a=s.N_,r=s.N_;var i,n;return e.length>=2&&(t=e[0]>>3&31,a=null!==(i=c[(7&e[0])<<1|e[1]>>7])&&void 0!==i?i:48e3,r=null!==(n=o[e[1]>>3&15])&&void 0!==n?n:2),{profile:t,sampleRate:a,channels:r}}(t);e.codecpar.profile=a,e.codecpar.sampleRate=r,e.codecpar.chLayout.nbChannels=i}}function h(e){const t=n[e.sampleRate],a=e.chLayout.nbChannels,r=e.profile===s.N_?2:e.profile,i=new Uint8Array(2);return i[0]=(31&r)<<3|(14&t)>>1,i[1]=(1&t)<<7|(15&a)<<3,i}function f(e){if(e.length<7)return-1;const t=e[0]<<4|e[1]>>4;if(4095!==t)return-1;const a=1&e[1],s=(192&e[2])>>>6,r=(60&e[2])>>>2,i=(1&e[2])<<2|(192&e[3])>>>6,n=(3&e[3])<<11|e[4]<<3|(224&e[5])>>>5,d=3&e[6];let h=1===a?7:9,f=n-h;return{syncWord:t,profile:s+1,sampleRate:c[r],channels:o[i],aacFrameLength:n,numberOfRawDataBlocksInFrame:d,headerLength:h,framePayloadLength:f}}function l(e,t){function a(){const e=t.readU(2);let a=0;for(let s=0;s<=e;s++)a<<=8,a|=t.readU(8);return a}t||(t=new r.A).appendBuffer(e);const s=t.getPointer(),i={syncWord:0,profile:0,sampleRate:0,channels:0,useSameStreamMux:!1,headerLength:0,framePayloadLength:0,muxLengthBytes:0},n=t.readU(11);if(695!==n)return-1;i.syncWord=n,i.muxLengthBytes=t.readU(13);const d=1===t.readU1();if(i.useSameStreamMux=d,!d){const e=1===t.readU1();if(e&&1===t.readU1())return-1;if(e&&a(),1!==t.readU1())return-1;if(0!==t.readU(6))return-1;if(0!==t.readU(4))return-1;if(0!==t.readU(3))return-1;let s=e?a():0;const r=t.readU(5);s-=5;const n=t.readU(4);s-=4;const d=t.readU(4);if(s-=4,t.readU(3),s-=3,s>0&&t.readU(s),0!==t.readU(3))return-1;if(t.readU(8),1===t.readU1())if(e)a();else{let e=0;for(;;){e<<=8;const a=1===t.readU1();if(e+=t.readU(8),!a)break}}1===t.readU1()&&t.readU(8),i.profile=r+1,i.sampleRate=c[n],i.channels=o[d]}let h=0;for(;;){const e=t.readU(8);if(h+=e,255!==e)break}return i.framePayloadLength=h,i.headerLength=t.getPointer()-s+(8===t.getBitLeft()?0:1),i}},87518:(e,t,a)=>{a.d(t,{R:()=>p,j:()=>r});var s=a(37246);const r=[3,4,3,7,259,263,1539,1543],i=[[64,69,96],[64,70,96],[80,87,120],[80,88,120],[96,104,144],[96,105,144],[112,121,168],[112,122,168],[128,139,192],[128,140,192],[160,174,240],[160,175,240],[192,208,288],[192,209,288],[224,243,336],[224,244,336],[256,278,384],[256,279,384],[320,348,480],[320,349,480],[384,417,576],[384,418,576],[448,487,672],[448,488,672],[512,557,768],[512,558,768],[640,696,960],[640,697,960],[768,835,1152],[768,836,1152],[896,975,1344],[896,976,1344],[1024,1114,1536],[1024,1115,1536],[1152,1253,1728],[1152,1254,1728],[1280,1393,1920],[1280,1394,1920]],n=[4,5,6,5],c=[4,6,7,6],o=[48e3,44100,32e3,0],d=[32,40,48,56,64,80,96,112,128,160,192,224,256,320,384,448,512,576,640],h=[2,1,2,3,3,4,4,5],f=[1,2,3,6],l=7;function p(e){const t=new s.A(e.length);t.appendBuffer(e);const a={syncWord:0,crc1:0,srCode:0,bitstreamId:0,bitstreamMode:0,channelMode:0,lfeOn:0,frameType:0,substreamId:0,centerMixLevel:0,surroundMixLevel:0,channelMap:0,numBlocks:0,dolbySurroundMode:0,srShift:0,sampleRate:0,bitrate:0,channels:0,frameSize:0,channelLayout:BigInt(0),ac3BitrateCode:0};if(a.syncWord=t.readU(16),2935!==a.syncWord)return-1;if(a.bitstreamId=31&t.peekU(29),a.bitstreamId>16)return-2;if(a.numBlocks=6,a.ac3BitrateCode=-1,a.centerMixLevel=5,a.surroundMixLevel=6,a.dolbySurroundMode=0,a.bitstreamId<=10){if(a.crc1=t.readU(16),a.srCode=t.readU(2),3===a.srCode)return-3;const e=t.readU(6);if(e>37)return-4;a.ac3BitrateCode=e>>1,t.readU(5),a.bitstreamMode=t.readU(3),a.channelMode=t.readU(3),2==a.channelMode?a.dolbySurroundMode=t.readU(2):(1&a.channelMode&&1!=a.channelMode&&(a.centerMixLevel=n[t.readU(2)]),4&a.channelMode&&(a.surroundMixLevel=c[t.readU(2)])),a.lfeOn=t.readU(1),a.srShift=Math.max(a.bitstreamId,8)-8,a.sampleRate=o[a.srCode]>>a.srShift,a.bitrate=1e3*d[a.ac3BitrateCode]>>a.srShift,a.channels=h[a.channelMode]+a.lfeOn,a.frameSize=2*i[e][a.srCode],a.frameType=2,a.substreamId=0}else{if(a.crc1=0,a.frameType=t.readU(2),3==a.frameType)return-5;if(a.substreamId=t.readU(3),a.frameSize=t.readU(11)+1<<1,a.frameSize<l)return-6;if(a.srCode=t.readU(2),3==a.srCode){const e=t.readU(2);if(3==e)return-7;a.sampleRate=o[e]/2,a.srShift=1}else a.numBlocks=f[t.readU(2)],a.sampleRate=o[a.srCode],a.srShift=0;a.channelMode=t.readU(3),a.lfeOn=t.readU(1),a.bitrate=8*a.frameSize*a.sampleRate/(256*a.numBlocks),a.channels=h[a.channelMode]+a.lfeOn}return a.channelLayout=BigInt(r[a.channelMode]),a.lfeOn&&(a.channelLayout|=BigInt(8)),a}},43290:(e,t,a)=>{a.d(t,{R:()=>d,u:()=>o});var s=a(37246),r=a(95073);const i=[1,2,2,2,2,3,3,4,4,5,6,6,6,7,8,8],n=[0,8e3,16e3,32e3,0,0,11025,22050,44100,0,0,12e3,24e3,48e3,96e3,192e3],c=[32e3,56e3,64e3,96e3,112e3,128e3,192e3,224e3,256e3,32e4,384e3,448e3,512e3,576e3,64e4,768e3,96e4,1024e3,1152e3,128e4,1344e3,1408e3,1411200,1472e3,1536e3,192e4,2048e3,3072e3,384e4,0,0,0],o=32;function d(e){const t=new s.A(e.length);t.appendBuffer(e);const a={syncWord:0,frameType:0,deficitSamples:0,crcFlag:0,sampleBlock:0,frameSize:0,channelIndex:0,sampleRateIndex:0,bitrateIndex:0,channels:0,sampleRate:0,bitrate:0};return a.syncWord=t.readU(32),2147385345!==a.syncWord&&4269736320!==a.syncWord?-1:(a.frameType=t.readU1(),a.deficitSamples=t.readU(5)+1,a.crcFlag=t.readU1(),a.sampleBlock=t.readU(7)+1,a.frameSize=(0,r.A)(t.readU(14)+1,4),a.channelIndex=t.readU(6),a.sampleRateIndex=t.readU(4),a.bitrateIndex=t.readU(5),a.channels=i[a.channelIndex],a.sampleRate=n[a.sampleRateIndex],a.bitrate=c[a.bitrateIndex],a)}},64093:(e,t,a)=>{a.d(t,{Au:()=>b,He:()=>y,XC:()=>A,Y2:()=>m,hG:()=>g,oz:()=>x});var s=a(77231);const r=[44100,48e3,32e3,0],i=[22050,24e3,16e3,0],n=[11025,12e3,8e3,0],c=[0,1152,1152,384],o=[0,576,1152,384],d=[0,576,1152,384],h=[0,32,64,96,128,160,192,224,256,288,320,352,384,416,448,-1],f=[0,32,48,56,64,80,96,112,128,160,192,224,256,320,384,-1],l=[0,32,40,48,56,64,80,96,112,128,160,192,224,256,320,-1],p=[0,32,48,56,64,80,96,112,128,144,160,176,192,224,256,-1],u=[0,8,16,24,32,40,48,56,64,80,96,112,128,144,160,-1];function m(e,t){switch(e){case 0:return n[t];case 2:return i[t];case 3:return r[t]}return s.N_}function g(e,t){switch(e){case 0:return d[t];case 2:return o[t];case 3:return c[t]}return s.N_}function x(e,t,a){switch(t){case 1:switch(e){case 0:case 2:return u[a];case 3:return l[a]}break;case 2:switch(e){case 0:case 2:return u[a];case 3:return f[a]}case 3:switch(e){case 0:case 2:return p[a];case 3:return h[a]}}return s.N_}function b(e){switch(e){case 1:return 34;case 2:return 33;case 3:return 32}return s.N_}const y={32:"Layer1",33:"Layer2",34:"Layer3"};function A(e,t){if(t&&t.length>=4){const a=t[1]>>>3&3,s=(6&t[1])>>1,r=(12&t[2])>>>2,i=3&~(t[3]>>>6)?2:1,n=b(s),c=m(a,r);e.codecpar.profile=n,e.codecpar.sampleRate=c,e.codecpar.chLayout.nbChannels=i}}},78887:(e,t,a)=>{a.d(t,{K:()=>r});var s=a(71517);function r(e){const t=(0,s.iI)(e);for(let e=0;e<t.length-6;e++)if(0===t[e]&&0===t[e+1]&&1===t[e+2]&&0===t[e+3])return 1==(t[e+5]>>3&7);return!1}},22576:(e,t,a)=>{a.d(t,{Ij:()=>d,XC:()=>o,kt:()=>c});var s=a(31865),r=a(729),i=a(44328);const n=[480,960,1920,2880,480,960,1920,2880,480,960,1920,2880,480,960,480,960,120,240,480,960,120,240,480,960,120,240,480,960,120,240,480,960];function c(e){let t=0,a=0,s=0;if(e.length<1)return 0;switch(t=e[0],a=n[t>>3],3&t){case 0:s=1;break;case 1:case 2:s=2;break;case 3:if(e.length<2)return 0;s=63&e[1]}return s*a}function o(e,t){if(!t&&e.sideData[1]&&(t=e.sideData[1]),t&&t.length>=19){const a=new s.A(t,!1);a.skip(9),e.codecpar.chLayout.nbChannels=a.readUint8(),e.codecpar.initialPadding=a.readUint16(),e.codecpar.sampleRate=a.readUint32(),e.codecpar.seekPreroll=Number((0,i.k)(BigInt(80),{den:1e3,num:1},{den:48e3,num:1}))}}function d(e){const t=new Uint8Array(19),a=new r.A(t,!1);return a.writeString("OpusHead"),a.writeUint8(1),a.writeUint8(e.chLayout.nbChannels),a.writeUint16(e.initialPadding),a.writeUint32(e.sampleRate),t}}}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[94],{64436:(e,t,a)=>{a.d(t,{A:()=>o});var r=a(134),i=a(63939),s=(a(77162),a(37837)),n=a(71766);class o{constructor(){(0,r.A)(this,"inCodecpar",void 0),(0,r.A)(this,"inTimeBase",void 0),(0,r.A)(this,"outCodecpar",void 0)}init(e,t){return this.inCodecpar=(0,s.Gy)(168),(0,n.Yi)(this.inCodecpar,e),this.inTimeBase={den:i.f[15](t+4),num:i.f[15](t)},0}destroy(){this.inCodecpar&&((0,n.dn)(this.inCodecpar),this.inCodecpar=0)}}},36488:(e,t,a)=>{a.d(t,{A:()=>B});var r=a(134),i=a(63939),s=a(50932),n=a(77162),o=a(29170),c=a(64436),d=a(14686),f=a(4624),h=a(9705),l=a(77231),p=a(95832),u=a(44328),m=a(37837),g=a(71517),R=a(37246),y=a(67672);class B extends c.A{constructor(...e){super(...e),(0,r.A)(this,"bitReader",void 0),(0,r.A)(this,"streamMuxConfig",void 0),(0,r.A)(this,"caches",void 0),(0,r.A)(this,"refSampleDuration",void 0)}init(e,t){return super.init(e,t),this.caches=[],this.refSampleDuration=BigInt(0),this.bitReader=new R.A,this.streamMuxConfig={profile:l.N_,sampleRate:l.N_,channels:l.N_},0}sendAVPacket(e){const t=(0,d.s3)(i.f[20](e+24),i.f[15](e+28));this.bitReader.appendBuffer(t);let a=i.f[17](e+16)||i.f[17](e+8);for(;this.bitReader.remainingLength()>=20;){const e=this.bitReader.getPointer(),t=p.f7(null,this.bitReader);if(y.ai(t))return f.z3("AACLATMParser parse failed","src/avformat/bsf/aac/LATM2RawFilter.ts",94),this.bitReader.reset(),h.LR;if(t.framePayloadLength>=this.bitReader.remainingLength()){this.bitReader.skipPadding(),this.bitReader.setPointer(e);break}t.useSameStreamMux||(this.streamMuxConfig.profile=t.profile,this.streamMuxConfig.sampleRate=t.sampleRate,this.streamMuxConfig.channels=t.channels);const r=t.framePayloadLength,c=new Uint8Array(r);for(let e=0;e<r;e++)c[e]=this.bitReader.readU(8);const g={dts:a,buffer:c,extradata:null};if(i.f[15](this.inCodecpar+48)!==this.streamMuxConfig.profile||i.f[15](this.inCodecpar+136)!==this.streamMuxConfig.sampleRate||i.f[15](this.inCodecpar+116)!==this.streamMuxConfig.channels){this.refSampleDuration=(0,u.k)(BigInt(Math.floor(1024/this.streamMuxConfig.sampleRate*l.SF)),l.KR,this.inTimeBase),s.M[15](this.inCodecpar+48,this.streamMuxConfig.profile),s.M[15](this.inCodecpar+136,this.streamMuxConfig.sampleRate),s.M[15](this.inCodecpar+116,this.streamMuxConfig.channels);const e=(0,p.Ij)((0,o.A)(this.inCodecpar,n.A));i.f[20](this.inCodecpar+12)&&(0,m.Eb)(i.f[20](this.inCodecpar+12)),s.M[20](this.inCodecpar+12,(0,m.sY)(e.length)),(0,d.lW)(i.f[20](this.inCodecpar+12),e.length,e),s.M[15](this.inCodecpar+16,e.length),g.extradata=e}this.caches.push(g),a+=this.refSampleDuration,this.bitReader.skipPadding()}return 0}receiveAVPacket(e){if(this.caches.length){(0,g.Up)(e);const t=this.caches.shift(),a=(0,m.sY)(t.buffer.length);if((0,d.lW)(a,t.buffer.length,t.buffer),(0,g.NX)(e,a,t.buffer.length),s.M[17](e+16,t.dts),s.M[17](e+8,t.dts),s.M[15](e+36,1|i.f[15](e+36)),s.M[17](e+48,this.refSampleDuration),t.extradata){const a=(0,m.sY)(t.extradata.length);(0,d.lW)(a,t.extradata.length,t.extradata),(0,g.Ow)(e,1,a,t.extradata.length)}return 0}return h.LT}reset(){return this.bitReader.reset(),0}}},47094:(e,t,a)=>{a.r(t),a.d(t,{default:()=>M});var r=a(134),i=a(61499),s=a(63939),n=a(50932),o=a(4624),c=a(9705),d=a(85947),f=a(14686),h=a(37837),l=a(71517),p=a(44328),u=a(77231),m=a(72739),g=a(95832),R=a(67672),y=a(36488);const B="src/avformat/formats/IAacFormat.ts",k=1024;class M extends d.A{constructor(){super(),(0,r.A)(this,"type",15),(0,r.A)(this,"frameType",void 0),(0,r.A)(this,"fileSize",void 0),(0,r.A)(this,"currentPts",void 0),(0,r.A)(this,"latmFilter",void 0)}init(e){this.currentPts=BigInt(0)}async destroy(e){this.latmFilter&&(this.latmFilter.destroy(),this.latmFilter=null)}async estimateTotalBlock(e){let t=0;const a=e.ioReader.getPos();for(;;)try{const a=await e.ioReader.peekBuffer(7),r=(3&a[3])<<11|a[4]<<3|(224&a[5])>>>5;t+=1+(3&a[6]),await e.ioReader.skip(r)}catch(e){break}return await e.ioReader.seek(a),t}async readHeader(e){const t=await e.ioReader.peekBuffer(4);if(this.fileSize=await e.ioReader.fileSize(),65===t[0]&&68===t[1]&&73===t[2]&&70===t[3]){const t=e.createStream();t.codecpar.codecId=86018,t.codecpar.codecType=1,this.frameType=0,t.duration=this.fileSize,t.timeBase.den=16384,t.timeBase.num=1}else if(255!==t[0]||240&~t[1]){if(86!==t[0]||224&~t[1])return c.LR;{this.frameType=2;const t=e.createStream();t.codecpar.codecId=86018,t.codecpar.codecType=1;const a=(0,g.f7)(await e.ioReader.peekBuffer(20));if(R.ai(a))return c.LR;t.codecpar.profile=a.profile,t.codecpar.sampleRate=a.sampleRate,t.codecpar.chLayout.nbChannels=a.channels;const r=(0,g.Ij)(t.codecpar);t.codecpar.extradata=(0,h.sY)(r.length),(0,f.lW)(t.codecpar.extradata,r.length,r),t.codecpar.extradataSize=r.length,t.duration=this.fileSize,t.timeBase.den=16384,t.timeBase.num=1,this.latmFilter=new y.A,this.latmFilter.init(t.codecpar[i.o9],t.timeBase[i.o9])}}else{this.frameType=1;const t=e.createStream();t.codecpar.codecId=86018,t.codecpar.codecType=1;const a=(0,g.Bq)(await e.ioReader.peekBuffer(20));if(R.ai(a))return c.LR;t.codecpar.profile=a.profile,t.codecpar.sampleRate=a.sampleRate,t.codecpar.chLayout.nbChannels=a.channels;const r=(0,g.Ij)(t.codecpar);t.codecpar.extradata=(0,h.sY)(r.length),(0,f.lW)(t.codecpar.extradata,r.length,r),t.codecpar.extradataSize=r.length,t.timeBase.den=t.codecpar.sampleRate,t.timeBase.num=1,t.duration=(0,p.k)(BigInt(Math.floor(1024*await this.estimateTotalBlock(e)/t.codecpar.sampleRate*u.SF)),u.KR,t.timeBase)}return 0}async readAVPacket(e,t){const a=e.streams.find((e=>e.codecpar.codecType=1));try{const r=e.ioReader.getPos();let i;if(0===this.frameType){i=await e.ioReader.readBuffer(Math.min(k,Number(BigInt.asIntN(32,this.fileSize-r))));const a=(0,h.sY)(i.length);(0,f.lW)(a,i.length,i),(0,l.NX)(t,a,i.length),n.M[17](t+48,BigInt(k)),n.M[17](t+56,r)}else if(1===this.frameType){const s=await e.ioReader.readBuffer(7),o=1&s[1],c=(3&s[3])<<11|s[4]<<3|(224&s[5])>>>5,d=3&s[6];let m=1===o?7:9,g=c-m;9===m&&await e.ioReader.skip(2);const R=(0,p.k)(BigInt(Math.floor(1024*(d+1)/a.codecpar.sampleRate*u.SF)),u.KR,a.timeBase);n.M[17](t+48,R),i=await e.ioReader.readBuffer(g);const y=(0,h.sY)(i.length);(0,f.lW)(y,i.length,i),(0,l.NX)(t,y,i.length),n.M[17](t+56,r)}else if(2===this.frameType){if(r===this.fileSize)return-1048576;for(;;){let a=this.latmFilter.receiveAVPacket(t);if(a!==c.LT){if(a<0)return a;n.M[17](t+48,BigInt(0|s.f[15](t+28))),n.M[17](t+56,this.currentPts);break}{if(e.ioReader.getPos()===this.fileSize)return-1048576;i=await e.ioReader.readBuffer(Math.min(k,Number(BigInt.asIntN(32,this.fileSize-r))));const a=(0,h.sY)(i.length);(0,f.lW)(a,i.length,i),(0,l.NX)(t,a,i.length),this.latmFilter.sendAVPacket(t)}}}return n.M[15](t+32,a.index),n.M[15](t+76,a.timeBase.den),n.M[15](t+72,a.timeBase.num),n.M[17](t+16,this.currentPts),n.M[17](t+8,this.currentPts),this.currentPts+=s.f[17](t+48),0}catch(t){return-1048576!==e.ioReader.error?(o.z3(`read packet error, ${t}`,B,271),c.LR):e.ioReader.error}}async syncFrame(e){if(0===this.frameType)return;let t=u.Dh;const a=1===this.frameType?4095:695,r=1===this.frameType?4:5;for(;;)try{let i=0;for(t=e.ioReader.getPos();3!==i&&await e.ioReader.peekUint16()>>>r===a;){const t=1===this.frameType?(0,g.Bq)(await e.ioReader.peekBuffer(9)):(0,g.f7)(await e.ioReader.peekBuffer(20));if(R.ai(t))break;i++,await e.ioReader.skip(t.headerLength+t.framePayloadLength)}if(3===i)break;await e.ioReader.skip(1)}catch(e){break}t!==u.Dh&&await e.ioReader.seek(t)}async seek(e,t,a,r){if(1===this.frameType){const i=e.ioReader.getPos();if(2&r){const s=await e.ioReader.fileSize();return s<=BigInt(0)?BigInt(c.E$):(a<BigInt(0)?a=BigInt(0):a>s&&(a=s),await e.ioReader.seek(a),4&r||(await this.syncFrame(e),t.duration&&this.fileSize&&(this.currentPts=a/this.fileSize*t.duration)),i)}if(t&&t.sampleIndexes.length){let r=m.El(t.sampleIndexes,(e=>e.pts>a?-1:1));if(r>0&&(0,p.k)(a-t.sampleIndexes[r-1].pts,t.timeBase,u.i0)<BigInt(5e3))return o.Yz(`seek in sampleIndexes, found index: ${r}, pts: ${t.sampleIndexes[r-1].pts}, pos: ${t.sampleIndexes[r-1].pos}`,B,370),await e.ioReader.seek(t.sampleIndexes[r-1].pos),this.currentPts=a,i}if(o.Yz("not found any keyframe index, try to seek in bytes",B,377),!t.duration)return BigInt(c.E$);{await e.ioReader.seek(BigInt(0));let r=BigInt(0);for(;;)try{if(r>=a)return this.currentPts=r,i;const s=await e.ioReader.peekBuffer(7),n=(3&s[3])<<11|s[4]<<3|(224&s[5])>>>5,o=3&s[6];r+=(0,p.k)(BigInt(Math.floor(1024*(o+1)/t.codecpar.sampleRate*u.SF)),u.KR,t.timeBase),await e.ioReader.skip(n)}catch(e){return BigInt(c.E$)}}}else if(0===this.frameType||2===this.frameType){this.latmFilter&&this.latmFilter.reset();const t=e.ioReader.getPos();return a<BigInt(0)?a=BigInt(0):a>this.fileSize&&(a=this.fileSize),await e.ioReader.seek(a),this.currentPts=a,2!==this.frameType||4&r||await this.syncFrame(e),t}return BigInt(c.E$)}getAnalyzeStreamsCount(){return 1}}},85947:(e,t,a)=>{a.d(t,{A:()=>i});var r=a(134);class i{constructor(){(0,r.A)(this,"type",-1),(0,r.A)(this,"onStreamAdd",void 0)}async destroy(e){}}},95832:(e,t,a)=>{a.d(t,{Bq:()=>h,Ij:()=>f,XC:()=>d,f7:()=>l,uF:()=>s});var r=a(77231),i=a(37246);const s={1:"Main",2:"LC",3:"LC",4:"LC",5:"HE",6:"HE"},n={96e3:0,88200:1,64e3:2,48e3:3,44100:4,32e3:5,24e3:6,22050:7,16e3:8,12e3:9,11025:10,8e3:11,7350:12},o=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350,r.N_,r.N_,r.N_],c=[r.N_,1,2,3,4,5,6,7];function d(e,t){if(!t&&e.sideData[1]&&(t=e.sideData[1]),t){const{profile:a,sampleRate:i,channels:s}=function(e){let t=r.N_,a=r.N_,i=r.N_;var s,n;return e.length>=2&&(t=e[0]>>3&31,a=null!==(s=o[(7&e[0])<<1|e[1]>>7])&&void 0!==s?s:48e3,i=null!==(n=c[e[1]>>3&15])&&void 0!==n?n:2),{profile:t,sampleRate:a,channels:i}}(t);e.codecpar.profile=a,e.codecpar.sampleRate=i,e.codecpar.chLayout.nbChannels=s}}function f(e){const t=n[e.sampleRate],a=e.chLayout.nbChannels,i=e.profile===r.N_?2:e.profile,s=new Uint8Array(2);return s[0]=(31&i)<<3|(14&t)>>1,s[1]=(1&t)<<7|(15&a)<<3,s}function h(e){if(e.length<7)return-1;const t=e[0]<<4|e[1]>>4;if(4095!==t)return-1;const a=1&e[1],r=(192&e[2])>>>6,i=(60&e[2])>>>2,s=(1&e[2])<<2|(192&e[3])>>>6,n=(3&e[3])<<11|e[4]<<3|(224&e[5])>>>5,d=3&e[6];let f=1===a?7:9,h=n-f;return{syncWord:t,profile:r+1,sampleRate:o[i],channels:c[s],aacFrameLength:n,numberOfRawDataBlocksInFrame:d,headerLength:f,framePayloadLength:h}}function l(e,t){function a(){const e=t.readU(2);let a=0;for(let r=0;r<=e;r++)a<<=8,a|=t.readU(8);return a}t||(t=new i.A).appendBuffer(e);const r=t.getPointer(),s={syncWord:0,profile:0,sampleRate:0,channels:0,useSameStreamMux:!1,headerLength:0,framePayloadLength:0,muxLengthBytes:0},n=t.readU(11);if(695!==n)return-1;s.syncWord=n,s.muxLengthBytes=t.readU(13);const d=1===t.readU1();if(s.useSameStreamMux=d,!d){const e=1===t.readU1();if(e&&1===t.readU1())return-1;if(e&&a(),1!==t.readU1())return-1;if(0!==t.readU(6))return-1;if(0!==t.readU(4))return-1;if(0!==t.readU(3))return-1;let r=e?a():0;const i=t.readU(5);r-=5;const n=t.readU(4);r-=4;const d=t.readU(4);if(r-=4,t.readU(3),r-=3,r>0&&t.readU(r),0!==t.readU(3))return-1;if(t.readU(8),1===t.readU1())if(e)a();else{let e=0;for(;;){e<<=8;const a=1===t.readU1();if(e+=t.readU(8),!a)break}}1===t.readU1()&&t.readU(8),s.profile=i+1,s.sampleRate=o[n],s.channels=c[d]}let f=0;for(;;){const e=t.readU(8);if(f+=e,255!==e)break}return s.framePayloadLength=f,s.headerLength=t.getPointer()-r+(8===t.getBitLeft()?0:1),s}}}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[941],{85947:(e,t,a)=>{a.d(t,{A:()=>r});var i=a(134);class r{constructor(){(0,i.A)(this,"type",-1),(0,i.A)(this,"onStreamAdd",void 0)}async destroy(e){}}},34577:(e,t,a)=>{a.r(t),a.d(t,{default:()=>W});var i=a(134),r=a(80662),n=a.n(r),c=a(97860),o=a.n(c),d=a(14686),s=a(61499),l=a(63939),p=a(50932),f=(a(9599),a(4624)),u=a(9705),h=a(85947),m=a(37837),g=a(71517),y=a(77231),A=a(31866),I=a(33919),N=a(72739),x=a(62815),b=a(67659),B=a(59166),k=a(97077),P=a(82014),R=a(21477),S=a(64093),v=a(22576),w=a(95832),C=a(44328),D=a(31865),V=a(93082),_=a(5783),U=a(82774),L=a(67672),M=a(95335),T=a(53260),E=a(13663),z=a(92647),G=a(50011),O=a(34677);const X="src/avformat/formats/IMatroskaFormat.ts";class W extends h.A{constructor(){super(),(0,i.A)(this,"type",8),(0,i.A)(this,"context",void 0),(0,i.A)(this,"blockReader",void 0)}init(e){e.ioReader&&e.ioReader.setEndian(!0);const t={isLive:!0,firstCluster:-BigInt(1),segmentStart:-BigInt(1),header:{version:0,readVersion:0,maxIdLength:4,maxSizeLength:8,docType:"",docTypeVersion:0,docTypeReadVersion:0},seekHead:null,info:null,tracks:null,attachments:null,chapters:null,cues:null,tags:null,currentCluster:{timeCode:BigInt(0),pos:-BigInt(1),block:{pos:-BigInt(1),size:-BigInt(1)},blockGroup:{block:null}},clusterIndexes:[],clusterIndexesPosMap:new(n())};e.privateData=this.context=t}analyzeStreams(e){const t="webm"===this.context.header.docType?A.N:A.e;this.context.tracks&&N.__(this.context.tracks.entry,(a=>{var i,r,n;const c=e.createStream();switch(c.privData=a,c.codecpar.codecId=t[a.codecId]||0,a.type){case 2:c.codecpar.codecType=1;break;case 1:c.codecpar.codecType=0;break;case 17:c.codecpar.codecType=3;break;default:c.codecpar.codecType=-1}a.language&&(c.metadata.language=a.language),a.name&&(c.metadata.name=a.name),a.currentDts=-BigInt(1),a.audio?("A_PCM/FLOAT/IEEE"===a.codecName?64===a.audio.bitDepth?c.codecpar.codecId=65559:32===a.audio.bitDepth&&(c.codecpar.codecId=65557):"A_PCM/INT/BIG"===a.codecName?16===a.audio.bitDepth?c.codecpar.codecId=65537:24===a.audio.bitDepth?c.codecpar.codecId=65549:32===a.audio.bitDepth&&(c.codecpar.codecId=65545):"A_PCM/INT/LIT"===a.codecName&&(8===a.audio.bitDepth?c.codecpar.codecId=65541:16===a.audio.bitDepth?c.codecpar.codecId=65536:24===a.audio.bitDepth?c.codecpar.codecId=65548:32===a.audio.bitDepth&&(c.codecpar.codecId=65544)),c.codecpar.chLayout.nbChannels=a.audio.channels,c.codecpar.sampleRate=0|a.audio.sampleRate,c.codecpar.bitsPerCodedSample=a.audio.bitDepth):a.video&&(c.codecpar.width=a.video.pixelWidth,c.codecpar.height=a.video.pixelHeight,a.video.color&&(L.ai(a.video.color.primaries)&&(c.codecpar.colorPrimaries=a.video.color.primaries),L.ai(a.video.color.transferCharacteristics)&&(c.codecpar.colorTrc=a.video.color.transferCharacteristics),L.ai(a.video.color.range)&&(c.codecpar.colorRange=a.video.color.range),L.ai(a.video.color.matrixCoefficients)&&(c.codecpar.colorSpace=a.video.color.matrixCoefficients)));let o=0;if("V_MS/VFW/FOURCC"===a.codecId&&(null===(i=a.codecPrivate)||void 0===i?void 0:i.size)>=40)c.codecpar.bitsPerCodedSample=a.codecPrivate.data[15]<<8|a.codecPrivate.data[14],c.codecpar.codecTag=a.codecPrivate.data[19]<<24|a.codecPrivate.data[18]<<16|a.codecPrivate.data[17]<<8|a.codecPrivate.data[16],c.codecpar.codecId=T.n[c.codecpar.codecTag]||0,0===c.codecpar.codecId&&(c.codecpar.codecId,E.h[c.codecpar.codecTag]),o=40;else if("V_QUICKTIME"===a.codecId&&(null===(r=a.codecPrivate)||void 0===r?void 0:r.size)>=21){const e=1===c.codecpar.codecType?E.u:E.h;c.codecpar.codecTag=a.codecPrivate.data[3]<<24|a.codecPrivate.data[2]<<16|a.codecPrivate.data[1]<<8|a.codecPrivate.data[0];const t=e[c.codecpar.codecTag];if(t){const e=new Uint8Array(4),t=Number(BigInt.asIntN(32,a.codecPrivate.size));e[0]=t>>>24&255,e[1]=t>>>16&255,e[2]=t>>>8&255,e[3]=255&t,a.codecPrivate.size+=BigInt(4),a.codecPrivate.data=(0,z.A)(Uint8Array,[e,a.codecPrivate.data])}c.codecpar.codecId=t||0}if(null!==(n=a.codecPrivate)&&void 0!==n&&n.data&&a.codecPrivate.size-BigInt(Math.floor(o))>0){let e=a.codecPrivate.data.subarray(o);if(94212===c.codecpar.codecId||94230===c.codecpar.codecId){let t=G.decode(e).split(/\r?\n/);for(let e=0;e<t.length;e++)if("[Events]"===t[e].trim()){t=t.slice(0,e);break}t.push("[Events]"),t.push("Format: ReadOrder, Layer, Style, Name, MarginL, MarginR, MarginV, Effect, Text"),e=G.encode(t.join("\n"))}if(c.codecpar.extradataSize=e.length,c.codecpar.extradata=(0,m.sY)(e.length),(0,d.lW)(c.codecpar.extradata,e.length,e),c.codecpar.extradata)switch(c.codecpar.codecId){case 27:x.XC(c,(0,d.s3)(c.codecpar.extradata,c.codecpar.extradataSize));break;case 173:b.XC(c,(0,d.s3)(c.codecpar.extradata,c.codecpar.extradataSize));break;case 196:B.XC(c,(0,d.s3)(c.codecpar.extradata,c.codecpar.extradataSize));break;case 225:R.XC(c,(0,d.s3)(c.codecpar.extradata,c.codecpar.extradataSize));break;case 139:k.XC(c,(0,d.s3)(c.codecpar.extradata,c.codecpar.extradataSize));break;case 167:P.XC(c,(0,d.s3)(c.codecpar.extradata,c.codecpar.extradataSize));break;case 86018:w.XC(c,(0,d.s3)(c.codecpar.extradata,c.codecpar.extradataSize));break;case 86017:S.XC(c,(0,d.s3)(c.codecpar.extradata,c.codecpar.extradataSize));break;case 86076:v.XC(c,(0,d.s3)(c.codecpar.extradata,c.codecpar.extradataSize))}else{let e;86018===c.codecpar.codecId&&(e=w.Ij(c.codecpar)),e&&(c.codecpar.extradataSize=e.length,c.codecpar.extradata=(0,m.sY)(c.codecpar.extradataSize),(0,d.lW)(c.codecpar.extradata,c.codecpar.extradataSize,e))}}this.context.info&&(c.timeBase.num=1,this.context.info.timestampScale?c.timeBase.den=1e3*y.SF/this.context.info.timestampScale|0:(c.timeBase.den=1e3,this.context.info.timestampScale=y.SF),this.context.info.duration&&(c.duration=BigInt(Math.floor(this.context.info.duration)))),(null==a.default||a.default)&&(c.disposition|=1),a.encodings&&N.__(a.encodings.entry,(e=>{e.compression&&(0,O.A)(e.compression.algo)&&(a.needDecompression=!0),e.encryption&&(0,O.A)(e.encryption.algo)&&(a.needDecryption=!0)}))})),this.context.attachments&&N.__(this.context.attachments.entry,(t=>{const a=e.createStream();a.codecpar.codecType=4,a.privData=t,t.data&&(a.codecpar.extradataSize=Number(BigInt.asIntN(32,t.data.size)),a.codecpar.extradata=(0,m.sY)(a.codecpar.extradataSize),(0,d.lW)(a.codecpar.extradata,a.codecpar.extradataSize,t.data.data))})),this.context.tags&&N.__(this.context.tags.entry,(t=>{var a;if("DURATION"===(null===(a=t.tag)||void 0===a?void 0:a.name)){let a=t.tag.string.replaceAll("\0","").split("."),i=a[0].split(":"),r=BigInt(+i[0])*BigInt(36e8)+BigInt(+i[1])*BigInt(6e7)+BigInt(+i[2])*BigInt(1e6)+BigInt(+a[1])/BigInt(1e3);const n=(0,V.A)(e.streams,t.target.trackUid);n&&(n.duration=(0,C.k)(r,y.KR,n.timeBase))}})),this.context.chapters&&N.__(this.context.chapters.entry,(t=>{const a=t.atom;a&&N.__(a,(t=>{var a,i;e.chapters.push({id:t.uid,start:t.start,end:t.end,timeBase:{num:1,den:1e9},metadata:{title:(null===(a=t.display)||void 0===a?void 0:a.title)||"",language:(null===(i=t.display)||void 0===i?void 0:i.language)||""}})}))}))}async readHeader(e){if(440786851!==await(0,I.aL)(e,this.context.header.maxIdLength))return f.z3("not matroska format",X,409),u.LR;const t=await(0,I.Qb)(e.ioReader,this.context.header.maxSizeLength);if(this.context.header=M.X$(this.context.header,await(0,I.Pb)(e,t,I.jt)),408125543!==await(0,I.aL)(e,this.context.header.maxIdLength))return f.z3("not matroska format",X,418),u.LR;const a=await(0,I.Qb)(e.ioReader,this.context.header.maxSizeLength);this.context.segmentStart=e.ioReader.getPos();const i=e.ioReader.getPos()+a,r=new(o());let n=!1,c=!1;for(;e.ioReader.getPos()<i||!n||!c;){const t=e.ioReader.getPos(),a=await(0,I.aL)(e,this.context.header.maxIdLength);if(a===u.LR){await this.syncTopLevelElement(e,2);continue}const i=await(0,I.Qb)(e.ioReader,this.context.header.maxSizeLength);if(i!==BigInt(u.LR)){if(290298740===a)this.context.isLive=!1,this.context.seekHead=await(0,I.Pb)(e,i,I.Cr);else if(475249515===a)this.context.isLive=!1,this.context.cues=await(0,I.Pb)(e,i,I.eG);else if(272869232===a)this.context.isLive=!1,this.context.chapters=await(0,I.Pb)(e,i,I.Y0);else if(357149030===a)this.context.info=await(0,I.Pb)(e,i,I.qi);else if(307544935===a)this.context.tags=await(0,I.Pb)(e,i,I.hK);else if(423732329===a)this.context.attachments=await(0,I.Pb)(e,i,I.qp);else if(374648427===a)n=!0,this.context.tracks=await(0,I.Pb)(e,i,I.Wy);else if(524531317===a){if(c=!0,this.context.firstCluster=t,this.context.isLive||!this.context.seekHead||!(1&e.ioReader.flags))break;const a=this.context.seekHead.entry;let i=0;for(;i<a.length;i++)if(!r.has(a[i].id)){await e.ioReader.seek(a[i].pos+this.context.segmentStart);break}if(i===a.length)break}else await e.ioReader.skip(Number(BigInt.asIntN(32,i)));r.add(a)}else await this.syncTopLevelElement(e,2)}return this.context.firstCluster>0&&await e.ioReader.seek(this.context.firstCluster),this.analyzeStreams(e),0}parseAdditions(e,t){for(let i=0;i<t.entry.length;i++){var a;const r=t.entry[i];if(null!==(a=r.additional)&&void 0!==a&&a.size){4===r.additionalId&&f.R8("ITU_T_T35 not support now",X,512);const t=(0,m.sY)(r.additional.data.length+8);U.Cv(t,BigInt(r.additionalId>>>0)),(0,d.lW)(t+8,r.additional.data.length,r.additional.data),(0,g.Ow)(e,15,t,r.additional.data.length+8)}}}async parseBlock(e,t){var a,i,r;const n=(null===(a=this.context.currentCluster.block)||void 0===a?void 0:a.data)||this.context.currentCluster.blockGroup.block.data;let c=null===(i=this.context.currentCluster.block)||void 0===i?void 0:i.pos;c<0&&(c=this.context.currentCluster.blockGroup.block.pos);let o,h=-1,A=BigInt(0);null!==(r=this.context.currentCluster.blockGroup)&&void 0!==r&&r.block&&(o=this.context.currentCluster.blockGroup.additions,h=this.context.currentCluster.blockGroup.reference?0===this.context.currentCluster.blockGroup.reference.length?1:0:1,this.context.currentCluster.blockGroup.duration&&(A=this.context.currentCluster.blockGroup.duration)),this.blockReader?this.blockReader.resetBuffer(n):this.blockReader=new D.A(n);const N=this.blockReader.getPos(),x=Number(BigInt.asUintN(32,await(0,I.Qb)(this.blockReader,8))),b=(0,_.A)(e.streams,x);if(!b)return f.z3(`invalid track number ${x}`,X,563),u.OY;const B=this.blockReader.readInt16(),k=this.blockReader.readUint8();-1===h&&(h=128&k?1:0);let P=0,R=[];switch(k>>>1&3){case 1:{P=this.blockReader.readUint8()+1;let e=0;for(let t=0;t<P-1;t++){let t=0;for(;;){const e=this.blockReader.readUint8();if(0===e)break;if(255!==e){t+=e;break}t+=255}e+=t,R.push(t)}R.push(n.length-Number(BigInt.asIntN(32,this.blockReader.getPos()-N))-e);break}case 3:{P=this.blockReader.readUint8()+1,R.push(await(0,I.Ag)(this.blockReader,4));let e=R[0];for(let t=1;t<P-1;t++){let a=await(0,I.pf)(this.blockReader,4)+R[t-1];e+=a,R.push(a)}R.push(n.length-Number(BigInt.asIntN(32,this.blockReader.getPos()-N))-e);break}case 2:P=this.blockReader.readUint8()+1;const e=(n.length-Number(BigInt.asIntN(32,this.blockReader.getPos()-N)))/P;for(let t=0;t<P;t++)R.push(e);break;case 0:P=1,R.push(n.length-Number(BigInt.asIntN(32,this.blockReader.getPos()-N)))}const S=b.privData,v=S.timeScale||1;if(S.needDecryption)throw new Error("not support encryption stream");let w=(this.context.currentCluster.timeCode+BigInt(Math.floor(B*v)))*BigInt(0|this.context.info.timestampScale);S.codecDelay&&(w-=S.codecDelay),w/=BigInt(1e3),w=(0,C.k)(w,y.KR,b.timeBase),A=BigInt(Math.floor(Number(BigInt.asIntN(32,A))*v))*BigInt(0|this.context.info.timestampScale),A/=BigInt(1e3),A=(0,C.k)(A,y.KR,b.timeBase);for(let a=0;a<P;a++){const i=0!==a?(0,g._5)():t;let r,n=R[a],u=0;if(S.needDecompression){const e=S.encodings.entry.find((e=>!!e.compression));3===e.compression.algo?(r=e.compression.settings.data,n+=r.length,u=r.length):f.h2(`not support compression stream, algo: ${e.compression.algo}`,X,673)}p.M[17](i+56,c+this.blockReader.getPos()),p.M[15](i+32,b.index),(0,d.Mr)(i+72,b.timeBase[s.o9],8),p.M[17](i+8,w),p.M[15](i+28,n),p.M[17](i+48,A);const I=(0,m.sY)(n);r&&(0,d.lW)(I,u,r),(0,d.lW)(I+u,R[a],this.blockReader.readBuffer(R[a])),(0,g.NX)(i,I,n),0!==b.codecpar.codecType?(h&&p.M[15](i+36,1|l.f[15](i+36)),p.M[17](i+16,w)):(27!==b.codecpar.codecId&&173!==b.codecpar.codecId&&196!==b.codecpar.codecId||p.M[15](i+80,1),h?(p.M[15](i+36,1|l.f[15](i+36)),S.gopCount>1?(S.dtsDelta=(0,C.k)(S.maxPts-S.minPts,b.timeBase,y.KR)/BigInt(S.gopCount-1|0),S.firstGopGot=!0):S.dtsDelta||(S.dtsDelta=(0,C.k)(BigInt(33),y.i0,y.KR)),S.gopCount=1,S.minPts=w,S.maxPts=w):(!S.firstGopGot&&S.gopCount>2&&w>S.maxPts?S.dtsDelta=(0,C.k)(S.maxPts-S.minPts,b.timeBase,y.KR)/BigInt(S.gopCount-1|0):S.dtsDelta||(S.dtsDelta=(0,C.k)(BigInt(33),y.i0,y.KR)),S.gopCount++),w>S.maxPts&&(S.maxPts=w),S.currentDts>=BigInt(0)?A?(S.currentDts=S.currentDts+(0,C.k)(A,b.timeBase,y.KR),p.M[17](i+16,(0,C.k)(S.currentDts,y.KR,b.timeBase))):(S.currentDts=S.currentDts+S.dtsDelta,p.M[17](i+16,(0,C.k)(S.currentDts,y.KR,b.timeBase))):(S.currentDts=(0,C.k)(l.f[17](i+8),b.timeBase,y.KR),p.M[17](i+16,l.f[17](i+8)),S.currentDts<BigInt(1e5)&&(S.currentDts=BigInt(0),p.M[17](i+16,BigInt(0))))),o&&this.parseAdditions(i,o),0!==a&&e.interval.packetBuffer.push(i)}return this.context.currentCluster.block={pos:-BigInt(1),size:-BigInt(1)},this.context.currentCluster.blockGroup={block:null},0}addClusterIndex(e){if(this.context.clusterIndexesPosMap.has(e.pos))return;const t=N.El(this.context.clusterIndexes,(t=>t.time<e.time?1:-1));t>-1?(this.context.clusterIndexesPosMap.set(e.pos,t),this.context.clusterIndexes.splice(t,0,e)):(this.context.clusterIndexesPosMap.set(e.pos,this.context.clusterIndexes.length),this.context.clusterIndexes.push(e))}async readAVPacket_(e,t){const a=e.ioReader.getPos(),i=await(0,I.aL)(e,this.context.header.maxIdLength);if(i===u.LR)return await this.syncTopLevelElement(e),this.readAVPacket_(e,t);const r=await(0,I.Qb)(e.ioReader,this.context.header.maxSizeLength);if(r===BigInt(u.LR))return await this.syncTopLevelElement(e),this.readAVPacket_(e,t);if(524531317===i){this.context.currentCluster.pos=a,this.context.currentCluster.timeCode=BigInt(0),await(0,I.Pb)(e,r,I.GZ,this.context.currentCluster,[163,160]),this.addClusterIndex({time:this.context.currentCluster.timeCode,pos:a});let i=await this.parseBlock(e,t);if(i===u.OY)return this.readAVPacket_(e,t);if(i<0)return i}else if(163===i){this.context.currentCluster.block={pos:e.ioReader.getPos(),size:r,data:await e.ioReader.readBuffer(Number(BigInt.asIntN(32,r)))};let a=await this.parseBlock(e,t);if(a===u.OY)return this.readAVPacket_(e,t);if(a<0)return a}else{if(160!==i)return 475249515===i||307544935===i||423732329===i||272869232===i||357149030===i||374648427===i||290298740===i?(await e.ioReader.skip(Number(BigInt.asIntN(32,r))),this.readAVPacket_(e,t)):(await this.syncTopLevelElement(e),this.readAVPacket_(e,t));{await(0,I.Pb)(e,r,I.Wg,this.context.currentCluster.blockGroup);let a=await this.parseBlock(e,t);if(a===u.OY)return this.readAVPacket_(e,t);if(a<0)return a}}return 0}async readAVPacket(e,t){try{return await this.readAVPacket_(e,t)}catch(t){return-1048576!==e.ioReader.error?(f.z3(`read packet error, ${t}`,X,890),u.LR):e.ioReader.error}}async syncTopLevelElement(e,t=3){let a=y.Dh;for(;;)try{if(8&e.ioReader.flags)break;const i=e.ioReader.getPos(),r=await e.ioReader.peekUint32();if(524531317===r||475249515===r||307544935===r||423732329===r||272869232===r||357149030===r||374648427===r||290298740===r){a=i;let r=0;await e.ioReader.skip(4);const n=await(0,I.Qb)(e.ioReader,this.context.header.maxSizeLength);if(n===BigInt(u.LR)){await e.ioReader.seek(i+BigInt(1));continue}for(await e.ioReader.skip(Number(BigInt.asIntN(32,n)));r<=t;){const t=await(0,I.aL)(e,this.context.header.maxIdLength),a=await(0,I.Qb)(e.ioReader,this.context.header.maxSizeLength);if(524531317!==t&&475249515!==t&&307544935!==t&&423732329!==t&&272869232!==t&&357149030!==t&&374648427!==t&&290298740!==t)break;r++,await e.ioReader.skip(Number(BigInt.asIntN(32,a)))}if(!(r<t))break;await e.ioReader.seek(a+BigInt(1)),a=y.Dh}else await e.ioReader.skip(1),a=y.Dh}catch(e){break}a!==y.Dh&&await e.ioReader.seek(a)}async seek(e,t,a,i){var r;const n=e.ioReader.getPos(),c=(0,C.k)(a,t.timeBase,y.KR);let o=y.Dh;if(null!==(r=this.context.cues)&&void 0!==r&&r.entry.length){const e=t.privData;for(let t=0;t<this.context.cues.entry.length;t++)if((this.context.cues.entry[t].time||BigInt(0))*BigInt(0|this.context.info.timestampScale)/BigInt(1e3)>c){const a=this.context.cues.entry[Math.max(t-1,0)].pos;if(a.length){const t=a.find((t=>t.track===e.number));if(t){o=t.pos+this.context.segmentStart;break}}}}if(o===y.Dh&&this.context.clusterIndexes.length){for(let e=0;e<this.context.clusterIndexes.length;e++)if(this.context.clusterIndexes[e].time*BigInt(0|this.context.info.timestampScale)/BigInt(1e3)>c){o=this.context.clusterIndexes[Math.max(e-1,0)].pos;break}o===y.Dh&&(o=this.context.clusterIndexes[this.context.clusterIndexes.length-1].pos)}return o!==y.Dh?(await e.ioReader.seek(o),N.__(this.context.tracks.entry,(e=>{e.currentDts=-BigInt(1)})),n):BigInt(u.E$)}getAnalyzeStreamsCount(){var e,t;return null!==(e=null===(t=this.context.tracks)||void 0===t?void 0:t.entry.length)&&void 0!==e?e:2}}},13663:(e,t,a)=>{a.d(t,{h:()=>r,u:()=>n});var i=a(79682);const r={[(0,i.A)("mp4v")]:12,[(0,i.A)("DIVX")]:12,[(0,i.A)("XVID")]:12,[(0,i.A)("3IV2")]:12,[(0,i.A)("vvc1")]:196,[(0,i.A)("vvi1")]:196,[(0,i.A)("hev1")]:173,[(0,i.A)("hvc1")]:173,[(0,i.A)("dvhe")]:173,[(0,i.A)("hev1")]:173,[(0,i.A)("avc1")]:27,[(0,i.A)("avc2")]:27,[(0,i.A)("avc3")]:27,[(0,i.A)("avc4")]:27,[(0,i.A)("ai5p")]:27,[(0,i.A)("ai5q")]:27,[(0,i.A)("ai52")]:27,[(0,i.A)("ai53")]:27,[(0,i.A)("ai55")]:27,[(0,i.A)("ai56")]:27,[(0,i.A)("ai1p")]:27,[(0,i.A)("ai1q")]:27,[(0,i.A)("ai12")]:27,[(0,i.A)("ai13")]:27,[(0,i.A)("ai15")]:27,[(0,i.A)("ai16")]:27,[(0,i.A)("AVin")]:27,[(0,i.A)("aivx")]:27,[(0,i.A)("rv64")]:27,[(0,i.A)("xalg")]:27,[(0,i.A)("avlg")]:27,[(0,i.A)("dva1")]:27,[(0,i.A)("dvav")]:27,[(0,i.A)("vp08")]:139,[(0,i.A)("vp09")]:167,[(0,i.A)("av01")]:225},n={[(0,i.A)("mp4a")]:86018,[(0,i.A)("ac-3")]:86019,[(0,i.A)("sac3")]:86019,[(0,i.A)("ac-4")]:86119,[(0,i.A)("dtsc")]:86020,[(0,i.A)("dtsh")]:86020,[(0,i.A)("dtsl")]:86020,[(0,i.A)("dtse")]:86020,[(0,i.A)("DTS ")]:86020,[(0,i.A)("ec-3")]:86056,[(0,i.A)(".mp3")]:86017,[(0,i.A)("mp3 ")]:86017,1836253269:86017,[(0,i.A)("spex")]:86051,[(0,i.A)("SPXN")]:86051,[(0,i.A)("fLaC")]:86028,[(0,i.A)("Opus")]:86076,[(0,i.A)("alaw")]:65543,[(0,i.A)("ulaw")]:65542,[(0,i.A)("fl32")]:65557,[(0,i.A)("fl64")]:65559,[(0,i.A)("twos")]:65537,[(0,i.A)("lpcm")]:65536,[(0,i.A)("sowt")]:65536,[(0,i.A)("in24")]:65548,[(0,i.A)("in32")]:65544,[(0,i.A)("sowt")]:65540,[(0,i.A)("raw ")]:65541,[(0,i.A)("NONE")]:65541}},5783:(e,t,a)=>{function i(e,t){for(let a=0;a<e.length;a++)if(e[a].privData.number===t)return e[a]}a.d(t,{A:()=>i})},93082:(e,t,a)=>{function i(e,t){for(let a=0;a<e.length;a++)if(e[a].privData.uid===t)return e[a]}a.d(t,{A:()=>i})},33919:(e,t,a)=>{a.d(t,{Ag:()=>N,Cr:()=>s,GZ:()=>A,Pb:()=>R,Qb:()=>b,Wg:()=>y,Wy:()=>p,Y0:()=>u,aL:()=>P,eG:()=>h,hK:()=>g,jt:()=>I,pf:()=>x,qi:()=>l,qp:()=>f});var i=a(4624),r=a(9705),n=a(67672),c=a(72739);const o="src/avformat/formats/matroska/imatroska.ts",d=BigInt(20971520),s={19899:{type:9,isArray:!0,filedName:"entry",child:{21419:{type:1,filedName:"id"},21420:{type:2,filedName:"pos"}}}},l={29604:{type:2,filedName:"segmentUUID"},2807729:{type:1,filedName:"timestampScale"},17545:{type:5,filedName:"duration"},31657:{type:7,filedName:"title"},19840:{type:7,filedName:"muxingApp"},22337:{type:7,filedName:"writingApp"},17505:{type:8,filedName:"dateUTC"}},p={174:{type:9,isArray:!0,filedName:"entry",child:{215:{type:1,filedName:"number"},29637:{type:1,filedName:"uid"},131:{type:1,filedName:"type"},21358:{type:7,filedName:"name"},136:{type:10,filedName:"default"},185:{type:10,filedName:"enabled"},2274716:{type:7,filedName:"language"},2306383:{type:6,filedName:"timeScale"},134:{type:7,filedName:"codecId"},2459272:{type:7,filedName:"codecName"},25506:{type:8,filedName:"codecPrivate"},225:{type:9,filedName:"audio",child:{181:{type:5,filedName:"sampleRate"},30901:{type:5,filedName:"outSampleRate"},25188:{type:1,filedName:"bitDepth"},159:{type:1,filedName:"channels"}}},224:{type:9,filedName:"video",child:{2327523:{type:1,filedName:"framerate"},21680:{type:1,filedName:"displayWidth"},21690:{type:1,filedName:"displayHeight"},176:{type:1,filedName:"pixelWidth"},186:{type:1,filedName:"pixelHeight"},3061028:{type:8,filedName:"colorSpace"},21440:{type:1,filedName:"alphaMode"},21936:{type:9,filedName:"color",child:{21937:{type:1,filedName:"matrixCoefficients"},21938:{type:1,filedName:"bitsPerChannel"},21941:{type:1,filedName:"cbSubHorz"},21942:{type:1,filedName:"cbSubVert"},21939:{type:1,filedName:"chromaSubHorz"},21940:{type:1,filedName:"chromaSubVert"},21943:{type:1,filedName:"chromaSitingHorz"},21944:{type:1,filedName:"chromaSitingVert"},21945:{type:1,filedName:"range"},21946:{type:1,filedName:"transferCharacteristics"},21947:{type:1,filedName:"primaries"},21948:{type:1,filedName:"maxCll"},21949:{type:1,filedName:"maxFall"},21968:{type:9,filedName:"masteringMeta",child:{21969:{type:5,filedName:"rx"},21970:{type:5,filedName:"ry"},21971:{type:5,filedName:"gx"},21972:{type:5,filedName:"gy"},21973:{type:5,filedName:"bx"},21974:{type:5,filedName:"by"},21975:{type:5,filedName:"whiteX"},21976:{type:5,filedName:"whiteY"},21978:{type:5,isArray:!0,filedName:"minLuminance"},21977:{type:5,filedName:"maxLuminance"}}}}},30320:{type:9,filedName:"projection",child:{30321:{type:1,filedName:"type"},30322:{type:8,filedName:"private"},30323:{type:5,filedName:"yaw"},30324:{type:5,filedName:"pitch"},30325:{type:5,filedName:"roll"}}},21682:{type:1,filedName:"displayUnit"},154:{type:1,filedName:"interlaced"},157:{type:1,filedName:"fieldOrder"},21432:{type:1,filedName:"stereoMode"},21683:{type:1,filedName:"aspectRatio"}}},226:{type:9,filedName:"operations",child:{227:{type:9,isArray:!0,filedName:"entry",child:{228:{type:9,isArray:!0,filedName:"planes",child:{230:{type:1,filedName:"type"},229:{type:1,filedName:"uid"}}}}}}},28032:{type:9,filedName:"encodings",child:{25152:{type:9,isArray:!0,filedName:"entry",child:{20530:{type:1,filedName:"scope"},20531:{type:1,filedName:"type"},20532:{type:9,filedName:"compression",child:{16980:{type:1,filedName:"algo"},16981:{type:8,filedName:"settings"}}},20533:{type:9,filedName:"encryption",child:{18401:{type:1,filedName:"algo"},18402:{type:8,filedName:"keyId"}}}}}}}}}},f={24999:{type:9,isArray:!0,filedName:"entry",child:{18094:{type:1,filedName:"uid"},18030:{type:7,filedName:"name"},18016:{type:7,filedName:"mime"},18046:{type:7,filedName:"description"},18012:{type:8,filedName:"data"}}}},u={17849:{type:9,isArray:!0,filedName:"entry",child:{182:{type:9,isArray:!0,filedName:"atom",child:{145:{type:2,filedName:"start"},146:{type:2,filedName:"end"},29636:{type:1,filedName:"uid"},128:{type:9,filedName:"display",child:{133:{type:7,filedName:"title"},17276:{type:7,filedName:"language"}}}}}}}},h={187:{type:9,isArray:!0,filedName:"entry",child:{179:{type:2,filedName:"time"},183:{type:9,isArray:!0,filedName:"pos",child:{247:{type:1,filedName:"track"},241:{type:2,filedName:"pos"}}}}}},m={17827:{type:7,filedName:"name"},17543:{type:7,filedName:"string"},17530:{type:7,filedName:"language"},17540:{type:1,filedName:"default"},17588:{type:1,filedName:"default"},26568:{type:9,filedName:"sub"}};m[26568].child=m;const g={29555:{type:9,isArray:!0,filedName:"entry",child:{26568:{type:9,filedName:"tag",child:m},25536:{type:9,filedName:"target",child:{25546:{type:7,filedName:"type"},26826:{type:1,filedName:"typeValue"},25541:{type:1,filedName:"trackUid"},25540:{type:1,filedName:"chapterUid"},25542:{type:1,filedName:"attachUid"}}}}}},y={161:{type:8,filedName:"block"},30113:{type:9,filedName:"additions",child:{166:{type:9,isArray:!0,filedName:"entry",child:{238:{type:1,filedName:"additionalId"},165:{type:8,filedName:"additional"}}}}},155:{type:2,filedName:"duration"},30114:{type:4,filedName:"discardPadding"},251:{type:4,isArray:!0,filedName:"reference"},164:{type:10,filedName:"nonSimple"}},A={163:{type:8,filedName:"block"},160:{type:9,filedName:"blockGroup",child:y},231:{type:2,filedName:"timeCode"},167:{type:2,filedName:"pos"},171:{type:2,filedName:"prevSize"}},I={17030:{type:1,filedName:"version"},17143:{type:1,filedName:"readVersion"},17138:{type:1,filedName:"maxIdLength"},17139:{type:1,filedName:"maxSizeLength"},17026:{type:7,filedName:"docType"},17031:{type:1,filedName:"docTypeVersion"},17029:{type:1,filedName:"docTypeReadVersion"}};async function N(e,t){const a=e.getPos();let n=await e.readUint8();if(!n)return i.z3(`0x00 as pos ${a} invalid as first byte of an EBML number`,o,768),r.LR;let c=1;for(;!(128&n);)c++,n<<=1;if(n&=127,c>t)return i.z3(`Length ${c} indicated by an EBML number's first byte ${n.toString(16)} at pos ${a} exceeds max length ${t}.`,o,781),r.LR;let d=n>>>c-1;for(;--c;)d<<=8,d|=await e.readUint8();return d}async function x(e,t){const a=e.getPos();return await N(e,t)-((1<<7*Number(BigInt.asIntN(32,e.getPos()-a))-1)-1)}async function b(e,t){const a=e.getPos();let n=await e.readUint8(),c=1;if(!n)return i.z3(`0x00 as pos ${a} invalid as first byte of an EBML number`,o,819),BigInt(r.LR);for(;!(128&n);)c++,n<<=1;if(n&=127,c>t)return i.z3(`Length ${c} indicated by an EBML number's first byte ${n.toString(16)} at pos ${a} exceeds max length ${t}.`,o,830),BigInt(r.LR);let d=BigInt(Math.floor(n>>>c-1));for(;--c;){d<<=BigInt(8);const t=await e.readUint8();d|=BigInt(Math.floor(t))}return d}async function B(e,t){switch(t){case BigInt(0):return 0;case BigInt(1):return e.ioReader.readUint8();case BigInt(2):return e.ioReader.readUint16();case BigInt(3):return e.ioReader.readUint24();case BigInt(4):return e.ioReader.readUint32();case BigInt(8):return e.ioReader.readUint64()}let a=BigInt(0),i=0;for(;i++<t;){const t=await e.ioReader.readUint8();a=a<<BigInt(8)|BigInt.asUintN(64,BigInt(Math.floor(t)))}return a}async function k(e,t){switch(t){case BigInt(0):return 0;case BigInt(1):return e.ioReader.readInt8();case BigInt(2):return e.ioReader.readInt16();case BigInt(4):return e.ioReader.readInt32();case BigInt(8):return e.ioReader.readInt64()}let a=BigInt(0),i=0;for(;i++<t;){const t=await e.ioReader.readUint8();a=a<<BigInt(8)|BigInt.asUintN(64,BigInt(Math.floor(t)))}return t===BigInt(3)?Number(BigInt.asIntN(32,BigInt.asIntN(24,a))):BigInt.asIntN(64,a)}async function P(e,t){const a=e.ioReader.getPos();let n=await e.ioReader.peekUint8();if(!n)return i.z3(`0x00 as pos ${a} invalid as first byte of an EBML number`,o,923),r.LR;let c=1;for(;!(128&n);)c++,n<<=1;if(c>t)return i.z3(`Length ${c} indicated by an EBML number's first byte ${n.toString(16)} at pos ${a} exceeds max length ${t}.`,o,935),r.LR;let d=0;for(;c--;)d<<=8,d|=await e.ioReader.readUint8();return d}async function R(e,t,a,i={},r=[]){return await async function(e,t,a){const i=e.privateData,r=e.ioReader.getPos();for(;e.ioReader.getPos()<r+t;){const t=await P(e,i.header.maxIdLength),r=await b(e.ioReader,i.header.maxSizeLength);if(e.ioReader.getPos(),!1===await a(t,r))return}}(e,t,(async(t,o)=>{if(a[t]){const r=a[t];let c;switch(r.type){case 1:c=await B(e,o);break;case 2:c=await B(e,o),n.ai(c)&&(c=BigInt(c));break;case 3:c=await k(e,o);break;case 4:c=await k(e,o),n.ai(c)&&(c=BigInt(c));break;case 6:case 5:c=await async function(e,t){return t===BigInt(4)?e.ioReader.readFloat():t===BigInt(8)?e.ioReader.readDouble():(await e.ioReader.skip(Number(BigInt.asIntN(32,t))),0)}(e,o);break;case 7:c=await e.ioReader.readString(Number(BigInt.asIntN(32,o)));break;case 10:c=!!await B(e,o);break;case 8:c={pos:e.ioReader.getPos(),size:o,data:o<d?await e.ioReader.readBuffer(Number(BigInt.asIntN(32,o))):null};break;case 9:c=r.child?await R(e,o,r.child):{};break;default:await e.ioReader.skip(Number(BigInt.asIntN(32,o)))}if(null!=c)if(r.isArray){const e=i[r.filedName]||[];e.push(c),i[r.filedName]=e}else i[r.filedName]=c}else await e.ioReader.skip(Number(BigInt.asIntN(32,o)));if(r.length&&c.zy(r,t))return!1})),i}},31866:(e,t,a)=>{a.d(t,{N:()=>r,e:()=>i});const i={A_AAC:86018,A_AC3:86019,A_ALAC:86032,A_DTS:86020,A_EAC3:86056,A_FLAC:86028,A_MLP:86045,"A_MPEG/L2":86016,"A_MPEG/L1":86058,"A_MPEG/L3":86017,A_OPUS:86076,"A_OPUS/EXPERIMENTAL":86076,"A_PCM/FLOAT/IEEE":65557,"A_PCM/INT/BIG":65537,"A_PCM/INT/LIT":65536,"A_QUICKTIME/QDMC":86066,"A_QUICKTIME/QDM2":86035,"A_REAL/14_4":77824,"A_REAL/28_8":77825,"A_REAL/ATRC":86047,"A_REAL/COOK":86036,"A_REAL/SIPR":86057,A_TRUEHD:86060,A_TTA1:86038,A_VORBIS:86021,A_WAVPACK4:86041,"D_WEBVTT/SUBTITLES":94226,"D_WEBVTT/CAPTIONS":94226,"D_WEBVTT/DESCRIPTIONS":94226,"D_WEBVTT/METADATA":94226,"S_TEXT/UTF8":94225,"S_TEXT/ASCII":94210,"S_TEXT/ASS":94230,"S_TEXT/SSA":94230,S_ASS:94230,S_SSA:94230,S_VOBSUB:94208,S_DVBSUB:94209,"S_HDMV/PGS":94214,"S_HDMV/TEXTST":94231,V_AV1:225,V_DIRAC:116,V_FFV1:33,V_MJPEG:7,V_MPEG1:1,V_MPEG2:2,"V_MPEG4/ISO/ASP":12,"V_MPEG4/ISO/AP":12,"V_MPEG4/ISO/SP":12,"V_MPEG4/ISO/AVC":27,"V_MPEGH/ISO/HEVC":173,"V_MPEGH/ISO/VVC":196,"V_MPEG4/MS/V3":16,V_PRORES:147,"V_REAL/RV10":5,"V_REAL/RV20":6,"V_REAL/RV30":68,"V_REAL/RV40":69,V_SNOW:208,V_THEORA:30,V_UNCOMPRESSED:13,V_VP8:139,V_VP9:167},r={V_VP8:139,V_VP9:167,V_AV1:225,A_VORBIS:86021,A_OPUS:86076,"D_WEBVTT/SUBTITLES":94226,"D_WEBVTT/CAPTIONS":94226,"D_WEBVTT/DESCRIPTIONS":94226,"D_WEBVTT/METADATA":94226}},53260:(e,t,a)=>{a.d(t,{g:()=>r,n:()=>n});var i=a(79682);const r={1:65541,2:69638,3:65557,6:65543,7:65542,10:86052,16:69664,17:69633,23:69664,32:69646,34:86037,49:86046,50:86046,56:73728,66:86068,69:69643,20:69643,64:69643,97:69635,98:69634,100:69643,105:69633,117:86079,131:86069,255:86018,273:86068,5632:86018,5634:86065,8192:86019},n={[(0,i.A)("H264")]:27,[(0,i.A)("h264")]:27,[(0,i.A)("X264")]:27,[(0,i.A)("x264")]:27,[(0,i.A)("avc1")]:27,[(0,i.A)("DAVC")]:27,[(0,i.A)("SMV2")]:27,[(0,i.A)("VSSH")]:27,[(0,i.A)("Q264")]:27,[(0,i.A)("V264")]:27,[(0,i.A)("GAVC")]:27,[(0,i.A)("UMSV")]:27,[(0,i.A)("tshd")]:27,[(0,i.A)("INMC")]:27,[(0,i.A)("FMP4")]:12,[(0,i.A)("DIVX")]:12,[(0,i.A)("DX50")]:12,[(0,i.A)("XVID")]:12,[(0,i.A)("MP4S")]:12,[(0,i.A)("M4S2")]:12,[(0,i.A)("DIVX")]:12,4:12,[(0,i.A)("ZMP4")]:12,[(0,i.A)("DIV1")]:12,[(0,i.A)("BLZ0")]:12,[(0,i.A)("mp4v")]:12,[(0,i.A)("UMP4")]:12,[(0,i.A)("WV1F")]:12,[(0,i.A)("SEDG")]:12,[(0,i.A)("RMP4")]:12,[(0,i.A)("3IV2")]:12,[(0,i.A)("WAWV")]:12,[(0,i.A)("FFDS")]:12,[(0,i.A)("FVFW")]:12,[(0,i.A)("DCOD")]:12,[(0,i.A)("MVXM")]:12,[(0,i.A)("PM4V")]:12,[(0,i.A)("SMP4")]:12,[(0,i.A)("DXGM")]:12,[(0,i.A)("VIDM")]:12,[(0,i.A)("M4T3")]:12,[(0,i.A)("GEOX")]:12,[(0,i.A)("G264")]:12,[(0,i.A)("HDX4")]:12,[(0,i.A)("DM4V")]:12,[(0,i.A)("DMK2")]:12,[(0,i.A)("DYM4")]:12,[(0,i.A)("DIGI")]:12,[(0,i.A)("EPHV")]:12,[(0,i.A)("EM4A")]:12,[(0,i.A)("M4CC")]:12,[(0,i.A)("SN40")]:12,[(0,i.A)("VSPX")]:12,[(0,i.A)("ULDX")]:12,[(0,i.A)("GEOV")]:12,[(0,i.A)("SIPP")]:12,[(0,i.A)("SM4V")]:12,[(0,i.A)("XVIX")]:12,[(0,i.A)("DreX")]:12,[(0,i.A)("QMP4")]:12,[(0,i.A)("PLV1")]:12,[(0,i.A)("GLV4")]:12,[(0,i.A)("GMP4")]:12,[(0,i.A)("MNM4")]:12,[(0,i.A)("GTM4")]:12,[(0,i.A)("MPG4")]:14,[(0,i.A)("MP41")]:14,[(0,i.A)("MP42")]:15,[(0,i.A)("DIV2")]:15,[(0,i.A)("MP43")]:16,[(0,i.A)("DIV3")]:16,[(0,i.A)("MPG3")]:16,[(0,i.A)("DIV5")]:16,[(0,i.A)("DIV6")]:16,[(0,i.A)("DIV4")]:16,[(0,i.A)("DVX3")]:16,[(0,i.A)("AP41")]:16,[(0,i.A)("COL1")]:16,[(0,i.A)("COL0")]:16,[(0,i.A)("VP80")]:139,[(0,i.A)("VP90")]:167}},79682:(e,t,a)=>{a.d(t,{A:()=>n});var i=a(4624);const r="src/avformat/function/mktagle.ts";function n(e){4!==e.length&&i.R8(`tag length is not 4, tag: ${e}`,r,30);let t=0;for(let a=3;a>=0;a--)t=t<<8|e.charCodeAt(a);return t}},95832:(e,t,a)=>{a.d(t,{Bq:()=>p,Ij:()=>l,XC:()=>s,f7:()=>f,uF:()=>n});var i=a(77231),r=a(37246);const n={1:"Main",2:"LC",3:"LC",4:"LC",5:"HE",6:"HE"},c={96e3:0,88200:1,64e3:2,48e3:3,44100:4,32e3:5,24e3:6,22050:7,16e3:8,12e3:9,11025:10,8e3:11,7350:12},o=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350,i.N_,i.N_,i.N_],d=[i.N_,1,2,3,4,5,6,7];function s(e,t){if(!t&&e.sideData[1]&&(t=e.sideData[1]),t){const{profile:a,sampleRate:r,channels:n}=function(e){let t=i.N_,a=i.N_,r=i.N_;var n,c;return e.length>=2&&(t=e[0]>>3&31,a=null!==(n=o[(7&e[0])<<1|e[1]>>7])&&void 0!==n?n:48e3,r=null!==(c=d[e[1]>>3&15])&&void 0!==c?c:2),{profile:t,sampleRate:a,channels:r}}(t);e.codecpar.profile=a,e.codecpar.sampleRate=r,e.codecpar.chLayout.nbChannels=n}}function l(e){const t=c[e.sampleRate],a=e.chLayout.nbChannels,r=e.profile===i.N_?2:e.profile,n=new Uint8Array(2);return n[0]=(31&r)<<3|(14&t)>>1,n[1]=(1&t)<<7|(15&a)<<3,n}function p(e){if(e.length<7)return-1;const t=e[0]<<4|e[1]>>4;if(4095!==t)return-1;const a=1&e[1],i=(192&e[2])>>>6,r=(60&e[2])>>>2,n=(1&e[2])<<2|(192&e[3])>>>6,c=(3&e[3])<<11|e[4]<<3|(224&e[5])>>>5,s=3&e[6];let l=1===a?7:9,p=c-l;return{syncWord:t,profile:i+1,sampleRate:o[r],channels:d[n],aacFrameLength:c,numberOfRawDataBlocksInFrame:s,headerLength:l,framePayloadLength:p}}function f(e,t){function a(){const e=t.readU(2);let a=0;for(let i=0;i<=e;i++)a<<=8,a|=t.readU(8);return a}t||(t=new r.A).appendBuffer(e);const i=t.getPointer(),n={syncWord:0,profile:0,sampleRate:0,channels:0,useSameStreamMux:!1,headerLength:0,framePayloadLength:0,muxLengthBytes:0},c=t.readU(11);if(695!==c)return-1;n.syncWord=c,n.muxLengthBytes=t.readU(13);const s=1===t.readU1();if(n.useSameStreamMux=s,!s){const e=1===t.readU1();if(e&&1===t.readU1())return-1;if(e&&a(),1!==t.readU1())return-1;if(0!==t.readU(6))return-1;if(0!==t.readU(4))return-1;if(0!==t.readU(3))return-1;let i=e?a():0;const r=t.readU(5);i-=5;const c=t.readU(4);i-=4;const s=t.readU(4);if(i-=4,t.readU(3),i-=3,i>0&&t.readU(i),0!==t.readU(3))return-1;if(t.readU(8),1===t.readU1())if(e)a();else{let e=0;for(;;){e<<=8;const a=1===t.readU1();if(e+=t.readU(8),!a)break}}1===t.readU1()&&t.readU(8),n.profile=r+1,n.sampleRate=o[c],n.channels=d[s]}let l=0;for(;;){const e=t.readU(8);if(l+=e,255!==e)break}return n.framePayloadLength=l,n.headerLength=t.getPointer()-i+(8===t.getBitLeft()?0:1),n}},21477:(e,t,a)=>{a.d(t,{Ui:()=>c,XC:()=>n,zk:()=>r});var i=a(37246);a(83314),a(97317);const r={0:"Main",1:"High",2:"Professional"};function n(e,t){if(!t&&e.sideData[1]&&(t=e.sideData[1]),t&&t.length>=4){const a=c(t);e.codecpar.profile=a.profile,e.codecpar.level=a.level}}function c(e){const t=new i.A(e.length);t.appendBuffer(e),t.readU1(),t.readU(7);const a=t.readU(3),r=t.readU(5),n=t.readU1();let c=t.readU1()?10:8;return t.readU1()&&(c=12),{profile:a,level:r,tier:n,bitDepth:c,monochrome:t.readU1(),chromaSubsamplingX:t.readU1(),chromaSubsamplingY:t.readU1(),chromaSamplePosition:t.readU(2)}}},64093:(e,t,a)=>{a.d(t,{Au:()=>A,He:()=>I,XC:()=>N,Y2:()=>m,hG:()=>g,oz:()=>y});var i=a(77231);const r=[44100,48e3,32e3,0],n=[22050,24e3,16e3,0],c=[11025,12e3,8e3,0],o=[0,1152,1152,384],d=[0,576,1152,384],s=[0,576,1152,384],l=[0,32,64,96,128,160,192,224,256,288,320,352,384,416,448,-1],p=[0,32,48,56,64,80,96,112,128,160,192,224,256,320,384,-1],f=[0,32,40,48,56,64,80,96,112,128,160,192,224,256,320,-1],u=[0,32,48,56,64,80,96,112,128,144,160,176,192,224,256,-1],h=[0,8,16,24,32,40,48,56,64,80,96,112,128,144,160,-1];function m(e,t){switch(e){case 0:return c[t];case 2:return n[t];case 3:return r[t]}return i.N_}function g(e,t){switch(e){case 0:return s[t];case 2:return d[t];case 3:return o[t]}return i.N_}function y(e,t,a){switch(t){case 1:switch(e){case 0:case 2:return h[a];case 3:return f[a]}break;case 2:switch(e){case 0:case 2:return h[a];case 3:return p[a]}case 3:switch(e){case 0:case 2:return u[a];case 3:return l[a]}}return i.N_}function A(e){switch(e){case 1:return 34;case 2:return 33;case 3:return 32}return i.N_}const I={32:"Layer1",33:"Layer2",34:"Layer3"};function N(e,t){if(t&&t.length>=4){const a=t[1]>>>3&3,i=(6&t[1])>>1,r=(12&t[2])>>>2,n=3&~(t[3]>>>6)?2:1,c=A(i),o=m(a,r);e.codecpar.profile=c,e.codecpar.sampleRate=o,e.codecpar.chLayout.nbChannels=n}}},22576:(e,t,a)=>{a.d(t,{Ij:()=>s,XC:()=>d,kt:()=>o});var i=a(31865),r=a(729),n=a(44328);const c=[480,960,1920,2880,480,960,1920,2880,480,960,1920,2880,480,960,480,960,120,240,480,960,120,240,480,960,120,240,480,960,120,240,480,960];function o(e){let t=0,a=0,i=0;if(e.length<1)return 0;switch(t=e[0],a=c[t>>3],3&t){case 0:i=1;break;case 1:case 2:i=2;break;case 3:if(e.length<2)return 0;i=63&e[1]}return i*a}function d(e,t){if(!t&&e.sideData[1]&&(t=e.sideData[1]),t&&t.length>=19){const a=new i.A(t,!1);a.skip(9),e.codecpar.chLayout.nbChannels=a.readUint8(),e.codecpar.initialPadding=a.readUint16(),e.codecpar.sampleRate=a.readUint32(),e.codecpar.seekPreroll=Number((0,n.k)(BigInt(80),{den:1e3,num:1},{den:48e3,num:1}))}}function s(e){const t=new Uint8Array(19),a=new r.A(t,!1);return a.writeString("OpusHead"),a.writeUint8(1),a.writeUint8(e.chLayout.nbChannels),a.writeUint16(e.initialPadding),a.writeUint32(e.sampleRate),t}},97077:(e,t,a)=>{a.d(t,{Ui:()=>n,XC:()=>r});var i=a(37246);function r(e,t){if(!t&&e.sideData[1]&&(t=e.sideData[1]),t&&t.length>=6){const a=n(t);e.codecpar.profile=a.profile,e.codecpar.level=a.level}}function n(e){const t=new i.A(e.length);return t.appendBuffer(e.subarray(4)),{profile:t.readU(8),level:t.readU(8),bitDepth:t.readU(4),chromaSubsampling:t.readU(3),fullRangeFlag:t.readU1(),colorPrimaries:t.readU(8),colorTrc:t.readU(8),colorSpace:t.readU(8)}}},82014:(e,t,a)=>{a.d(t,{Ui:()=>c,XC:()=>n,wN:()=>r}),a(9599);var i=a(37246);a(77231),a(97317),a(729);const r={0:"Profile0",1:"Profile1",2:"Profile2",3:"Profile3"};function n(e,t){if(!t&&e.sideData[1]&&(t=e.sideData[1]),t&&t.length>=6){const a=c(t);e.codecpar.profile=a.profile,e.codecpar.level=a.level}}function c(e){const t=new i.A(e.length);return t.appendBuffer(e),{profile:t.readU(8),level:t.readU(8),bitDepth:t.readU(4),chromaSubsampling:t.readU(3),fullRangeFlag:t.readU1(),colorPrimaries:t.readU(8),colorTrc:t.readU(8),colorSpace:t.readU(8)}}},null:()=>{},82774:(e,t,a)=>{a.d(t,{Cv:()=>o});var i=a(50932);function r(e,t){i.M[2](e,255&t)}function n(e,t){r(e,t>>>8),r(e+1,t)}function c(e,t){n(e,t>>>16),n(e+2,65535&t)}function o(e,t){c(e,Number(BigInt.asUintN(32,t>>BigInt(32)))),c(e+4,Number(BigInt.asUintN(32,t)))}},28795:(e,t,a)=>{a(78978),a(97863),a(7914),a(21640),a(871),a(52584),a(98345),e.exports=a(46438).Set},21640:(e,t,a)=>{var i=a(95933),r=a(6096);e.exports=a(99373)("Set",(function(e){return function(){return e(this,arguments.length>0?arguments[0]:void 0)}}),{add:function(e){return i.def(r(this,"Set"),e=0===e?0:e,e)}},i)},98345:(e,t,a)=>{a(643)("Set")},52584:(e,t,a)=>{a(44398)("Set")},871:(e,t,a)=>{var i=a(88535);i(i.P+i.R,"Set",{toJSON:a(5874)("Set")})},97860:(e,t,a)=>{e.exports=a(28795)}}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[969],{28773:(e,t,i)=>{i.r(t),i.d(t,{default:()=>v});var a=i(134),r=i(63939),s=i(50932),n=i(58121),o=i(68243),d=i(4624),h=i(35028),c=i(62815),f=i(95832),l=i(67659),p=i(59166),u=i(21477),g=i(82014),w=i(9705),k=i(85947),U=i(14686),m=i(37837),I=i(71517),R=i(65977),b=i(44328),B=i(77231),A=i(72739),y=i(52071),M=i(34677);const D="src/avformat/formats/IFlvFormat.ts";class v extends k.A{constructor(e={}){super(),(0,a.A)(this,"type",0),(0,a.A)(this,"header",void 0),(0,a.A)(this,"script",void 0),(0,a.A)(this,"options",void 0),(0,a.A)(this,"firstTagPos",void 0),this.header=new n.A,this.script=new o.A,this.options=e}init(e){e.ioReader&&e.ioReader.setEndian(!0)}async readHeader(e){try{if("FLV"!==await e.ioReader.peekString(3))return d.z3("the file format is not flv",D,102),w.LR;await this.header.read(e.ioReader),0!==await e.ioReader.readUint32()&&d.R8("the previousTagSize0 is not 0",D,109);let t=0;if(18===await e.ioReader.peekUint8()){await e.ioReader.skip(1);const i=await e.ioReader.readUint24();await e.ioReader.skip(7),t=await this.script.read(e.ioReader,i)}return t>=0&&(this.firstTagPos=e.ioReader.getPos()),t}catch(t){return d.z3(t.message,D,127),e.ioReader.error}}async readCodecConfigurationRecord(e,t,i){const a=(0,m.sY)(i);t.codecpar.extradata=a,t.codecpar.extradataSize=i,await e.ioReader.readBuffer(i,(0,U.JW)(a,i)),t.sideData[1]=(0,U.s3)(a,i).slice(),27===t.codecpar.codecId?c.XC(t):173===t.codecpar.codecId?l.XC(t):196===t.codecpar.codecId?p.XC(t):225===t.codecpar.codecId?u.XC(t):167===t.codecpar.codecId&&g.XC(t)}async readAVPacketData(e,t,i,a){const r=(0,m.sY)(a);(0,I.NX)(i,r,a),await e.ioReader.readBuffer(a,(0,U.JW)(r,a)),27===t.codecpar.codecId?(c.Jk(i,t),s.M[15](i+80,1)):173===t.codecpar.codecId?(l.Jk(i,t),s.M[15](i+80,1)):196===t.codecpar.codecId&&(p.Jk(i,t),s.M[15](i+80,1))}async readAVPacket_(e,t){const i=e.ioReader.getPos();s.M[17](t+56,i);const a=31&await e.ioReader.readUint8(),n=await e.ioReader.readUint24();let o=await e.ioReader.readUint24();const c=await e.ioReader.readUint8();if(c&&(o|=c<<24),s.M[17](t+16,BigInt(Math.floor(o))),s.M[17](t+8,BigInt(Math.floor(o))),await e.ioReader.skip(3),8===a){let i=e.getStreamByMediaType(1);i&&s.M[15](t+32,i.index),s.M[15](t+36,1|r.f[15](t+36));const a=await e.ioReader.readUint8();if(i)if(86018===i.codecpar.codecId)if(0===await e.ioReader.readUint8()){const i=n-2,a=(0,m.sY)(i);(0,I.Ow)(t,1,a,i),await e.ioReader.readBuffer(i,(0,U.JW)(a,i))}else await this.readAVPacketData(e,i,t,n-2);else await this.readAVPacketData(e,i,t,n-1);else{i=e.createStream(),s.M[15](t+32,i.index),i.codecpar.codecType=1,i.timeBase.den=1e3,i.timeBase.num=1,i.startTime=r.f[17](t+8)||r.f[17](t+16),this.script.onMetaData.duration&&(i.duration=BigInt(Math.floor(1e3*this.script.onMetaData.duration))),i.codecpar.chLayout.nbChannels=1&~a?1:2,i.codecpar.sampleRate=44100<<((12&a)>>>2)>>3,i.codecpar.bitsPerCodedSample=2&a?16:8;const o=(240&a)>>4;if(i.codecpar.codecId=0===o||3===o?8===i.codecpar.bitsPerCodedSample?65541:65536:h.FJ[o],86018===i.codecpar.codecId)if(0===await e.ioReader.readUint8()){const t=n-2,a=(0,m.sY)(t);i.codecpar.extradata=a,i.codecpar.extradataSize=t,await e.ioReader.readBuffer(t,(0,U.JW)(a,t)),i.sideData[1]=(0,U.s3)(a,t).slice(),f.XC(i)}else await this.readAVPacketData(e,i,t,n-2);else 86051===i.codecpar.codecId?(i.codecpar.sampleRate=16e3,i.codecpar.chLayout.nbChannels=1):65543!==i.codecpar.codecId&&65542!==i.codecpar.codecId||(i.codecpar.sampleRate=8e3),await this.readAVPacketData(e,i,t,n-1);this.onStreamAdd&&this.onStreamAdd(i)}}else{if(9!==a){if(18===a){let i=await this.script.read(e.ioReader,n);return i<0?i:await this.readAVPacket_(e,t)}return d.R8(`invalid tag type: ${a}, try to sync to next tag`,D,467),await this.syncTag(e),this.readAVPacket_(e,t)}{let i=e.getStreamByMediaType(0);i&&s.M[15](t+32,i.index);const a=await e.ioReader.readUint8();if(i)if((112&a)>>4==1&&s.M[15](t+36,1|r.f[15](t+36)),128&a){await e.ioReader.skip(4);const o=15&a;if(173!==i.codecpar.codecId&&196!==i.codecpar.codecId||s.M[15](t+80,1),0===o){const i=n-5,a=(0,m.sY)(i);(0,I.Ow)(t,1,a,i),await e.ioReader.readBuffer(i,(0,U.JW)(a,i))}else if(2===o)s.M[15](t+36,32|r.f[15](t+36));else if(1===o||3===o)if(1!==o||173!==i.codecpar.codecId&&196!==i.codecpar.codecId)await this.readAVPacketData(e,i,t,n-5);else{const a=await e.ioReader.readInt24();s.M[17](t+8,r.f[17](t+16)+BigInt(0|a)),await this.readAVPacketData(e,i,t,n-8)}}else if(27===i.codecpar.codecId||173===i.codecpar.codecId||12===i.codecpar.codecId){s.M[15](t+80,1);const a=await e.ioReader.readUint8(),o=await e.ioReader.readInt24();if(s.M[17](t+8,r.f[17](t+16)+BigInt(0|o)),0===a){const i=n-5,a=(0,m.sY)(i);(0,I.Ow)(t,1,a,i),await e.ioReader.readBuffer(i,(0,U.JW)(a,i))}else 2===a?s.M[15](t+36,32|r.f[15](t+36)):await this.readAVPacketData(e,i,t,n-5)}else await this.readAVPacketData(e,i,t,n-1);else{if(i=e.createStream(),s.M[15](t+32,i.index),i.codecpar.codecType=0,i.timeBase.den=1e3,i.timeBase.num=1,i.startTime=r.f[17](t+8)||r.f[17](t+16),this.script.onMetaData.duration&&(i.duration=BigInt(Math.floor(1e3*this.script.onMetaData.duration))),this.script.onMetaData.width>0&&(i.codecpar.width=this.script.onMetaData.width),this.script.onMetaData.height>0&&(i.codecpar.height=this.script.onMetaData.height),(112&a)>>4==1&&s.M[15](t+36,1|r.f[15](t+36)),128&a){const o=await e.ioReader.readUint32();o===(0,R.A)("hvc1")?(i.codecpar.codecId=173,s.M[15](t+80,1)):o===(0,R.A)("vvc1")?(i.codecpar.codecId=196,s.M[15](t+80,1)):o===(0,R.A)("av01")?i.codecpar.codecId=225:o===(0,R.A)("vp09")&&(i.codecpar.codecId=167);const d=15&a;if(0===d)await this.readCodecConfigurationRecord(e,i,n-5);else if(2===d)s.M[15](t+36,32|r.f[15](t+36));else if(1===d||3===d)if(1!==d||173!==i.codecpar.codecId&&196!==i.codecpar.codecId)await this.readAVPacketData(e,i,t,n-5);else{const a=await e.ioReader.readInt24();s.M[17](t+8,r.f[17](t+16)+BigInt(0|a)),await this.readAVPacketData(e,i,t,n-8)}}else if(i.codecpar.codecId=h.U5[15&a],27===i.codecpar.codecId||173===i.codecpar.codecId||196===i.codecpar.codecId||12===i.codecpar.codecId){s.M[15](t+80,1);const a=await e.ioReader.readUint8(),o=await e.ioReader.readInt24();s.M[17](t+8,r.f[17](t+16)+BigInt(0|o)),0===a?await this.readCodecConfigurationRecord(e,i,n-5):2===a?s.M[15](t+36,32|r.f[15](t+36)):await this.readAVPacketData(e,i,t,n-5)}else await this.readAVPacketData(e,i,t,n-1);this.onStreamAdd&&this.onStreamAdd(i)}}}const l=e.ioReader.getPos()-i,p=BigInt(Math.floor(await e.ioReader.readUint32()));return l!==p?(d.R8(`tag ${a} size not match, size: ${l}, previousTagSize: ${p}`,D,476),w.LR):0}async readAVPacket(e,t){try{return s.M[15](t+76,1e3),s.M[15](t+72,1),await this.readAVPacket_(e,t)}catch(t){return-1048576!==e.ioReader.error?(d.z3(`read packet error, ${t}`,D,492),w.LR):e.ioReader.error}}async syncTag(e){let t=B.Dh;for(;;)try{if(8&e.ioReader.flags)break;const i=await e.ioReader.readUint8();if(8===i||9===i){t=e.ioReader.getPos()-BigInt(1);const i=await e.ioReader.readUint24();if(i>10485760){await e.ioReader.seek(t+BigInt(1));continue}await e.ioReader.skip(7+i);if(e.ioReader.getPos()-t!==BigInt(Math.floor(await e.ioReader.readUint32()))){await e.ioReader.seek(t+BigInt(1)),t=B.Dh;continue}{let i=0;for(;i<=3;){const t=e.ioReader.getPos(),a=await e.ioReader.readUint8();if(8!==a&&9!==a&&18!==a)break;{const a=await e.ioReader.readUint24();await e.ioReader.skip(7+a);if(e.ioReader.getPos()-t!==BigInt(Math.floor(await e.ioReader.readUint32())))break;i++}}if(!(i<3))break;await e.ioReader.seek(t+BigInt(1)),t=B.Dh}}}catch(e){break}t!==B.Dh&&await e.ioReader.seek(t)}async seek(e,t,i,a){const r=e.ioReader.getPos();if(2&a)return await e.ioReader.seek(i),4&a||await this.syncTag(e),r;if(t&&t.sampleIndexes.length){let a=A.El(t.sampleIndexes,(e=>e.pts>i?-1:1));if(a>0&&(0,b.k)(i-t.sampleIndexes[a-1].pts,t.timeBase,B.i0)<BigInt(1e4))return d.Yz(`seek in sampleIndexes, found index: ${a}, pts: ${t.sampleIndexes[a-1].pts}, pos: ${t.sampleIndexes[a-1].pos}`,D,594),await e.ioReader.seek(t.sampleIndexes[a-1].pos),r}if(this.script.canSeek()){const{pos:a,dts:s}=this.script.dts2Position(Number((0,b.k)(i,t.timeBase,B.i0)/BigInt(1e3)));if(a>0){d.Yz(`seek in filepositions, found pts: ${s}, pos: ${a}`,D,603),await e.ioReader.seek(BigInt(Math.floor(a)));const t=await e.ioReader.peekUint8();return 8!==t&&9!==t&&18!==t&&await this.syncTag(e),r}}return d.Yz("not found any keyframe index, try to seek in bytes",D,613),(0,y.A)(e,t,i,this.firstTagPos,this.readAVPacket.bind(this),this.syncTag.bind(this))}getAnalyzeStreamsCount(){let e=0;return(this.header.hasAudio||(0,M.A)(this.script.onMetaData.audiocodecid))&&e++,(this.header.hasVideo||(0,M.A)(this.script.onMetaData.videocodecid))&&e++,e}}},85947:(e,t,i)=>{i.d(t,{A:()=>r});var a=i(134);class r{constructor(){(0,a.A)(this,"type",-1),(0,a.A)(this,"onStreamAdd",void 0)}async destroy(e){}}},58121:(e,t,i)=>{i.d(t,{A:()=>r});var a=i(134);class r{constructor(){(0,a.A)(this,"signature",void 0),(0,a.A)(this,"version",void 0),(0,a.A)(this,"flags",void 0),(0,a.A)(this,"dataOffset",void 0),(0,a.A)(this,"hasVideo",void 0),(0,a.A)(this,"hasAudio",void 0),this.signature="FLV",this.version=1,this.flags=0,this.dataOffset=9,this.hasAudio=!1,this.hasVideo=!1}async read(e){this.signature=await e.readString(3),this.version=await e.readUint8(),this.flags=await e.readUint8(),this.dataOffset=await e.readUint32(),this.hasAudio=!!(4&this.flags),this.hasVideo=!!(1&this.flags)}write(e){this.flags=0,this.hasAudio&&(this.flags|=4),this.hasVideo&&(this.flags|=1),e.writeString(this.signature),e.writeUint8(this.version),e.writeUint8(this.flags),e.writeUint32(this.dataOffset)}}},68243:(e,t,i)=>{i.d(t,{A:()=>c});var a=i(134),r=i(35336),s=i(92647),n=i(4624),o=i(94889),d=i(9705),h=i(73040);class c{constructor(){(0,a.A)(this,"onMetaData",void 0),this.onMetaData={canSeekToEnd:!1}}async read(e,t){const i=e.getPos(),a=i+BigInt(Math.floor(t)),r=await(0,h.$x)(e,a),s=await(0,h.$x)(e,a);this[r]=s,a>e.getPos()&&await e.skip(Number(BigInt.asIntN(32,a-e.getPos())));const o=Number(e.getPos()-i),c=await e.readUint32();return o+11!==c?(n.R8(`script size not match, size: ${o+11}, previousTagSize: ${c}`,"src/avformat/formats/flv/FlvScriptTag.ts",64),d.LR):0}computeSize(){const e=[],t=new r.A;return t.onFlush=t=>(e.push(t.slice()),0),(0,h.bD)(t,"onMetaData"),(0,h.bD)(t,this.onMetaData),t.flush(),(0,s.A)(Uint8Array,e).length}write(e){if(this.onMetaData){const t=[],i=new r.A;i.onFlush=e=>(t.push(e.slice()),0),(0,h.bD)(i,"onMetaData"),(0,h.bD)(i,this.onMetaData),i.flush();const a=(0,s.A)(Uint8Array,t),n=e.getPos();o.xk(e,18,a.length,BigInt(0)),e.writeBuffer(a),e.writeUint32(Number(e.getPos()-n))}}dts2Position(e){if(this.canSeek()){let t=-1;const i=this.onMetaData.keyframes.times,a=this.onMetaData.keyframes.filepositions;let r;for(r=0;r<i.length;r++){if(i[r]===e){t=r;break}if(i[r]>e){t=Math.max(r-1,0);break}}return r&&r===i.length&&(t=i.length-1),{pos:a[t],dts:i[t]}}return{pos:-1,dts:-1}}position2DTS(e){if(this.canSeek()){let i=-1;const a=this.onMetaData.keyframes.times,r=this.onMetaData.keyframes.filepositions;let s=0;for(s=0;s<r.length;s++)if(r[s]>e){i=s;break}var t;return s===r.length?null!==(t=this.onMetaData.duration)&&void 0!==t?t:a[a.length-1]:a[i]}return-1}canSeek(){return!!(this.onMetaData.keyframes&&this.onMetaData.keyframes.filepositions&&this.onMetaData.keyframes.filepositions.length)}}},35028:(e,t,i)=>{i.d(t,{FJ:()=>a,U5:()=>r});const a={10:86018,2:86017,11:86051,1:69645,4:86049,5:86049,6:86049,7:65543,8:65542},r={7:27,12:173,13:196,9:12,2:4,3:86,4:92,5:106,6:131}},94889:(e,t,i)=>{function a(e,t,i,a){e.writeUint8(t),e.writeUint24(i),e.writeUint24(Number(a&BigInt(16777215))),e.writeUint8(Number(a>>BigInt(24)&BigInt(255))),e.writeUint24(0)}i.d(t,{xk:()=>a}),i(35028)},2187:(e,t,i)=>{i.d(t,{d:()=>n});var a=i(72739),r=i(44328),s=i(77231);function n(e,t,i){let n=BigInt(0);return a.__(e,(e=>{n+=e.codecpar.bitrate*(0,r.k)(t,i,s.i0)/BigInt(8e3)})),n}},65977:(e,t,i)=>{i.d(t,{A:()=>s});var a=i(4624);const r="src/avformat/function/mktag.ts";function s(e){4!==e.length&&a.R8(`tag length is not 4, tag: ${e}`,r,30);let t=0;for(let i=0;i<4;i++)t=t<<8|e.charCodeAt(i);return t}},52071:(e,t,i)=>{i.d(t,{A:()=>p});var a=i(63939),r=i(9599),s=i(29170),n=i(77231),o=i(44328),d=i(2187),h=i(71517),c=i(9705),f=i(4624);const l="src/avformat/function/seekInBytes.ts";async function p(e,t,i,p,u,g){const w=e.ioReader.getPos(),k=await e.ioReader.fileSize();let U=n.Dh,m=i;t.startTime!==n.Dh?m-=t.startTime:m-=t.firstDTS;const I=(0,o.k)(i,t.timeBase,n.i0);if(I<BigInt(1e4))return f.Yz(`seek pts is earlier then 10s, seek to first packet pos(${p}) directly`,l,64),await e.ioReader.seek(p),w;let R=(0,d.d)(e.streams,m,t.timeBase);const b=k-(0,d.d)(e.streams,BigInt(1e4),n.i0),B=(0,d.d)(e.streams,BigInt(1e4),n.i0);if(R>b&&(R=b),R<p)return await e.ioReader.seek(p),w;const A=(0,h._5)();let y=k,M=BigInt(0);for(;;){if(y-M<B){U=M;break}if(await e.ioReader.seek(R),await g(e),8&e.ioReader.flags)break;const t=e.ioReader.getPos();if(!(await u(e,A)>=0)){U=n.Dh;break}{const e=(0,o.k)(a.f[17](A+8),(0,s.A)(A+72,r.P),n.i0),i=e-I;if(f.Yz(`try to seek to pos: ${R}, got packet pts: ${a.f[17](A+8)}(${e}ms), diff: ${i}ms`,l,102),i<=BigInt(0)&&-i<BigInt(1e4)){U=t;break}i>BigInt(0)?(y=R,R=M+y>>BigInt(1)):(M=R,R=M+y>>BigInt(1))}if(8&e.ioReader.flags)break}return(0,h.Qe)(A),U!==n.Dh?(f.Yz(`finally seek to pos ${U}`,l,133),await e.ioReader.seek(U),await g(e),w):(await e.ioReader.seek(w),8&e.ioReader.flags?BigInt(c.LT):BigInt(c.E$))}},95832:(e,t,i)=>{i.d(t,{Bq:()=>f,Ij:()=>c,XC:()=>h,f7:()=>l,uF:()=>s});var a=i(77231),r=i(37246);const s={1:"Main",2:"LC",3:"LC",4:"LC",5:"HE",6:"HE"},n={96e3:0,88200:1,64e3:2,48e3:3,44100:4,32e3:5,24e3:6,22050:7,16e3:8,12e3:9,11025:10,8e3:11,7350:12},o=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350,a.N_,a.N_,a.N_],d=[a.N_,1,2,3,4,5,6,7];function h(e,t){if(!t&&e.sideData[1]&&(t=e.sideData[1]),t){const{profile:i,sampleRate:r,channels:s}=function(e){let t=a.N_,i=a.N_,r=a.N_;var s,n;return e.length>=2&&(t=e[0]>>3&31,i=null!==(s=o[(7&e[0])<<1|e[1]>>7])&&void 0!==s?s:48e3,r=null!==(n=d[e[1]>>3&15])&&void 0!==n?n:2),{profile:t,sampleRate:i,channels:r}}(t);e.codecpar.profile=i,e.codecpar.sampleRate=r,e.codecpar.chLayout.nbChannels=s}}function c(e){const t=n[e.sampleRate],i=e.chLayout.nbChannels,r=e.profile===a.N_?2:e.profile,s=new Uint8Array(2);return s[0]=(31&r)<<3|(14&t)>>1,s[1]=(1&t)<<7|(15&i)<<3,s}function f(e){if(e.length<7)return-1;const t=e[0]<<4|e[1]>>4;if(4095!==t)return-1;const i=1&e[1],a=(192&e[2])>>>6,r=(60&e[2])>>>2,s=(1&e[2])<<2|(192&e[3])>>>6,n=(3&e[3])<<11|e[4]<<3|(224&e[5])>>>5,h=3&e[6];let c=1===i?7:9,f=n-c;return{syncWord:t,profile:a+1,sampleRate:o[r],channels:d[s],aacFrameLength:n,numberOfRawDataBlocksInFrame:h,headerLength:c,framePayloadLength:f}}function l(e,t){function i(){const e=t.readU(2);let i=0;for(let a=0;a<=e;a++)i<<=8,i|=t.readU(8);return i}t||(t=new r.A).appendBuffer(e);const a=t.getPointer(),s={syncWord:0,profile:0,sampleRate:0,channels:0,useSameStreamMux:!1,headerLength:0,framePayloadLength:0,muxLengthBytes:0},n=t.readU(11);if(695!==n)return-1;s.syncWord=n,s.muxLengthBytes=t.readU(13);const h=1===t.readU1();if(s.useSameStreamMux=h,!h){const e=1===t.readU1();if(e&&1===t.readU1())return-1;if(e&&i(),1!==t.readU1())return-1;if(0!==t.readU(6))return-1;if(0!==t.readU(4))return-1;if(0!==t.readU(3))return-1;let a=e?i():0;const r=t.readU(5);a-=5;const n=t.readU(4);a-=4;const h=t.readU(4);if(a-=4,t.readU(3),a-=3,a>0&&t.readU(a),0!==t.readU(3))return-1;if(t.readU(8),1===t.readU1())if(e)i();else{let e=0;for(;;){e<<=8;const i=1===t.readU1();if(e+=t.readU(8),!i)break}}1===t.readU1()&&t.readU(8),s.profile=r+1,s.sampleRate=o[n],s.channels=d[h]}let c=0;for(;;){const e=t.readU(8);if(c+=e,255!==e)break}return s.framePayloadLength=c,s.headerLength=t.getPointer()-a+(8===t.getBitLeft()?0:1),s}},21477:(e,t,i)=>{i.d(t,{Ui:()=>n,XC:()=>s,zk:()=>r});var a=i(37246);i(83314),i(97317);const r={0:"Main",1:"High",2:"Professional"};function s(e,t){if(!t&&e.sideData[1]&&(t=e.sideData[1]),t&&t.length>=4){const i=n(t);e.codecpar.profile=i.profile,e.codecpar.level=i.level}}function n(e){const t=new a.A(e.length);t.appendBuffer(e),t.readU1(),t.readU(7);const i=t.readU(3),r=t.readU(5),s=t.readU1();let n=t.readU1()?10:8;return t.readU1()&&(n=12),{profile:i,level:r,tier:s,bitDepth:n,monochrome:t.readU1(),chromaSubsamplingX:t.readU1(),chromaSubsamplingY:t.readU1(),chromaSamplePosition:t.readU(2)}}},82014:(e,t,i)=>{i.d(t,{Ui:()=>n,XC:()=>s,wN:()=>r}),i(9599);var a=i(37246);i(77231),i(97317),i(729);const r={0:"Profile0",1:"Profile1",2:"Profile2",3:"Profile3"};function s(e,t){if(!t&&e.sideData[1]&&(t=e.sideData[1]),t&&t.length>=6){const i=n(t);e.codecpar.profile=i.profile,e.codecpar.level=i.level}}function n(e){const t=new a.A(e.length);return t.appendBuffer(e),{profile:t.readU(8),level:t.readU(8),bitDepth:t.readU(4),chromaSubsampling:t.readU(3),fullRangeFlag:t.readU1(),colorPrimaries:t.readU(8),colorTrc:t.readU(8),colorSpace:t.readU(8)}}},73040:(e,t,i)=>{i.d(t,{$x:()=>o,bD:()=>d});var a=i(67672),r=i(72739),s=i(95335);async function n(e,t){return{key:await e.readString(await e.readUint16()),value:await o(e,t)}}async function o(e,t){let i;switch(await e.readUint8()){case 0:i=await e.readDouble();break;case 1:i=!!await e.readUint8();break;case 2:i=await e.readString(await e.readUint16());break;case 3:for(i={};e.getPos()<t;){const{key:a,value:r}=await n(e,t);if(i[a]=r,9==(16777215&await e.peekUint24())){await e.skip(3);break}}break;case 8:for(i={},await e.skip(4);e.getPos()<t;){const{key:a,value:r}=await n(e,t);if(i[a]=r,9==(16777215&await e.peekUint24())){await e.skip(3);break}}break;case 9:case 5:i=null;break;case 10:i=[];const a=await e.readUint32();for(let r=0;r<a;r++)i.push(await o(e,t));break;case 11:const r=await e.readDouble(),s=await e.readInt16();i=new Date(r+60*s*1e3);break;case 12:i=await e.readString(await e.readUint32())}return i}function d(e,t){a.ai(t)?(e.writeUint8(0),e.writeDouble(t)):a.o(t)?(e.writeUint8(0),e.writeDouble(Number(t))):a.zM(t)?(e.writeUint8(1),e.writeUint8(t?1:0)):a.Yj(t)?t.length>=65536?(e.writeUint8(12),e.writeUint32(t.length),e.writeString(t)):(e.writeUint8(2),e.writeUint16(t.length),e.writeString(t)):a.YO(t)?(e.writeUint8(10),e.writeUint32(t.length),r.__(t,(t=>{d(e,t)}))):a.Ik(t)?(e.writeUint8(3),s.__(t,((t,i)=>{e.writeUint16(i.length),e.writeString(i),d(e,t)})),e.writeUint24(9)):t instanceof Date?(e.writeUint8(11),e.writeDouble(t.getTime()),e.writeInt16(0)):null==t&&e.writeUint8(5)}},null:()=>{},35336:(e,t,i)=>{i.d(t,{A:()=>s});var a=i(134),r=i(50011);class s{constructor(e=1048576,t=!0,i){if((0,a.A)(this,"data",void 0),(0,a.A)(this,"buffer",void 0),(0,a.A)(this,"pointer",void 0),(0,a.A)(this,"pos",void 0),(0,a.A)(this,"size",void 0),(0,a.A)(this,"littleEndian",void 0),(0,a.A)(this,"error",void 0),(0,a.A)(this,"onFlush",void 0),(0,a.A)(this,"onSeek",void 0),this.pointer=0,this.pos=BigInt(0),this.size=e,this.littleEndian=!t,this.error=0,i&&i.view)this.size=i.length,this.buffer=i,this.data=i.view;else if(i&&!i.byteOffset)this.size=i.length,this.buffer=i,this.data=new DataView(this.buffer.buffer);else{if(i)throw new Error("not support subarray of ArrayBuffer");this.buffer=new Uint8Array(this.size),this.data=new DataView(this.buffer.buffer)}}writeUint8(e){this.remainingLength()<1&&this.flush(),this.data.setUint8(this.pointer,e),this.pointer++,this.pos++}writeUint16(e){this.remainingLength()<2&&this.flush(),this.data.setUint16(this.pointer,e,this.littleEndian),this.pointer+=2,this.pos+=BigInt(2)}writeUint24(e){this.remainingLength()<3&&this.flush();const t=(16711680&e)>>16,i=(65280&e)>>8,a=255&e;this.littleEndian?(this.writeUint8(a),this.writeUint8(i),this.writeUint8(t)):(this.writeUint8(t),this.writeUint8(i),this.writeUint8(a))}writeUint32(e){this.remainingLength()<4&&this.flush(),this.data.setUint32(this.pointer,e,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeUint64(e){this.remainingLength()<8&&this.flush(),this.data.setBigUint64(this.pointer,e,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}writeInt8(e){this.remainingLength()<1&&this.flush(),this.data.setInt8(this.pointer,e),this.pointer++,this.pos++}writeInt16(e){this.remainingLength()<2&&this.flush(),this.data.setInt16(this.pointer,e,this.littleEndian),this.pointer+=2,this.pos+=BigInt(2)}writeInt24(e){this.writeUint24(e<0?e+16777216:e)}writeInt32(e){this.remainingLength()<4&&this.flush(),this.data.setInt32(this.pointer,e,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeInt64(e){this.remainingLength()<8&&this.flush(),this.data.setBigInt64(this.pointer,e,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}writeFloat(e){this.remainingLength()<4&&this.flush(),this.data.setFloat32(this.pointer,e,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeDouble(e){this.remainingLength()<8&&this.flush(),this.data.setFloat64(this.pointer,e,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}getPointer(){return this.pointer}getPos(){return this.pos}remainingLength(){return this.size-this.pointer}writeBuffer(e){if(!e.length)return;let t=e.length;if(this.remainingLength()<t){let i=0;for(;t>0;){this.flush();const a=Math.min(this.size,t);this.buffer.set(e.subarray(i,i+a),this.pointer),this.pointer+=a,this.pos+=BigInt(a),i+=a,t-=a}}else this.buffer.set(e,this.pointer),this.pointer+=t,this.pos+=BigInt(t)}writeString(e){const t=r.encode(e);return this.writeBuffer(t),t.length}flush(){if(!this.onFlush)throw this.error=-1048574,Error("IOWriter error, flush failed because of no flush callback");if(this.pointer){const e=this.onFlush(this.buffer.subarray(0,this.pointer));if(0!==e)throw this.error=e,Error("IOWriter error, flush failed")}this.pointer=0}flushToPos(e){if(!this.onFlush)throw this.error=-1048574,Error("IOWriter error, flush failed because of no flush callback");if(this.pointer){const t=this.onFlush(this.buffer.subarray(0,this.pointer),e);if(0!==t)throw this.error=t,Error("IOWriter error, flush failed")}this.pointer=0}seek(e){if(!this.onSeek)throw this.error=-1048574,Error("IOWriter error, seek failed because of no seek callback");this.flush();const t=this.onSeek(e);if(0!==t)throw this.error=t,Error("IOWriter error, seek failed");this.pos=e}seekInline(e){const t=this.pointer;this.pointer=Math.max(0,Math.min(this.size,e)),this.pos+=BigInt(this.pointer-t)}skip(e){const t=this.pointer;this.pointer=Math.min(this.size,this.pointer+e),this.pos+=BigInt(this.pointer-t)}back(e){const t=this.pointer;this.pointer=Math.max(0,this.pointer-e),this.pos+=BigInt(this.pointer-t)}getBuffer(){return this.buffer.subarray(0,this.pointer)}setEndian(e){this.littleEndian=!e}reset(){this.pointer=0,this.pos=BigInt(0),this.error=0}getBufferSize(){return this.size}}}}]);