System and related methods for reducing memory requirements of a media processing system
First Claim
Patent Images
1. A computer-implemented method of generating a media editing project comprising:
- providing a matrix switch and one or more adjacent objects;
establishing an initial rendering of the media editing project; and
negotiating buffer size and attribute characteristics between an input/output of the matrix switch and an input/output of adjacent objects, wherein negotiated buffers are utilized to communicate media content between the matrix switch and adjacent buffers by sharing a common buffer between inputs and outputs,wherein the media editing project is established by a render engine, exposed from an operating system executing on a computing system implementing the media editing project,wherein the matrix switch negotiates to be an allocator of buffers between the matrix switch and objects coupled to it to facilitate communication between the matrix switch and said objects, without the need for memory copy operation, andwherein if the matrix switch is not able to be an allocator of a buffer, a memory copy operation is used to communicate media content with an associated object.
1 Assignment
0 Petitions
Accused Products
Abstract
Various embodiments pertain to generating a development project including at least a matrix switch and one or more adjacent objects. In one or more embodiments, an initial rendering of the development project is established and buffer size and attributes are negotiated between an input/output coupling the matrix switch to an input/output of the adjacent objects. The negotiated buffer is utilized to communicate information between the input/output of the matrix switch and the input/output of the adjacent object by sharing information via the shared buffer.
127 Citations
15 Claims
-
1. A computer-implemented method of generating a media editing project comprising:
-
providing a matrix switch and one or more adjacent objects; establishing an initial rendering of the media editing project; and negotiating buffer size and attribute characteristics between an input/output of the matrix switch and an input/output of adjacent objects, wherein negotiated buffers are utilized to communicate media content between the matrix switch and adjacent buffers by sharing a common buffer between inputs and outputs, wherein the media editing project is established by a render engine, exposed from an operating system executing on a computing system implementing the media editing project, wherein the matrix switch negotiates to be an allocator of buffers between the matrix switch and objects coupled to it to facilitate communication between the matrix switch and said objects, without the need for memory copy operation, and wherein if the matrix switch is not able to be an allocator of a buffer, a memory copy operation is used to communicate media content with an associated object. - View Dependent Claims (2, 3, 4, 5, 6, 7, 14, 15)
-
-
8. A computer-implemented development system comprising:
-
computer-readable storage media; instructions in the computer-readable storage media which, when executed, implement; one or more processing chains; and a matrix switch, coupled to the one or more processing chains, to recursively pass media content received from the one or more processing chains through one or more processing objects to implement a media editing project, wherein the matrix switch negotiates buffer size and attributes between the matrix switch and adjacent objects, wherein the negotiated buffers are utilized to communicate the media content between the matrix switch and adjacent buffers without requiring a buffer copy operation, wherein the media editing project is established by a render engine, exposed from an operating system executing on a computing system implementing the development system, wherein the matrix switch negotiates to be an allocator of buffers between the matrix switch and objects coupled to it to facilitate communication between the matrix switch and said objects, without the need for memory copy operation, and wherein if the matrix switch is not able to be an allocator of a buffer, a memory copy operation is used to communicate media content with an associated object. - View Dependent Claims (9, 10)
-
-
11. A matrix switch object embodied on a computer-readable media, the matrix switch object comprising:
-
a dynamically determined number of inputs to receive media content for a media editing project from one or more processing chains; and a dynamically determined number of outputs, selectively coupling one or more of the dynamically determined inputs to one or more of the dynamically determined outputs, wherein a matrix switch object negotiates with objects coupled to each of the dynamically determined inputs and outputs to be an allocator for buffer size and attribute requirements to facilitate communication between objects and within the matrix switch object using a shared buffer of agreed upon size and attribute characteristics, wherein the media editing project is established by a render engine, exposed from an operating system executing on a computing system implementing the matrix switch object, and wherein if the matrix switch object is not able to be an allocator of a buffer, a memory copy operation is used to communicate media content with an associated object. - View Dependent Claims (12, 13)
-
Specification