@libmedia/avplayer-ui 1.2.1 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/esm/163.avplayer.js +1 -1
- package/dist/esm/182.avplayer.js +1 -1
- package/dist/esm/195.avplayer.js +1 -1
- package/dist/esm/199.avplayer.js +1 -1
- package/dist/esm/239.avplayer.js +1 -1
- package/dist/esm/248.avplayer.js +1 -1
- package/dist/esm/26.avplayer.js +1 -1
- package/dist/esm/261.avplayer.js +1 -1
- package/dist/esm/266.avplayer.js +1 -1
- package/dist/esm/325.avplayer.js +1 -1
- package/dist/esm/33.avplayer.js +1 -1
- package/dist/esm/384.avplayer.js +1 -1
- package/dist/esm/43.avplayer.js +1 -1
- package/dist/esm/462.avplayer.js +1 -1
- package/dist/esm/502.avplayer.js +1 -1
- package/dist/esm/573.avplayer.js +1 -1
- package/dist/esm/630.avplayer.js +1 -1
- package/dist/esm/641.avplayer.js +1 -1
- package/dist/esm/747.avplayer.js +1 -1
- package/dist/esm/749.avplayer.js +1 -1
- package/dist/esm/790.avplayer.js +1 -1
- package/dist/esm/794.avplayer.js +1 -1
- package/dist/esm/850.avplayer.js +1 -1
- package/dist/esm/881.avplayer.js +1 -1
- package/dist/esm/931.avplayer.js +1 -1
- package/dist/esm/932.avplayer.js +1 -1
- package/dist/esm/943.avplayer.js +1 -1
- package/dist/esm/956.avplayer.js +1 -1
- package/dist/esm/961.avplayer.js +1 -1
- package/dist/esm/97.avplayer.js +1 -1
- package/dist/esm/991.avplayer.js +1 -1
- package/dist/esm/avplayer.js +1 -1
- package/dist/umd/248.avplayer.js +1 -1
- package/dist/umd/26.avplayer.js +1 -1
- package/dist/umd/850.avplayer.js +1 -1
- package/dist/umd/881.avplayer.js +1 -1
- package/dist/umd/932.avplayer.js +1 -1
- package/dist/umd/961.avplayer.js +1 -1
- package/dist/umd/avplayer.js +1 -1
- package/package.json +2 -2
package/dist/esm/850.avplayer.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const __webpack_esm_id__=850;export const __webpack_esm_ids__=[850];export const __webpack_esm_modules__={2843:(e,t,a)=>{a.d(t,{A:()=>c});var s=a(19371),r=a(56238),i=a(46626),n=a(67669);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)}}},3454:(e,t,a)=>{a.d(t,{Au:()=>b,He:()=>y,XC:()=>A,Y2:()=>g,hG:()=>m,oz:()=>x});var s=a(29688);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}}},4512:(e,t,a)=>{a.d(t,{K:()=>r});var s=a(46564);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}},6850:(e,t,a)=>{a.r(t),a.d(t,{default:()=>F});var s=a(19371),r=a(54568),i=a(56238),n=a(6927),c=a(47247),o=a(44962),d=a(35734),h=a(34696),f=a(53691),l=a(39168),p=a(97147),u=a(83172),g=a(47216),m=a(85719),x=a(80209),b=a(35924),y=a(46564),A=a(46626),I=a(98901),k=a(29688),M=a(99817),R=a(43963),S=a(56901),B=a(91665),v=a(20642),w=a(12062),P=a(3454),U=a(17689),C=a(25721),D=a(4512),L=a(84777),_=a(83796),E=a(23902),z=a(34117),N=a(18528);const T="packages/avformat/src/formats/IMpegpsFormat.ts";class F extends d.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 Map,pes:new o.xf,slices:new Map,lastPtsMap:new Map,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,y.Qe)(this.cacheAVPacket),this.cacheAVPacket=0),_.__(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<f.V;){const s=await e.ioReader.readUint8();if(1===t){t=16777215&(t<<8|s);break}t=16777215&(t<<8|s),a++}return a===f.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 b.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 i=0,n=-1;switch(a){case 226:n=0,i=27;break;case 128:n=1,i=86019;break;case 136:n=1,i=86020;break;case 160:n=1,i=65537;break;case 32:n=3,i=94208;break;default:switch(t){case 1:case 2:n=0,i=2;break;case 3:case 4:n=1,i=86017;break;case 15:n=1,i=86018;break;case 16:n=0,i=12;break;case 27:n=0,i=27;break;case 36:n=0,i=173;break;case 51:n=0,i=196;break;case 129:n=1,i=86019;break;case 144:n=1,i=65543;break;case 145:n=1,i=65542;break;case 447:n=2,i=98312;break;default:if(s>=480&&s<=495)n=0,i=2;else if(s>=448&&s<=479)n=1,i=86017;else if(s>=128&&s<=135)n=1,i=86019;else if(s>=136&&s<=143||s>=152&&s<=159)n=1,i=86020;else if(s>=176&&s<=191)n=1,i=86060;else if(s>=192&&s<=207)n=1,i=86019;else if(s>=32&&s<=63)n=3,i=94208;else{if(!(s>=64853&&s<=64863))return;n=0,i=70}}}const c=e.createStream();c.codecpar.codecType=n,c.codecpar.codecId=i,c.timeBase.den=9e4,c.timeBase.num=1;const o=c.privData={streamId:a,streamType:t,filter:null,paddingPES:null};return 65543!==i&&65542!==i||(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.flags|=1),86017===c.codecpar.codecId?o.filter=new l.A:86019===c.codecpar.codecId?o.filter=new u.A:86020===c.codecpar.codecId?o.filter=new g.A:86018===c.codecpar.codecId&&(o.filter=new m.A),o.filter&&o.filter.init(c.codecpar[r.o9],c.timeBase[r.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 z.z3("the file format is not mpegps",T,412),b.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=k.Dh;;)await this.readPES(e),(0,c.A)(this.context.pes),this.context.pes.pts!==k.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===k.N_){const a=(0,y.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=P.Au(r),o=P.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===k.N_){const a=(0,y.iI)(e),s=S.R(a);L.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===k.N_){const a=(0,y.iI)(e),s=B.R(a);L.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,y.rU)(e,1);a&&(t.codecpar.extradata=(0,A.sY)(i.f[25](a+4)),(0,x.Mr)(t.codecpar.extradata,i.f[20](a),i.f[25](a+4)),t.codecpar.extradataSize=0|i.f[25](a+4),(0,y.Is)(e,1),86018===t.codecpar.codecId?R.XC(t,(0,x.JW)(t.codecpar.extradata,t.codecpar.extradataSize)):86076===t.codecpar.codecId&&U.XC(t,(0,x.JW)(t.codecpar.extradata,t.codecpar.extradataSize)))}}parseSlice(e,t,a,s){const r=(0,N.A)(Uint8Array,e.buffers),c=s.privData;1===s.codecpar.codecType&&n.M[15](a+36,1|i.f[15](a+36));const o=s.codecpar.codecId;27!==o&&173!==o&&196!==o||n.M[15](a+36,64|i.f[15](a+36)),n.M[15](a+32,s.index),n.M[17](a+16,e.dts),n.M[17](a+8,e.pts),n.M[17](a+56,e.pos),n.M[15](a+76,9e4),n.M[15](a+72,1),s.startTime===k.Dh&&(s.startTime=i.f[17](a+8)||i.f[17](a+16),this.context.lastPtsMap.has(c.streamId)&&(s.duration=this.context.lastPtsMap.get(c.streamId)-s.startTime));const d=(0,A.sY)(r.length);if((0,x.lW)(d,r.length,r),(0,y.NX)(a,d,r.length),c.filter){let e=0;if(e=c.filter.sendAVPacket(a),e<0)return z.z3("send avpacket to bsf failed",T,551),b.LR;if(e=c.filter.receiveAVPacket(a),e<0)return e;for(n.M[15](a+76,9e4),n.M[15](a+72,1),n.M[15](a+32,s.index),this.checkExtradata(a,s);;){const a=this.cacheAVPacket||(0,y._5)();if(e=c.filter.receiveAVPacket(a),0!==e){this.cacheAVPacket=a;break}n.M[15](a+76,9e4),n.M[15](a+72,1),n.M[15](a+32,s.index),this.checkExtradata(a,s),t.interval.packetBuffer.push(a),this.cacheAVPacket=0}}else if(2===s.codecpar.codecId)D.K(a)&&n.M[15](a+36,1|i.f[15](a+36));else if(27===s.codecpar.codecId){if(!s.codecpar.extradata){const e=v.sL((0,y.iI)(a));e&&(s.codecpar.extradata=(0,A.sY)(e.length),(0,x.lW)(s.codecpar.extradata,e.length,e),s.codecpar.extradataSize=e.length,v.XC(s,e))}v.KD(a)&&n.M[15](a+36,1|i.f[15](a+36))}else if(173===s.codecpar.codecId){if(!s.codecpar.extradata){const e=w.sL((0,y.iI)(a));e&&(s.codecpar.extradata=(0,A.sY)(e.length),(0,x.lW)(s.codecpar.extradata,e.length,e),s.codecpar.extradataSize=e.length,w.XC(s,e))}w.KD(a)&&n.M[15](a+36,1|i.f[15](a+36))}else if(196===s.codecpar.codecId){if(!s.codecpar.extradata){const e=C.sL((0,y.iI)(a));e&&(s.codecpar.extradata=(0,A.sY)(e.length),(0,x.lW)(s.codecpar.extradata,e.length,e),s.codecpar.extradataSize=e.length,C.XC(s,e))}C.KD(a)&&n.M[15](a+36,1|i.f[15](a+36))}return 0}getMpegVideoNextFrame(e,t,a){for(;;){const s=M.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 p.Vz;p.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=P.Y2(n,c);let d=p.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=S.R(e.subarray(r+a));if(L.ai(i)||!(r+a+i.frameSize<e.length-2)||11!==e[r+a+i.frameSize]||119!==e[r+a+i.frameSize+1])break;if(t++,a+=i.frameSize,t===s)break}if(t===s)return r;continue}break}if(86020===t.codecpar.codecId&&254===a&&128===e[r+2]&&129===e[r+3]){if(0!==r){let t=0,a=0;for(;;){const i=B.R(e.subarray(r+a));if(L.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!==k.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=E.X$({},this.context.pes),!0}if(2===s.codecpar.codecId){let a=(0,N.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,y._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===b.LT}if(this.context.pes.dts!==k.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=E.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,c.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,N.A)(Uint8Array,[e.paddingPES.payload,this.context.pes.payload]),this.context.pes.dts===k.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&&-1048572!==e.ioReader.error?(z.z3(`read packet error, ${a}`,T,1056),b.LR):(this.context.ioEnded=!0,this.readAVPacket(e,t))}}async syncPSPacket(e){let t=k.Dh;try{for(this.context.pes.pts=k.Dh;this.context.pes.pts===k.Dh;)await this.readPES(e),(0,c.A)(this.context.pes),t=this.context.pes.pos}catch(e){t=k.Dh}t!==k.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(b.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=_.El(t.sampleIndexes,(e=>e.pts>a?-1:1));if(s>0&&(0,I.k)(a-t.sampleIndexes[s-1].pts,t.timeBase,k.i0)<BigInt(1e4))return z.Yz(`seek in sampleIndexes, found index: ${s}, pts: ${t.sampleIndexes[s-1].pts}, pos: ${t.sampleIndexes[s-1].pos}`,T,1140),await e.ioReader.seek(t.sampleIndexes[s-1].pos),this.context.ioEnded=!1,r}z.Yz("not found any keyframe index, try to seek in bytes",T,1147);let s=await(0,h.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}}},17689:(e,t,a)=>{a.d(t,{Ij:()=>d,XC:()=>o,kt:()=>c});var s=a(98901),r=a(70704),i=a(99248);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 r.A(t,!1);a.skip(9),e.codecpar.chLayout.nbChannels=a.readUint8(),e.codecpar.initialPadding=a.readUint16(),e.codecpar.sampleRate=a.readUint32(),e.codecpar.seekPreroll=Number((0,s.k)(BigInt(80),{den:1e3,num:1},{den:48e3,num:1}))}}function d(e){const t=new Uint8Array(19),a=new i.A(t,!1);return a.writeString("OpusHead"),a.writeUint8(1),a.writeUint8(e.chLayout.nbChannels),a.writeUint16(e.initialPadding),a.writeUint32(e.sampleRate),t}},34696:(e,t,a)=>{a.d(t,{A:()=>f});var s=a(56238),r=a(57430),i=a(35924),n=a(46564),c=a(98901),o=a(29688),d=a(34117);const h="packages/avformat/src/function/seekInBytes.ts";async function f(e,t,a,f,l,p){const u=e.ioReader.getPos(),g=await e.ioReader.fileSize();let m=o.Dh,x=a;t.startTime!==o.Dh?x-=t.startTime:x-=t.firstDTS;const b=(0,c.k)(a,t.timeBase,o.i0);if(b<BigInt(1e4))return d.Yz(`seek pts is earlier then 10s, seek to first packet pos(${f}) directly`,h,78),await e.ioReader.seek(f),u;let y=(0,r.d)(e.streams,x,t.timeBase);const A=g-(0,r.d)(e.streams,BigInt(1e4),o.i0),I=(0,r.d)(e.streams,BigInt(1e4),o.i0);if(y>A&&(y=A),y<f)return await e.ioReader.seek(f),u;const k=(0,n._5)();let M=g,R=BigInt(0);e:for(;M-R<I&&(y=R),await e.ioReader.seek(y),await p(e),!(8&e.ioReader.flags);){let a=await l(e,k),r=s.f[17](k+56);if(!(a>=0)){m=o.Dh;break}{const i=(0,c.Mr)(s.f[17](k+8),k+72,o.i0);let f=i-b;if(d.Yz(`try to seek to pos: ${y}, got packet pts: ${s.f[17](k+8)}(${i}ms), diff: ${f}ms`,h,115),f<=BigInt(0)&&-f<BigInt(1e4)||M-R<I){const i=[r];for(;f<=0;){if(s.f[15](k+32)===t.index&&1&s.f[15](k+36)&&i.push(r),(0,n.Up)(k),a=await l(e,k),a<0){if(-1048576===a)break;if(-1048575===a)continue;m=o.Dh;break e}r=s.f[17](k+56),f=(0,c.Mr)(s.f[17](k+8),k+72,o.i0)-b}m=i.pop();break}f>BigInt(0)?(M=y,y=R+M>>BigInt(1)):(R=y,y=R+M>>BigInt(1))}if(8&e.ioReader.flags)break}return(0,n.Qe)(k),m!==o.Dh?(d.Yz(`finally seek to pos ${m}`,h,170),await e.ioReader.seek(m),await p(e),u):(await e.ioReader.seek(u),8&e.ioReader.flags?BigInt(i.LT):BigInt(i.E$))}},35734:(e,t,a)=>{a.d(t,{A:()=>r});var s=a(19371);class r{constructor(){(0,s.A)(this,"type",-1),(0,s.A)(this,"onStreamAdd",void 0)}async destroy(e){}}},39168:(e,t,a)=>{a.d(t,{A:()=>x});var s=a(19371),r=a(56238),i=a(6927),n=a(2843),c=a(97147),o=a(80209),d=a(34117),h=a(18528),f=a(35924),l=a(46564),p=a(46626),u=a(98901),g=a(29688),m=a(3454);class x extends n.A{constructor(){super(...arguments),(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 c.Vz,0}sendAVPacket(e){let t=0,a=this.lastDts||(r.f[17](e+16)!==g.Dh?r.f[17](e+16):r.f[17](e+8)),s=(0,o.s3)(r.f[20](e+24),r.f[15](e+28)).slice(),i=!1,n=!!this.cache;for(n&&(s=(0,h.A)(Uint8Array,[this.cache,s]),this.cache=null);t<s.length;){const o=s[t]<<4|s[t+1]>>4&14;if(4094!==o){let e=t+1;for(;e<s.length-1;e++)if(4094==(s[e]<<4|s[e+1]>>4&14)){t=e;break}if(e<s.length-1)continue;return d.z3(`found syncWord not 0xFFE, got: 0x${o.toString(16)}`,"packages/avformat/src/bsf/mp3/Mp32RawFilter.ts",112),f.LR}const h=s[1]>>>3&3,l=(12&s[2])>>>2,p={dts:a,buffer:null,extradata:null,duration:g.N_,pos:r.f[17](e+56)},x=m.Y2(h,l);c.qg(this.frameHeader,s[t]<<24|s[t+1]<<16|s[t+2]<<8|s[t+3]);let b=c.CM(this.frameHeader,x);if(p.buffer=s.subarray(t,t+b),t+b>s.length){this.cache=s.subarray(t),this.lastDts=a;break}const y=(0,u.k)(BigInt(Math.floor(b/x*g.SF)),g.KR,this.inTimeBase);p.duration=Number(y),this.caches.push(p),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,l.Up)(e);const t=this.caches.shift(),a=(0,p.sY)(t.buffer.length);return(0,o.lW)(a,t.buffer.length,t.buffer),(0,l.NX)(e,a,t.buffer.length),i.M[17](e+16,t.dts),i.M[17](e+8,t.dts),i.M[17](e+56,t.pos),i.M[17](e+48,BigInt(Math.floor(t.duration))),i.M[15](e+36,1|r.f[15](e+36)),0}return f.LT}reset(){return this.cache=null,this.lastDts=BigInt(0),this.caches.length=0,0}}},43963:(e,t,a)=>{a.d(t,{Bq:()=>f,En:()=>o,Ij:()=>h,XC:()=>d,f7:()=>l,hY:()=>c,uF:()=>i});var s=a(29688),r=a(54809);const i={1:"Main",2:"LC",3:"SSR",4:"LTP",5:"HE",6:"SCALABLE",29:"HEv2",23:"LD",39:"ELD"},n={96e3:0,88200:1,64e3:2,48e3:3,44100:4,32e3:5,24e3:6,22050:7,16e3:8,12e3:9,11025:10,8e3:11,7350:12},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}},44962:(e,t,a)=>{a.d(t,{Cd:()=>o,I4:()=>h,am:()=>n,kJ:()=>d,pi:()=>c,xf:()=>f});var s=a(19371),r=a(29688);class i{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 n{constructor(){(0,s.A)(this,"pos",r.Dh),(0,s.A)(this,"payloadUnitStartIndicator",0),(0,s.A)(this,"transportPriority",0),(0,s.A)(this,"pid",r.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 i),(0,s.A)(this,"payload",null)}}class c{constructor(){(0,s.A)(this,"slices",[]),(0,s.A)(this,"totalLength",0),(0,s.A)(this,"expectedLength",r.N_),(0,s.A)(this,"randomAccessIndicator",0),(0,s.A)(this,"pid",r.N_),(0,s.A)(this,"streamType",0),(0,s.A)(this,"pos",r.Dh)}}class o{constructor(){(0,s.A)(this,"versionNumber",0),(0,s.A)(this,"networkPid",r.N_),(0,s.A)(this,"program2PmtPid",new Map)}}class d{constructor(){(0,s.A)(this,"tag",void 0),(0,s.A)(this,"buffer",void 0)}}class h{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 Map),(0,s.A)(this,"pid2ESDescriptor",new Map)}}class f{constructor(){(0,s.A)(this,"pid",r.N_),(0,s.A)(this,"streamType",0),(0,s.A)(this,"streamId",r.N_),(0,s.A)(this,"dts",r.Dh),(0,s.A)(this,"pts",r.Dh),(0,s.A)(this,"pos",r.Dh),(0,s.A)(this,"payload",null),(0,s.A)(this,"data",null),(0,s.A)(this,"randomAccessIndicator",0),(0,s.A)(this,"flags",void 0)}}},47216:(e,t,a)=>{a.d(t,{A:()=>x});var s=a(19371),r=a(56238),i=a(6927),n=a(2843),c=a(80209),o=a(84777),d=a(34117),h=a(18528),f=a(35924),l=a(46564),p=a(46626),u=a(98901),g=a(29688),m=a(91665);class x extends n.A{constructor(){super(...arguments),(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)!==g.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,h.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=m.R(s.subarray(t));if(o.ai(c)){let e=t+1;for(;e<s.length-3;e++){const a=s[e]<<24|s[e+1]<<16|s[e+2]<<8|s[e+3];if(2147385345===a||4269736320===a){t=e;break}}if(e<s.length-3)continue;return d.z3("parse dts header failed","packages/avformat/src/bsf/dts/Dts2RawFilter.ts",115),f.LR}const h={dts:a,buffer:null,duration:g.N_,pos:r.f[17](e+56)};let l=c.frameSize;if(h.buffer=s.subarray(t,t+l),t+l>s.length)return this.cache=s.subarray(t),this.lastDts=a,0;const p=(0,u.k)(BigInt(Math.floor(c.sampleBlock*m.u/c.sampleRate*g.SF)),g.KR,this.inTimeBase);h.duration=Number(p),this.caches.push(h),t+=l,a+=p,!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,l.Up)(e);const t=this.caches.shift(),a=(0,p.sY)(t.buffer.length);return(0,c.lW)(a,t.buffer.length,t.buffer),(0,l.NX)(e,a,t.buffer.length),i.M[17](e+16,t.dts),i.M[17](e+8,t.dts),i.M[17](e+56,t.pos),i.M[17](e+48,BigInt(Math.floor(t.duration))),i.M[15](e+36,1|r.f[15](e+36)),0}return f.LT}reset(){return this.cache=null,this.lastDts=BigInt(0),this.caches.length=0,0}}},47247:(e,t,a)=>{a.d(t,{A:()=>c});var s=a(35924),r=a(29688),i=a(34117);const n="packages/avformat/src/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=r.Dh,f=r.Dh;for(;;){if(6+d>=t.length)return s.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 i.z3("invalid data",n,120),s.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 i.z3("Malformed PES: PES_packet_length < 3 + PES_header_data_length",n,132),s.LR;p=c-(d+o),l+(t.byteLength-l)!=c+6&&(i.R8("PES packet size mismatch",n,137),e.flags|=2)}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}},53691:(e,t,a)=>{a.d(t,{V:()=>s});const s=1e5},56901:(e,t,a)=>{a.d(t,{R:()=>p,j:()=>r});var s=a(54809);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}},57430:(e,t,a)=>{a.d(t,{d:()=>n});var s=a(83796),r=a(29688),i=a(98901);function n(e,t,a){let n=BigInt(0);return s.__(e,(e=>{n+=e.codecpar.bitrate*(0,i.k)(t,a,r.i0)/BigInt(8e3)})),n}},83172:(e,t,a)=>{a.d(t,{A:()=>x});var s=a(19371),r=a(56238),i=a(6927),n=a(2843),c=a(80209),o=a(84777),d=a(34117),h=a(18528),f=a(35924),l=a(46564),p=a(46626),u=a(98901),g=a(29688),m=a(56901);class x extends n.A{constructor(){super(...arguments),(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)!==g.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,h.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=m.R(s.subarray(t));if(o.ai(c)){let e=t+1;for(;e<s.length-1;e++)if(2935==(s[e]<<8|s[e+1])){t=e;break}if(e<s.length-1)continue;return d.z3("parse ac3 header failed","packages/avformat/src/bsf/ac3/Ac32RawFilter.ts",115),f.LR}const h={dts:a,buffer:null,duration:g.N_,pos:r.f[17](e+56)};let l=c.frameSize;if(h.buffer=s.subarray(t,t+l),t+l>s.length)return this.cache=s.subarray(t),this.lastDts=a,0;const p=(0,u.k)(BigInt(1536/c.sampleRate*g.SF),g.KR,this.inTimeBase);h.duration=Number(p),this.caches.push(h),t+=l,a+=p,!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,l.Up)(e);const t=this.caches.shift(),a=(0,p.sY)(t.buffer.length);return(0,c.lW)(a,t.buffer.length,t.buffer),(0,l.NX)(e,a,t.buffer.length),i.M[17](e+16,t.dts),i.M[17](e+8,t.dts),i.M[17](e+56,t.pos),i.M[17](e+48,BigInt(Math.floor(t.duration))),i.M[15](e+36,1|r.f[15](e+36)),0}return f.LT}reset(){return this.cache=null,this.lastDts=BigInt(0),this.caches.length=0,0}}},85719:(e,t,a)=>{a.d(t,{A:()=>y});var s=a(19371),r=a(56238),i=a(6927),n=a(92113),c=a(49103),o=a(2843),d=a(80209),h=a(84777),f=a(34117),l=a(18528),p=a(35924),u=a(46564),g=a(46626),m=a(98901),x=a(29688),b=a(43963);class y extends o.A{constructor(){super(...arguments),(0,s.A)(this,"streamMuxConfig",void 0),(0,s.A)(this,"caches",void 0),(0,s.A)(this,"pendingItem",void 0)}init(e,t){return super.init(e,t),this.caches=[],this.streamMuxConfig={profile:x.N_,sampleRate:x.N_,channels:x.N_},0}sendAVPacket(e){let t=0,a=r.f[17](e+16)!==x.Dh?r.f[17](e+16):r.f[17](e+8),s=(0,d.s3)(r.f[20](e+24),r.f[15](e+28)).slice();for(this.pendingItem&&(this.pendingItem.buffer=(0,l.A)(Uint8Array,[this.pendingItem.buffer,s.subarray(0,this.pendingItem.miss)]),s=s.subarray(this.pendingItem.miss),this.caches.push(this.pendingItem),this.pendingItem=null);t<s.length;){const o=b.Bq(s.subarray(t));if(h.ai(o)){let e=t+1;for(;e<s.length-1;e++)if(4095==(s[e]<<4|s[e+1]>>4)){t=e;break}if(e<s.length-1)continue;return f.z3("AACADTSParser parse failed","packages/avformat/src/bsf/aac/ADTS2RawFilter.ts",127),p.LR}const l={dts:a,buffer:null,extradata:null,duration:x.N_,pos:r.f[17](e+56)};l.buffer=s.subarray(t+o.headerLength,t+o.headerLength+o.framePayloadLength),this.streamMuxConfig.profile=o.profile,this.streamMuxConfig.sampleRate=o.sampleRate,this.streamMuxConfig.channels=o.channels;const u=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,y=(0,m.k)(BigInt(Math.floor(1024*(o.numberOfRawDataBlocksInFrame+1)/this.streamMuxConfig.sampleRate*x.SF)),x.KR,this.inTimeBase);if(l.duration=Number(y),u){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=b.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),l.extradata=e}l.buffer.length<o.framePayloadLength?this.pendingItem={...l,miss:o.framePayloadLength-l.buffer.length}:this.caches.push(l),t+=o.aacFrameLength,a+=y}return 0}receiveAVPacket(e){if(this.caches.length){(0,u.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,u.NX)(e,a,t.buffer.length),i.M[17](e+16,t.dts),i.M[17](e+8,t.dts),i.M[17](e+56,t.pos),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,u.Ow)(e,1,a,t.extradata.length)}return 0}return p.LT}reset(){return this.pendingItem=null,this.caches.length=0,0}}},91665:(e,t,a)=>{a.d(t,{R:()=>d,u:()=>o});var s=a(34110),r=a(54809);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 r.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,s.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)}},97147:(e,t,a)=>{a.d(t,{CM:()=>c,Vz:()=>i,qg:()=>n});var s=a(19371),r=a(3454);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}}};
|
|
1
|
+
"use strict";(self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[850],{2843:(e,t,a)=>{a.d(t,{A:()=>c});var s=a(19371),r=a(56238),i=a(46626),n=a(67669);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)}}},3454:(e,t,a)=>{a.d(t,{Au:()=>x,He:()=>y,XC:()=>A,Y2:()=>g,hG:()=>m,oz:()=>b});var s=a(29688);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 b(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 x(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=x(s),c=g(a,r);e.codecpar.profile=n,e.codecpar.sampleRate=c,e.codecpar.chLayout.nbChannels=i}}},4512:(e,t,a)=>{a.d(t,{m:()=>r});var s=a(46564);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}},6850:(e,t,a)=>{a.r(t),a.d(t,{default:()=>F});var s=a(19371),r=a(54568),i=a(56238),n=a(6927),c=a(47247),o=a(44962),d=a(35734),h=a(34696),f=a(53691),l=a(39168),p=a(97147),u=a(83172),g=a(47216),m=a(85719),b=a(80209),x=a(35924),y=a(46564),A=a(46626),I=a(98901),k=a(29688),M=a(99817),R=a(43963),S=a(56901),B=a(91665),v=a(20642),w=a(12062),P=a(3454),U=a(17689),C=a(25721),L=a(4512),D=a(84777),E=a(83796),z=a(23902),N=a(34117),_=a(18528);const T="packages/avformat/src/formats/IMpegpsFormat.ts";class F extends d.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 Map,pes:new o.xf,slices:new Map,lastPtsMap:new Map,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,y.Qe)(this.cacheAVPacket),this.cacheAVPacket=0),E.__(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<f.V;){const s=await e.ioReader.readUint8();if(1===t){t=16777215&(t<<8|s);break}t=16777215&(t<<8|s),a++}return a===f.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 x.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 i=0,n=-1;switch(a){case 226:n=0,i=27;break;case 128:n=1,i=86019;break;case 136:n=1,i=86020;break;case 160:n=1,i=65537;break;case 32:n=3,i=94208;break;default:switch(t){case 1:case 2:n=0,i=2;break;case 3:case 4:n=1,i=86017;break;case 15:n=1,i=86018;break;case 16:n=0,i=12;break;case 27:n=0,i=27;break;case 36:n=0,i=173;break;case 51:n=0,i=196;break;case 129:n=1,i=86019;break;case 144:n=1,i=65543;break;case 145:n=1,i=65542;break;case 447:n=2,i=98312;break;default:if(s>=480&&s<=495)n=0,i=2;else if(s>=448&&s<=479)n=1,i=86017;else if(s>=128&&s<=135)n=1,i=86019;else if(s>=136&&s<=143||s>=152&&s<=159)n=1,i=86020;else if(s>=176&&s<=191)n=1,i=86060;else if(s>=192&&s<=207)n=1,i=86019;else if(s>=32&&s<=63)n=3,i=94208;else{if(!(s>=64853&&s<=64863))return;n=0,i=70}}}const c=e.createStream();c.codecpar.codecType=n,c.codecpar.codecId=i,c.timeBase.den=9e4,c.timeBase.num=1;const o=c.privData={streamId:a,streamType:t,filter:null,paddingPES:null};return 65543!==i&&65542!==i||(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.flags|=1),86017===c.codecpar.codecId?o.filter=new l.A:86019===c.codecpar.codecId?o.filter=new u.A:86020===c.codecpar.codecId?o.filter=new g.A:86018===c.codecpar.codecId&&(o.filter=new m.A),o.filter&&o.filter.init(c.codecpar[r.o9],c.timeBase[r.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 N.z3("the file format is not mpegps",T,412),x.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=k.Dh;;)await this.readPES(e),(0,c.A)(this.context.pes),this.context.pes.pts!==k.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===k.N_){const a=(0,y.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=P.Au(r),o=P.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===k.N_){const a=(0,y.iI)(e),s=S.R(a);D.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===k.N_){const a=(0,y.iI)(e),s=B.R(a);D.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,y.rU)(e,1);a&&(t.codecpar.extradata=(0,A.sY)(i.f[25](a+4)),(0,b.Mr)(t.codecpar.extradata,i.f[20](a),i.f[25](a+4)),t.codecpar.extradataSize=0|i.f[25](a+4),(0,y.Is)(e,1),86018===t.codecpar.codecId?R.XC(t,(0,b.JW)(t.codecpar.extradata,t.codecpar.extradataSize)):86076===t.codecpar.codecId&&U.XC(t,(0,b.JW)(t.codecpar.extradata,t.codecpar.extradataSize)))}}parseSlice(e,t,a,s){const r=(0,_.A)(Uint8Array,e.buffers),c=s.privData;1===s.codecpar.codecType&&n.M[15](a+36,1|i.f[15](a+36));const o=s.codecpar.codecId;27!==o&&173!==o&&196!==o||n.M[15](a+36,64|i.f[15](a+36)),n.M[15](a+32,s.index),n.M[17](a+16,e.dts),n.M[17](a+8,e.pts),n.M[17](a+56,e.pos),n.M[15](a+76,9e4),n.M[15](a+72,1),s.startTime===k.Dh&&(s.startTime=i.f[17](a+8)||i.f[17](a+16),this.context.lastPtsMap.has(c.streamId)&&(s.duration=this.context.lastPtsMap.get(c.streamId)-s.startTime));const d=(0,A.sY)(r.length);if((0,b.lW)(d,r.length,r),(0,y.NX)(a,d,r.length),c.filter){let e=0;if(e=c.filter.sendAVPacket(a),e<0)return N.z3("send avpacket to bsf failed",T,551),x.LR;if(e=c.filter.receiveAVPacket(a),e<0)return e;for(n.M[15](a+76,9e4),n.M[15](a+72,1),n.M[15](a+32,s.index),this.checkExtradata(a,s);;){const a=this.cacheAVPacket||(0,y._5)();if(e=c.filter.receiveAVPacket(a),0!==e){this.cacheAVPacket=a;break}n.M[15](a+76,9e4),n.M[15](a+72,1),n.M[15](a+32,s.index),this.checkExtradata(a,s),t.interval.packetBuffer.push(a),this.cacheAVPacket=0}}else if(2===s.codecpar.codecId)L.m(a)&&n.M[15](a+36,1|i.f[15](a+36));else if(27===s.codecpar.codecId){if(!s.codecpar.extradata){const e=v.sL((0,y.iI)(a));e&&(s.codecpar.extradata=(0,A.sY)(e.length),(0,b.lW)(s.codecpar.extradata,e.length,e),s.codecpar.extradataSize=e.length,v.XC(s,e))}v.mW(a)&&n.M[15](a+36,1|i.f[15](a+36))}else if(173===s.codecpar.codecId){if(!s.codecpar.extradata){const e=w.sL((0,y.iI)(a));e&&(s.codecpar.extradata=(0,A.sY)(e.length),(0,b.lW)(s.codecpar.extradata,e.length,e),s.codecpar.extradataSize=e.length,w.XC(s,e))}w.mW(a)&&n.M[15](a+36,1|i.f[15](a+36))}else if(196===s.codecpar.codecId){if(!s.codecpar.extradata){const e=C.sL((0,y.iI)(a));e&&(s.codecpar.extradata=(0,A.sY)(e.length),(0,b.lW)(s.codecpar.extradata,e.length,e),s.codecpar.extradataSize=e.length,C.XC(s,e))}C.mW(a)&&n.M[15](a+36,1|i.f[15](a+36))}return 0}getMpegVideoNextFrame(e,t,a){for(;;){const s=M.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 p.Vz;p.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=P.Y2(n,c);let d=p.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=S.R(e.subarray(r+a));if(D.ai(i)||!(r+a+i.frameSize<e.length-2)||11!==e[r+a+i.frameSize]||119!==e[r+a+i.frameSize+1])break;if(t++,a+=i.frameSize,t===s)break}if(t===s)return r;continue}break}if(86020===t.codecpar.codecId&&254===a&&128===e[r+2]&&129===e[r+3]){if(0!==r){let t=0,a=0;for(;;){const i=B.R(e.subarray(r+a));if(D.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!==k.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=z.X$({},this.context.pes),!0}if(2===s.codecpar.codecId){let a=(0,_.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,y._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===x.LT}if(this.context.pes.dts!==k.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=z.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,c.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,_.A)(Uint8Array,[e.paddingPES.payload,this.context.pes.payload]),this.context.pes.dts===k.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&&-1048572!==e.ioReader.error?(N.z3(`read packet error, ${a}`,T,1056),x.LR):(this.context.ioEnded=!0,this.readAVPacket(e,t))}}async syncPSPacket(e){let t=k.Dh;try{for(this.context.pes.pts=k.Dh;this.context.pes.pts===k.Dh;)await this.readPES(e),(0,c.A)(this.context.pes),t=this.context.pes.pos}catch(e){t=k.Dh}t!==k.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(x.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=E.El(t.sampleIndexes,(e=>e.pts>a?-1:1));if(s>0&&(0,I.k)(a-t.sampleIndexes[s-1].pts,t.timeBase,k.i0)<BigInt(1e4))return N.Yz(`seek in sampleIndexes, found index: ${s}, pts: ${t.sampleIndexes[s-1].pts}, pos: ${t.sampleIndexes[s-1].pos}`,T,1140),await e.ioReader.seek(t.sampleIndexes[s-1].pos),this.context.ioEnded=!1,r}N.Yz("not found any keyframe index, try to seek in bytes",T,1147);let s=await(0,h.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}}},17689:(e,t,a)=>{a.d(t,{Ij:()=>d,XC:()=>o,kt:()=>c});var s=a(98901),r=a(70704),i=a(99248);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 r.A(t,!1);a.skip(9),e.codecpar.chLayout.nbChannels=a.readUint8(),e.codecpar.initialPadding=a.readUint16(),e.codecpar.sampleRate=a.readUint32(),e.codecpar.seekPreroll=Number((0,s.k)(BigInt(80),{den:1e3,num:1},{den:48e3,num:1}))}}function d(e){const t=new Uint8Array(19),a=new i.A(t,!1);return a.writeString("OpusHead"),a.writeUint8(1),a.writeUint8(e.chLayout.nbChannels),a.writeUint16(e.initialPadding),a.writeUint32(e.sampleRate),t}},34696:(e,t,a)=>{a.d(t,{A:()=>f});var s=a(56238),r=a(57430),i=a(35924),n=a(46564),c=a(98901),o=a(29688),d=a(34117);const h="packages/avformat/src/function/seekInBytes.ts";async function f(e,t,a,f,l,p){const u=e.ioReader.getPos(),g=await e.ioReader.fileSize();let m=o.Dh,b=a;t.startTime!==o.Dh?b-=t.startTime:b-=t.firstDTS;const x=(0,c.k)(a,t.timeBase,o.i0);if(x<BigInt(1e4))return d.Yz(`seek pts is earlier then 10s, seek to first packet pos(${f}) directly`,h,78),await e.ioReader.seek(f),u;let y=(0,r.d)(e.streams,b,t.timeBase);const A=g-(0,r.d)(e.streams,BigInt(1e4),o.i0),I=(0,r.d)(e.streams,BigInt(1e4),o.i0);if(y>A&&(y=A),y<f)return await e.ioReader.seek(f),u;const k=(0,n._5)();let M=g,R=BigInt(0);e:for(;M-R<I&&(y=R),await e.ioReader.seek(y),await p(e),!(8&e.ioReader.flags);){let a=await l(e,k),r=s.f[17](k+56);if(!(a>=0)){m=o.Dh;break}{const i=(0,c.Mr)(s.f[17](k+8),k+72,o.i0);let f=i-x;if(d.Yz(`try to seek to pos: ${y}, got packet pts: ${s.f[17](k+8)}(${i}ms), diff: ${f}ms`,h,115),f<=BigInt(0)&&-f<BigInt(1e4)||M-R<I){const i=[r];for(;f<=0;){if(s.f[15](k+32)===t.index&&1&s.f[15](k+36)&&i.push(r),(0,n.Up)(k),a=await l(e,k),a<0){if(-1048576===a)break;if(-1048575===a)continue;m=o.Dh;break e}r=s.f[17](k+56),f=(0,c.Mr)(s.f[17](k+8),k+72,o.i0)-x}m=i.pop();break}f>BigInt(0)?(M=y,y=R+M>>BigInt(1)):(R=y,y=R+M>>BigInt(1))}if(8&e.ioReader.flags)break}return(0,n.Qe)(k),m!==o.Dh?(d.Yz(`finally seek to pos ${m}`,h,170),await e.ioReader.seek(m),await p(e),u):(await e.ioReader.seek(u),8&e.ioReader.flags?BigInt(i.LT):BigInt(i.E$))}},35734:(e,t,a)=>{a.d(t,{A:()=>r});var s=a(19371);class r{constructor(){(0,s.A)(this,"type",-1),(0,s.A)(this,"onStreamAdd",void 0)}async destroy(e){}}},39168:(e,t,a)=>{a.d(t,{A:()=>b});var s=a(19371),r=a(56238),i=a(6927),n=a(2843),c=a(97147),o=a(80209),d=a(34117),h=a(18528),f=a(35924),l=a(46564),p=a(46626),u=a(98901),g=a(29688),m=a(3454);class b extends n.A{constructor(){super(...arguments),(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 c.Vz,0}sendAVPacket(e){let t=0,a=this.lastDts||(r.f[17](e+16)!==g.Dh?r.f[17](e+16):r.f[17](e+8)),s=(0,o.s3)(r.f[20](e+24),r.f[15](e+28)).slice(),i=!1,n=!!this.cache;for(n&&(s=(0,h.A)(Uint8Array,[this.cache,s]),this.cache=null);t<s.length;){const o=s[t]<<4|s[t+1]>>4&14;if(4094!==o){let e=t+1;for(;e<s.length-1;e++)if(4094==(s[e]<<4|s[e+1]>>4&14)){t=e;break}if(e<s.length-1)continue;return d.z3(`found syncWord not 0xFFE, got: 0x${o.toString(16)}`,"packages/avformat/src/bsf/mp3/Mp32RawFilter.ts",112),f.LR}const h=s[1]>>>3&3,l=(12&s[2])>>>2,p={dts:a,buffer:null,extradata:null,duration:g.N_,pos:r.f[17](e+56)},b=m.Y2(h,l);c.qg(this.frameHeader,s[t]<<24|s[t+1]<<16|s[t+2]<<8|s[t+3]);let x=c.CM(this.frameHeader,b);if(p.buffer=s.subarray(t,t+x),t+x>s.length){this.cache=s.subarray(t),this.lastDts=a;break}const y=(0,u.k)(BigInt(Math.floor(x/b*g.SF)),g.KR,this.inTimeBase);p.duration=Number(y),this.caches.push(p),t+=x,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,l.Up)(e);const t=this.caches.shift(),a=(0,p.sY)(t.buffer.length);return(0,o.lW)(a,t.buffer.length,t.buffer),(0,l.NX)(e,a,t.buffer.length),i.M[17](e+16,t.dts),i.M[17](e+8,t.dts),i.M[17](e+56,t.pos),i.M[17](e+48,BigInt(Math.floor(t.duration))),i.M[15](e+36,1|r.f[15](e+36)),0}return f.LT}reset(){return this.cache=null,this.lastDts=BigInt(0),this.caches.length=0,0}}},43963:(e,t,a)=>{a.d(t,{Bq:()=>f,En:()=>o,Ij:()=>h,XC:()=>d,f7:()=>l,hY:()=>c,uF:()=>i});var s=a(29688),r=a(54809);const i={1:"Main",2:"LC",3:"SSR",4:"LTP",5:"HE",6:"SCALABLE",29:"HEv2",23:"LD",39:"ELD"},n={96e3:0,88200:1,64e3:2,48e3:3,44100:4,32e3:5,24e3:6,22050:7,16e3:8,12e3:9,11025:10,8e3:11,7350:12},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}},44962:(e,t,a)=>{a.d(t,{Cd:()=>o,I4:()=>h,am:()=>n,kJ:()=>d,pi:()=>c,xf:()=>f});var s=a(19371),r=a(29688);class i{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 n{constructor(){(0,s.A)(this,"pos",r.Dh),(0,s.A)(this,"payloadUnitStartIndicator",0),(0,s.A)(this,"transportPriority",0),(0,s.A)(this,"pid",r.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 i),(0,s.A)(this,"payload",null)}}class c{constructor(){(0,s.A)(this,"slices",[]),(0,s.A)(this,"totalLength",0),(0,s.A)(this,"expectedLength",r.N_),(0,s.A)(this,"randomAccessIndicator",0),(0,s.A)(this,"pid",r.N_),(0,s.A)(this,"streamType",0),(0,s.A)(this,"pos",r.Dh)}}class o{constructor(){(0,s.A)(this,"versionNumber",0),(0,s.A)(this,"networkPid",r.N_),(0,s.A)(this,"program2PmtPid",new Map)}}class d{constructor(){(0,s.A)(this,"tag",void 0),(0,s.A)(this,"buffer",void 0)}}class h{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 Map),(0,s.A)(this,"pid2ESDescriptor",new Map)}}class f{constructor(){(0,s.A)(this,"pid",r.N_),(0,s.A)(this,"streamType",0),(0,s.A)(this,"streamId",r.N_),(0,s.A)(this,"dts",r.Dh),(0,s.A)(this,"pts",r.Dh),(0,s.A)(this,"pos",r.Dh),(0,s.A)(this,"payload",null),(0,s.A)(this,"data",null),(0,s.A)(this,"randomAccessIndicator",0),(0,s.A)(this,"flags",void 0)}}},47216:(e,t,a)=>{a.d(t,{A:()=>b});var s=a(19371),r=a(56238),i=a(6927),n=a(2843),c=a(80209),o=a(84777),d=a(34117),h=a(18528),f=a(35924),l=a(46564),p=a(46626),u=a(98901),g=a(29688),m=a(91665);class b extends n.A{constructor(){super(...arguments),(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)!==g.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,h.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=m.R(s.subarray(t));if(o.ai(c)){let e=t+1;for(;e<s.length-3;e++){const a=s[e]<<24|s[e+1]<<16|s[e+2]<<8|s[e+3];if(2147385345===a||4269736320===a){t=e;break}}if(e<s.length-3)continue;return d.z3("parse dts header failed","packages/avformat/src/bsf/dts/Dts2RawFilter.ts",115),f.LR}const h={dts:a,buffer:null,duration:g.N_,pos:r.f[17](e+56)};let l=c.frameSize;if(h.buffer=s.subarray(t,t+l),t+l>s.length)return this.cache=s.subarray(t),this.lastDts=a,0;const p=(0,u.k)(BigInt(Math.floor(c.sampleBlock*m.u/c.sampleRate*g.SF)),g.KR,this.inTimeBase);h.duration=Number(p),this.caches.push(h),t+=l,a+=p,!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,l.Up)(e);const t=this.caches.shift(),a=(0,p.sY)(t.buffer.length);return(0,c.lW)(a,t.buffer.length,t.buffer),(0,l.NX)(e,a,t.buffer.length),i.M[17](e+16,t.dts),i.M[17](e+8,t.dts),i.M[17](e+56,t.pos),i.M[17](e+48,BigInt(Math.floor(t.duration))),i.M[15](e+36,1|r.f[15](e+36)),0}return f.LT}reset(){return this.cache=null,this.lastDts=BigInt(0),this.caches.length=0,0}}},47247:(e,t,a)=>{a.d(t,{A:()=>c});var s=a(35924),r=a(29688),i=a(34117);const n="packages/avformat/src/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=r.Dh,f=r.Dh;for(;;){if(6+d>=t.length)return s.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 i.z3("invalid data",n,120),s.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 i.z3("Malformed PES: PES_packet_length < 3 + PES_header_data_length",n,132),s.LR;p=c-(d+o),l+(t.byteLength-l)!=c+6&&(i.R8("PES packet size mismatch",n,137),e.flags|=2)}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}},53691:(e,t,a)=>{a.d(t,{V:()=>s});const s=1e5},56901:(e,t,a)=>{a.d(t,{R:()=>p,j:()=>r});var s=a(54809);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}},57430:(e,t,a)=>{a.d(t,{d:()=>n});var s=a(83796),r=a(29688),i=a(98901);function n(e,t,a){let n=BigInt(0);return s.__(e,(e=>{n+=e.codecpar.bitrate*(0,i.k)(t,a,r.i0)/BigInt(8e3)})),n}},83172:(e,t,a)=>{a.d(t,{A:()=>b});var s=a(19371),r=a(56238),i=a(6927),n=a(2843),c=a(80209),o=a(84777),d=a(34117),h=a(18528),f=a(35924),l=a(46564),p=a(46626),u=a(98901),g=a(29688),m=a(56901);class b extends n.A{constructor(){super(...arguments),(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)!==g.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,h.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=m.R(s.subarray(t));if(o.ai(c)){let e=t+1;for(;e<s.length-1;e++)if(2935==(s[e]<<8|s[e+1])){t=e;break}if(e<s.length-1)continue;return d.z3("parse ac3 header failed","packages/avformat/src/bsf/ac3/Ac32RawFilter.ts",115),f.LR}const h={dts:a,buffer:null,duration:g.N_,pos:r.f[17](e+56)};let l=c.frameSize;if(h.buffer=s.subarray(t,t+l),t+l>s.length)return this.cache=s.subarray(t),this.lastDts=a,0;const p=(0,u.k)(BigInt(1536/c.sampleRate*g.SF),g.KR,this.inTimeBase);h.duration=Number(p),this.caches.push(h),t+=l,a+=p,!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,l.Up)(e);const t=this.caches.shift(),a=(0,p.sY)(t.buffer.length);return(0,c.lW)(a,t.buffer.length,t.buffer),(0,l.NX)(e,a,t.buffer.length),i.M[17](e+16,t.dts),i.M[17](e+8,t.dts),i.M[17](e+56,t.pos),i.M[17](e+48,BigInt(Math.floor(t.duration))),i.M[15](e+36,1|r.f[15](e+36)),0}return f.LT}reset(){return this.cache=null,this.lastDts=BigInt(0),this.caches.length=0,0}}},85719:(e,t,a)=>{a.d(t,{A:()=>y});var s=a(19371),r=a(56238),i=a(6927),n=a(92113),c=a(49103),o=a(2843),d=a(80209),h=a(84777),f=a(34117),l=a(18528),p=a(35924),u=a(46564),g=a(46626),m=a(98901),b=a(29688),x=a(43963);class y extends o.A{constructor(){super(...arguments),(0,s.A)(this,"streamMuxConfig",void 0),(0,s.A)(this,"caches",void 0),(0,s.A)(this,"pendingItem",void 0)}init(e,t){return super.init(e,t),this.caches=[],this.streamMuxConfig={profile:b.N_,sampleRate:b.N_,channels:b.N_},0}sendAVPacket(e){let t=0,a=r.f[17](e+16)!==b.Dh?r.f[17](e+16):r.f[17](e+8),s=(0,d.s3)(r.f[20](e+24),r.f[15](e+28)).slice();for(this.pendingItem&&(this.pendingItem.buffer=(0,l.A)(Uint8Array,[this.pendingItem.buffer,s.subarray(0,this.pendingItem.miss)]),s=s.subarray(this.pendingItem.miss),this.caches.push(this.pendingItem),this.pendingItem=null);t<s.length;){const o=x.Bq(s.subarray(t));if(h.ai(o)){let e=t+1;for(;e<s.length-1;e++)if(4095==(s[e]<<4|s[e+1]>>4)){t=e;break}if(e<s.length-1)continue;return f.z3("AACADTSParser parse failed","packages/avformat/src/bsf/aac/ADTS2RawFilter.ts",127),p.LR}const l={dts:a,buffer:null,extradata:null,duration:b.N_,pos:r.f[17](e+56)};l.buffer=s.subarray(t+o.headerLength,t+o.headerLength+o.framePayloadLength),this.streamMuxConfig.profile=o.profile,this.streamMuxConfig.sampleRate=o.sampleRate,this.streamMuxConfig.channels=o.channels;const u=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,y=(0,m.k)(BigInt(Math.floor(1024*(o.numberOfRawDataBlocksInFrame+1)/this.streamMuxConfig.sampleRate*b.SF)),b.KR,this.inTimeBase);if(l.duration=Number(y),u){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=x.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),l.extradata=e}l.buffer.length<o.framePayloadLength?this.pendingItem={...l,miss:o.framePayloadLength-l.buffer.length}:this.caches.push(l),t+=o.aacFrameLength,a+=y}return 0}receiveAVPacket(e){if(this.caches.length){(0,u.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,u.NX)(e,a,t.buffer.length),i.M[17](e+16,t.dts),i.M[17](e+8,t.dts),i.M[17](e+56,t.pos),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,u.Ow)(e,1,a,t.extradata.length)}return 0}return p.LT}reset(){return this.pendingItem=null,this.caches.length=0,0}}},91665:(e,t,a)=>{a.d(t,{R:()=>d,u:()=>o});var s=a(34110),r=a(54809);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 r.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,s.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)}},97147:(e,t,a)=>{a.d(t,{CM:()=>c,Vz:()=>i,qg:()=>n});var s=a(19371),r=a(3454);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}}}]);
|
package/dist/esm/881.avplayer.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const __webpack_esm_id__=881;export const __webpack_esm_ids__=[881];export const __webpack_esm_modules__={15797:(t,i,e)=>{e.d(i,{A:()=>h});var s=e(19371),r=e(34117),n=e(41662);const a="packages/common/src/io/IOReaderSync.ts";class h{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1048576,i=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],e=arguments.length>2?arguments[2]:void 0;if((0,s.A)(this,"data",void 0),(0,s.A)(this,"buffer",void 0),(0,s.A)(this,"pointer",void 0),(0,s.A)(this,"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(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,i="";for(let e=0;e<t;e++){const t=this.readUint8().toString(16);i+=1===t.length?"0"+t:t}return i}peekHex(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]: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(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;const i=this.readBuffer(t);return n.decode(i)}peekString(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]: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(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]: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){let i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(!(arguments.length>1&&void 0!==arguments[1]&&arguments[1])){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 e=this.onSeek(t);0!==e&&(this.error=e,r.h2("IOReader error, seek failed",a,799)),i&&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}isBigEndian(){return!this.littleEndian}fileSize(){if(this.fileSize_)return this.fileSize_;if(!this.onSize)return r.R8("IOReader error, fileSize failed because of no onSize callback",a,880),BigInt(0);try{this.fileSize_=this.onSize()}catch(t){r.R8(`IOReader error, call fileSize failed: ${t}`,a,887),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)}}}}},34696:(t,i,e)=>{e.d(i,{A:()=>l});var s=e(56238),r=e(57430),n=e(35924),a=e(46564),h=e(98901),o=e(29688),d=e(34117);const g="packages/avformat/src/function/seekInBytes.ts";async function l(t,i,e,l,p,u){const c=t.ioReader.getPos(),f=await t.ioReader.fileSize();let m=o.Dh,b=e;i.startTime!==o.Dh?b-=i.startTime:b-=i.firstDTS;const w=(0,h.k)(e,i.timeBase,o.i0);if(w<BigInt(1e4))return d.Yz(`seek pts is earlier then 10s, seek to first packet pos(${l}) directly`,g,78),await t.ioReader.seek(l),c;let I=(0,r.d)(t.streams,b,i.timeBase);const v=f-(0,r.d)(t.streams,BigInt(1e4),o.i0),k=(0,r.d)(t.streams,BigInt(1e4),o.i0);if(I>v&&(I=v),I<l)return await t.ioReader.seek(l),c;const S=(0,a._5)();let B=f,y=BigInt(0);t:for(;B-y<k&&(I=y),await t.ioReader.seek(I),await u(t),!(8&t.ioReader.flags);){let e=await p(t,S),r=s.f[17](S+56);if(!(e>=0)){m=o.Dh;break}{const n=(0,h.Mr)(s.f[17](S+8),S+72,o.i0);let l=n-w;if(d.Yz(`try to seek to pos: ${I}, got packet pts: ${s.f[17](S+8)}(${n}ms), diff: ${l}ms`,g,115),l<=BigInt(0)&&-l<BigInt(1e4)||B-y<k){const n=[r];for(;l<=0;){if(s.f[15](S+32)===i.index&&1&s.f[15](S+36)&&n.push(r),(0,a.Up)(S),e=await p(t,S),e<0){if(-1048576===e)break;if(-1048575===e)continue;m=o.Dh;break t}r=s.f[17](S+56),l=(0,h.Mr)(s.f[17](S+8),S+72,o.i0)-w}m=n.pop();break}l>BigInt(0)?(B=I,I=y+B>>BigInt(1)):(y=I,I=y+B>>BigInt(1))}if(8&t.ioReader.flags)break}return(0,a.Qe)(S),m!==o.Dh?(d.Yz(`finally seek to pos ${m}`,g,170),await t.ioReader.seek(m),await u(t),c):(await t.ioReader.seek(c),8&t.ioReader.flags?BigInt(n.LT):BigInt(n.E$))}},35734:(t,i,e)=>{e.d(i,{A:()=>r});var s=e(19371);class r{constructor(){(0,s.A)(this,"type",-1),(0,s.A)(this,"onStreamAdd",void 0)}async destroy(t){}}},49095:(t,i,e)=>{e.d(i,{GM:()=>o,mS:()=>h,ol:()=>a});var s=e(19371),r=e(73978);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(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"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(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"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){}}},57430:(t,i,e)=>{e.d(i,{d:()=>a});var s=e(83796),r=e(29688),n=e(98901);function a(t,i,e){let a=BigInt(0);return s.__(t,(t=>{a+=t.codecpar.bitrate*(0,n.k)(i,e,r.i0)/BigInt(8e3)})),a}},62881:(t,i,e)=>{e.r(i),e.d(i,{default:()=>y});var s=e(19371),r=e(56238),n=e(6927),a=e(73978),h=e(81863),o=e(49095),d=e(35734),g=e(34696),l=e(80209),p=e(25979),u=e(35924),c=e(46564),f=e(46626),m=e(98901),b=e(29688),w=e(83446),I=e(34117),v=e(18528),k=e(15797),S=e(74817);const B="packages/avformat/src/formats/IOggFormat.ts";class y extends d.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(w.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,o.ol)(t.comments.list,i.metadata)}async createStream(t,i){if(i.length<8)return 0;let e=new k.A(i.length,!1);e.appendBuffer(i);const s=e.peekString(8);if("OpusHead"===s){const s=new h.q;s.read(e);const r=t.createStream();r.codecpar.codecType=1,r.codecpar.codecId=86076,r.codecpar.sampleRate=s.sampleRate,r.codecpar.chLayout.nbChannels=s.channels,r.timeBase.den=r.codecpar.sampleRate,r.timeBase.num=1,r.codecpar.extradata=(0,f.sY)(i.length),r.codecpar.extradataSize=i.length,r.codecpar.initialPadding=s.preSkip,(0,l.lW)(r.codecpar.extradata,i.length,i);const n=new h.o;i=await this.getNextSegment(t),e=new k.A(i.length,!1),e.appendBuffer(i),n.read(e),this.headerPagesPayload=[s,n],r.privData={serialNumber:this.page.serialNumber},this.addComment(n,r),r.duration=await this.estimateTotalBlock(t)}else if("vorbis"===s.slice(1,7)){const s=[i],r=new o.mS;r.read(e);const n=new o.GM;i=await this.getNextSegment(t),e=new k.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),d=(0,f.sY)(h),g=new S.A(h,!0,new p.A(d,h));s.forEach((t=>{g.writeUint16(t.length),g.writeBuffer(t)})),a.codecpar.extradata=d,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 u.LR;{const s=t.createStream();s.codecpar.codecType=1,s.codecpar.codecId=86028;const n=(0,f.sY)(r);e.peekBuffer(r,(0,l.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 k.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,f.sY)(i.length);(0,l.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 k.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 I.z3("the file format is not oggs",B,402),u.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 I.z3(i.message,B,424),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,v.A)(Uint8Array,h),d=o.length,g=(0,f.sY)(d);return(0,l.lW)(g,d,o),(0,c.NX)(i,g,d),0}catch(i){return-1048576!==t.ioReader.error&&-1048572!==t.ioReader.error?(I.z3(`read packet error, ${i}`,B,495),u.LR):t.ioReader.error}}async syncPage(t){let i=b.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!==b.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(u.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,m.k)(e,i.timeBase,b.i0)<BigInt(1e4)?(I.Yz(`seek pts is earlier then 10s, seek to first packet pos(${this.firstPos}) directly`,B,587),await t.ioReader.seek(this.firstPos),this.currentPts=BigInt(0),r):(0,g.A)(t,i,e,this.firstPos,this.readAVPacket.bind(this),this.syncPage.bind(this))}getAnalyzeStreamsCount(){return 1}}},73978:(t,i,e)=>{e.d(i,{B:()=>h,h:()=>o});var s=e(19371),r=e(29688),n=e(41662);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="libmedia-v1.2.0-1-gacdaef2e",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){}}},74817:(t,i,e)=>{e.d(i,{A:()=>n});var s=e(19371),r=e(41662);class n{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1048576,i=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],e=arguments.length>2?arguments[2]:void 0;if((0,s.A)(this,"data",void 0),(0,s.A)(this,"buffer",void 0),(0,s.A)(this,"pointer",void 0),(0,s.A)(this,"pos",void 0),(0,s.A)(this,"size",void 0),(0,s.A)(this,"littleEndian",void 0),(0,s.A)(this,"error",void 0),(0,s.A)(this,"onFlush",void 0),(0,s.A)(this,"onSeek",void 0),this.pointer=0,this.pos=BigInt(0),this.size=t,this.littleEndian=!i,this.error=0,e&&e.view)this.size=e.length,this.buffer=e,this.data=e.view;else if(e&&!e.byteOffset)this.size=e.length,this.buffer=e,this.data=new DataView(this.buffer.buffer);else{if(e)throw new Error("not support subarray of ArrayBuffer");this.buffer=new Uint8Array(this.size),this.data=new DataView(this.buffer.buffer)}}writeUint8(t){this.remainingLength()<1&&this.flush(),this.data.setUint8(this.pointer,t),this.pointer++,this.pos++}writeUint16(t){this.remainingLength()<2&&this.flush(),this.data.setUint16(this.pointer,t,this.littleEndian),this.pointer+=2,this.pos+=BigInt(2)}writeUint24(t){this.remainingLength()<3&&this.flush();const i=(16711680&t)>>16,e=(65280&t)>>8,s=255&t;this.littleEndian?(this.writeUint8(s),this.writeUint8(e),this.writeUint8(i)):(this.writeUint8(i),this.writeUint8(e),this.writeUint8(s))}writeUint32(t){this.remainingLength()<4&&this.flush(),this.data.setUint32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeUint64(t){this.remainingLength()<8&&this.flush(),this.data.setBigUint64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}writeInt8(t){this.remainingLength()<1&&this.flush(),this.data.setInt8(this.pointer,t),this.pointer++,this.pos++}writeInt16(t){this.remainingLength()<2&&this.flush(),this.data.setInt16(this.pointer,t,this.littleEndian),this.pointer+=2,this.pos+=BigInt(2)}writeInt24(t){this.writeUint24(t<0?t+16777216:t)}writeInt32(t){this.remainingLength()<4&&this.flush(),this.data.setInt32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeInt64(t){this.remainingLength()<8&&this.flush(),this.data.setBigInt64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}writeFloat(t){this.remainingLength()<4&&this.flush(),this.data.setFloat32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeDouble(t){this.remainingLength()<8&&this.flush(),this.data.setFloat64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}getPointer(){return this.pointer}getPos(){return this.pos}remainingLength(){return this.size-this.pointer}writeBuffer(t){if(!t.length)return;let i=t.length;if(this.remainingLength()<i){let e=0;for(;i>0;){this.flush();const s=Math.min(this.size,i);this.buffer.set(t.subarray(e,e+s),this.pointer),this.pointer+=s,this.pos+=BigInt(s),e+=s,i-=s}}else this.buffer.set(t,this.pointer),this.pointer+=i,this.pos+=BigInt(i)}writeString(t){const i=r.encode(t);return this.writeBuffer(i),i.length}flush(){if(!this.onFlush)throw this.error=-1048574,Error("IOWriter error, flush failed because of no flush callback");if(this.pointer){const t=this.onFlush(this.buffer.subarray(0,this.pointer));if(0!==t)throw this.error=t,Error("IOWriter error, flush failed")}this.pointer=0}flushToPos(t){if(!this.onFlush)throw this.error=-1048574,Error("IOWriter error, flush failed because of no flush callback");if(this.pointer){const i=this.onFlush(this.buffer.subarray(0,this.pointer),t);if(0!==i)throw this.error=i,Error("IOWriter error, flush failed")}this.pointer=0}seek(t){if(!this.onSeek)throw this.error=-1048574,Error("IOWriter error, seek failed because of no seek callback");this.flush();const i=this.onSeek(t);if(0!==i)throw this.error=i,Error("IOWriter error, seek failed");this.pos=t}seekInline(t){const i=this.pointer;this.pointer=Math.max(0,Math.min(this.size,t)),this.pos+=BigInt(this.pointer-i)}skip(t){const i=this.pointer;this.pointer=Math.min(this.size,this.pointer+t),this.pos+=BigInt(this.pointer-i)}back(t){const i=this.pointer;this.pointer=Math.max(0,this.pointer-t),this.pos+=BigInt(this.pointer-i)}getBuffer(){return this.buffer.subarray(0,this.pointer)}setEndian(t){this.littleEndian=!t}reset(){this.pointer=0,this.pos=BigInt(0),this.error=0}getBufferSize(){return this.size}}},81863:(t,i,e)=>{e.d(i,{o:()=>h,q:()=>a});var s=e(19371),r=e(73978);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){}}}};
|
|
1
|
+
"use strict";(self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[881],{15797:(t,i,e)=>{e.d(i,{A:()=>h});var s=e(19371),r=e(34117),n=e(41662);const a="packages/common/src/io/IOReaderSync.ts";class h{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1048576,i=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],e=arguments.length>2?arguments[2]:void 0;if((0,s.A)(this,"data",void 0),(0,s.A)(this,"buffer",void 0),(0,s.A)(this,"pointer",void 0),(0,s.A)(this,"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(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,i="";for(let e=0;e<t;e++){const t=this.readUint8().toString(16);i+=1===t.length?"0"+t:t}return i}peekHex(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]: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(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;const i=this.readBuffer(t);return n.decode(i)}peekString(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]: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(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]: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){let i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(!(arguments.length>1&&void 0!==arguments[1]&&arguments[1])){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 e=this.onSeek(t);0!==e&&(this.error=e,r.h2("IOReader error, seek failed",a,799)),i&&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}isBigEndian(){return!this.littleEndian}fileSize(){if(this.fileSize_)return this.fileSize_;if(!this.onSize)return r.R8("IOReader error, fileSize failed because of no onSize callback",a,880),BigInt(0);try{this.fileSize_=this.onSize()}catch(t){r.R8(`IOReader error, call fileSize failed: ${t}`,a,887),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)}}}}},34696:(t,i,e)=>{e.d(i,{A:()=>l});var s=e(56238),r=e(57430),n=e(35924),a=e(46564),h=e(98901),o=e(29688),d=e(34117);const g="packages/avformat/src/function/seekInBytes.ts";async function l(t,i,e,l,p,u){const c=t.ioReader.getPos(),f=await t.ioReader.fileSize();let m=o.Dh,b=e;i.startTime!==o.Dh?b-=i.startTime:b-=i.firstDTS;const w=(0,h.k)(e,i.timeBase,o.i0);if(w<BigInt(1e4))return d.Yz(`seek pts is earlier then 10s, seek to first packet pos(${l}) directly`,g,78),await t.ioReader.seek(l),c;let I=(0,r.d)(t.streams,b,i.timeBase);const k=f-(0,r.d)(t.streams,BigInt(1e4),o.i0),v=(0,r.d)(t.streams,BigInt(1e4),o.i0);if(I>k&&(I=k),I<l)return await t.ioReader.seek(l),c;const S=(0,a._5)();let B=f,y=BigInt(0);t:for(;B-y<v&&(I=y),await t.ioReader.seek(I),await u(t),!(8&t.ioReader.flags);){let e=await p(t,S),r=s.f[17](S+56);if(!(e>=0)){m=o.Dh;break}{const n=(0,h.Mr)(s.f[17](S+8),S+72,o.i0);let l=n-w;if(d.Yz(`try to seek to pos: ${I}, got packet pts: ${s.f[17](S+8)}(${n}ms), diff: ${l}ms`,g,115),l<=BigInt(0)&&-l<BigInt(1e4)||B-y<v){const n=[r];for(;l<=0;){if(s.f[15](S+32)===i.index&&1&s.f[15](S+36)&&n.push(r),(0,a.Up)(S),e=await p(t,S),e<0){if(-1048576===e)break;if(-1048575===e)continue;m=o.Dh;break t}r=s.f[17](S+56),l=(0,h.Mr)(s.f[17](S+8),S+72,o.i0)-w}m=n.pop();break}l>BigInt(0)?(B=I,I=y+B>>BigInt(1)):(y=I,I=y+B>>BigInt(1))}if(8&t.ioReader.flags)break}return(0,a.Qe)(S),m!==o.Dh?(d.Yz(`finally seek to pos ${m}`,g,170),await t.ioReader.seek(m),await u(t),c):(await t.ioReader.seek(c),8&t.ioReader.flags?BigInt(n.LT):BigInt(n.E$))}},35734:(t,i,e)=>{e.d(i,{A:()=>r});var s=e(19371);class r{constructor(){(0,s.A)(this,"type",-1),(0,s.A)(this,"onStreamAdd",void 0)}async destroy(t){}}},49095:(t,i,e)=>{e.d(i,{GM:()=>o,mS:()=>h,ol:()=>a});var s=e(19371),r=e(73978);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(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"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(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"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){}}},57430:(t,i,e)=>{e.d(i,{d:()=>a});var s=e(83796),r=e(29688),n=e(98901);function a(t,i,e){let a=BigInt(0);return s.__(t,(t=>{a+=t.codecpar.bitrate*(0,n.k)(i,e,r.i0)/BigInt(8e3)})),a}},62881:(t,i,e)=>{e.r(i),e.d(i,{default:()=>y});var s=e(19371),r=e(56238),n=e(6927),a=e(73978),h=e(81863),o=e(49095),d=e(35734),g=e(34696),l=e(80209),p=e(25979),u=e(35924),c=e(46564),f=e(46626),m=e(98901),b=e(29688),w=e(83446),I=e(34117),k=e(18528),v=e(15797),S=e(74817);const B="packages/avformat/src/formats/IOggFormat.ts";class y extends d.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(w.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,o.ol)(t.comments.list,i.metadata)}async createStream(t,i){if(i.length<8)return 0;let e=new v.A(i.length,!1);e.appendBuffer(i);const s=e.peekString(8);if("OpusHead"===s){const s=new h.q;s.read(e);const r=t.createStream();r.codecpar.codecType=1,r.codecpar.codecId=86076,r.codecpar.sampleRate=s.sampleRate,r.codecpar.chLayout.nbChannels=s.channels,r.timeBase.den=r.codecpar.sampleRate,r.timeBase.num=1,r.codecpar.extradata=(0,f.sY)(i.length),r.codecpar.extradataSize=i.length,r.codecpar.initialPadding=s.preSkip,(0,l.lW)(r.codecpar.extradata,i.length,i);const n=new h.o;i=await this.getNextSegment(t),e=new v.A(i.length,!1),e.appendBuffer(i),n.read(e),this.headerPagesPayload=[s,n],r.privData={serialNumber:this.page.serialNumber},this.addComment(n,r),r.duration=await this.estimateTotalBlock(t)}else if("vorbis"===s.slice(1,7)){const s=[i],r=new o.mS;r.read(e);const n=new o.GM;i=await this.getNextSegment(t),e=new v.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),d=(0,f.sY)(h),g=new S.A(h,!0,new p.A(d,h));s.forEach((t=>{g.writeUint16(t.length),g.writeBuffer(t)})),a.codecpar.extradata=d,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 u.LR;{const s=t.createStream();s.codecpar.codecType=1,s.codecpar.codecId=86028;const n=(0,f.sY)(r);e.peekBuffer(r,(0,l.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 v.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,f.sY)(i.length);(0,l.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 v.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 I.z3("the file format is not oggs",B,402),u.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 I.z3(i.message,B,424),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,k.A)(Uint8Array,h),d=o.length,g=(0,f.sY)(d);return(0,l.lW)(g,d,o),(0,c.NX)(i,g,d),0}catch(i){return-1048576!==t.ioReader.error&&-1048572!==t.ioReader.error?(I.z3(`read packet error, ${i}`,B,495),u.LR):t.ioReader.error}}async syncPage(t){let i=b.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!==b.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(u.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,m.k)(e,i.timeBase,b.i0)<BigInt(1e4)?(I.Yz(`seek pts is earlier then 10s, seek to first packet pos(${this.firstPos}) directly`,B,587),await t.ioReader.seek(this.firstPos),this.currentPts=BigInt(0),r):(0,g.A)(t,i,e,this.firstPos,this.readAVPacket.bind(this),this.syncPage.bind(this))}getAnalyzeStreamsCount(){return 1}}},73978:(t,i,e)=>{e.d(i,{B:()=>h,h:()=>o});var s=e(19371),r=e(29688),n=e(41662);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="libmedia-v1.3.0",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){}}},74817:(t,i,e)=>{e.d(i,{A:()=>n});var s=e(19371),r=e(41662);class n{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1048576,i=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],e=arguments.length>2?arguments[2]:void 0;if((0,s.A)(this,"data",void 0),(0,s.A)(this,"buffer",void 0),(0,s.A)(this,"pointer",void 0),(0,s.A)(this,"pos",void 0),(0,s.A)(this,"size",void 0),(0,s.A)(this,"littleEndian",void 0),(0,s.A)(this,"error",void 0),(0,s.A)(this,"onFlush",void 0),(0,s.A)(this,"onSeek",void 0),this.pointer=0,this.pos=BigInt(0),this.size=t,this.littleEndian=!i,this.error=0,e&&e.view)this.size=e.length,this.buffer=e,this.data=e.view;else if(e&&!e.byteOffset)this.size=e.length,this.buffer=e,this.data=new DataView(this.buffer.buffer);else{if(e)throw new Error("not support subarray of ArrayBuffer");this.buffer=new Uint8Array(this.size),this.data=new DataView(this.buffer.buffer)}}writeUint8(t){this.remainingLength()<1&&this.flush(),this.data.setUint8(this.pointer,t),this.pointer++,this.pos++}writeUint16(t){this.remainingLength()<2&&this.flush(),this.data.setUint16(this.pointer,t,this.littleEndian),this.pointer+=2,this.pos+=BigInt(2)}writeUint24(t){this.remainingLength()<3&&this.flush();const i=(16711680&t)>>16,e=(65280&t)>>8,s=255&t;this.littleEndian?(this.writeUint8(s),this.writeUint8(e),this.writeUint8(i)):(this.writeUint8(i),this.writeUint8(e),this.writeUint8(s))}writeUint32(t){this.remainingLength()<4&&this.flush(),this.data.setUint32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeUint64(t){this.remainingLength()<8&&this.flush(),this.data.setBigUint64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}writeInt8(t){this.remainingLength()<1&&this.flush(),this.data.setInt8(this.pointer,t),this.pointer++,this.pos++}writeInt16(t){this.remainingLength()<2&&this.flush(),this.data.setInt16(this.pointer,t,this.littleEndian),this.pointer+=2,this.pos+=BigInt(2)}writeInt24(t){this.writeUint24(t<0?t+16777216:t)}writeInt32(t){this.remainingLength()<4&&this.flush(),this.data.setInt32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeInt64(t){this.remainingLength()<8&&this.flush(),this.data.setBigInt64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}writeFloat(t){this.remainingLength()<4&&this.flush(),this.data.setFloat32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeDouble(t){this.remainingLength()<8&&this.flush(),this.data.setFloat64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}getPointer(){return this.pointer}getPos(){return this.pos}remainingLength(){return this.size-this.pointer}writeBuffer(t){if(!t.length)return;let i=t.length;if(this.remainingLength()<i){let e=0;for(;i>0;){this.flush();const s=Math.min(this.size,i);this.buffer.set(t.subarray(e,e+s),this.pointer),this.pointer+=s,this.pos+=BigInt(s),e+=s,i-=s}}else this.buffer.set(t,this.pointer),this.pointer+=i,this.pos+=BigInt(i)}writeString(t){const i=r.encode(t);return this.writeBuffer(i),i.length}flush(){if(!this.onFlush)throw this.error=-1048574,Error("IOWriter error, flush failed because of no flush callback");if(this.pointer){const t=this.onFlush(this.buffer.subarray(0,this.pointer));if(0!==t)throw this.error=t,Error("IOWriter error, flush failed")}this.pointer=0}flushToPos(t){if(!this.onFlush)throw this.error=-1048574,Error("IOWriter error, flush failed because of no flush callback");if(this.pointer){const i=this.onFlush(this.buffer.subarray(0,this.pointer),t);if(0!==i)throw this.error=i,Error("IOWriter error, flush failed")}this.pointer=0}seek(t){if(!this.onSeek)throw this.error=-1048574,Error("IOWriter error, seek failed because of no seek callback");this.flush();const i=this.onSeek(t);if(0!==i)throw this.error=i,Error("IOWriter error, seek failed");this.pos=t}seekInline(t){const i=this.pointer;this.pointer=Math.max(0,Math.min(this.size,t)),this.pos+=BigInt(this.pointer-i)}skip(t){const i=this.pointer;this.pointer=Math.min(this.size,this.pointer+t),this.pos+=BigInt(this.pointer-i)}back(t){const i=this.pointer;this.pointer=Math.max(0,this.pointer-t),this.pos+=BigInt(this.pointer-i)}getBuffer(){return this.buffer.subarray(0,this.pointer)}setEndian(t){this.littleEndian=!t}reset(){this.pointer=0,this.pos=BigInt(0),this.error=0}getBufferSize(){return this.size}}},81863:(t,i,e)=>{e.d(i,{o:()=>h,q:()=>a});var s=e(19371),r=e(73978);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){}}}}]);
|
package/dist/esm/931.avplayer.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const __webpack_esm_id__=931;export const __webpack_esm_ids__=[931];export const __webpack_esm_modules__={205:(t,i,e)=>{e.d(i,{A:()=>y});var s=e(19371),r=e(11705),n=e(68849),a=e(91622),h=e(59483),o=e(84777),f=e(83796),l=e(34117),u=e(44905),d=e(56289),p=e(70704),c=e(99248),w=e(11544),g=e(77160);const b="packages/avprotocol/src/rtmp/RtmpSession.ts";class y{constructor(t,i,e){(0,s.A)(this,"ioReader",void 0),(0,s.A)(this,"ioWriter",void 0),(0,s.A)(this,"prevReadPacket",void 0),(0,s.A)(this,"prevWritePacket",void 0),(0,s.A)(this,"inChunkSize",void 0),(0,s.A)(this,"outChunkSize",void 0),(0,s.A)(this,"seq",void 0),(0,s.A)(this,"bufferWriter",void 0),(0,s.A)(this,"bufferReader",void 0),(0,s.A)(this,"requestMap",void 0),(0,s.A)(this,"state",void 0),(0,s.A)(this,"maxSentUnacked",void 0),(0,s.A)(this,"receiveReportSize",void 0),(0,s.A)(this,"duration",void 0),(0,s.A)(this,"options",void 0),(0,s.A)(this,"streamIdMap",void 0),(0,s.A)(this,"sendAsync",void 0),(0,s.A)(this,"onMediaPacket",void 0),(0,s.A)(this,"onError",void 0),this.ioReader=t,this.ioWriter=i,this.options=e,this.prevReadPacket=new Map,this.prevWritePacket=new Map,this.requestMap=new Map,this.streamIdMap=new Map,this.inChunkSize=128,this.outChunkSize=128,this.seq=0,this.maxSentUnacked=25e5,this.receiveReportSize=1048576,this.sendAsync=new g.an,this.bufferWriter=new c.A(new Uint8Array(1)),this.bufferReader=new p.A(new Uint8Array(1)),this.state=0}async handshake(){const t=(0,u.A)();await this.ioWriter.writeUint8(3),await this.ioWriter.writeUint32(0),await this.ioWriter.writeUint32(0);const i=new Uint8Array(1528);(0,w.A)(i),await this.ioWriter.writeBuffer(i),await this.ioWriter.flush(),await this.ioReader.readUint8();const e=await this.ioReader.readUint32();await this.ioReader.skip(4);const s=await this.ioReader.readBuffer(1528);await this.ioWriter.writeUint32(e),await this.ioWriter.writeUint32((0,u.A)()-t),await this.ioWriter.writeBuffer(s),await this.ioWriter.flush(),await this.ioReader.skip(1536),this.readRtmpPacket()}async sendPacket(t){await g.s2(this.sendAsync),await(0,a.U)(this.ioWriter,this.outChunkSize,t,this.prevWritePacket.get(t.channelId)),this.prevWritePacket.set(t.channelId,t),g.Tl(this.sendAsync)}async readPacket(){const t=await(0,a.w)(this.ioReader,this.inChunkSize,this.prevReadPacket);return this.prevReadPacket.set(t.channelId,t),t}handleChunkSize(t){t.payload.length>=4&&(this.bufferReader.resetBuffer(t.payload),this.inChunkSize=this.bufferReader.readUint32())}handleUserControl(t){t.payload.length>=2&&(this.bufferReader.resetBuffer(t.payload),6===this.bufferReader.readUint16()&&this.sendPong(t,this.bufferReader.readUint32()))}handleSetPeerBW(t){t.payload.length>=4&&(this.bufferReader.resetBuffer(t.payload),this.maxSentUnacked=this.bufferReader.readUint32(),l.Yz(`Max sent, unacked = ${this.maxSentUnacked}`,b,215))}handleWindowSizeACK(t){t.payload.length>=4&&(this.bufferReader.resetBuffer(t.payload),this.receiveReportSize=this.bufferReader.readUint32(),l.Yz(`Window acknowledgement size = ${this.receiveReportSize}`,b,222),this.receiveReportSize>>=1)}async handleInvoke(t){this.bufferReader.resetBuffer(t.payload);const i=BigInt(t.payload.length),e=await h.$x(this.bufferReader,i),s=await h.$x(this.bufferReader,i);if("_result"===e||"_error"===e){if(this.requestMap.has(s)){const t=await h.$x(this.bufferReader,i),r=await h.$x(this.bufferReader,i);"_result"===e?this.requestMap.get(s).resolve({options:t,info:r}):this.requestMap.get(s).reject({options:t,info:r}),this.requestMap.delete(s)}}else if("onStatus"===e){const t=await h.$x(this.bufferReader,i);let e=await h.$x(this.bufferReader,i);if("error"===e.level)l.z3(`Server error: ${e.description}, ${e.code}`,b,258),this.requestMap.has(s)?(this.requestMap.get(s).reject({options:t,info:e}),this.requestMap.delete(s)):this.onError&&this.onError();else{switch(e.code){case"NetStream.Play.Start":case"NetStream.Seek.Notify":this.state=3;break;case"NetStream.Play.Stop":case"NetStream.Play.UnpublishNotify":this.state=8;break;case"NetStream.Publish.Start":this.state=5}this.requestMap.has(s)&&(this.requestMap.get(s).resolve({options:t,info:e}),this.requestMap.delete(s))}}else"onBWDone"===e&&await this.sendCheckBW()}async handleNotify(t){this.bufferReader.resetBuffer(t.payload),"@setDataFrame"===await h.$x(this.bufferReader,BigInt(t.payload.length))&&(t.payload=t.payload.subarray(Number(this.bufferReader.getPos()))),t.payload.length&&this.onMediaPacket&&await this.onMediaPacket(t,this.streamIdMap.get(t.extra))}async readRtmpPacket(){for(;;)try{const t=await this.readPacket();switch(t.type){case 3:default:break;case 1:this.handleChunkSize(t);break;case 4:this.handleUserControl(t);break;case 6:this.handleSetPeerBW(t);break;case 5:this.handleWindowSizeACK(t);break;case 20:await this.handleInvoke(t);break;case 18:await this.handleNotify(t);break;case 22:case 8:case 9:this.onMediaPacket&&await this.onMediaPacket(t,this.streamIdMap.get(t.extra))}}catch(t){break}}async sendPong(t,i){if(t.payload.length<6)return void l.R8(`Too short ping packet (${t.payload.length})`,b,358);const e=new r.u(2,4,t.timestamp+1,6);this.bufferWriter.resetBuffer(e.payload),this.bufferWriter.writeUint16(7),this.bufferWriter.writeUint32(i),this.sendPacket(e)}async sendWindowAckSize(){const t=new r.u(2,5,0,4);this.bufferWriter.resetBuffer(t.payload),this.bufferWriter.writeUint32(this.maxSentUnacked),await this.sendPacket(t)}async sendBufferTime(t){const i=new r.u(2,4,1,10);this.bufferWriter.resetBuffer(i.payload),this.bufferWriter.writeUint16(3),this.bufferWriter.writeUint32(t),this.bufferWriter.writeUint32(this.options.clientBufferTime||3e3),await this.sendPacket(i)}async sendFCSubscribe(t){const i=new r.u(3,20,0,27+t.length);this.bufferWriter.resetBuffer(i.payload),h.bD(this.bufferWriter,"FCSubscribe"),h.bD(this.bufferWriter,++this.seq),h.bD(this.bufferWriter,null),h.bD(this.bufferWriter,t),await this.sendPacket(i)}async sendFCPublish(t){const i=new r.u(3,20,0,25+t.length);this.bufferWriter.resetBuffer(i.payload),h.bD(this.bufferWriter,"FCPublish"),h.bD(this.bufferWriter,++this.seq),h.bD(this.bufferWriter,null),h.bD(this.bufferWriter,t),await this.sendPacket(i)}async sendReleaseStream(t){const i=new r.u(3,20,0,29+t.length);this.bufferWriter.resetBuffer(i.payload),h.bD(this.bufferWriter,"releaseStream"),h.bD(this.bufferWriter,++this.seq),h.bD(this.bufferWriter,null),h.bD(this.bufferWriter,t),await this.sendPacket(i)}async sendCheckBW(){const t=new r.u(3,20,0,21);this.bufferWriter.resetBuffer(t.payload),h.bD(this.bufferWriter,"_checkbw"),h.bD(this.bufferWriter,++this.seq),h.bD(this.bufferWriter,null),await this.sendPacket(t)}async request(t,i){const e=new r.u(3,20,0,4096+n.iD);return this.bufferWriter.resetBuffer(e.payload),h.bD(this.bufferWriter,t),h.bD(this.bufferWriter,++this.seq),f.__(i,(t=>{h.bD(this.bufferWriter,t)})),e.payload=e.payload.subarray(0,this.bufferWriter.getPos()),new Promise(((t,i)=>{this.requestMap.set(this.seq,{resolve:t,reject:i}),this.sendPacket(e)}))}async connect(t,i){await this.request("connect",[{app:t,fourCcList:["hvc1","av01","vp09"],flashVer:"LNX 9,0,124,2",tcUrl:i,fpad:0,capabilities:15,audioCodecs:4071,videoCodecs:252,videoFunction:1}]),this.options.isPull&&await this.sendWindowAckSize()}async createStream(){return(await this.request("createStream",[null])).info}async play(t){const i=await this.createStream();if(this.streamIdMap.set(i,t),!this.options.isLive){const i=await Promise.race([this.request("getStreamLength",[null,t]),new d.A(1)]);o.ai(i)||(this.duration=i.info)}await this.sendFCSubscribe(t),this.request("play",[null,t,-1,-1,!0]),await this.sendBufferTime(i)}async publish(t){await this.sendReleaseStream(t),await this.sendFCPublish(t);const i=await this.createStream();this.streamIdMap.set(i,t),await this.request("publish",[null,t,"live"])}async sendStreamPacket(t,i){let e=0;this.streamIdMap.forEach(((t,s)=>{t===i&&(e=s)})),t.extra=e,await this.sendPacket(t)}async seek(t){const i=new r.u(3,20,0,26);this.bufferWriter.resetBuffer(i.payload),h.bD(this.bufferWriter,"seek"),h.bD(this.bufferWriter,0),h.bD(this.bufferWriter,null),h.bD(this.bufferWriter,t),await this.sendPacket(i)}async pause(t,i){const e=new r.u(3,20,0,29);this.bufferWriter.resetBuffer(e.payload),h.bD(this.bufferWriter,"pause"),h.bD(this.bufferWriter,0),h.bD(this.bufferWriter,null),h.bD(this.bufferWriter,t),h.bD(this.bufferWriter,i),await this.sendPacket(e)}getDuration(){return this.duration}}},8340:(t,i,e)=>{e.d(i,{A:()=>r});var s=e(19371);class r{constructor(){(0,s.A)(this,"signature",void 0),(0,s.A)(this,"version",void 0),(0,s.A)(this,"flags",void 0),(0,s.A)(this,"dataOffset",void 0),(0,s.A)(this,"hasVideo",void 0),(0,s.A)(this,"hasAudio",void 0),this.signature="FLV",this.version=1,this.flags=0,this.dataOffset=9,this.hasAudio=!1,this.hasVideo=!1}async read(t){this.signature=await t.readString(3),this.version=await t.readUint8(),this.flags=await t.readUint8(),this.dataOffset=await t.readUint32(),this.hasAudio=!!(4&this.flags),this.hasVideo=!!(1&this.flags)}write(t){this.flags=0,this.hasAudio&&(this.flags|=4),this.hasVideo&&(this.flags|=1),t.writeString(this.signature),t.writeUint8(this.version),t.writeUint8(this.flags),t.writeUint32(this.dataOffset)}}},11544:(t,i,e)=>{let s;function r(t){s.getRandomValues(t)}e.d(i,{A:()=>r}),"undefined"!=typeof crypto&&(s=crypto)},11705:(t,i,e)=>{e.d(i,{u:()=>r});var s=e(19371);class r{constructor(t,i,e,r){(0,s.A)(this,"channelId",void 0),(0,s.A)(this,"type",void 0),(0,s.A)(this,"timestamp",void 0),(0,s.A)(this,"tsField",0),(0,s.A)(this,"extra",0),(0,s.A)(this,"payload",void 0),this.channelId=t,this.type=i,this.timestamp=e,this.payload=r instanceof Uint8Array?r:new Uint8Array(r)}}},14238:(t,i,e)=>{e.d(i,{M5:()=>n});var s=e(84777);function r(t,i,e){const s=t.getPos(),r=t.getPointer(),n=s-BigInt(Math.floor(r));i<s&&i>=n?(t.seekInline(r+Number(i-s)),t.writeUint24(e),t.seekInline(r)):(t.seek(i),t.writeUint24(e),t.seek(s))}function n(t,i,e,n,a,h){t.flush(),t.writeUint8(i);const o=t.getPos();t.writeUint24(0),t.writeUint24(Number(e&BigInt(16777215))),t.writeUint8(Number(e>>BigInt(24)&BigInt(255))),t.writeUint24(0);const f=t.getPos();n&&n(t),s.Pc(a)?(a(t),r(t,o,Number(t.getPos()-f))):a&&(r(t,o,a.length+Number(t.getPos()-f)),t.writeBuffer(a));const l=Number(t.getPos()-o)+1;h&&h(l),t.writeUint32(l)}},22272:(t,i,e)=>{e.d(i,{A:()=>l});var s=e(19371),r=e(14238),n=e(59483),a=e(35924),h=e(34117),o=e(18528),f=e(74817);class l{constructor(){(0,s.A)(this,"onMetaData",void 0),this.onMetaData={canSeekToEnd:!1}}async read(t,i){const e=t.getPos(),s=e+BigInt(Math.floor(i)),r=await n.$x(t,s),o=await n.$x(t,s);this[r]=o,s>t.getPos()&&await t.skip(Number(BigInt.asIntN(32,s-t.getPos())));const f=Number(t.getPos()-e),l=await t.readUint32();return f+11!==l?(h.R8(`script size not match, size: ${f+11}, previousTagSize: ${l}`,"packages/avformat/src/formats/flv/FlvScriptTag.ts",60),a.LR):0}computeSize(){const t=[],i=new f.A;return i.onFlush=i=>(t.push(i.slice()),0),n.bD(i,"onMetaData"),n.bD(i,this.onMetaData),i.flush(),(0,o.A)(Uint8Array,t).length}write(t){if(this.onMetaData){const i=[],e=new f.A;e.onFlush=t=>(i.push(t.slice()),0),n.bD(e,"onMetaData"),n.bD(e,this.onMetaData),e.flush();const s=(0,o.A)(Uint8Array,i);r.M5(t,18,BigInt(0),void 0,s)}}dts2Position(t){if(this.canSeek()){let i=-1;const e=this.onMetaData.keyframes.times,s=this.onMetaData.keyframes.filepositions;let r;for(r=0;r<e.length;r++){if(e[r]===t){i=r;break}if(e[r]>t){i=Math.max(r-1,0);break}}return r&&r===e.length&&(i=e.length-1),{pos:s[i],dts:e[i]}}return{pos:-1,dts:-1}}position2DTS(t){if(this.canSeek()){let e=-1;const s=this.onMetaData.keyframes.times,r=this.onMetaData.keyframes.filepositions;let n=0;for(n=0;n<r.length;n++)if(r[n]>t){e=n;break}var i;return n===r.length?null!==(i=this.onMetaData.duration)&&void 0!==i?i:s[s.length-1]:s[e]}return-1}canSeek(){return!!(this.onMetaData.keyframes&&this.onMetaData.keyframes.filepositions&&this.onMetaData.keyframes.filepositions.length)}}},29688:(t,i,e)=>{e.d(i,{Dh:()=>r,FQ:()=>u,H3:()=>o,KR:()=>f,N_:()=>n,SF:()=>a,f7:()=>w,go:()=>d,i0:()=>l,pu:()=>g,qs:()=>h,vh:()=>p,zg:()=>c});var s=e(55982);const r=-BigInt(1),n=-1,a=1e6,h=1e3,o=1e9,f=new s.Q({den:a,num:1}),l=new s.Q({den:h,num:1}),u=new s.Q({den:o,num:1}),d=(new s.Q({den:1,num:1}),2147483647),p=BigInt(0x8000000000000000),c=65535,w=4294967295,g=(BigInt(0x10000000000000000),8)},37566:(t,i,e)=>{e.d(i,{A:()=>n});var s=e(19371),r=e(41662);class n{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1048576,i=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],e=arguments.length>2?arguments[2]:void 0;if((0,s.A)(this,"data",void 0),(0,s.A)(this,"buffer",void 0),(0,s.A)(this,"pointer",void 0),(0,s.A)(this,"pos",void 0),(0,s.A)(this,"size",void 0),(0,s.A)(this,"littleEndian",void 0),(0,s.A)(this,"error",void 0),(0,s.A)(this,"onFlush",void 0),(0,s.A)(this,"onSeek",void 0),this.pointer=0,this.pos=BigInt(0),this.size=t,this.littleEndian=!i,this.error=0,e&&e.view)this.size=e.length,this.buffer=e,this.data=e.view;else if(e&&!e.byteOffset)this.size=e.length,this.buffer=e,this.data=new DataView(this.buffer.buffer);else{if(e)throw new Error("not support subarray of ArrayBuffer");this.buffer=new Uint8Array(this.size),this.data=new DataView(this.buffer.buffer)}}async writeUint8(t){this.remainingLength()<1&&await this.flush(),this.data.setUint8(this.pointer,t),this.pointer++,this.pos++}async writeUint16(t){this.remainingLength()<2&&await this.flush(),this.data.setUint16(this.pointer,t,this.littleEndian),this.pointer+=2,this.pos+=BigInt(2)}async writeUint24(t){this.remainingLength()<3&&await this.flush();const i=(16711680&t)>>16,e=(65280&t)>>8,s=255&t;this.littleEndian?(await this.writeUint8(s),await this.writeUint8(e),await this.writeUint8(i)):(await this.writeUint8(i),await this.writeUint8(e),await this.writeUint8(s))}async writeUint32(t){this.remainingLength()<4&&await this.flush(),this.data.setUint32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}async writeUint64(t){this.remainingLength()<8&&await this.flush(),this.data.setBigUint64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}async writeInt8(t){this.remainingLength()<1&&await this.flush(),this.data.setInt8(this.pointer,t),this.pointer++,this.pos++}async writeInt16(t){this.remainingLength()<2&&await this.flush(),this.data.setInt16(this.pointer,t,this.littleEndian),this.pointer+=2,this.pos+=BigInt(2)}async writeInt24(t){await this.writeUint24(t<0?t+16777216:t)}async writeInt32(t){this.remainingLength()<4&&await this.flush(),this.data.setInt32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}async writeInt64(t){this.remainingLength()<8&&await this.flush(),this.data.setBigInt64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}async writeFloat(t){this.remainingLength()<4&&await this.flush(),this.data.setFloat32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}async writeDouble(t){this.remainingLength()<8&&await this.flush(),this.data.setFloat64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}getPointer(){return this.pointer}getPos(){return this.pos}remainingLength(){return this.size-this.pointer}async writeBuffer(t){if(!t.length)return;let i=t.length;if(this.remainingLength()<i){let e=0;for(;i>0;){await this.flush();const s=Math.min(this.size,i);this.buffer.set(t.subarray(e,e+s),this.pointer),this.pointer+=s,this.pos+=BigInt(s),e+=s,i-=s}}else this.buffer.set(t,this.pointer),this.pointer+=i,this.pos+=BigInt(i)}async writeString(t){const i=r.encode(t);return await this.writeBuffer(i),i.length}async flush(){if(!this.onFlush)throw this.error=-1048574,Error("IOWriter error, flush failed because of no flush callback");if(this.pointer){const t=await this.onFlush(this.buffer.subarray(0,this.pointer));if(0!==t)throw this.error=t,Error("IOWriter error, flush failed")}this.pointer=0}async flushToPos(t){if(!this.onFlush)throw this.error=-1048574,Error("IOWriter error, flush failed because of no flush callback");if(this.pointer){const i=await this.onFlush(this.buffer.subarray(0,this.pointer),t);if(0!==i)throw this.error=i,Error("IOWriter error, flush failed")}this.pointer=0}async seek(t){if(!this.onSeek)throw this.error=-1048574,Error("IOWriter error, seek failed because of no seek callback");await this.flush();const i=await this.onSeek(t);if(0!==i)throw this.error=i,Error("IOWriter error, seek failed");this.pos=t}seekInline(t){const i=this.pointer;this.pointer=Math.max(0,Math.min(this.size,t)),this.pos+=BigInt(this.pointer-i)}skip(t){const i=this.pointer;this.pointer=Math.min(this.size,this.pointer+t),this.pos+=BigInt(this.pointer-i)}back(t){const i=this.pointer;this.pointer=Math.max(0,this.pointer-t),this.pos+=BigInt(this.pointer-i)}getBuffer(){return this.buffer.subarray(0,this.pointer)}setEndian(t){this.littleEndian=!t}reset(){this.pointer=0,this.pos=BigInt(0),this.error=0}getBufferSize(){return this.size}}},37766:(t,i,e)=>{e.d(i,{A:()=>n});var s=e(34117);const r="packages/avformat/src/function/mktag.ts";function n(t){4!==t.length&&s.R8(`tag length is not 4, tag: ${t}`,r,31);let i=0;for(let e=0;e<4;e++)i=i<<8|t.charCodeAt(e);return i}},44806:(t,i,e)=>{e.r(i),e.d(i,{default:()=>b});var s=e(19371),r=e(98568),n=e(72034),a=e(87114),h=e(37566),o=e(74817),f=e(70704),l=e(59483),u=e(205),d=e(8340),p=e(22272),c=e(42412),w=e(66484),g=e(54798);class b extends c.A{constructor(){super(...arguments),(0,s.A)(this,"info",void 0),(0,s.A)(this,"socket",void 0),(0,s.A)(this,"session",void 0),(0,s.A)(this,"ioReader",void 0),(0,s.A)(this,"ioWriter",void 0),(0,s.A)(this,"flvWriter",void 0),(0,s.A)(this,"flvHeader",void 0),(0,s.A)(this,"packetQueue",void 0),(0,s.A)(this,"flvHeaderWrote",void 0),(0,s.A)(this,"hasMetadata",void 0),(0,s.A)(this,"bufferReader",void 0)}writeFlvData(t){this.flvWriter.writeUint8(t.type),this.flvWriter.writeUint24(t.payload.length),this.flvWriter.writeUint24(t.timestamp),this.flvWriter.writeUint8(t.timestamp>>24),this.flvWriter.writeUint24(0),this.flvWriter.writeBuffer(t.payload),this.flvWriter.writeUint32(t.payload.length+11),this.flvWriter.flush()}async handleRtmpPacket(t){if(this.flvHeaderWrote)this.writeFlvData(t);else{if(this.packetQueue.push(t),8===t.type)this.flvHeader.hasAudio=!0;else if(9===t.type)this.flvHeader.hasVideo=!0;else if(18===t.type&&(this.bufferReader?this.bufferReader.resetBuffer(t.payload):this.bufferReader=new f.A(t.payload),"onMetaData"===await l.$x(this.bufferReader,BigInt(t.payload.length)))){this.hasMetadata=!0;const i=await l.$x(this.bufferReader,BigInt(t.payload.length));this.flvHeader.hasAudio=(0,n.A)(i.audiocodecid),this.flvHeader.hasVideo=(0,n.A)(i.videocodecid)}if(this.packetQueue.length>10||this.hasMetadata){if(this.flvHeader.write(this.flvWriter),this.flvWriter.writeUint32(0),!this.hasMetadata&&this.session.getDuration()){const t=new p.A;t.onMetaData={duration:this.session.getDuration()},t.write(this.flvWriter)}this.packetQueue.forEach((t=>{this.writeFlvData(t)})),this.packetQueue.length=0,this.flvHeaderWrote=!0}}}async send(t){return this.socket?(await this.socket.send(t),0):-1048574}async open(t){this.info=t,this.status=1,3===t.subProtocol?(this.socket=new g.A(this.options),await this.socket.open({url:t.url,webtransportOptions:t.webtransportOptions})):(this.socket=new w.A(this.options),await this.socket.open({url:t.url})),this.ioReader=new a.A,this.ioReader.onFlush=async t=>this.socket.read(t),this.ioReader.onSeek=async t=>this.socket.seek(t),this.ioReader.onSize=async()=>this.socket.size(),this.ioWriter=new h.A,this.ioWriter.onFlush=async t=>this.socket.write(t),this.ioWriter.onSeek=async t=>this.socket.seek(t),this.flvWriter=new o.A,this.flvWriter.onFlush=t=>(this.readQueue.push(t.slice()),this.consume&&this.consume(),0),this.flvHeader=new d.A,this.packetQueue=[],this.flvHeaderWrote=!1,this.hasMetadata=!1,this.session=new u.A(this.ioReader,this.ioWriter,{isLive:this.options.isLive,isPull:!0}),this.session.onMediaPacket=async(t,i)=>this.handleRtmpPacket(t),this.session.onError=()=>{this.status=3,this.consume&&this.consume()},await this.session.handshake();const i=r.qg(this.info.uri),e=i.pathname.split("/");await this.session.connect(e[1],`rtmp://${i.host}${i.port?":"+i.port:""}/${e[1]}`);const s=e.slice(2);return this.session.play((s.length>1?s.join("/"):s[0])||""),0}async seek(t){return await this.session.seek(Number(t)),0}async size(){return BigInt(0)}async stop(){this.socket&&(await this.socket.stop(),this.socket=null),this.status=4}}},52869:(t,i,e)=>{e.d(i,{A:()=>n});var s=e(84777),r=e(83796);function n(t,i){const e=[];return s.ai(t)&&(t+=""),t&&s.Yj(t)&&r.__(t.split(i),((t,i)=>{(t=t.trim())&&e.push(t)})),e}},55982:(t,i,e)=>{e.d(i,{Q:()=>h});var s,r=e(19371),n=e(54568),a=e(72314);class h{constructor(t){(0,r.A)(this,"num",1),(0,r.A)(this,"den",1),t&&(this.den=t.den,this.num=t.num)}}s=h,(()=>{const t=s.prototype,i=new Map;i.set("num",{0:15,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0}),i.set("den",{0:15,1:0,2:0,3:0,4:0,5:0,6:0,7:4,8:0}),(0,a.A)(t,n.Og,!0),(0,a.A)(t,n.dc,4),(0,a.A)(t,n.g7,8),(0,a.A)(t,n.JY,i)})()},57709:(t,i,e)=>{function s(t,i){for(;0!==i;)[t,i]=[i,t%i];return t}e.d(i,{A:()=>s})},59483:(t,i,e)=>{e.d(i,{$x:()=>h,bD:()=>o});var s=e(84777),r=e(83796),n=e(23902);async function a(t,i){return{key:await t.readString(await t.readUint16()),value:await h(t,i)}}async function h(t,i){let e;switch(await t.readUint8()){case 0:e=await t.readDouble();break;case 1:e=!!await t.readUint8();break;case 2:e=await t.readString(await t.readUint16());break;case 3:for(e={};t.getPos()<i;){const{key:s,value:r}=await a(t,i);if(e[s]=r,9==(16777215&await t.peekUint24())){await t.skip(3);break}}break;case 8:for(e={},await t.skip(4);t.getPos()<i;){const{key:s,value:r}=await a(t,i);if(e[s]=r,9==(16777215&await t.peekUint24())){await t.skip(3);break}}break;case 9:case 5:e=null;break;case 10:e=[];const s=await t.readUint32();for(let r=0;r<s;r++)e.push(await h(t,i));break;case 11:const r=await t.readDouble(),n=await t.readInt16();e=new Date(r+60*n*1e3);break;case 12:e=await t.readString(await t.readUint32())}return e}function o(t,i){s.ai(i)?(t.writeUint8(0),t.writeDouble(i)):s.o(i)?(t.writeUint8(0),t.writeDouble(Number(i))):s.zM(i)?(t.writeUint8(1),t.writeUint8(i?1:0)):s.Yj(i)?i.length>=65536?(t.writeUint8(12),t.writeUint32(i.length),t.writeString(i)):(t.writeUint8(2),t.writeUint16(i.length),t.writeString(i)):s.YO(i)?(t.writeUint8(10),t.writeUint32(i.length),r.__(i,(i=>{o(t,i)}))):s.Ik(i)?(t.writeUint8(3),n.__(i,((i,e)=>{t.writeUint16(e.length),t.writeString(e),o(t,i)})),t.writeUint24(9)):i instanceof Date?(t.writeUint8(11),t.writeDouble(i.getTime()),t.writeInt16(0)):null==i&&t.writeUint8(5)}},68849:(t,i,e)=>{e.d(i,{iD:()=>s});const s=1024},74817:(t,i,e)=>{e.d(i,{A:()=>n});var s=e(19371),r=e(41662);class n{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1048576,i=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],e=arguments.length>2?arguments[2]:void 0;if((0,s.A)(this,"data",void 0),(0,s.A)(this,"buffer",void 0),(0,s.A)(this,"pointer",void 0),(0,s.A)(this,"pos",void 0),(0,s.A)(this,"size",void 0),(0,s.A)(this,"littleEndian",void 0),(0,s.A)(this,"error",void 0),(0,s.A)(this,"onFlush",void 0),(0,s.A)(this,"onSeek",void 0),this.pointer=0,this.pos=BigInt(0),this.size=t,this.littleEndian=!i,this.error=0,e&&e.view)this.size=e.length,this.buffer=e,this.data=e.view;else if(e&&!e.byteOffset)this.size=e.length,this.buffer=e,this.data=new DataView(this.buffer.buffer);else{if(e)throw new Error("not support subarray of ArrayBuffer");this.buffer=new Uint8Array(this.size),this.data=new DataView(this.buffer.buffer)}}writeUint8(t){this.remainingLength()<1&&this.flush(),this.data.setUint8(this.pointer,t),this.pointer++,this.pos++}writeUint16(t){this.remainingLength()<2&&this.flush(),this.data.setUint16(this.pointer,t,this.littleEndian),this.pointer+=2,this.pos+=BigInt(2)}writeUint24(t){this.remainingLength()<3&&this.flush();const i=(16711680&t)>>16,e=(65280&t)>>8,s=255&t;this.littleEndian?(this.writeUint8(s),this.writeUint8(e),this.writeUint8(i)):(this.writeUint8(i),this.writeUint8(e),this.writeUint8(s))}writeUint32(t){this.remainingLength()<4&&this.flush(),this.data.setUint32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeUint64(t){this.remainingLength()<8&&this.flush(),this.data.setBigUint64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}writeInt8(t){this.remainingLength()<1&&this.flush(),this.data.setInt8(this.pointer,t),this.pointer++,this.pos++}writeInt16(t){this.remainingLength()<2&&this.flush(),this.data.setInt16(this.pointer,t,this.littleEndian),this.pointer+=2,this.pos+=BigInt(2)}writeInt24(t){this.writeUint24(t<0?t+16777216:t)}writeInt32(t){this.remainingLength()<4&&this.flush(),this.data.setInt32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeInt64(t){this.remainingLength()<8&&this.flush(),this.data.setBigInt64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}writeFloat(t){this.remainingLength()<4&&this.flush(),this.data.setFloat32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeDouble(t){this.remainingLength()<8&&this.flush(),this.data.setFloat64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}getPointer(){return this.pointer}getPos(){return this.pos}remainingLength(){return this.size-this.pointer}writeBuffer(t){if(!t.length)return;let i=t.length;if(this.remainingLength()<i){let e=0;for(;i>0;){this.flush();const s=Math.min(this.size,i);this.buffer.set(t.subarray(e,e+s),this.pointer),this.pointer+=s,this.pos+=BigInt(s),e+=s,i-=s}}else this.buffer.set(t,this.pointer),this.pointer+=i,this.pos+=BigInt(i)}writeString(t){const i=r.encode(t);return this.writeBuffer(i),i.length}flush(){if(!this.onFlush)throw this.error=-1048574,Error("IOWriter error, flush failed because of no flush callback");if(this.pointer){const t=this.onFlush(this.buffer.subarray(0,this.pointer));if(0!==t)throw this.error=t,Error("IOWriter error, flush failed")}this.pointer=0}flushToPos(t){if(!this.onFlush)throw this.error=-1048574,Error("IOWriter error, flush failed because of no flush callback");if(this.pointer){const i=this.onFlush(this.buffer.subarray(0,this.pointer),t);if(0!==i)throw this.error=i,Error("IOWriter error, flush failed")}this.pointer=0}seek(t){if(!this.onSeek)throw this.error=-1048574,Error("IOWriter error, seek failed because of no seek callback");this.flush();const i=this.onSeek(t);if(0!==i)throw this.error=i,Error("IOWriter error, seek failed");this.pos=t}seekInline(t){const i=this.pointer;this.pointer=Math.max(0,Math.min(this.size,t)),this.pos+=BigInt(this.pointer-i)}skip(t){const i=this.pointer;this.pointer=Math.min(this.size,this.pointer+t),this.pos+=BigInt(this.pointer-i)}back(t){const i=this.pointer;this.pointer=Math.max(0,this.pointer-t),this.pos+=BigInt(this.pointer-i)}getBuffer(){return this.buffer.subarray(0,this.pointer)}setEndian(t){this.littleEndian=!t}reset(){this.pointer=0,this.pos=BigInt(0),this.error=0}getBufferSize(){return this.size}}},77160:(t,i,e)=>{e.d(i,{Tl:()=>a,an:()=>r,s2:()=>n});var s=e(19371);class r{constructor(){(0,s.A)(this,"list",[])}}async function n(t){return new Promise((i=>{t.list.push(i),1===t.list.length&&i()}))}function a(t){t.list.shift(),t.list.length&&t.list[0]()}},87114:(t,i,e)=>{e.d(i,{A:()=>o});var s=e(19371),r=e(34117),n=e(41662),a=e(56289);const h="packages/common/src/io/IOReader.ts";class o{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1048576,i=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],e=arguments.length>2?arguments[2]:void 0;if((0,s.A)(this,"data",void 0),(0,s.A)(this,"buffer",void 0),(0,s.A)(this,"pointer",void 0),(0,s.A)(this,"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),(0,s.A)(this,"flushResolve",void 0),this.pos=BigInt(0),this.pointer=0,this.error=0,this.endPointer=0,this.littleEndian=!i,this.flags=0,e&&e.view)this.size=e.length,this.buffer=e,this.data=e.view;else if(e&&!e.byteOffset)this.size=e.length,this.buffer=e,this.data=new DataView(this.buffer.buffer);else{if(e)throw new Error("not support subarray of ArrayBuffer");this.size=Math.max(t,102400),this.buffer=new Uint8Array(this.size),this.data=new DataView(this.buffer.buffer)}}async readUint8(){this.remainingLength()<1&&await this.flush(1);const t=this.data.getUint8(this.pointer);return this.pointer++,this.pos++,t}async peekUint8(){return this.remainingLength()<1&&await this.flush(1),this.data.getUint8(this.pointer)}async readUint16(){this.remainingLength()<2&&await this.flush(2);const t=this.data.getUint16(this.pointer,this.littleEndian);return this.pointer+=2,this.pos+=BigInt(2),t}async peekUint16(){return this.remainingLength()<2&&await this.flush(2),this.data.getUint16(this.pointer,this.littleEndian)}async readUint24(){this.remainingLength()<3&&await this.flush(3);const t=await this.readUint16(),i=await this.readUint8();return this.littleEndian?i<<16|t:t<<8|i}async peekUint24(){this.remainingLength()<3&&await this.flush(3);const t=this.pointer,i=this.pos,e=await this.readUint16(),s=await this.readUint8(),r=this.littleEndian?s<<16|e:e<<8|s;return this.pointer=t,this.pos=i,r}async readUint32(){this.remainingLength()<4&&await this.flush(4);const t=this.data.getUint32(this.pointer,this.littleEndian);return this.pointer+=4,this.pos+=BigInt(4),t}async peekUint32(){return this.remainingLength()<4&&await this.flush(4),this.data.getUint32(this.pointer,this.littleEndian)}async readUint64(){this.remainingLength()<8&&await this.flush(8);const t=this.data.getBigUint64(this.pointer,this.littleEndian);return this.pointer+=8,this.pos+=BigInt(8),t}async peekUint64(){return this.remainingLength()<8&&await this.flush(8),this.data.getBigUint64(this.pointer,this.littleEndian)}async readInt8(){this.remainingLength()<1&&await this.flush(1);const t=this.data.getInt8(this.pointer);return this.pointer++,this.pos++,t}async peekInt8(){return this.remainingLength()<1&&await this.flush(1),this.data.getInt8(this.pointer)}async readInt16(){this.remainingLength()<2&&await this.flush(2);const t=this.data.getInt16(this.pointer,this.littleEndian);return this.pointer+=2,this.pos+=BigInt(2),t}async peekInt16(){return this.remainingLength()<2&&await this.flush(2),this.data.getInt16(this.pointer,this.littleEndian)}async readInt24(){const t=await this.readUint24();return 8388608&t?t-16777216:t}async peekInt24(){const t=await this.peekUint24();return 8388608&t?t-16777216:t}async readInt32(){this.remainingLength()<4&&await this.flush(4);const t=this.data.getInt32(this.pointer,this.littleEndian);return this.pointer+=4,this.pos+=BigInt(4),t}async peekInt32(){return this.remainingLength()<4&&await this.flush(4),this.data.getInt32(this.pointer,this.littleEndian)}async readInt64(){this.remainingLength()<8&&await this.flush(8);const t=this.data.getBigInt64(this.pointer,this.littleEndian);return this.pointer+=8,this.pos+=BigInt(8),t}async peekInt64(){return this.remainingLength()<8&&await this.flush(8),this.data.getBigInt64(this.pointer,this.littleEndian)}async readFloat(){this.remainingLength()<4&&await this.flush(4);const t=this.data.getFloat32(this.pointer,this.littleEndian);return this.pointer+=4,this.pos+=BigInt(4),t}async peekFloat(){return this.remainingLength()<4&&await this.flush(4),this.data.getFloat32(this.pointer,this.littleEndian)}async readDouble(){this.remainingLength()<8&&await this.flush(8);const t=this.data.getFloat64(this.pointer,this.littleEndian);return this.pointer+=8,this.pos+=BigInt(8),t}async peekDouble(){return this.remainingLength()<8&&await this.flush(8),this.data.getFloat64(this.pointer,this.littleEndian)}async readHex(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,i="";for(let e=0;e<t;e++){const t=(await this.readUint8()).toString(16);i+=1===t.length?"0"+t:t}return i}async peekHex(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;t>this.size&&(this.error=-1048574,r.h2("peekHex, length too large",h,416)),this.remainingLength()<t&&await this.flush(t);const i=this.pointer,e=this.pos;let s="";for(let i=0;i<t;i++){const t=(await this.readUint8()).toString(16);s+=1===t.length?"0"+t:t}return this.pointer=i,this.pos=e,s}async readBuffer(t,i){if(i||(i=new Uint8Array(t)),this.remainingLength()<t){let e=0;if(this.remainingLength()>0){const s=this.remainingLength();i.set(this.buffer.subarray(this.pointer,this.pointer+s),e),e+=s,this.pointer+=s,this.pos+=BigInt(s),t-=s}for(;t>0;){await this.flush();const s=Math.min(this.endPointer-this.pointer,t);i.set(this.buffer.subarray(this.pointer,this.pointer+s),e),e+=s,this.pointer+=s,this.pos+=BigInt(s),t-=s}}else i.set(this.buffer.subarray(this.pointer,this.pointer+t),0),this.pointer+=t,this.pos+=BigInt(t);return i}async peekBuffer(t,i){return t>this.size&&(this.error=-1048574,r.h2("peekBuffer, length too large",h,501)),this.remainingLength()<t&&await this.flush(t),i||(i=new Uint8Array(t)),i.set(this.buffer.subarray(this.pointer,this.pointer+t),0),i}async readToBuffer(t,i){if(this.remainingLength()<t){let e=0;if(this.remainingLength()>0){const s=this.remainingLength();i.set(this.buffer.subarray(this.pointer,this.pointer+s),e),e+=s,this.pointer+=s,this.pos+=BigInt(s),t-=s}for(;t>0;){try{await this.flush()}catch(t){if(-1048576===this.error&&e)return e;throw t}const s=Math.min(this.endPointer-this.pointer,t);i.set(this.buffer.subarray(this.pointer,this.pointer+s),e),e+=s,this.pointer+=s,this.pos+=BigInt(s),t-=s}return e}return i.set(this.buffer.subarray(this.pointer,this.pointer+t),0),this.pointer+=t,this.pos+=BigInt(t),t}async readString(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;const i=await this.readBuffer(t);return n.decode(i)}async peekString(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;const i=await this.peekBuffer(t);return n.decode(i)}async readLine(){let t="";for(;;){let i=!1;for(let e=this.pointer;e<this.endPointer;e++)if(10===this.buffer[e]||13===this.buffer[e]){e!==this.pointer&&(t+=await this.readString(e-this.pointer)),i=!0;break}if(i)break;t+=await this.readString(this.remainingLength()),await this.flush()}let i=await this.peekUint8();return 10!==i&&13!==i||(this.pointer++,13===i&&(i=await this.peekUint8(),10===i&&this.pointer++)),t}async peekLine(){if(this.remainingLength()<this.size)try{await this.flush()}catch(t){if(-1048576!==this.error)throw t}let t="",i=!1;for(let e=this.pointer;e<this.endPointer;e++)if(10===this.buffer[e]||13===this.buffer[e]){t+=await this.peekString(e-this.pointer),i=!0;break}return i||(this.error=-1048574,r.h2("peekLine, out of buffer",h,659)),t}getPointer(){return this.pointer}getPos(){return this.pos}async skip(t){const i=t;for(;this.remainingLength()<t;)t-=this.remainingLength(),this.pointer=this.endPointer,await this.flush();this.remainingLength()>=t&&(this.pointer+=t),this.pos+=BigInt(i)}remainingLength(){return this.endPointer-this.pointer}async flush_(t){return new Promise((async i=>{for(this.flushResolve=i;;){const e=await this.onFlush(t);if(-1048575!==e){this.flushResolve=null,i(e);break}await new a.A(0)}}))}async flush(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;if(this.onFlush||(this.error=-1048574,r.h2("IOReader error, flush failed because of no flush callback",h,738)),!(this.size-this.remainingLength()<=0)){if(t=Math.min(t,this.size),this.pointer<this.endPointer?(this.buffer.set(this.buffer.subarray(this.pointer,this.endPointer),0),this.endPointer=this.endPointer-this.pointer):this.endPointer=0,this.pointer=0,t)for(;this.remainingLength()<t;){const t=await this.flush_(this.buffer.subarray(this.endPointer));if(t<0)throw this.error=t,new Error(`IOReader error, flush ${-1048576===t?"ended":"failed"}, ret: ${t}`);this.endPointer+=t}else{const t=await this.flush_(this.buffer.subarray(this.endPointer));if(t<0)throw this.error=t,new Error(`IOReader error, flush ${-1048576===t?"ended":"failed"}, ret: ${t}`);this.endPointer+=t}this.error=0}}async seek(t){let i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(!(arguments.length>1&&void 0!==arguments[1]&&arguments[1])){const i=Number(t-this.pos);if(i<0&&Math.abs(i)<=this.pointer)return this.pointer+=i,void(this.pos=t);if(i>0&&this.pointer+i<this.endPointer)return this.pointer+=i,void(this.pos=t);if(0===i)return}this.onSeek||(this.error=-1048574,r.h2("IOReader error, seek failed because of no seek callback",h,809)),this.pointer=this.endPointer=0,this.pos=t;const e=await this.onSeek(t);0!==e&&(this.error=e,r.h2("IOReader error, seek failed",h,818)),i&&await this.flush()}getBuffer(){return this.buffer}appendBuffer(t){if(this.size-this.endPointer>=t.length)this.buffer.set(t,this.endPointer),this.endPointer+=t.length;else if(this.buffer.set(this.buffer.subarray(this.pointer,this.endPointer),0),this.endPointer=this.endPointer-this.pointer,this.pointer=0,this.size-this.endPointer>=t.length)this.buffer.set(t,this.endPointer),this.endPointer+=t.length;else{const i=Math.min(this.size-this.endPointer,t.length);this.buffer.set(t.subarray(0,i),this.endPointer),this.endPointer+=i,r.R8("IOReader, call appendBuffer but the buffer's size is lagger then the remaining size",h,856)}}reset(){this.pointer=this.endPointer=0,this.pos=BigInt(0),this.error=0}setEndian(t){this.littleEndian=!t}isBigEndian(){return!this.littleEndian}async fileSize(){if(this.fileSize_)return this.fileSize_;if(!this.onSize)return r.R8("IOReader error, fileSize failed because of no onSize callback",h,898),BigInt(0);try{this.fileSize_=await this.onSize()}catch(t){r.R8(`IOReader error, call fileSize failed: ${t}`,h,905),this.fileSize_=BigInt(0)}return this.fileSize_}getBufferSize(){return this.size}async pipe(t,i){if(i)if(this.remainingLength()<i){if(this.remainingLength()>0){const e=this.remainingLength();await t.writeBuffer(this.buffer.subarray(this.pointer,this.pointer+e)),this.pointer+=e,this.pos+=BigInt(e),i-=e}for(;i>0;){await this.flush();const e=Math.min(this.remainingLength(),i);await t.writeBuffer(this.buffer.subarray(this.pointer,this.pointer+e)),this.pointer+=e,this.pos+=BigInt(e),i-=e}}else await t.writeBuffer(this.buffer.subarray(this.pointer,this.pointer+i)),this.pointer+=i,this.pos+=BigInt(i);else{if(this.remainingLength()>0){const i=this.remainingLength();await t.writeBuffer(this.buffer.subarray(this.pointer,this.pointer+i)),this.pointer+=i,this.pos+=BigInt(i)}for(;await this.flush_(this.buffer.subarray(0))>0;){const i=this.remainingLength();await t.writeBuffer(this.buffer.subarray(this.pointer,this.pointer+i)),this.pointer+=i,this.pos+=BigInt(i)}}}abort(){this.error=-1048572,this.flushResolve&&(this.flushResolve(-1048572),this.flushResolve=null)}}},91622:(t,i,e)=>{e.d(i,{U:()=>o,w:()=>f});var s=e(11705),r=e(34117),n=e(18528);const a="packages/avprotocol/src/rtmp/util.ts";async function h(t,i,e){if(i<64)await t.writeUint8(i|e<<6);else if(i<320)await t.writeUint8(e<<6),await t.writeUint8(i-64);else{await t.writeUint8(1|e<<6);const s=i-64;await t.writeUint8(255&s),await t.writeUint8(s>>>8)}}async function o(t,i,e,s){const r=s&&s.extra===e.extra&&e.timestamp>=s.timestamp;let n=e.timestamp;r&&(n-=s.timestamp),e.tsField=n>16777215?16777215:n;let a=0;r&&(e.type===s.type&&e.payload.length===s.payload.length?(a=2,e.tsField===s.tsField&&(a=3)):a=1),await h(t,e.channelId,a),3!==a&&(await t.writeUint24(e.tsField),2!==a&&(await t.writeUint24(e.payload.length),await t.writeUint8(e.type),0===a&&(await t.writeUint8(e.extra),await t.writeUint8(e.extra>>8),await t.writeUint8(e.extra>>16),await t.writeUint8(e.extra>>24)))),16777215===e.tsField&&await t.writeUint32(n);let o=0;for(;o<e.payload.length;){const s=Math.min(i,e.payload.length-o);await t.writeBuffer(e.payload.subarray(o,o+s)),o+=s,o<e.payload.length&&(await h(t,e.channelId,3),16777215===e.tsField&&await t.writeUint32(n))}await t.flush()}async function f(t,i,e){const h=[],o=await t.readUint8();let f=63&o;f<2&&(f=0===await t.readUint8()?await t.readUint8()+64:64+(await t.readUint8()|await t.readUint8()<<8));const l=o>>>6,u=e.get(f);let d=u?u.payload.length:0,p=u?u.type:0,c=u?u.extra:0,w=0,g=0;if(3===l?w=u.tsField:(w=await t.readUint24(),2!==l&&(d=await t.readUint24(),p=await t.readUint8(),0===l&&(c=await t.readUint8(),c|=await t.readUint8()<<8,c|=await t.readUint8()<<16,c|=await t.readUint8()<<24))),g=16777215===w?await t.readUint32():w,0!==l&&(u?g+=u.timestamp:r.R8(`got invalid message fmt, channel id ${f} can not find prev message with fmt ${l}`,a,177)),d<i)h.push(await t.readBuffer(d));else{let e=d;for(;e;){const s=Math.min(i,e);if(h.push(await t.readBuffer(s)),e-=s,e){const i=63&await t.readUint8();i<2&&await t.skip(i+1),16777215===w&&await t.skip(4)}}}const b=new s.u(f,p,g,(0,n.A)(Uint8Array,h));return b.tsField=w,b.extra=c,b}},98568:(t,i,e)=>{e.d(i,{ll:()=>w,mA:()=>a,qg:()=>h});var s=e(84777),r=e(52869),n=e(83796);function a(t){let i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"&";const e={};if(s.Yj(t)&&t.indexOf("=")>=0){let s=t.charAt(0),a="?"===s||"#"===s?1:0;a>0&&(t=t.substr(a)),n.__((0,r.A)(t,i),(t=>{let i=t.split("=");if(2===i.length){var s;let t=null===(s=i[0])||void 0===s?void 0:s.trim();t&&(e[t]=decodeURIComponent(i[1]))}}))}return e}function h(t){const i=t,e=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],s=/:\/\/([^\/@]*@?)\[(\S+)\]/;let r="";s.test(t)&&(t=t.replace(s,((t,i,e)=>(r=e,`://${i||""}a.b`))));const n={},a=/^(?:(?![^:@\/]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@\/]*)(?::([^:@\/]*))?)?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/.exec(t);let h=14;for(;h--;){var o;n[e[h]]=null!==(o=a[h])&&void 0!==o?o:""}return r&&(n.host=r,n.source=i,n.authority=r+(n.port?":"+n.port:"")),{protocol:n.protocol,file:n.file,host:n.host,port:n.port,user:n.user,password:n.password,origin:`${n.protocol}://${n.authority}`,pathname:n.path,search:`?${n.query}`,hash:n.anchor?`#${n.anchor}`:""}}const o=/(?:\/|^)\.(?=\/)/g,f=/(?:\/|^)\.\.\/(?!\.\.\/)[^\/]*(?=\/)/g,l=/^(?=([^\/?#]*))\1([^]*)$/,u=/^(?=((?:[a-zA-Z0-9+\-.]+:)?))\1(?=((?:\/\/[^\/?#]*)?))\2(?=((?:(?:[^?#\/]*\/)*[^;?#\/]*)?))\3((?:;[^?#]*)?)(\?[^#]*)?(#[^]*)?$/;function d(t){return t.scheme+t.netLoc+t.path+t.params+t.query+t.fragment}function p(t){const i=u.exec(t);return i?{scheme:i[1]||"",netLoc:i[2]||"",path:i[3]||"",params:i[4]||"",query:i[5]||"",fragment:i[6]||""}:null}function c(t){for(t=t.split("").reverse().join("").replace(o,"");t.length!==(t=t.replace(f,"")).length;);return t.split("").reverse().join("")}function w(t,i,e){if(e=e||{},t=t.trim(),!(i=i.trim())){if(!e.alwaysNormalize)return t;let i=p(t);if(!i)throw new Error("Error trying to parse base URL.");return i.path=c(i.path),d(i)}let s=p(i);if(!s)throw new Error("Error trying to parse relative URL.");if(s.scheme)return e.alwaysNormalize?(s.path=c(s.path),d(s)):i;let r=p(t);if(!r)throw new Error("Error trying to parse base URL.");if(!r.netLoc&&r.path&&"/"!==r.path[0]){let t=l.exec(r.path);r.netLoc=t[1],r.path=t[2]}r.netLoc&&!r.path&&(r.path="/");const n={scheme:r.scheme,netLoc:s.netLoc,path:null,params:s.params,query:s.query,fragment:s.fragment};if(!s.netLoc&&(n.netLoc=r.netLoc,"/"!==s.path[0]))if(s.path){let t=r.path,i=t.substring(0,t.lastIndexOf("/")+1)+s.path;n.path=c(i)}else n.path=r.path,s.params||(n.params=r.params,s.query||(n.query=r.query));return null===n.path&&(n.path=e.alwaysNormalize?c(s.path):s.path),d(n)}},98901:(t,i,e)=>{e.d(i,{FP:()=>o,Mr:()=>h,iU:()=>u,j2:()=>l,k:()=>a,lb:()=>f});var s=e(56238),r=e(29688),n=e(57709);function a(t,i,e){return t*BigInt(i.num)*BigInt(e.den)/(BigInt(i.den)*BigInt(e.num))}function h(t,i,e){return t*BigInt(s.f[15](i))*BigInt(e.den)/(BigInt(s.f[15](i+4))*BigInt(e.num))}function o(t,i,e){return t*BigInt(i.num)*BigInt(s.f[15](e+4))/(BigInt(i.den)*BigInt(s.f[15](e)))}function f(t){return t.num/t.den}function l(t,i){if(isNaN(19))return{den:0,num:0};if(Math.abs(t)>r.go+3)return{den:0,num:t<0?-1:1};const e=t>1?{den:Math.floor(i/t+.5),num:i}:{den:i,num:Math.floor(t*i+.5)};return u(e),e}function u(t){const i=(0,n.A)(t.num,t.den);i<=1||(t.den/=i,t.num/=i)}},99577:(t,i,e)=>{e.d(i,{FJ:()=>s,U5:()=>r});const s={10:86018,2:86017,11:86051,1:69645,4:86049,5:86049,6:86049,7:65543,8:65542},r={7:27,12:173,9:12,2:4,3:86,4:92,5:106,6:131}}};
|
|
1
|
+
"use strict";(self.webpackChunklibmedia=self.webpackChunklibmedia||[]).push([[931],{205:(t,i,e)=>{e.d(i,{A:()=>y});var s=e(19371),r=e(11705),n=e(68849),a=e(91622),h=e(59483),o=e(84777),f=e(83796),l=e(34117),u=e(44905),d=e(56289),p=e(70704),c=e(99248),w=e(11544),g=e(77160);const b="packages/avprotocol/src/rtmp/RtmpSession.ts";class y{constructor(t,i,e){(0,s.A)(this,"ioReader",void 0),(0,s.A)(this,"ioWriter",void 0),(0,s.A)(this,"prevReadPacket",void 0),(0,s.A)(this,"prevWritePacket",void 0),(0,s.A)(this,"inChunkSize",void 0),(0,s.A)(this,"outChunkSize",void 0),(0,s.A)(this,"seq",void 0),(0,s.A)(this,"bufferWriter",void 0),(0,s.A)(this,"bufferReader",void 0),(0,s.A)(this,"requestMap",void 0),(0,s.A)(this,"state",void 0),(0,s.A)(this,"maxSentUnacked",void 0),(0,s.A)(this,"receiveReportSize",void 0),(0,s.A)(this,"duration",void 0),(0,s.A)(this,"options",void 0),(0,s.A)(this,"streamIdMap",void 0),(0,s.A)(this,"sendAsync",void 0),(0,s.A)(this,"onMediaPacket",void 0),(0,s.A)(this,"onError",void 0),this.ioReader=t,this.ioWriter=i,this.options=e,this.prevReadPacket=new Map,this.prevWritePacket=new Map,this.requestMap=new Map,this.streamIdMap=new Map,this.inChunkSize=128,this.outChunkSize=128,this.seq=0,this.maxSentUnacked=25e5,this.receiveReportSize=1048576,this.sendAsync=new g.an,this.bufferWriter=new c.A(new Uint8Array(1)),this.bufferReader=new p.A(new Uint8Array(1)),this.state=0}async handshake(){const t=(0,u.A)();await this.ioWriter.writeUint8(3),await this.ioWriter.writeUint32(0),await this.ioWriter.writeUint32(0);const i=new Uint8Array(1528);(0,w.A)(i),await this.ioWriter.writeBuffer(i),await this.ioWriter.flush(),await this.ioReader.readUint8();const e=await this.ioReader.readUint32();await this.ioReader.skip(4);const s=await this.ioReader.readBuffer(1528);await this.ioWriter.writeUint32(e),await this.ioWriter.writeUint32((0,u.A)()-t),await this.ioWriter.writeBuffer(s),await this.ioWriter.flush(),await this.ioReader.skip(1536),this.readRtmpPacket()}async sendPacket(t){await g.s2(this.sendAsync),await(0,a.U)(this.ioWriter,this.outChunkSize,t,this.prevWritePacket.get(t.channelId)),this.prevWritePacket.set(t.channelId,t),g.Tl(this.sendAsync)}async readPacket(){const t=await(0,a.w)(this.ioReader,this.inChunkSize,this.prevReadPacket);return this.prevReadPacket.set(t.channelId,t),t}handleChunkSize(t){t.payload.length>=4&&(this.bufferReader.resetBuffer(t.payload),this.inChunkSize=this.bufferReader.readUint32())}handleUserControl(t){t.payload.length>=2&&(this.bufferReader.resetBuffer(t.payload),6===this.bufferReader.readUint16()&&this.sendPong(t,this.bufferReader.readUint32()))}handleSetPeerBW(t){t.payload.length>=4&&(this.bufferReader.resetBuffer(t.payload),this.maxSentUnacked=this.bufferReader.readUint32(),l.Yz(`Max sent, unacked = ${this.maxSentUnacked}`,b,215))}handleWindowSizeACK(t){t.payload.length>=4&&(this.bufferReader.resetBuffer(t.payload),this.receiveReportSize=this.bufferReader.readUint32(),l.Yz(`Window acknowledgement size = ${this.receiveReportSize}`,b,222),this.receiveReportSize>>=1)}async handleInvoke(t){this.bufferReader.resetBuffer(t.payload);const i=BigInt(t.payload.length),e=await h.$x(this.bufferReader,i),s=await h.$x(this.bufferReader,i);if("_result"===e||"_error"===e){if(this.requestMap.has(s)){const t=await h.$x(this.bufferReader,i),r=await h.$x(this.bufferReader,i);"_result"===e?this.requestMap.get(s).resolve({options:t,info:r}):this.requestMap.get(s).reject({options:t,info:r}),this.requestMap.delete(s)}}else if("onStatus"===e){const t=await h.$x(this.bufferReader,i);let e=await h.$x(this.bufferReader,i);if("error"===e.level)l.z3(`Server error: ${e.description}, ${e.code}`,b,258),this.requestMap.has(s)?(this.requestMap.get(s).reject({options:t,info:e}),this.requestMap.delete(s)):this.onError&&this.onError();else{switch(e.code){case"NetStream.Play.Start":case"NetStream.Seek.Notify":this.state=3;break;case"NetStream.Play.Stop":case"NetStream.Play.UnpublishNotify":this.state=8;break;case"NetStream.Publish.Start":this.state=5}this.requestMap.has(s)&&(this.requestMap.get(s).resolve({options:t,info:e}),this.requestMap.delete(s))}}else"onBWDone"===e&&await this.sendCheckBW()}async handleNotify(t){this.bufferReader.resetBuffer(t.payload),"@setDataFrame"===await h.$x(this.bufferReader,BigInt(t.payload.length))&&(t.payload=t.payload.subarray(Number(this.bufferReader.getPos()))),t.payload.length&&this.onMediaPacket&&await this.onMediaPacket(t,this.streamIdMap.get(t.extra))}async readRtmpPacket(){for(;;)try{const t=await this.readPacket();switch(t.type){case 3:default:break;case 1:this.handleChunkSize(t);break;case 4:this.handleUserControl(t);break;case 6:this.handleSetPeerBW(t);break;case 5:this.handleWindowSizeACK(t);break;case 20:await this.handleInvoke(t);break;case 18:await this.handleNotify(t);break;case 22:case 8:case 9:this.onMediaPacket&&await this.onMediaPacket(t,this.streamIdMap.get(t.extra))}}catch(t){break}}async sendPong(t,i){if(t.payload.length<6)return void l.R8(`Too short ping packet (${t.payload.length})`,b,358);const e=new r.u(2,4,t.timestamp+1,6);this.bufferWriter.resetBuffer(e.payload),this.bufferWriter.writeUint16(7),this.bufferWriter.writeUint32(i),this.sendPacket(e)}async sendWindowAckSize(){const t=new r.u(2,5,0,4);this.bufferWriter.resetBuffer(t.payload),this.bufferWriter.writeUint32(this.maxSentUnacked),await this.sendPacket(t)}async sendBufferTime(t){const i=new r.u(2,4,1,10);this.bufferWriter.resetBuffer(i.payload),this.bufferWriter.writeUint16(3),this.bufferWriter.writeUint32(t),this.bufferWriter.writeUint32(this.options.clientBufferTime||3e3),await this.sendPacket(i)}async sendFCSubscribe(t){const i=new r.u(3,20,0,27+t.length);this.bufferWriter.resetBuffer(i.payload),h.bD(this.bufferWriter,"FCSubscribe"),h.bD(this.bufferWriter,++this.seq),h.bD(this.bufferWriter,null),h.bD(this.bufferWriter,t),await this.sendPacket(i)}async sendFCPublish(t){const i=new r.u(3,20,0,25+t.length);this.bufferWriter.resetBuffer(i.payload),h.bD(this.bufferWriter,"FCPublish"),h.bD(this.bufferWriter,++this.seq),h.bD(this.bufferWriter,null),h.bD(this.bufferWriter,t),await this.sendPacket(i)}async sendReleaseStream(t){const i=new r.u(3,20,0,29+t.length);this.bufferWriter.resetBuffer(i.payload),h.bD(this.bufferWriter,"releaseStream"),h.bD(this.bufferWriter,++this.seq),h.bD(this.bufferWriter,null),h.bD(this.bufferWriter,t),await this.sendPacket(i)}async sendCheckBW(){const t=new r.u(3,20,0,21);this.bufferWriter.resetBuffer(t.payload),h.bD(this.bufferWriter,"_checkbw"),h.bD(this.bufferWriter,++this.seq),h.bD(this.bufferWriter,null),await this.sendPacket(t)}async request(t,i){const e=new r.u(3,20,0,4096+n.iD);return this.bufferWriter.resetBuffer(e.payload),h.bD(this.bufferWriter,t),h.bD(this.bufferWriter,++this.seq),f.__(i,(t=>{h.bD(this.bufferWriter,t)})),e.payload=e.payload.subarray(0,this.bufferWriter.getPos()),new Promise(((t,i)=>{this.requestMap.set(this.seq,{resolve:t,reject:i}),this.sendPacket(e)}))}async connect(t,i){await this.request("connect",[{app:t,fourCcList:["hvc1","av01","vp09"],flashVer:"LNX 9,0,124,2",tcUrl:i,fpad:0,capabilities:15,audioCodecs:4071,videoCodecs:252,videoFunction:1}]),this.options.isPull&&await this.sendWindowAckSize()}async createStream(){return(await this.request("createStream",[null])).info}async play(t){const i=await this.createStream();if(this.streamIdMap.set(i,t),!this.options.isLive){const i=await Promise.race([this.request("getStreamLength",[null,t]),new d.A(1)]);o.ai(i)||(this.duration=i.info)}await this.sendFCSubscribe(t),this.request("play",[null,t,-1,-1,!0]),await this.sendBufferTime(i)}async publish(t){await this.sendReleaseStream(t),await this.sendFCPublish(t);const i=await this.createStream();this.streamIdMap.set(i,t),await this.request("publish",[null,t,"live"])}async sendStreamPacket(t,i){let e=0;this.streamIdMap.forEach(((t,s)=>{t===i&&(e=s)})),t.extra=e,await this.sendPacket(t)}async seek(t){const i=new r.u(3,20,0,26);this.bufferWriter.resetBuffer(i.payload),h.bD(this.bufferWriter,"seek"),h.bD(this.bufferWriter,0),h.bD(this.bufferWriter,null),h.bD(this.bufferWriter,t),await this.sendPacket(i)}async pause(t,i){const e=new r.u(3,20,0,29);this.bufferWriter.resetBuffer(e.payload),h.bD(this.bufferWriter,"pause"),h.bD(this.bufferWriter,0),h.bD(this.bufferWriter,null),h.bD(this.bufferWriter,t),h.bD(this.bufferWriter,i),await this.sendPacket(e)}getDuration(){return this.duration}}},8340:(t,i,e)=>{e.d(i,{A:()=>r});var s=e(19371);class r{constructor(){(0,s.A)(this,"signature",void 0),(0,s.A)(this,"version",void 0),(0,s.A)(this,"flags",void 0),(0,s.A)(this,"dataOffset",void 0),(0,s.A)(this,"hasVideo",void 0),(0,s.A)(this,"hasAudio",void 0),this.signature="FLV",this.version=1,this.flags=0,this.dataOffset=9,this.hasAudio=!1,this.hasVideo=!1}async read(t){this.signature=await t.readString(3),this.version=await t.readUint8(),this.flags=await t.readUint8(),this.dataOffset=await t.readUint32(),this.hasAudio=!!(4&this.flags),this.hasVideo=!!(1&this.flags)}write(t){this.flags=0,this.hasAudio&&(this.flags|=4),this.hasVideo&&(this.flags|=1),t.writeString(this.signature),t.writeUint8(this.version),t.writeUint8(this.flags),t.writeUint32(this.dataOffset)}}},11544:(t,i,e)=>{let s;function r(t){s.getRandomValues(t)}e.d(i,{A:()=>r}),"undefined"!=typeof crypto&&(s=crypto)},11705:(t,i,e)=>{e.d(i,{u:()=>r});var s=e(19371);class r{constructor(t,i,e,r){(0,s.A)(this,"channelId",void 0),(0,s.A)(this,"type",void 0),(0,s.A)(this,"timestamp",void 0),(0,s.A)(this,"tsField",0),(0,s.A)(this,"extra",0),(0,s.A)(this,"payload",void 0),this.channelId=t,this.type=i,this.timestamp=e,this.payload=r instanceof Uint8Array?r:new Uint8Array(r)}}},14238:(t,i,e)=>{e.d(i,{M5:()=>n});var s=e(84777);function r(t,i,e){const s=t.getPos(),r=t.getPointer(),n=s-BigInt(Math.floor(r));i<s&&i>=n?(t.seekInline(r+Number(i-s)),t.writeUint24(e),t.seekInline(r)):(t.seek(i),t.writeUint24(e),t.seek(s))}function n(t,i,e,n,a,h){t.flush(),t.writeUint8(i);const o=t.getPos();t.writeUint24(0),t.writeUint24(Number(e&BigInt(16777215))),t.writeUint8(Number(e>>BigInt(24)&BigInt(255))),t.writeUint24(0);const f=t.getPos();n&&n(t),s.Pc(a)?(a(t),r(t,o,Number(t.getPos()-f))):a&&(r(t,o,a.length+Number(t.getPos()-f)),t.writeBuffer(a));const l=Number(t.getPos()-o)+1;h&&h(l),t.writeUint32(l)}},22272:(t,i,e)=>{e.d(i,{A:()=>l});var s=e(19371),r=e(14238),n=e(59483),a=e(35924),h=e(34117),o=e(18528),f=e(74817);class l{constructor(){(0,s.A)(this,"onMetaData",void 0),this.onMetaData={canSeekToEnd:!1}}async read(t,i){const e=t.getPos(),s=e+BigInt(Math.floor(i)),r=await n.$x(t,s),o=await n.$x(t,s);this[r]=o,s>t.getPos()&&await t.skip(Number(BigInt.asIntN(32,s-t.getPos())));const f=Number(t.getPos()-e),l=await t.readUint32();return f+11!==l?(h.R8(`script size not match, size: ${f+11}, previousTagSize: ${l}`,"packages/avformat/src/formats/flv/FlvScriptTag.ts",60),a.LR):0}computeSize(){const t=[],i=new f.A;return i.onFlush=i=>(t.push(i.slice()),0),n.bD(i,"onMetaData"),n.bD(i,this.onMetaData),i.flush(),(0,o.A)(Uint8Array,t).length}write(t){if(this.onMetaData){const i=[],e=new f.A;e.onFlush=t=>(i.push(t.slice()),0),n.bD(e,"onMetaData"),n.bD(e,this.onMetaData),e.flush();const s=(0,o.A)(Uint8Array,i);r.M5(t,18,BigInt(0),void 0,s)}}dts2Position(t){if(this.canSeek()){let i=-1;const e=this.onMetaData.keyframes.times,s=this.onMetaData.keyframes.filepositions;let r;for(r=0;r<e.length;r++){if(e[r]===t){i=r;break}if(e[r]>t){i=Math.max(r-1,0);break}}return r&&r===e.length&&(i=e.length-1),{pos:s[i],dts:e[i]}}return{pos:-1,dts:-1}}position2DTS(t){if(this.canSeek()){let e=-1;const s=this.onMetaData.keyframes.times,r=this.onMetaData.keyframes.filepositions;let n=0;for(n=0;n<r.length;n++)if(r[n]>t){e=n;break}var i;return n===r.length?null!==(i=this.onMetaData.duration)&&void 0!==i?i:s[s.length-1]:s[e]}return-1}canSeek(){return!!(this.onMetaData.keyframes&&this.onMetaData.keyframes.filepositions&&this.onMetaData.keyframes.filepositions.length)}}},29688:(t,i,e)=>{e.d(i,{Dh:()=>r,FQ:()=>u,H3:()=>o,KR:()=>f,N_:()=>n,SF:()=>a,f7:()=>w,go:()=>d,i0:()=>l,pu:()=>g,qs:()=>h,vh:()=>p,zg:()=>c});var s=e(55982);const r=-BigInt(1),n=-1,a=1e6,h=1e3,o=1e9,f=new s.Q({den:a,num:1}),l=new s.Q({den:h,num:1}),u=new s.Q({den:o,num:1}),d=(new s.Q({den:1,num:1}),2147483647),p=BigInt(0x8000000000000000),c=65535,w=4294967295,g=(BigInt(0x10000000000000000),8)},37566:(t,i,e)=>{e.d(i,{A:()=>n});var s=e(19371),r=e(41662);class n{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1048576,i=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],e=arguments.length>2?arguments[2]:void 0;if((0,s.A)(this,"data",void 0),(0,s.A)(this,"buffer",void 0),(0,s.A)(this,"pointer",void 0),(0,s.A)(this,"pos",void 0),(0,s.A)(this,"size",void 0),(0,s.A)(this,"littleEndian",void 0),(0,s.A)(this,"error",void 0),(0,s.A)(this,"onFlush",void 0),(0,s.A)(this,"onSeek",void 0),this.pointer=0,this.pos=BigInt(0),this.size=t,this.littleEndian=!i,this.error=0,e&&e.view)this.size=e.length,this.buffer=e,this.data=e.view;else if(e&&!e.byteOffset)this.size=e.length,this.buffer=e,this.data=new DataView(this.buffer.buffer);else{if(e)throw new Error("not support subarray of ArrayBuffer");this.buffer=new Uint8Array(this.size),this.data=new DataView(this.buffer.buffer)}}async writeUint8(t){this.remainingLength()<1&&await this.flush(),this.data.setUint8(this.pointer,t),this.pointer++,this.pos++}async writeUint16(t){this.remainingLength()<2&&await this.flush(),this.data.setUint16(this.pointer,t,this.littleEndian),this.pointer+=2,this.pos+=BigInt(2)}async writeUint24(t){this.remainingLength()<3&&await this.flush();const i=(16711680&t)>>16,e=(65280&t)>>8,s=255&t;this.littleEndian?(await this.writeUint8(s),await this.writeUint8(e),await this.writeUint8(i)):(await this.writeUint8(i),await this.writeUint8(e),await this.writeUint8(s))}async writeUint32(t){this.remainingLength()<4&&await this.flush(),this.data.setUint32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}async writeUint64(t){this.remainingLength()<8&&await this.flush(),this.data.setBigUint64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}async writeInt8(t){this.remainingLength()<1&&await this.flush(),this.data.setInt8(this.pointer,t),this.pointer++,this.pos++}async writeInt16(t){this.remainingLength()<2&&await this.flush(),this.data.setInt16(this.pointer,t,this.littleEndian),this.pointer+=2,this.pos+=BigInt(2)}async writeInt24(t){await this.writeUint24(t<0?t+16777216:t)}async writeInt32(t){this.remainingLength()<4&&await this.flush(),this.data.setInt32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}async writeInt64(t){this.remainingLength()<8&&await this.flush(),this.data.setBigInt64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}async writeFloat(t){this.remainingLength()<4&&await this.flush(),this.data.setFloat32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}async writeDouble(t){this.remainingLength()<8&&await this.flush(),this.data.setFloat64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}getPointer(){return this.pointer}getPos(){return this.pos}remainingLength(){return this.size-this.pointer}async writeBuffer(t){if(!t.length)return;let i=t.length;if(this.remainingLength()<i){let e=0;for(;i>0;){await this.flush();const s=Math.min(this.size,i);this.buffer.set(t.subarray(e,e+s),this.pointer),this.pointer+=s,this.pos+=BigInt(s),e+=s,i-=s}}else this.buffer.set(t,this.pointer),this.pointer+=i,this.pos+=BigInt(i)}async writeString(t){const i=r.encode(t);return await this.writeBuffer(i),i.length}async flush(){if(!this.onFlush)throw this.error=-1048574,Error("IOWriter error, flush failed because of no flush callback");if(this.pointer){const t=await this.onFlush(this.buffer.subarray(0,this.pointer));if(0!==t)throw this.error=t,Error("IOWriter error, flush failed")}this.pointer=0}async flushToPos(t){if(!this.onFlush)throw this.error=-1048574,Error("IOWriter error, flush failed because of no flush callback");if(this.pointer){const i=await this.onFlush(this.buffer.subarray(0,this.pointer),t);if(0!==i)throw this.error=i,Error("IOWriter error, flush failed")}this.pointer=0}async seek(t){if(!this.onSeek)throw this.error=-1048574,Error("IOWriter error, seek failed because of no seek callback");await this.flush();const i=await this.onSeek(t);if(0!==i)throw this.error=i,Error("IOWriter error, seek failed");this.pos=t}seekInline(t){const i=this.pointer;this.pointer=Math.max(0,Math.min(this.size,t)),this.pos+=BigInt(this.pointer-i)}skip(t){const i=this.pointer;this.pointer=Math.min(this.size,this.pointer+t),this.pos+=BigInt(this.pointer-i)}back(t){const i=this.pointer;this.pointer=Math.max(0,this.pointer-t),this.pos+=BigInt(this.pointer-i)}getBuffer(){return this.buffer.subarray(0,this.pointer)}setEndian(t){this.littleEndian=!t}reset(){this.pointer=0,this.pos=BigInt(0),this.error=0}getBufferSize(){return this.size}}},37766:(t,i,e)=>{e.d(i,{A:()=>n});var s=e(34117);const r="packages/avformat/src/function/mktag.ts";function n(t){4!==t.length&&s.R8(`tag length is not 4, tag: ${t}`,r,31);let i=0;for(let e=0;e<4;e++)i=i<<8|t.charCodeAt(e);return i}},44806:(t,i,e)=>{e.r(i),e.d(i,{default:()=>b});var s=e(19371),r=e(98568),n=e(72034),a=e(87114),h=e(37566),o=e(74817),f=e(70704),l=e(59483),u=e(205),d=e(8340),p=e(22272),c=e(42412),w=e(66484),g=e(54798);class b extends c.A{constructor(){super(...arguments),(0,s.A)(this,"info",void 0),(0,s.A)(this,"socket",void 0),(0,s.A)(this,"session",void 0),(0,s.A)(this,"ioReader",void 0),(0,s.A)(this,"ioWriter",void 0),(0,s.A)(this,"flvWriter",void 0),(0,s.A)(this,"flvHeader",void 0),(0,s.A)(this,"packetQueue",void 0),(0,s.A)(this,"flvHeaderWrote",void 0),(0,s.A)(this,"hasMetadata",void 0),(0,s.A)(this,"bufferReader",void 0)}writeFlvData(t){this.flvWriter.writeUint8(t.type),this.flvWriter.writeUint24(t.payload.length),this.flvWriter.writeUint24(t.timestamp),this.flvWriter.writeUint8(t.timestamp>>24),this.flvWriter.writeUint24(0),this.flvWriter.writeBuffer(t.payload),this.flvWriter.writeUint32(t.payload.length+11),this.flvWriter.flush()}async handleRtmpPacket(t){if(this.flvHeaderWrote)this.writeFlvData(t);else{if(this.packetQueue.push(t),8===t.type)this.flvHeader.hasAudio=!0;else if(9===t.type)this.flvHeader.hasVideo=!0;else if(18===t.type&&(this.bufferReader?this.bufferReader.resetBuffer(t.payload):this.bufferReader=new f.A(t.payload),"onMetaData"===await l.$x(this.bufferReader,BigInt(t.payload.length)))){this.hasMetadata=!0;const i=await l.$x(this.bufferReader,BigInt(t.payload.length));this.flvHeader.hasAudio=(0,n.A)(i.audiocodecid),this.flvHeader.hasVideo=(0,n.A)(i.videocodecid)}if(this.packetQueue.length>10||this.hasMetadata){if(this.flvHeader.write(this.flvWriter),this.flvWriter.writeUint32(0),!this.hasMetadata&&this.session.getDuration()){const t=new p.A;t.onMetaData={duration:this.session.getDuration()},t.write(this.flvWriter)}this.packetQueue.forEach((t=>{this.writeFlvData(t)})),this.packetQueue.length=0,this.flvHeaderWrote=!0}}}async send(t){return this.socket?(await this.socket.send(t),0):-1048574}async open(t){this.info=t,this.status=1,3===t.subProtocol?(this.socket=new g.A(this.options),await this.socket.open({url:t.url,webtransportOptions:t.webtransportOptions})):(this.socket=new w.A(this.options),await this.socket.open({url:t.url})),this.ioReader=new a.A,this.ioReader.onFlush=async t=>this.socket.read(t),this.ioReader.onSeek=async t=>this.socket.seek(t),this.ioReader.onSize=async()=>this.socket.size(),this.ioWriter=new h.A,this.ioWriter.onFlush=async t=>this.socket.write(t),this.ioWriter.onSeek=async t=>this.socket.seek(t),this.flvWriter=new o.A,this.flvWriter.onFlush=t=>(this.readQueue.push(t.slice()),this.consume&&this.consume(),0),this.flvHeader=new d.A,this.packetQueue=[],this.flvHeaderWrote=!1,this.hasMetadata=!1,this.session=new u.A(this.ioReader,this.ioWriter,{isLive:this.options.isLive,isPull:!0}),this.session.onMediaPacket=async(t,i)=>this.handleRtmpPacket(t),this.session.onError=()=>{this.status=3,this.consume&&this.consume()},await this.session.handshake();const i=r.qg(this.info.uri),e=i.pathname.split("/");await this.session.connect(e[1],`rtmp://${i.host}${i.port?":"+i.port:""}/${e[1]}`);const s=e.slice(2);return this.session.play((s.length>1?s.join("/"):s[0])||""),0}async seek(t){return await this.session.seek(Number(t)),0}async size(){return BigInt(0)}async stop(){this.socket&&(await this.socket.stop(),this.socket=null),this.status=4}}},52869:(t,i,e)=>{e.d(i,{A:()=>n});var s=e(84777),r=e(83796);function n(t,i){const e=[];return s.ai(t)&&(t+=""),t&&s.Yj(t)&&r.__(t.split(i),((t,i)=>{(t=t.trim())&&e.push(t)})),e}},55982:(t,i,e)=>{e.d(i,{Q:()=>h});var s,r=e(19371),n=e(54568),a=e(72314);class h{constructor(t){(0,r.A)(this,"num",1),(0,r.A)(this,"den",1),t&&(this.den=t.den,this.num=t.num)}}s=h,(()=>{const t=s.prototype,i=new Map;i.set("num",{0:15,1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0}),i.set("den",{0:15,1:0,2:0,3:0,4:0,5:0,6:0,7:4,8:0}),(0,a.A)(t,n.Og,!0),(0,a.A)(t,n.dc,4),(0,a.A)(t,n.g7,8),(0,a.A)(t,n.JY,i)})()},57709:(t,i,e)=>{function s(t,i){for(;0!==i;)[t,i]=[i,t%i];return t}e.d(i,{A:()=>s})},59483:(t,i,e)=>{e.d(i,{$x:()=>h,bD:()=>o});var s=e(84777),r=e(83796),n=e(23902);async function a(t,i){return{key:await t.readString(await t.readUint16()),value:await h(t,i)}}async function h(t,i){let e;switch(await t.readUint8()){case 0:e=await t.readDouble();break;case 1:e=!!await t.readUint8();break;case 2:e=await t.readString(await t.readUint16());break;case 3:for(e={};t.getPos()<i;){const{key:s,value:r}=await a(t,i);if(e[s]=r,9==(16777215&await t.peekUint24())){await t.skip(3);break}}break;case 8:for(e={},await t.skip(4);t.getPos()<i;){const{key:s,value:r}=await a(t,i);if(e[s]=r,9==(16777215&await t.peekUint24())){await t.skip(3);break}}break;case 9:case 5:e=null;break;case 10:e=[];const s=await t.readUint32();for(let r=0;r<s;r++)e.push(await h(t,i));break;case 11:const r=await t.readDouble(),n=await t.readInt16();e=new Date(r+60*n*1e3);break;case 12:e=await t.readString(await t.readUint32())}return e}function o(t,i){s.ai(i)?(t.writeUint8(0),t.writeDouble(i)):s.o(i)?(t.writeUint8(0),t.writeDouble(Number(i))):s.zM(i)?(t.writeUint8(1),t.writeUint8(i?1:0)):s.Yj(i)?i.length>=65536?(t.writeUint8(12),t.writeUint32(i.length),t.writeString(i)):(t.writeUint8(2),t.writeUint16(i.length),t.writeString(i)):s.YO(i)?(t.writeUint8(10),t.writeUint32(i.length),r.__(i,(i=>{o(t,i)}))):s.Ik(i)?(t.writeUint8(3),n.__(i,((i,e)=>{t.writeUint16(e.length),t.writeString(e),o(t,i)})),t.writeUint24(9)):i instanceof Date?(t.writeUint8(11),t.writeDouble(i.getTime()),t.writeInt16(0)):null==i&&t.writeUint8(5)}},68849:(t,i,e)=>{e.d(i,{iD:()=>s});const s=1024},74817:(t,i,e)=>{e.d(i,{A:()=>n});var s=e(19371),r=e(41662);class n{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1048576,i=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],e=arguments.length>2?arguments[2]:void 0;if((0,s.A)(this,"data",void 0),(0,s.A)(this,"buffer",void 0),(0,s.A)(this,"pointer",void 0),(0,s.A)(this,"pos",void 0),(0,s.A)(this,"size",void 0),(0,s.A)(this,"littleEndian",void 0),(0,s.A)(this,"error",void 0),(0,s.A)(this,"onFlush",void 0),(0,s.A)(this,"onSeek",void 0),this.pointer=0,this.pos=BigInt(0),this.size=t,this.littleEndian=!i,this.error=0,e&&e.view)this.size=e.length,this.buffer=e,this.data=e.view;else if(e&&!e.byteOffset)this.size=e.length,this.buffer=e,this.data=new DataView(this.buffer.buffer);else{if(e)throw new Error("not support subarray of ArrayBuffer");this.buffer=new Uint8Array(this.size),this.data=new DataView(this.buffer.buffer)}}writeUint8(t){this.remainingLength()<1&&this.flush(),this.data.setUint8(this.pointer,t),this.pointer++,this.pos++}writeUint16(t){this.remainingLength()<2&&this.flush(),this.data.setUint16(this.pointer,t,this.littleEndian),this.pointer+=2,this.pos+=BigInt(2)}writeUint24(t){this.remainingLength()<3&&this.flush();const i=(16711680&t)>>16,e=(65280&t)>>8,s=255&t;this.littleEndian?(this.writeUint8(s),this.writeUint8(e),this.writeUint8(i)):(this.writeUint8(i),this.writeUint8(e),this.writeUint8(s))}writeUint32(t){this.remainingLength()<4&&this.flush(),this.data.setUint32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeUint64(t){this.remainingLength()<8&&this.flush(),this.data.setBigUint64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}writeInt8(t){this.remainingLength()<1&&this.flush(),this.data.setInt8(this.pointer,t),this.pointer++,this.pos++}writeInt16(t){this.remainingLength()<2&&this.flush(),this.data.setInt16(this.pointer,t,this.littleEndian),this.pointer+=2,this.pos+=BigInt(2)}writeInt24(t){this.writeUint24(t<0?t+16777216:t)}writeInt32(t){this.remainingLength()<4&&this.flush(),this.data.setInt32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeInt64(t){this.remainingLength()<8&&this.flush(),this.data.setBigInt64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}writeFloat(t){this.remainingLength()<4&&this.flush(),this.data.setFloat32(this.pointer,t,this.littleEndian),this.pointer+=4,this.pos+=BigInt(4)}writeDouble(t){this.remainingLength()<8&&this.flush(),this.data.setFloat64(this.pointer,t,this.littleEndian),this.pointer+=8,this.pos+=BigInt(8)}getPointer(){return this.pointer}getPos(){return this.pos}remainingLength(){return this.size-this.pointer}writeBuffer(t){if(!t.length)return;let i=t.length;if(this.remainingLength()<i){let e=0;for(;i>0;){this.flush();const s=Math.min(this.size,i);this.buffer.set(t.subarray(e,e+s),this.pointer),this.pointer+=s,this.pos+=BigInt(s),e+=s,i-=s}}else this.buffer.set(t,this.pointer),this.pointer+=i,this.pos+=BigInt(i)}writeString(t){const i=r.encode(t);return this.writeBuffer(i),i.length}flush(){if(!this.onFlush)throw this.error=-1048574,Error("IOWriter error, flush failed because of no flush callback");if(this.pointer){const t=this.onFlush(this.buffer.subarray(0,this.pointer));if(0!==t)throw this.error=t,Error("IOWriter error, flush failed")}this.pointer=0}flushToPos(t){if(!this.onFlush)throw this.error=-1048574,Error("IOWriter error, flush failed because of no flush callback");if(this.pointer){const i=this.onFlush(this.buffer.subarray(0,this.pointer),t);if(0!==i)throw this.error=i,Error("IOWriter error, flush failed")}this.pointer=0}seek(t){if(!this.onSeek)throw this.error=-1048574,Error("IOWriter error, seek failed because of no seek callback");this.flush();const i=this.onSeek(t);if(0!==i)throw this.error=i,Error("IOWriter error, seek failed");this.pos=t}seekInline(t){const i=this.pointer;this.pointer=Math.max(0,Math.min(this.size,t)),this.pos+=BigInt(this.pointer-i)}skip(t){const i=this.pointer;this.pointer=Math.min(this.size,this.pointer+t),this.pos+=BigInt(this.pointer-i)}back(t){const i=this.pointer;this.pointer=Math.max(0,this.pointer-t),this.pos+=BigInt(this.pointer-i)}getBuffer(){return this.buffer.subarray(0,this.pointer)}setEndian(t){this.littleEndian=!t}reset(){this.pointer=0,this.pos=BigInt(0),this.error=0}getBufferSize(){return this.size}}},77160:(t,i,e)=>{e.d(i,{Tl:()=>a,an:()=>r,s2:()=>n});var s=e(19371);class r{constructor(){(0,s.A)(this,"list",[])}}async function n(t){return new Promise((i=>{t.list.push(i),1===t.list.length&&i()}))}function a(t){t.list.shift(),t.list.length&&t.list[0]()}},87114:(t,i,e)=>{e.d(i,{A:()=>o});var s=e(19371),r=e(34117),n=e(41662),a=e(56289);const h="packages/common/src/io/IOReader.ts";class o{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1048576,i=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],e=arguments.length>2?arguments[2]:void 0;if((0,s.A)(this,"data",void 0),(0,s.A)(this,"buffer",void 0),(0,s.A)(this,"pointer",void 0),(0,s.A)(this,"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),(0,s.A)(this,"flushResolve",void 0),this.pos=BigInt(0),this.pointer=0,this.error=0,this.endPointer=0,this.littleEndian=!i,this.flags=0,e&&e.view)this.size=e.length,this.buffer=e,this.data=e.view;else if(e&&!e.byteOffset)this.size=e.length,this.buffer=e,this.data=new DataView(this.buffer.buffer);else{if(e)throw new Error("not support subarray of ArrayBuffer");this.size=Math.max(t,102400),this.buffer=new Uint8Array(this.size),this.data=new DataView(this.buffer.buffer)}}async readUint8(){this.remainingLength()<1&&await this.flush(1);const t=this.data.getUint8(this.pointer);return this.pointer++,this.pos++,t}async peekUint8(){return this.remainingLength()<1&&await this.flush(1),this.data.getUint8(this.pointer)}async readUint16(){this.remainingLength()<2&&await this.flush(2);const t=this.data.getUint16(this.pointer,this.littleEndian);return this.pointer+=2,this.pos+=BigInt(2),t}async peekUint16(){return this.remainingLength()<2&&await this.flush(2),this.data.getUint16(this.pointer,this.littleEndian)}async readUint24(){this.remainingLength()<3&&await this.flush(3);const t=await this.readUint16(),i=await this.readUint8();return this.littleEndian?i<<16|t:t<<8|i}async peekUint24(){this.remainingLength()<3&&await this.flush(3);const t=this.pointer,i=this.pos,e=await this.readUint16(),s=await this.readUint8(),r=this.littleEndian?s<<16|e:e<<8|s;return this.pointer=t,this.pos=i,r}async readUint32(){this.remainingLength()<4&&await this.flush(4);const t=this.data.getUint32(this.pointer,this.littleEndian);return this.pointer+=4,this.pos+=BigInt(4),t}async peekUint32(){return this.remainingLength()<4&&await this.flush(4),this.data.getUint32(this.pointer,this.littleEndian)}async readUint64(){this.remainingLength()<8&&await this.flush(8);const t=this.data.getBigUint64(this.pointer,this.littleEndian);return this.pointer+=8,this.pos+=BigInt(8),t}async peekUint64(){return this.remainingLength()<8&&await this.flush(8),this.data.getBigUint64(this.pointer,this.littleEndian)}async readInt8(){this.remainingLength()<1&&await this.flush(1);const t=this.data.getInt8(this.pointer);return this.pointer++,this.pos++,t}async peekInt8(){return this.remainingLength()<1&&await this.flush(1),this.data.getInt8(this.pointer)}async readInt16(){this.remainingLength()<2&&await this.flush(2);const t=this.data.getInt16(this.pointer,this.littleEndian);return this.pointer+=2,this.pos+=BigInt(2),t}async peekInt16(){return this.remainingLength()<2&&await this.flush(2),this.data.getInt16(this.pointer,this.littleEndian)}async readInt24(){const t=await this.readUint24();return 8388608&t?t-16777216:t}async peekInt24(){const t=await this.peekUint24();return 8388608&t?t-16777216:t}async readInt32(){this.remainingLength()<4&&await this.flush(4);const t=this.data.getInt32(this.pointer,this.littleEndian);return this.pointer+=4,this.pos+=BigInt(4),t}async peekInt32(){return this.remainingLength()<4&&await this.flush(4),this.data.getInt32(this.pointer,this.littleEndian)}async readInt64(){this.remainingLength()<8&&await this.flush(8);const t=this.data.getBigInt64(this.pointer,this.littleEndian);return this.pointer+=8,this.pos+=BigInt(8),t}async peekInt64(){return this.remainingLength()<8&&await this.flush(8),this.data.getBigInt64(this.pointer,this.littleEndian)}async readFloat(){this.remainingLength()<4&&await this.flush(4);const t=this.data.getFloat32(this.pointer,this.littleEndian);return this.pointer+=4,this.pos+=BigInt(4),t}async peekFloat(){return this.remainingLength()<4&&await this.flush(4),this.data.getFloat32(this.pointer,this.littleEndian)}async readDouble(){this.remainingLength()<8&&await this.flush(8);const t=this.data.getFloat64(this.pointer,this.littleEndian);return this.pointer+=8,this.pos+=BigInt(8),t}async peekDouble(){return this.remainingLength()<8&&await this.flush(8),this.data.getFloat64(this.pointer,this.littleEndian)}async readHex(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,i="";for(let e=0;e<t;e++){const t=(await this.readUint8()).toString(16);i+=1===t.length?"0"+t:t}return i}async peekHex(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;t>this.size&&(this.error=-1048574,r.h2("peekHex, length too large",h,416)),this.remainingLength()<t&&await this.flush(t);const i=this.pointer,e=this.pos;let s="";for(let i=0;i<t;i++){const t=(await this.readUint8()).toString(16);s+=1===t.length?"0"+t:t}return this.pointer=i,this.pos=e,s}async readBuffer(t,i){if(i||(i=new Uint8Array(t)),this.remainingLength()<t){let e=0;if(this.remainingLength()>0){const s=this.remainingLength();i.set(this.buffer.subarray(this.pointer,this.pointer+s),e),e+=s,this.pointer+=s,this.pos+=BigInt(s),t-=s}for(;t>0;){await this.flush();const s=Math.min(this.endPointer-this.pointer,t);i.set(this.buffer.subarray(this.pointer,this.pointer+s),e),e+=s,this.pointer+=s,this.pos+=BigInt(s),t-=s}}else i.set(this.buffer.subarray(this.pointer,this.pointer+t),0),this.pointer+=t,this.pos+=BigInt(t);return i}async peekBuffer(t,i){return t>this.size&&(this.error=-1048574,r.h2("peekBuffer, length too large",h,501)),this.remainingLength()<t&&await this.flush(t),i||(i=new Uint8Array(t)),i.set(this.buffer.subarray(this.pointer,this.pointer+t),0),i}async readToBuffer(t,i){if(this.remainingLength()<t){let e=0;if(this.remainingLength()>0){const s=this.remainingLength();i.set(this.buffer.subarray(this.pointer,this.pointer+s),e),e+=s,this.pointer+=s,this.pos+=BigInt(s),t-=s}for(;t>0;){try{await this.flush()}catch(t){if(-1048576===this.error&&e)return e;throw t}const s=Math.min(this.endPointer-this.pointer,t);i.set(this.buffer.subarray(this.pointer,this.pointer+s),e),e+=s,this.pointer+=s,this.pos+=BigInt(s),t-=s}return e}return i.set(this.buffer.subarray(this.pointer,this.pointer+t),0),this.pointer+=t,this.pos+=BigInt(t),t}async readString(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;const i=await this.readBuffer(t);return n.decode(i)}async peekString(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;const i=await this.peekBuffer(t);return n.decode(i)}async readLine(){let t="";for(;;){let i=!1;for(let e=this.pointer;e<this.endPointer;e++)if(10===this.buffer[e]||13===this.buffer[e]){e!==this.pointer&&(t+=await this.readString(e-this.pointer)),i=!0;break}if(i)break;t+=await this.readString(this.remainingLength()),await this.flush()}let i=await this.peekUint8();return 10!==i&&13!==i||(this.pointer++,13===i&&(i=await this.peekUint8(),10===i&&this.pointer++)),t}async peekLine(){if(this.remainingLength()<this.size)try{await this.flush()}catch(t){if(-1048576!==this.error)throw t}let t="",i=!1;for(let e=this.pointer;e<this.endPointer;e++)if(10===this.buffer[e]||13===this.buffer[e]){t+=await this.peekString(e-this.pointer),i=!0;break}return i||(this.error=-1048574,r.h2("peekLine, out of buffer",h,659)),t}getPointer(){return this.pointer}getPos(){return this.pos}async skip(t){const i=t;for(;this.remainingLength()<t;)t-=this.remainingLength(),this.pointer=this.endPointer,await this.flush();this.remainingLength()>=t&&(this.pointer+=t),this.pos+=BigInt(i)}remainingLength(){return this.endPointer-this.pointer}async flush_(t){return new Promise((async i=>{for(this.flushResolve=i;;){const e=await this.onFlush(t);if(-1048575!==e){this.flushResolve=null,i(e);break}await new a.A(0)}}))}async flush(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;if(this.onFlush||(this.error=-1048574,r.h2("IOReader error, flush failed because of no flush callback",h,738)),!(this.size-this.remainingLength()<=0)){if(t=Math.min(t,this.size),this.pointer<this.endPointer?(this.buffer.set(this.buffer.subarray(this.pointer,this.endPointer),0),this.endPointer=this.endPointer-this.pointer):this.endPointer=0,this.pointer=0,t)for(;this.remainingLength()<t;){const t=await this.flush_(this.buffer.subarray(this.endPointer));if(t<0)throw this.error=t,new Error(`IOReader error, flush ${-1048576===t?"ended":"failed"}, ret: ${t}`);this.endPointer+=t}else{const t=await this.flush_(this.buffer.subarray(this.endPointer));if(t<0)throw this.error=t,new Error(`IOReader error, flush ${-1048576===t?"ended":"failed"}, ret: ${t}`);this.endPointer+=t}this.error=0}}async seek(t){let i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(!(arguments.length>1&&void 0!==arguments[1]&&arguments[1])){const i=Number(t-this.pos);if(i<0&&Math.abs(i)<=this.pointer)return this.pointer+=i,void(this.pos=t);if(i>0&&this.pointer+i<this.endPointer)return this.pointer+=i,void(this.pos=t);if(0===i)return}this.onSeek||(this.error=-1048574,r.h2("IOReader error, seek failed because of no seek callback",h,809)),this.pointer=this.endPointer=0,this.pos=t;const e=await this.onSeek(t);0!==e&&(this.error=e,r.h2("IOReader error, seek failed",h,818)),i&&await this.flush()}getBuffer(){return this.buffer}appendBuffer(t){if(this.size-this.endPointer>=t.length)this.buffer.set(t,this.endPointer),this.endPointer+=t.length;else if(this.buffer.set(this.buffer.subarray(this.pointer,this.endPointer),0),this.endPointer=this.endPointer-this.pointer,this.pointer=0,this.size-this.endPointer>=t.length)this.buffer.set(t,this.endPointer),this.endPointer+=t.length;else{const i=Math.min(this.size-this.endPointer,t.length);this.buffer.set(t.subarray(0,i),this.endPointer),this.endPointer+=i,r.R8("IOReader, call appendBuffer but the buffer's size is lagger then the remaining size",h,856)}}reset(){this.pointer=this.endPointer=0,this.pos=BigInt(0),this.error=0}setEndian(t){this.littleEndian=!t}isBigEndian(){return!this.littleEndian}async fileSize(){if(this.fileSize_)return this.fileSize_;if(!this.onSize)return r.R8("IOReader error, fileSize failed because of no onSize callback",h,898),BigInt(0);try{this.fileSize_=await this.onSize()}catch(t){r.R8(`IOReader error, call fileSize failed: ${t}`,h,905),this.fileSize_=BigInt(0)}return this.fileSize_}getBufferSize(){return this.size}async pipe(t,i){if(i)if(this.remainingLength()<i){if(this.remainingLength()>0){const e=this.remainingLength();await t.writeBuffer(this.buffer.subarray(this.pointer,this.pointer+e)),this.pointer+=e,this.pos+=BigInt(e),i-=e}for(;i>0;){await this.flush();const e=Math.min(this.remainingLength(),i);await t.writeBuffer(this.buffer.subarray(this.pointer,this.pointer+e)),this.pointer+=e,this.pos+=BigInt(e),i-=e}}else await t.writeBuffer(this.buffer.subarray(this.pointer,this.pointer+i)),this.pointer+=i,this.pos+=BigInt(i);else{if(this.remainingLength()>0){const i=this.remainingLength();await t.writeBuffer(this.buffer.subarray(this.pointer,this.pointer+i)),this.pointer+=i,this.pos+=BigInt(i)}for(;await this.flush_(this.buffer.subarray(0))>0;){const i=this.remainingLength();await t.writeBuffer(this.buffer.subarray(this.pointer,this.pointer+i)),this.pointer+=i,this.pos+=BigInt(i)}}}abort(){this.error=-1048572,this.flushResolve&&(this.flushResolve(-1048572),this.flushResolve=null)}}},91622:(t,i,e)=>{e.d(i,{U:()=>o,w:()=>f});var s=e(11705),r=e(34117),n=e(18528);const a="packages/avprotocol/src/rtmp/util.ts";async function h(t,i,e){if(i<64)await t.writeUint8(i|e<<6);else if(i<320)await t.writeUint8(e<<6),await t.writeUint8(i-64);else{await t.writeUint8(1|e<<6);const s=i-64;await t.writeUint8(255&s),await t.writeUint8(s>>>8)}}async function o(t,i,e,s){const r=s&&s.extra===e.extra&&e.timestamp>=s.timestamp;let n=e.timestamp;r&&(n-=s.timestamp),e.tsField=n>16777215?16777215:n;let a=0;r&&(e.type===s.type&&e.payload.length===s.payload.length?(a=2,e.tsField===s.tsField&&(a=3)):a=1),await h(t,e.channelId,a),3!==a&&(await t.writeUint24(e.tsField),2!==a&&(await t.writeUint24(e.payload.length),await t.writeUint8(e.type),0===a&&(await t.writeUint8(e.extra),await t.writeUint8(e.extra>>8),await t.writeUint8(e.extra>>16),await t.writeUint8(e.extra>>24)))),16777215===e.tsField&&await t.writeUint32(n);let o=0;for(;o<e.payload.length;){const s=Math.min(i,e.payload.length-o);await t.writeBuffer(e.payload.subarray(o,o+s)),o+=s,o<e.payload.length&&(await h(t,e.channelId,3),16777215===e.tsField&&await t.writeUint32(n))}await t.flush()}async function f(t,i,e){const h=[],o=await t.readUint8();let f=63&o;f<2&&(f=0===await t.readUint8()?await t.readUint8()+64:64+(await t.readUint8()|await t.readUint8()<<8));const l=o>>>6,u=e.get(f);let d=u?u.payload.length:0,p=u?u.type:0,c=u?u.extra:0,w=0,g=0;if(3===l?w=u.tsField:(w=await t.readUint24(),2!==l&&(d=await t.readUint24(),p=await t.readUint8(),0===l&&(c=await t.readUint8(),c|=await t.readUint8()<<8,c|=await t.readUint8()<<16,c|=await t.readUint8()<<24))),g=16777215===w?await t.readUint32():w,0!==l&&(u?g+=u.timestamp:r.R8(`got invalid message fmt, channel id ${f} can not find prev message with fmt ${l}`,a,177)),d<i)h.push(await t.readBuffer(d));else{let e=d;for(;e;){const s=Math.min(i,e);if(h.push(await t.readBuffer(s)),e-=s,e){const i=63&await t.readUint8();i<2&&await t.skip(i+1),16777215===w&&await t.skip(4)}}}const b=new s.u(f,p,g,(0,n.A)(Uint8Array,h));return b.tsField=w,b.extra=c,b}},98568:(t,i,e)=>{e.d(i,{ll:()=>w,mA:()=>a,qg:()=>h});var s=e(84777),r=e(52869),n=e(83796);function a(t){let i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"&";const e={};if(s.Yj(t)&&t.indexOf("=")>=0){let s=t.charAt(0),a="?"===s||"#"===s?1:0;a>0&&(t=t.substr(a)),n.__((0,r.A)(t,i),(t=>{let i=t.split("=");if(2===i.length){var s;let t=null===(s=i[0])||void 0===s?void 0:s.trim();t&&(e[t]=decodeURIComponent(i[1]))}}))}return e}function h(t){const i=t,e=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],s=/:\/\/([^\/@]*@?)\[(\S+)\]/;let r="";s.test(t)&&(t=t.replace(s,((t,i,e)=>(r=e,`://${i||""}a.b`))));const n={},a=/^(?:(?![^:@\/]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@\/]*)(?::([^:@\/]*))?)?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/.exec(t);let h=14;for(;h--;){var o;n[e[h]]=null!==(o=a[h])&&void 0!==o?o:""}return r&&(n.host=r,n.source=i,n.authority=r+(n.port?":"+n.port:"")),{protocol:n.protocol,file:n.file,host:n.host,port:n.port,user:n.user,password:n.password,origin:`${n.protocol}://${n.authority}`,pathname:n.path,search:`?${n.query}`,hash:n.anchor?`#${n.anchor}`:""}}const o=/(?:\/|^)\.(?=\/)/g,f=/(?:\/|^)\.\.\/(?!\.\.\/)[^\/]*(?=\/)/g,l=/^(?=([^\/?#]*))\1([^]*)$/,u=/^(?=((?:[a-zA-Z0-9+\-.]+:)?))\1(?=((?:\/\/[^\/?#]*)?))\2(?=((?:(?:[^?#\/]*\/)*[^;?#\/]*)?))\3((?:;[^?#]*)?)(\?[^#]*)?(#[^]*)?$/;function d(t){return t.scheme+t.netLoc+t.path+t.params+t.query+t.fragment}function p(t){const i=u.exec(t);return i?{scheme:i[1]||"",netLoc:i[2]||"",path:i[3]||"",params:i[4]||"",query:i[5]||"",fragment:i[6]||""}:null}function c(t){for(t=t.split("").reverse().join("").replace(o,"");t.length!==(t=t.replace(f,"")).length;);return t.split("").reverse().join("")}function w(t,i,e){if(e=e||{},t=t.trim(),!(i=i.trim())){if(!e.alwaysNormalize)return t;let i=p(t);if(!i)throw new Error("Error trying to parse base URL.");return i.path=c(i.path),d(i)}let s=p(i);if(!s)throw new Error("Error trying to parse relative URL.");if(s.scheme)return e.alwaysNormalize?(s.path=c(s.path),d(s)):i;let r=p(t);if(!r)throw new Error("Error trying to parse base URL.");if(!r.netLoc&&r.path&&"/"!==r.path[0]){let t=l.exec(r.path);r.netLoc=t[1],r.path=t[2]}r.netLoc&&!r.path&&(r.path="/");const n={scheme:r.scheme,netLoc:s.netLoc,path:null,params:s.params,query:s.query,fragment:s.fragment};if(!s.netLoc&&(n.netLoc=r.netLoc,"/"!==s.path[0]))if(s.path){let t=r.path,i=t.substring(0,t.lastIndexOf("/")+1)+s.path;n.path=c(i)}else n.path=r.path,s.params||(n.params=r.params,s.query||(n.query=r.query));return null===n.path&&(n.path=e.alwaysNormalize?c(s.path):s.path),d(n)}},98901:(t,i,e)=>{e.d(i,{FP:()=>o,Mr:()=>h,iU:()=>u,j2:()=>l,k:()=>a,lb:()=>f});var s=e(56238),r=e(29688),n=e(57709);function a(t,i,e){return t*BigInt(i.num)*BigInt(e.den)/(BigInt(i.den)*BigInt(e.num))}function h(t,i,e){return t*BigInt(s.f[15](i))*BigInt(e.den)/(BigInt(s.f[15](i+4))*BigInt(e.num))}function o(t,i,e){return t*BigInt(i.num)*BigInt(s.f[15](e+4))/(BigInt(i.den)*BigInt(s.f[15](e)))}function f(t){return t.num/t.den}function l(t,i){if(isNaN(19))return{den:0,num:0};if(Math.abs(t)>r.go+3)return{den:0,num:t<0?-1:1};const e=t>1?{den:Math.floor(i/t+.5),num:i}:{den:i,num:Math.floor(t*i+.5)};return u(e),e}function u(t){const i=(0,n.A)(t.num,t.den);i<=1||(t.den/=i,t.num/=i)}},99577:(t,i,e)=>{e.d(i,{FJ:()=>s,U5:()=>r});const s={10:86018,2:86017,11:86051,1:69645,4:86049,5:86049,6:86049,7:65543,8:65542},r={7:27,12:173,9:12,2:4,3:86,4:92,5:106,6:131}}}]);
|