IP Library Granted Patent US 6,842,724
Granted Patent B1
US 6,842,724 · App. 09/288,833 · Granted Jan 11, 2005

Method and apparatus for reducing start-up delay in data packet-based network streaming applications

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 6,842,724
App. No.
09/288,833
Granted
Jan 11, 2005
Kind
B1
Abstract

A method and apparatus which reduces the start-up delay that may occur when switching programs in audio and/or video streaming applications while maintaining high quality steady-state performance thereof. A program source (e.g., an audio and/or video data stream) is encoded and transmitted as two or more separate bit streams (e.g., sequences of data packets), the transmission of one of these bit streams being delayed by a given amount of time relative to the transmission of the other bit stream(s). At the receiving end of the transmission channel, the two or more bit streams are buffered by receive buffers having different sizes (thereby resulting in different time delays when the contents thereof are decoded), wherein the time delay difference corresponds (inversely) to the relative delay times prior to transmission. Advantageously, either a multiple descriptive source coding scheme or an embedded coding scheme may be employed, in which at least one of the individual bit streams is sufficient to obtain a satisfactory decoded signal, but wherein the addition of the other bit stream(s) will improve the quality of the decoded signal. Alternatively, the data streams may comprise multiple encodings of the program source having different bit rates, wherein the lower bit rate encodings are transmitted with the correspondingly larger delays.

Claims (29)

1. A method of processing two or more sequences of data packets received from a network, each of said sequences of data packets representing a common program source, the method comprising the steps of:

buffering data packets comprised in a first one of said sequences in a first receive buffer having a first buffering delay;

buffering data packets comprised in a second one of said sequences in a second receive buffer having a second buffering delay, wherein said second buffering delay is smaller than said first buffering delay;

decoding the data packets buffered in said second receive buffer after said second buffering delay has elapsed;

decoding the data packets buffered in said first receive buffer after said first buffering delay has elapsed;

generating a reproduction of said program source based at least upon the decoding of the data packets buffered in said second receive buffer before said first buffering delay has elapsed, and based at least upon the decoding of the data packets buffered in said first receive buffer after said first buffering delay has elapsed.

2. The method of claim 1 wherein said network comprises the Internet.

3. The method of claim 1 wherein said program source comprises an audio program.

4. The method of claim 1 wherein said program source comprises a video program.

5. The method of claim 1 wherein the first sequence of data packets and the second sequence of data packets have been transmitted onto the network from a source location, the transmission of the second sequence of data packets having been delayed relative to the transmission of the first sequence of data packets by a given relative transmission delay.

6. The method of claim 5 wherein the given relative transmission delay is approximately equal to the difference between the first buffering delay and the second buffering delay.

7. The method of claim 1 wherein the first receive buffer has a first buffer size and the second receive buffer has a second buffer size, the mathematical ratio of the first buffer size to the second buffer size being approximately equal to the mathematical ratio of the first buffering delay to the second buffering delay.

8. The method of claim 1 wherein the program source is encoded with a multiple descriptive source coder which generates two or more individual bit streams, the second sequence of data packets comprising one of said individual bit streams and the first sequence of data packets comprising at least another one of said individual bit streams.

9. The method of claim 1 wherein the program source is encoded with an embedded coder which generates a core layer and one or more enhancement layers, the second sequence of data packets comprising an encoding of said core layer and the first sequence of data packets comprising at least an encoding of one or more of said one or more enhancement layers.

10. The method of claim 1 wherein the first sequence of data packets comprises an encoding of the common program source having a first bit rate, and the second sequence of data packets comprises an encoding of the common program source having a second bit rate, the mathematical ratio of the first bit rate to the second bit rate being approximately equal to the mathematical ratio of the first buffering delay to the second buffering delay.

11. An apparatus for processing two or more sequences of data packets received from a network, each of said sequences of data packets representing a common program source, the apparatus comprising:

a first receive buffer having a first buffer delay for buffering data packets comprised in a first one of said sequences;

a second receive buffer having a second buffering delay for buffering data packets comprised in a second one of said sequences, wherein said second buffering delay is smaller than said first buffering delay;

a decoder for decoding the data packets buffered in said second receive buffer after said second buffering delay has elapsed and for decoding the data packets buffered in said first receive buffer after said first buffering delay has elapsed;

a signal generator for generating a reproduction of said program source based at least upon the decoding of the data packets buffered in said second receive buffer before said first buffering delay has elapsed, and based at least upon the decoding of the data packets buffered in said first receive buffer after said first buffering delay has elapsed.

12. The apparatus of claim 11 wherein said network comprises the Internet.

13. The apparatus of claim 11 wherein said program source comprises an audio program.

14. The apparatus of claim 11 wherein said program source comprises a video program.

15. The apparatus of claim 11 wherein the first sequence of data packets and the second sequence of data packets have been transmitted onto the network from a source location, the transmission of the second sequence of data packets having been delayed relative to the transmission of the first sequence of data packets by a given relative transmission delay.

16. The apparatus of claim 15 wherein the given relative transmission delay is approximately equal to the difference between the first buffering delay and the second buffering delay.

17. The apparatus of claim 11 wherein the first receive buffer has a first buffer size and the second receive buffer has a second buffer size, the mathematical ratio of the first buffer size to the second buffer size being approximately equal to the mathematical ratio of the first buffering delay to the second buffering delay.

18. The apparatus of claim 11 wherein the program source is encoded with a multiple descriptive source coder which generates two or more individual bit streams, the second sequence of data packets comprising one of said individual bit streams and the first sequence of data packets comprising at least another one of said individual bit streams.

19. The apparatus of claim 11 wherein the program source is encoded with an embedded coder which generates a core layer and one or more enhancement layers, the second sequence of data packets comprising an encoding of said core layer and the first sequence of data packets comprising at least an encoding of one or more of said one or more enhancement layers.

20. The apparatus of claim 11 wherein the first sequence of data packets comprises an encoding of the common program source having a first bit rate and the second sequence of data packets comprises an encoding of the common program source having a second bit rate, the mathematical ratio of the first bit rate to the second bit rate being approximately equal to the mathematical ratio of the first buffering delay to the second buffering delay.

Assignments (10)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 28, 2021
From: PROVENANCE ASSET GROUP LLC
To: RPX CORPORATION
Reel/Frame 059352/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 30, 2021
From: NOKIA US HOLDINGS INC.
To: PROVENANCE ASSET GROUP HOLDINGS LLC; PROVENANCE ASSET GROUP LLC
Reel/Frame 058363/0723 →
RELEASE OF SECURITY INTEREST Recorded Nov 30, 2021
From: CORTLAND CAPITAL MARKETS SERVICES LLC
To: PROVENANCE ASSET GROUP HOLDINGS LLC; PROVENANCE ASSET GROUP LLC
Reel/Frame 058983/0104 →
ASSIGNMENT AND ASSUMPTION AGREEMENT Recorded Feb 14, 2019
From: NOKIA USA INC.
To: NOKIA US HOLDINGS INC.
Reel/Frame 048370/0682 →
CHANGE OF NAME Recorded Feb 7, 2019
From: LUCENT TECHNOLOGIES INC.
To: ALCATEL-LUCENT USA INC.
Reel/Frame 049887/0613 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 13, 2017
From: NOKIA TECHNOLOGIES OY; NOKIA SOLUTIONS AND NETWORKS BV; ALCATEL LUCENT SAS
To: PROVENANCE ASSET GROUP LLC
Reel/Frame 043877/0001 →
SECURITY INTEREST Recorded Sep 13, 2017
From: PROVENANCE ASSET GROUP HOLDINGS, LLC; PROVENANCE ASSET GROUP LLC
To: NOKIA USA INC.
Reel/Frame 043879/0001 →
SECURITY INTEREST Recorded Sep 13, 2017
From: PROVENANCE ASSET GROUP HOLDINGS, LLC; PROVENANCE ASSET GROUP, LLC
To: CORTLAND CAPITAL MARKET SERVICES, LLC
Reel/Frame 043967/0001 →
RELEASE OF SECURITY INTEREST Recorded Oct 9, 2014
From: CREDIT SUISSE AG
To: ALCATEL-LUCENT USA INC.
Reel/Frame 033950/0261 →
SECURITY INTEREST Recorded Mar 7, 2013
From: ALCATEL-LUCENT USA INC.
To: CREDIT SUISSE AG
Reel/Frame 030510/0627 →