System and related interfaces supporting the processing of media content
First Claim
Patent Images
1. A computing device comprising:
- one or more computer-readable media;
one or more processors; and
computer-readable instructions on the one or more computer-readable media which, when executed by the one or more processors, cause the one or more processors to implement a software enabled matrix switch comprising;
a scalable plurality of inputs, dynamically coupled to select source(s) to receive media content; and
a scalable plurality of outputs, dynamically coupled to select software object(s), wherein the software enabled, matrix switch recursively routes media content through the select software object(s) to manipulate the received media content in accordance with a user-defined media processing project, wherein the software enabled matrix switch is generated by a render engine in a media processing filter graph to selectively couple one or more inputs to one or more outputs recursively processing media content through a plurality of software objects in accordance with a user-defined media processing project; and
a programming grid, generated by the render engine in accordance with the user-defined media processing project, to control routing of the media content from the scalable plurality of one or more inputs to the scalable plurality of one or more outputs, wherein modifications to the user-defined media processing project are dynamically reflected in an updated version of the programming grid, eliminating the need to tear down and reconstitute an entire filter graph to effect the modification,wherein the scalable plurality of inputs are implemented as software objects dedicated to communicating information from a software object to the switch.
1 Assignment
0 Petitions
Accused Products
Abstract
A software enabled, matrix switch is presented wherein a scalable plurality of inputs, coupled to media content sources, provide media content which is recursively routed through select media processing object(s) coupled to a scalable plurality of matrix switch outputs in accordance with a user-defined media processing project.
135 Citations
18 Claims
-
1. A computing device comprising:
-
one or more computer-readable media; one or more processors; and computer-readable instructions on the one or more computer-readable media which, when executed by the one or more processors, cause the one or more processors to implement a software enabled matrix switch comprising; a scalable plurality of inputs, dynamically coupled to select source(s) to receive media content; and a scalable plurality of outputs, dynamically coupled to select software object(s), wherein the software enabled, matrix switch recursively routes media content through the select software object(s) to manipulate the received media content in accordance with a user-defined media processing project, wherein the software enabled matrix switch is generated by a render engine in a media processing filter graph to selectively couple one or more inputs to one or more outputs recursively processing media content through a plurality of software objects in accordance with a user-defined media processing project; and a programming grid, generated by the render engine in accordance with the user-defined media processing project, to control routing of the media content from the scalable plurality of one or more inputs to the scalable plurality of one or more outputs, wherein modifications to the user-defined media processing project are dynamically reflected in an updated version of the programming grid, eliminating the need to tear down and reconstitute an entire filter graph to effect the modification, wherein the scalable plurality of inputs are implemented as software objects dedicated to communicating information from a software object to the switch. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computing device comprising:
-
one or more computer-readable media; one or more processors; and computer-readable instructions on the one or more computer-readable media which, when executed by the one or more processors, cause the one or more processors to implement a media processing system comprising; a source to provide media content; a software enabled, matrix switch filter, coupled to the source, to receive the media content on one or more of a scalable plurality of inputs and selectively route the content to software object(s) coupled to one or more of a scalable plurality of output(s), to recursively transform the received content prior to rendering; a render engine, exposing the source and the software enabled, matrix switch filter to higher-level applications, to enable a user to generate a media processing project, wherein the render engine automatically generates a filter graph reflecting a user-defined media processing project; and wherein the matrix switch filter comprises a programming grid, automatically generated by the render engine, to define which of the scalable plurality of inputs are coupled to each of the scalable plurality of outputs during execution of the media processing project, wherein modifications to the user-defined media processing project are dynamically reflected in an updated version of the programming grid, eliminating the need to tear down and reconstitute an entire filter graph to effect the modification, wherein the software objects coupled to the scalable plurality of outputs include one or more of a transition filter, an effects filter and/or a render filter. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17, 18)
-
Specification