Initial working version

This commit is contained in:
Samuel Kent
2022-12-22 20:22:22 +11:00
parent ce9675a1cc
commit ced7fa5092
902 changed files with 150252 additions and 0 deletions
+30
View File
@@ -0,0 +1,30 @@
import * as strtok3 from 'strtok3/lib/core';
import { IOptions, IRandomReader, IApeHeader } from '../type';
import { INativeMetadataCollector } from '../common/MetadataCollector';
import { BasicParser } from '../common/BasicParser';
import { IFooter, IHeader } from './APEv2Token';
export declare class APEv2Parser extends BasicParser {
static tryParseApeHeader(metadata: INativeMetadataCollector, tokenizer: strtok3.ITokenizer, options: IOptions): Promise<void>;
/**
* Calculate the media file duration
* @param ah ApeHeader
* @return {number} duration in seconds
*/
static calculateDuration(ah: IHeader): number;
/**
* Calculates the APEv1 / APEv2 first field offset
* @param reader
* @param offset
*/
static findApeFooterOffset(reader: IRandomReader, offset: number): Promise<IApeHeader>;
private static parseTagFooter;
private ape;
/**
* Parse APEv1 / APEv2 header if header signature found
*/
tryParseApeHeader(): Promise<void>;
parse(): Promise<void>;
parseTags(footer: IFooter): Promise<void>;
private parseDescriptorExpansion;
private parseHeader;
}