Patent ID: 7693222

Claim:
A method of processing a series of original elementary stream segments within an original systems stream to produce a modified systems stream, the original elementary stream segments to be processed belonging to at least one elementary stream, the method comprising the steps of: receiving, at an interface, an original systems stream comprising a series of systems stream segments, each systems stream segment comprising a systems layer specific segment of information and, for system stream segments that are to carry elementary stream data, further comprising one elementary stream segment of a series of original elementary stream segments to be processed, a plurality of the system layer specific segments comprising a first series of program clock reference times, wherein said original systems stream is a stream of information at a layer above the elementary stream; recording an arrival time and a segment count of each systems stream segment of the original systems stream; identifying a plurality of synchronization points within the series of original elementary stream segments in an elementary stream to be processed, wherein the synchronization points are a type of sequential location of the elementary stream which recurs continually throughout the elementary stream, is synchronized in time to a systems time clock of the elementary stream, and is present in the elementary stream both prior to and after processing, the synchronization points including first and second synchronization points that are separated by a particular sequence of information in the elementary stream; calculating a second series of program clock reference times for the plurality of synchronization points; processing, using a processor, the series of original elementary stream segments to produce a modified series of elementary stream segments to be carried between the plurality of synchronization points, said modified series of elementary stream segments having a different amount of information than the series of original elementary stream segments; inserting the modified series of elementary stream segments into a series of new system stream segments that include the calculated second series of program clock reference times for the plurality of synchronization points; calculating a new arrival time for each of the new system stream segments based on the arrival times and segment counts of each systems stream segment in the original systems stream to account for the modified series of elementary stream segments having a different amount of information than the series of original elementary stream segments, wherein each calculated new arrival time represents an estimated time at which the corresponding new system stream segment would have been expected to arrive if received at said receiving step; and using said calculated new arrival time for each of the new system stream segments for determining a departure time for retransmitting said new system stream segments.