< Previous | Contents | Next >
How Cached Media Is Organized
The cache mechanism in DaVinci Resolve actually comprises three independently managed media caches that interact with one another. This is done to keep you working quickly by ensuring that changes you make to your timeline don’t require a grade to be re-cached, and that changes you make to a grade don’t require the timeline to be re-cached. The three levels of caching are:
First, Fusion Output Caching
Formerly called the “Source Cache” in previous versions of DaVinci Resolve. When enabled by turning on the Smart Cache, by individually turning on Render Cache Fusion Output for a particular clip, or by enabling the automatic caching of clips with Fusion Effects applied in the Project Settings, this caches the portion of each source media file that appears in the Timeline in its pre-graded state for clips that have the following characteristics:
— Clips in media formats DaVinci Resolve considers to be processor-intensive to decode, such as H.264, HEVC, and various raw camera formats
— Clips with Fusion Effects that have been added in the Fusion page
Effectively, this is a “pre-Color page” cache. By caching all processor-intensive clips in the Timeline, you’ll experience vastly improved trimming and grading performance. However, you also have the option to turn the Fusion Output Cache on or off for individual clips, or for multiple selected clips all at once. This lets you switch between using the native source of each clip with live effects, or the cached clip in the cache format you’ve chosen.
The advantage of the Fusion Output Cache over Optimized Media is that you only cache clips that are used in a timeline, which is ideal for finishing workflows. However, the Smart and User caches aren’t useful for speeding up work done with source media in the Media Pool and Source Viewer when you’re at the very beginning of an edit; that’s what Optimized Media is for (as described in the previous section).
If Optimized media exists for a given clip, and “Use Optimized Media if available” is turned on, then Optimized media will be used instead of the Fusion Output Cache if there are no Speed effects or Fusion Effects applied to a particular clip.
Second, Node Caching
The Node Cache, which is a separate level of caching from the Fusion Output Cache, can be triggered in several different ways, corresponding to the three different purposes it serves.
— When enabled by turning on the Smart Cache, nodes with processor-intensive operations (along with all nodes appearing upstream in that grade’s node tree) are automatically cached, meaning that, for example, if Nodes 1 and 2 are cached, you can continue adjusting Nodes 3, 4, and 5
to your heart’s content without needing to re-render your grade to the cache. Operations that trigger caching include Noise Reduction, Motion Blur, and any Resolve FX or OFX plugin that’s added to a node. If you’ve added a Resolve FX to a node that’s capable of playing in real time but that node is being flagged for caching anyway, you can force caching off for that node by right- clicking it and choosing Node Cache > Off from the contextual menu.
— You can manually force any node to cache if it and its upstream nodes are compromising performance but somehow not being automatically flagged, by right-clicking a node and choosing Node Cache > On from the contextual menu.
— You can also turn on the “Render Cache Color Output” option for a clip in the Timeline of either the Edit or Color pages. This forces that clip’s entire grade to be cached via the Node Cache, all the way through the Node tree’s output. This can result in higher real time performance in the Edit page, at the expense of needing to completely re-cache that clip whenever you adjust any part of its grade.
— If you apply Resolve FX or OFX filters to clips in the Edit page, these will also be cached via the Node Cache. You can choose which OFX to cache via the Render Cache OFX Filter submenu in the contextual menu for clips in the Timeline. This is useful when you have a combination of realtime and non-realtime filters applied to a clip; caching the non-realtime filters only enables you to continue adjusting realtime filters without the need to re-cache. However, be aware that making changes to a filter being cached in the Edit page timeline will force that clip’s grade to be re- cached in the Color page, and vice versa.
If multiple nodes are flagged for caching in a particular node tree, then each node will be individually cached. That way, you can turn a cached node off and on to get a before-and-after look without needing to re-cache the entire node tree. If a clip is part of a group in the Color page, you can enable a Group Cache in the Group Pre-Clip and Group Post-Clip Node Editor modes, which cache these parts of a group grade as part of the Node Cache.
Third, the Sequence Cache
The Sequence Cache is a separate cache for effects that are specifically applied within the Timeline in the Edit page. These include transitions, opacity adjustments, adjustment layers and composite mode superimpositions, as well as clips with Speed or Retime effects. Sequence Cache effects can be auto- cached in both the Smart and User caches.