Method and system for re-multiplexing of content-modified MPEG-2 transport streams using PCR interpolation
First Claim
1. 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.
10 Assignments
0 Petitions
Accused Products
Abstract
A system and method is provided for revising the time stamp information in an MPEG-2 transport stream after content in the transport stream is modified. According to one method, successive PCR time stamps previously added to the transport stream are used to determine PCRSYNC time stamps for synchronization points in the transport stream by interpolation. The PCRSYNC time stamps are substituted into transport packets within the transport stream. The PCRSYNC is also used to determine modified time of arrival (TOA) stamps to be added to transport packets. According to a second method, PCR interpolation is used to determine the values of PCRSYNC. TOA interpolation of TOA stamps previously added to the transport stream are used to determine modified TOA stamps to be substituted into the transport stream for the previously added TOA stamps.
-
Citations
16 Claims
-
1. 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. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A content-modifying system for modifying 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 system comprising:
-
a system input for receiving 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; a de-multiplexer for separating out one or more elementary streams to be processed from any elementary streams in the original systems stream that are not to be processed; at least one processor for recording an arrival time and a segment count of each received systems stream segment of the original systems stream and for separately processing at least one of the one or more elementary streams to be processed, the at least one processor 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 the 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 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 system input for receiving said original systems stream; 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. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
Specification