@remotion/media-parser
Version:
A pure JavaScript library for parsing video files
45 lines (44 loc) • 1.5 kB
TypeScript
import type { MediaParserController } from '../controller/media-parser-controller';
import type { MediaParserLogLevel } from '../log';
import type { ParseMediaRange, ParseMediaSrc } from '../options';
import type { PrefetchCache } from './from-fetch';
export type Reader = {
reader: ReadableStreamDefaultReader<Uint8Array>;
abort: () => Promise<void>;
};
type ReadResult = {
reader: Reader;
contentLength: number | null;
contentType: string | null;
name: string;
supportsContentRange: boolean;
needsContentRange: boolean;
};
export type ReadContent = (options: {
src: ParseMediaSrc;
range: ParseMediaRange;
controller: MediaParserController;
logLevel: MediaParserLogLevel;
prefetchCache: PrefetchCache;
}) => Promise<ReadResult>;
export type ReadWholeAsText = (src: ParseMediaSrc) => Promise<string>;
export type PreloadContent = (options: {
src: ParseMediaSrc;
range: ParseMediaRange;
logLevel: MediaParserLogLevel;
prefetchCache: PrefetchCache;
}) => void;
export type ClearPreloadCache = (options: {
src: ParseMediaSrc;
range: ParseMediaRange;
logLevel: MediaParserLogLevel;
prefetchCache: PrefetchCache;
}) => void;
export type CreateAdjacentFileSource = (relativePath: string, src: ParseMediaSrc) => string;
export type MediaParserReaderInterface = {
read: ReadContent;
readWholeAsText: ReadWholeAsText;
createAdjacentFileSource: CreateAdjacentFileSource;
preload: PreloadContent;
};
export {};