Remultiplexing variable rate bitstreams using a delay buffer and rate estimation
First Claim
1. A method for remultiplexing at least first and second packetized digital data streams which are received from a communication path, at least said first data stream having packets provided at variable data rates therein, comprising the steps of:
- (a) processing the received first data stream in first and second parallel paths;
(b) discarding and retaining particular packets of the first received data stream in the first path according to a packet selection signal to obtain a first retained data stream;
(c) estimating a data rate of the first retained data stream;
(d) providing a signal in the first path indicative of the estimated data rate;
(e) delaying the first received data stream in the second path according to a processing delay of at least the estimating step (c) to provide a corresponding first delayed data stream;
(f) discarding and retaining particular packets of the first delayed data stream according to the packet selection signal to obtain a first delayed, retained data stream in the second path which corresponds to the first retained data stream in the first path; and
(g) providing a rate control signal according to the signal of said step (d) for time-multiplexing the first delayed, retained data stream with packets from the second data stream in a remultiplexed data stream.
4 Assignments
0 Petitions
Accused Products
Abstract
A system for remultiplexing packets that are provided at variable rates in digital bitstreams using a delay buffer and rate estimation. A bitstream with specific packet types provided at different rates is extracted from a multiplex and combined with other fixed or variable rate bit streams in such a way that timing delivery constraints on the extracted variable rate bitstream are followed. The extracted bitstream is smoothed to reduce variations in the data rate. The smoothed bitstream is then processed in first and second parallel paths. In the first path, selected packets are discarded to obtain a retained data stream. The data rate of the retained data stream is estimated and provided to a control. In the second path, the smoothed bitstream is delayed according to at least the processing time of the rate estimator in the first path, then the selected packets are discarded to obtain a delayed, retained data stream. The retained data stream in the second path is then remultiplexed with other data streams at a rate near the estimated data rate. For example, the invention is suitable for use at a cable television headend which grooms and remultiplexes digital transport streams that comply with the MPEG-2 standard.
56 Citations
20 Claims
-
1. A method for remultiplexing at least first and second packetized digital data streams which are received from a communication path, at least said first data stream having packets provided at variable data rates therein, comprising the steps of:
-
(a) processing the received first data stream in first and second parallel paths;
(b) discarding and retaining particular packets of the first received data stream in the first path according to a packet selection signal to obtain a first retained data stream;
(c) estimating a data rate of the first retained data stream;
(d) providing a signal in the first path indicative of the estimated data rate;
(e) delaying the first received data stream in the second path according to a processing delay of at least the estimating step (c) to provide a corresponding first delayed data stream;
(f) discarding and retaining particular packets of the first delayed data stream according to the packet selection signal to obtain a first delayed, retained data stream in the second path which corresponds to the first retained data stream in the first path; and
(g) providing a rate control signal according to the signal of said step (d) for time-multiplexing the first delayed, retained data stream with packets from the second data stream in a remultiplexed data stream. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
smoothing the first received data stream to reduce short-term fluctuations in its data rate prior to said processing step (a).
-
-
3. The method of claim 2, wherein said smoothing step uses a smoothing buffer to smooth the data rate of the first received data stream, comprising the further steps of:
-
(h) inputting the first received data stream to the smoothing buffer;
(i) estimating a data rate of the first received data stream according to a fullness level of the smoothing buffer;
(j) providing a rate control signal according to the estimated data rate from said step (i); and
(k) outputting the first received data stream from the smoothing buffer according to the rate control signal of said step (j).
-
-
4. The method of claim 1, wherein said delaying step (e) uses a delay buffer to delay the first received data stream, comprising the further steps of:
-
(h) estimating a smoothed data rate of the first received data stream;
(i) inputting the first received data stream to the delay buffer;
(j) outputting the first received data stream from the delay buffer according to the estimated data rate from said step (h).
-
-
5. The method of claim 4, comprising the further steps of:
-
(k) smoothing the first received data stream using a smoothing buffer to reduce short-term fluctuations in its data rate prior to said processing step (a);
(1) providing a control signal which indicates a fullness level of the smoothing buffer;
(m) estimating a data rate of the first received data stream according to the control signal of said step (1); and
(n) outputting the first received data stream from the smoothing buffer according to the estimated data rate of said step (m).
-
-
6. The method of claim 1, wherein:
the packet selection signal designates packet identifiers of the packets which are to be discarded or retained.
-
7. The method of claim 1, comprising the further steps of:
-
(h) buffering the first delayed, retained data stream provided in said step (f) in an output buffer;
(i) providing the buffered first delayed, retained data stream to a multiplexer interface; and
(j) providing the rate control signal from said step (g) to the multiplexer interface for time-multiplexing the first delayed, retained data stream with the packets from the second data stream in the remultiplexed data stream;
wherein;
the buffering step reduces timing variations in the first delayed data stream provided in said delaying step (e) relative to the first delayed, retained data stream provided to the multiplexer interface in said step (i).
-
-
8. The method of claim 1, comprising the further step of:
time-multiplexing a local data signal with the first delayed, retained data stream and the packets from the second digital data stream in the remultiplexed data stream.
-
9. The method of claim 1, wherein:
said first received data stream comprises fixed length packets.
-
10. The method of claim 1, wherein said second data stream has packets provided at variable data rates therein, comprising the further steps of:
-
(h) processing the received second data stream in corresponding first and second parallel paths;
(i) discarding and retaining particular packets of the second received data stream in the corresponding first path according to a corresponding packet selection signal to obtain a second retained data stream;
(j) estimating a data rate of the second retained data stream;
(k) providing a signal in the corresponding first path indicative of the corresponding estimated data rate;
(l) delaying the second received data stream in the corresponding second path according to a processing delay of at least the estimating step (j) to provide a corresponding second delayed data stream;
(m) discarding and retaining particular packets of the second delayed data stream according to the corresponding packet selection signal to obtain a second delayed, retained data stream in the corresponding second path which corresponds to the second retained data stream in the corresponding first path; and
(n) providing a rate control signal according to the signal of said step (k) for time-multiplexing the second delayed, retained data stream with the first delayed, retained data stream in said remultiplexed data stream.
-
-
11. An apparatus for remultiplexing at least first and second packetized digital data streams which are received from a communication path, at least said first data stream having packets provided at variable data rates therein, comprising:
-
(a) means for processing the received first data stream in first and second parallel paths;
(b) means for discarding and retaining particular packets of the first received data stream in the first path according to a packet selection signal to obtain a first retained data stream;
(c) means for estimating a data rate of the first retained data stream;
(d) means for providing a signal in the first path indicative of the estimated data rate;
(e) means for delaying the first received data stream in the second path according to a processing delay of at least the estimating means (c) to provide a corresponding first delayed data stream;
(f) means for discarding and retaining particular packets of the first delayed data stream according to the packet selection signal to obtain a first delayed, retained data stream in the second path which corresponds to the first retained data stream in the first path; and
(g) means for providing a rate control signal according to the signal of said means (d) for time-multiplexing the first delayed, retained data stream with packets from the second data stream in a remultiplexed data stream. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
means for smoothing the first received data stream to reduce short-term fluctuations in its data rate prior to processing by said processing means (a).
-
-
13. The apparatus of claim 12, wherein said smoothing means comprises a smoothing buffer to smooth the data rate of the first received data stream, further comprising:
-
(h) means for inputting the first received data stream to the smoothing buffer;
(i) means for estimating a data rate of the first received data stream according to a fullness level of the smoothing buffer;
(j) means for providing a rate control signal according to the estimated data rate from said means (i); and
(k) means for outputting the first received data stream from the smoothing buffer according to the rate control signal of said means (j).
-
-
14. The apparatus of claim 11, wherein said delaying means (e) comprises a delay buffer to delay the first received data stream, further comprising:
-
(h) means for estimating a smoothed data rate of the first received data stream;
(i) means for inputting the first received data stream to the delay buffer;
(j) means for outputting the first received data stream from the delay buffer according to the estimated data rate from said means (h).
-
-
15. The apparatus of claim 14, further comprising:
-
(k) means for smoothing the first received data stream using a smoothing buffer to reduce short-term fluctuations in its data rate prior to processing by said processing means (a);
(l) means for providing a control signal which indicates a fullness level of the smoothing buffer;
(m) means for estimating a data rate of the first received data stream according to the control signal of said means (l); and
(n) means for outputting the first received data stream from the smoothing buffer according to the estimated data rate of said means (m).
-
-
16. The apparatus of claim 11, wherein:
the packet selection signal designates packet identifiers of the packets which are to be discarded or retained.
-
17. The apparatus of claim 11, further comprising:
-
(h) an output buffer for buffering the first delayed, retained data stream provided by said means (f);
(i) means for providing the buffered first delayed, retained data stream to a multiplexer interface; and
(j) means for providing the rate control signal from said means (g) to the multiplexer interface for time-multiplexing the first delayed, retained data stream with the packets from the second data stream in the remultiplexed data stream;
wherein;
the buffering means reduces timing variations in the first delayed data stream provided by said delaying means (e) relative to the first delayed, retained data stream provided to the multiplexer interface by said means (i).
-
-
18. The apparatus of claim 11, further comprising:
means for time-multiplexing a local data signal with the first delayed, retained data stream and the packets from the second data stream in the remultiplexed data stream.
-
19. The apparatus of claim 11, wherein:
said first received data stream comprises fixed length packets.
-
20. The apparatus of claim 11, wherein said second data stream has packets provided at variable data rates therein, further comprising:
-
(h) means for processing the received second data stream in corresponding first and second parallel paths;
(i) means for discarding and retaining particular packets of the second received data stream in the corresponding first path according to a corresponding packet selection signal to obtain a second retained data stream;
(j) means for estimating a data rate of the second retained data stream;
(k) means for providing a signal in the corresponding first path indicative of the corresponding estimated data rate;
(l) means for delaying the second received data stream in the corresponding second path according to a processing delay of at least the estimating means (j) to provide a corresponding second delayed data stream;
(m) means for discarding and retaining particular packets of the second delayed data stream according to the corresponding packet selection signal to obtain a second delayed, retained data stream in the corresponding second path which corresponds to the second retained data stream in the corresponding first path; and
(n) means for providing a rate control signal according to the signal of said means (k) for time-multiplexing the second delayed, retained data stream with the first delayed, retained data stream in said remultiplexed data stream.
-
Specification