Midstream determination of varying bandwidth availability
First Claim
1. A method, comprising:
- connecting to a server to receive streaming content at a first rate;
receiving a portion of the streaming content at the first rate;
requesting the server to send a particular amount of future streaming content at a second rate;
receiving the particular amount of future streaming content at an actual rate that is greater than the first rate and less than or equal to the second rate;
determining if the actual rate is viable for receiving the streaming content; and
if the actual rate is viable for receiving the streaming content, requesting the server to send remaining streaming content at a rate that is not greater than the actual rate.
2 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for midstream determination of varying available bandwidth for streaming content between two network entities are described. During content streaming, a client requests a server to surge the content transmission rate. One or more bandwidth measurements are taken during the surge to determine if the increased transmission rate can be adequately managed. If the increased transmission rate can be adequately managed, the client may request the server to transmit remaining content at a transmission rate that is not greater than the increased, or surged, transmission rate. In a multi-bitrate file scenario, the surge rate may be higher than the rate of the fastest useable stream. In such a case, the fastest useable stream is selected. If the increased transmission rate is not suitable for future transmission, then the rate may remain at the original transmission rate.
-
Citations
53 Claims
-
1. A method, comprising:
-
connecting to a server to receive streaming content at a first rate;
receiving a portion of the streaming content at the first rate;
requesting the server to send a particular amount of future streaming content at a second rate;
receiving the particular amount of future streaming content at an actual rate that is greater than the first rate and less than or equal to the second rate;
determining if the actual rate is viable for receiving the streaming content; and
if the actual rate is viable for receiving the streaming content, requesting the server to send remaining streaming content at a rate that is not greater than the actual rate. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A method, comprising:
-
receiving a request from a client to stream content to the client at a first transmission rate;
streaming content to the client at the first transmission rate;
receiving a request from the client to increase the streaming to a second transmission rate for a specified amount of content data;
streaming the specified amount of content data to the client at the second transmission rate; and
resuming streaming content to the client at the first transmission rate. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23)
-
-
24. A system, comprising:
-
an interface to a network that provides at least a connection to a server;
a control module configured to receive streaming content from the server at a first streaming rate and request the server to modify the first streaming rate to a second streaming rate for a specified amount of streaming content data;
a bandwidth measurement module configured to determine an actual streaming rate resulting from the request to modify the first streaming rate to the second streaming rate, and to determine the adequacy of the streaming at the actual streaming rate; and
wherein the control module is further configured to request the server to stream remaining streaming content at a rate that is not greater than the actual streaming rate if the bandwidth measurement module determines that the actual streaming rate is adequate for streaming the remaining streaming content. - View Dependent Claims (25, 26, 27, 28, 29, 30, 31, 32)
-
-
33. A system, comprising:
-
a network interface configured to provide at least a connection to a client over a network;
one or more multi-bitrate files that store two or more versions of streaming content, each version being configured for transmission at a different streaming rate; and
a control module configured to identify a request from the client to modify a first streaming rate at which a version of the streaming content stored in a multi-bitrate file is being transmitted to the client to a second streaming rate for a limited amount of streaming content data. - View Dependent Claims (34, 35, 36, 37)
-
-
38. One or more computer-readable media containing computer-executable instructions that, when executed on a computer, perform the following steps:
-
requesting a server to transmit content file data over a network at a first transmission rate;
while receiving a portion of the content file data at the first transmission rate, requesting the server to transmit a limited portion of the content file data over the network at a second transmission rate;
receiving the limited portion of the content file data from the server at an actual transmission rate which is less than or equal to the second transmission rate;
determining if the network can viably support transmission of the content file data at the actual transmission rate;
if the network can viably support transmission of the content data at the actual transmission rate, requesting the server to transmit subsequent content file data at a rate that is not greater than the actual transmission rate;
if the network cannot viably support transmission of the content data at the actual transmission rate, receiving subsequent content file data at the first transmission rate; and
wherein the subsequent content file data is content file data that is transmitted after the limited portion of content file data has concluded transmission. - View Dependent Claims (39, 40, 41, 42, 43, 44, 45, 46, 47, 48)
-
-
49. One or more computer-readable media containing computer-executable instructions that, when executed on a computer, perform the following steps:
-
transmitting content file data to a client over a network at a first transmission rate;
receiving a request from the client to transmit a limited portion of content file data to the client at a second transmission rate;
transmitting the limited portion of content file data to the client at the second transmission rate;
transmitting content file data subsequent to the limited portion of content file data to the client at the first transmission rate. - View Dependent Claims (50, 51, 52, 53)
-
Specification