export default MPEG1;
declare class MPEG1 extends BaseDecoder {
    static CopyBlockToDestination(block: any, dest: any, index: any, scan: any): void;
    static AddBlockToDestination(block: any, dest: any, index: any, scan: any): void;
    static CopyValueToDestination(value: any, dest: any, index: any, scan: any): void;
    static AddValueToDestination(value: any, dest: any, index: any, scan: any): void;
    static IDCT(block: any): void;
    onDecodeCallback: any;
    bits: BitBuffer;
    customIntraQuantMatrix: Uint8Array;
    customNonIntraQuantMatrix: Uint8Array;
    blockData: Int32Array;
    currentFrame: number;
    decodeFirstFrame: boolean;
    write(pts: any, buffers: any): boolean;
    decode(): boolean;
    readHuffman(codeTable: any): any;
    decodeSequenceHeader(): void;
    frameRate: number;
    width: any;
    height: number;
    intraQuantMatrix: Uint8Array;
    nonIntraQuantMatrix: Uint8Array;
    hasSequenceHeader: boolean;
    initBuffers(): void;
    mbWidth: number;
    mbHeight: number;
    mbSize: number;
    codedWidth: number;
    codedHeight: number;
    codedSize: number;
    halfWidth: number;
    halfHeight: number;
    currentY: any;
    currentY32: any;
    currentCr: any;
    currentCr32: any;
    currentCb: any;
    currentCb32: any;
    forwardY: any;
    forwardY32: any;
    forwardCr: any;
    forwardCr32: any;
    forwardCb: any;
    forwardCb32: any;
    decodePicture(): void;
    pictureType: number;
    fullPelForward: number | boolean;
    forwardFCode: number;
    forwardRSize: number;
    forwardF: number;
    decodeSlice(slice: any): void;
    sliceBegin: boolean;
    macroblockAddress: number;
    motionFwH: number;
    motionFwHPrev: number;
    motionFwV: number;
    motionFwVPrev: number;
    dcPredictorY: number;
    dcPredictorCr: number;
    dcPredictorCb: number;
    quantizerScale: number;
    decodeMacroblock(): void;
    mbRow: number;
    mbCol: number;
    macroblockType: any;
    macroblockIntra: number | boolean;
    macroblockMotFw: number | boolean;
    decodeMotionVectors(): void;
    copyMacroblock(motionH: any, motionV: any, sY: any, sCr: any, sCb: any): void;
    decodeBlock(block: any): void;
}
declare namespace MPEG1 {
    const PICTURE_RATE: number[];
    const ZIG_ZAG: Uint8Array;
    const DEFAULT_INTRA_QUANT_MATRIX: Uint8Array;
    const DEFAULT_NON_INTRA_QUANT_MATRIX: Uint8Array;
    const PREMULTIPLIER_MATRIX: Uint8Array;
    const MACROBLOCK_ADDRESS_INCREMENT: Int16Array;
    const MACROBLOCK_TYPE_INTRA: Int8Array;
    const MACROBLOCK_TYPE_PREDICTIVE: Int8Array;
    const MACROBLOCK_TYPE_B: Int8Array;
    const MACROBLOCK_TYPE: Int8Array[];
    const CODE_BLOCK_PATTERN: Int16Array;
    const MOTION: Int16Array;
    const DCT_DC_SIZE_LUMINANCE: Int8Array;
    const DCT_DC_SIZE_CHROMINANCE: Int8Array;
    const DCT_COEFF: Int32Array;
    namespace PICTURE_TYPE {
        const INTRA: number;
        const PREDICTIVE: number;
        const B: number;
    }
    namespace START {
        const SEQUENCE: number;
        const SLICE_FIRST: number;
        const SLICE_LAST: number;
        const PICTURE: number;
        const EXTENSION: number;
        const USER_DATA: number;
    }
}
import BaseDecoder from "./decoder";
import BitBuffer from "./buffer";
