Client-side predictive caching for content
First Claim
1. A non-transitory computer-readable medium embodying a program executable in a client computing device, wherein when executed the program causes the client computing device to at least:
- determine a plurality of content items to be cached in a client cache associated with a user, the client cache having a plurality of cache segments, wherein a particular content item is selected for a first one of the plurality of cache segments based at least in part on whether the particular content item is playable by the user via a current user interface rendered by a content access application, the particular content item is selected for a second one of the plurality of cache segments based at least in part on whether the particular content item has been played previously by the user, and the particular content item is selected for a third one of the plurality of cache segments based at least in part on whether the particular content item is predicted to be played by the user;
prepare the client computing device for instantaneous playback of the plurality of content items before the user selects any of the plurality of content items for playback, wherein, for individual ones of the plurality of content items, the program causes the client computing device to at least;
obtain a corresponding decryption key, a corresponding manifest, and an initial portion of media content from another computing device; and
initialize decryption logic for decrypting the initial portion of media content using the corresponding decryption key; and
perform instantaneous playback of one of the plurality of content items in response to the one of the plurality of content items being selected by the user for playback after the client computing device is prepared for instantaneous playback of the one of the plurality of content items.
2 Assignments
0 Petitions
Accused Products
Abstract
Disclosed are various embodiments for client-side predictive caching of content to facilitate instantaneous use of the content. If a user is likely to commence use of a content item through a client, the client is configured to predictively cache the content item before the user commences use. In doing so, the client may obtain metadata for the content item and an initial portion of the content item from another computing device. The client may then initialize various resources to facilitate instantaneous use of the content item by the client based at least in part on the metadata and the initial portion. The client-side cache may be divided into multiple segments with different content selection criteria.
-
Citations
20 Claims
-
1. A non-transitory computer-readable medium embodying a program executable in a client computing device, wherein when executed the program causes the client computing device to at least:
-
determine a plurality of content items to be cached in a client cache associated with a user, the client cache having a plurality of cache segments, wherein a particular content item is selected for a first one of the plurality of cache segments based at least in part on whether the particular content item is playable by the user via a current user interface rendered by a content access application, the particular content item is selected for a second one of the plurality of cache segments based at least in part on whether the particular content item has been played previously by the user, and the particular content item is selected for a third one of the plurality of cache segments based at least in part on whether the particular content item is predicted to be played by the user; prepare the client computing device for instantaneous playback of the plurality of content items before the user selects any of the plurality of content items for playback, wherein, for individual ones of the plurality of content items, the program causes the client computing device to at least; obtain a corresponding decryption key, a corresponding manifest, and an initial portion of media content from another computing device; and initialize decryption logic for decrypting the initial portion of media content using the corresponding decryption key; and perform instantaneous playback of one of the plurality of content items in response to the one of the plurality of content items being selected by the user for playback after the client computing device is prepared for instantaneous playback of the one of the plurality of content items. - View Dependent Claims (2)
-
-
3. A system, comprising:
-
a computing device; and a caching system executable in the computing device, wherein when executed the caching system causes the computing device to at least; determine a content item to be cached for a user in a client cache, the client cache including a plurality of cache segments, wherein the content item is selected for a first one of the plurality of cache segments based at least in part on whether the content item is playable by the user via a current user interface rendered by a content access application, the content item is selected for a second one of the plurality of cache segments based at least in part on whether the content item has been played previously by the user, and the content item is selected for a third one of the plurality of cache segments based at least in part on whether the content item is predicted to be played by the user; obtain an initial portion of the content item and metadata associated with the content item from at least one other computing device prior to the user explicitly indicating that use of the content item is desired; and perform processing relative to the metadata to prepare the computing device for the use of the content item prior to the user explicitly indicating that the use of the content item is desired. - View Dependent Claims (4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A method, comprising:
-
determining, in a first client computing device, a content item to be cached in a client cache associated with a user, the client cache having a plurality of cache segments, wherein the content item is selected for a first one of the plurality of cache segments based at least in part on whether the content item is playable by the user via a current user interface rendered by a content access application, the content item is selected for a second one of the plurality of cache segments based at least in part on whether the content item has been played previously by the user, and the content item is selected for a third one of the plurality of cache segments based at least in part on whether the content item is predicted to be played by the user; and in response to determining the content item and before the user commences use of the content item via the first client computing device; obtaining, in the first client computing device, metadata for the content item from a second client computing device via a local network connection; obtaining, in the first client computing device, an initial portion of the content item from the second client computing device via the local network connection; and initializing resources of the first client computing device to facilitate instantaneous use of the content item based at least in part on the metadata and the initial portion of the content item. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification