PageSourceSearch

https://www.benjaminspeed.com/_next/static/chunks/531.d20c2a5a208d8001.js

js benjaminspeed.com collected 2026-10-08 05:21:25 UTC 15,097 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[531],{2912:(e,t,a)=>{a.r(t),a.d(t,{AsfParser:()=>N});var i=a(3220),r=a(2168),n=a(8185);function s(e){let t,a=e.trim();if(36!==a.length||"-"!==a[8]||"-"!==a[13]||"-"!==a[18]||"-"!==a[23])throw Error(`Invalid GUID format: ${e}`);let i=new Uint8Array(16);t=parseInt(a.slice(0,8),16),i[0]=255&t,i[1]=t>>>8&255,i[2]=t>>>16&255,i[3]=t>>>24&255,t=parseInt(a.slice(9,13),16),i[4]=255&t,i[5]=t>>>8&255,t=parseInt(a.slice(14,18),16),i[6]=255&t,i[7]=t>>>8&255,t=parseInt(a.slice(19,23),16),i[8]=t>>>8&255,i[9]=255&t,t=parseInt(a.slice(24,32),16),i[10]=t>>>24&255,i[11]=t>>>16&255,i[12]=t>>>8&255,i[13]=255&t,t=parseInt(a.slice(32,36),16),i[14]=t>>>8&255,i[15]=255&t;for(let t=0;t<16;t++)if(!Number.isFinite(i[t]))throw Error(`Invalid GUID format: ${e}`);if(!/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/.test(a))throw Error(`Invalid GUID format: ${e}`);return i}class o{constructor(e){if(16!==e.length)throw Error("GUID must be exactly 16 bytes");this.bytes=e}static fromString(e){return new o(s(e))}toString(){let e=this.bytes,t=e=>e.toString(16).padStart(2,"0"),a=t(e[3])+t(e[2])+t(e[1])+t(e[0]),i=t(e[5])+t(e[4]),r=t(e[7])+t(e[6]),n=t(e[8])+t(e[9]),s=t(e[10])+t(e[11])+t(e[12])+t(e[13])+t(e[14])+t(e[15]);return`${a}-${i}-${r}-${n}-${s}`.toUpperCase()}equals(e,t=0){if(t<0||e.length-t<16)return!1;let a=this.bytes;for(let i=0;i<16;i++)if(e[t+i]!==a[i])return!1;return!0}}class c{static fromBin(e,t=0){return new c(c.decode(e,t))}static decode(e,t=0){return new o(e.subarray(t,t+16)).toString()}static decodeMediaType(e){switch(e.str){case c.AudioMedia.str:return"audio";case c.VideoMedia.str:return"video";case c.CommandMedia.str:return"command";case c.Degradable_JPEG_Media.str:return"degradable-jpeg";case c.FileTransferMedia.str:return"file-transfer";case c.BinaryMedia.str:return"binary"}}static encode(e){return s(e)}constructor(e){this.str=e}equals(e){return this.str===e.str}toBin(){return c.encode(this.str)}}c.HeaderObject=new c("75B22630-668E-11CF-A6D9-00AA0062CE6C"),c.DataObject=new c("75B22636-668E-11CF-A6D9-00AA0062CE6C"),c.SimpleIndexObject=new c("33000890-E5B1-11CF-89F4-00A0C90349CB"),c.IndexObject=new c("D6E229D3-35DA-11D1-9034-00A0C90349BE"),c.MediaObjectIndexObject=new c("FEB103F8-12AD-4C64-840F-2A1D2F7AD48C"),c.TimecodeIndexObject=new c("3CB73FD0-0C4A-4803-953D-EDF7B6228F0C"),c.FilePropertiesObject=new c("8CABDCA1-A947-11CF-8EE4-00C00C205365"),c.StreamPropertiesObject=new c("B7DC0791-A9B7-11CF-8EE6-00C00C205365"),c.HeaderExtensionObject=new c("5FBF03B5-A92E-11CF-8EE3-00C00C205365"),c.CodecListObject=new c("86D15240-311D-11D0-A3A4-00A0C90348F6"),c.ScriptCommandObject=new c("1EFB1A30-0B62-11D0-A39B-00A0C90348F6"),c.MarkerObject=new c("F487CD01-A951-11CF-8EE6-00C00C205365"),c.BitrateMutualExclusionObject=new c("D6E229DC-35DA-11D1-9034-00A0C90349BE"),c.ErrorCorrectionObject=new c("75B22635-668E-11CF-A6D9-00AA0062CE6C"),c.ContentDescriptionObject=new c("75B22633-668E-11CF-A6D9-00AA0062CE6C"),c.ExtendedContentDescriptionObject=new c("D2D0A440-E307-11D2-97F0-00A0C95EA850"),c.ContentBrandingObject=new c("2211B3FA-BD23-11D2-B4B7-00A0C955FC6E"),c.StreamBitratePropertiesObject=new c("7BF875CE-468D-11D1-8D82-006097C9A2B2"),c.ContentEncryptionObject=new c("2211B3FB-BD23-11D2-B4B7-00A0C955FC6E"),c.ExtendedContentEncryptionObject=new c("298AE614-2622-4C17-B935-DAE07EE9289C"),c.DigitalSignatureObject=ne
1w c("2211B3FC-BD23-11D2-B4B7-00A0C955FC6E"),c.PaddingObject=new c("1806D474-CADF-4509-A4BA-9AABCB96AAE8"),c.ExtendedStreamPropertiesObject=new c("14E6A5CB-C672-4332-8399-A96952065B5A"),c.AdvancedMutualExclusionObject=new c("A08649CF-4775-4670-8A16-6E35357566CD"),c.GroupMutualExclusionObject=new c("D1465A40-5A79-4338-B71B-E36B8FD6C249"),c.StreamPrioritizationObject=new c("D4FED15B-88D3-454F-81F0-ED5C45999E24"),c.BandwidthSharingObject=new c("A69609E6-517B-11D2-B6AF-00C04FD908E9"),c.LanguageListObject=new c("7C4346A9-EFE0-4BFC-B229-393EDE415C85"),c.MetadataObject=new c("C5F8CBEA-5BAF-4877-8467-AA8C44FA4CCA"),c.MetadataLibraryObject=new c("44231C94-9498-49D1-A141-1D134E457054"),c.IndexParametersObject=new c("D6E229DF-35DA-11D1-9034-00A0C90349BE"),c.MediaObjectIndexParametersObject=new c("6B203BAD-3F11-48E4-ACA8-D7613DE2CFA7"),c.TimecodeIndexParametersObject=new c("F55E496D-9797-4B5D-8C8B-604DFE9BFB24"),c.CompatibilityObject=new c("26F18B5D-4584-47EC-9F5F-0E651F0452C9"),c.AdvancedContentEncryptionObject=new c("43058533-6981-49E6-9B74-AD12CB86D58C"),c.AudioMedia=new c("F8699E40-5B4D-11CF-A8FD-00805F5C442B"),c.VideoMedia=new c("BC19EFC0-5B4D-11CF-A8FD-00805F5C442B"),c.CommandMedia=new c("59DACFC0-59E6-11D0-A3AC-00A0C90348F6"),c.JFIF_Media=new c("B61BE100-5B4E-11CF-A8FD-00805F5C442B"),c.Degradable_JPEG_Media=new c("35907DE0-E415-11CF-A917-00805F5C442B"),c.FileTransferMedia=new c("91BD222C-F21C-497A-8B6D-5AA86BFC0185"),c.BinaryMedia=new c("3AFB65E2-47EF-40F2-AC2C-70A90D71D343"),c.ASF_Index_Placeholder_Object=new c("D9AADE20-7C17-4F9C-BC28-8555DD98E2A2");var d=a(6896),l=a(5016);function b(e){return l.F6(l.sc(e,"utf-16le"))}let u=[b,g,function(e,t=0){return 1===w(e,t)},function(e,t=0){return d.UINT32_LE.get(e,t)},function(e,t=0){return d.UINT64_LE.get(e,t)},w,g];function g(e){return new Uint8Array(e)}function w(e,t=0){return d.UINT16_LE.get(e,t)}var A=a(8498),C=a(2277);class f extends(0,C.fO)("ASF"){}let h={len:30,get:(e,t)=>{let a=m.get(e,t);if(a.objectSize<h.len)throw new f(`Invalid ASF top-level header object size: ${a.objectSize}`);return{...a,numberOfHeaderObjects:d.UINT32_LE.get(e,t+24)}}},m={len:24,get:(e,t)=>{let a=d.UINT64_LE.get(e,t+16);if(a<BigInt(m.len)||a>BigInt(Number.MAX_SAFE_INTEGER))throw new f(`Invalid ASF header object size: ${a}`);return{objectId:c.fromBin(e,t),objectSize:Number(a)}}};class F{constructor(e){this.len=e.objectSize-m.len}postProcessTag(e,t,a,i){if("WM/Picture"===t)e.push({id:t,value:P.fromBuffer(i)});else{let r=u[a];if(!r)throw new f(`unexpected value headerType: ${a}`);e.push({id:t,value:r(i)})}}}class E extends F{get(e,t){return{fileId:c.fromBin(e,t),fileSize:d.UINT64_LE.get(e,t+16),creationDate:d.UINT64_LE.get(e,t+24),dataPacketsCount:d.UINT64_LE.get(e,t+32),playDuration:d.UINT64_LE.get(e,t+40),sendDuration:d.UINT64_LE.get(e,t+48),preroll:d.UINT64_LE.get(e,t+56),flags:{broadcast:l.mh(e,t+64,24),seekable:l.mh(e,t+64,25)},minimumDataPacketSize:d.UINT32_LE.get(e,t+68),maximumDataPacketSize:d.UINT32_LE.get(e,t+72),maximumBitrate:d.UINT32_LE.get(e,t+76)}}}E.guid=c.FilePropertiesObject;class D extends F{get(e,t){return{streamType:c.decodeMediaType(c.fromBin(e,t)),errorCorrectionType:c.fromBin(e,t+8)}}}D.guid=c.StreamPropertiesObject;class j{constructor(){this.len=22}get(e,t){let a=new DataView(e.buffer,t);return{reserved1:c.fromBin(e,t),reserved2:a.getUint16(16,!0),extensionDataSize:a.getUint32(18,!0)}}}j.guid=c.HeaderExtensionObject;let B={len:20,get:(e,t)=>({entryCount:new DataView(e.buffer,t).getUint16(16,!0)})};class p{constructor(e,t){this.tokenizer=e,this.remaining=t}async readToken(e){this.ensureAvailable(e.len);let t=await this.tokenizer.readToken(e);return this.remaining-=e.len,t}async readNumber(e){return this.readToken(e)}async readBuffer(e){this.ensureAvailable(e);let t=new Uint8Array(e);return await this.tokenizer.readBuffer(t),this.remaining-=e,t}async ignoreRemaining(){let e=await this.tokenizer.ignore(this.remaining);if(e!==this.remaining)throw new f(`Unexpected end of ASF Codec List Object; missing ${this.remaining-e} bytes`);this.remaining=0}ensureAvailable(e){if(e>this.remaining)throw new f(`ASF Codec List field size ${e} exceeds remaining object payload size ${this.remaining}`)}}async function O(e){let t=await e.readNumber(d.UINT16_LE);return(await e.readToken(new d.StringType(2*t,"utf-16le"))).replace("\0","")}async function y(e,t){let a=new p(e,t),i=await a.readToken(B),r=[];for(let e=0;e<i.entryCount;++e)r.push(await S(a));return await a.ignoreRemaining(),r}async function I(e){let t=await e.readNumber(d.UINT16_LE);return e.readBuffer(t)}async function S(e){let t=await e.readNumber(d.UINT16_LE);return{type:{videoCodec:(1&t)==1,audioCodec:(2&t)==2},codecName:await O(e),description:await O(e),information:await I(e)}}class T extends F{get(e,t){let a=[],i=new DataView(e.buffer,t),r=10;for(let n=0;n<T.contentDescTags.length;++n){let s=i.getUint16(2*n,!0);if(s>0){let i=T.contentDescTags[n],o=r+s;a.push({id:i,value:b(e.subarray(t+r,t+o))}),r=o}}return a}}T.guid=c.ContentDescriptionObject,T.contentDescTags=["Title","Author","Copyright","Description","Rating"];class z extends F{get(e,t){let a=[],i=new DataView(e.buffer,t),r=i.getUint16(0,!0),n=2;
1for(let s=0;s<r;s+=1){let r=i.getUint16(n,!0);n+=2;let s=b(e.subarray(t+n,t+n+r));n+=r;let o=i.getUint16(n,!0);n+=2;let c=i.getUint16(n,!0);n+=2;let d=e.subarray(t+n,t+n+c);n+=c,this.postProcessTag(a,s,o,d)}return a}}z.guid=c.ExtendedContentDescriptionObject;class x extends F{get(e,t){let a=new DataView(e.buffer,t);return{startTime:d.UINT64_LE.get(e,t),endTime:d.UINT64_LE.get(e,t+8),dataBitrate:a.getInt32(12,!0),bufferSize:a.getInt32(16,!0),initialBufferFullness:a.getInt32(20,!0),alternateDataBitrate:a.getInt32(24,!0),alternateBufferSize:a.getInt32(28,!0),alternateInitialBufferFullness:a.getInt32(32,!0),maximumObjectSize:a.getInt32(36,!0),flags:{reliableFlag:l.mh(e,t+40,0),seekableFlag:l.mh(e,t+40,1),resendLiveCleanpointsFlag:l.mh(e,t+40,2)},streamNumber:a.getInt16(42,!0),streamLanguageId:a.getInt16(44,!0),averageTimePerFrame:a.getInt32(52,!0),streamNameCount:a.getInt32(54,!0),payloadExtensionSystems:a.getInt32(56,!0),streamNames:[],streamPropertiesObject:null}}}x.guid=c.ExtendedStreamPropertiesObject;class k extends F{get(e,t){let a=[],i=new DataView(e.buffer,t),r=i.getUint16(0,!0),n=2;for(let s=0;s<r;s+=1){n+=4;let r=i.getUint16(n,!0);n+=2;let s=i.getUint16(n,!0);n+=2;let o=i.getUint32(n,!0);n+=4;let c=b(e.subarray(t+n,t+n+r));n+=r;let d=e.subarray(t+n,t+n+o);n+=o,this.postProcessTag(a,c,s,d)}return a}}k.guid=c.MetadataObject;class U extends k{}U.guid=c.MetadataLibraryObject;class P{static fromBuffer(e){return new P(e.length).get(e,0)}constructor(e){this.len=e}get(e,t){let a=new DataView(e.buffer,t),i=a.getUint8(0),r=a.getInt32(1,!0),n=5;for(;0!==a.getUint16(n);)n+=2;let s=new d.StringType(n-5,"utf-16le").get(e,5);for(;0!==a.getUint16(n);)n+=2;let o=new d.StringType(n-5,"utf-16le").get(e,5);return{type:A.n5[i],format:s,description:o,size:r,data:e.slice(n+4)}}}var v=a(7429);let $=i("music-metadata:parser:ASF");class N extends v.s{async parse(){let e=await this.tokenizer.readToken(h);if(!e.objectId.equals(c.HeaderObject))throw new f(`expected asf header; but was not found; got: ${e.objectId.str}`);if(e.numberOfHeaderObjects<1||e.numberOfHeaderObjects>1e4)throw new f(`Unrealistic number of ASF header objects: ${e.numberOfHeaderObjects}`);await this.parseObjectHeaders(e.numberOfHeaderObjects,e.objectSize-h.len)}async parseObjectHeaders(e,t){let a;for(let i=0;i<e;++i){let{header:e,payloadSize:i}=await this.readObjectHeader(t,"header");switch($("header GUID=%s",e.objectId.str),e.objectId.str){case E.guid.str:{this.validateAllocationSize(i,"File Properties Object");let t=await this.tokenizer.readToken(new E(e));this.metadata.setFormat("duration",Number(t.playDuration/BigInt(1e3))/1e4-Number(t.preroll)/1e3),this.metadata.setFormat("bitrate",t.maximumBitrate);break}case D.guid.str:{this.validateAllocationSize(i,"Stream Properties Object");let t=await this.tokenizer.readToken(new D(e));this.metadata.setFormat("container",`ASF/${t.streamType}`);break}case j.guid.str:{let e=new j;if(i<e.len)throw new f(`ASF Header Extension Object payload is too small: ${i} bytes`);let t=await this.tokenizer.readToken(e),a=i-e.len;if(t.extensionDataSize!==a)throw new f(`ASF extension data size ${t.extensionDataSize} does not match enclosing payload size ${a}`);await this.parseExtensionObject(t.extensionDataSize);break}case T.guid.str:this.validateAllocationSize(i,"Content Description Object"),a=await this.tokenizer.readToken(new T(e)),await this.addTags(a);break;case z.guid.str:this.validateAllocationSize(i,"Extended Content Description Object"),a=await this.tokenizer.readToken(new z(e)),await this.addTags(a);break;case c.CodecListObject.str:{let e;this.validateAllocationSize(i,"Codec List Object");try{e=await y(this.tokenizer,i)}catch(t){let e=t instanceof Error?t.message:String(t);throw new f(`Invalid ASF Codec List Object: ${e}`)}e.forEach(e=>{this.metadata.addStreamInfo({type:e.type.videoCodec?n.S.video:n.S.audio,codecName:e.codecName})});let t=e.filter(e=>e.type.audioCodec).map(e=>e.codecName).join("/");this.metadata.setFormat("codec",t);break}case c.StreamBitratePropertiesObject.str:await this.ignorePayload(i,"Stream Bitrate Properties Object");break;
1case c.PaddingObject.str:$("Padding: %s bytes",i),await this.ignorePayload(i,"Padding Object");break;default:this.metadata.addWarning(`Ignore ASF-Object-GUID: ${e.objectId.str}`),$("Ignore ASF-Object-GUID: %s",e.objectId.str),await this.ignorePayload(i,`object ${e.objectId.str}`)}t-=e.objectSize}if(0!==t)throw new f(`ASF header child objects leave ${t} payload byte(s) unaccounted`)}async addTags(e){await Promise.all(e.map(({id:e,value:t})=>this.metadata.addTag("asf",e,t)))}async readObjectHeader(e,t){if(e<m.len)throw new f(`Insufficient ASF ${t} data for an object header: ${e} bytes`);let a=await this.tokenizer.readToken(m);if(a.objectSize>e)throw new f(`ASF ${t} object size ${a.objectSize} exceeds remaining ${t} payload size ${e}`);return{header:a,payloadSize:this.validatePayloadAvailability(a,`${t} object`)}}validatePayloadAvailability(e,t){let a=e.objectSize-m.len,i=this.tokenizer.fileInfo.size;if(void 0!==i){let e=i-this.tokenizer.position;if(a>e)throw new f(`ASF ${t} payload size ${a} exceeds available input size ${e}`)}return a}validateAllocationSize(e,t){if(e>0x1000000)throw new f(`ASF ${t} payload size ${e} exceeds allocation limit 16777216`)}async ignorePayload(e,t){let a;try{a=await this.tokenizer.ignore(e)}catch(e){if(e instanceof r.d1)throw new f(`Unexpected end of ASF ${t}`);throw e}if(a!==e)throw new f(`Unexpected end of ASF ${t}; missing ${e-a} bytes`)}async parseExtensionObject(e){for(;e>0;){let{header:t,payloadSize:a}=await this.readObjectHeader(e,"extension");switch(t.objectId.str){case x.guid.str:this.validateAllocationSize(a,"Extended Stream Properties Object"),await this.tokenizer.readToken(new x(t));break;case k.guid.str:{this.validateAllocationSize(a,"Metadata Object");let e=await this.tokenizer.readToken(new k(t));await this.addTags(e);break}case U.guid.str:{this.validateAllocationSize(a,"Metadata Library Object");let e=await this.tokenizer.readToken(new U(t));await this.addTags(e);break}case c.PaddingObject.str:await this.ignorePayload(a,"extension Padding Object");break;case c.CompatibilityObject.str:await this.ignorePayload(a,"Compatibility Object");break;case c.ASF_Index_Placeholder_Object.str:await this.ignorePayload(a,"Index Placeholder Object");break;default:this.metadata.addWarning(`Ignore ASF-Object-GUID: ${t.objectId.str}`),await this.ignorePayload(a,`extension object ${t.objectId.str}`)}e-=t.objectSize}}}}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.