TamsPosition
One end of a play range.
Absolute timestamps are awkward for the commonest live request — "start near the live edge" — because the caller has to fetch the flow, read its timerange, subtract, and format TAI, and the edge moves while they do it. The relative forms are resolved against the flow’s own timerange, once, when the input starts: on a live flow its end IS the live edge, and on a static flow "10s before the end" is an ordinary VOD request.
Field |
Type |
Repeated |
Description |
position |
oneOf |
||
⮑at |
A timestamp on the TAMS timeline, "{sign?}{seconds}:{nanoseconds}". |
||
⮑after_start_ms |
Offset forward from the start of the flow’s timerange. |
||
⮑before_end_ms |
Offset back from the end of the flow’s timerange. NOTE 0 means the live edge exactly, which is legal but rarely wanted: playback is realtime-paced, so it waits for the next segment to be written and appears stalled until then. Allow a few segments of headroom. |
Member of
Message |
Description |
Where a play range ends: everything a TamsPosition can say, plus a length
measured from wherever the range actually starts. The latter is only
expressible for an end, which is why this is a separate message rather than
an arm of TamsPosition that would be meaningless on |
|