In this guide
Convert units before comparing durationsApply the offset in the right coordinate systemTiming metadata still needs conforming mediaA DASH SegmentTimeline describes segment timing using integer values in a defined timescale. Those integers are not automatically seconds. The timescale tells you how many units correspond to one second in the relevant sample timeline.
Presentation-time offset and Period start then establish how a sample position maps onto the broader MPD timeline. Keeping these coordinate systems separate avoids large apparent timing errors.
Convert units before comparing durations
An original hypothetical segment duration d=2000 with timescale=1000 represents two seconds. A value of 2000 is not two thousand seconds. Another representation can use a different timescale and still describe the same duration.
SegmentTimeline entries can express starts, durations and repetition according to DASH rules. Preserve the applicable inherited SegmentTemplate context; an isolated S element can omit information required to interpret it.
Apply the offset in the right coordinate system
The DASH-IF timing guidance maps a sample position using Period start plus the difference between sample time and presentation-time offset, divided by timescale. In an original example, Period start is 60 seconds, sample time is 9000, offset is 5000 and timescale is 1000. The mapped position is 60 + (9000 − 5000)/1000 = 64 seconds.
Subtract the offset before the unit conversion. Adding the raw offset as seconds would mix coordinate systems and produce a meaningless result.
| Value | Original example |
|---|---|
| Period start | 60 seconds |
| Sample time | 9000 units |
| Presentation-time offset | 5000 units |
| Timescale | 1000 units/second |
| MPD position | 64 seconds |
Timing metadata still needs conforming media
A mathematically plausible manifest does not prove that fragment timestamps match it or that referenced resources are available. A source operator may need to inspect actual samples and validate the presentation. For a report, preserve the relevant timing fields and failed resource rather than changing numbers to make a player continue.
The cited DASH-IF document defines a restricted interoperability model. Its terminology and constraints should remain scoped to that guidance when comparing other DASH authoring modes.
