@byomakase/omakase-player
    Preparing search index...

    Interface TamsMediaMetadata

    TAMS specific metadata resolved while loading, describing what the synthetic HLS manifest was built from and how the media timeline relates to the TAMS flow timeline.

    Serializable, so it travels with TamsMainMediaState through events, the session store and a detached player.

    interface TamsMediaMetadata {
        mediaStartTime: number;
        playbackMode: TamsPlaybackMode;
        requestedTimeRange?: string;
        requestedTimeRangeEndTime?: number;
        requestedTimeRangeStartTime?: number;
        timerange: string;
        windowDuration?: number;
    }
    Index

    Properties

    mediaStartTime: number

    Absolute flow time, in seconds, that media time 0 maps to. Media time plus this value is TAMS flow time.

    playbackMode: TamsPlaybackMode

    Resolved playback mode, and the sliding window length when there is one.

    requestedTimeRange?: string

    Timerange that was asked for, in TAMS timerange notation, frozen as the load left it.

    Set for VOD and start-over playback, where a request names a span of the flow. Continuous live playback is asked for as a duration and slides as it plays, so there is no such request to report. What was actually loaded lives on TamsMainMedia.tamsMediaData, and moves with the flow.

    requestedTimeRangeEndTime?: number
    requestedTimeRangeStartTime?: number

    Where the requested timerange sits in the media that was loaded, in seconds of media time.

    The store resolves a request against what it actually holds, so the two rarely line up exactly. These place the request on the loaded timeline - a client highlights it as [requestedTimeRangeStartTime, requestedTimeRangeEndTime] - and go negative when the media begins after the request did, ie. when the store had nothing that early.

    Absent when nothing was requested, or when the requested bound was open.

    timerange: string

    What the media currently spans, in TAMS timerange notation, read from the segments backing it.

    Always present, whether or not a range was asked for, and kept current: a start-over window grows at its end as segments are polled, and a continuous one grows at the end while losing its start to eviction. Taken from the flow the stream is played from, so the renditions aligned to it cannot widen it.

    windowDuration?: number