Back to results
US 8,769,591 B2Granted
Fast channel change on a bandwidth constrained network
AssigneeCisco Technology, Inc.
InventorsJoshua Bernard Gahm, David R. Oran, Kapil Sharma
Life of this patent
Estimating the term…
Abstract
In one embodiment, a buffering server transfers a dynamic burst transfer of data encoded using an inter-coded compression technique. The dynamic burst transfer is timed so that an initial transfer rate is reduced to a remaining transfer rate at the same time or before a decoding endpoint joins a corresponding data stream. The decoding endpoint merges the video stream and the dynamic burst transfer to decode and quickly reconstruct a displayable video frame.
Claims20
A method, comprising:
- transmitting a burst transfer to a remote endpoint, the burst transfer including data packets extracted from a video stream;
- wherein the burst transfer is a continuous data stream that includes an initial portion at an initial transfer rate ((1+E)R) and a subsequent portion at a reduced subsequent transfer rate (ER), wherein R is a transfer rate of the video stream and E is a fraction amount of excess bandwidth;
- wherein transmission of the subsequent portion of the burst transfer begins at the transition instant and continues through a time that the remote endpoint actually joins the video stream;
- wherein the burst transfer begins at an intra-coded frame;
- wherein the initial portion includes the data packets from the intra-coded frame to a first latest occurring data packet (N);
- wherein the subsequent portion includes the data packets from the first latest occurring data packet (N) to a second latest occurring data packet (Z), wherein the second latest occurring data packet is determined as:
- Z
- =
- (
- Δ
-
-
- J
- )
-
- R
- +
- H
- E
- ,
- wherein H is a sequence number difference between the video stream and a position of a preceding start of the intra-coded frame, and wherein ΔJ is a join latency.
18 more elements
An apparatus, comprising:
- a processor;
- and
- a memory coupled to the processor comprising instructions executable by the processor, the processor operable when executing the instructions to:
- send a dynamic burst request to a remote network device as a single data stream;
- send a join request to join a video stream;
- receive an initial portion of a dynamic burst transfer at a first average transfer rate ((1+E)R) and then transitions to receive a subsequent portion at a second average transfer rate (ER) at a predetermined transition time, wherein R is a transfer rate of the video stream and E is a fraction amount of excess bandwidth;
- wherein the burst transfer begins at a start of an intra-coded frame;
- wherein the initial portion includes data packets from the intra-coded frame to a first latest occurring data packet (N);
- wherein the subsequent portion includes the data packets from the first latest occurring data packet (N) to a second latest occurring data packet (Z) in the video stream, wherein the second latest occurring data packet is determined as:
- Z
- =
- (
- Δ
-
-
- J
- )
-
- R
- +
- H
- E
- ,
- wherein H is a sequence number difference between the video stream and a position of a preceding start of the intra-coded frame, and wherein ΔJ is a join latency;
- and
- combine the video stream and the dynamic burst transfer to reconstruct a video frame for display on a display device.
23 more elements
A system, comprising:
- a video server operatively connected to at least one network device capable of receiving a video stream, the video server configured to:
- send a burst transfer to the network device using a dynamic transfer rate that is reduced at a transition time;
- identify a minimum response time for the at least one network device to receive the video data after sending a request to join the data stream;
- identify a maximum response time for the at least one network device to receive the video data after sending the join request;
- determining a join latency ΔJ, wherein the join latency ΔJ is a difference between the minimum response time and the maximum response time;
- wherein the burst transfer begins at a start of an intra-coded frame;
- wherein an initial portion of the burst transfer is sent at a first average rate ((1+E)R, and includes frames from the intra-coded frame to a first latest occurring frame (N), wherein R is a transfer rate of the video stream and E is a fraction amount of excess bandwidth;
- and
- wherein a subsequent portion of the burst transfer is sent at a second average rate ER, and includes frames from the first latest occurring frame (N) to a second latest occurring frame (Z), wherein the second latest occurring frame (Z) is a last frame transferred using the burst stream before the at least one network device seamlessly starts decoding the video stream, wherein the second latest occurring frame is determined as:
- Z
- =
- (
- Δ
-
-
- J
- )
-
- R
- +
- H
- E
- ,
- and wherein H is a sequence number difference between the video stream and a position of a preceding start of the intra-coded frame.
21 more elements
Dependencies are inferred from the claim text.