/** @packageDocumentation Audio properties for Matroska/WebM files. */ import { AudioProperties } from "../audioProperties.js"; import { ReadStyle } from "../toolkit/types.js"; /** * Audio properties for Matroska files (MKV, MKA, WebM). */ export declare class MatroskaProperties extends AudioProperties { /** Playback duration in milliseconds. */ private _lengthMs; /** Bitrate in kbit/s, or -1 if not yet computed. */ private _bitrate; /** Sample rate in Hz. */ private _sampleRate; /** Number of audio channels. */ private _channels; /** Bits per sample (bit depth), or 0 if unspecified. */ private _bitsPerSample; /** Codec identifier string (e.g. `"A_AAC"`, `"A_FLAC"`). */ private _codecName; /** EBML DocType string (e.g. `"matroska"`, `"webm"`). */ private _docType; /** EBML DocTypeVersion number. */ private _docTypeVersion; /** Segment title from the Info element. */ private _title; /** Total file length in bytes, used for bitrate estimation. */ private _fileLength; /** * Construct audio properties with the given read style. * @param readStyle - Detail level for audio property parsing. */ constructor(readStyle?: ReadStyle); /** Playback duration in milliseconds. */ get lengthInMilliseconds(): number; /** Bitrate in kbit/s, computed lazily from file length and duration. */ get bitrate(): number; /** Sample rate in Hz. */ get sampleRate(): number; /** Number of audio channels. */ get channels(): number; /** Bits per sample (bit depth), or 0 if unspecified. */ get bitsPerSample(): number; /** Codec identifier string (e.g. `"A_AAC"`, `"A_FLAC"`). */ get codecName(): string; /** EBML DocType string (e.g. `"matroska"`, `"webm"`). */ get docType(): string; /** EBML DocTypeVersion number. */ get docTypeVersion(): number; /** Segment title from the Info element. */ get title(): string; /** @param ms - Playback duration in milliseconds. */ setLengthInMilliseconds(ms: number): void; /** @param rate - Sample rate in Hz. */ setSampleRate(rate: number): void; /** @param ch - Number of audio channels. */ setChannels(ch: number): void; /** @param bits - Bits per sample (bit depth). */ setBitsPerSample(bits: number): void; /** @param name - Codec identifier string. */ setCodecName(name: string): void; /** @param type - EBML DocType string. */ setDocType(type: string): void; /** @param version - EBML DocTypeVersion number. */ setDocTypeVersion(version: number): void; /** @param title - Segment title. */ setTitle(title: string): void; /** @param length - Total file length in bytes. */ setFileLength(length: number): void; } //# sourceMappingURL=matroskaProperties.d.ts.map