Metadata plug-in application programming interface

Saved in:
Bibliographic Details
Title: Metadata plug-in application programming interface
Patent Number: 8,589,871
Publication Date: November 19, 2013
Appl. No: 12/642418
Application Filed: December 18, 2009
Abstract: Computer-based methods and systems for editing a time-based media program involve receiving an instruction to associate metadata with a selected portion of the program, determining a type of the metadata, wherein the type of the metadata is one of a predetermined set of metadata types, identifying a software component available to the editing system that is configured to process metadata of the determined type, and associating the metadata with the selected portion of the program by executing the identified software component to process the metadata. Metadata is represented using a scheme that is shared among the various computational components that manipulate the metadata; the scheme may also be shared with a host media processing system, as well as with other systems that are used in a time-based media editing and production workflow.
Inventors: Kelly, Todd (Groton, MA, US)
Assignees: Avid Technology, Inc. (Burlington, MA, US)
Claim: 1. In a computer-based editing system for editing a time-based media program, a method comprising: the editing system receiving an instruction to associate metadata with a selected portion of the program, the selected portion being indicated by at least a position in time in the time-based media program, the metadata conforming to a metadata specification and having a type; the editing system determining a type of the metadata, wherein the type of the metadata is one of a predetermined set of metadata types; the editing system identifying a software component from among a plurality of software components available to the editing system, wherein the identified software component is configured to process metadata of the determined type, wherein the editing system and the plurality of software components read and write metadata conforming to the metadata specification; and the editing system associating the metadata with the selected portion of the program by providing the metadata and context information of the editing system to the identified software component, executing the identified software component to process the metadata according to the context information, and receiving data from the identified computation component resulting from such processing.
Claim: 2. The method of claim 1 , wherein processing of the metadata involves an interaction of the metadata with at least part of the time-based media included within the selected portion of the program.
Claim: 3. The method of claim 1 , wherein a plurality of software components, including the first mentioned software component are available to the editing system, and wherein the type of the metadata is represented using a convention that is shared among the plurality of software components.
Claim: 4. The method of claim 1 , wherein the computer-based editing system includes a media processing engine, and the determined type of the metadata is represented using a convention that is shared between identified software component and the media processing engine.
Claim: 5. The method of claim 1 , wherein execution of the identified software component causes the identified software component to import the metadata from a memory location that is shared with the computer-based editing system.
Claim: 6. The method of claim 5 , wherein the imported metadata is dependent on a time at which the metadata is imported.
Claim: 7. The method of claim 5 , wherein the imported metadata is dependent on a spatial location of the computer-based editing system at a time at which the metadata is imported.
Claim: 8. The method of claim 1 , wherein execution of the identified software component causes the computer-based editing system to import the metadata from a source external to the computer-based editing system.
Claim: 9. The method of claim 8 , wherein the imported metadata is dependent on a time at which the metadata is imported.
Claim: 10. The method of claim 8 , wherein the imported metadata is dependent on a spatial location of the computer-based editing system at a time at which the metadata is imported.
Claim: 11. The method of claim 1 , wherein execution of the identified software component causes the identified software component to generate output metadata having an output metadata type, the output metadata type being one of the predetermined set of metadata types.
Claim: 12. The method of claim 11 , wherein the output metadata type is the same as the type of the first-mentioned metadata.
Claim: 13. The method of claim 11 , wherein the output metadata type is different from the type of the first-mentioned metadata.
Claim: 14. The method of claim 11 , wherein the output metadata includes information for use by a system external to the computer-based editing system.
Claim: 15. The method of claim 1 , wherein the computer-based editing system displays a timeline to represent a state of the program of time-based media, the timeline including at least one track for time-based media, and wherein receiving the instruction to associate metadata with a selected portion of the program causes the editing system to: create a metadata track on the timeline, the metadata track being characterized by the determined type of the metadata; and display a representation of the metadata on a portion of the metadata track corresponding to the selected portion of the program.
Claim: 16. The method of claim 15 , further comprising: receiving a second instruction to associate a second set of metadata with a second selected portion of the program; determining a type of the second set of metadata, wherein the type of the second set of metadata is one of the predetermined set of metadata types; and if the determined type of the second set of metadata is the same as the type of the first-mentioned metadata, executing the identified software component to process the second set of metadata and displaying a representation of the second set of metadata on a portion of the metadata track corresponding to the second selected portion of the program.
Claim: 17. A system for editing a time-based media program, the system comprising: a processor; a memory storing computer program instructions that, when processed by the processor instruct the processor to: receive, through the editing system, an instruction to associate metadata with a selected portion of the program, the selected portion being indicated by at least a position in time in the time-based media program, the metadata conforming to a metadata specification and having a type; identify a plurality of software components available to the editing system, wherein the editing system and the plurality of software components read and write metadata conforming to the metadata specification; determine a type of the metadata, wherein the type of the metadata is one of a predetermined set of metadata types; identify a software component from among a plurality of software components available to the editing system, wherein the identified software component is configured to process metadata of the determined type; and associate the metadata with the selected portion of the program by providing the metadata and context information of the editing system to the identified software component, executing the identified software component to process the metadata according to the context information, and receiving data from the identified computation component resulting from such processing.
Claim: 18. The system of claim 17 , wherein processing of the metadata involves an interaction of the metadata with at least part of the time-based media included within the selected portion of the program.
Claim: 19. A computer program product comprising: a computer-readable medium; computer program instructions stored on the computer-readable medium that, when proceeded by a computer, instruct the computer to perform a method for editing a time-based media program, the method comprising: the editing system receiving an instruction to associate metadata with a selected portion of the program, the selected portion being indicated by at least a position in time in the time-based media program, the metadata conforming to a metadata specification and having a type; the editing system determining a type of the metadata, wherein the type of the metadata is one of a predetermined set of metadata types; the editing system identifying a software component from among a plurality of software components available to the editing system, wherein the identified software component is configured to process metadata of the determined type, wherein editing system and the plurality of software components read and write metadata conforming to the metadata specification; and the editing system associating the metadata with the selected portion of the program by providing the metadata and context information of the editing system to the identified software component, executing the identified software component to process the metadata according to the context information, and receiving data from the identified computation component resulting from such processing.
Claim: 20. The computer program product of claim 19 , wherein processing of the metadata involves an interaction of the metadata with at least part of the time-based media included within the selected portion of the program.
Claim: 21. A computer system for editing a program, the program comprising time-based media, the computer system comprising: a processor; a memory storing computer program instructions that, when processed by the processor configure the computer system to implement: a host program having a graphical user interface presenting one or more timelines representing audio and video data, and one or more timelines representing metadata, wherein through the graphical user interface the host program receives instructions to associate metadata with selected portions of the program, the selected portions being indicated by a position one or more of the timelines representing metadata, wherein metadata is in a format defined by a metadata specification and has a type; a plurality of computational components, each computational component being configured to process metadata conforming to the metadata specification, the computational component further being configured to process metadata of a particular type; wherein the host program determines the metadata types for which computational components are available on the computer system; and wherein the host program, in response to metadata conforming to the metadata specification being associated with a selected portion of the program: determines a type of the metadata; identifies one of the plurality of computational components available to process metadata of the determined type; initializes the identified computational component to process the metadata; provides the metadata and context information of the host program to the identified computational component; and receives data from the identified computational component resulting from the identified computational component processing the metadata according to the context information.
Current U.S. Class: 717/110
Patent References Cited: 6167404 December 2000 Morcos et al.
6336093 January 2002 Fasciano
6426778 July 2002 Valdez, Jr.
6728682 April 2004 Fasciano
7512885 March 2009 Walsh et al.
7555557 June 2009 Bradley et al.
7562099 July 2009 Walsh et al.
2002/0108115 August 2002 Palmer
2003/0018609 January 2003 Phillips et al.
2004/0268224 December 2004 Balkus et al.
2005/0235198 October 2005 Howard et al.
2007/0260968 November 2007 Howard et al.




Other References: Kallioja, “Media Asset Management Approach to Metadata in Television Production”, 2006 , Master Thesis, Helsinki University of Technology, Department of Automation and Systems Technology, Finland, 153 pages. cited by examiner
“Proposed SMPTE Engineering Guideline for Television—Material Exchange Format (MXF)—MXF Descriptive Metadata”, 2004, The Society of Motion Picture and television Engineers, 28 pages. cited by examiner
U.S. Appl. No. 09/539,749, filed Mar. 31, 2000, Balkus et al. cited by applicant
Avid Advanced Effects Guide, Chapter 5, Working with Plug-In Effect, Avid Technololgy, Inc., Sep. 2009, pp. 151-164. cited by applicant
Avid Metasync Setup and User's Guide, Avid Technology, Inc. 2004, pp. 1-92. cited by applicant
Primary Examiner: Vo, Ted T
Attorney, Agent or Firm: Strimpel, Oliver
Accession Number: edspgr.08589871
Database: USPTO Patent Grants
Description
Abstract:Computer-based methods and systems for editing a time-based media program involve receiving an instruction to associate metadata with a selected portion of the program, determining a type of the metadata, wherein the type of the metadata is one of a predetermined set of metadata types, identifying a software component available to the editing system that is configured to process metadata of the determined type, and associating the metadata with the selected portion of the program by executing the identified software component to process the metadata. Metadata is represented using a scheme that is shared among the various computational components that manipulate the metadata; the scheme may also be shared with a host media processing system, as well as with other systems that are used in a time-based media editing and production workflow.