System and method for accounting for variations in client capabilities in the distribution of a media presentation
First Claim
1. A method for preparing a multimedia presentation for transmission to a client over a network, the method comprising:
- allowing a producer of the presentation to identify elements of software which process data representing resources used in the presentation;
allowing the producer to specify connections between two or more elements, wherein a connection represents a flow of data from one element to another element;
allowing the producer to specify a plurality of resources to be processed by the identified elements and location data indicating the locations of the resources on one or more servers connectable to the network; and
generating a set of presentation data structures, including the identified elements, connections, and resources, for transmission to a client to thereby enable the client to reproduce the multimedia presentation from the presentation data structures by retrieving at least some of the resources and processing the retrieved resources with the identified elements in accordance with the specified connections.
0 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods are presented that allow the efficient distribution of rich media to clients by maximizing the use of available bandwidth and client processing capabilities. A rich media presentation is divided into discrete components, and a producer of the presentation specifies how a presentation is to be assembled and where resources needed for the presentation are to be found. This information is packaged into a data structure and sent to clients. Clients use this data structure to retrieve the necessary resources for the presentation. Producers are able to prioritize the particular resources that form part of the ultimate presentation according to their importance in the presentation, and clients can retrieve the resources most suitable for their capabilities, including processing power, graphics production speed, and bandwidth. A benchmarker routine running on the client helps identify these capabilities just before retrieval of the presentation components, to more closely assess the conditions under which the client will retrieve, assemble and present the desired show.
-
Citations
16 Claims
-
1. A method for preparing a multimedia presentation for transmission to a client over a network, the method comprising:
-
allowing a producer of the presentation to identify elements of software which process data representing resources used in the presentation;
allowing the producer to specify connections between two or more elements, wherein a connection represents a flow of data from one element to another element;
allowing the producer to specify a plurality of resources to be processed by the identified elements and location data indicating the locations of the resources on one or more servers connectable to the network; and
generating a set of presentation data structures, including the identified elements, connections, and resources, for transmission to a client to thereby enable the client to reproduce the multimedia presentation from the presentation data structures by retrieving at least some of the resources and processing the retrieved resources with the identified elements in accordance with the specified connections. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A system for delivering a multimedia presentation from a server to a client, the system comprising:
-
a presentation-authoring tool for use by a producer of the presentation to identify software elements for processing data representing resources used in the presentation, specify connections between two or more elements representing a flow of data from one element to another element, specify a plurality of resources to be processed by the identified elements and location data indicating the locations of the resources on one or more servers connectable to the network, and specify an encoder to tap a signal on a selected connection and encode the data flowing at the selected connection;
and a first agent for traversing a series of identified elements via their connections until a tapped encoder is located and encoding the data at the tapped connection using the specified encoder. - View Dependent Claims (12, 13, 14, 15)
-
-
16. A method for customizing a multimedia presentation based upon processing capabilities of a client requesting the presentation or available bandwidth for transmission to the client, the method comprising:
-
storing data structures identifying a series of software elements for processing a resource representing data, forming part of the presentation and connections between the software elements in the series on which resource data flows from one element to another;
specifying a plurality of encoders to tap various connections within the series of software elements, the encoders each being associated with a given set of client processing capabilities, available bandwidth for transmission to a client, or both; and
based upon the client'"'"'s processing capabilities, available bandwidth, or both, selecting one of the encoders and encoding the data flowing along the connection tapped by the selected encoder using the selected encoder.
-
Specification