UNPKG

asf-file-props

Version:

Extract basic metadata from ASF/WMA/WMV files

25 lines (22 loc) 853 B
import { PathLike } from 'fs'; import { FileHandle } from 'fs/promises'; import { ASFFileProps } from './ASFFileProps'; import { filePropsObjectGuid, getFields } from './common.js'; export async function getASFProps(filePath: PathLike | FileHandle): Promise<ASFFileProps | null> { if (typeof process !== 'object') { return null; } const { promises: fsp } = await import('fs'); try { const buffer = await fsp.readFile(filePath); const filePropsObjectPos = buffer.indexOf(filePropsObjectGuid); if (filePropsObjectPos === -1) { console.error("ASF file header not found."); return null; } return getFields(buffer, filePropsObjectPos); } catch (error) { console.error("Error reading ASF file:", error); return null; } }