Methods and systems for managing multiple inputs that are capable of
competing or contending for a particular or primary output are described.
In one embodiment, the multiple inputs are managed through the use of a
software-implemented matrix switch object, and an associated data
structure that is used to program the switch object and resolve
contention issues between the inputs. The matrix switch object can
process the multiple inputs to provide a primary output. One
implementation of the switch object uses virtual input and output pins to
receive and provide data streams. One specific embodiment is used in
connection with multi-media editing software that enables users build or
define their own editing multi-media editing projects that incorporate
multiple different user-selected clips, in the form of digital data
streams, into an integrated project. Each clip can be defined in terms of
one or more digital data streams, e.g. video and audio streams. One
implementation method defines a first data structure that represents an
editing project and processes the data structure to provide a second data
structure that contains data that can be used to program the matrix
switch object so that multiple switch inputs are routed to multiple
switch outputs and contentions between the inputs for a primary output
are resolved.
De methodes en de systemen om veelvoudige input te beheren die om voor een bepaalde of primaire output kan te concurreren of vechten worden beschreven. In één belichaming, wordt de veelvoudige input beheerd door het gebruik van een software-uitgevoerd voorwerp van de matrijsschakelaar, en een bijbehorende gegevensstructuur die wordt gebruikt om het schakelaarvoorwerp te programmeren en geschilkwesties tussen de input op te lossen. Het voorwerp van de matrijsschakelaar kan de veelvoudige input verwerken om een primaire output te verstrekken. Één implementatie van het schakelaarvoorwerp gebruikt virtuele input en outputspelden om gegevensstromen te ontvangen en te verstrekken. Één specifieke belichaming wordt gebruikt met betrekking tot multimedia uitgevend software die gebruikers bouwt of bepaalt hun eigen het uitgeven multimedia uitgevend projecten toelaat die veelvoudige verschillende gebruiker-geselecteerde klemmen, in de vorm van digitale gegevensstromen, in een geïntegreerd project opnemen. Elke klem kan in termen van één of meerdere digitale gegevensstromen worden bepaald, b.v. video en audiostromen. Één implementatiemethode bepaalt een eerste gegevensstructuur die een het uitgeven project vertegenwoordigt en de gegevensstructuur verwerkt om een tweede gegevensstructuur te verstrekken die gegevens bevat die kunnen worden gebruikt om het voorwerp van de matrijsschakelaar te programmeren zodat de veelvoudige schakelaarinput aan veelvoudige schakelaaroutput wordt geleid en de geschillen tussen de input voor een primaire output worden opgelost.