Tracking the validity of cache frames in digital movie editing
First Claim
Patent Images
1. A computer program product, tangibly stored on a computer-readable medium, for calculating the validity of a cached frame of a movie in a movie compositing system, comprising instructions operable to cause a programmable processor to:
- maintain a global editing timestamp that is updated with each editing operation performed by the system, the global editing timestamp representing an edit sequence position in a sequence of edits made to the movie;
establish an interval list for each node in a compositing tree defining a movie, each node having a timeline that maps to a master timeline of the movie, an interval list for a node including, for each interval in the node'"'"'s timeline, a single editing timestamp;
update the interval list for a node when the node is edited; and
use the interval list for a first node to evaluate the validity of a cached frame for a particular interval of the master timeline, the cached frame having been produced by compositing the first node in the compositing tree, the evaluation being performed by (a) comparing (i) an editing timestamp associated with the cached frame with (ii) the editing timestamps of intervals in the interval list that map to at least a portion of the interval of the master timeline, and (b) treating the cached frame as invalid if any of the intervals'"'"' editing timestamps is later than the editing timestamp associated with the cached frame.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods and apparatus, including computer program products, implementing and using techniques for determining validity of cached frames of a compositing hierarchy as a composition tree of a digital video composition is edited. The techniques use interval lists associated with nodes in a compositing tree to determine which cached frames of a composition hierarchy are guaranteed to be valid in the face of arbitrary edits to the hierarchy.
25 Citations
50 Claims
-
1. A computer program product, tangibly stored on a computer-readable medium, for calculating the validity of a cached frame of a movie in a movie compositing system, comprising instructions operable to cause a programmable processor to:
-
maintain a global editing timestamp that is updated with each editing operation performed by the system, the global editing timestamp representing an edit sequence position in a sequence of edits made to the movie; establish an interval list for each node in a compositing tree defining a movie, each node having a timeline that maps to a master timeline of the movie, an interval list for a node including, for each interval in the node'"'"'s timeline, a single editing timestamp; update the interval list for a node when the node is edited; and use the interval list for a first node to evaluate the validity of a cached frame for a particular interval of the master timeline, the cached frame having been produced by compositing the first node in the compositing tree, the evaluation being performed by (a) comparing (i) an editing timestamp associated with the cached frame with (ii) the editing timestamps of intervals in the interval list that map to at least a portion of the interval of the master timeline, and (b) treating the cached frame as invalid if any of the intervals'"'"' editing timestamps is later than the editing timestamp associated with the cached frame. - View Dependent Claims (2, 3, 4)
-
-
5. A computer program product, tangibly stored on a machine-readable medium, for displaying a frame of a movie composition, the product comprising instructions operable to cause a programmable processor to:
-
associate edit sequence information with an element of the movie composition, the edit sequence information specifying, for an interval of the element'"'"'s timeline, an edit sequence position representing the position in a sequence of edits made to the movie composition of a most recent edit made that affects the element during the interval, the interval being a portion of the timeline; when caching a frame, associate with the cached frame an edit sequence position that represents a state of editing of the movie composition; and when displaying the frame, compare the edit sequence position associated with the cached frame with edit sequence information associated with the element. - View Dependent Claims (6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27)
-
-
28. A method for displaying a frame of a movie composition, the method comprising:
-
associating edit sequence information with an element of the movie composition, the edit sequence information specifying, for an interval of the element'"'"'s timeline, an edit sequence position representing the position in a sequence of edits made to the movie composition of a most recent edit made that affects the element during the interval, the interval being a portion of the timeline; when caching a frame, associating with the cached frame an edit sequence position that represents a state of editing of the movie composition; and when displaying the frame, comparing the edit sequence position associated with the cached frame with edit sequence information associated with the element. - View Dependent Claims (29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50)
-
Specification