Adaptive bit rate method and system using retransmission and replacement
AssigneeCable Television Laboratories, Inc.
InventorCurtis Knittle
Life of this patent
Estimating the term…
Abstract
An adaptive method and system for dynamically facilitating access to higher quality content in the event transport of the higher quality content requires a greater allocation of network resources when compared to transport of the same content at a lower quality.
Claims20
A method of scheduling decoding of higher and lower quality video segments for output to a display, the higher and lower quality video segments being respectively transmitted at a higher bit rate and a lower bit rate, the method comprising:
- receiving a first plurality of the lower quality video segments following transmission over a network;
- queuing the first plurality of video segments within a memory;
- identifying a memory location for each of the first plurality of video segments queued within the memory with a pointer;
- scheduling the pointers for the first plurality of video segments according to a circular, first-in-first-out (FIFO) decoding schedule;
- receiving a second plurality of the higher quality video segments following transmission over the network;
- queuing the second plurality of video segments within the memory;
- identifying a memory location for each of the second plurality of video segments with a pointer;
- and replacing the pointers in the decoding schedule for one or more of the first plurality of video segments with the pointer of one or more of the second plurality of video segments having matching video, referred to as matching video segments, thereby causing the matching video segments to be decoded for output to the display instead of the corresponding lower quality video segments, referred to as replaced video segments.
A method of facilitating playback of a video with a device wherein the video is segmented into a plurality of video segments prior to being transmitted to the device, the method comprising:
- requesting a first transmission to the device of at least a first portion of the plurality of the video segments encoded at a first bit rate;
- instigating a first queuing wherein the first portion are queued on the device for playback, including assigning one of a plurality of first pointers to each of the first portion to facilitate playback;
- requesting a second transmission of a second portion of the plurality of the video segments encoded at a second bit rate, the second portion corresponding with one or more of the first portion and the second bit rate being greater than the first bit rate;
- and
- instigating a second queuing wherein one or more video segments encoded at the second bit rate are each queued on the device for playback, including assigning one of a plurality of second pointers to each of the second portion to facilitate playback, at least one of the second pointers being assigned in place of one or more the first pointers such that at least one of the video segments encoded at the second bit rates playback in place of at least of video segments transmitted at the first bit rate.
A non-transitory computer-readable medium having instructions operable to facilitate dynamically adjusting decoding of higher and lower quality content segments, the non-transitory computer-readable medium comprising instructions sufficient to facilitate:
- determining receipt of one or more lower quality content segments at a device following transmission over a network;
- queuing the one or more lower quality content segments on the device for subsequent decode;
- determining receipt of one or more higher quality content segments at the device following transmission over the network;
- queuing one or more of the higher quality content segments on the device for subsequent decode, a matching plurality of the one or more of the higher quality content segments having the same content as one or more of the lower quality content segments also queued on the device;
- and decoding on the device the at least one of the matching plurality of higher quality content segments instead of the one or more of the queued lower quality content segments having the same content, including changing one or more pointers pointing towards the lower quality segments to point towards the higher quality segments.
Dependencies are inferred from the claim text.