Streaming decision in the cloud
First Claim
Patent Images
1. A system, comprising:
- a set of one or more processors configured to, using a set of one or more interfaces;
receive, from a client device;
an indication of a content request;
multi-dimensional client information associated with the client device; and
local state information associated with the client device;
use the received local state information to generate, in a data store, a record corresponding to the client device, wherein the data store includes a plurality of records corresponding to respective different client devices;
store in the generated record, session information associated with a video session initiated at the client device, wherein the stored session information comprises an identifier of the video session;
based at least in part on the received multi-dimensional client information, identify a set of clients correlated to the client device;
obtain performance information associated with the identified set of clients;
based at least in part on both the local state information received from the client device and the obtained performance information associated with the set of clients identified as correlated to the client device based at least in part on the multi-dimensional client information received from the client device, determine, for the video session, a set of instructions usable by the client device to obtain and play content;
transmit the determined set of instructions to the client device;
store, in the record including the session information comprising the identifier of the video session, the set of instructions determined for the video session as historical information; and
a memory coupled to the set of one or more processors and configured to provide the set of one or more processors with instructions.
1 Assignment
0 Petitions
Accused Products
Abstract
Generating streaming decisions at one or more remote servers on behalf of a local client is disclosed. An indication of a content request, multi-dimensional client information, and local state information are received from a client device. A record specific to the client device is generated, in a data store, using the received local state information. The data store includes a plurality of records corresponding to respective different client devices. A set of instructions usable by the client device to obtain and play content is determined based at least in part the local state information received from the client device. The determined set of instructions is transmitted to the client device.
311 Citations
49 Claims
-
1. A system, comprising:
-
a set of one or more processors configured to, using a set of one or more interfaces; receive, from a client device; an indication of a content request; multi-dimensional client information associated with the client device; and local state information associated with the client device; use the received local state information to generate, in a data store, a record corresponding to the client device, wherein the data store includes a plurality of records corresponding to respective different client devices; store in the generated record, session information associated with a video session initiated at the client device, wherein the stored session information comprises an identifier of the video session; based at least in part on the received multi-dimensional client information, identify a set of clients correlated to the client device; obtain performance information associated with the identified set of clients; based at least in part on both the local state information received from the client device and the obtained performance information associated with the set of clients identified as correlated to the client device based at least in part on the multi-dimensional client information received from the client device, determine, for the video session, a set of instructions usable by the client device to obtain and play content; transmit the determined set of instructions to the client device; store, in the record including the session information comprising the identifier of the video session, the set of instructions determined for the video session as historical information; and a memory coupled to the set of one or more processors and configured to provide the set of one or more processors with instructions. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24)
-
-
25. A method, comprising:
-
receiving, from a client device; an indication of a content request; multi-dimensional client information associated with the client device; and local state information associated with the client device; using the received local state information to generate, in a data store, a record corresponding to the client device, wherein the data store includes a plurality of records corresponding to respective different client devices; storing in the generated record, session information associated with a video session initiated at the client device, wherein the stored session information comprises an identifier of the video session; based at least in part on the received multi-dimensional client information, identifying a set of clients correlated to the client device; obtaining performance information associated with the identified set of clients; based at least in part on both the local state information received from the client device and the obtained performance information associated with the set of clients identified as correlated to the client device based at least in part on the multi-dimensional client information received from the client device, determining, for the video session and using a set of one or more processors, a set of instructions usable by the client device to obtain and play content; transmitting the determined set of instructions to the client device; and storing, in the record including the session information comprising the identifier of the video session, the set of instructions determined for the video session as historical information. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48)
-
-
49. A computer program product embodied in a non-transitory computer readable storage medium and comprising computer instructions for:
-
receiving, from a client device; an indication of a content request; multi-dimensional client information associated with the client device; and local state information associated with the client device; using the received local state information to generate, in a data store, a record corresponding to the client device, wherein the data store includes a plurality of records corresponding to respective different client devices; storing in the generated record, session information associated with a video session initiated at the client device, wherein the stored session information comprises an identifier of the video session; based at least in part on the received multi-dimensional client information, identifying a set of clients correlated to the client device; obtaining performance information associated with the identified set of clients; based at least in part on the local state information received from the client device and the obtained performance information associated with the set of clients identified as correlated to the client device based at least in part on the multi-dimensional client information received from the client device, determining, for the video session and using a set of one or more processors, a set of instructions usable by the client device to obtain and play content; transmitting the determined set of instructions to the client device; and storing, in the record including the session information comprising the identifier of the video session, the set of instructions determined for the video session as historical information.
-
Specification