Real-time cloud-based video watermarking systems and methods
First Claim
Patent Images
1. A video generation system comprising:
- a request manager configured to receive a video request from a client and authenticate the client, the client being connected to a network of computers;
a video source configured to provide video in response to the request;
an identifier source configured to provide an identifier;
a client qualifier; and
data storage configured to store the identifier in association with information identifying the client or a user of the client;
the video source is configured to convert the video from a first format to a second format and add the identifier to the video received from the video source in real-time while the video is being provided to the client, wherein the system is executed by one or more servers having one or more processors, the servers being connected to a network of computers and at least one of the servers connected to the network of computers including the request manager that receives the video request from the client, access the video source for the request, access the data storage and convert the video from the first format to the second format;
wherein the video source is configured to dynamically provision an encoding pipeline in response to the request, the encoding pipeline includes an encoder that is selected based on capabilities of the client determined by the client qualifier, the client qualifier determining said capabilities in response to the request received from the request;
wherein the video source is configured to store video state data that is indicative of one or more of a pause or a stop of the video, wherein storing of the video state enables reassigning of the identifier to the video, such that resuming from the pause or the stop restarts the addition of the identifier and the encoding by the encoder.
3 Assignments
0 Petitions
Accused Products
Abstract
A video generation system is configured to provide streaming video as a cloud processed service to viewers over a computing network. In response to a request from a viewer, a video source is configured to provide video and an identifier source is configured to provide an identifier for inclusion in the video. A video encoder is configured to convert the video from a first format to a second format, apply the identifier to the video, and otherwise encode the video in real-time while streaming the encoded video to the viewer. The identifier may be stored in association with the account information of the viewer and used for identifying the viewer a source of an unauthorized video copy.
49 Citations
17 Claims
-
1. A video generation system comprising:
-
a request manager configured to receive a video request from a client and authenticate the client, the client being connected to a network of computers; a video source configured to provide video in response to the request; an identifier source configured to provide an identifier; a client qualifier; and data storage configured to store the identifier in association with information identifying the client or a user of the client; the video source is configured to convert the video from a first format to a second format and add the identifier to the video received from the video source in real-time while the video is being provided to the client, wherein the system is executed by one or more servers having one or more processors, the servers being connected to a network of computers and at least one of the servers connected to the network of computers including the request manager that receives the video request from the client, access the video source for the request, access the data storage and convert the video from the first format to the second format; wherein the video source is configured to dynamically provision an encoding pipeline in response to the request, the encoding pipeline includes an encoder that is selected based on capabilities of the client determined by the client qualifier, the client qualifier determining said capabilities in response to the request received from the request; wherein the video source is configured to store video state data that is indicative of one or more of a pause or a stop of the video, wherein storing of the video state enables reassigning of the identifier to the video, such that resuming from the pause or the stop restarts the addition of the identifier and the encoding by the encoder. - View Dependent Claims (2, 3, 4, 5, 14)
-
-
6. A method of providing watermarked video on demand, the method comprising:
-
receiving a request for streaming video from a client; qualifying the client to identify capabilities of the client; identifying a source of the video; receiving the video from the source, in response to the request; receiving an identifier that is unique; inserting the identifier in the video as a watermark, as the video is received from the source; encoding the video from a first format to a second format, wherein the encoding uses an encoder that is selected for the client based on the qualifying of the client; storing the identifier in association with user account information or information identifying the client; and providing the encoded video including the identifier to the client; wherein the identifier is inserted into the retrieved video and encoded after receiving the request from the client, wherein video state data is stored that is indicative of one or more of a pause or a stop of the streaming video, wherein storing of the video state enables reusing the identifier that is unique, such that resuming from the pause or the stop restarts the inserting of the identifier and the encoding by the encoder, the method being executed by a processor. - View Dependent Claims (7, 8, 15, 16)
-
-
9. A copy protection system for providing streaming video to a viewer over a network, the system including one or more servers having processors and memory, the system comprising:
-
a request manager configured to process a request for streaming video from the viewer and to receive an identifier; a client qualifier for qualifying a client requiring streaming video; an identifier source configured to provide the identifier; a database configured to store the identifier in association with information about the viewer or the client of the viewer; and a video source configured to receive the video and the identifier, the video source further configured to insert the identifier into the video and encode the video using an encoder that is selected based on the qualifying of the client by the client qualifier, while providing the encoded video to the viewer; wherein the video source is configured to insert the identifier into one or more frames of the video while one or more other frames of the video including the inserted identifier are transmitted to the client for viewing; wherein the video source is configured to store video state data that is indicative of one or more of a pause or a stop of the video, wherein storing of the video state enables reuse of the identifier for the video, such that resuming from the pause or the stop restarts the insertion of the identifier and the encoding by the encoder. - View Dependent Claims (10, 11, 12, 13, 17)
-
Specification