-
Notifications
You must be signed in to change notification settings - Fork 6
AvailabilityTimeOffset
The MPD attribute `availabilityTimeOffset´ (ato) can be used to signal that segments are available at an offst time compared to the value derived from the the normal attributes in the MPD.
A positive value ato=X
means that the segment is available X
seconds earlier.
A particular use case is for (chunked) low-latency segments where a positive ato
value is used
together with availabilityTimeComplete="false"
in the MPD to signal that a partial segments are
available X
seconds earlier than the full segments.
In livesim2
a typical signaling to generate a low-latency source is
ato_1.5/chunkdur_0.5/
which results in a source with
availabilityTimeOffset = 1.5s
chunk duration = 0.5s
availabilityTimeComplete = false (implicit)
For an MPD with SegmentTimeline
, the manifest is changed to be updated as soon as the partial
segment is available, and the publishTime@MPD
is updated to signal that time.
Another use case is for full segments. This is specified by not having a chunk duration set in the
URL. In this case, full segments are made available earlier, and the MPD is changed to reflect that
by publishing segments at a shifted time, as also reflected by publishTime@MPD
value.
A special case is an infinite
value of availabilityTimeOffset
. This means that all segments
are available. In livesim2
, that value can only be used together with SegmentTemplate with $Number$
,
and not with SegmentTimeline
.
An infinite availabilitityTimeOffset
is signaled in the URL as
ato_inf/
availabilityTimeOffset
can be signaled at multiple values in the MPD. In livesim2
, it is
only signaled at the SegmentTemplate
level.