Dynamic manifest generation based on client identity
First Claim
Patent Images
1. A server for streaming media via a data communications network, the server comprising:
- a network interface for communicating with the data communications network;
a memory; and
a processor communicatively coupled with the memory and the network interface, the processor further configured to cause the server to;
receive, via the network interface, a universal source locator (URL) in a first request from a first client, wherein the URL includes information indicative of a requested media source;
determine an identity of the first client;
determine a first device type based on the identity of the first client;
based at least in part on the determination of the first device type, generate a first manifest having information for streaming one or more segments of the requested media source in accordance with a first chunking protocol via the data communications network;
sending, via the network interface, the first manifest to the first client;
receive, via the network interface, the URL in a second request from a second client;
determine an identity of the second client, the identity of the second client different from the identity of the first client;
determine a second device type based on the identity of the second client, the second device type different from the first device type;
generate a second manifest having information for streaming the one or more segments of the requested media source in accordance with a second chunking protocol via the data communications network, wherein content of the second manifest is different from content of the first manifest; and
send, via the network interface, the second manifest to the second client.
1 Assignment
0 Petitions
Accused Products
Abstract
Timestamps for streams of media that transition from one media source to another (such as from live content to on-demand content, and vice versa) can be rewritten by a server to help ensure error-free streaming by the client. Embodiments can coordinate the creation of a client manifest with the dynamic creation of a requested segment of media (i.e., “chunk”) to determine how to rewrite timestamps of requested chunks such that they are continuous through the transition.
176 Citations
20 Claims
-
1. A server for streaming media via a data communications network, the server comprising:
-
a network interface for communicating with the data communications network; a memory; and a processor communicatively coupled with the memory and the network interface, the processor further configured to cause the server to; receive, via the network interface, a universal source locator (URL) in a first request from a first client, wherein the URL includes information indicative of a requested media source; determine an identity of the first client; determine a first device type based on the identity of the first client; based at least in part on the determination of the first device type, generate a first manifest having information for streaming one or more segments of the requested media source in accordance with a first chunking protocol via the data communications network; sending, via the network interface, the first manifest to the first client; receive, via the network interface, the URL in a second request from a second client; determine an identity of the second client, the identity of the second client different from the identity of the first client; determine a second device type based on the identity of the second client, the second device type different from the first device type; generate a second manifest having information for streaming the one or more segments of the requested media source in accordance with a second chunking protocol via the data communications network, wherein content of the second manifest is different from content of the first manifest; and send, via the network interface, the second manifest to the second client. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method of streaming media via a data communications network, the method comprising:
-
receiving a universal source locator (URL) in a first request from a first client, wherein the URL includes information indicative of a requested media source; determining an identity of the first client; determining a first device type based on the identity of the first client; based at least in part on the determination of the first device type, generating, with a processor, a first manifest having information for streaming one or more segments of the requested media source in accordance with a first chunking protocol via the data communications network; sending the first manifest to the first client; receiving the URL in a second request from a second client; determining an identity of the second client, the identity of the second client different from the identity of the first client; determining a second device type based on the identity of the second client, the second device type different from the first device type; based at least in part on the determination of the second device type, generating, with the processor, a second manifest having information for streaming the one or more segments of the requested media source in accordance with a second chunking protocol via the data communications network, wherein content of the second manifest is different from content of the first manifest; and sending the second manifest to the second client. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A non-transitory computer-readable medium having instructions embedded thereon for streaming media via a data communications network, the instructions including computer code for:
-
receiving a universal source locator (URL) in a first request from a first client, wherein the URL includes information indicative of a requested media source; determining an identity of the first client; determining a first device type based on the identity of the first client; based at least in part on the determination of the first device type, generating a first manifest having information for streaming one or more segments of the requested media source in accordance with a first chunking protocol via the data communications network; sending the first manifest to the first client; receiving the URL in a second request from a second client; determining an identity of the second client, the identity of the second client different from the identity of the first client; determining a second device type based on the identity of the second client, the second device type different from the first device type; based at least in part on the determination of the second device type, generating a second manifest having information for streaming the one or more segments of the requested media source in accordance with a second chunking protocol via the data communications network, wherein content of the second manifest is different from content of the first manifest; and sending the second manifest to the second client. - View Dependent Claims (19, 20)
-
Specification