Davinci Resolve Scripting APIことはじめ
windowsでやりました。(1/14 末尾に追記。macでもやりました。)
資料
- C:\ProgramData\Blackmagic Design\DaVinci Resolve\Support\Developer\Scripting\README.txt
ここにREADMEファイルがあります。Changelogとしての有志の過去ログもあります。
見やすくしたページはこちらになります。
ここに沿ってやっていきます。
環境変数
RESOLVE_SCRIPT_API="%PROGRAMDATA%\Blackmagic Design\DaVinci Resolve\Support\Developer\Scripting" RESOLVE_SCRIPT_LIB="C:\Program Files\Blackmagic Design\DaVinci Resolve\fusionscript.dll" PYTHONPATH="%PYTHONPATH%;%RESOLVE_SCRIPT_API%\Modules"
Windowsの環境変数はこうです。ただPYTHONPATHが%RESOLVE_SCRIPT_API%をうまく解決しなかったので
PYTHONPATH=C:\ProgramData\Blackmagic Design\DaVinci Resolve\Support\Developer\Scripting\Modules
としました。(環境変数のロード順が問題になってると思うんだけど、Windows11で環境変数の順番変えるのどうやるんだろう?)
実行環境
ファイルを
- C:\Users\ユーザー\AppData\Roaming\Blackmagic Design\DaVinci Resolve\Support\Fusion\Scripts\Utility\test.py
に配置すると以下の画像の位置に配置されます。「test」を選択するとスクリプトが実行されます。

また、「Console」を選択すると以下のコンソール画面が表示されます。

scriptからprintなどしてデバッグしたいときはここにprintの結果やエラーログが出ます。 上は
print("Hello Davinci.")
とした結果です。
スクリプトの書き方
ドキュメントには
#!/usr/bin/env python import DaVinciResolveScript as dvr_script resolve = dvr_script.scriptapp("Resolve") fusion = resolve.Fusion() projectManager = resolve.GetProjectManager() projectManager.CreateProject("Hello World")
と書かれているが、dvr_script.scriptapp("Resolve")がどうもオブジェクトを取得できていない様子。
仕方ないので
- C:\ProgramData\Blackmagic Design\DaVinci Resolve\Support\Developer\Scripting\Examples\python_get_resolve.py
を取ってきてtest.pyと同じ場所に置き、以下のようにしました。
from python_get_resolve import GetResolve resolve = app.GetResolve() resolve.OpenPage("Edit") # Editモードを選択
ここから始められると思います。
外部から実行する
Claude Codeのようなコーディングエージェントが外部からスクリプトを実行するにはどうすればよいか。
マニュアルには「External scripting using」の設定をすればできる、とあるが、この設定はDavinci Resolve Studio(つまり有料版)でないと表示されないようだ。

大規模なものを作るときは購入を考えよう。
Macでもやりました
基本的には上記ドキュメントの通りなんですが、MacOS Tahoe 26.2 の環境でDavinci Resolve 19だとドキュメント記載の場所にBlackmagic Designのフォルダが見つかりませんでした。仕方ないので現時点最新のDavinci Resolve20を入れるとフォルダが出てきたのでこれで進めることにしました。
また、所定の場所にスクリプトをおいてもDavinciが認識してくれませんでした。それについては以下で解決しました。