SCTE 104/35 Codex

PTS and time-base handling

11

splice_time must always be expressed in the time base in effect where the message sits in the stream, never in a new time base that begins after a time-base discontinuity during the arm time. If the target picture falls after a discontinuity, the message uses the PTS that picture would have had if the discontinuity had not happened, which keeps a simple remux valid without restamping. A remux that does restamp PCR and PTS must keep the splice time truthful in its output. Because splice_time can live in the encrypted part of the section, the unencrypted pts_adjustment field exists so a restamping device can shift timing without decrypting: a receiver adds pts_adjustment to every pts_time to get the real splice time. In cascaded splicers these adjustments accumulate, and each stage is responsible for passing along a message that still points at the right frame.

Related fields