Method and apparatus for converting data streams
First Claim
1. A method of converting an input data stream having a Program Stream (PS) format into an output data stream having a Transport Stream (TS) format, the method comprising:
- (a) reading from said input data stream successive blocks of data, said input data stream including data of at least first and second elementary data streams formed and multiplexed in compliance with a PS decoder model;
(b) accumulating the data of the first and second elementary streams respectively in first and second queue structures;
(c) establishing a TS target decoder model including hypothetical first and second buffers for the first and second elementary streams respectively;
(d) generating a succession of transport packets to form said output data stream conveying said first and second data streams in said TS format, by reference to said target decoder model; and
(e) updating the status of said hypothetical first and second buffers within said TS target decoder in response to each transport packet generated and predetermined properties of said decoder model;
wherein each transport packet comprises data from either the first queue, the second queue or neither queue, depending on the scheduling of said elementary streams within the input data stream and on the state of said first and second buffers within said TS target decoder model, and wherein the method includes inhibiting reading of a further data block from said stream when, in the absence of a vacancy for data of said second elementary stream within the target decoder model, a clock reference of said input data stream advances beyond a clock reference of said output data stream by a predetermined waiting threshold.
2 Assignments
0 Petitions
Accused Products
Abstract
A digital video recorder or similar apparatus implements a method of converting an input data stream having an MPEG-2 Program Stream (PS) format into an output data stream having an MPEG-2 Transport Stream (TS) format. The input data stream (PS) includes data of at least first and second elementary data streams (404, 406) formed and multiplexed in compliance with a PS decoder model. A scheduler (412) within the apparatus inhibits reading of a further data block from the input stream when, in the absence of a vacancy for data of an audio elementary stream within a target decoder model (418), a clock reference (SCR) of said input data stream advances beyond a clock reference of said output data stream by a predetermined waiting threshold.
47 Citations
27 Claims
-
1. A method of converting an input data stream having a Program Stream (PS) format into an output data stream having a Transport Stream (TS) format, the method comprising:
-
(a) reading from said input data stream successive blocks of data, said input data stream including data of at least first and second elementary data streams formed and multiplexed in compliance with a PS decoder model;
(b) accumulating the data of the first and second elementary streams respectively in first and second queue structures;
(c) establishing a TS target decoder model including hypothetical first and second buffers for the first and second elementary streams respectively;
(d) generating a succession of transport packets to form said output data stream conveying said first and second data streams in said TS format, by reference to said target decoder model; and
(e) updating the status of said hypothetical first and second buffers within said TS target decoder in response to each transport packet generated and predetermined properties of said decoder model;
wherein each transport packet comprises data from either the first queue, the second queue or neither queue, depending on the scheduling of said elementary streams within the input data stream and on the state of said first and second buffers within said TS target decoder model, and wherein the method includes inhibiting reading of a further data block from said stream when, in the absence of a vacancy for data of said second elementary stream within the target decoder model, a clock reference of said input data stream advances beyond a clock reference of said output data stream by a predetermined waiting threshold. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 24, 25)
-
- 17. A method of re-multiplexing first and second elementary streams of data so as to generate a continuous stream of transport packets complying with a second predetermined target decoder model, the data of said first and second streams having been previously multiplexed in compliance with a different, first predetermined target decoder model, wherein said data is read on demand from an input channel and the reading of said data is constrained by reference to progress in re-multiplexing of the second elementary stream irrespective of a vacancy for data of the first stream in the second target decoder model, provided that said reading is judged sufficiently far in advance of the progress in re-multiplexing the second elementary stream to compensate for differences in the first and second target decoder models.
Specification