Blackmagic Resolve Scripting

Resolve Scripting

DaVinci Resolve 15 public beta added a powerful new feature to its ever expanding toolset. Resolve merged with Fusion VFX software and inherited the Fusion’s scripting capability.

In addition to the existing FuScript, Resolve now has an API that opens up the the color grading application to third party software integration and pipeline automation.

The documentation lists a whole range of methods for creating and structuring projects, importing media, writing and reading metadata, applying color presets, and setting up and rendering timelines.

The API is accessible via Lua or Python. Users can use the built-in console or the native OS command line console to execute commands. But the true power comes from using external scripts or applications to automate tasks in Resolve.

This sample Python script shows the simplicity of the API. It retrieves the currently loaded project’s name once an hour and calls a user supplied presentation function to display the name.

#! /usr/bin/env python

import time

# Import the API module and
# create resolve instance

import DaVinciResolveScript as drs
resolve = drs.scriptapp('Resolve')

projectManager = resolve.GetProjectManager()
project = projectManager.GetCurrentProject()

def presentation(p)
# Supply your own function here
    print 'The current Resolve project name:', p

while True:
   projectName = project.GetName()
   presentation(projectName)
  time.sleep(3600)

Download other sample Resolve Python scripts.