Class Reader

This is an informal code for reference. EBMLReader is a class for getting information to enable seeking Webm recorded by MediaRecorder. So please do not use for regular WebM files.

Hierarchy

  • EventEmitter
    • Reader

Constructors

Properties

cues: {
    CueClusterPosition: number;
    CueTime: number;
    CueTrack: number;
}[]

Type declaration

  • CueClusterPosition: number
  • CueTime: number
  • CueTrack: number
drop_default_duration: boolean
logGroup: string = ""
logging: boolean
metadataSize: number
metadatas: EBMLElementDetail[]
timestampScale: number
trackInfo: {
    trackNumber: number;
    type: "both" | "audio" | "video";
} | {
    type: "nothing";
}

Type declaration

  • trackNumber: number
  • type: "both" | "audio" | "video"

Type declaration

  • type: "nothing"
use_duration_every_simpleblock: boolean

Enabling this flag will slow down the operation

use_segment_info: boolean

usefull for recording chunks.

use_webp: boolean

usefull for thumbnail creation.

Accessors

  • get duration(): number
  • DefaultDuration が定義されている場合は最後のフレームのdurationも考慮する 単位 timestampScale

    !!! if you need duration with seconds !!!

    const nanosec = reader.duration * reader.timestampScale;
    const sec = nanosec / 1000 / 1000 / 1000;

    Returns number

Methods

  • Parameters

    • event: "segment_offset"
    • listener: ((ev) => void)
        • (ev): void
        • Parameters

          • ev: number

          Returns void

    Returns this

  • Parameters

    • event: "cluster_ptr"
    • listener: ((ev) => void)
        • (ev): void
        • Parameters

          • ev: number

          Returns void

    Returns this

    Deprecated

    emit on every cluster element start. Offset byte from file start. It is not an offset from the Segment element.

  • Parameters

    • event: "cue_info"
    • listener: ((ev) => void)
        • (ev): void
        • Parameters

          • ev: CueInfo

          Returns void

    Returns this

    Deprecated

    emit on every cue point for cluster to create seekable webm file from MediaRecorder

  • emit on every cue point for cluster to create seekable webm file from MediaRecorder

    Parameters

    • event: "cue"
    • listener: ((ev) => void)
        • (ev): void
        • Parameters

          • ev: CueInfo

          Returns void

    Returns this

  • latest EBML > Info > TimestampScale and EBML > Info > Duration to create seekable webm file from MediaRecorder

    Parameters

    • event: "duration"
    • listener: ((ev) => void)
        • (ev): void
        • Parameters

          • ev: DurationInfo

          Returns void

    Returns this

  • EBML header without Cluster Element for recording metadata chunk

    Parameters

    • event: "metadata"
    • listener: ((ev) => void)
        • (ev): void
        • Parameters

          • ev: SegmentInfo & {
                metadataSize: number;
            }

          Returns void

    Returns this

  • emit every Cluster Element and its children for recording chunk

    Parameters

    • event: "cluster"
    • listener: ((ev) => void)
        • (ev): void
        • Parameters

          • ev: SegmentInfo & {
                timestamp: number;
            }

          Returns void

    Returns this

  • for thumbnail

    Parameters

    • event: "webp"
    • listener: ((ev) => void)
        • (ev): void
        • Parameters

          • ev: ThumbnailInfo

          Returns void

    Returns this

Generated using TypeDoc