Resolving partial media topologies
First Claim
Patent Images
1. A method for resolving a partial media topology, comprising:
- receiving a partial media topology that includes a plurality of nodes including at least one media source node and at least one media sink node;
populating a working first-in-first-out (FIFO) queue with source nodes in the partial topology; and
iteratively, for each node in the working FIFO queue;
negotiating a media type for each output of the node with a downstream node in the partial topology,instantiating one or more intermediate nodes when it is determined that an output of the node is incompatible with an input of the downstream node;
connecting the one or more intermediate nodes between the media source node and the media sink node,adding the one or more intermediate nodes to the working FIFO queue, the one or more intermediate nodes being absent from the partial media topology, andremoving one or more of the added intermediate nodes from the working FIFO queue when a connection between a first intermediate node of the working FIFO queue and a first media node of the working FIFO queue is unresolved.
2 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for resolving a partial topology are disclosed. In one embodiment a media engine includes a topology loader module that receives a partial topology from another module associated with the media engine. The topology loader implements logic operations that convert a partial topology into a full topology, which may be returned to the media engine for presentation of the media stream(s) to a user.
147 Citations
29 Claims
-
1. A method for resolving a partial media topology, comprising:
-
receiving a partial media topology that includes a plurality of nodes including at least one media source node and at least one media sink node; populating a working first-in-first-out (FIFO) queue with source nodes in the partial topology; and iteratively, for each node in the working FIFO queue; negotiating a media type for each output of the node with a downstream node in the partial topology, instantiating one or more intermediate nodes when it is determined that an output of the node is incompatible with an input of the downstream node; connecting the one or more intermediate nodes between the media source node and the media sink node, adding the one or more intermediate nodes to the working FIFO queue, the one or more intermediate nodes being absent from the partial media topology, and removing one or more of the added intermediate nodes from the working FIFO queue when a connection between a first intermediate node of the working FIFO queue and a first media node of the working FIFO queue is unresolved. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system comprising:
-
one or more tangible computer-readable media; a media engine embodied on the one or more computer-readable media and configured to communicatively interact with an application to present a media presentation; the media engine being configured to use; a media session to generate a partial topology, the partial topology including one or more media sources individual ones of which serving as a source of media content, and one or more media sinks configured to sink a media stream, and a topology loader to resolve the partial topology into a full topology, wherein the topology loader resolves the partial topology, in part, by;
(1) inserting one or more intermediate nodes into a first-in-first-out (FIFO) queue, and (2) removing one or more inserted intermediate nodes from the FIFO queue when a connection between a first inserted intermediate node of the FIFO queue and a first media node of the FIFO queue is unresolved. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A system comprising:
-
one or more tangible computer-readable media; a media engine embodied on the one or more computer-readable media and configured to communicatively interact with an application to present a presentation; the media engine being configured to use; a media session to generate one or more media sources individual ones of which serving as a source of media content, and one or more media sinks configured to sink a media stream; a topology loader to generate one or more transforms communicatively linked with one or more media sources and configured to operate on data received from the one or more media sources, the topology loader to further receive a partially resolved topology from the media session and to generate a fully resolved topology by sequentially negotiating a media type of each source node of the partially resolved topology with an input of a downstream node to determine whether additional intermediate nodes should be added, and to remove at east one added intermediate node when a connection between an added intermediate node and a source node is unresolved. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28)
-
-
29. A method for resolving a partial media topology, comprising:
-
receiving a plurality of media nodes from a remote computer; populating a working first-in-first-out (FIFO) queue with at least two of the plurality of media nodes; resolving a connection between two nodes of the FIFO queue by adding an encoder to the FIFO queue; inserting one or more intermediate nodes into the FIFO queue, the one or more added intermediate nodes absent from the plurality of media received from the remote computer; removing one or more of the inserted nodes from the FIFO queue when a connection between a first intermediate node of the FIFO queue and a first media node of the FIFO queue is unresolved; generating a presentation media comprised of the FIFO nodes; and presenting the presentation media to a user by visually rendering the FIFO nodes within a window on a display device.
-
Specification