Patent ID: 7710965

Claim:
A decoding system for decoding a plurality of programs comprising: a transport engine configured to receive a plurality of programs and extract from each program a set of timing information and a set of timestamps embedded in the program; an adder configured to add a timing offset from a set of timing offsets to each of the sets of timing information to adjust the sets of timing information from a first time basis to a second time basis, wherein sums of the timing offsets and the timing information are referred to as the mapped-timing information, and the programs are associated, respectively, with the timing offsets; a correction engine configured to update the timing offsets as timing information is encountered in the programs; an offset register configured to: receive the timing offsets from the correction engine, store the timing offsets, associate each program and the program's associated timing offset via a program identifier, wherein each program identifier uniquely identifies one of the programs, receive a packet identifier from the transport engine, retrieve the timing offset associated with the received packer identifier, and transfer to the adder the timing offset associated with the received packet identifier and with the program associated with the timing offset, wherein the adder is configured to add the received timing offset offsets to the timestamps to adjust the time basis of the timestamps from the first time basis to the second time basis for the program associated with the received timing offset, and wherein sums of the timing offsets and the timestamps are referred to as a mapped timestamps; and a program decoder configured to receive the mapped timestamps to decode the program associated with the received timing offset.