Retrieving and caching adaptive bitrate stream segments based on network congestion
First Claim
1. A cache device, comprising:
- one or more processors to;
receive, from a client device, a first request for a first segment of an adaptive bitrate stream,the first segment including content corresponding to a particular time interval of the adaptive bitrate stream, andthe request identifying a first bitrate at which the first segment is encoded;
receive, from a network monitoring device, congestion information that indicates a network congestion level of a network associated with the cache device;
predict that other content corresponding to the adaptive bitrate stream is likely to be requested by the client device or another client device;
determine, based on the network congestion level and predicting that the other content is likely to be requested, a second segment to be requested from a content server,the second segment being encoded at a second bitrate that is different from the first bitrate;
send a second request for the second segment encoded at the second bitrate to the content server based on the first request received from the client device for the first segment encoded at the first bitrate;
obtain the second segment from the content server based on the second request; and
cache the second segment for providing to the client device or another client device.
1 Assignment
0 Petitions
Accused Products
Abstract
A cache device may receive a request for a first segment of an adaptive bitrate stream. The request may identify a particular time interval, of the adaptive bitrate stream, to which the first segment corresponds. The request may further identify a first bitrate at which the first segment is encoded. The cache device may determine a network congestion level of a network associated with the adaptive bitrate stream. The cache device may determine, based on the network congestion level, a second bitrate that is different from the first bitrate. The cache device may obtain a second segment of the adaptive bitrate stream. The second segment may be encoded at the second bitrate. The cache device may store the second segment for delivery to a client device.
27 Citations
20 Claims
-
1. A cache device, comprising:
one or more processors to; receive, from a client device, a first request for a first segment of an adaptive bitrate stream, the first segment including content corresponding to a particular time interval of the adaptive bitrate stream, and the request identifying a first bitrate at which the first segment is encoded; receive, from a network monitoring device, congestion information that indicates a network congestion level of a network associated with the cache device; predict that other content corresponding to the adaptive bitrate stream is likely to be requested by the client device or another client device; determine, based on the network congestion level and predicting that the other content is likely to be requested, a second segment to be requested from a content server, the second segment being encoded at a second bitrate that is different from the first bitrate; send a second request for the second segment encoded at the second bitrate to the content server based on the first request received from the client device for the first segment encoded at the first bitrate; obtain the second segment from the content server based on the second request; and cache the second segment for providing to the client device or another client device. - View Dependent Claims (2, 3, 4, 5, 6, 18, 19, 20)
-
7. A non-transitory computer-readable medium storing instructions, the instructions comprising:
one or more instructions that, when executed by one or more processors, cause the one or more processors to; receive a first request for a first segment of a first media stream encoded at a first bitrate, the first segment including content corresponding to a particular time interval of the first media stream, the first media stream being a first version of an adaptive bitrate stream; receive, from a network monitoring device, congestion information that indicates a network congestion level of a network via which the media stream is to be provided; predict that other content corresponding to the adaptive bitrate stream is likely to be requested; determine a second segment of a second media stream encoded at a second bitrate based on the network congestion level, the first bitrate, and predicting that the other content is likely to be requested, the second media stream being a second version of the adaptive bitrate stream, and the second bitrate being different from the first bitrate; send a second request for the second segment encoded at the second bitrate to a content server based on the first request received for the first segment encoded at the first bitrate; receive the second segment based on requesting the second segment; and cache the second segment for delivery to a client device. - View Dependent Claims (8, 9, 10, 11, 12)
-
13. A method, comprising:
-
receiving, by a cache device, a first request for a first segment of an adaptive bitrate stream, the request identifying a particular time interval, of the adaptive bitrate stream, to which the first segment corresponds, and the request further identifying a first bitrate at which the first segment is encoded; receiving, by the cache device and from a network monitoring device, congestion information that indicates a network congestion level of a network associated with the adaptive bitrate stream; predicting, by the cache device, that other content corresponding to the adaptive bitrate stream is likely to be requested; determining, by the cache device, a second bitrate that is different from the first bitrate based on the network congestion level and predicting that the other content is likely to be requested; sending, by the cache device, a second request for a second segment encoded at the second bitrate to a content server based on the first request for the first segment encoded at the first bitrate; obtaining, by the cache device and via the network, a second segment of the adaptive bitrate stream based on the second request, the second segment being encoded at the second bitrate; and storing, by the cache device, the second segment for delivery to a client device. - View Dependent Claims (14, 15, 16, 17)
-
Specification