@libmedia/avplayer 0.6.0 → 0.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/esm/118.avplayer.js +1 -1
- package/dist/esm/453.avplayer.js +1 -1
- package/dist/esm/791.avplayer.js +1 -1
- package/dist/esm/855.avplayer.js +1 -1
- package/dist/esm/904.avplayer.js +1 -1
- package/dist/esm/941.avplayer.js +1 -1
- package/dist/esm/avplayer.js +1 -1
- package/dist/types/AVPlayer.d.ts +10 -1
- package/dist/types/eventType.d.ts +1 -0
- package/dist/types/mse/MSEPipeline.d.ts +2 -2
- package/dist/types/type.d.ts +4 -0
- package/dist/umd/118.avplayer.js +1 -1
- package/dist/umd/453.avplayer.js +1 -1
- package/dist/umd/791.avplayer.js +1 -1
- package/dist/umd/855.avplayer.js +1 -1
- package/dist/umd/904.avplayer.js +1 -1
- package/dist/umd/941.avplayer.js +1 -1
- package/dist/umd/avplayer.js +1 -1
- package/package.json +12 -12
package/dist/esm/118.avplayer.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[118],{85947:(t,i,e)=>{e.d(i,{A:()=>r});var s=e(134);class r{constructor(){(0,s.A)(this,"type",-1),(0,s.A)(this,"onStreamAdd",void 0)}async destroy(t){}}},29118:(t,i,e)=>{e.r(i),e.d(i,{default:()=>y});var s=e(134),r=e(63939),n=e(50932),a=e(38743),h=e(4624),o=e(54712),d=e(87400),g=e(9705),l=e(92647),p=e(85947),u=e(14686),c=e(37837),f=e(71517),m=e(82348),b=e(35336),w=e(77231),I=e(52071),k=e(44328),S=e(79630),B=e(43607);const v="src/avformat/formats/IOggFormat.ts";class y extends p.A{constructor(){super(),(0,s.A)(this,"type",4),(0,s.A)(this,"headerPagesPayload",void 0),(0,s.A)(this,"page",void 0),(0,s.A)(this,"curSegIndex",void 0),(0,s.A)(this,"curSegStart",void 0),(0,s.A)(this,"segCount",void 0),(0,s.A)(this,"segIndex",void 0),(0,s.A)(this,"currentPts",void 0),(0,s.A)(this,"firstPos",void 0),(0,s.A)(this,"firstGranulePosition",void 0),(0,s.A)(this,"paddingPayload",void 0),this.page=new a.B,this.headerPagesPayload=[]}init(t){t.ioReader&&t.ioReader.setEndian(!1),t.ioReader&&t.ioReader.setEndian(!1),this.curSegIndex=-1,this.curSegStart=0,this.currentPts=BigInt(0),this.segCount=0,this.segIndex=0,this.firstGranulePosition=BigInt(0)}async estimateTotalBlock(t){let i=BigInt(0);const e=t.ioReader.getPos(),s=this.currentPts,r=await t.ioReader.fileSize();for(await t.ioReader.seek(B.T9(r-BigInt(195072),BigInt(0))),await this.syncPage(t);;)try{this.page.reset(),await this.page.read(t.ioReader),i=this.page.granulePosition}catch(t){break}return await t.ioReader.seek(e),this.currentPts=s,i}async getNextSegment(t){if(this.curSegIndex<0){this.page.granulePosition>BigInt(0)&&(this.currentPts=this.page.granulePosition),this.page.reset(),await this.page.read(t.ioReader),this.curSegIndex=0,this.curSegStart=0,this.segIndex=-1,this.segCount=0;for(let t=0;t<this.page.segmentTable.length;t++)255!==this.page.segmentTable[t]&&this.segCount++;this.segCount||(this.segCount=1)}let i=0;for(;this.curSegIndex<this.page.segmentTable.length;){const t=this.page.segmentTable[this.curSegIndex++];if(i+=t,255!==t)break}const e=this.curSegStart;return this.curSegStart+=i,this.segIndex++,this.curSegIndex===this.page.segmentTable.length&&(this.curSegIndex=-1),this.page.payload.subarray(e,e+i)}addComment(t,i){t.vendorString&&(i.metadata.vendor=t.vendorString),(0,d.ol)(t.comments.list,i.metadata)}async createStream(t,i){if(i.length<8)return 0;let e=new m.A(i.length,!1);e.appendBuffer(i);const s=e.peekString(8);if("OpusHead"===s){const s=new o.q;s.read(e);const r=new o.o;i=await this.getNextSegment(t),e=new m.A(i.length,!1),e.appendBuffer(i),r.read(e),this.headerPagesPayload=[s,r];const n=t.createStream();n.codecpar.codecType=1,n.codecpar.codecId=86076,n.codecpar.sampleRate=s.sampleRate,n.codecpar.chLayout.nbChannels=s.channels,n.timeBase.den=n.codecpar.sampleRate,n.timeBase.num=1,n.privData={serialNumber:this.page.serialNumber},this.addComment(r,n),n.duration=await this.estimateTotalBlock(t)}else if("vorbis"===s.slice(1,7)){const s=[i],r=new d.mS;r.read(e);const n=new d.GM;i=await this.getNextSegment(t),e=new m.A(i.length,!1),e.appendBuffer(i),n.read(e),s.push(i),this.headerPagesPayload=[r,n];const a=t.createStream();a.codecpar.codecType=1,a.codecpar.codecId=86021,a.codecpar.sampleRate=r.sampleRate,a.codecpar.chLayout.nbChannels=r.channels,a.timeBase.den=a.codecpar.sampleRate,a.timeBase.num=1,a.privData={serialNumber:this.page.serialNumber},this.addComment(n,a),s.push(await this.getNextSegment(t));const h=s.reduce(((t,i)=>t+2+i.length),0),o=(0,c.sY)(h),g=new b.A(h,!0,new S.A(o,h));s.forEach((t=>{g.writeUint16(t.length),g.writeBuffer(t)})),a.codecpar.extradata=o,a.codecpar.extradataSize=h,a.duration=await this.estimateTotalBlock(t)}else if("FLAC"===s.slice(1,5)){e.setEndian(!0),e.skip(1),e.skip(4),e.skip(1),e.skip(1),e.readUint16(),e.skip(4);const s=e.readUint8(),r=e.readUint24();if(0!==s)return g.LR;{const s=t.createStream();s.codecpar.codecType=1,s.codecpar.codecId=86028;const n=(0,c.sY)(r);e.peekBuffer(r,(0,u.s3)(n,r)),e.skip(10);const h=e.readUint24();s.codecpar.sampleRate=h>>4,s.codecpar.chLayout.nbChannels=1+((15&h)>>>1),s.timeBase.den=s.codecpar.sampleRate,s.timeBase.num=1,s.privData={serialNumber:this.page.serialNumber},s.codecpar.extradata=n,s.codecpar.extradataSize=r;const o=new a.h;i=await this.getNextSegment(t),e=new m.A(i.length-4,!1),e.appendBuffer(i.subarray(4)),o.read(e),s.duration=await this.estimateTotalBlock(t),this.addComment(o,s),this.headerPagesPayload=[o]}}else{if("Speex"!==s.slice(0,5))return 0;{const s=t.createStream();s.codecpar.codecType=1,s.codecpar.codecId=86051;const r=(0,c.sY)(i.length);(0,u.lW)(r,i.length,i),s.codecpar.extradata=r,s.codecpar.extradataSize=i.length,e.seek(BigInt(36)),s.codecpar.sampleRate=e.readUint32(),e.seek(BigInt(48)),s.codecpar.chLayout.nbChannels=e.readUint32(),s.timeBase.den=s.codecpar.sampleRate,s.timeBase.num=1,s.privData={serialNumber:this.page.serialNumber};const n=new a.h;i=await this.getNextSegment(t),e=new m.A(i.length,!1),e.appendBuffer(i),n.read(e),s.duration=await this.estimateTotalBlock(t),this.addComment(n,s),this.headerPagesPayload=[n]}}return 1}async readHeader(t){try{if("OggS"!==await t.ioReader.peekString(4))return h.z3("the file format is not oggs",v,381),g.LR;for(;;){let i=this.paddingPayload||await this.getNextSegment(t);this.paddingPayload&&(this.paddingPayload=null);const e=await this.createStream(t,i);if(e<0)return e;if(!e){this.paddingPayload=i;break}}return this.firstPos=this.paddingPayload?this.page.pos:t.ioReader.getPos(),0}catch(i){return h.z3(i.message,v,403),t.ioReader.error}}async readAVPacket(t,i){n.M[17](i+56,t.ioReader.getPos());try{const e=this.paddingPayload||await this.getNextSegment(t);this.paddingPayload&&(this.paddingPayload=null);let s=this.currentPts+(this.page.granulePosition-this.currentPts)/BigInt(Math.floor(this.segCount))*BigInt(Math.floor(this.segIndex));n.M[17](i+16,s),n.M[17](i+8,s),this.firstGranulePosition||(this.firstGranulePosition=this.page.granulePosition);const a=t.streams.find((t=>t.privData&&t.privData.serialNumber===this.page.serialNumber));if(!a)return await this.createStream(t,e),this.readAVPacket(t,i);n.M[15](i+32,a.index),n.M[15](i+76,a.timeBase.den),n.M[15](i+72,a.timeBase.num),1===a.codecpar.codecType&&n.M[15](i+36,1|r.f[15](i+36));const h=[e];for(;this.curSegIndex<0;)try{if(!(1&(await t.ioReader.peekBuffer(6))[5]))break;h.push(await this.getNextSegment(t))}catch(t){break}const o=(0,l.A)(Uint8Array,h),d=o.length,g=(0,c.sY)(d);return(0,u.lW)(g,d,o),(0,f.NX)(i,g,d),0}catch(i){return-1048576!==t.ioReader.error?(h.z3(`read packet error, ${i}`,v,472),g.LR):t.ioReader.error}}async syncPage(t){let i=w.Dh,e=BigInt(0);for(;;)try{if("OggS"===await t.ioReader.peekString(4)){i=t.ioReader.getPos(),this.page.reset(),await this.page.read(t.ioReader),e=this.page.granulePosition;let s=0;for(;3!==s&&"OggS"===await t.ioReader.peekString(4);)s++,this.page.reset(),await this.page.read(t.ioReader);if(3===s)break}await t.ioReader.skip(1)}catch(t){break}if(i!==w.Dh){for(await t.ioReader.seek(i);1&(await t.ioReader.peekBuffer(6))[5];)this.page.reset(),await this.page.read(t.ioReader),e=this.page.granulePosition;this.currentPts=e-this.firstGranulePosition,this.curSegIndex=-1}}async seek(t,i,e,s){const r=t.ioReader.getPos();if(2&s){const i=await t.ioReader.fileSize();return i<=BigInt(0)?BigInt(g.E$):(e<BigInt(0)?e=BigInt(0):e>i&&(e=i),await t.ioReader.seek(e),4&s||await this.syncPage(t),r)}return(0,k.k)(e,i.timeBase,w.i0)<BigInt(1e4)?(h.Yz(`seek pts is earlier then 10s, seek to first packet pos(${this.firstPos}) directly`,v,564),await t.ioReader.seek(this.firstPos),this.currentPts=BigInt(0),r):(0,I.A)(t,i,e,this.firstPos,this.readAVPacket.bind(this),this.syncPage.bind(this))}getAnalyzeStreamsCount(){return 1}}},38743:(t,i,e)=>{e.d(i,{B:()=>h,h:()=>o});var s=e(134),r=e(77231),n=e(50011);class a{constructor(){(0,s.A)(this,"list",void 0),this.list=[]}read(t,i){for(let e=0;e<i;e++){const i=t.readUint32();this.list.push(t.readString(i))}}write(t){for(let i=0;i<this.list.length;i++){const e=n.encode(this.list[i]);t.writeUint32(e.length),t.writeBuffer(e)}}addComment(t){this.list.push(t)}}class h{constructor(){(0,s.A)(this,"capturePattern",void 0),(0,s.A)(this,"streamStructureVersion",void 0),(0,s.A)(this,"headerTypeFlag",void 0),(0,s.A)(this,"granulePosition",void 0),(0,s.A)(this,"serialNumber",void 0),(0,s.A)(this,"pageSequenceNumber",void 0),(0,s.A)(this,"crcCheckSum",void 0),(0,s.A)(this,"numberPageSegments",void 0),(0,s.A)(this,"segmentTable",void 0),(0,s.A)(this,"payload",void 0),(0,s.A)(this,"pos",void 0),this.reset()}reset(){this.capturePattern="OggS",this.streamStructureVersion=0,this.headerTypeFlag=0,this.granulePosition=r.Dh,this.serialNumber=0,this.pageSequenceNumber=0,this.crcCheckSum=0,this.numberPageSegments=0,this.segmentTable=[],this.pos=BigInt(0)}async read(t){this.pos=t.getPos(),await this.readPageHeader(t);const i=this.segmentTable.reduce(((t,i)=>t+i),0);i&&(this.payload=await t.readBuffer(i))}async readPageHeader(t){if(this.capturePattern=await t.readString(4),this.streamStructureVersion=await t.readUint8(),this.headerTypeFlag=await t.readUint8(),this.granulePosition=await t.readUint64(),this.serialNumber=await t.readUint32(),this.pageSequenceNumber=await t.readUint32(),this.crcCheckSum=await t.readUint32(),this.numberPageSegments=await t.readUint8(),this.numberPageSegments)for(let i=0;i<this.numberPageSegments;i++){const i=await t.readUint8();this.segmentTable.push(i)}}write(t){if(this.pos=t.getPos(),t.writeString(this.capturePattern),t.writeUint8(this.streamStructureVersion),t.writeUint8(this.headerTypeFlag),t.writeUint64(this.granulePosition),t.writeUint32(this.serialNumber),t.writeUint32(this.pageSequenceNumber),t.writeUint32(this.crcCheckSum),this.payload){this.numberPageSegments=Math.floor(this.payload.length/255)+1;const i=this.payload.length%255;t.writeUint8(this.numberPageSegments);for(let i=0;i<this.numberPageSegments-1;i++)t.writeUint8(255);t.writeUint8(i),t.writeBuffer(this.payload)}else t.writeUint8(0)}}class o{constructor(){(0,s.A)(this,"streamIndex",void 0),(0,s.A)(this,"signature",void 0),(0,s.A)(this,"vendorStringLength",void 0),(0,s.A)(this,"vendorString",void 0),(0,s.A)(this,"userCommentListLength",void 0),(0,s.A)(this,"comments",void 0),this.vendorString="v0.5.0-24-g24b7023",this.vendorStringLength=this.vendorString.length,this.userCommentListLength=0,this.comments=new a}read(t){this.vendorStringLength=t.readUint32(),this.vendorString=t.readString(this.vendorStringLength),this.userCommentListLength=t.readUint32(),this.userCommentListLength&&this.comments.read(t,this.userCommentListLength)}write(t){const i=n.encode(this.vendorString);t.writeUint32(i.length),t.writeBuffer(i),t.writeUint32(this.comments.list.length),this.comments.write(t)}addComment(t){this.comments.addComment(t)}setCodec(t){}}},54712:(t,i,e)=>{e.d(i,{o:()=>h,q:()=>a});var s=e(134),r=e(38743);class n{constructor(){(0,s.A)(this,"streamCount",void 0),(0,s.A)(this,"coupledStreamCount",void 0),(0,s.A)(this,"mapping",void 0),this.streamCount=1,this.coupledStreamCount=0,this.mapping=new Uint8Array(1)}read(t){this.streamCount=t.readUint8(),this.coupledStreamCount=t.readUint8(),this.mapping=t.readBuffer(this.streamCount+this.coupledStreamCount)}write(t){t.writeUint8(this.streamCount),t.writeUint8(this.coupledStreamCount),t.writeBuffer(this.mapping)}}class a{constructor(){(0,s.A)(this,"streamIndex",void 0),(0,s.A)(this,"signature",void 0),(0,s.A)(this,"version",void 0),(0,s.A)(this,"channels",void 0),(0,s.A)(this,"preSkip",void 0),(0,s.A)(this,"sampleRate",void 0),(0,s.A)(this,"outputGain",void 0),(0,s.A)(this,"channelMappingFamily",void 0),(0,s.A)(this,"channelMappingTable",void 0),this.signature="OpusHead",this.version=1,this.channels=1,this.preSkip=0,this.sampleRate=48e3,this.outputGain=0,this.channelMappingFamily=0,this.channelMappingTable=new n}read(t){this.signature=t.readString(8),this.version=t.readUint8(),this.channels=t.readUint8(),this.preSkip=t.readUint16(),this.sampleRate=t.readUint32(),this.outputGain=t.readInt16(),this.channelMappingFamily=t.readUint8(),0!==this.channelMappingFamily&&this.channelMappingTable.read(t)}write(t){t.writeString(this.signature),t.writeUint8(this.version),t.writeUint8(this.channels),t.writeUint16(this.preSkip),t.writeUint32(this.sampleRate),t.writeInt16(this.outputGain),t.writeUint8(this.channelMappingFamily),0!==this.channelMappingFamily&&this.channelMappingTable.write(t)}setCodec(t){this.sampleRate=t.sampleRate,this.channels=t.chLayout.nbChannels,this.channelMappingFamily=t.format}}class h extends r.h{constructor(){super(),this.signature="OpusTags"}read(t){this.signature=t.readString(8),super.read(t)}write(t){t.writeString(this.signature),super.write(t)}addComment(t){this.comments.addComment(t)}setCodec(t){}}},87400:(t,i,e)=>{e.d(i,{GM:()=>o,mS:()=>h,ol:()=>a});var s=e(134),r=e(38743);e(95335),e(34677);const n={album:"album",artist:"artist",description:"description",encoder:"encoder",title:"title",tracknumber:"track",date:"date",genre:"genre",comment:"comment",albumartist:"albumArtist",composer:"composer",performer:"performer",discnumber:"disc",organization:"vendor",copyright:"copyright",license:"license",isrc:"isrc",lyrics:"lyrics",language:"language",label:"vendor",script:"lyrics",encoded_by:"vendor"};function a(t,i){t&&t.forEach((t=>{const e=t.split("=");if(2===e.length){const t=e[0].trim().toLowerCase(),s=e[1].trim();n[t]?i[n[t]]=s:i[t.toLowerCase()]=s}}))}class h{constructor(t="vorbis"){(0,s.A)(this,"streamIndex",void 0),(0,s.A)(this,"packetType",void 0),(0,s.A)(this,"signature",void 0),(0,s.A)(this,"version",void 0),(0,s.A)(this,"channels",void 0),(0,s.A)(this,"sampleRate",void 0),(0,s.A)(this,"bitrateMaximum",void 0),(0,s.A)(this,"bitrateNominal",void 0),(0,s.A)(this,"bitrateMinimum",void 0),(0,s.A)(this,"blocksize0",void 0),(0,s.A)(this,"blocksize1",void 0),(0,s.A)(this,"framingFlag",void 0),this.signature=t,this.version=0,this.channels=1,this.sampleRate=48e3,this.bitrateMaximum=0,this.bitrateNominal=0,this.bitrateMinimum=0,this.blocksize0=2048,this.blocksize1=256}read(t){this.packetType=t.readUint8(),this.signature=t.readString(6),this.version=t.readUint32(),this.channels=t.readUint8(),this.sampleRate=t.readInt32(),this.bitrateMaximum=t.readInt32(),this.bitrateNominal=t.readInt32(),this.bitrateMinimum=t.readInt32();const i=255&t.readUint8();this.blocksize0=Math.pow(2,i>>>4),this.blocksize1=Math.pow(2,15&i),this.framingFlag=t.readUint8()}write(t){t.writeUint8(1),t.writeString(this.signature),t.writeUint32(this.version),t.writeUint8(this.channels),t.writeInt32(this.sampleRate),t.writeInt32(this.bitrateMaximum),t.writeInt32(this.bitrateNominal),t.writeInt32(this.bitrateMinimum),t.writeUint8(Math.log2(this.blocksize0)<<4|Math.log2(this.blocksize1)),t.writeUint8(1)}setCodec(t){this.sampleRate=t.sampleRate,this.channels=t.chLayout.nbChannels}}class o extends r.h{constructor(t="vorbis"){super(),(0,s.A)(this,"packetType",void 0),(0,s.A)(this,"framingFlag",void 0),this.signature=t,this.packetType=1,this.framingFlag=1}read(t){this.packetType=t.readUint8(),this.signature=t.readString(6),super.read(t),"vorbis"===this.signature&&(this.framingFlag=t.readUint8())}write(t){t.writeUint8(this.packetType),t.writeString(this.signature),super.write(t),"vorbis"===this.signature&&t.writeUint8(this.framingFlag)}addComment(t){this.comments.addComment(t)}setCodec(t){}}},2187:(t,i,e)=>{e.d(i,{d:()=>a});var s=e(72739),r=e(44328),n=e(77231);function a(t,i,e){let a=BigInt(0);return s.__(t,(t=>{a+=t.codecpar.bitrate*(0,r.k)(i,e,n.i0)/BigInt(8e3)})),a}},52071:(t,i,e)=>{e.d(i,{A:()=>l});var s=e(63939),r=(e(9599),e(77231)),n=e(44328),a=e(2187),h=e(71517),o=e(9705),d=e(4624);const g="src/avformat/function/seekInBytes.ts";async function l(t,i,e,l,p,u){const c=t.ioReader.getPos(),f=await t.ioReader.fileSize();let m=r.Dh,b=e;i.startTime!==r.Dh?b-=i.startTime:b-=i.firstDTS;const w=(0,n.k)(e,i.timeBase,r.i0);if(w<BigInt(1e4))return d.Yz(`seek pts is earlier then 10s, seek to first packet pos(${l}) directly`,g,62),await t.ioReader.seek(l),c;let I=(0,a.d)(t.streams,b,i.timeBase);const k=f-(0,a.d)(t.streams,BigInt(1e4),r.i0),S=(0,a.d)(t.streams,BigInt(1e4),r.i0);if(I>k&&(I=k),I<l)return await t.ioReader.seek(l),c;const B=(0,h._5)();let v=f,y=BigInt(0);for(;;){if(v-y<S){m=y;break}if(await t.ioReader.seek(I),await u(t),8&t.ioReader.flags)break;const i=t.ioReader.getPos();if(!(await p(t,B)>=0)){m=r.Dh;break}{const t=(0,n.Mr)(s.f[17](B+8),B+72,r.i0),e=t-w;if(d.Yz(`try to seek to pos: ${I}, got packet pts: ${s.f[17](B+8)}(${t}ms), diff: ${e}ms`,g,100),e<=BigInt(0)&&-e<BigInt(1e4)){m=i;break}e>BigInt(0)?(v=I,I=y+v>>BigInt(1)):(y=I,I=y+v>>BigInt(1))}if(8&t.ioReader.flags)break}return(0,h.Qe)(B),m!==r.Dh?(d.Yz(`finally seek to pos ${m}`,g,131),await t.ioReader.seek(m),await u(t),c):(await t.ioReader.seek(c),8&t.ioReader.flags?BigInt(o.LT):BigInt(o.E$))}},82348:(t,i,e)=>{e.d(i,{A:()=>h});var s=e(134),r=e(4624),n=e(50011);const a="src/common/io/IOReaderSync.ts";class h{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)}}readUint8(){this.remainingLength()<1&&this.flush(1);const t=this.data.getUint8(this.pointer);return this.pointer++,this.pos++,t}peekUint8(){return this.remainingLength()<1&&this.flush(1),this.data.getUint8(this.pointer)}readUint16(){this.remainingLength()<2&&this.flush(2);const t=this.data.getUint16(this.pointer,this.littleEndian);return this.pointer+=2,this.pos+=BigInt(2),t}peekUint16(){return this.remainingLength()<2&&this.flush(2),this.data.getUint16(this.pointer,this.littleEndian)}readUint24(){this.remainingLength()<3&&this.flush(3);const t=this.readUint16(),i=this.readUint8();return this.littleEndian?i<<16|t:t<<8|i}peekUint24(){this.remainingLength()<3&&this.flush(3);const t=this.pointer,i=this.pos,e=this.readUint16(),s=this.readUint8(),r=this.littleEndian?s<<16|e:e<<8|s;return this.pointer=t,this.pos=i,r}readUint32(){this.remainingLength()<4&&this.flush(4);const t=this.data.getUint32(this.pointer,this.littleEndian);return this.pointer+=4,this.pos+=BigInt(4),t}peekUint32(){return this.remainingLength()<4&&this.flush(4),this.data.getUint32(this.pointer,this.littleEndian)}readUint64(){this.remainingLength()<8&&this.flush(8);const t=this.data.getBigUint64(this.pointer,this.littleEndian);return this.pointer+=8,this.pos+=BigInt(8),t}peekUint64(){return this.remainingLength()<8&&this.flush(8),this.data.getBigUint64(this.pointer,this.littleEndian)}readInt8(){this.remainingLength()<1&&this.flush(1);const t=this.data.getInt8(this.pointer);return this.pointer++,this.pos++,t}peekInt8(){return this.remainingLength()<1&&this.flush(1),this.data.getInt8(this.pointer)}readInt16(){this.remainingLength()<2&&this.flush(2);const t=this.data.getInt16(this.pointer,this.littleEndian);return this.pointer+=2,this.pos+=BigInt(2),t}peekInt16(){return this.remainingLength()<2&&this.flush(2),this.data.getInt16(this.pointer,this.littleEndian)}readInt24(){const t=this.readUint24();return 8388608&t?t-16777216:t}peekInt24(){const t=this.peekUint24();return 8388608&t?t-16777216:t}readInt32(){this.remainingLength()<4&&this.flush(4);const t=this.data.getInt32(this.pointer,this.littleEndian);return this.pointer+=4,this.pos+=BigInt(4),t}peekInt32(){return this.remainingLength()<4&&this.flush(4),this.data.getInt32(this.pointer,this.littleEndian)}readInt64(){this.remainingLength()<8&&this.flush(8);const t=this.data.getBigInt64(this.pointer,this.littleEndian);return this.pointer+=8,this.pos+=BigInt(8),t}peekInt64(){return this.remainingLength()<8&&this.flush(8),this.data.getBigInt64(this.pointer,this.littleEndian)}readFloat(){this.remainingLength()<4&&this.flush(4);const t=this.data.getFloat32(this.pointer,this.littleEndian);return this.pointer+=4,this.pos+=BigInt(4),t}peekFloat(){return this.remainingLength()<4&&this.flush(4),this.data.getFloat32(this.pointer,this.littleEndian)}readDouble(){this.remainingLength()<8&&this.flush(8);const t=this.data.getFloat64(this.pointer,this.littleEndian);return this.pointer+=8,this.pos+=BigInt(8),t}peekDouble(){return this.remainingLength()<8&&this.flush(8),this.data.getFloat64(this.pointer,this.littleEndian)}readHex(t=1){let i="";for(let e=0;e<t;e++){const t=this.readUint8().toString(16);i+=1===t.length?"0"+t:t}return i}peekHex(t=1){t>this.size&&(this.error=-1048574,r.h2("peekHex, length too large",a,412)),this.remainingLength()<t&&this.flush(t);const i=this.pointer,e=this.pos;let s="";for(let i=0;i<t;i++){const t=this.readUint8().toString(16);s+=1===t.length?"0"+t:t}return this.pointer=i,this.pos=e,s}readBuffer(t,i){if(!t)return new Uint8Array(0);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;){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}peekBuffer(t,i){return t?(t>this.size&&(this.error=-1048574,r.h2("peekBuffer, length too large",a,505)),this.remainingLength()<t&&this.flush(t),i||(i=new Uint8Array(t)),i.set(this.buffer.subarray(this.pointer,this.pointer+t),0),i):new Uint8Array(0)}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{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}readString(t=1){const i=this.readBuffer(t);return n.decode(i)}peekString(t=1){const i=this.peekBuffer(t);return n.decode(i)}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+=this.readString(e-this.pointer)),i=!0;break}if(i)break;t+=this.readString(this.remainingLength()),this.flush()}let i=this.peekUint8();return 10!==i&&13!==i||(this.pointer++,13===i&&(i=this.peekUint8(),10===i&&this.pointer++)),t}peekLine(){this.remainingLength()<this.size&&this.flush();let t="",i=!1;for(let e=this.pointer;e<this.endPointer;e++)if(10===this.buffer[e]||13===this.buffer[e]){t+=this.peekString(e-this.pointer),i=!0;break}return i||(this.error=-1048574,r.h2("peekLine, out of buffer",a,656)),t}getPointer(){return this.pointer}getPos(){return this.pos}skip(t){const i=t;for(;this.remainingLength()<t;)t-=this.remainingLength(),this.pointer=this.endPointer,this.flush();this.remainingLength()>=t&&(this.pointer+=t),this.pos+=BigInt(i)}remainingLength(){return this.endPointer-this.pointer}flush(t=0){if(this.onFlush||(this.error=-1048574,r.h2("IOReader error, flush failed because of no flush callback",a,720)),!(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=this.onFlush(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=this.onFlush(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}}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",a,790)),this.pointer=this.endPointer=0,this.pos=t;const s=this.onSeek(t);0!==s&&(this.error=s,r.h2("IOReader error, seek failed",a,799)),e&&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",a,838)}}reset(){this.pointer=this.endPointer=0,this.pos=BigInt(0),this.error=0}setEndian(t){this.littleEndian=!t}fileSize(){if(this.fileSize_)return this.fileSize_;if(!this.onSize)return r.R8("IOReader error, fileSize failed because of no onSize callback",a,871),BigInt(0);try{this.fileSize_=this.onSize()}catch(t){r.R8(`IOReader error, call fileSize failed: ${t}`,a,878),this.fileSize_=BigInt(0)}return this.fileSize_}getBufferSize(){return this.size}pipe(t,i){if(i)if(this.remainingLength()<i){if(this.remainingLength()>0){const e=this.remainingLength();t.writeBuffer(this.buffer.subarray(this.pointer,this.pointer+e)),this.pointer+=e,this.pos+=BigInt(e),i-=e}for(;i>0;){this.flush();const e=Math.min(this.endPointer-this.pointer,i);t.writeBuffer(this.buffer.subarray(this.pointer,this.pointer+e)),this.pointer+=e,this.pos+=BigInt(e),i-=e}}else 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();t.writeBuffer(this.buffer.subarray(this.pointer,this.pointer+i)),this.pointer+=i,this.pos+=BigInt(i)}for(;this.onFlush(this.buffer.subarray(0))>0;){const i=this.remainingLength();t.writeBuffer(this.buffer.subarray(this.pointer,this.pointer+i)),this.pointer+=i,this.pos+=BigInt(i)}}}}},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}}}}]);
|
|
1
|
+
(self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[118],{85947:(t,i,e)=>{e.d(i,{A:()=>r});var s=e(134);class r{constructor(){(0,s.A)(this,"type",-1),(0,s.A)(this,"onStreamAdd",void 0)}async destroy(t){}}},29118:(t,i,e)=>{e.r(i),e.d(i,{default:()=>y});var s=e(134),r=e(63939),n=e(50932),a=e(38743),h=e(4624),o=e(54712),d=e(87400),g=e(9705),l=e(92647),p=e(85947),u=e(14686),c=e(37837),f=e(71517),m=e(82348),b=e(35336),w=e(77231),I=e(52071),k=e(44328),S=e(79630),B=e(43607);const v="src/avformat/formats/IOggFormat.ts";class y extends p.A{constructor(){super(),(0,s.A)(this,"type",4),(0,s.A)(this,"headerPagesPayload",void 0),(0,s.A)(this,"page",void 0),(0,s.A)(this,"curSegIndex",void 0),(0,s.A)(this,"curSegStart",void 0),(0,s.A)(this,"segCount",void 0),(0,s.A)(this,"segIndex",void 0),(0,s.A)(this,"currentPts",void 0),(0,s.A)(this,"firstPos",void 0),(0,s.A)(this,"firstGranulePosition",void 0),(0,s.A)(this,"paddingPayload",void 0),this.page=new a.B,this.headerPagesPayload=[]}init(t){t.ioReader&&t.ioReader.setEndian(!1),t.ioReader&&t.ioReader.setEndian(!1),this.curSegIndex=-1,this.curSegStart=0,this.currentPts=BigInt(0),this.segCount=0,this.segIndex=0,this.firstGranulePosition=BigInt(0)}async estimateTotalBlock(t){let i=BigInt(0);const e=t.ioReader.getPos(),s=this.currentPts,r=await t.ioReader.fileSize();for(await t.ioReader.seek(B.T9(r-BigInt(195072),BigInt(0))),await this.syncPage(t);;)try{this.page.reset(),await this.page.read(t.ioReader),i=this.page.granulePosition}catch(t){break}return await t.ioReader.seek(e),this.currentPts=s,i}async getNextSegment(t){if(this.curSegIndex<0){this.page.granulePosition>BigInt(0)&&(this.currentPts=this.page.granulePosition),this.page.reset(),await this.page.read(t.ioReader),this.curSegIndex=0,this.curSegStart=0,this.segIndex=-1,this.segCount=0;for(let t=0;t<this.page.segmentTable.length;t++)255!==this.page.segmentTable[t]&&this.segCount++;this.segCount||(this.segCount=1)}let i=0;for(;this.curSegIndex<this.page.segmentTable.length;){const t=this.page.segmentTable[this.curSegIndex++];if(i+=t,255!==t)break}const e=this.curSegStart;return this.curSegStart+=i,this.segIndex++,this.curSegIndex===this.page.segmentTable.length&&(this.curSegIndex=-1),this.page.payload.subarray(e,e+i)}addComment(t,i){t.vendorString&&(i.metadata.vendor=t.vendorString),(0,d.ol)(t.comments.list,i.metadata)}async createStream(t,i){if(i.length<8)return 0;let e=new m.A(i.length,!1);e.appendBuffer(i);const s=e.peekString(8);if("OpusHead"===s){const s=new o.q;s.read(e);const r=new o.o;i=await this.getNextSegment(t),e=new m.A(i.length,!1),e.appendBuffer(i),r.read(e),this.headerPagesPayload=[s,r];const n=t.createStream();n.codecpar.codecType=1,n.codecpar.codecId=86076,n.codecpar.sampleRate=s.sampleRate,n.codecpar.chLayout.nbChannels=s.channels,n.timeBase.den=n.codecpar.sampleRate,n.timeBase.num=1,n.privData={serialNumber:this.page.serialNumber},this.addComment(r,n),n.duration=await this.estimateTotalBlock(t)}else if("vorbis"===s.slice(1,7)){const s=[i],r=new d.mS;r.read(e);const n=new d.GM;i=await this.getNextSegment(t),e=new m.A(i.length,!1),e.appendBuffer(i),n.read(e),s.push(i),this.headerPagesPayload=[r,n];const a=t.createStream();a.codecpar.codecType=1,a.codecpar.codecId=86021,a.codecpar.sampleRate=r.sampleRate,a.codecpar.chLayout.nbChannels=r.channels,a.timeBase.den=a.codecpar.sampleRate,a.timeBase.num=1,a.privData={serialNumber:this.page.serialNumber},this.addComment(n,a),s.push(await this.getNextSegment(t));const h=s.reduce(((t,i)=>t+2+i.length),0),o=(0,c.sY)(h),g=new b.A(h,!0,new S.A(o,h));s.forEach((t=>{g.writeUint16(t.length),g.writeBuffer(t)})),a.codecpar.extradata=o,a.codecpar.extradataSize=h,a.duration=await this.estimateTotalBlock(t)}else if("FLAC"===s.slice(1,5)){e.setEndian(!0),e.skip(1),e.skip(4),e.skip(1),e.skip(1),e.readUint16(),e.skip(4);const s=e.readUint8(),r=e.readUint24();if(0!==s)return g.LR;{const s=t.createStream();s.codecpar.codecType=1,s.codecpar.codecId=86028;const n=(0,c.sY)(r);e.peekBuffer(r,(0,u.s3)(n,r)),e.skip(10);const h=e.readUint24();s.codecpar.sampleRate=h>>4,s.codecpar.chLayout.nbChannels=1+((15&h)>>>1),s.timeBase.den=s.codecpar.sampleRate,s.timeBase.num=1,s.privData={serialNumber:this.page.serialNumber},s.codecpar.extradata=n,s.codecpar.extradataSize=r;const o=new a.h;i=await this.getNextSegment(t),e=new m.A(i.length-4,!1),e.appendBuffer(i.subarray(4)),o.read(e),s.duration=await this.estimateTotalBlock(t),this.addComment(o,s),this.headerPagesPayload=[o]}}else{if("Speex"!==s.slice(0,5))return 0;{const s=t.createStream();s.codecpar.codecType=1,s.codecpar.codecId=86051;const r=(0,c.sY)(i.length);(0,u.lW)(r,i.length,i),s.codecpar.extradata=r,s.codecpar.extradataSize=i.length,e.seek(BigInt(36)),s.codecpar.sampleRate=e.readUint32(),e.seek(BigInt(48)),s.codecpar.chLayout.nbChannels=e.readUint32(),s.timeBase.den=s.codecpar.sampleRate,s.timeBase.num=1,s.privData={serialNumber:this.page.serialNumber};const n=new a.h;i=await this.getNextSegment(t),e=new m.A(i.length,!1),e.appendBuffer(i),n.read(e),s.duration=await this.estimateTotalBlock(t),this.addComment(n,s),this.headerPagesPayload=[n]}}return 1}async readHeader(t){try{if("OggS"!==await t.ioReader.peekString(4))return h.z3("the file format is not oggs",v,381),g.LR;for(;;){let i=this.paddingPayload||await this.getNextSegment(t);this.paddingPayload&&(this.paddingPayload=null);const e=await this.createStream(t,i);if(e<0)return e;if(!e){this.paddingPayload=i;break}}return this.firstPos=this.paddingPayload?this.page.pos:t.ioReader.getPos(),0}catch(i){return h.z3(i.message,v,403),t.ioReader.error}}async readAVPacket(t,i){n.M[17](i+56,t.ioReader.getPos());try{const e=this.paddingPayload||await this.getNextSegment(t);this.paddingPayload&&(this.paddingPayload=null);let s=this.currentPts+(this.page.granulePosition-this.currentPts)/BigInt(Math.floor(this.segCount))*BigInt(Math.floor(this.segIndex));n.M[17](i+16,s),n.M[17](i+8,s),this.firstGranulePosition||(this.firstGranulePosition=this.page.granulePosition);const a=t.streams.find((t=>t.privData&&t.privData.serialNumber===this.page.serialNumber));if(!a)return await this.createStream(t,e),this.readAVPacket(t,i);n.M[15](i+32,a.index),n.M[15](i+76,a.timeBase.den),n.M[15](i+72,a.timeBase.num),1===a.codecpar.codecType&&n.M[15](i+36,1|r.f[15](i+36));const h=[e];for(;this.curSegIndex<0;)try{if(!(1&(await t.ioReader.peekBuffer(6))[5]))break;h.push(await this.getNextSegment(t))}catch(t){break}const o=(0,l.A)(Uint8Array,h),d=o.length,g=(0,c.sY)(d);return(0,u.lW)(g,d,o),(0,f.NX)(i,g,d),0}catch(i){return-1048576!==t.ioReader.error?(h.z3(`read packet error, ${i}`,v,472),g.LR):t.ioReader.error}}async syncPage(t){let i=w.Dh,e=BigInt(0);for(;;)try{if("OggS"===await t.ioReader.peekString(4)){i=t.ioReader.getPos(),this.page.reset(),await this.page.read(t.ioReader),e=this.page.granulePosition;let s=0;for(;3!==s&&"OggS"===await t.ioReader.peekString(4);)s++,this.page.reset(),await this.page.read(t.ioReader);if(3===s)break}await t.ioReader.skip(1)}catch(t){break}if(i!==w.Dh){for(await t.ioReader.seek(i);1&(await t.ioReader.peekBuffer(6))[5];)this.page.reset(),await this.page.read(t.ioReader),e=this.page.granulePosition;this.currentPts=e-this.firstGranulePosition,this.curSegIndex=-1}}async seek(t,i,e,s){const r=t.ioReader.getPos();if(2&s){const i=await t.ioReader.fileSize();return i<=BigInt(0)?BigInt(g.E$):(e<BigInt(0)?e=BigInt(0):e>i&&(e=i),await t.ioReader.seek(e),4&s||await this.syncPage(t),r)}return(0,k.k)(e,i.timeBase,w.i0)<BigInt(1e4)?(h.Yz(`seek pts is earlier then 10s, seek to first packet pos(${this.firstPos}) directly`,v,564),await t.ioReader.seek(this.firstPos),this.currentPts=BigInt(0),r):(0,I.A)(t,i,e,this.firstPos,this.readAVPacket.bind(this),this.syncPage.bind(this))}getAnalyzeStreamsCount(){return 1}}},38743:(t,i,e)=>{e.d(i,{B:()=>h,h:()=>o});var s=e(134),r=e(77231),n=e(50011);class a{constructor(){(0,s.A)(this,"list",void 0),this.list=[]}read(t,i){for(let e=0;e<i;e++){const i=t.readUint32();this.list.push(t.readString(i))}}write(t){for(let i=0;i<this.list.length;i++){const e=n.encode(this.list[i]);t.writeUint32(e.length),t.writeBuffer(e)}}addComment(t){this.list.push(t)}}class h{constructor(){(0,s.A)(this,"capturePattern",void 0),(0,s.A)(this,"streamStructureVersion",void 0),(0,s.A)(this,"headerTypeFlag",void 0),(0,s.A)(this,"granulePosition",void 0),(0,s.A)(this,"serialNumber",void 0),(0,s.A)(this,"pageSequenceNumber",void 0),(0,s.A)(this,"crcCheckSum",void 0),(0,s.A)(this,"numberPageSegments",void 0),(0,s.A)(this,"segmentTable",void 0),(0,s.A)(this,"payload",void 0),(0,s.A)(this,"pos",void 0),this.reset()}reset(){this.capturePattern="OggS",this.streamStructureVersion=0,this.headerTypeFlag=0,this.granulePosition=r.Dh,this.serialNumber=0,this.pageSequenceNumber=0,this.crcCheckSum=0,this.numberPageSegments=0,this.segmentTable=[],this.pos=BigInt(0)}async read(t){this.pos=t.getPos(),await this.readPageHeader(t);const i=this.segmentTable.reduce(((t,i)=>t+i),0);i&&(this.payload=await t.readBuffer(i))}async readPageHeader(t){if(this.capturePattern=await t.readString(4),this.streamStructureVersion=await t.readUint8(),this.headerTypeFlag=await t.readUint8(),this.granulePosition=await t.readUint64(),this.serialNumber=await t.readUint32(),this.pageSequenceNumber=await t.readUint32(),this.crcCheckSum=await t.readUint32(),this.numberPageSegments=await t.readUint8(),this.numberPageSegments)for(let i=0;i<this.numberPageSegments;i++){const i=await t.readUint8();this.segmentTable.push(i)}}write(t){if(this.pos=t.getPos(),t.writeString(this.capturePattern),t.writeUint8(this.streamStructureVersion),t.writeUint8(this.headerTypeFlag),t.writeUint64(this.granulePosition),t.writeUint32(this.serialNumber),t.writeUint32(this.pageSequenceNumber),t.writeUint32(this.crcCheckSum),this.payload){this.numberPageSegments=Math.floor(this.payload.length/255)+1;const i=this.payload.length%255;t.writeUint8(this.numberPageSegments);for(let i=0;i<this.numberPageSegments-1;i++)t.writeUint8(255);t.writeUint8(i),t.writeBuffer(this.payload)}else t.writeUint8(0)}}class o{constructor(){(0,s.A)(this,"streamIndex",void 0),(0,s.A)(this,"signature",void 0),(0,s.A)(this,"vendorStringLength",void 0),(0,s.A)(this,"vendorString",void 0),(0,s.A)(this,"userCommentListLength",void 0),(0,s.A)(this,"comments",void 0),this.vendorString="v0.6.1",this.vendorStringLength=this.vendorString.length,this.userCommentListLength=0,this.comments=new a}read(t){this.vendorStringLength=t.readUint32(),this.vendorString=t.readString(this.vendorStringLength),this.userCommentListLength=t.readUint32(),this.userCommentListLength&&this.comments.read(t,this.userCommentListLength)}write(t){const i=n.encode(this.vendorString);t.writeUint32(i.length),t.writeBuffer(i),t.writeUint32(this.comments.list.length),this.comments.write(t)}addComment(t){this.comments.addComment(t)}setCodec(t){}}},54712:(t,i,e)=>{e.d(i,{o:()=>h,q:()=>a});var s=e(134),r=e(38743);class n{constructor(){(0,s.A)(this,"streamCount",void 0),(0,s.A)(this,"coupledStreamCount",void 0),(0,s.A)(this,"mapping",void 0),this.streamCount=1,this.coupledStreamCount=0,this.mapping=new Uint8Array(1)}read(t){this.streamCount=t.readUint8(),this.coupledStreamCount=t.readUint8(),this.mapping=t.readBuffer(this.streamCount+this.coupledStreamCount)}write(t){t.writeUint8(this.streamCount),t.writeUint8(this.coupledStreamCount),t.writeBuffer(this.mapping)}}class a{constructor(){(0,s.A)(this,"streamIndex",void 0),(0,s.A)(this,"signature",void 0),(0,s.A)(this,"version",void 0),(0,s.A)(this,"channels",void 0),(0,s.A)(this,"preSkip",void 0),(0,s.A)(this,"sampleRate",void 0),(0,s.A)(this,"outputGain",void 0),(0,s.A)(this,"channelMappingFamily",void 0),(0,s.A)(this,"channelMappingTable",void 0),this.signature="OpusHead",this.version=1,this.channels=1,this.preSkip=0,this.sampleRate=48e3,this.outputGain=0,this.channelMappingFamily=0,this.channelMappingTable=new n}read(t){this.signature=t.readString(8),this.version=t.readUint8(),this.channels=t.readUint8(),this.preSkip=t.readUint16(),this.sampleRate=t.readUint32(),this.outputGain=t.readInt16(),this.channelMappingFamily=t.readUint8(),0!==this.channelMappingFamily&&this.channelMappingTable.read(t)}write(t){t.writeString(this.signature),t.writeUint8(this.version),t.writeUint8(this.channels),t.writeUint16(this.preSkip),t.writeUint32(this.sampleRate),t.writeInt16(this.outputGain),t.writeUint8(this.channelMappingFamily),0!==this.channelMappingFamily&&this.channelMappingTable.write(t)}setCodec(t){this.sampleRate=t.sampleRate,this.channels=t.chLayout.nbChannels,this.channelMappingFamily=t.format}}class h extends r.h{constructor(){super(),this.signature="OpusTags"}read(t){this.signature=t.readString(8),super.read(t)}write(t){t.writeString(this.signature),super.write(t)}addComment(t){this.comments.addComment(t)}setCodec(t){}}},87400:(t,i,e)=>{e.d(i,{GM:()=>o,mS:()=>h,ol:()=>a});var s=e(134),r=e(38743);e(95335),e(34677);const n={album:"album",artist:"artist",description:"description",encoder:"encoder",title:"title",tracknumber:"track",date:"date",genre:"genre",comment:"comment",albumartist:"albumArtist",composer:"composer",performer:"performer",discnumber:"disc",organization:"vendor",copyright:"copyright",license:"license",isrc:"isrc",lyrics:"lyrics",language:"language",label:"vendor",script:"lyrics",encoded_by:"vendor"};function a(t,i){t&&t.forEach((t=>{const e=t.split("=");if(2===e.length){const t=e[0].trim().toLowerCase(),s=e[1].trim();n[t]?i[n[t]]=s:i[t.toLowerCase()]=s}}))}class h{constructor(t="vorbis"){(0,s.A)(this,"streamIndex",void 0),(0,s.A)(this,"packetType",void 0),(0,s.A)(this,"signature",void 0),(0,s.A)(this,"version",void 0),(0,s.A)(this,"channels",void 0),(0,s.A)(this,"sampleRate",void 0),(0,s.A)(this,"bitrateMaximum",void 0),(0,s.A)(this,"bitrateNominal",void 0),(0,s.A)(this,"bitrateMinimum",void 0),(0,s.A)(this,"blocksize0",void 0),(0,s.A)(this,"blocksize1",void 0),(0,s.A)(this,"framingFlag",void 0),this.signature=t,this.version=0,this.channels=1,this.sampleRate=48e3,this.bitrateMaximum=0,this.bitrateNominal=0,this.bitrateMinimum=0,this.blocksize0=2048,this.blocksize1=256}read(t){this.packetType=t.readUint8(),this.signature=t.readString(6),this.version=t.readUint32(),this.channels=t.readUint8(),this.sampleRate=t.readInt32(),this.bitrateMaximum=t.readInt32(),this.bitrateNominal=t.readInt32(),this.bitrateMinimum=t.readInt32();const i=255&t.readUint8();this.blocksize0=Math.pow(2,i>>>4),this.blocksize1=Math.pow(2,15&i),this.framingFlag=t.readUint8()}write(t){t.writeUint8(1),t.writeString(this.signature),t.writeUint32(this.version),t.writeUint8(this.channels),t.writeInt32(this.sampleRate),t.writeInt32(this.bitrateMaximum),t.writeInt32(this.bitrateNominal),t.writeInt32(this.bitrateMinimum),t.writeUint8(Math.log2(this.blocksize0)<<4|Math.log2(this.blocksize1)),t.writeUint8(1)}setCodec(t){this.sampleRate=t.sampleRate,this.channels=t.chLayout.nbChannels}}class o extends r.h{constructor(t="vorbis"){super(),(0,s.A)(this,"packetType",void 0),(0,s.A)(this,"framingFlag",void 0),this.signature=t,this.packetType=1,this.framingFlag=1}read(t){this.packetType=t.readUint8(),this.signature=t.readString(6),super.read(t),"vorbis"===this.signature&&(this.framingFlag=t.readUint8())}write(t){t.writeUint8(this.packetType),t.writeString(this.signature),super.write(t),"vorbis"===this.signature&&t.writeUint8(this.framingFlag)}addComment(t){this.comments.addComment(t)}setCodec(t){}}},2187:(t,i,e)=>{e.d(i,{d:()=>a});var s=e(72739),r=e(44328),n=e(77231);function a(t,i,e){let a=BigInt(0);return s.__(t,(t=>{a+=t.codecpar.bitrate*(0,r.k)(i,e,n.i0)/BigInt(8e3)})),a}},52071:(t,i,e)=>{e.d(i,{A:()=>l});var s=e(63939),r=(e(9599),e(77231)),n=e(44328),a=e(2187),h=e(71517),o=e(9705),d=e(4624);const g="src/avformat/function/seekInBytes.ts";async function l(t,i,e,l,p,u){const c=t.ioReader.getPos(),f=await t.ioReader.fileSize();let m=r.Dh,b=e;i.startTime!==r.Dh?b-=i.startTime:b-=i.firstDTS;const w=(0,n.k)(e,i.timeBase,r.i0);if(w<BigInt(1e4))return d.Yz(`seek pts is earlier then 10s, seek to first packet pos(${l}) directly`,g,62),await t.ioReader.seek(l),c;let I=(0,a.d)(t.streams,b,i.timeBase);const k=f-(0,a.d)(t.streams,BigInt(1e4),r.i0),S=(0,a.d)(t.streams,BigInt(1e4),r.i0);if(I>k&&(I=k),I<l)return await t.ioReader.seek(l),c;const B=(0,h._5)();let v=f,y=BigInt(0);for(;;){if(v-y<S){m=y;break}if(await t.ioReader.seek(I),await u(t),8&t.ioReader.flags)break;const i=t.ioReader.getPos();if(!(await p(t,B)>=0)){m=r.Dh;break}{const t=(0,n.Mr)(s.f[17](B+8),B+72,r.i0),e=t-w;if(d.Yz(`try to seek to pos: ${I}, got packet pts: ${s.f[17](B+8)}(${t}ms), diff: ${e}ms`,g,100),e<=BigInt(0)&&-e<BigInt(1e4)){m=i;break}e>BigInt(0)?(v=I,I=y+v>>BigInt(1)):(y=I,I=y+v>>BigInt(1))}if(8&t.ioReader.flags)break}return(0,h.Qe)(B),m!==r.Dh?(d.Yz(`finally seek to pos ${m}`,g,131),await t.ioReader.seek(m),await u(t),c):(await t.ioReader.seek(c),8&t.ioReader.flags?BigInt(o.LT):BigInt(o.E$))}},82348:(t,i,e)=>{e.d(i,{A:()=>h});var s=e(134),r=e(4624),n=e(50011);const a="src/common/io/IOReaderSync.ts";class h{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)}}readUint8(){this.remainingLength()<1&&this.flush(1);const t=this.data.getUint8(this.pointer);return this.pointer++,this.pos++,t}peekUint8(){return this.remainingLength()<1&&this.flush(1),this.data.getUint8(this.pointer)}readUint16(){this.remainingLength()<2&&this.flush(2);const t=this.data.getUint16(this.pointer,this.littleEndian);return this.pointer+=2,this.pos+=BigInt(2),t}peekUint16(){return this.remainingLength()<2&&this.flush(2),this.data.getUint16(this.pointer,this.littleEndian)}readUint24(){this.remainingLength()<3&&this.flush(3);const t=this.readUint16(),i=this.readUint8();return this.littleEndian?i<<16|t:t<<8|i}peekUint24(){this.remainingLength()<3&&this.flush(3);const t=this.pointer,i=this.pos,e=this.readUint16(),s=this.readUint8(),r=this.littleEndian?s<<16|e:e<<8|s;return this.pointer=t,this.pos=i,r}readUint32(){this.remainingLength()<4&&this.flush(4);const t=this.data.getUint32(this.pointer,this.littleEndian);return this.pointer+=4,this.pos+=BigInt(4),t}peekUint32(){return this.remainingLength()<4&&this.flush(4),this.data.getUint32(this.pointer,this.littleEndian)}readUint64(){this.remainingLength()<8&&this.flush(8);const t=this.data.getBigUint64(this.pointer,this.littleEndian);return this.pointer+=8,this.pos+=BigInt(8),t}peekUint64(){return this.remainingLength()<8&&this.flush(8),this.data.getBigUint64(this.pointer,this.littleEndian)}readInt8(){this.remainingLength()<1&&this.flush(1);const t=this.data.getInt8(this.pointer);return this.pointer++,this.pos++,t}peekInt8(){return this.remainingLength()<1&&this.flush(1),this.data.getInt8(this.pointer)}readInt16(){this.remainingLength()<2&&this.flush(2);const t=this.data.getInt16(this.pointer,this.littleEndian);return this.pointer+=2,this.pos+=BigInt(2),t}peekInt16(){return this.remainingLength()<2&&this.flush(2),this.data.getInt16(this.pointer,this.littleEndian)}readInt24(){const t=this.readUint24();return 8388608&t?t-16777216:t}peekInt24(){const t=this.peekUint24();return 8388608&t?t-16777216:t}readInt32(){this.remainingLength()<4&&this.flush(4);const t=this.data.getInt32(this.pointer,this.littleEndian);return this.pointer+=4,this.pos+=BigInt(4),t}peekInt32(){return this.remainingLength()<4&&this.flush(4),this.data.getInt32(this.pointer,this.littleEndian)}readInt64(){this.remainingLength()<8&&this.flush(8);const t=this.data.getBigInt64(this.pointer,this.littleEndian);return this.pointer+=8,this.pos+=BigInt(8),t}peekInt64(){return this.remainingLength()<8&&this.flush(8),this.data.getBigInt64(this.pointer,this.littleEndian)}readFloat(){this.remainingLength()<4&&this.flush(4);const t=this.data.getFloat32(this.pointer,this.littleEndian);return this.pointer+=4,this.pos+=BigInt(4),t}peekFloat(){return this.remainingLength()<4&&this.flush(4),this.data.getFloat32(this.pointer,this.littleEndian)}readDouble(){this.remainingLength()<8&&this.flush(8);const t=this.data.getFloat64(this.pointer,this.littleEndian);return this.pointer+=8,this.pos+=BigInt(8),t}peekDouble(){return this.remainingLength()<8&&this.flush(8),this.data.getFloat64(this.pointer,this.littleEndian)}readHex(t=1){let i="";for(let e=0;e<t;e++){const t=this.readUint8().toString(16);i+=1===t.length?"0"+t:t}return i}peekHex(t=1){t>this.size&&(this.error=-1048574,r.h2("peekHex, length too large",a,412)),this.remainingLength()<t&&this.flush(t);const i=this.pointer,e=this.pos;let s="";for(let i=0;i<t;i++){const t=this.readUint8().toString(16);s+=1===t.length?"0"+t:t}return this.pointer=i,this.pos=e,s}readBuffer(t,i){if(!t)return new Uint8Array(0);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;){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}peekBuffer(t,i){return t?(t>this.size&&(this.error=-1048574,r.h2("peekBuffer, length too large",a,505)),this.remainingLength()<t&&this.flush(t),i||(i=new Uint8Array(t)),i.set(this.buffer.subarray(this.pointer,this.pointer+t),0),i):new Uint8Array(0)}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{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}readString(t=1){const i=this.readBuffer(t);return n.decode(i)}peekString(t=1){const i=this.peekBuffer(t);return n.decode(i)}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+=this.readString(e-this.pointer)),i=!0;break}if(i)break;t+=this.readString(this.remainingLength()),this.flush()}let i=this.peekUint8();return 10!==i&&13!==i||(this.pointer++,13===i&&(i=this.peekUint8(),10===i&&this.pointer++)),t}peekLine(){this.remainingLength()<this.size&&this.flush();let t="",i=!1;for(let e=this.pointer;e<this.endPointer;e++)if(10===this.buffer[e]||13===this.buffer[e]){t+=this.peekString(e-this.pointer),i=!0;break}return i||(this.error=-1048574,r.h2("peekLine, out of buffer",a,656)),t}getPointer(){return this.pointer}getPos(){return this.pos}skip(t){const i=t;for(;this.remainingLength()<t;)t-=this.remainingLength(),this.pointer=this.endPointer,this.flush();this.remainingLength()>=t&&(this.pointer+=t),this.pos+=BigInt(i)}remainingLength(){return this.endPointer-this.pointer}flush(t=0){if(this.onFlush||(this.error=-1048574,r.h2("IOReader error, flush failed because of no flush callback",a,720)),!(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=this.onFlush(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=this.onFlush(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}}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",a,790)),this.pointer=this.endPointer=0,this.pos=t;const s=this.onSeek(t);0!==s&&(this.error=s,r.h2("IOReader error, seek failed",a,799)),e&&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",a,838)}}reset(){this.pointer=this.endPointer=0,this.pos=BigInt(0),this.error=0}setEndian(t){this.littleEndian=!t}fileSize(){if(this.fileSize_)return this.fileSize_;if(!this.onSize)return r.R8("IOReader error, fileSize failed because of no onSize callback",a,871),BigInt(0);try{this.fileSize_=this.onSize()}catch(t){r.R8(`IOReader error, call fileSize failed: ${t}`,a,878),this.fileSize_=BigInt(0)}return this.fileSize_}getBufferSize(){return this.size}pipe(t,i){if(i)if(this.remainingLength()<i){if(this.remainingLength()>0){const e=this.remainingLength();t.writeBuffer(this.buffer.subarray(this.pointer,this.pointer+e)),this.pointer+=e,this.pos+=BigInt(e),i-=e}for(;i>0;){this.flush();const e=Math.min(this.endPointer-this.pointer,i);t.writeBuffer(this.buffer.subarray(this.pointer,this.pointer+e)),this.pointer+=e,this.pos+=BigInt(e),i-=e}}else 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();t.writeBuffer(this.buffer.subarray(this.pointer,this.pointer+i)),this.pointer+=i,this.pos+=BigInt(i)}for(;this.onFlush(this.buffer.subarray(0))>0;){const i=this.remainingLength();t.writeBuffer(this.buffer.subarray(this.pointer,this.pointer+i)),this.pointer+=i,this.pos+=BigInt(i)}}}}},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}}}}]);
|
package/dist/esm/453.avplayer.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[453],{18453:(e,t,i)=>{i.r(t),i.d(t,{default:()=>S});var a=i(134),r=i(63939),s=i(50932),n=i(4624),o=i(9705),c=i(85947),h=i(14686),d=i(37837),m=i(71517),f=i(91375),l=i(37246),u=i(92647),p=i(77231),g=i(52071),w=i(72739),x=i(44328),R=i(87400);const B="src/avformat/formats/IFlacFormat.ts",b=1024;class S extends c.A{constructor(){super(),(0,a.A)(this,"type",17),(0,a.A)(this,"context",void 0)}init(e){e.ioReader.setEndian(!0),this.context={streamInfo:{minimumBlockSize:0,maximumBlockSize:0,minimumFrameSize:0,maximumFrameSize:0,sampleRate:0,channels:0,bitPerSample:0,samples:BigInt(0),md5:""},frameInfo:{sampleRate:0,channels:0,bps:0,blocksize:0,chMode:0,frameOrSampleNum:BigInt(0),isVarSize:0},seekPoints:[],cueSheet:{catalogNumber:"",leadInSamples:BigInt(0),compactDisc:!1,tracks:[]},picture:{type:0,mimeType:"",description:"",width:0,height:0,colorDepth:0,indexedColor:0,data:null},cacheBuffer:null,cachePos:BigInt(0),bitReader:new l.A(16),fileSize:BigInt(0),firstFramePos:BigInt(0),isVarSize:-1}}async readHeader(e){if("fLaC"!==await e.ioReader.readString(4))return n.z3("the file format is not flac",B,118),o.LR;this.context.fileSize=await e.ioReader.fileSize();const t=e.createStream();for(t.codecpar.codecType=1,t.codecpar.codecId=86028;;){const i=await e.ioReader.readUint8(),a=await e.ioReader.readUint24(),r=-129&i;if(0===r){t.codecpar.extradata=(0,d.sY)(a),t.codecpar.extradataSize=a,(0,h.lW)(t.codecpar.extradata,a,await e.ioReader.peekBuffer(a)),this.context.streamInfo.minimumBlockSize=await e.ioReader.readUint16(),this.context.streamInfo.maximumBlockSize=await e.ioReader.readUint16(),this.context.streamInfo.minimumFrameSize=await e.ioReader.readUint24(),this.context.streamInfo.maximumFrameSize=await e.ioReader.readUint24();const i=await e.ioReader.readUint24();t.codecpar.sampleRate=i>>4,t.codecpar.chLayout.nbChannels=1+((15&i)>>>1),this.context.streamInfo.sampleRate=t.codecpar.sampleRate,this.context.streamInfo.channels=t.codecpar.chLayout.nbChannels;const r=await e.ioReader.readUint8();t.codecpar.bitsPerRawSample=1+((1&i)<<4|(240&r)>>>4),this.context.streamInfo.bitPerSample=t.codecpar.bitsPerRawSample;const s=await e.ioReader.readUint32(),n=BigInt(Math.floor(15&r))<<BigInt(32)|BigInt(Math.floor(s));this.context.streamInfo.samples=n,t.timeBase.den=t.codecpar.sampleRate,t.timeBase.num=1,t.duration=n,t.startTime=BigInt(0),this.context.streamInfo.md5=await e.ioReader.readString(16)}else if(2===r){const t=e.createStream();t.codecpar.codecType=2,t.codecpar.codecTag=await e.ioReader.readUint32(),t.codecpar.extradata=(0,d.sY)(a-4),t.codecpar.extradataSize=a-4,await e.ioReader.readBuffer(a-4,(0,h.JW)(t.codecpar.extradata,t.codecpar.extradataSize))}else if(3===r)for(let t=0;t<a/18;t++){const t=await e.ioReader.readUint64(),i=await e.ioReader.readUint64(),a=await e.ioReader.readUint16();this.context.seekPoints.push({pts:t,pos:i,samples:a})}else if(4===r){e.ioReader.setEndian(!1);const i=await e.ioReader.readUint32(),a=await e.ioReader.readString(i),r=await e.ioReader.readUint32(),s=[];for(let t=0;t<r;t++){const t=await e.ioReader.readUint32();s.push(await e.ioReader.readString(t))}t.metadata.vendor=a,(0,R.ol)(s,t.metadata),e.ioReader.setEndian(!0)}else if(5===r){this.context.cueSheet.catalogNumber=await e.ioReader.readString(128),this.context.cueSheet.leadInSamples=await e.ioReader.readUint64(),this.context.cueSheet.compactDisc=!!(await e.ioReader.readUint8()>>>7),await e.ioReader.skip(258);const t=await e.ioReader.readUint8();for(let i=0;i<t;i++){const t=await e.ioReader.readUint64(),i=await e.ioReader.readUint8(),a=await e.ioReader.readBuffer(12),r=await e.ioReader.readUint8();await e.ioReader.skip(13);const s=await e.ioReader.readUint8(),n=[];for(let t=0;t<s;t++)n.push({offset:await e.ioReader.readUint64(),point:await e.ioReader.readUint8()}),await e.ioReader.skip(3);this.context.cueSheet.tracks.push({offset:t,number:i,isrc:a,type:r>>>7,preEmphasisFlag:r>>>6&1,points:n})}}else if(6===r){this.context.picture.type=await e.ioReader.readUint32();let t=await e.ioReader.readUint32();this.context.picture.mimeType=await e.ioReader.readString(t),t=await e.ioReader.readUint32(),this.context.picture.description=await e.ioReader.readString(t),this.context.picture.width=await e.ioReader.readUint32(),this.context.picture.height=await e.ioReader.readUint32(),this.context.picture.colorDepth=await e.ioReader.readUint32(),this.context.picture.indexedColor=await e.ioReader.readUint32(),t=await e.ioReader.readUint32(),this.context.picture.data=await e.ioReader.readBuffer(t)}else await e.ioReader.skip(a);if(128&i)break}return this.context.firstFramePos=e.ioReader.getPos(),t.privData=this.context,0}async getNextFrame(e){const t=[];for(;;){if(e.ioReader.getPos()===this.context.fileSize){this.context.cacheBuffer&&(t.push(this.context.cacheBuffer),this.context.cacheBuffer=null);break}this.context.cacheBuffer?this.context.cacheBuffer.length<17&&(this.context.cacheBuffer=(0,u.A)(Uint8Array,[this.context.cacheBuffer,await e.ioReader.readBuffer(Math.min(b,Number(BigInt.asIntN(32,this.context.fileSize-e.ioReader.getPos()))))])):(this.context.cachePos=e.ioReader.getPos(),this.context.cacheBuffer=await e.ioReader.readBuffer(Math.min(b,Number(BigInt.asIntN(32,this.context.fileSize-e.ioReader.getPos())))));let i=t.length?0:2;const a=this.context.isVarSize<0?[248,249]:this.context.isVarSize?[249]:[248],r=this.context.cacheBuffer.length-2;for(;i<r;i++)if(255===this.context.cacheBuffer[i]&&w.zy(a,this.context.cacheBuffer[i+1])){i&&(t.push(this.context.cacheBuffer.subarray(0,i)),this.context.cacheBuffer=this.context.cacheBuffer.subarray(i),this.context.cachePos+=BigInt(Math.floor(i)));break}if(i===r){e.ioReader.getPos()===this.context.fileSize?(t.push(this.context.cacheBuffer),this.context.cachePos+=BigInt(Math.floor(this.context.cacheBuffer.length)),this.context.cacheBuffer=null):(t.push(this.context.cacheBuffer.subarray(0,i)),this.context.cachePos+=BigInt(Math.floor(i)),this.context.cacheBuffer=this.context.cacheBuffer.subarray(i));continue}this.context.cacheBuffer.length<16&&(this.context.cacheBuffer=(0,u.A)(Uint8Array,[this.context.cacheBuffer,await e.ioReader.readBuffer(Math.min(b,Number(BigInt.asIntN(32,this.context.fileSize-e.ioReader.getPos()))))])),this.context.bitReader.reset(),this.context.bitReader.appendBuffer(this.context.cacheBuffer.subarray(0,16));const s={};if(!((0,f.x)(this.context.bitReader,s,!0)<0||s.frameOrSampleNum-this.context.frameInfo.frameOrSampleNum!==BigInt(0|this.context.frameInfo.blocksize)&&s.frameOrSampleNum!==this.context.frameInfo.frameOrSampleNum+BigInt(1)))break;t.push(this.context.cacheBuffer.subarray(0,2)),this.context.cachePos+=BigInt(2),this.context.cacheBuffer=this.context.cacheBuffer.subarray(2)}return 1===t.length?t[0]:(0,u.A)(Uint8Array,t)}async readAVPacket(e,t){const i=e.streams.find((e=>e.codecpar.codecType=1));try{let a=e.ioReader.getPos();if(a===this.context.fileSize)return-1048576;if(this.context.bitReader.reset(),this.context.cacheBuffer?(a=this.context.cachePos,this.context.cacheBuffer.length<16&&(this.context.cacheBuffer=(0,u.A)(Uint8Array,[this.context.cacheBuffer,await e.ioReader.readBuffer(Math.min(b,Number(BigInt.asIntN(32,this.context.fileSize-e.ioReader.getPos()))))])),this.context.bitReader.appendBuffer(this.context.cacheBuffer.subarray(0,16))):this.context.bitReader.appendBuffer(await e.ioReader.peekBuffer(16)),(0,f.x)(this.context.bitReader,this.context.frameInfo)<0)return o.LR;const n=await this.getNextFrame(e),c=(0,d.sY)(n.length);return(0,h.lW)(c,n.length,n),(0,m.NX)(t,c,n.length),s.M[17](t+56,a),s.M[15](t+32,i.index),s.M[15](t+76,i.timeBase.den),s.M[15](t+72,i.timeBase.num),s.M[15](t+36,1|r.f[15](t+36)),s.M[17](t+16,this.context.frameInfo.isVarSize?this.context.frameInfo.frameOrSampleNum:this.context.frameInfo.frameOrSampleNum*BigInt(0|this.context.frameInfo.blocksize)),s.M[17](t+8,this.context.frameInfo.isVarSize?this.context.frameInfo.frameOrSampleNum:this.context.frameInfo.frameOrSampleNum*BigInt(0|this.context.frameInfo.blocksize)),this.context.isVarSize<0&&(this.context.isVarSize=this.context.frameInfo.isVarSize),0}catch(t){return-1048576!==e.ioReader.error?(n.z3(`read packet error, ${t}`,B,416),o.LR):e.ioReader.error}}async syncFrame(e){let t=p.Dh;for(;;)try{const i=await e.ioReader.peekUint16();if((65529===i||65528===i)&&(t=e.ioReader.getPos(),this.context.bitReader.reset(),this.context.bitReader.appendBuffer(await e.ioReader.peekBuffer(16)),!(0,f.x)(this.context.bitReader,{},!0)))break;await e.ioReader.skip(1)}catch(e){break}t!==p.Dh&&await e.ioReader.seek(t)}async seek(e,t,i,a){const r=e.ioReader.getPos(),s=t.privData;if(2&a){const t=await e.ioReader.fileSize();return t<=BigInt(0)?BigInt(o.E$):(i<BigInt(0)?i=BigInt(0):i>t&&(i=t),await e.ioReader.seek(i),4&a||await this.syncFrame(e),r)}if(t&&t.sampleIndexes.length){let a=w.El(t.sampleIndexes,(e=>e.pts>i?-1:1));if(a>0&&(0,x.k)(i-t.sampleIndexes[a-1].pts,t.timeBase,p.i0)<BigInt(5e3))return n.Yz(`seek in sampleIndexes, found index: ${a}, pts: ${t.sampleIndexes[a-1].pts}, pos: ${t.sampleIndexes[a-1].pos}`,B,483),await e.ioReader.seek(t.sampleIndexes[a-1].pos),s.cacheBuffer=null,r}if(s.seekPoints.length){let t=0;for(let e=0;e<s.seekPoints.length;e++){if(s.seekPoints[e].pts===i){t=e;break}if(s.seekPoints[e].pts>i){t=Math.max(e-1,0);break}}const a=s.seekPoints[t];return n.Yz(`seek in seekPoints, found index: ${t}, pts: ${a.pts}, pos: ${a.pos+s.firstFramePos}`,B,503),await e.ioReader.seek(a.pos+s.firstFramePos),s.cacheBuffer=null,r}n.Yz("not found any keyframe index, try to seek in bytes",B,509);const c=await(0,g.A)(e,t,i,s.firstFramePos,this.readAVPacket.bind(this),this.syncFrame.bind(this));return c>0&&(s.cacheBuffer=null),c}getAnalyzeStreamsCount(){return 1}}},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){}}},91375:(e,t,i)=>{i.d(t,{x:()=>c});var a=i(9705),r=i(4624),s=i(14769),n=i(13188);const o="src/avformat/formats/flac/iflac.ts";function c(e,t,i=!1){const c=e.getPointer();if(32764!=(32767&e.readU(15)))return!i&&r.z3("invalid sync code",o,57),a.LR;t.isVarSize=e.readU1();const h=e.readU(4),d=e.readU(4);if(t.chMode=e.readU(4),t.chMode<s.jA)t.channels=t.chMode+1,t.chMode=0;else{if(!(t.chMode<s.jA+3))return!i&&r.z3(`invalid channel mode: ${t.chMode}`,o,76),a.LR;t.channels=2,t.chMode-=s.jA-1}const m=e.readU(3);if(3===m)return!i&&r.z3(`invalid sample size code: ${m}`,o,82),a.LR;if(t.bps=s.oe[m],e.readU1())return!i&&r.z3("broken stream, invalid padding",o,88),a.LR;if(t.frameOrSampleNum=function(e){let t=BigInt(Math.floor(e.readU(8))),i=(t&BigInt(128))>>BigInt(1);if((t&BigInt(192))===BigInt(128)||t>=BigInt(254))return-BigInt(1);for(;t&i;){const a=BigInt(Math.floor(e.readU(8)))-BigInt(128);if(a>>BigInt(6))return-BigInt(1);t=(t<<BigInt(6))+a,i<<=BigInt(5)}return t&=(i<<BigInt(1))-BigInt(1),t}(e),t.frameOrSampleNum<0)return!i&&r.z3("sample/frame number invalid",o,95),a.LR;if(0===h)return!i&&r.z3("reserved blocksize code: 0",o,100),a.LR;if(t.blocksize=6===h?e.readU(8)+1:7===h?e.readU(16)+1:s.Xr[h],d<12)t.sampleRate=s.DK[d];else if(12===d)t.sampleRate=1e3*e.readU(8);else if(13===d)t.sampleRate=e.readU(16);else{if(14!==d)return!i&&r.z3(`illegal sample rate code ${d}`,o,126),a.LR;t.sampleRate=10*e.readU(16)}return(0,n.A)(e.getBuffer().subarray(c,e.getPointer()))!==e.readU(8)?(!i&&r.z3("header crc mismatch",o,133),a.LR):0}},38743:(e,t,i)=>{i.d(t,{B:()=>o,h:()=>c});var a=i(134),r=i(77231),s=i(50011);class n{constructor(){(0,a.A)(this,"list",void 0),this.list=[]}read(e,t){for(let i=0;i<t;i++){const t=e.readUint32();this.list.push(e.readString(t))}}write(e){for(let t=0;t<this.list.length;t++){const i=s.encode(this.list[t]);e.writeUint32(i.length),e.writeBuffer(i)}}addComment(e){this.list.push(e)}}class o{constructor(){(0,a.A)(this,"capturePattern",void 0),(0,a.A)(this,"streamStructureVersion",void 0),(0,a.A)(this,"headerTypeFlag",void 0),(0,a.A)(this,"granulePosition",void 0),(0,a.A)(this,"serialNumber",void 0),(0,a.A)(this,"pageSequenceNumber",void 0),(0,a.A)(this,"crcCheckSum",void 0),(0,a.A)(this,"numberPageSegments",void 0),(0,a.A)(this,"segmentTable",void 0),(0,a.A)(this,"payload",void 0),(0,a.A)(this,"pos",void 0),this.reset()}reset(){this.capturePattern="OggS",this.streamStructureVersion=0,this.headerTypeFlag=0,this.granulePosition=r.Dh,this.serialNumber=0,this.pageSequenceNumber=0,this.crcCheckSum=0,this.numberPageSegments=0,this.segmentTable=[],this.pos=BigInt(0)}async read(e){this.pos=e.getPos(),await this.readPageHeader(e);const t=this.segmentTable.reduce(((e,t)=>e+t),0);t&&(this.payload=await e.readBuffer(t))}async readPageHeader(e){if(this.capturePattern=await e.readString(4),this.streamStructureVersion=await e.readUint8(),this.headerTypeFlag=await e.readUint8(),this.granulePosition=await e.readUint64(),this.serialNumber=await e.readUint32(),this.pageSequenceNumber=await e.readUint32(),this.crcCheckSum=await e.readUint32(),this.numberPageSegments=await e.readUint8(),this.numberPageSegments)for(let t=0;t<this.numberPageSegments;t++){const t=await e.readUint8();this.segmentTable.push(t)}}write(e){if(this.pos=e.getPos(),e.writeString(this.capturePattern),e.writeUint8(this.streamStructureVersion),e.writeUint8(this.headerTypeFlag),e.writeUint64(this.granulePosition),e.writeUint32(this.serialNumber),e.writeUint32(this.pageSequenceNumber),e.writeUint32(this.crcCheckSum),this.payload){this.numberPageSegments=Math.floor(this.payload.length/255)+1;const t=this.payload.length%255;e.writeUint8(this.numberPageSegments);for(let t=0;t<this.numberPageSegments-1;t++)e.writeUint8(255);e.writeUint8(t),e.writeBuffer(this.payload)}else e.writeUint8(0)}}class c{constructor(){(0,a.A)(this,"streamIndex",void 0),(0,a.A)(this,"signature",void 0),(0,a.A)(this,"vendorStringLength",void 0),(0,a.A)(this,"vendorString",void 0),(0,a.A)(this,"userCommentListLength",void 0),(0,a.A)(this,"comments",void 0),this.vendorString="v0.5.0-24-g24b7023",this.vendorStringLength=this.vendorString.length,this.userCommentListLength=0,this.comments=new n}read(e){this.vendorStringLength=e.readUint32(),this.vendorString=e.readString(this.vendorStringLength),this.userCommentListLength=e.readUint32(),this.userCommentListLength&&this.comments.read(e,this.userCommentListLength)}write(e){const t=s.encode(this.vendorString);e.writeUint32(t.length),e.writeBuffer(t),e.writeUint32(this.comments.list.length),this.comments.write(e)}addComment(e){this.comments.addComment(e)}setCodec(e){}}},87400:(e,t,i)=>{i.d(t,{GM:()=>c,mS:()=>o,ol:()=>n});var a=i(134),r=i(38743);i(95335),i(34677);const s={album:"album",artist:"artist",description:"description",encoder:"encoder",title:"title",tracknumber:"track",date:"date",genre:"genre",comment:"comment",albumartist:"albumArtist",composer:"composer",performer:"performer",discnumber:"disc",organization:"vendor",copyright:"copyright",license:"license",isrc:"isrc",lyrics:"lyrics",language:"language",label:"vendor",script:"lyrics",encoded_by:"vendor"};function n(e,t){e&&e.forEach((e=>{const i=e.split("=");if(2===i.length){const e=i[0].trim().toLowerCase(),a=i[1].trim();s[e]?t[s[e]]=a:t[e.toLowerCase()]=a}}))}class o{constructor(e="vorbis"){(0,a.A)(this,"streamIndex",void 0),(0,a.A)(this,"packetType",void 0),(0,a.A)(this,"signature",void 0),(0,a.A)(this,"version",void 0),(0,a.A)(this,"channels",void 0),(0,a.A)(this,"sampleRate",void 0),(0,a.A)(this,"bitrateMaximum",void 0),(0,a.A)(this,"bitrateNominal",void 0),(0,a.A)(this,"bitrateMinimum",void 0),(0,a.A)(this,"blocksize0",void 0),(0,a.A)(this,"blocksize1",void 0),(0,a.A)(this,"framingFlag",void 0),this.signature=e,this.version=0,this.channels=1,this.sampleRate=48e3,this.bitrateMaximum=0,this.bitrateNominal=0,this.bitrateMinimum=0,this.blocksize0=2048,this.blocksize1=256}read(e){this.packetType=e.readUint8(),this.signature=e.readString(6),this.version=e.readUint32(),this.channels=e.readUint8(),this.sampleRate=e.readInt32(),this.bitrateMaximum=e.readInt32(),this.bitrateNominal=e.readInt32(),this.bitrateMinimum=e.readInt32();const t=255&e.readUint8();this.blocksize0=Math.pow(2,t>>>4),this.blocksize1=Math.pow(2,15&t),this.framingFlag=e.readUint8()}write(e){e.writeUint8(1),e.writeString(this.signature),e.writeUint32(this.version),e.writeUint8(this.channels),e.writeInt32(this.sampleRate),e.writeInt32(this.bitrateMaximum),e.writeInt32(this.bitrateNominal),e.writeInt32(this.bitrateMinimum),e.writeUint8(Math.log2(this.blocksize0)<<4|Math.log2(this.blocksize1)),e.writeUint8(1)}setCodec(e){this.sampleRate=e.sampleRate,this.channels=e.chLayout.nbChannels}}class c extends r.h{constructor(e="vorbis"){super(),(0,a.A)(this,"packetType",void 0),(0,a.A)(this,"framingFlag",void 0),this.signature=e,this.packetType=1,this.framingFlag=1}read(e){this.packetType=e.readUint8(),this.signature=e.readString(6),super.read(e),"vorbis"===this.signature&&(this.framingFlag=e.readUint8())}write(e){e.writeUint8(this.packetType),e.writeString(this.signature),super.write(e),"vorbis"===this.signature&&e.writeUint8(this.framingFlag)}addComment(e){this.comments.addComment(e)}setCodec(e){}}},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}},52071:(e,t,i)=>{i.d(t,{A:()=>m});var a=i(63939),r=(i(9599),i(77231)),s=i(44328),n=i(2187),o=i(71517),c=i(9705),h=i(4624);const d="src/avformat/function/seekInBytes.ts";async function m(e,t,i,m,f,l){const u=e.ioReader.getPos(),p=await e.ioReader.fileSize();let g=r.Dh,w=i;t.startTime!==r.Dh?w-=t.startTime:w-=t.firstDTS;const x=(0,s.k)(i,t.timeBase,r.i0);if(x<BigInt(1e4))return h.Yz(`seek pts is earlier then 10s, seek to first packet pos(${m}) directly`,d,62),await e.ioReader.seek(m),u;let R=(0,n.d)(e.streams,w,t.timeBase);const B=p-(0,n.d)(e.streams,BigInt(1e4),r.i0),b=(0,n.d)(e.streams,BigInt(1e4),r.i0);if(R>B&&(R=B),R<m)return await e.ioReader.seek(m),u;const S=(0,o._5)();let I=p,k=BigInt(0);for(;;){if(I-k<b){g=k;break}if(await e.ioReader.seek(R),await l(e),8&e.ioReader.flags)break;const t=e.ioReader.getPos();if(!(await f(e,S)>=0)){g=r.Dh;break}{const e=(0,s.Mr)(a.f[17](S+8),S+72,r.i0),i=e-x;if(h.Yz(`try to seek to pos: ${R}, got packet pts: ${a.f[17](S+8)}(${e}ms), diff: ${i}ms`,d,100),i<=BigInt(0)&&-i<BigInt(1e4)){g=t;break}i>BigInt(0)?(I=R,R=k+I>>BigInt(1)):(k=R,R=k+I>>BigInt(1))}if(8&e.ioReader.flags)break}return(0,o.Qe)(S),g!==r.Dh?(h.Yz(`finally seek to pos ${g}`,d,131),await e.ioReader.seek(g),await l(e),u):(await e.ioReader.seek(u),8&e.ioReader.flags?BigInt(c.LT):BigInt(c.E$))}},14769:(e,t,i)=>{i.d(t,{DK:()=>o,XC:()=>h,Xr:()=>c,jA:()=>s,ob:()=>r,oe:()=>n});var a=i(31865);const r=34,s=8,n=[0,8,12,0,16,20,24,32],o=[0,88200,176400,192e3,8e3,16e3,22050,24e3,32e3,44100,48e3,96e3,0,0,0,0],c=[0,192,576,1152,2304,4608,0,0,256,512,1024,2048,4096,8192,16384,32768];function h(e,t){if(!t&&e.sideData[1]&&(t=e.sideData[1]),t&&t.length===r){const{bitsPerRawSample:i,sampleRate:r,channels:s}=function(e){const t=new a.A(e);t.skip(10);const i=t.readUint24();return{sampleRate:i>>4,channels:1+((15&i)>>>1),bitsPerRawSample:1+((1&i)<<4|(240&t.readUint8())>>>4)}}(t);e.codecpar.bitsPerRawSample=i,e.codecpar.sampleRate=r,e.codecpar.chLayout.nbChannels=s}}},13188:(e,t,i)=>{function a(e,t=0){for(let i=0;i<e.length;i++){t^=e[i];for(let e=0;e<8;e++)128&t?t=t<<1^7:t<<=1}return 255&t}i.d(t,{A:()=>a})}}]);
|
|
1
|
+
(self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[453],{18453:(e,t,i)=>{i.r(t),i.d(t,{default:()=>S});var a=i(134),r=i(63939),s=i(50932),n=i(4624),o=i(9705),c=i(85947),h=i(14686),d=i(37837),m=i(71517),f=i(91375),l=i(37246),u=i(92647),p=i(77231),g=i(52071),w=i(72739),x=i(44328),R=i(87400);const B="src/avformat/formats/IFlacFormat.ts",b=1024;class S extends c.A{constructor(){super(),(0,a.A)(this,"type",17),(0,a.A)(this,"context",void 0)}init(e){e.ioReader.setEndian(!0),this.context={streamInfo:{minimumBlockSize:0,maximumBlockSize:0,minimumFrameSize:0,maximumFrameSize:0,sampleRate:0,channels:0,bitPerSample:0,samples:BigInt(0),md5:""},frameInfo:{sampleRate:0,channels:0,bps:0,blocksize:0,chMode:0,frameOrSampleNum:BigInt(0),isVarSize:0},seekPoints:[],cueSheet:{catalogNumber:"",leadInSamples:BigInt(0),compactDisc:!1,tracks:[]},picture:{type:0,mimeType:"",description:"",width:0,height:0,colorDepth:0,indexedColor:0,data:null},cacheBuffer:null,cachePos:BigInt(0),bitReader:new l.A(16),fileSize:BigInt(0),firstFramePos:BigInt(0),isVarSize:-1}}async readHeader(e){if("fLaC"!==await e.ioReader.readString(4))return n.z3("the file format is not flac",B,118),o.LR;this.context.fileSize=await e.ioReader.fileSize();const t=e.createStream();for(t.codecpar.codecType=1,t.codecpar.codecId=86028;;){const i=await e.ioReader.readUint8(),a=await e.ioReader.readUint24(),r=-129&i;if(0===r){t.codecpar.extradata=(0,d.sY)(a),t.codecpar.extradataSize=a,(0,h.lW)(t.codecpar.extradata,a,await e.ioReader.peekBuffer(a)),this.context.streamInfo.minimumBlockSize=await e.ioReader.readUint16(),this.context.streamInfo.maximumBlockSize=await e.ioReader.readUint16(),this.context.streamInfo.minimumFrameSize=await e.ioReader.readUint24(),this.context.streamInfo.maximumFrameSize=await e.ioReader.readUint24();const i=await e.ioReader.readUint24();t.codecpar.sampleRate=i>>4,t.codecpar.chLayout.nbChannels=1+((15&i)>>>1),this.context.streamInfo.sampleRate=t.codecpar.sampleRate,this.context.streamInfo.channels=t.codecpar.chLayout.nbChannels;const r=await e.ioReader.readUint8();t.codecpar.bitsPerRawSample=1+((1&i)<<4|(240&r)>>>4),this.context.streamInfo.bitPerSample=t.codecpar.bitsPerRawSample;const s=await e.ioReader.readUint32(),n=BigInt(Math.floor(15&r))<<BigInt(32)|BigInt(Math.floor(s));this.context.streamInfo.samples=n,t.timeBase.den=t.codecpar.sampleRate,t.timeBase.num=1,t.duration=n,t.startTime=BigInt(0),this.context.streamInfo.md5=await e.ioReader.readString(16)}else if(2===r){const t=e.createStream();t.codecpar.codecType=2,t.codecpar.codecTag=await e.ioReader.readUint32(),t.codecpar.extradata=(0,d.sY)(a-4),t.codecpar.extradataSize=a-4,await e.ioReader.readBuffer(a-4,(0,h.JW)(t.codecpar.extradata,t.codecpar.extradataSize))}else if(3===r)for(let t=0;t<a/18;t++){const t=await e.ioReader.readUint64(),i=await e.ioReader.readUint64(),a=await e.ioReader.readUint16();this.context.seekPoints.push({pts:t,pos:i,samples:a})}else if(4===r){e.ioReader.setEndian(!1);const i=await e.ioReader.readUint32(),a=await e.ioReader.readString(i),r=await e.ioReader.readUint32(),s=[];for(let t=0;t<r;t++){const t=await e.ioReader.readUint32();s.push(await e.ioReader.readString(t))}t.metadata.vendor=a,(0,R.ol)(s,t.metadata),e.ioReader.setEndian(!0)}else if(5===r){this.context.cueSheet.catalogNumber=await e.ioReader.readString(128),this.context.cueSheet.leadInSamples=await e.ioReader.readUint64(),this.context.cueSheet.compactDisc=!!(await e.ioReader.readUint8()>>>7),await e.ioReader.skip(258);const t=await e.ioReader.readUint8();for(let i=0;i<t;i++){const t=await e.ioReader.readUint64(),i=await e.ioReader.readUint8(),a=await e.ioReader.readBuffer(12),r=await e.ioReader.readUint8();await e.ioReader.skip(13);const s=await e.ioReader.readUint8(),n=[];for(let t=0;t<s;t++)n.push({offset:await e.ioReader.readUint64(),point:await e.ioReader.readUint8()}),await e.ioReader.skip(3);this.context.cueSheet.tracks.push({offset:t,number:i,isrc:a,type:r>>>7,preEmphasisFlag:r>>>6&1,points:n})}}else if(6===r){this.context.picture.type=await e.ioReader.readUint32();let t=await e.ioReader.readUint32();this.context.picture.mimeType=await e.ioReader.readString(t),t=await e.ioReader.readUint32(),this.context.picture.description=await e.ioReader.readString(t),this.context.picture.width=await e.ioReader.readUint32(),this.context.picture.height=await e.ioReader.readUint32(),this.context.picture.colorDepth=await e.ioReader.readUint32(),this.context.picture.indexedColor=await e.ioReader.readUint32(),t=await e.ioReader.readUint32(),this.context.picture.data=await e.ioReader.readBuffer(t)}else await e.ioReader.skip(a);if(128&i)break}return this.context.firstFramePos=e.ioReader.getPos(),t.privData=this.context,0}async getNextFrame(e){const t=[];for(;;){if(e.ioReader.getPos()===this.context.fileSize){this.context.cacheBuffer&&(t.push(this.context.cacheBuffer),this.context.cacheBuffer=null);break}this.context.cacheBuffer?this.context.cacheBuffer.length<17&&(this.context.cacheBuffer=(0,u.A)(Uint8Array,[this.context.cacheBuffer,await e.ioReader.readBuffer(Math.min(b,Number(BigInt.asIntN(32,this.context.fileSize-e.ioReader.getPos()))))])):(this.context.cachePos=e.ioReader.getPos(),this.context.cacheBuffer=await e.ioReader.readBuffer(Math.min(b,Number(BigInt.asIntN(32,this.context.fileSize-e.ioReader.getPos())))));let i=t.length?0:2;const a=this.context.isVarSize<0?[248,249]:this.context.isVarSize?[249]:[248],r=this.context.cacheBuffer.length-2;for(;i<r;i++)if(255===this.context.cacheBuffer[i]&&w.zy(a,this.context.cacheBuffer[i+1])){i&&(t.push(this.context.cacheBuffer.subarray(0,i)),this.context.cacheBuffer=this.context.cacheBuffer.subarray(i),this.context.cachePos+=BigInt(Math.floor(i)));break}if(i===r){e.ioReader.getPos()===this.context.fileSize?(t.push(this.context.cacheBuffer),this.context.cachePos+=BigInt(Math.floor(this.context.cacheBuffer.length)),this.context.cacheBuffer=null):(t.push(this.context.cacheBuffer.subarray(0,i)),this.context.cachePos+=BigInt(Math.floor(i)),this.context.cacheBuffer=this.context.cacheBuffer.subarray(i));continue}this.context.cacheBuffer.length<16&&(this.context.cacheBuffer=(0,u.A)(Uint8Array,[this.context.cacheBuffer,await e.ioReader.readBuffer(Math.min(b,Number(BigInt.asIntN(32,this.context.fileSize-e.ioReader.getPos()))))])),this.context.bitReader.reset(),this.context.bitReader.appendBuffer(this.context.cacheBuffer.subarray(0,16));const s={};if(!((0,f.x)(this.context.bitReader,s,!0)<0||s.frameOrSampleNum-this.context.frameInfo.frameOrSampleNum!==BigInt(0|this.context.frameInfo.blocksize)&&s.frameOrSampleNum!==this.context.frameInfo.frameOrSampleNum+BigInt(1)))break;t.push(this.context.cacheBuffer.subarray(0,2)),this.context.cachePos+=BigInt(2),this.context.cacheBuffer=this.context.cacheBuffer.subarray(2)}return 1===t.length?t[0]:(0,u.A)(Uint8Array,t)}async readAVPacket(e,t){const i=e.streams.find((e=>e.codecpar.codecType=1));try{let a=e.ioReader.getPos();if(a===this.context.fileSize)return-1048576;if(this.context.bitReader.reset(),this.context.cacheBuffer?(a=this.context.cachePos,this.context.cacheBuffer.length<16&&(this.context.cacheBuffer=(0,u.A)(Uint8Array,[this.context.cacheBuffer,await e.ioReader.readBuffer(Math.min(b,Number(BigInt.asIntN(32,this.context.fileSize-e.ioReader.getPos()))))])),this.context.bitReader.appendBuffer(this.context.cacheBuffer.subarray(0,16))):this.context.bitReader.appendBuffer(await e.ioReader.peekBuffer(16)),(0,f.x)(this.context.bitReader,this.context.frameInfo)<0)return o.LR;const n=await this.getNextFrame(e),c=(0,d.sY)(n.length);return(0,h.lW)(c,n.length,n),(0,m.NX)(t,c,n.length),s.M[17](t+56,a),s.M[15](t+32,i.index),s.M[15](t+76,i.timeBase.den),s.M[15](t+72,i.timeBase.num),s.M[15](t+36,1|r.f[15](t+36)),s.M[17](t+16,this.context.frameInfo.isVarSize?this.context.frameInfo.frameOrSampleNum:this.context.frameInfo.frameOrSampleNum*BigInt(0|this.context.frameInfo.blocksize)),s.M[17](t+8,this.context.frameInfo.isVarSize?this.context.frameInfo.frameOrSampleNum:this.context.frameInfo.frameOrSampleNum*BigInt(0|this.context.frameInfo.blocksize)),this.context.isVarSize<0&&(this.context.isVarSize=this.context.frameInfo.isVarSize),0}catch(t){return-1048576!==e.ioReader.error?(n.z3(`read packet error, ${t}`,B,416),o.LR):e.ioReader.error}}async syncFrame(e){let t=p.Dh;for(;;)try{const i=await e.ioReader.peekUint16();if((65529===i||65528===i)&&(t=e.ioReader.getPos(),this.context.bitReader.reset(),this.context.bitReader.appendBuffer(await e.ioReader.peekBuffer(16)),!(0,f.x)(this.context.bitReader,{},!0)))break;await e.ioReader.skip(1)}catch(e){break}t!==p.Dh&&await e.ioReader.seek(t)}async seek(e,t,i,a){const r=e.ioReader.getPos(),s=t.privData;if(2&a){const t=await e.ioReader.fileSize();return t<=BigInt(0)?BigInt(o.E$):(i<BigInt(0)?i=BigInt(0):i>t&&(i=t),await e.ioReader.seek(i),4&a||await this.syncFrame(e),r)}if(t&&t.sampleIndexes.length){let a=w.El(t.sampleIndexes,(e=>e.pts>i?-1:1));if(a>0&&(0,x.k)(i-t.sampleIndexes[a-1].pts,t.timeBase,p.i0)<BigInt(5e3))return n.Yz(`seek in sampleIndexes, found index: ${a}, pts: ${t.sampleIndexes[a-1].pts}, pos: ${t.sampleIndexes[a-1].pos}`,B,483),await e.ioReader.seek(t.sampleIndexes[a-1].pos),s.cacheBuffer=null,r}if(s.seekPoints.length){let t=0;for(let e=0;e<s.seekPoints.length;e++){if(s.seekPoints[e].pts===i){t=e;break}if(s.seekPoints[e].pts>i){t=Math.max(e-1,0);break}}const a=s.seekPoints[t];return n.Yz(`seek in seekPoints, found index: ${t}, pts: ${a.pts}, pos: ${a.pos+s.firstFramePos}`,B,503),await e.ioReader.seek(a.pos+s.firstFramePos),s.cacheBuffer=null,r}n.Yz("not found any keyframe index, try to seek in bytes",B,509);const c=await(0,g.A)(e,t,i,s.firstFramePos,this.readAVPacket.bind(this),this.syncFrame.bind(this));return c>0&&(s.cacheBuffer=null),c}getAnalyzeStreamsCount(){return 1}}},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){}}},91375:(e,t,i)=>{i.d(t,{x:()=>c});var a=i(9705),r=i(4624),s=i(14769),n=i(13188);const o="src/avformat/formats/flac/iflac.ts";function c(e,t,i=!1){const c=e.getPointer();if(32764!=(32767&e.readU(15)))return!i&&r.z3("invalid sync code",o,57),a.LR;t.isVarSize=e.readU1();const h=e.readU(4),d=e.readU(4);if(t.chMode=e.readU(4),t.chMode<s.jA)t.channels=t.chMode+1,t.chMode=0;else{if(!(t.chMode<s.jA+3))return!i&&r.z3(`invalid channel mode: ${t.chMode}`,o,76),a.LR;t.channels=2,t.chMode-=s.jA-1}const m=e.readU(3);if(3===m)return!i&&r.z3(`invalid sample size code: ${m}`,o,82),a.LR;if(t.bps=s.oe[m],e.readU1())return!i&&r.z3("broken stream, invalid padding",o,88),a.LR;if(t.frameOrSampleNum=function(e){let t=BigInt(Math.floor(e.readU(8))),i=(t&BigInt(128))>>BigInt(1);if((t&BigInt(192))===BigInt(128)||t>=BigInt(254))return-BigInt(1);for(;t&i;){const a=BigInt(Math.floor(e.readU(8)))-BigInt(128);if(a>>BigInt(6))return-BigInt(1);t=(t<<BigInt(6))+a,i<<=BigInt(5)}return t&=(i<<BigInt(1))-BigInt(1),t}(e),t.frameOrSampleNum<0)return!i&&r.z3("sample/frame number invalid",o,95),a.LR;if(0===h)return!i&&r.z3("reserved blocksize code: 0",o,100),a.LR;if(t.blocksize=6===h?e.readU(8)+1:7===h?e.readU(16)+1:s.Xr[h],d<12)t.sampleRate=s.DK[d];else if(12===d)t.sampleRate=1e3*e.readU(8);else if(13===d)t.sampleRate=e.readU(16);else{if(14!==d)return!i&&r.z3(`illegal sample rate code ${d}`,o,126),a.LR;t.sampleRate=10*e.readU(16)}return(0,n.A)(e.getBuffer().subarray(c,e.getPointer()))!==e.readU(8)?(!i&&r.z3("header crc mismatch",o,133),a.LR):0}},38743:(e,t,i)=>{i.d(t,{B:()=>o,h:()=>c});var a=i(134),r=i(77231),s=i(50011);class n{constructor(){(0,a.A)(this,"list",void 0),this.list=[]}read(e,t){for(let i=0;i<t;i++){const t=e.readUint32();this.list.push(e.readString(t))}}write(e){for(let t=0;t<this.list.length;t++){const i=s.encode(this.list[t]);e.writeUint32(i.length),e.writeBuffer(i)}}addComment(e){this.list.push(e)}}class o{constructor(){(0,a.A)(this,"capturePattern",void 0),(0,a.A)(this,"streamStructureVersion",void 0),(0,a.A)(this,"headerTypeFlag",void 0),(0,a.A)(this,"granulePosition",void 0),(0,a.A)(this,"serialNumber",void 0),(0,a.A)(this,"pageSequenceNumber",void 0),(0,a.A)(this,"crcCheckSum",void 0),(0,a.A)(this,"numberPageSegments",void 0),(0,a.A)(this,"segmentTable",void 0),(0,a.A)(this,"payload",void 0),(0,a.A)(this,"pos",void 0),this.reset()}reset(){this.capturePattern="OggS",this.streamStructureVersion=0,this.headerTypeFlag=0,this.granulePosition=r.Dh,this.serialNumber=0,this.pageSequenceNumber=0,this.crcCheckSum=0,this.numberPageSegments=0,this.segmentTable=[],this.pos=BigInt(0)}async read(e){this.pos=e.getPos(),await this.readPageHeader(e);const t=this.segmentTable.reduce(((e,t)=>e+t),0);t&&(this.payload=await e.readBuffer(t))}async readPageHeader(e){if(this.capturePattern=await e.readString(4),this.streamStructureVersion=await e.readUint8(),this.headerTypeFlag=await e.readUint8(),this.granulePosition=await e.readUint64(),this.serialNumber=await e.readUint32(),this.pageSequenceNumber=await e.readUint32(),this.crcCheckSum=await e.readUint32(),this.numberPageSegments=await e.readUint8(),this.numberPageSegments)for(let t=0;t<this.numberPageSegments;t++){const t=await e.readUint8();this.segmentTable.push(t)}}write(e){if(this.pos=e.getPos(),e.writeString(this.capturePattern),e.writeUint8(this.streamStructureVersion),e.writeUint8(this.headerTypeFlag),e.writeUint64(this.granulePosition),e.writeUint32(this.serialNumber),e.writeUint32(this.pageSequenceNumber),e.writeUint32(this.crcCheckSum),this.payload){this.numberPageSegments=Math.floor(this.payload.length/255)+1;const t=this.payload.length%255;e.writeUint8(this.numberPageSegments);for(let t=0;t<this.numberPageSegments-1;t++)e.writeUint8(255);e.writeUint8(t),e.writeBuffer(this.payload)}else e.writeUint8(0)}}class c{constructor(){(0,a.A)(this,"streamIndex",void 0),(0,a.A)(this,"signature",void 0),(0,a.A)(this,"vendorStringLength",void 0),(0,a.A)(this,"vendorString",void 0),(0,a.A)(this,"userCommentListLength",void 0),(0,a.A)(this,"comments",void 0),this.vendorString="v0.6.1",this.vendorStringLength=this.vendorString.length,this.userCommentListLength=0,this.comments=new n}read(e){this.vendorStringLength=e.readUint32(),this.vendorString=e.readString(this.vendorStringLength),this.userCommentListLength=e.readUint32(),this.userCommentListLength&&this.comments.read(e,this.userCommentListLength)}write(e){const t=s.encode(this.vendorString);e.writeUint32(t.length),e.writeBuffer(t),e.writeUint32(this.comments.list.length),this.comments.write(e)}addComment(e){this.comments.addComment(e)}setCodec(e){}}},87400:(e,t,i)=>{i.d(t,{GM:()=>c,mS:()=>o,ol:()=>n});var a=i(134),r=i(38743);i(95335),i(34677);const s={album:"album",artist:"artist",description:"description",encoder:"encoder",title:"title",tracknumber:"track",date:"date",genre:"genre",comment:"comment",albumartist:"albumArtist",composer:"composer",performer:"performer",discnumber:"disc",organization:"vendor",copyright:"copyright",license:"license",isrc:"isrc",lyrics:"lyrics",language:"language",label:"vendor",script:"lyrics",encoded_by:"vendor"};function n(e,t){e&&e.forEach((e=>{const i=e.split("=");if(2===i.length){const e=i[0].trim().toLowerCase(),a=i[1].trim();s[e]?t[s[e]]=a:t[e.toLowerCase()]=a}}))}class o{constructor(e="vorbis"){(0,a.A)(this,"streamIndex",void 0),(0,a.A)(this,"packetType",void 0),(0,a.A)(this,"signature",void 0),(0,a.A)(this,"version",void 0),(0,a.A)(this,"channels",void 0),(0,a.A)(this,"sampleRate",void 0),(0,a.A)(this,"bitrateMaximum",void 0),(0,a.A)(this,"bitrateNominal",void 0),(0,a.A)(this,"bitrateMinimum",void 0),(0,a.A)(this,"blocksize0",void 0),(0,a.A)(this,"blocksize1",void 0),(0,a.A)(this,"framingFlag",void 0),this.signature=e,this.version=0,this.channels=1,this.sampleRate=48e3,this.bitrateMaximum=0,this.bitrateNominal=0,this.bitrateMinimum=0,this.blocksize0=2048,this.blocksize1=256}read(e){this.packetType=e.readUint8(),this.signature=e.readString(6),this.version=e.readUint32(),this.channels=e.readUint8(),this.sampleRate=e.readInt32(),this.bitrateMaximum=e.readInt32(),this.bitrateNominal=e.readInt32(),this.bitrateMinimum=e.readInt32();const t=255&e.readUint8();this.blocksize0=Math.pow(2,t>>>4),this.blocksize1=Math.pow(2,15&t),this.framingFlag=e.readUint8()}write(e){e.writeUint8(1),e.writeString(this.signature),e.writeUint32(this.version),e.writeUint8(this.channels),e.writeInt32(this.sampleRate),e.writeInt32(this.bitrateMaximum),e.writeInt32(this.bitrateNominal),e.writeInt32(this.bitrateMinimum),e.writeUint8(Math.log2(this.blocksize0)<<4|Math.log2(this.blocksize1)),e.writeUint8(1)}setCodec(e){this.sampleRate=e.sampleRate,this.channels=e.chLayout.nbChannels}}class c extends r.h{constructor(e="vorbis"){super(),(0,a.A)(this,"packetType",void 0),(0,a.A)(this,"framingFlag",void 0),this.signature=e,this.packetType=1,this.framingFlag=1}read(e){this.packetType=e.readUint8(),this.signature=e.readString(6),super.read(e),"vorbis"===this.signature&&(this.framingFlag=e.readUint8())}write(e){e.writeUint8(this.packetType),e.writeString(this.signature),super.write(e),"vorbis"===this.signature&&e.writeUint8(this.framingFlag)}addComment(e){this.comments.addComment(e)}setCodec(e){}}},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}},52071:(e,t,i)=>{i.d(t,{A:()=>m});var a=i(63939),r=(i(9599),i(77231)),s=i(44328),n=i(2187),o=i(71517),c=i(9705),h=i(4624);const d="src/avformat/function/seekInBytes.ts";async function m(e,t,i,m,f,l){const u=e.ioReader.getPos(),p=await e.ioReader.fileSize();let g=r.Dh,w=i;t.startTime!==r.Dh?w-=t.startTime:w-=t.firstDTS;const x=(0,s.k)(i,t.timeBase,r.i0);if(x<BigInt(1e4))return h.Yz(`seek pts is earlier then 10s, seek to first packet pos(${m}) directly`,d,62),await e.ioReader.seek(m),u;let R=(0,n.d)(e.streams,w,t.timeBase);const B=p-(0,n.d)(e.streams,BigInt(1e4),r.i0),b=(0,n.d)(e.streams,BigInt(1e4),r.i0);if(R>B&&(R=B),R<m)return await e.ioReader.seek(m),u;const S=(0,o._5)();let I=p,k=BigInt(0);for(;;){if(I-k<b){g=k;break}if(await e.ioReader.seek(R),await l(e),8&e.ioReader.flags)break;const t=e.ioReader.getPos();if(!(await f(e,S)>=0)){g=r.Dh;break}{const e=(0,s.Mr)(a.f[17](S+8),S+72,r.i0),i=e-x;if(h.Yz(`try to seek to pos: ${R}, got packet pts: ${a.f[17](S+8)}(${e}ms), diff: ${i}ms`,d,100),i<=BigInt(0)&&-i<BigInt(1e4)){g=t;break}i>BigInt(0)?(I=R,R=k+I>>BigInt(1)):(k=R,R=k+I>>BigInt(1))}if(8&e.ioReader.flags)break}return(0,o.Qe)(S),g!==r.Dh?(h.Yz(`finally seek to pos ${g}`,d,131),await e.ioReader.seek(g),await l(e),u):(await e.ioReader.seek(u),8&e.ioReader.flags?BigInt(c.LT):BigInt(c.E$))}},14769:(e,t,i)=>{i.d(t,{DK:()=>o,XC:()=>h,Xr:()=>c,jA:()=>s,ob:()=>r,oe:()=>n});var a=i(31865);const r=34,s=8,n=[0,8,12,0,16,20,24,32],o=[0,88200,176400,192e3,8e3,16e3,22050,24e3,32e3,44100,48e3,96e3,0,0,0,0],c=[0,192,576,1152,2304,4608,0,0,256,512,1024,2048,4096,8192,16384,32768];function h(e,t){if(!t&&e.sideData[1]&&(t=e.sideData[1]),t&&t.length===r){const{bitsPerRawSample:i,sampleRate:r,channels:s}=function(e){const t=new a.A(e);t.skip(10);const i=t.readUint24();return{sampleRate:i>>4,channels:1+((15&i)>>>1),bitsPerRawSample:1+((1&i)<<4|(240&t.readUint8())>>>4)}}(t);e.codecpar.bitsPerRawSample=i,e.codecpar.sampleRate=r,e.codecpar.chLayout.nbChannels=s}}},13188:(e,t,i)=>{function a(e,t=0){for(let i=0;i<e.length;i++){t^=e[i];for(let e=0;e<8;e++)128&t?t=t<<1^7:t<<=1}return 255&t}i.d(t,{A:()=>a})}}]);
|
package/dist/esm/791.avplayer.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[791],{85947:(e,a,t)=>{t.d(a,{A:()=>r});var s=t(134);class r{constructor(){(0,s.A)(this,"type",-1),(0,s.A)(this,"onStreamAdd",void 0)}async destroy(e){}}},3791:(e,a,t)=>{t.r(a),t.d(a,{default:()=>l});var s=t(134),r=t(61499),i=t(50932),c=t(4624),n=t(9705),A=t(85947),d=t(14686),o=t(37837),u=t(71517),M=t(35531),f=t(95644);const h="src/avformat/formats/IWavFormat.ts";class l extends A.A{constructor(){super(),(0,s.A)(this,"type",16),(0,s.A)(this,"dataSize",void 0),(0,s.A)(this,"sampleCount",void 0),(0,s.A)(this,"pcmStartPos",void 0),(0,s.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 s=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,M.y)(e.ioReader,s.codecpar[r.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(s.codecpar.chLayout.nbChannels*(0,f.MZ)(s.codecpar.codecId))),s.timeBase.den=s.codecpar.sampleRate,s.timeBase.num=1,this.sampleCount&&(s.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 s=1024*t.codecpar.chLayout.nbChannels*(0,f.MZ)(t.codecpar.codecId)>>>3,r=(0,o.sY)(s);return(0,u.NX)(a,r,s),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(s,(0,d.JW)(r,s)),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,s){const r=e.ioReader.getPos();if(2&s){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&s||(this.currentPts=(t-this.pcmStartPos<<BigInt(3))/BigInt(a.codecpar.chLayout.nbChannels*(0,f.MZ)(a.codecpar.codecId))),r)}{const s=this.pcmStartPos+(t*BigInt(a.codecpar.chLayout.nbChannels*(0,f.MZ)(a.codecpar.codecId))>>BigInt(3));return await e.ioReader.seek(s),this.currentPts=t,r}}getAnalyzeStreamsCount(){return 1}}},35531:(e,a,t)=>{t.d(a,{y:()=>f});var s=t(63939),r=t(50932),i=t(4624),c=t(9705),n=t(53260),A=t(95644),d=t(37837),o=t(14686),u=t(39381);const M="src/avformat/formats/riff/iriff.ts";async function f(e,a,t){if(t<14)return i.z3("wav format size < 14",M,36),c.LR;r.M[15](a,1);const f=await e.readUint16();let h=await e.readUint16();const l=await e.readUint32();let V=8*await e.readUint32();const R=await e.readUint16();if(r.M[15](a+136,l),r.M[15](a+140,R),14===t?r.M[15](a+40,8):r.M[15](a+40,await e.readUint16()),65534===f?r.M[8](a+8,0):(r.M[8](a+8,f),r.M[15](a+4,function(e,a){let t=n.gi[e];return t?(65541===t?t=(0,A.uU)(a,!1,!1,-2):65557===t&&(t=(0,A.uU)(a,!0,!1,0)),69633===t&&8===a&&(t=69676),t):0}(f,s.f[15](a+40)))),t>=18&&357!==f){let i=await e.readUint16();t-=18,i=Math.min(t,i),i>=22&&65534===f&&(await e.skip(22),i-=22,t-=22),i>0&&(r.M[20](a+12,(0,d.sY)(i)),r.M[15](a+16,i),await e.readBuffer(i,(0,o.JW)(s.f[20](a+12),i)),t-=i),t>0&&await e.skip(t)}else if(357===f&&t>=32){t-=4,r.M[20](a+12,(0,d.sY)(t)),r.M[15](a+16,t),await e.readBuffer(t,(0,o.JW)(s.f[20](a+12),t));const i=u.E3(s.f[20](a+12)+4);if(r.M[15](a+136,u.Y0(s.f[20](a+12)+12)),h=0,V=0,t<8+20*i)return c.LR;for(let e=0;e<i;e++)h+=s.f[2](s.f[20](a+12)+(8+20*e+17))}return r.M[17](a+32,BigInt(V)),s.f[15](a+136)<0?(i.z3(`Invalid sample rate: ${s.f[15](a+136)}`,M,116),c.LR):(86065===s.f[15](a+4)&&(h=0,r.M[15](a+136,0)),69643==s.f[15](a+4)&&s.f[15](a+136)&&r.M[15](a+40,Number(BigInt.asIntN(32,s.f[17](a+32)))/s.f[15](a+136)),h!=s.f[15](a+116)&&(r.M[15](a+112,0),r.M[15](a+116,h)),0)}},53260:(e,a,t)=>{t.d(a,{gi:()=>r,nz:()=>i});var s=t(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,80:86016,85:86017,87:73728,88:73729,97:69635,98:69634,100:69643,105:69633,117:86079,131:86069,255:86018,273:86068,304:86057,309:86106,352:86023,353:86024,354:86053,355:86054,357:86095,358:86096,384:86116,512:69644,533:86022,534:86022,624:86047,654:86111,655:69660,848:86114,1025:86043,1026:86074,1280:86081,1281:86081,5376:86046,5377:86037,5632:86018,5634:86065,8192:86019,8193:86020,8264:86085,8738:86069,27765:65542,28781:86018,16707:86018,16768:86116,22858:81922,29338:86069,33152:86116,41216:86068,41222:86018,41225:86051,61868:86028,65534:86112,21318:69645,22127:86021},i={[(0,s.A)("H261")]:3,[(0,s.A)("H263")]:4,[(0,s.A)("X263")]:4,[(0,s.A)("T263")]:4,[(0,s.A)("L263")]:4,[(0,s.A)("VX1K")]:4,[(0,s.A)("ZyGo")]:4,[(0,s.A)("M263")]:4,[(0,s.A)("lsvm")]:4,[(0,s.A)("I263")]:20,[(0,s.A)("U263")]:4,[(0,s.A)("VSM4")]:4,[(0,s.A)("H264")]:27,[(0,s.A)("h264")]:27,[(0,s.A)("X264")]:27,[(0,s.A)("x264")]:27,[(0,s.A)("avc1")]:27,[(0,s.A)("DAVC")]:27,[(0,s.A)("SMV2")]:27,[(0,s.A)("VSSH")]:27,[(0,s.A)("Q264")]:27,[(0,s.A)("V264")]:27,[(0,s.A)("GAVC")]:27,[(0,s.A)("UMSV")]:27,[(0,s.A)("tshd")]:27,[(0,s.A)("INMC")]:27,[(0,s.A)("FMP4")]:12,[(0,s.A)("DIVX")]:12,[(0,s.A)("DX50")]:12,[(0,s.A)("XVID")]:12,[(0,s.A)("MP4S")]:12,[(0,s.A)("M4S2")]:12,[(0,s.A)("DIVX")]:12,4:12,[(0,s.A)("ZMP4")]:12,[(0,s.A)("DIV1")]:12,[(0,s.A)("BLZ0")]:12,[(0,s.A)("mp4v")]:12,[(0,s.A)("UMP4")]:12,[(0,s.A)("WV1F")]:12,[(0,s.A)("SEDG")]:12,[(0,s.A)("RMP4")]:12,[(0,s.A)("3IV2")]:12,[(0,s.A)("WAWV")]:12,[(0,s.A)("FFDS")]:12,[(0,s.A)("FVFW")]:12,[(0,s.A)("DCOD")]:12,[(0,s.A)("MVXM")]:12,[(0,s.A)("PM4V")]:12,[(0,s.A)("SMP4")]:12,[(0,s.A)("DXGM")]:12,[(0,s.A)("VIDM")]:12,[(0,s.A)("M4T3")]:12,[(0,s.A)("GEOX")]:12,[(0,s.A)("G264")]:12,[(0,s.A)("HDX4")]:12,[(0,s.A)("DM4V")]:12,[(0,s.A)("DMK2")]:12,[(0,s.A)("DYM4")]:12,[(0,s.A)("DIGI")]:12,[(0,s.A)("EPHV")]:12,[(0,s.A)("EM4A")]:12,[(0,s.A)("M4CC")]:12,[(0,s.A)("SN40")]:12,[(0,s.A)("VSPX")]:12,[(0,s.A)("ULDX")]:12,[(0,s.A)("GEOV")]:12,[(0,s.A)("SIPP")]:12,[(0,s.A)("SM4V")]:12,[(0,s.A)("XVIX")]:12,[(0,s.A)("DreX")]:12,[(0,s.A)("QMP4")]:12,[(0,s.A)("PLV1")]:12,[(0,s.A)("GLV4")]:12,[(0,s.A)("GMP4")]:12,[(0,s.A)("MNM4")]:12,[(0,s.A)("GTM4")]:12,[(0,s.A)("MPG4")]:14,[(0,s.A)("MP41")]:14,[(0,s.A)("MP42")]:15,[(0,s.A)("DIV2")]:15,[(0,s.A)("MP43")]:16,[(0,s.A)("DIV3")]:16,[(0,s.A)("MPG3")]:16,[(0,s.A)("DIV5")]:16,[(0,s.A)("DIV6")]:16,[(0,s.A)("DIV4")]:16,[(0,s.A)("DVX3")]:16,[(0,s.A)("AP41")]:16,[(0,s.A)("COL1")]:16,[(0,s.A)("COL0")]:16,[(0,s.A)("WMV1")]:17,[(0,s.A)("WMV2")]:18,[(0,s.A)("GXVE")]:18,[(0,s.A)("dvsd")]:24,[(0,s.A)("dvhd")]:24,[(0,s.A)("dvh1")]:24,[(0,s.A)("dvsl")]:24,[(0,s.A)("dv25")]:24,[(0,s.A)("dv50")]:24,[(0,s.A)("cdvc")]:24,[(0,s.A)("CDVH")]:24,[(0,s.A)("CDV5")]:24,[(0,s.A)("dvc ")]:24,[(0,s.A)("dvcs")]:24,[(0,s.A)("dvh1")]:24,[(0,s.A)("dvis")]:24,[(0,s.A)("pdvc")]:24,[(0,s.A)("SL25")]:24,[(0,s.A)("SLDV")]:24,[(0,s.A)("AVd1")]:24,[(0,s.A)("mpg1")]:2,[(0,s.A)("mpg2")]:2,[(0,s.A)("MPEG")]:2,[(0,s.A)("PIM1")]:2,[(0,s.A)("PIM2")]:2,[(0,s.A)("VCR2")]:2,268435457:2,268435458:2,268435460:2,[(0,s.A)("DVR ")]:2,[(0,s.A)("MMES")]:2,[(0,s.A)("LMP2")]:2,[(0,s.A)("slif")]:2,[(0,s.A)("EM2V")]:2,[(0,s.A)("M701")]:2,[(0,s.A)("M702")]:2,[(0,s.A)("M703")]:2,[(0,s.A)("M704")]:2,[(0,s.A)("M705")]:2,[(0,s.A)("mpgv")]:2,[(0,s.A)("BW10")]:2,[(0,s.A)("XMPG")]:2,[(0,s.A)("RV40")]:69,[(0,s.A)("AV01")]:225,[(0,s.A)("VP80")]:139,[(0,s.A)("VP90")]:167,[(0,s.A)("HEVC")]:173,[(0,s.A)("H265")]:173}},79682:(e,a,t)=>{t.d(a,{A:()=>i});var s=t(4624);const r="src/avformat/function/mktagle.ts";function i(e){4!==e.length&&s.R8(`tag length is not 4, tag: ${e}`,r,30);let a=0;for(let t=3;t>=0;t--)a=a<<8|e.charCodeAt(t);return a}},95644:(e,a,t)=>{function s(e,a,t,s){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,s&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 r(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:()=>r,uU:()=>s})}}]);
|
|
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})}}]);
|
package/dist/esm/855.avplayer.js
CHANGED
|
@@ -1 +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),g=a(37837),m=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)!==l.Dh?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 m=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),m){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,g.Eb)(r.f[20](this.inCodecpar+12)),i.M[20](this.inCodecpar+12,(0,g.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,m.Up)(e);const t=this.caches.shift(),a=(0,g.sY)(t.buffer.length);if((0,d.lW)(a,t.buffer.length,t.buffer),(0,m.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,g.sY)(t.extradata.length);(0,d.lW)(a,t.extradata.length,t.extradata),(0,m.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),g=a(92647),m=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)!==h.Dh?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;){if(t>s.length-10)return this.cache=s.subarray(t),this.lastDts=a,0;const c=u.R(s.subarray(t));if(m.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 g=(0,f.k)(BigInt(1536/c.sampleRate*h.SF),h.KR,this.inTimeBase);l.duration=Number(g),this.caches.push(l),t+=p,a+=g,!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),g=a(92647),m=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)!==h.Dh?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;){if(t>s.length-6)return this.cache=s.subarray(t),this.lastDts=a,0;const c=u.R(s.subarray(t));if(m.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 g=(0,f.k)(BigInt(Math.floor(c.sampleBlock*u.u/c.sampleRate*h.SF)),h.KR,this.inTimeBase);l.duration=Number(g),this.caches.push(l),t+=p,a+=g,!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),g=a(64093),m=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)!==h.Dh?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;){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,m={dts:a,buffer:null,extradata:null,duration:h.N_},x=g.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(m.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);m.duration=Number(y),this.caches.push(m),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),g=a(77231),m=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),B=a(87518),w=a(43290),v=a(78887),U=a(37837),P=a(14686),C=a(10662),D=a(92647),L=a(60264),z=a(56397),E=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)),27!==c.codecpar.codecId&&173!==c.codecpar.codecId&&196!==c.codecpar.codecId||(c.codecpar.bitFormat=2),86017===c.codecpar.codecId?o.filter=new z.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,388),h.LR;if(1&e.ioReader.flags){const t=e.ioReader.getPos(),a=500000n;let s=await e.ioReader.fileSize()-a;s<t&&(s=t),await e.ioReader.seek(s);try{for(this.context.pes.pts=g.Dh;;)await this.readPES(e),(0,f.A)(this.context.pes),this.context.pes.pts!==g.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===g.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===g.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(s.bitrate))}else if(86020===t.codecpar.codecId&&t.codecpar.sampleRate===g.N_){const a=(0,u.iI)(e),s=w.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,U.sY)(c.f[25](a+4)),(0,P.Mr)(t.codecpar.extradata,c.f[20](a),c.f[25](a+4)),t.codecpar.extradataSize=0|c.f[25](a+4),(0,u.Is)(e,1),86018===t.codecpar.codecId?R.XC(t,(0,P.JW)(t.codecpar.extradata,t.codecpar.extradataSize)):86076===t.codecpar.codecId&&S.XC(t,(0,P.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===g.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,U.sY)(r.length);if((0,P.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,527),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 if(2===s.codecpar.codecId)v.K(a)&&o.M[15](a+36,1|c.f[15](a+36));else if(27===s.codecpar.codecId){if(!s.codecpar.extradata){const e=I.sL((0,u.iI)(a));e&&(s.codecpar.extradata=(0,U.sY)(e.length),(0,P.lW)(s.codecpar.extradata,e.length,e),s.codecpar.extradataSize=e.length,I.XC(s,e))}I.KD(a)&&o.M[15](a+36,1|c.f[15](a+36))}else if(173===s.codecpar.codecId){if(!s.codecpar.extradata){const e=k.sL((0,u.iI)(a));e&&(s.codecpar.extradata=(0,U.sY)(e.length),(0,P.lW)(s.codecpar.extradata,e.length,e),s.codecpar.extradataSize=e.length,k.XC(s,e))}k.KD(a)&&o.M[15](a+36,1|c.f[15](a+36))}else if(196===s.codecpar.codecId){if(!s.codecpar.extradata){const e=M.sL((0,u.iI)(a));e&&(s.codecpar.extradata=(0,U.sY)(e.length),(0,P.lW)(s.codecpar.extradata,e.length,e),s.codecpar.extradataSize=e.length,M.XC(s,e))}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 E.Vz;E.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=E.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=B.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=w.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!==g.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!==g.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===g.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,1030),h.LR):(this.context.ioEnded=!0,this.readAVPacket(e,t))}}async syncPSPacket(e){let t=g.Dh;try{for(this.context.pes.pts=g.Dh;this.context.pes.pts===g.Dh;)await this.readPES(e),(0,f.A)(this.context.pes),t=this.context.pes.pos}catch(e){t=g.Dh}t!==g.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,g.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,1114),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,1121);let s=await(0,m.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 i.LR;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 r.z3("Malformed PES: PES_packet_length < 3 + PES_header_data_length",n,133),i.LR;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:()=>f});var s=a(63939),r=(a(9599),a(77231)),i=a(44328),n=a(2187),c=a(71517),o=a(9705),d=a(4624);const h="src/avformat/function/seekInBytes.ts";async function f(e,t,a,f,l,p){const u=e.ioReader.getPos(),g=await e.ioReader.fileSize();let m=r.Dh,x=a;t.startTime!==r.Dh?x-=t.startTime:x-=t.firstDTS;const b=(0,i.k)(a,t.timeBase,r.i0);if(b<BigInt(1e4))return d.Yz(`seek pts is earlier then 10s, seek to first packet pos(${f}) directly`,h,62),await e.ioReader.seek(f),u;let y=(0,n.d)(e.streams,x,t.timeBase);const A=g-(0,n.d)(e.streams,BigInt(1e4),r.i0),I=(0,n.d)(e.streams,BigInt(1e4),r.i0);if(y>A&&(y=A),y<f)return await e.ioReader.seek(f),u;const k=(0,c._5)();let M=g,R=BigInt(0);for(;;){if(M-R<I){m=R;break}if(await e.ioReader.seek(y),await p(e),8&e.ioReader.flags)break;const t=e.ioReader.getPos();if(!(await l(e,k)>=0)){m=r.Dh;break}{const e=(0,i.Mr)(s.f[17](k+8),k+72,r.i0),a=e-b;if(d.Yz(`try to seek to pos: ${y}, got packet pts: ${s.f[17](k+8)}(${e}ms), diff: ${a}ms`,h,100),a<=BigInt(0)&&-a<BigInt(1e4)){m=t;break}a>BigInt(0)?(M=y,y=R+M>>BigInt(1)):(R=y,y=R+M>>BigInt(1))}if(8&e.ioReader.flags)break}return(0,c.Qe)(k),m!==r.Dh?(d.Yz(`finally seek to pos ${m}`,h,131),await e.ioReader.seek(m),await p(e),u):(await e.ioReader.seek(u),8&e.ioReader.flags?BigInt(o.LT):BigInt(o.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_;return e.length>=2&&(t=e[0]>>3&31,a=c[(7&e[0])<<1|e[1]>>7],r=o[e[1]>>3&15]),{profile:t,sampleRate:a,channels:r}}(t);e.codecpar.profile=a,e.codecpar.sampleRate=r,e.codecpar.chLayout.nbChannels=i,e.codecpar.frameSize=5===a?2048:1024,e.codecpar.format=8}}function h(e){const t=n[e.sampleRate],a=e.chLayout.nbChannels,r=e.profile===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:()=>g,hG:()=>m,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 g(e,t){switch(e){case 0:return n[t];case 2:return i[t];case 3:return r[t]}return s.N_}function m(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=g(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}}}]);
|
|
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),g=a(37837),m=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)!==l.Dh?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 m=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),m){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,g.Eb)(r.f[20](this.inCodecpar+12)),i.M[20](this.inCodecpar+12,(0,g.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,m.Up)(e);const t=this.caches.shift(),a=(0,g.sY)(t.buffer.length);if((0,d.lW)(a,t.buffer.length,t.buffer),(0,m.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,g.sY)(t.extradata.length);(0,d.lW)(a,t.extradata.length,t.extradata),(0,m.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),g=a(92647),m=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)!==h.Dh?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;){if(t>s.length-10)return this.cache=s.subarray(t),this.lastDts=a,0;const c=u.R(s.subarray(t));if(m.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 g=(0,f.k)(BigInt(1536/c.sampleRate*h.SF),h.KR,this.inTimeBase);l.duration=Number(g),this.caches.push(l),t+=p,a+=g,!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),g=a(92647),m=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)!==h.Dh?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;){if(t>s.length-6)return this.cache=s.subarray(t),this.lastDts=a,0;const c=u.R(s.subarray(t));if(m.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 g=(0,f.k)(BigInt(Math.floor(c.sampleBlock*u.u/c.sampleRate*h.SF)),h.KR,this.inTimeBase);l.duration=Number(g),this.caches.push(l),t+=p,a+=g,!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),g=a(64093),m=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)!==h.Dh?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;){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,m={dts:a,buffer:null,extradata:null,duration:h.N_},x=g.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(m.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);m.duration=Number(y),this.caches.push(m),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),g=a(77231),m=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),B=a(87518),w=a(43290),v=a(78887),U=a(37837),P=a(14686),C=a(10662),D=a(92647),L=a(60264),z=a(56397),E=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)),27!==c.codecpar.codecId&&173!==c.codecpar.codecId&&196!==c.codecpar.codecId||(c.codecpar.bitFormat=2),86017===c.codecpar.codecId?o.filter=new z.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,388),h.LR;if(1&e.ioReader.flags){const t=e.ioReader.getPos(),a=BigInt(5e5);let s=await e.ioReader.fileSize()-a;s<t&&(s=t),await e.ioReader.seek(s);try{for(this.context.pes.pts=g.Dh;;)await this.readPES(e),(0,f.A)(this.context.pes),this.context.pes.pts!==g.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===g.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===g.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(s.bitrate))}else if(86020===t.codecpar.codecId&&t.codecpar.sampleRate===g.N_){const a=(0,u.iI)(e),s=w.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,U.sY)(c.f[25](a+4)),(0,P.Mr)(t.codecpar.extradata,c.f[20](a),c.f[25](a+4)),t.codecpar.extradataSize=0|c.f[25](a+4),(0,u.Is)(e,1),86018===t.codecpar.codecId?R.XC(t,(0,P.JW)(t.codecpar.extradata,t.codecpar.extradataSize)):86076===t.codecpar.codecId&&S.XC(t,(0,P.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===g.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,U.sY)(r.length);if((0,P.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,527),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 if(2===s.codecpar.codecId)v.K(a)&&o.M[15](a+36,1|c.f[15](a+36));else if(27===s.codecpar.codecId){if(!s.codecpar.extradata){const e=I.sL((0,u.iI)(a));e&&(s.codecpar.extradata=(0,U.sY)(e.length),(0,P.lW)(s.codecpar.extradata,e.length,e),s.codecpar.extradataSize=e.length,I.XC(s,e))}I.KD(a)&&o.M[15](a+36,1|c.f[15](a+36))}else if(173===s.codecpar.codecId){if(!s.codecpar.extradata){const e=k.sL((0,u.iI)(a));e&&(s.codecpar.extradata=(0,U.sY)(e.length),(0,P.lW)(s.codecpar.extradata,e.length,e),s.codecpar.extradataSize=e.length,k.XC(s,e))}k.KD(a)&&o.M[15](a+36,1|c.f[15](a+36))}else if(196===s.codecpar.codecId){if(!s.codecpar.extradata){const e=M.sL((0,u.iI)(a));e&&(s.codecpar.extradata=(0,U.sY)(e.length),(0,P.lW)(s.codecpar.extradata,e.length,e),s.codecpar.extradataSize=e.length,M.XC(s,e))}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 E.Vz;E.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=E.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=B.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=w.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!==g.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!==g.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===g.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,1030),h.LR):(this.context.ioEnded=!0,this.readAVPacket(e,t))}}async syncPSPacket(e){let t=g.Dh;try{for(this.context.pes.pts=g.Dh;this.context.pes.pts===g.Dh;)await this.readPES(e),(0,f.A)(this.context.pes),t=this.context.pes.pos}catch(e){t=g.Dh}t!==g.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,g.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,1114),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,1121);let s=await(0,m.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 i.LR;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 r.z3("Malformed PES: PES_packet_length < 3 + PES_header_data_length",n,133),i.LR;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:()=>f});var s=a(63939),r=(a(9599),a(77231)),i=a(44328),n=a(2187),c=a(71517),o=a(9705),d=a(4624);const h="src/avformat/function/seekInBytes.ts";async function f(e,t,a,f,l,p){const u=e.ioReader.getPos(),g=await e.ioReader.fileSize();let m=r.Dh,x=a;t.startTime!==r.Dh?x-=t.startTime:x-=t.firstDTS;const b=(0,i.k)(a,t.timeBase,r.i0);if(b<BigInt(1e4))return d.Yz(`seek pts is earlier then 10s, seek to first packet pos(${f}) directly`,h,62),await e.ioReader.seek(f),u;let y=(0,n.d)(e.streams,x,t.timeBase);const A=g-(0,n.d)(e.streams,BigInt(1e4),r.i0),I=(0,n.d)(e.streams,BigInt(1e4),r.i0);if(y>A&&(y=A),y<f)return await e.ioReader.seek(f),u;const k=(0,c._5)();let M=g,R=BigInt(0);for(;;){if(M-R<I){m=R;break}if(await e.ioReader.seek(y),await p(e),8&e.ioReader.flags)break;const t=e.ioReader.getPos();if(!(await l(e,k)>=0)){m=r.Dh;break}{const e=(0,i.Mr)(s.f[17](k+8),k+72,r.i0),a=e-b;if(d.Yz(`try to seek to pos: ${y}, got packet pts: ${s.f[17](k+8)}(${e}ms), diff: ${a}ms`,h,100),a<=BigInt(0)&&-a<BigInt(1e4)){m=t;break}a>BigInt(0)?(M=y,y=R+M>>BigInt(1)):(R=y,y=R+M>>BigInt(1))}if(8&e.ioReader.flags)break}return(0,c.Qe)(k),m!==r.Dh?(d.Yz(`finally seek to pos ${m}`,h,131),await e.ioReader.seek(m),await p(e),u):(await e.ioReader.seek(u),8&e.ioReader.flags?BigInt(o.LT):BigInt(o.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_;return e.length>=2&&(t=e[0]>>3&31,a=c[(7&e[0])<<1|e[1]>>7],r=o[e[1]>>3&15]),{profile:t,sampleRate:a,channels:r}}(t);e.codecpar.profile=a,e.codecpar.sampleRate=r,e.codecpar.chLayout.nbChannels=i,e.codecpar.frameSize=5===a?2048:1024,e.codecpar.format=8}}function h(e){const t=n[e.sampleRate],a=e.chLayout.nbChannels,r=e.profile===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:()=>g,hG:()=>m,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 g(e,t){switch(e){case 0:return n[t];case 2:return i[t];case 3:return r[t]}return s.N_}function m(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=g(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}}}]);
|
package/dist/esm/904.avplayer.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[904],{85947:(t,e,i)=>{i.d(e,{A:()=>r});var s=i(134);class r{constructor(){(0,s.A)(this,"type",-1),(0,s.A)(this,"onStreamAdd",void 0)}async destroy(t){}}},38743:(t,e,i)=>{i.d(e,{B:()=>o,h:()=>h});var s=i(134),r=i(77231),a=i(50011);class n{constructor(){(0,s.A)(this,"list",void 0),this.list=[]}read(t,e){for(let i=0;i<e;i++){const e=t.readUint32();this.list.push(t.readString(e))}}write(t){for(let e=0;e<this.list.length;e++){const i=a.encode(this.list[e]);t.writeUint32(i.length),t.writeBuffer(i)}}addComment(t){this.list.push(t)}}class o{constructor(){(0,s.A)(this,"capturePattern",void 0),(0,s.A)(this,"streamStructureVersion",void 0),(0,s.A)(this,"headerTypeFlag",void 0),(0,s.A)(this,"granulePosition",void 0),(0,s.A)(this,"serialNumber",void 0),(0,s.A)(this,"pageSequenceNumber",void 0),(0,s.A)(this,"crcCheckSum",void 0),(0,s.A)(this,"numberPageSegments",void 0),(0,s.A)(this,"segmentTable",void 0),(0,s.A)(this,"payload",void 0),(0,s.A)(this,"pos",void 0),this.reset()}reset(){this.capturePattern="OggS",this.streamStructureVersion=0,this.headerTypeFlag=0,this.granulePosition=r.Dh,this.serialNumber=0,this.pageSequenceNumber=0,this.crcCheckSum=0,this.numberPageSegments=0,this.segmentTable=[],this.pos=BigInt(0)}async read(t){this.pos=t.getPos(),await this.readPageHeader(t);const e=this.segmentTable.reduce(((t,e)=>t+e),0);e&&(this.payload=await t.readBuffer(e))}async readPageHeader(t){if(this.capturePattern=await t.readString(4),this.streamStructureVersion=await t.readUint8(),this.headerTypeFlag=await t.readUint8(),this.granulePosition=await t.readUint64(),this.serialNumber=await t.readUint32(),this.pageSequenceNumber=await t.readUint32(),this.crcCheckSum=await t.readUint32(),this.numberPageSegments=await t.readUint8(),this.numberPageSegments)for(let e=0;e<this.numberPageSegments;e++){const e=await t.readUint8();this.segmentTable.push(e)}}write(t){if(this.pos=t.getPos(),t.writeString(this.capturePattern),t.writeUint8(this.streamStructureVersion),t.writeUint8(this.headerTypeFlag),t.writeUint64(this.granulePosition),t.writeUint32(this.serialNumber),t.writeUint32(this.pageSequenceNumber),t.writeUint32(this.crcCheckSum),this.payload){this.numberPageSegments=Math.floor(this.payload.length/255)+1;const e=this.payload.length%255;t.writeUint8(this.numberPageSegments);for(let e=0;e<this.numberPageSegments-1;e++)t.writeUint8(255);t.writeUint8(e),t.writeBuffer(this.payload)}else t.writeUint8(0)}}class h{constructor(){(0,s.A)(this,"streamIndex",void 0),(0,s.A)(this,"signature",void 0),(0,s.A)(this,"vendorStringLength",void 0),(0,s.A)(this,"vendorString",void 0),(0,s.A)(this,"userCommentListLength",void 0),(0,s.A)(this,"comments",void 0),this.vendorString="v0.
|
|
1
|
+
(self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[904],{85947:(t,e,i)=>{i.d(e,{A:()=>r});var s=i(134);class r{constructor(){(0,s.A)(this,"type",-1),(0,s.A)(this,"onStreamAdd",void 0)}async destroy(t){}}},38743:(t,e,i)=>{i.d(e,{B:()=>o,h:()=>h});var s=i(134),r=i(77231),a=i(50011);class n{constructor(){(0,s.A)(this,"list",void 0),this.list=[]}read(t,e){for(let i=0;i<e;i++){const e=t.readUint32();this.list.push(t.readString(e))}}write(t){for(let e=0;e<this.list.length;e++){const i=a.encode(this.list[e]);t.writeUint32(i.length),t.writeBuffer(i)}}addComment(t){this.list.push(t)}}class o{constructor(){(0,s.A)(this,"capturePattern",void 0),(0,s.A)(this,"streamStructureVersion",void 0),(0,s.A)(this,"headerTypeFlag",void 0),(0,s.A)(this,"granulePosition",void 0),(0,s.A)(this,"serialNumber",void 0),(0,s.A)(this,"pageSequenceNumber",void 0),(0,s.A)(this,"crcCheckSum",void 0),(0,s.A)(this,"numberPageSegments",void 0),(0,s.A)(this,"segmentTable",void 0),(0,s.A)(this,"payload",void 0),(0,s.A)(this,"pos",void 0),this.reset()}reset(){this.capturePattern="OggS",this.streamStructureVersion=0,this.headerTypeFlag=0,this.granulePosition=r.Dh,this.serialNumber=0,this.pageSequenceNumber=0,this.crcCheckSum=0,this.numberPageSegments=0,this.segmentTable=[],this.pos=BigInt(0)}async read(t){this.pos=t.getPos(),await this.readPageHeader(t);const e=this.segmentTable.reduce(((t,e)=>t+e),0);e&&(this.payload=await t.readBuffer(e))}async readPageHeader(t){if(this.capturePattern=await t.readString(4),this.streamStructureVersion=await t.readUint8(),this.headerTypeFlag=await t.readUint8(),this.granulePosition=await t.readUint64(),this.serialNumber=await t.readUint32(),this.pageSequenceNumber=await t.readUint32(),this.crcCheckSum=await t.readUint32(),this.numberPageSegments=await t.readUint8(),this.numberPageSegments)for(let e=0;e<this.numberPageSegments;e++){const e=await t.readUint8();this.segmentTable.push(e)}}write(t){if(this.pos=t.getPos(),t.writeString(this.capturePattern),t.writeUint8(this.streamStructureVersion),t.writeUint8(this.headerTypeFlag),t.writeUint64(this.granulePosition),t.writeUint32(this.serialNumber),t.writeUint32(this.pageSequenceNumber),t.writeUint32(this.crcCheckSum),this.payload){this.numberPageSegments=Math.floor(this.payload.length/255)+1;const e=this.payload.length%255;t.writeUint8(this.numberPageSegments);for(let e=0;e<this.numberPageSegments-1;e++)t.writeUint8(255);t.writeUint8(e),t.writeBuffer(this.payload)}else t.writeUint8(0)}}class h{constructor(){(0,s.A)(this,"streamIndex",void 0),(0,s.A)(this,"signature",void 0),(0,s.A)(this,"vendorStringLength",void 0),(0,s.A)(this,"vendorString",void 0),(0,s.A)(this,"userCommentListLength",void 0),(0,s.A)(this,"comments",void 0),this.vendorString="v0.6.1",this.vendorStringLength=this.vendorString.length,this.userCommentListLength=0,this.comments=new n}read(t){this.vendorStringLength=t.readUint32(),this.vendorString=t.readString(this.vendorStringLength),this.userCommentListLength=t.readUint32(),this.userCommentListLength&&this.comments.read(t,this.userCommentListLength)}write(t){const e=a.encode(this.vendorString);t.writeUint32(e.length),t.writeBuffer(e),t.writeUint32(this.comments.list.length),this.comments.write(t)}addComment(t){this.comments.addComment(t)}setCodec(t){}}},87400:(t,e,i)=>{i.d(e,{GM:()=>h,mS:()=>o,ol:()=>n});var s=i(134),r=i(38743);i(95335),i(34677);const a={album:"album",artist:"artist",description:"description",encoder:"encoder",title:"title",tracknumber:"track",date:"date",genre:"genre",comment:"comment",albumartist:"albumArtist",composer:"composer",performer:"performer",discnumber:"disc",organization:"vendor",copyright:"copyright",license:"license",isrc:"isrc",lyrics:"lyrics",language:"language",label:"vendor",script:"lyrics",encoded_by:"vendor"};function n(t,e){t&&t.forEach((t=>{const i=t.split("=");if(2===i.length){const t=i[0].trim().toLowerCase(),s=i[1].trim();a[t]?e[a[t]]=s:e[t.toLowerCase()]=s}}))}class o{constructor(t="vorbis"){(0,s.A)(this,"streamIndex",void 0),(0,s.A)(this,"packetType",void 0),(0,s.A)(this,"signature",void 0),(0,s.A)(this,"version",void 0),(0,s.A)(this,"channels",void 0),(0,s.A)(this,"sampleRate",void 0),(0,s.A)(this,"bitrateMaximum",void 0),(0,s.A)(this,"bitrateNominal",void 0),(0,s.A)(this,"bitrateMinimum",void 0),(0,s.A)(this,"blocksize0",void 0),(0,s.A)(this,"blocksize1",void 0),(0,s.A)(this,"framingFlag",void 0),this.signature=t,this.version=0,this.channels=1,this.sampleRate=48e3,this.bitrateMaximum=0,this.bitrateNominal=0,this.bitrateMinimum=0,this.blocksize0=2048,this.blocksize1=256}read(t){this.packetType=t.readUint8(),this.signature=t.readString(6),this.version=t.readUint32(),this.channels=t.readUint8(),this.sampleRate=t.readInt32(),this.bitrateMaximum=t.readInt32(),this.bitrateNominal=t.readInt32(),this.bitrateMinimum=t.readInt32();const e=255&t.readUint8();this.blocksize0=Math.pow(2,e>>>4),this.blocksize1=Math.pow(2,15&e),this.framingFlag=t.readUint8()}write(t){t.writeUint8(1),t.writeString(this.signature),t.writeUint32(this.version),t.writeUint8(this.channels),t.writeInt32(this.sampleRate),t.writeInt32(this.bitrateMaximum),t.writeInt32(this.bitrateNominal),t.writeInt32(this.bitrateMinimum),t.writeUint8(Math.log2(this.blocksize0)<<4|Math.log2(this.blocksize1)),t.writeUint8(1)}setCodec(t){this.sampleRate=t.sampleRate,this.channels=t.chLayout.nbChannels}}class h extends r.h{constructor(t="vorbis"){super(),(0,s.A)(this,"packetType",void 0),(0,s.A)(this,"framingFlag",void 0),this.signature=t,this.packetType=1,this.framingFlag=1}read(t){this.packetType=t.readUint8(),this.signature=t.readString(6),super.read(t),"vorbis"===this.signature&&(this.framingFlag=t.readUint8())}write(t){t.writeUint8(this.packetType),t.writeString(this.signature),super.write(t),"vorbis"===this.signature&&t.writeUint8(this.framingFlag)}addComment(t){this.comments.addComment(t)}setCodec(t){}}},2187:(t,e,i)=>{i.d(e,{d:()=>n});var s=i(72739),r=i(44328),a=i(77231);function n(t,e,i){let n=BigInt(0);return s.__(t,(t=>{n+=t.codecpar.bitrate*(0,r.k)(e,i,a.i0)/BigInt(8e3)})),n}},52071:(t,e,i)=>{i.d(e,{A:()=>c});var s=i(63939),r=(i(9599),i(77231)),a=i(44328),n=i(2187),o=i(71517),h=i(9705),d=i(4624);const m="src/avformat/function/seekInBytes.ts";async function c(t,e,i,c,g,l){const u=t.ioReader.getPos(),p=await t.ioReader.fileSize();let w=r.Dh,b=i;e.startTime!==r.Dh?b-=e.startTime:b-=e.firstDTS;const v=(0,a.k)(i,e.timeBase,r.i0);if(v<BigInt(1e4))return d.Yz(`seek pts is earlier then 10s, seek to first packet pos(${c}) directly`,m,62),await t.ioReader.seek(c),u;let f=(0,n.d)(t.streams,b,e.timeBase);const k=p-(0,n.d)(t.streams,BigInt(1e4),r.i0),S=(0,n.d)(t.streams,BigInt(1e4),r.i0);if(f>k&&(f=k),f<c)return await t.ioReader.seek(c),u;const A=(0,o._5)();let U=p,y=BigInt(0);for(;;){if(U-y<S){w=y;break}if(await t.ioReader.seek(f),await l(t),8&t.ioReader.flags)break;const e=t.ioReader.getPos();if(!(await g(t,A)>=0)){w=r.Dh;break}{const t=(0,a.Mr)(s.f[17](A+8),A+72,r.i0),i=t-v;if(d.Yz(`try to seek to pos: ${f}, got packet pts: ${s.f[17](A+8)}(${t}ms), diff: ${i}ms`,m,100),i<=BigInt(0)&&-i<BigInt(1e4)){w=e;break}i>BigInt(0)?(U=f,f=y+U>>BigInt(1)):(y=f,f=y+U>>BigInt(1))}if(8&t.ioReader.flags)break}return(0,o.Qe)(A),w!==r.Dh?(d.Yz(`finally seek to pos ${w}`,m,131),await t.ioReader.seek(w),await l(t),u):(await t.ioReader.seek(u),8&t.ioReader.flags?BigInt(h.LT):BigInt(h.E$))}}}]);
|