AU2003252878B2 - Auto-editing Video Material Using Multiple Templates - Google Patents

Auto-editing Video Material Using Multiple Templates Download PDF

Info

Publication number
AU2003252878B2
AU2003252878B2 AU2003252878A AU2003252878A AU2003252878B2 AU 2003252878 B2 AU2003252878 B2 AU 2003252878B2 AU 2003252878 A AU2003252878 A AU 2003252878A AU 2003252878 A AU2003252878 A AU 2003252878A AU 2003252878 B2 AU2003252878 B2 AU 2003252878B2
Authority
AU
Australia
Prior art keywords
edl
raw
segment
video
video production
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
AU2003252878A
Other versions
AU2003252878A1 (en
Inventor
Julie Rae Kowald
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from AU2002951914A external-priority patent/AU2002951914A0/en
Application filed by Canon Inc filed Critical Canon Inc
Priority to AU2003252878A priority Critical patent/AU2003252878B2/en
Publication of AU2003252878A1 publication Critical patent/AU2003252878A1/en
Application granted granted Critical
Publication of AU2003252878B2 publication Critical patent/AU2003252878B2/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Description

S&F Ref: 649475
AUSTRALIA
PATENTS ACT 1990 COMPLETE SPECIFICATION FOR A STANDARD PATENT Name and Address of Applicant: Actual Inventor(s): Address for Service: Invention Title: Canon Kabushiki Kaisha 30-2, Shimomaruko 3-chome, Ohta-ku Tokyo 146 Japan Julie Rae Kowald Spruson Ferguson St Martins Tower Level 31 Market Street Sydney NSW 2000 (CCN 3710000177) Auto-editing Video Material Using Multiple Templates ASSOCIATED PROVISIONAL APPLICATION DETAILS [33] Country [31] Applic. No(s) AU 2002951914 [32] Application Date 08 Oct 2002 The following statement is a full description of this invention, including the best method of performing it known to me/us:- 5815c -1- AUTO-EDITING VIDEO MATERIAL USING MULTIPLE TEMPLATES Technical Field of the Invention The present invention relates generally to editing of video material and, in particular, to auto editing using templates. The present invention relates to a method and apparatus for seamless editing of video material using auto edit templates. The invention also relates to a computer program product including a computer readable medium having recorded thereon a computer program for seamless editing of video material using auto edit templates.
Background Art Over the past decade, consumer video editing has evolved from a complex and time consuming activity to a simplified and streamlined process based largely upon Personal Computer (PC) editing software applications. The operations associated with capture, editing and exporting of video material to multiple platforms has been rationalised and simplified. The consumer is generally provided with only the functionality required, without being burdened by extraneous and often confusing features. Graphical User Interfaces (GUIs) have been simplified, and have also been made more user friendly and more effective.
The introduction of process automation has enabled consumer users to improve the quality of their productions. Use of video templates incorporating expert skills in editing, cutting and sequencing as well as production of titles, application of filters and special effects has been a key factor in recent improvements in production quality. Video templates are, in essence, software programs that guide the editing process. Templates come in a variety of themes or styles that include, for example, "music video", "romance", "black and white silent", and so on. Each template is characterised by a single theme.
081003 649475.doc -2- Fig. 1 shows a typical GUI 800 for a PC based video editing application used by consumers. The GUI 800 consists of a primary graphical window 812 (that is presented to a user on a video display 914; see Fig. 6) containing a viewer area 810, a browser pane 802 and a template pane 806. The browser pane 802 contains thumbnail representations (exemplified by 804) of stored video clips that have been captured or retrieved by the user. The template pane 806 contains template icons (exemplified by 808) representing auto edit templates that are available for use by the user. A clip summary bar 814, a production playlist summary bar 816 and a template holder 818 are located conveniently beneath the viewer area 810.
An auto edit control button 820, implemented using a graphical control icon in the present case, is located below the template pane 806. In order to produce an auto edited production, the user merely has to drag one or more video clips 804 into the playlist summary bar 816, (ii) drag a template 808 into the template holder 818, and activate the auto edit control 820. The auto edit application underpinning the GUI 800 will, thereafter, automatically process the selected video clips in accordance with the selected template and will display the auto edited production in the display area 810.
Fig. 2 shows a flowchart of a work flow process 100 used with the auto editing system described in relation to Fig. 1. Video content is captured, or retrieved from a database, in a first step 102, after which the video content is stored, for example on a hard disk, in a step 104. Video material that is either captured, or retrieved in this manner is henceforth referred to as "raw" video material or clips. Thereafter, a selection of the video content is made, and is imported to a video editor application in a step 106. In a subsequent step 108, some, or all of the imported video material is selected and compiled into a raw video segment for editing. The term "raw" in this context means that the raw segment is intended for further processing.
649475.doc 081003 081003 649475 .doc -3- A subsequent step 110 selects an auto edit template, after which a step 112 performs the auto-edit process on the selected material. A subsequent testing step 114 determines whether display of the auto-edited video material is required. If this is the case, then the process 100 is directed in accordance with a "YES" arrow to a step 116 which displays the auto edited production in the display area 810. If, on the other hand, no display is required, then the process 100 is directed in accordance with a "NO" arrow to three parallel steps 118, 120 and 122, which represent three separate but related modes by which the auto edited production may be saved.
The step 118 saves a program Edit Decision List (EDL) for the auto edited production. The term "EDL" typically denotes a data set referencing raw video clips used in a production as well as the sequence in which the clips have been placed, and possibly further information such as in/out points for the clips, effects applied thereto and so on. Different types of EDL will be referred to in this description. There is typically a 1:1 correspondence between segments of an EDL and corresponding segments of the raw media items to which the EDL refers. The step 120 saves the actual "flat" rendered production produced by the auto edit process. The step 122 saves a "production program" which is a data file which contains references to both the selected video material and the particular template so that the auto edit process can be carried out in future if desired.
The three saving steps 118, 120 and 122 are depicted as being performed in parallel within a process step 130, however it will be apparent that these steps may in practice be selected in any sequence and combination desired by the user. Finally, the process 100 terminates at a step 124. The process described in relation to Fig. 2 enables the user to produce a high quality auto edited video production, however the process 100 is relatively inflexible since it allows only a single template to be applied to the selected raw video material at a time.
081003 649475.doc 081003 649475 .doc -4- Consumer users typically experiment with different templates in order to assess the resultant effects on their video material. The ability to experiment is a major attraction for novice users who need to learn the capabilities of their editing equipment in order to effectively use it. It is awkward and time consuming for users to experiment on systems supporting current processes such as the process 100 that is depicted in relation to Fig. 2. This inhibits the users' desire and ability to experiment. In order to experiment with a range of templates for a given set of captured material, the user must select a path, as depicted by an arrow 128, from the termination step 124 back to the step 110. If the user wishes to experiment with a selection of templates in regard to different sets of material, then the user must select a path, as depicted by an arrow 126, from the termination step 124 back to the step 108. Clearly these iterative steps are slow, cumbersome, and tend to reduce the amount of experimentation that the user is willing to undertake. From a work flow perspective, the process described in relation to Fig. 2 limits the efficiency and effectiveness of the user in his or her attempts to produce video productions having a professional look and feel.
Fig. 3 shows how raw video clips can be represented by a corresponding raw EDL that is processed by an auto editor in accordance with a template to thereby produce a desired output. Fig. 3 shows a data flow diagram 500 for production of auto edited programming material from input video clips. A set of raw input clips 502, 504, 506, 508 are represented, as depicted by an arrow 510, by a raw EDL 512. In general terms, an EDL in this context is a data set referencing the aforementioned raw video clips as well as the sequence in which the user has placed them in the select/compile step 108 (see Fig. The raw EDL can contain further data such as in/out points for the clips 502-508.
The raw EDL 512 is input, as depicted by an arrow 514, to an auto editor 520, together with a selected template 516.
081003 649475.doc 081003 649475.doc The auto editor 520 operates on the raw EDL 512 in accordance with instructions, data and possibly other parameters and instructions in the template 516. The auto editor 520 then outputs one or more of a program EDL 524, and (ii) a corresponding rendered program 528, as depicted respectively by arrows 522, and 526.
Fig. 4 shows a flowchart 200 for applying different templates to different respective video segments in a typical auto editing system. The process 200 commences with a step 202 that captures, or retrieves raw video material, for example from a database, after which the raw video material is stored on a hard disk in a step 204.
Subsequently, a step 206 imports a selection of the aforementioned raw video material to an editor. A following step 208 selects and arranges some or all of the imported video clips into different video segments for subsequent auto editing. The process of selecting and arranging the aforementioned video segments involves selection and arrangement of the associated corresponding EDL segments.
A following testing step 210 checks whether more templates are to be applied. If this is the case, (noting that in the first iteration, this step typically returns a "YES" response unless the user decides to abandon the session at the outset), the process 200 is directed in accordance with a "YES" arrow to a step 212. The step 212 selects a desired template and a corresponding compiled segment that has been arranged in the step 208.
The step 212 then auto edits the segment in accordance with the template after which step 214 plays the auto edited production on the display area 810 (see Fig. Thereafter, the auto-edited production is saved in a step 216. The step 216 is shown in dashed format to indicate that the options for saving the auto edited material that are available in the step 216 are the same as those available in the block 130 of Fig. 2. The process 200 is then directed as depicted by a dashed arrow 230 back to the testing step 210 in order to assess whether any further templates are to be selected. The process 200 iterates the loop described by the steps 210 to 216 as many times as desired, successively applying 081003 649475.doc -6different templates to different segments of raw video clips. In each case, the auto-edited results can be saved in one or more of the forms described in relation to the block 130 in Fig. 2.
If the testing step 210 indicates that no further templates are to be selected, then the process 200 is directed in accordance with a "NO" arrow to a testing step 218 which determines whether the auto edited productions are to be joined together and/or otherwise edited. If this is the case, then the process 200 is directed in accordance with a "YES" arrow to a step 222, which launches a time line editor, this being a device which is suitable for editing the aforementioned auto edited productions. A subsequent step 224 imports the auto edited productions, and places and orders the productions in a time line in a step 226. Other desired editing functions can be performed on the material in the time line in this step. Thereafter, a step 228 saves the edited material, using one or more of the save options described in relation to the block 130 in Fig. 2. The process 200 is then directed in accordance with a dashed arrow 230 to a termination step 220. Returning to the testing step 218, if the auto-edited segments are not to be joined together or otherwise edited, then the process 200 is directed in accordance with a "NO" arrow to the termination step 220.
Fig. 5 shows how the set of raw, or input EDL segments compiled in the step 208 of Fig. 4 are processed into an edited program EDL in accordance with the process 200. A set 602 of raw EDL segments 612, 614 and 616 are depicted as the ordered set 602, wherein arrows 604, 606, 608 and 610 depict respective boundaries of the raw EDL segments 612-616. The raw EDL segment 612 is processed in accordance with a corresponding template (not shown) to thereby form a corresponding program EDL segment 622 (also referred to as a virtual EDL segment). From a terminology perspective, the phrase "processing a raw EDL in accordance with a template to form a corresponding virtual EDL" is a compact way of saying "processing a raw video 081003 649475.doc 081003 649475 .doc -7production represented by the raw EDL in accordance with a template to form a corresponding autoedited video production represented by a virtual EDL". The program EDL segment 622 is derived from the entirety of the raw EDL segment 612, as depicted by dashed lines 618 and 620. In a similar fashion, the raw EDL segments 614 and 616 are processed by corresponding templates (not shown) to thereby form corresponding program EDL segments 628 and 634. Processing of the aforementioned raw EDL segments 612-616 into the resultant program EDL segments 622, 628 and 634 respectively is performed in the step 212 of Fig. 4.
The program EDL segments 622, 628 and 634 are edited, as depicted by arrows 636, 638 and 640, to thereby form an edited program EDL 642. This editing, which is performed in the step 226 of Fig. 4, is simple butt editing in the present case, and accordingly the program EDL segments 622, 628 and 634 are represented by corresponding segments 622', 628' and 634' in the edited program EDL 642.
It is significant to note, as already alluded to in regard to the EDL segments 612 and 622, that the raw EDL segments 612-616 are auto edited in accordance with respective templates (not shown) in an isolated manner. In other words, the arrangement of the raw EDL segments 612-616 into the set 602 is merely for illustrative convenience, and does not in any way influence the isolated nature of the auto editing process as applied to each raw EDL segment. Accordingly, the processing of the raw EDL segment 612 to thereby form the program EDL segment 622 is independent of the processing of the raw EDL segment 614 to thereby form the program EDL segment 628.
It often occurs that the set 602 of raw EDL segments 612-616 constitutes a set of raw video clips that are purposefully arranged by the user in a desired sequence, in order to capture a desired event or sequence of events. The inherent continuity between the raw EDL segments 612, 614 and 616 will be determined by the user's selection of the associated raw video clips. The inter-EDL boundaries 606 and 608 will typically not 081003 649475.doc 081003 649475 .doc -8introduce undesired discontinuities in the set 602, since the user has typically selected the raw clips in a coherent manner.
Since, however, templates typically apply their cutting and other rules in a nonlinear fashion, an unpredictable discontinuity will generally occur at each of the boundaries 644 and 646 in the edited program EDL 642. Accordingly, it is apparent that although the process 200 in Fig. 4 enables the user to apply a succession of templates to different raw EDL segments 612-616, it is likely that the final auto edited program 642 will have an unpredictable, and probably undesirable discontinuity at each of the intersegment boundaries.
Summary of the Invention It is an object of the present invention to substantially overcome, or at least ameliorate, one or more disadvantages of existing arrangements.
According to a first aspect of the invention, there is provided a method of editing a set of video clips, the method comprising the steps of: constructing a raw EDL referencing the set of video clips, the raw EDL representing a raw video production; segmenting the raw EDL into a plurality of raw EDL segments each (i) representing a corresponding raw video production segment, and (ii) having a commencing and a terminating raw EDL segment boundary; applying an autoedit template to all video clips referenced by a first raw EDL segment to thereby form a first autoedited video production segment and (ii) an associated first virtual EDL segment having a commencing and a terminating boundary; determining a continuity attribute in the first autoedited video production segment, the continuity attribute having a reference in a vicinity of the terminating boundary of the first virtual EDL segment; 081003 649475.doc 081003 649475 .doc -9identifying a corresponding continuity attribute in the first raw video production segment, the corresponding continuity attribute having a reference in the first raw EDL segment; and applying a succeeding autoedit template to all video clips referenced by both the portion of the first raw EDL segment from a vicinity of the reference to the corresponding continuity attribute to the terminating boundary of the first raw EDL segment, and (ii) a succeeding raw EDL segment, to thereby form (iii) a succeeding autoedited video production segment and (iv) an associated succeeding virtual EDL segment.
According to another aspect of the invention, there is provided an apparatus for editing a set of video clips, the apparatus comprising: means for constructing a raw EDL referencing the set of video clips, the raw EDL representing a raw video production; means for segmenting the raw EDL into a plurality of raw EDL segments each representing a corresponding raw video production segment, and (ii) having a commencing and a terminating raw EDL segment boundary; means for applying an autoedit template to all video clips referenced by a first raw EDL segment to thereby form a first autoedited video production segment and (ii) an associated first virtual EDL segment having a commencing and a terminating boundary; means for determining a continuity attribute in the first autoedited video production segment, the continuity attribute having a reference in a vicinity of the terminating boundary of the first virtual EDL segment; means for identifying a corresponding continuity attribute in the first raw video production segment, the corresponding continuity attribute having a reference in the first raw EDL segment; and 081003 649475.doc means for applying a succeeding autoedit template to all video clips referenced by both the portion of the first raw EDL segment from a vicinity of the reference to the corresponding continuity attribute to the terminating boundary of the first raw EDL segment, and (ii) a succeeding raw EDL segment, to thereby form (iii) a succeeding autoedited video production segment and (iv) an associated succeeding virtual EDL segment.
According to another aspect of the invention, there is provided an apparatus for editing video clips comprising: a memory for storing a program; and a processor for executing the program, said program comprising: code for constructing a raw EDL referencing the set of video clips, the raw EDL representing a raw video production; code for segmenting the raw EDL into a plurality of raw EDL segments each representing a corresponding raw video production segment, and (ii) having a commencing and a terminating raw EDL segment boundary; code for applying an autoedit template to all video clips referenced by a first raw EDL segment to thereby form a first autoedited video production segment and (ii) an associated first virtual EDL segment having a commencing and a terminating boundary; code for determining a continuity attribute in the first autoedited video production segment, the continuity attribute having a reference in a vicinity of the terminating boundary of the first virtual EDL segment; code for identifying a corresponding continuity attribute in the first raw video production segment, the corresponding continuity attribute having a reference in the first raw EDL segment; and 081003 649475.doc -11code for applying a succeeding autoedit template to all video clips referenced by both the portion of the first raw EDL segment from a vicinity of the reference to the corresponding continuity attribute to the terminating boundary of the first raw EDL segment, and (ii) a succeeding raw EDL segment, to thereby form (iii) a succeeding autoedited video production segment and (iv) an associated succeeding virtual EDL segment.
According to another aspect of the invention, there is provided a computer program product including a computer readable medium having recorded thereon a computer program for directing a processor to execute a method for editing video clips said program comprising: code for constructing a raw EDL referencing the set of video clips, the raw EDL representing a raw video production; code for segmenting the raw EDL into a plurality of raw EDL segments each representing a corresponding raw video production segment, and (ii) having a commencing and a terminating raw EDL segment boundary; code for applying an autoedit template to all video clips referenced by a first raw EDL segment to thereby form a first autoedited video production segment and (ii) an associated first virtual EDL segment having a commencing and a terminating boundary; code for determining a continuity attribute in the first autoedited video production segment, the continuity attribute having a reference in a vicinity of the terminating boundary of the first virtual EDL segment; code for identifying a corresponding continuity attribute in the first raw video production segment, the corresponding continuity attribute having a reference in the first raw EDL segment; and 081003 649475.doc -12code for applying a succeeding autoedit template to all video clips referenced by both the portion of the first raw EDL segment from a vicinity of the reference to the corresponding continuity attribute to the terminating boundary of the first raw EDL segment, and (ii) a succeeding raw EDL segment, to thereby form (iii) a succeeding autoedited video production segment and (iv) an associated succeeding virtual EDL segment.
According to another aspect of the invention, there is provided a computer program for directing a processor to execute a method for editing video clips said program comprising: code for constructing a raw EDL referencing the set of video clips, the raw EDL representing a raw video production; code for segmenting the raw EDL into a plurality of raw EDL segments each representing a corresponding raw video production segment, and (ii) having a commencing and a terminating raw EDL segment boundary; code for applying an autoedit template to all video clips referenced by a first raw EDL segment to thereby form a first autoedited video production segment and (ii) an associated first virtual EDL segment having a commencing and a terminating boundary; code for determining a continuity attribute in the first autoedited video production segment, the continuity attribute having a reference in a vicinity of the terminating boundary of the first virtual EDL segment; code for identifying a corresponding continuity attribute in the first raw video production segment, the corresponding continuity attribute having a reference in the first raw EDL segment; and code for applying a succeeding autoedit template to all video clips referenced by both the portion of the first raw EDL segment from a vicinity of the reference to the 649475.doc 081003
I
13corresponding continuity attribute to the terminating boundary of the first raw EDL segment, and (ii) a succeeding raw EDL segment, to thereby form (iii) a succeeding autoedited video production segment and (iv) an associated succeeding virtual EDL segment.
According to another aspect of the invention, there is provided a video production formed by a method of editing video clips, the method comprising the steps of: constructing a raw EDL referencing the set of video clips, the raw EDL representing a raw video production; segmenting the raw EDL into a plurality of raw EDL segments each (i) representing a corresponding raw video production segment, and (ii) having a commencing and a terminating raw EDL segment boundary; applying an autoedit template to all video clips referenced by a first raw EDL segment to thereby form a first autoedited video production segment and (ii) an associated first virtual EDL segment having a commencing and a terminating boundary; determining a continuity attribute in the first autoedited video production segment, the continuity attribute having a reference in a vicinity of the terminating boundary of the first virtual EDL segment; identifying a corresponding continuity attribute in the first raw video production segment, the corresponding continuity attribute having a reference in the first raw EDL segment; and applying a succeeding autoedit template to all video clips referenced by both the portion of the first raw EDL segment from a vicinity of the reference to the corresponding continuity attribute to the terminating boundary of the first raw EDL segment, and (ii) a succeeding raw EDL segment, to thereby form (iii) a succeeding 081003 649475.doc 081003 649475 .doc -14autoedited video production segment and (iv) an associated succeeding virtual EDL segment.
According to another aspect of the invention, there is provided a method of processing a raw EDL to thereby form an output EDL, the method comprising the steps of: applying an auto-edit template to a raw video production segment corresponding to a segment of the raw EDL to thereby form an autoedited video production segment and a corresponding virtual EDL segment; inserting the virtual EDL segment into the raw EDL in place of the corresponding raw EDL segment; successively repeating the applying and inserting steps for successive auto-edit templates and successive segments of the raw EDL, wherein upon conclusion of the successively repeating steps, the processed raw EDL is the output EDL.
According to another aspect of the invention, there is provided a method of processing a raw EDL to thereby form an output EDL, the method comprising the steps of: applying an auto-edit template to a raw video production segment corresponding to a segment of the raw EDL to thereby form an autoedited video production segment and a corresponding virtual EDL segment; inserting the virtual EDL segment into the raw EDL in place of at least a part of the corresponding raw EDL segment; successively repeating the applying and inserting steps for successive auto-edit templates and successive corresponding segments of the raw EDL; wherein each successive corresponding segment of the raw EDL to which the corresponding successive auto-edit template is applied includes that part of the preceding 081003 649475.doc corresponding raw EDL segment that remained after the associated preceding insertion step; and wherein upon conclusion of the successively repeating steps, the processed raw EDL is the output EDL.
According to another aspect of the invention, there is provided an apparatus for processing a raw EDL to thereby form an output EDL, the apparatus comprising: means for applying an auto-edit template to a raw video production segment corresponding to a segment of the raw EDL to thereby form an autoedited video production segment and a corresponding virtual EDL segment; means for inserting the virtual EDL segment into the raw EDL in place of at least a part of the corresponding raw EDL segment; means for successively repeating the applying and inserting steps for successive auto-edit templates and successive corresponding segments of the raw EDL; wherein each successive corresponding segment of the raw EDL to which the corresponding successive auto-edit template is applied includes that part of the preceding corresponding segment that remained after the associated preceding insertion step; and wherein upon conclusion of the successively repeating steps, the processed raw EDL is the output EDL.
According to another aspect of the invention, there is provided an apparatus for processing a raw EDL to thereby form an output EDL, the apparatus comprising: a memory for storing a program; and a processor for executing the program, said program comprising: code for applying an auto-edit template to a raw video production segment corresponding to a segment of the raw EDL to thereby form an autoedited video production segment and a corresponding virtual EDL segment; 081003 649475.doc 081003 649475.doc -16code for inserting the virtual EDL segment into the raw EDL in place of at least a part of the corresponding raw EDL segment; code for successively repeating the applying and inserting steps for successive auto-edit templates and successive corresponding segments of the raw EDL; wherein each successive corresponding segment of the raw EDL to which the corresponding successive auto-edit template is applied includes that part of the preceding corresponding segment that remained after the associated preceding insertion step; and wherein upon conclusion of the successively repeating steps, the processed raw EDL is the output EDL.
According to another aspect of the invention, there is provided a computer program for directing a computer to execute a method for processing a raw EDL to thereby form an output EDL, the program comprising: code for applying an auto-edit template to a raw video production segment corresponding to a segment of the raw EDL to thereby form an autoedited video production segment and a corresponding virtual EDL segment; code for inserting the virtual EDL segment into the raw EDL in place of at least a part of the corresponding raw EDL segment; code for successively repeating the applying and inserting steps for successive auto-edit templates and successive corresponding segments of the raw EDL; wherein each successive corresponding segment of the raw EDL to which the corresponding successive auto-edit template is applied includes that part of the preceding corresponding segment that remained after the associated preceding insertion step; and wherein upon conclusion of the successively repeating steps, the processed raw EDL is the output EDL.
081003 649475.doc 081003 649475.doc -17- According to another aspect of the invention, there is provided a computer program product including a computer readable medium having recorded thereon a computer program for directing a computer to execute a method for processing a raw EDL to thereby form an output EDL, the program comprising: code for applying an auto-edit template to a raw video production segment corresponding to a segment of the raw EDL to thereby form an autoedited video production segment and a corresponding virtual EDL segment; code for inserting the virtual EDL segment into the raw EDL in place of at least a part of the corresponding raw EDL segment; code for successively repeating the applying and inserting steps for successive auto-edit templates and successive corresponding segments of the raw EDL; wherein each successive corresponding segment of the raw EDL to which the corresponding successive auto-edit template is applied includes that part of the preceding corresponding segment that remained after the associated preceding insertion step; and wherein upon conclusion of the successively repeating steps, the processed raw EDL is the output EDL.
Brief Description of the Drawings One or more embodiments of the present invention will now be described with reference to the drawings, in which: Fig. 1 shows a typical GUI for a PC based video auto editing arrangement; Fig. 2 shows work-flow process for a current auto editing arrangement; Fig. 3 is a data flow diagram depicting conversion of raw video clips into various output forms; Fig. 4 shows a flowchart for applying different templates to respective video segments in a current auto editing arrangement; 081003 649475.doc -18- Fig. 5 shows how raw EDL segments are processed in the process of Fig. 2; Fig. 6 is a schematic block diagram of a general-purpose computer upon which arrangements described can be practiced; Figs. 7 and 8 show a process for auto editing in accordance with a described arrangement; Fig. 9 shows how raw EDL segments are processed in the process of Figs. 7 and 8; Fig. 10 depicts how constituent EDL entities are used in the process of Figs. 7 and 8; Fig. 11 depicts incremental construction of a proxy EDL using virtual EDL segments; and Figs. 12A and 12B show how additional media material can be added to a program EDL.
Detailed Description including Best Mode The video auto editing arrangement that will now be disclosed enables the user to experiment with templates in a simpler and more effective manner than has been allowed by previous auto editing systems. The described arrangement can usually provide a more effective work flow by which the user can experiment with multiple templates, adding and/or removing raw input media, without necessarily having to repeat a generally long, and rigid process. Program rendering times for output productions are often shorter in the described arrangement than in the presently available systems, particularly in circumstances where multiple templates are successively being applied.
The described arrangement also reduces undesirable and unpredictable intersegment discontinuities that are often present in current auto editing systems. This produces more pleasing auto edited programs in which multiple template styles are 081003 649475.doc -19incorporated. The described arrangement allows the user to save results either as a rendered "flat" production (see 120 in Fig. or a program EDL.
Where reference is made in any one or more of the accompanying drawings to steps and/or features, which have the same reference numerals, those steps and/or features have for the purposes of this description the same function(s) or operation(s), unless the contrary intention appears.
The described method of video auto editing is preferably practiced using a general-purpose computer system 900, such as that shown in Fig. 6 wherein the processes of Figs. 7, 8 and 10 may be implemented as software, such as an application program executing within the computer system 900. In particular, the method steps of video auto editing are effected by instructions in the software that are carried out by the computer.
The instructions may be formed as one or more code modules, each for performing one or more particular tasks. The software may also be divided into two separate parts, in which a first part performs the video auto editing methods and a second part manages a user interface, such as the GUI depicted in Fig. 1, between the first part and the user. The software may be stored in a computer readable medium, including the storage devices described below, for example. The software is loaded into the computer from the computer readable medium, and then executed by the computer. A computer readable medium having such software or computer program recorded on it is a computer program product. The use of the computer program product in the computer preferably effects an advantageous apparatus for video auto editing.
The computer system 900 comprises a computer module 901, input devices such as a keyboard 902 and mouse 903, output devices including a printer 915 and a display device 914. A Modulator-Demodulator (Modem) transceiver device 916 is used by the computer module 901 for communicating to and from a communications network 920. A telephone line 921 or other functional medium may be used to connect the modem 916 to 081003 649475.doc 081003 649475.doc the network 920. The modem 916 can be used to obtain access to the Internet, and other network systems, such as a Local Area Network (LAN) or a Wide Area Network (WAN).
The computer module 901 typically includes at least one processor unit 905, a memory unit 906, for example formed from semiconductor random access memory (RAM) and read only memory (ROM), and input/output interfaces. The interfaces typically include a video interface907, an I/O interface913 for the keyboard 902, mouse 903, and optionally a joystick (not illustrated), and an interface 908 for the modem 916. A storage device 909 is provided and typically includes a hard disk drive 910 and a floppy disk drive 911. A magnetic tape drive (not illustrated) may also be used. A CD-ROM drive 912 is typically provided as a non-volatile source of data. The components 905 to 913 of the computer module901 typically communicate via an interconnected bus 904, in a manner which results in a conventional mode of operation of the computer system 900 known to those in the relevant art. Examples of computers on which the described arrangements can be practised include IBM-PC's and compatibles, Sun Sparcstations or alike computer systems evolved therefrom.
Typically, the application program is resident on the hard disk drive 910 and is read and controlled in its execution by the processor 905. Intermediate storage of the program and any data fetched from the network 920 may be accomplished using the semiconductor memory 906, possibly in concert with the hard disk drive 910. In some instances, the application program may be supplied to the user encoded on a CD-ROM 922 or floppy disk 926 and read, as depicted by a dashed arrow 924 and 928 respectively via the corresponding drive 912 or 911. Alternatively, the user may read the application program from the network 920 via the modem device 916. Still further, the software can also be loaded into the computer system 900 from other computer readable media. The term "computer readable medium" as used herein refers to any storage or transmission medium that participates in providing instructions and/or data to the computer system 900 081003 649475.doc 081003 649475 .doc -21for execution and/or processing. Examples of storage media include floppy disks, magnetic tape, CD-ROM, a hard disk drive, a ROM or integrated circuit, a magnetooptical disk, or a computer readable card such as a PCMCIA card and the like, whether or not such devices are internal or external of the computer module 901. Examples of transmission media include radio or infra-red transmission channels as well as a network connection to another computer or networked device, and the Internet or Intranets including email transmissions and information recorded on websites and the like.
The method of video auto editing may alternatively be implemented in dedicated hardware such as one or more integrated circuits performing the functions or sub functions of video auto editing. Such dedicated hardware may include graphic processors, digital signal processors, or one or more microprocessors and associated memories.
Before proceeding with a description of the various disclosed arrangements, a brief review of terminology is provided.
DEFINITIONS
Template: A set of instructions that, in conjunction with metadata in the RAW EDL, create an OUTPUT EDL. The template can be selected manually by the user, or automatically by the editing system. The template can refer to and process pre-selected media as well as post-selected media, according to template specifics.
RAWEDL: A data set consisting ofmetadata for associated raw media. This metadata can be referenced by the template. Raw EDLs can be generated and stored in temporary storage 906, and/or in permanent storage 910.
OUTPUTEDL: An EDL that is produced by processing a RAW EDL.
PROGRAMEDL: An EDL associated with a "final" production. It is noted that the term final is a relative one since program EDLs can generally be further processed to produce further program EDLs.
081003 649475.doc 081003 649475 .doc -22- VIRTUAL EDL SEGMENT: An output EDL segment that is temporally stored for use in producing another output EDL, or a program EDL.
PROXY EDL: Is stored in a cache, (set associative), or other temporary storage such as 906, in order to allow rapid access by the editing application. The PROXY EDL is initially a copy of the RAW EDL, and the PROXY EDL is incrementally replaced by incorporating VIRTUAL EDL SEGMENTS as these are generated.
RAWEDL SEGMENT: An entity into which the RAW EDL can be partitioned in order to apply successive templates thereto.
As will be described in more detail in regard to Figs. 7 to 11, the disclosed arrangement transforms a raw EDL, which is typically partitioned into constituent EDL segments, through application of successive template(s) to thereby form virtual EDL segments. These are then typically edited (ie concatenated in the simplest case) to form a program EDL. The output can be in the form of one or more of the program EDL, and a production resulting from the application of either the aforementioned entities to the initially selected raw media content. Figs. 7 and 8 show a flowchart comprising two process fragments 300 and 400, for performing auto editing using a succession of templates.
Fig. 7 commences with a step 302, in which raw media content is captured or retrieved from a database, after which it is stored on the hard disk 910 in a step 304.
Thereafter, in a step 306, the processor 905 imports selections from the raw media content to the auto editor application which resides in the memory 906. A subsequent testing step 308 determines whether a "Live Dial" feature is activated, and if this is the case, then the process fragment 300 is directed in accordance with a "YES" arrow to a step 310. This step applies a current template to the raw EDL from a current position, displaying, "on the fly" (ie in a pseudo real-time manner) the auto edited results on the display area 810 in the video display 914.
081003 649475.doc 081003 649475 .doc -23- The step 310 also appends a virtual EDL segment, resulting from the aforementioned application, to a proxy EDL which is stored in the temporary memory 906. A subsequent testing step 312 determines whether a template change is desired. If this is the case, then a step 314 effects a change in the template, and the processing fragment 300 is directed back to the step 310. The step 310 applies the new template from the current raw EDL position, again displaying the production formed thereby on the display area 810. If, on the other hand, no change in template is required in the testing step 312, then the process fragment 300 is directed in accordance with "NO" arrow to a save step 316. The save step 316 saves the proxy EDL, being, for example, a concatenation of the successive virtual EDL segments formed by the iterating loop 312- 314-310, to the hard disk 910 as the program EDL.
Alternately the program EDL can be saved to a remote database (not shown) that is accessible over the computer network 920. The program EDL can also be output to the printer 915, or alternately can be maintained in the memory 906 for further processing by the processor 905. Another save option offered by the step 316 is that of saving the rendered program itself, this typically being stored to the hard disk 910, or to the aforementioned remote database. The process fragment 300 is, thereafter, directed to a termination step 320. Returning to the testing step 308, if the Live Dial feature is not on, then the process fragment 300 is directed in accordance with a "NO" arrow 318 to a step 402 in Fig. 8.
Fig. 8 commences with a step 402 in which a template is selected, after which a testing step 404 determines whether the selected template is to be applied to the entire raw selection determined in the step 306. If this is the case, then the process fragment 400 is directed in accordance with a "YES" arrow to a step 406 that applies the selected template to the entire selection represented by the raw EDL. Thereafter, the auto edited production is played in the display area 810 on the display 914 by a step 408. The process fragment 081003 649475.doc 081003 649475.doc -24- 400 is then directed to a save step 410. The save options in the step 410 are the same options as described in relation to the step 316. Thereafter, the process fragment 400 is directed to a termination step 420.
Returning to the testing 404, if the template selected in the step 402 is not to be applied to the entire selection represented by the raw EDL defined in the step 306, then the process fragment 400 is directed in accordance with a "NO" arrow to a step 412. The step 412 applies the current template to the raw EDL from the current position. The concept of the "current" position will be described in more detail in regard to Fig. 9. A subsequent testing step 414 determines whether the template is to be changed, and if this is the case, then the process fragment 400 is directed in accordance with a "YES" arrow to a step 418. The step 418 changes the template, after which the process fragment 400 is returned to the step 412. If, on the other hand, no template change is required, then the process fragment 400 is directed from the decision step 414 to a save step 416 in accordance with a "NO" arrow. The save step 416 offers the same save options as the save step 410.
Fig. 9 depicts how successive templates are applied from a "current" position in the raw EDL. A raw EDL 702 is depicted as being composed of raw EDL segments 712, 714 and 716. The raw EDL segments 712, 714 and 716 are spanned by respective arrows 704, 706, 708 and 710. As previously described, the raw EDL 702 is in many cases compiled, in the step 306 (see Fig. by the user in a way which maintains coherence of presentation across the raw EDL segments 712, 714 and 716. This coherence is particularly important across the segment boundaries 706 and 708. In the present arrangement, a first template (not shown) is applied to the raw EDL segment 712, thereby forming a virtual EDL segment 722. The entirety of the raw EDL segment 712 is used, as depicted by dashed lines 718 and 720, to form the virtual EDL segment 722. However, since as noted the auto editing process is typically non-linear, a last frame 724 in the 081003 649475.doc 081003 649475.doc virtual EDL segment 722 is in fact typically derived from a corresponding frame 724' in the raw EDL segment 712.
Clearly the frame 724' is located a significant time interval before the boundary 706 of the raw EDL segment 712. The disclosed arrangement applies a second template (not shown) from a "current" position 726 in the raw EDL 702, in order to thereby form a second virtual EDL segment 732. This is in sharp contrast to known systems which apply the second template from the terminating boundary 706 of the raw EDL segment 712.
This "roll-back" of the current position to the point 726 provides continuity between the virtual EDL segments 722 and 732, thereby ameliorating, or removing, in some cases, any discontinuity between the virtual EDL segments 722' and 732' at a boundary 752.
The virtual EDL segment 732' is produced using the entirety of the raw EDL segment 714 between the boundaries 706 and 708, and in addition, the second template is applied to that portion of the raw EDL segment 712 between the current position 726 and the boundary 706. This is depicted by dashed lines 728 and 730. In a similar fashion, a third template (not shown) is applied to the third raw EDL segment 716 as well as to the raw EDL segment 714, between a current position 736 and a boundary 708 of the raw EDL segment 716. This derives from the fact that a final frame 734 in the virtual EDL segment 732 corresponds to a frame 734' in the raw EDL 702. The application of the third template forms the virtual EDL segment 742, as depicted by dashed lines 738 and 740. The virtual EDL segments 722, 732 and 742 are concatenated, as depicted by arrows 744, 746 and 748 into a program EDL 750, comprising the virtual EDL segments 722', 732' and 742'.
Fig. 10 shows how the various EDL entities are used in the process described in relation to Figs. 7 and 8. Fig. 10 commences with a step 1002 in which a raw EDL is created from raw video clips selected in the step 306 (see Fig. Thereafter, a testing step 1004 determines whether the "Live Dial" feature is activated. If this is the case, then 081003 649475.doc 081003 649475.doc -26the process 1000 is directed in accordance with a "YES" arrow to a step 1014 that creates a proxy EDL. Returning momentarily to the step 306, it is noted that the user selects raw media from the browser pane 802 of the GUI 800 from within the editor program or another application coupled with the editor application. The editor application treats user selection of media from the browser pane 802 as input to the playlist 816, and thereby automatically creates the raw EDL that is stored in the temporary memory 906. The raw EDL is, as already noted, a list of references to the media having been selected. The references can include, for example, file name and location for each video clip 804, along with a table of associated metadata such as time-code data. The proxy EDL created in the step 1014 is, in the first instance, a copy of the raw EDL.
A subsequent step 1016 determines which template is to be selected, after which a step 1018 applies the aforementioned template to the proxy EDL from a current position, as described in relation to Fig. 9. This application produces a corresponding virtual EDL segment that is appended, in a subsequent step 1020, to the proxy EDL in place of that part of the raw EDL which has been used to produce the virtual EDL segment. This is described in more detail in regard to Fig. 11. Thereafter, a step 1022 plays, on the fly, the virtual EDL segment as appended into the proxy EDL in the display area 810 on the display 914. Thereafter, a testing step 1024 determines whether additional templates are required. If this is the case, then the process 1000 is directed in accordance with a "YES" arrow to a step 1026 which find a "current" frame in the raw EDL which corresponds to the final "frame" in the most recent virtual EDL segment.
This corresponds to the scenario described in relation to Fig. 9.
Although the present description has been directed to establishment of continuity between virtual EDL segments by means of identifying the final frame in a virtual EDL segment, searching for the corresponding frame in the raw EDL, and (c) commencing application of the following template from a current position in the raw EDL 081003 649475.doc 081003 649475 .doc -27determined by the location of the corresponding frame in the raw EDL, this is merely one example of how continuity can be maintained in the present arrangement. Thus, for example, instead of seeking matching frames between a final frame in the virtual EDL segment and a corresponding frame in the raw EDL, other attributes of the virtual EDL segment can be used. For example, if the virtual EDL segment exhibits a cross-fade at the end of the virtual EDL segment, the corresponding cross-fade can be identified in the raw EDL segment which gave rise to the virtual EDL segment in question. This corresponding cross-fade in the raw EDL can then be used to establish the current position for application of the subsequent template. This is merely a further example of how the concept of the "current" position in the raw EDL is used to establish continuity between virtual EDL segments in the production EDL, and it is not intended to limit the utility of the concept thereto.
Returning to Fig. 10, after the step 1026 the process 1000 is directed back to the step 1016 which identifies the subsequent template to be selected. Returning to the testing step 1024, if further templates are not to be incorporated, then the process 100 is directed in accordance with a "NO" arrow to a testing step 1028. This testing step establishes whether further frames are available for template application in the raw EDL. If this is the case, then the process 1000 is directed in accordance with a "YES" arrow back to the step 1022. The step 1022 uses the presently selected template to auto edit the remaining frames in the raw EDL, the step also displaying the auto edited results in the display area 810. If, on the other hand, no further frames are available in the raw EDL then the process 1000 is directed in accordance with a "NO" arrow to a save step 1012. The save step 1012 offers the same save options as previously described, for example, in relation to the step 416.
Returning to the testing step 1004, if the live dial feature is not activated, then the process 1000 is directed in accordance with a "NO" arrow to a step 1006 which 081003 649475.doc 081003 649475 .doc -28creates the proxy EDL in a manner similar to that described in relation to the step 1014.
Thereafter, a step 1008 receives information relating to in/out points for a set of successive templates to be applied to corresponding segments of the proxy EDL. This information is stored in the memory 906 for reference by later method steps. A following step 1010 uses the aforementioned stored data to apply the selected templates to the appropriate segments of the proxy EDL, thereby producing the output EDL. The step 1010 also displays the rendered output on the display area 810 in the display 914.
Finally, the process 1000 is directed to the save step 1012. The saved step 1012 produces the program EDL from the output EDL. From a terminology perspective the auto editing process produces an output EDL from the proxy EDL. Once the output EDL is saved, the saved version is thereafter referred to as the program EDL.
Fig. 11 depicts how the proxy EDL is incrementally constructed using virtual EDL segments. The raw EDL 702 from Fig. 9 is initially used as the proxy EDL, and a first template 1102 is applied, as depicted by an arrow 1104, to the first raw EDL segment 712. This produces, as depicted by an arrow 1106, the virtual EDL segment 722. The virtual EDL segment 722 is substituted, in the updated proxy EDL 1116, for that part of the first raw EDL segment 712 up to the current position 726. The current position 726 defines the application point for a second template 1110 as previously described in relation to Fig. 9. A second template 1110 is then applied, as depicted by an arrow 1112, to the second raw EDL segment 714 as well as that part of the first raw EDL segment 712 lying between the current position 726 and the beginning of the raw EDL segment 714.
This application of the second template 1110 forms, as depicted by an arrow 1114, a second virtual EDL segment 732. The second virtual EDL segment 732 is then incorporated into the proxy EDL 1116 in the same manner as described in relation to the virtual EDL segment 722.
081003 649475.doc 081003 649475 .doc -29- Figs. 12A and 12B show how additional raw media can be added to a program EDL. Fig. 12A shows how the raw EDL 702 is processed in accordance with a first template (not shown) to thereby form the program EDL 750, as described in relation to Fig. 9. When an additional clip 1202 is inserted, as depicted by a dashed arrow 1204, at the boundary 708 between the raw EDL segments 714 and 716, then the raw EDL 702 in Fig. 12A is altered by insertion of the new raw EDL 1202 as shown in Fig. 12B.
Fig. 12B shows how the raw EDL 702, when processed by the first template (not shown) results in production of a new program EDL 1210. The program EDL 1210 shows that a virtual EDL segment 1208, flowing from the additional clip 1202 as processed by the first template, has been inserted between the virtual EDL segments 732' and 742'.
When the live dial feature is activated, the user can change templates, in accordance with the steps 312 and 414 for example (see Fig. at points depicted by a location of a scrubber 822 on the playlist summary 816 in the GUI 800 (see Fig. A "current frame" position of the scrubber 822 is maintained in temporary storage in the memory 906, and the frame position is referenced to a "zero" frame in the raw EDL. This allows consistent positioning of the scrubber should the user or the system remove or add input media to the raw EDL.
From an implementation perspective in one arrangement, the disclosed system uses a specified "in" point to look up/define the appropriate position in the raw media EDL 702 at which the desired new clip 1202 is to be added. Thereafter, the new clip 1202 is "ripple edited" into the raw EDL 702 as shown in Fig. 12B, namely existing clips/frames are "slid apart" as required to make room for the new material. This forms the altered raw EDL 702 as shown in Fig. 12B. Thereafter, the appropriate "current" template is identified from the specified program "in" point and the identified template is 081003 649475.doc then applied to the new (added) data set 1202 according to Fig. 12B, in the context of the existing media ie. 712, 714 and 716 in the altered raw EDL 702.
From a users perspective, and having regard to Fig. 1, let us assume that the user has selected a number of clips from the browser pane 802, and has activated the auto edit control button 820. The auto edited production will then commence playing in the viewer area 810. The scrubber 822 will trace across the playlist summary bar 816, thereby indicating the temporal coordinate in the playlist corresponding to the scene presently in the viewer area 810. If the user inserts new material, as depicted in Figs. 12A and 12B, at a point behind (ie. to the left) the current scrubber position, the production showing in the viewer area 810 will be unaffected by the editing operation, since the auto editing process is applied to material lying at the scrubber position, and ahead (ie. to the right hand side) of the scrubber. If, on the other hand, the new material is inserted ahead (ie. to the right hand side) of the scrubber 822, then when the scrubber reaches the new material, the autoedit process will process the new material.
It is thus apparent that the new material 1202 is processed within the context of the identified template as applied to the altered raw EDL 702 in Fig. 12B. The added segment is processed during playback as appropriate, maintaining production continuity.
It is noted that templates have their own inherent continuity, relating for example to such features as scene matte placement and cutting rhythm. The user is not adversely affected by the aforementioned insertion of new material, as processing is only performed when the added material is encountered by the auto edit process, and the process operation for the added material is the same as that for any other material previously incorporated into the raw EDL.
The location of the scrubber 822 is also recorded in temporary storage in the memory 906 according to the current media file name(s) in the case of more than one track of media, such as coupled video and background music tracks, and the associated 081003 649475.doc 081003 649475.doc -31metadata such as time code. The frame count from the first frame allows the scrubber to remain in position should a media clip be removed or added to the playlist (ie. to the raw EDL). The scrubber 822 is positioned automatically when the live dial feature is activated, or alternately, can be manually positioned by the user.
Time lines are made up of individually time coded frames that are typically grouped together in clips according to metadata indicating respective "record-on" and "record-off' states, where this metadata is recorded together with the aforementioned time codes. Alternately, a clip can be defined by an "entity" status, such as a file having a specific extension such as ".avi" or Individual clips, whether formed as a group or by a selection operation are bounded by a first frame and a last frame, these bounding frames being distinct from bounding frames of adjacent clips. Time lines have associated EDLs that store the time code values. Ripple edits are performed with reference to clip time lines, where for example when a clip is removed, succeeding clips move "backwards" to thereby fill in the gap left by removing the clip, and the time line is correspondingly shortened. Similarly, when a clip is added at an "in" point indicated by the scrubber 822 (see Fig. the in point specifies a particular frame, and the succeeding frames are "slid" along the time line to make way for the media to be inserted, thereby lengthening the time line. Programmatically, when clips are added or removed, the disclosed system adjusts the time codes of all clips so that they form a contiguous group.
Returning to Figs. 7 and 8, it is noted that the user can apply a succession of templates to the raw EDL to thereby cover the entire raw EDL. This would elicit a "NO" decision at the step 1028 (see Fig. 10). In this case, the program EDL that is saved in the step 1012 consists of a program EDL comprising a sequence of concatenated virtual EDL segments, each of which is associated with application of a template to a corresponding raw EDL segment. If, on the other hand, the user applies a succession of templates to segments of the raw EDL, but at some point through the raw EDL desists from 081003 649475.doc -32application of any templates whatsoever, then virtual EDL segments will have been produced for only a portion of the proxy EDL. The remainder of the proxy EDL will, in this case, consist of the original raw EDL itself. This residual raw EDL portion of the proxy EDL can be saved if so desired, in the step 1012.
When the live dial feature is not activated, in the step 1004, the scrubber 822 can be manually positioned at particular frames in the raw EDL, thereby designating in/out points. Virtual EDL segments can be inserted at such in and out points. The aforementioned in and out points for template application for any particular virtual EDL segment can be adjusted to extend or reduce the extent of the virtual EDL segment in question within the program EDL. Should no "out" point be selected for a particular template, then the virtual EDL segment produced by application of that template to the raw EDL will extend through to the end of the EDL. It is noted that the program EDL contains less information than the actual production, however it does not include any raw media. The production itself consumes more data storage than the program EDL. The production program can be used to record and store a specific production in a compact data form, however it can also be applied to other sets of raw media.
Industrial Applicability It is apparent from the above that the arrangements described are applicable to the image processing industries.
The foregoing describes only some embodiments of the present invention, and modifications and/or changes can be made thereto without departing from the scope and spirit of the invention, the embodiments being illustrative and not restrictive. Thus, for example, although the description is directed to an arrangement for incremental construction of the program EDL by successive incorporation of virtual EDL segments into a proxy EDL, other approaches fall within the inventive concept. For example, virtual EDL segments could be collected and concatenated without reference to the proxy 081003 649475.doc 081003 649475 .doc -33- EDL. The virtual EDL segments would need to reference the raw EDL time codes in order to correctly map to the users point "in" point selection.
In the context of this specification, the word "comprising" means "including principally but not necessarily solely" or "having" or "including" and not "consisting only of'. Variations of the word comprising, such as "comprise" and "comprises" have corresponding meanings.
081003 649475.doc 081003 649475.doc

Claims (4)

1. A method of editing a set of video clips, the method comprising the steps of: constructing a raw EDL referencing the set of video clips, the raw EDL representing a raw video production; segmenting the raw EDL into a plurality of raw EDL segments each (i) representing a corresponding raw video production segment, and (ii) having a commencing and a terminating raw EDL segment boundary; applying an autoedit template to all video clips referenced by a first raw EDL segment to thereby form a first autoedited video production segment and (ii) an associated first virtual EDL segment having a commencing and a terminating boundary; determining a continuity attribute in the first autoedited video production segment, the continuity attribute having a reference in a vicinity of the terminating boundary of the first virtual EDL segment; identifying a corresponding continuity attribute in the first raw video production segment, the corresponding continuity attribute having a reference in the first raw EDL segment; and applying a succeeding autoedit template to all video clips referenced by both the portion of the first raw EDL segment from a vicinity of the reference to the corresponding continuity attribute to the terminating boundary of the first raw EDL segment, and (ii) a succeeding raw EDL segment, to thereby form (iii) a succeeding autoedited video production segment and (iv) an associated succeeding virtual EDL segment.
2. A method according to claim 1, wherein: 081003
649475.doc 081003 649475.doc \0 in the step the continuity attribute is one of the last video frame in the O C autoedited video production segment, and a frame preceding said last video frame by M Sframes, where M is an integer; in the step the corresponding continuity attribute is the video frame in the raw video production segment from which the video frame in the autoedited video production 00 00 segment is derived; and I in the step f) the vicinity of the reference in the first raw EDL segment relates to Sa reference to a frame that is N frame positions prior to said video frame from which the video frame in the autoedited video production segment is derived, where N is an integer.
3. A method according to claim 1, wherein the step is followed by further steps of: iterating steps to to form a series of said virtual EDL segments; and collecting the series of said virtual EDL segments into a program EDL.
4. A method according to claim 1, wherein the step is followed by further steps of: collecting said virtual EDL segments into a proxy EDL; and repeating steps to and until a stop condition is met. A method according to claim 4, wherein the stop condition is one of: autoedit templates have been applied to all video frames referenced in the raw EDL; and no further succeeding autoedit templates are available in the step 6. An apparatus for editing a set of video clips, the apparatus comprising: 081003 649475 -36- means for constructing a raw EDL referencing the set of video clips, the raw EDL representing a raw video production; means for segmenting the raw EDL into a plurality of raw EDL segments each representing a corresponding raw video production segment, and (ii) having a commencing and a terminating raw EDL segment boundary; means for applying an autoedit template to all video clips referenced by a first raw EDL segment to thereby form a first autoedited video production segment and (ii) an associated first virtual EDL segment having a commencing and a terminating boundary; means for determining a continuity attribute in the first autoedited video production segment, the continuity attribute having a reference in a vicinity of the terminating boundary of the first virtual EDL segment; means for identifying a corresponding continuity attribute in the first raw video production segment, the corresponding continuity attribute having a reference in the first raw EDL segment; and means for applying a succeeding autoedit template to all video clips referenced by both the portion of the first raw EDL segment from a vicinity of the reference to the corresponding continuity attribute to the terminating boundary of the first raw EDL segment, and (ii) a succeeding raw EDL segment, to thereby form (iii) a succeeding autoedited video production segment and (iv) an associated succeeding virtual EDL segment. 7. An apparatus for editing video clips comprising: a memory for storing a program; and a processor for executing the program, said program comprising: 081003 649475.doc -37- code for constructing a raw EDL referencing the set of video clips, the raw EDL representing a raw video production; code for segmenting the raw EDL into a plurality of raw EDL segments each representing a corresponding raw video production segment, and (ii) having a commencing and a terminating raw EDL segment boundary; code for applying an autoedit template to all video clips referenced by a first raw EDL segment to thereby form a first autoedited video production segment and (ii) an associated first virtual EDL segment having a commencing and a terminating boundary; code for determining a continuity attribute in the first autoedited video production segment, the continuity attribute having a reference in a vicinity of the terminating boundary of the first virtual EDL segment; code for identifying a corresponding continuity attribute in the first raw video production segment, the corresponding continuity attribute having a reference in the first raw EDL segment; and code for applying a succeeding autoedit template to all video clips referenced by both the portion of the first raw EDL segment from a vicinity of the reference to the corresponding continuity attribute to the terminating boundary of the first raw EDL segment, and (ii) a succeeding raw EDL segment, to thereby form (iii) a succeeding autoedited video production segment and (iv) an associated succeeding virtual EDL segment. 8. A computer program product including a computer readable medium having recorded thereon a computer program for directing a processor to execute a method for editing video clips said program comprising: 081003 649475.doc -38- code for constructing a raw EDL referencing the set of video clips, the raw EDL representing a raw video production; code for segmenting the raw EDL into a plurality of raw EDL segments each representing a corresponding raw video production segment, and (ii) having a commencing and a terminating raw EDL segment boundary; code for applying an autoedit template to all video clips referenced by a first raw EDL segment to thereby form a first autoedited video production segment and (ii) an associated first virtual EDL segment having a commencing and a terminating boundary; code for determining a continuity attribute in the first autoedited video production segment, the continuity attribute having a reference in a vicinity of the terminating boundary of the first virtual EDL segment; code for identifying a corresponding continuity attribute in the first raw video production segment, the corresponding continuity attribute having a reference in the first raw EDL segment; and code for applying a succeeding autoedit template to all video clips referenced by both the portion of the first raw EDL segment from a vicinity of the reference to the corresponding continuity attribute to the terminating boundary of the first raw EDL segment, and (ii) a succeeding raw EDL segment, to thereby form (iii) a succeeding autoedited video production segment and (iv) an associated succeeding virtual EDL segment. 9. A computer program for directing a processor to execute a method for editing video clips said program comprising: code for constructing a raw EDL referencing the set of video clips, the raw EDL representing a raw video production; 081003 649475.doc 081003 649475.doc -39- code for segmenting the raw EDL into a plurality of raw EDL segments each representing a corresponding raw video production segment, and (ii) having a commencing and a terminating raw EDL segment boundary; code for applying an autoedit template to all video clips referenced by a first raw EDL segment to thereby form a first autoedited video production segment and (ii) an associated first virtual EDL segment having a commencing and a terminating boundary; code for determining a continuity attribute in the first autoedited video production segment, the continuity attribute having a reference in a vicinity of the terminating boundary of the first virtual EDL segment; code for identifying a corresponding continuity attribute in the first raw video production segment, the corresponding continuity attribute having a reference in the first raw EDL segment; and code for applying a succeeding autoedit template to all video clips referenced by both the portion of the first raw EDL segment from a vicinity of the reference to the corresponding continuity attribute to the terminating boundary of the first raw EDL segment, and (ii) a succeeding raw EDL segment, to thereby form (iii) a succeeding autoedited video production segment and (iv) an associated succeeding virtual EDL segment. A video production formed by a method of editing video clips, the method comprising the steps of: constructing a raw EDL referencing the set of video clips, the raw EDL representing a raw video production; 081003 649475.doc 081003 649475 .doc segmenting the raw EDL into a plurality of raw EDL segments each (i) representing a corresponding raw video production segment, and (ii) having a commencing and a terminating raw EDL segment boundary; applying an autoedit template to all video clips referenced by a first raw EDL segment to thereby form a first autoedited video production segment and (ii) an associated first virtual EDL segment having a commencing and a terminating boundary; determining a continuity attribute in the first autoedited video production segment, the continuity attribute having a reference in a vicinity of the terminating boundary of the first virtual EDL segment; identifying a corresponding continuity attribute in the first raw video production segment, the corresponding continuity attribute having a reference in the first raw EDL segment; applying a succeeding autoedit template to all video clips referenced by both the portion of the first raw EDL segment from a vicinity of the reference to the corresponding continuity attribute to the terminating boundary of the first raw EDL segment, and (ii) a succeeding raw EDL segment, to thereby form (iii) a succeeding autoedited video production segment and (iv) an associated succeeding virtual EDL segment; and concatenating said first autoedited video production segment with said succeeding autoedited video production segment to form said video production. 11. A method of processing a raw EDL to thereby form an output EDL, the method comprising the steps of: applying an auto-edit template to a raw video production segment corresponding to a segment of the raw EDL to thereby form an autoedited video production segment and a corresponding virtual EDL segment; 081003 649475.doc 081003 649475.doc -41- inserting the virtual EDL segment into the raw EDL in place of the corresponding raw EDL segment; successively repeating the applying and inserting steps for successive auto-edit templates and successive segments of the raw EDL, wherein upon conclusion of the successively repeating steps, the processed raw EDL is the output EDL. 12. A method of processing a raw EDL to thereby form an output EDL, the method comprising the steps of: applying an auto-edit template to a raw video production segment corresponding to a segment of the raw EDL to thereby form an autoedited video production segment and a corresponding virtual EDL segment; inserting the virtual EDL segment into the raw EDL in place of at least a part of the corresponding raw EDL segment; successively repeating the applying and inserting steps for successive auto-edit templates and successive corresponding segments of the raw EDL; wherein each successive corresponding segment of the raw EDL to which the corresponding successive auto-edit template is applied includes that part of the preceding corresponding raw EDL segment that remained after the associated preceding insertion step; and wherein upon conclusion of the successively repeating steps, the processed raw EDL is the output EDL. 13. An apparatus for processing a raw EDL to thereby form an output EDL, the apparatus comprising: 081003 649475.doc 081003 649475 .doc -42- means for applying an auto-edit template to a raw video production segment corresponding to a segment of the raw EDL to thereby form an autoedited video production segment and a corresponding virtual EDL segment; means for inserting the virtual EDL segment into the raw EDL in place of at least a part of the corresponding raw EDL segment; means for successively repeating the applying and inserting steps for successive auto-edit templates and successive corresponding segments of the raw EDL; wherein each successive corresponding segment of the raw EDL to which the corresponding successive auto-edit template is applied includes that part of the preceding corresponding segment that remained after the associated preceding insertion step; and wherein upon conclusion of the successively repeating steps, the processed raw EDL is the output EDL. 14. An apparatus for processing a raw EDL to thereby form an output EDL, the apparatus comprising: a memory for storing a program; and a processor for executing the program, said program comprising: code for applying an auto-edit template to a raw video production segment corresponding to a segment of the raw EDL to thereby form an autoedited video production segment and a corresponding virtual EDL segment; code for inserting the virtual EDL segment into the raw EDL in place of at least a part of the corresponding raw EDL segment; code for successively repeating the applying and inserting steps for successive auto-edit templates and successive corresponding segments of the raw EDL; wherein 081003 649475.doc -43- each successive corresponding segment of the raw EDL to which the corresponding successive auto-edit template is applied includes that part of the preceding corresponding segment that remained after the associated preceding insertion step; and wherein upon conclusion of the successively repeating steps, the processed raw EDL is the output EDL. A computer program for directing a computer to execute a method for processing a raw EDL to thereby form an output EDL, the program comprising: code for applying an auto-edit template to a raw video production segment corresponding to a segment of the raw EDL to thereby form an autoedited video production segment and a corresponding virtual EDL segment; code for inserting the virtual EDL segment into the raw EDL in place of at least a part of the corresponding raw EDL segment; code for successively repeating the applying and inserting steps for successive auto-edit templates and successive corresponding segments of the raw EDL; wherein each successive corresponding segment of the raw EDL to which the corresponding successive auto-edit template is applied includes that part of the preceding corresponding segment that remained after the associated preceding insertion step; and wherein upon conclusion of the successively repeating steps, the processed raw EDL is the output EDL. 16. A computer program product including a computer readable medium having recorded thereon a computer program for directing a computer to execute a method for processing a raw EDL to thereby form an output EDL, the program comprising: 081003 649475.doc -44- code for applying an auto-edit template to a raw video production segment corresponding to a segment of the raw EDL to thereby form an autoedited video production segment and a corresponding virtual EDL segment; code for inserting the virtual EDL segment into the raw EDL in place of at least a part of the corresponding raw EDL segment; code for successively repeating the applying and inserting steps for successive auto-edit templates and successive corresponding segments of the raw EDL; wherein each successive corresponding segment of the raw EDL to which the corresponding successive auto-edit template is applied includes that part of the preceding corresponding segment that remained after the associated preceding insertion step; and wherein upon conclusion of the successively repeating steps, the processed raw EDL is the output EDL. 17. A method of editing video clips, substantially as described herein with reference to accompanying Fig. Nos. 1 and 6-12. 18. An apparatus for editing video clips substantially as described herein with reference to accompanying Fig. Nos. 1 and 6-12. 19. A computer program substantially as described herein with reference to accompanying Fig. Nos. 1 and 6-12. 081003 649475.doc 081003 649475 .doc A video production substantially as described herein with reference to accompanying Fig. Nos. 1 and 6-12. DATED this Eight Day of October, 2003 CANON KABUSHIKI KAISHA Patent Attorneys for the Applicant SPRUSON&FERGUSON 081003 649475.doc
AU2003252878A 2002-10-08 2003-10-08 Auto-editing Video Material Using Multiple Templates Ceased AU2003252878B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2003252878A AU2003252878B2 (en) 2002-10-08 2003-10-08 Auto-editing Video Material Using Multiple Templates

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
AU2002951914 2002-10-08
AU2002951914A AU2002951914A0 (en) 2002-10-08 2002-10-08 Auto-editing video material using multiple templates
AU2003252878A AU2003252878B2 (en) 2002-10-08 2003-10-08 Auto-editing Video Material Using Multiple Templates

Publications (2)

Publication Number Publication Date
AU2003252878A1 AU2003252878A1 (en) 2004-04-22
AU2003252878B2 true AU2003252878B2 (en) 2006-02-02

Family

ID=34275715

Family Applications (1)

Application Number Title Priority Date Filing Date
AU2003252878A Ceased AU2003252878B2 (en) 2002-10-08 2003-10-08 Auto-editing Video Material Using Multiple Templates

Country Status (1)

Country Link
AU (1) AU2003252878B2 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6016380A (en) * 1992-09-24 2000-01-18 Avid Technology, Inc. Template-based edit decision list management system
WO2000039997A2 (en) * 1998-12-30 2000-07-06 Earthnoise.Com Inc. Creating and editing digital video movies
EP1083567A2 (en) * 1999-09-08 2001-03-14 Sony United Kingdom Limited System and method for editing source metadata to produce an edited metadata sequence
WO2002052565A1 (en) * 2000-12-22 2002-07-04 Muvee Technologies Pte Ltd System and method for media production
WO2002059799A1 (en) * 2001-01-25 2002-08-01 Quicktakes Pty Ltd A multimedia system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6016380A (en) * 1992-09-24 2000-01-18 Avid Technology, Inc. Template-based edit decision list management system
WO2000039997A2 (en) * 1998-12-30 2000-07-06 Earthnoise.Com Inc. Creating and editing digital video movies
EP1083567A2 (en) * 1999-09-08 2001-03-14 Sony United Kingdom Limited System and method for editing source metadata to produce an edited metadata sequence
WO2002052565A1 (en) * 2000-12-22 2002-07-04 Muvee Technologies Pte Ltd System and method for media production
WO2002059799A1 (en) * 2001-01-25 2002-08-01 Quicktakes Pty Ltd A multimedia system

Also Published As

Publication number Publication date
AU2003252878A1 (en) 2004-04-22

Similar Documents

Publication Publication Date Title
US6954894B1 (en) Method and apparatus for multimedia editing
JP4514928B2 (en) Editing apparatus and method
US7836389B2 (en) Editing system for audiovisual works and corresponding text for television news
US7359617B2 (en) Dual mode timeline interface
US7352952B2 (en) System and method for improved video editing
EP1666967B1 (en) System and method of creating an emotional controlled soundtrack
US8006186B2 (en) System and method for media production
CN101300567B (en) Method for media sharing and authoring on the web
US8422852B2 (en) Automated story generation
US6628303B1 (en) Graphical user interface for a motion video planning and editing system for a computer
US20070147654A1 (en) System and method for translating text to images
US20060204214A1 (en) Picture line audio augmentation
US20120177345A1 (en) Automated Video Creation Techniques
US20060010162A1 (en) Media article composition
US20100118034A1 (en) Apparatus and method of authoring animation through storyboard
WO2010073695A1 (en) Edited information provision device, edited information provision method, program, and storage medium
US20100057232A1 (en) Audio signal generator, method of generating an audio signal, and computer program for generating an audio signal
AU2003252878B2 (en) Auto-editing Video Material Using Multiple Templates
JP3942471B2 (en) Data editing method, data editing device, data recording device, and recording medium
Casares et al. Simplifying video editing with SILVER
AU744386B2 (en) Method and apparatus for multimedia editing
AU745436B2 (en) Automated visual image editing system
AU2003201927B2 (en) Dual Mode Timeline Interface
Costello Non-Linear Editing
AU2003220747B2 (en) Multimedia Template Representation

Legal Events

Date Code Title Description
FGA Letters patent sealed or granted (standard patent)
MK14 Patent ceased section 143(a) (annual fees not paid) or expired