System, method, and computer program product for media publishing request processing
First Claim
1. A system for publishing transcoded media content, comprising:
- a publishing service request processor that generates a media provider request based on a requesting client'"'"'s publishing service request; and
a media provider farm that receives said media provider request from said publishing service request processor and delivers transcoded media content to fulfill said media provider request.
6 Assignments
0 Petitions
Accused Products
Abstract
A system, method, and computer program product for publishing transcoded media content in response to publishing service requests from end users. A user request for media content, is processed intelligently, either by directing the processing of the request to one of a set of transcoding servers so as to effectively balance the load among the servers, or by directing the processing of the request to an appropriate alternative means for satisfying the request. Transcoding tasks can be prioritized. Moreover, the current load on any particular transcoding server can be monitored in conjunction with determination of the load to be created by a transcoding task, in order to facilitate server selection. Transcoding can be performed on-demand or in a batch mode. Alternatively, a request can be satisfied by distributing media content that has already been transcoded and is resident in cache memory in anticipation of such requests.
-
Citations
38 Claims
-
1. A system for publishing transcoded media content, comprising:
-
a publishing service request processor that generates a media provider request based on a requesting client'"'"'s publishing service request; and
a media provider farm that receives said media provider request from said publishing service request processor and delivers transcoded media content to fulfill said media provider request. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method of providing transcoded media content to a destination client in response to a publishing service request from a requesting client, comprising the steps of:
-
(a) receiving the publishing service request; and
(b) when requested transcoded media content is stored in a cache, (i) generating and sending a media provider request that specifies cache access of the requested transcoded media content;
(ii) identifying a distribution server;
(iii) sending a distribution request to the distribution server; and
(iv) delivering the requested transcoded media content from the cache to the destination client via the distribution server. - View Dependent Claims (10)
-
-
11. A method of providing transcoded media content to a destination client in response to a publishing service request from a requesting client, comprising the steps of:
-
(a) receiving the publishing service request; and
(b) given that transcoding capacity is available, (i) generating and sending a media provider request that specifies on-demand transcoding to satisfy exactly the publishing service request;
(ii) selecting a transcoding server based on server load;
(iii) identifying a distribution server;
(iv) initiating, at the selected transcoding server, a transcoding task corresponding to the publishing service request;
(v) transcoding source media content to produce requested transcoded media content;
(vi) sending the requested transcoded media content to the distribution server;
(vii) sending a distribution request to the distribution server; and
(viii) delivering the requested transcoded media content from the distribution server to the destination client. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A method of providing transcoded media content to a destination client in response to a publishing service request from a requesting client, comprising the steps of:
-
(a) receiving the publishing service request; and
(b) given that transcoding capacity is available, (i) generating and sending a media provider request that specifies on demand transcoding to produce requested media content in a format different from that requested, but usable by the destination client;
(ii) selecting a transcoding server based on server load;
(iii) identifying a distribution server;
(iv) initiating, at the selected transcoding server, a transcoding task associated with the publishing service request;
(v) transcoding source media content to produce the requested content in the different format;
(vi) sending the transcoded media content to the distribution server;
(vii) sending a distribution request to the distribution server; and
(viii) delivering the transcoded media content from the distribution server to the destination client. - View Dependent Claims (23)
-
-
24. A method of providing transcoded media content to a destination client in response to a publishing service request from a requesting client, comprising the steps of:
-
(a) receiving the publishing service request; and
(b) directing the requesting client to an origin server that serves the source media content.
-
-
25. A method of providing transcoded media content in response to a batch media provider request, comprising the steps of:
-
(a) receiving the batch media provider request;
(b) selecting a transcoding server based on server load;
(c) sending, to the selected transcoding server, a transcoding task corresponding to the batch media provider request;
(d) transcoding source media content to produce the requested transcoded media content; and
(e) storing the requested transcoded media content in a cache. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32, 33)
-
-
34. A method for determining how to publish requested transcoded media content, comprising the steps of:
-
(a) receiving a publishing service request from a client;
(b) determining an optimum publishing option;
(c) generating a media provider request specifying the determined option; and
(d) sending the media provider request to a media provider request processor. - View Dependent Claims (35)
-
-
36. A method of speculatively issuing a batch media provider request, comprising the steps of:
-
(a) if transcoding capacity is available, determining whether any pre-encodes have been requested; and
(b) if any pre-encodes have been requested, issuing a pre-encode batch media provider request, otherwise, predicting a a future publishing service request, and issuing a corresponding pre-encode batch media provider request.
-
-
37. A method of ascertaining availability of a server, comprising the steps of:
-
(a) receiving, at a database, registration information from the server at fixed intervals, wherein the registration information comprises a list of services that the server is configured to perform; and
(b) if and only if the servers registration information is received at the most recent interval, concluding that the server is available and performing application level checks to confirm that the server is usable.
-
-
38. A method of shutting down a server in a manner transparent to a client, comprising the steps of:
-
(a) issuing a shutdown primitive to the server;
(b) causing the server to remove its registration information from a database;
(c) waiting for all currently running tasks to complete; and
(d) taking down the server.
-
Specification