streamingmanifestmpeg-dashmpd

MPEG-DASH: standard "available time" parameter in manifests for "live-dvr"


Related: Terminology: "live-dvr" in mpeg-dash streaming

I'm a little bit confused about the MPEG-DASH standard and an use case. I would like to know if there's a way to specify in MPEG-DASH manifests for a "live-dvr" setup the amount of available time for seeking back in players.

That is, for example, if a "live-dvr" stream has 30' of media available for replay, what would be a standard way to specify this in the manifest.

I know I can configure a given player for a desired behaviour. My question is not about players but about the manifests.

I don't fully understand yet if this use case is formally addresed in the standard or not (see the related link). I'm guessing a relation between @timeShiftBufferDepth and @presentationTimeOffset should work, but i'm confused regarding how it should manage "past time" instead of terms like "length" or "duration".

Thanks in advance.


Solution

  • Yes - you are on the right lines.

    The MPEG DASH implementation guidelines provide this formula (my bolding):

    The CheckTime is defined on the MPD-documented media time axis; when the client’s playback time reaches CheckTime - MPD@minBufferTime it should fetch a new MPD.

    Then, the Media Segment list is further restricted by the CheckTime together with the MPD attribute MPD@timeShiftBufferDepth such that only Media Segments for which the sum of the start time of the Media Segment and the Period start time falls in the interval [NOW- MPD@timeShiftBufferDepth - @duration, min(CheckTime, NOW)] are included.

    The full guidelines are available at: