System and method for transitioning between receiving different compressed media streams
First Claim
1. A method comprising:
- at a computer system including one or more processors and memory;
receiving a first compressed media stream from a media source;
storing first data corresponding to the first compressed media stream in a first compressed buffer;
generating a first decompressed media stream based on the first compressed media stream;
providing the first decompressed media stream to a presentation device;
while providing the first decompressed media stream to the presentation device, receiving a content-transition indication indicating that a second decompressed media stream is to be provided to the presentation device instead of the first decompressed media stream;
in response to receiving the content-transition indication, ceasing to receive the first compressed media stream from the media source;
after ceasing to receive the first compressed media stream from the media source, continuing to provide the first decompressed media stream using the first data stored in the first compressed buffer;
determining a quantity of data of a second compressed media stream for downloading as buffered media, wherein the second compressed media stream corresponds to the second decompressed media stream and the quantity of data is based on;
a target play time of the buffered media;
and a bit rate of the second compressed media stream;
determining a predicted buffering time that it will take to buffer the second compressed media stream based on;
the quantity of data; and
bandwidth available for receiving the second compressed media stream;
selecting a transition point for the second compressed media stream based on the predicted buffering time;
while continuing to provide the first decompressed media stream using the first data stored in the first compressed buffer;
receiving the second compressed media stream corresponding to the second decompressed media stream starting at the transition point; and
storing second data corresponding to the second compressed media stream in a second compressed buffer; and
after storing the second data corresponding to the second compressed media stream in the second compressed buffer, providing the second decompressed media stream, based on the second compressed media stream, to the presentation device instead of providing the first decompressed media stream to the presentation device.
3 Assignments
0 Petitions
Accused Products
Abstract
A computer system receives a first compressed media stream and stores corresponding data in a first compressed buffer. The computer system generates a first decompressed media stream based on the first compressed media stream. While providing the first decompressed media stream to a presentation device, the computer system receives a content-transition indication indicating that a second decompressed media stream is to be provided to the presentation device instead of the first decompressed media stream. While continuing to generate the first decompressed media stream using the first compressed buffer, the computer system receives a second compressed media stream corresponding to the second decompressed media stream and stores corresponding data in a second compressed buffer. After storing the data in the second compressed buffer, the computer system provides a second decompressed media stream, based on the second compressed media stream, to the presentation device instead the first decompressed media stream.
-
Citations
19 Claims
-
1. A method comprising:
-
at a computer system including one or more processors and memory; receiving a first compressed media stream from a media source; storing first data corresponding to the first compressed media stream in a first compressed buffer; generating a first decompressed media stream based on the first compressed media stream; providing the first decompressed media stream to a presentation device; while providing the first decompressed media stream to the presentation device, receiving a content-transition indication indicating that a second decompressed media stream is to be provided to the presentation device instead of the first decompressed media stream; in response to receiving the content-transition indication, ceasing to receive the first compressed media stream from the media source; after ceasing to receive the first compressed media stream from the media source, continuing to provide the first decompressed media stream using the first data stored in the first compressed buffer; determining a quantity of data of a second compressed media stream for downloading as buffered media, wherein the second compressed media stream corresponds to the second decompressed media stream and the quantity of data is based on; a target play time of the buffered media; and a bit rate of the second compressed media stream; determining a predicted buffering time that it will take to buffer the second compressed media stream based on; the quantity of data; and bandwidth available for receiving the second compressed media stream; selecting a transition point for the second compressed media stream based on the predicted buffering time; while continuing to provide the first decompressed media stream using the first data stored in the first compressed buffer; receiving the second compressed media stream corresponding to the second decompressed media stream starting at the transition point; and storing second data corresponding to the second compressed media stream in a second compressed buffer; and after storing the second data corresponding to the second compressed media stream in the second compressed buffer, providing the second decompressed media stream, based on the second compressed media stream, to the presentation device instead of providing the first decompressed media stream to the presentation device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A computer system, the computer system comprising:
-
one or more processors; and memory storing one or more programs for execution by the one or more processors, the one or more programs including instructions for; receiving a first compressed media stream from a media source; storing first data corresponding to the first compressed media stream in a first compressed buffer; generating a first decompressed media stream based on the first compressed media stream; providing the first decompressed media stream to a presentation device; while providing the first decompressed media stream to the presentation device, receiving a content-transition indication indicating that a second decompressed media stream is to be provided to the presentation device instead of the first decompressed media stream; in response to receiving the content-transition indication, ceasing to receive the first compressed media stream from the media source; after ceasing to receive the first compressed media stream from the media source, continuing to provide the first decompressed media stream using the first data stored in the first compressed buffer; determining a quantity of data of a second compressed media stream for downloading as buffered media, wherein the second compressed media stream corresponds to the second decompressed media stream and the quantity of data is based on; a target play time of the buffered media; and a bit rate of the second compressed media stream; determining a predicted buffering time that it will take to buffer the second compressed media stream based on; the quantity of data; and bandwidth available for receiving the second compressed media stream; selecting a transition point for the second compressed media stream based on the predicted buffering time; while continuing to provide the first decompressed media stream using the first data stored in the first compressed buffer; receiving the second compressed media stream corresponding to the second decompressed media stream starting at the transition point; and storing second data corresponding to the second compressed media stream in a second compressed buffer; and after storing the second data corresponding to the second compressed media stream in the second compressed buffer, providing the second decompressed media stream, based on the second compressed media stream, to the presentation device instead of providing the first decompressed media stream to the presentation device.
-
-
19. A non-transitory computer readable storage medium storing one or more programs, the one or more programs comprising instructions, which when executed by a computer system with one or more processors, cause the computer system to:
-
receive a first compressed media stream from a media source; store first data corresponding to the first compressed media stream in a first compressed buffer; generate a first decompressed media stream based on the first compressed media stream; provide the first decompressed media stream to a presentation device; while providing the first decompressed media stream to the presentation device, receive a content-transition indication indicating that a second decompressed media stream is to be provided to the presentation device instead of the first decompressed media stream; in response to receiving the content-transition indication, cease to receive the first compressed media stream from the media source; after ceasing to receive the first compressed media stream from the media source, continue to provide the first decompressed media stream using the first data stored in the first compressed buffer; determine a quantity of data of a second compressed media stream for downloading as buffered media, wherein the second compressed media stream corresponds to the second decompressed media stream and the quantity of data is based on; a target play time of the buffered media; and a bit rate of the second compressed media stream; determine a predicted buffering time that it will take to buffer the second compressed media stream based on; the quantity of data; and bandwidth available for receiving the second compressed media stream; select a transition point for the second compressed media stream based on the predicted buffering time; while continuing to provide the first decompressed media stream using the first data stored in the first compressed buffer; receive the second compressed media stream corresponding to the second decompressed media stream starting at the transition point; and store second data corresponding to the second compressed media stream in a second compressed buffer; and after storing the second data corresponding to the second compressed media stream in the second compressed buffer, provide the second decompressed media stream, based on the second compressed media stream, to the presentation device instead of providing the first decompressed media stream to the presentation device.
-
Specification