IP Library Granted Patent US 8,228,982
Granted Patent B2
US 8,228,982 · App. 12/564,303 · Granted Jul 24, 2012

Adaptive video streaming system and method

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 8,228,982
App. No.
12/564,303
Granted
Jul 24, 2012
Kind
B2
Abstract

A method of transmitting a video stream over an IP network. The method includes encoding a source video into a plurality of packets. The method also includes measuring a real-time transmission status of a current set of the plurality of packets. The method also includes mapping a utility curve for the video which reflects utilities of the video at corresponding sending rates. The method also includes calculating a target sending rate for a next set of the plurality of packets according to the real-time transmission status of the current set of the plurality of packets and the utility curve. The method also includes determining a proper strategy to meet the target sending rate for the next set of the plurality of packets.

Claims (39)

1. A method of transmitting a video stream over an IP network, the method comprising:

encoding a source video into a plurality of packets;

measuring a real-time transmission status of a current set of the plurality of packets, wherein measuring the real-time transmission status includes measuring a sending rate and a receiving rate of the current set of the plurality of packets by a receiver;

mapping a utility curve for the source video which reflects utilities of the source video at corresponding sending rates;

calculating a target sending rate for a next set of the plurality of packets according to the, real-time transmission status of the current set of the plurality of packets and the utility curve; and

determining a proper strategy to meet the target sending rate for the next set of the plurality of packets.

2. The method of claim 1 , wherein encoding a source video includes encoding the source video with selectable layers.

3. The method of claim 2 , wherein encoding the source video into selectable layers includes encoding the source video temporally into selectable temporal layers.

4. The method of claim 2 , wherein encoding the source video into selectable layers includes encoding the source video spatially into selectable spatially layers.

5. The method of claim 2 , wherein encoding the source video into selectable layers includes encoding the source video both temporally and spatially.

6. The method of claim 2 , wherein encoding a source video into a plurality of packets includes encoding the source video into a series of groups of pictures, each group of pictures having a plurality of frames, and each group of pictures beginning with an independently encoded I frame and including one or more following P frames.

7. The method of claim 6 , wherein mapping a utility curve for the video includes mapping the utilities at different selectable layers, the layers corresponding to a different sending rate.

8. The method of claim 6 , wherein utilities of the utility curve at a corresponding layer is determined by importance of the frames at the corresponding layer.

9. The method of claim 2 , wherein determining a proper strategy to get the target sending rate of the next set of the plurality of packets comprises selecting a corresponding layer according to the target sending rate.

10. The method of claim 1 , wherein calculating a target sending rate for a next set of the plurality of packets according to the real-time transmission status of the current set of the plurality of packets and the utility curve includes mapping the sending rate of the current set of plurality of packets measured by the receiver to a nearest point on the utility curve and calculating the target sending rate according to a ratio of a gradient of the nearest point with a maximum gradient of the utility curve.

11. The method of claim 1 , comprising:

mapping a utility curve for each video stream in an IP network.

12. The method of claim 11 , comprising:

calculating a target sending rate of a next set of packet for each video stream independently.

13. A control system, comprising:

an encoder configured to encode a video stream with selectable layers for extraction;

a link-sensing module configured to measure a real-time transmission status for a current set of packets of the video stream;

a rate allocation module configured to get the real-time transmission status information from the link-sensing module, the rate allocation module defining a utility curve which reflects utilities of the video stream at corresponding selectable layers, the rate allocation module being configured to determine a target sending rate for a next set of packets according to the real-time transmission status of the current set of packets and the utility curve; and

a stream optimization module configured to determine a control strategy to meet the target sending rate for the next set of packets.

14. The control system according to claim 13 , wherein the encoder is configured to encode the video stream temporally.

15. The control system according to claim 13 , wherein the encoder is configured to encode the video spatially.

16. The control system according to claim 13 comprising:

at least two rate allocation modules, each rate allocation module defining a utility curve for a corresponding video stream.

17. The control system according to claim 13 , wherein the link-sensing module comprise an application interface for inputting an application parameter.

18. A method of transmitting a video stream over an IP network, the method comprising:

encoding a source video into a plurality of packets;

measuring a real-time transmission status of a current set of the plurality of packets, wherein measuring the real-time transmission status includes measuring a sending rate and a receiving rate of the, current set of the, plurality of packets by a receiver;

mapping a utility curve for the source video which reflects utilities of the source video at corresponding sending rates;

calculating a target sending rate for a next set of the plurality of packets according to the real-time transmission status of the current set of the plurality of packets and the utility curve; and

transmitting at the target sending rate for the next set of the plurality of packets.

19. The method of claim 18 , further comprising:

mapping a utility curve for each video stream in an IP network.

20. The method of claim 19 , further comprising:

calculating a target sending rate of a next set of packet for each video stream independently.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 10, 2025
From: CARRIER CORPORATION; CARRIER GLOBAL CORPORATION; CARRIER FIRE & SECURITY EMEA; CARRIER FIRE & SECURITY, LLC; CARRIER CANADA CORPORATION; CLIMATE, CONTROLS & SECURITY ARGENTINA S.A.; KIDDE IP HOLDINGS , INC.; KIDDE LTD.; KIDDE PRODUCTS LTD.; CARRIER TRANSICOLD AUSTRIA GMBH; CARRIER TRANSICOLD FRANCE SCS
To: KIDDE FIRE PROTECTION, LLC
Reel/Frame 072830/0556 →
SECURITY INTEREST Recorded May 28, 2025
From: KIDDE FIRE PROTECTION, LLC; WALTER KIDDE PORTABLE EQUIPMENT INC.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 071436/0526 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 14, 2025
From: CARRIER GLOBAL CORPORATION; CARRIER CORPORATION; CARRIER FIRE & SECURITY EMEA; CARRIER FIRE & SECURITY, LLC; CARRIER CANADA CORPORATION; CLIMATE, CONTROLS & SECURITY ARGENTINA S.A.; KIDDE IP HOLDINGS, INC.; KIDDE LTD.; KIDDE PRODUCTS LTD.; CARRIER TRANSICOLD AUSTRIA GMBH; CARRIER TRANSICOLD FRANCE SCS
To: KIDDE FIRE PROTECTION, LLC
Reel/Frame 070518/0387 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 27, 2011
From: GENERAL ELECTRIC COMPANY
To: UTC FIRE & SECURITY CORPORATION
Reel/Frame 026351/0554 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 24, 2009
From: QIAN, ZHEBIN; ZHANG, YU; LIU, PING; XU, LI
To: GENERAL ELECTRIC COMPANY
Reel/Frame 023561/0048 →