mcpField
D
davinci-resolve-fusion

davinci-resolve-fusion

github.com/tmoroneyクリエイティブ・メディア4.5k57 回インストール3 日前に更新
リポジトリ

davinci-resolve-fusion について

DaVinci Resolve の Lua・Python 自動化スクリプト向けリファレンスと補助スクリプトを備え、Fusion のコンポジション、マクロ、アニメーションの作成・編集も扱います。Resolve のワークフローを構築する人向けに、信頼性の高い API 資料と古い Fusion 資料を区別しています。

主な機能

  1. 01Resolve スクリプティング API リファレンス
  2. 02Lua・Python の例
  3. 03Fusion マクロ作成ガイド
  4. 04アニメーション・テンプレート資料
  5. 05API・マニュアル更新スクリプト

活用シーン

  1. 01タイムライン、メディアプール、レンダリングの自動化
  2. 02Fusion マクロの作成・編集
  3. 03Fusion アニメーションコンポジションの制作
  4. 04再利用可能なトランジションやタイトルの作成

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/tmoroney/auto-subs --skill davinci-resolve-fusion

インストール後、Claude Code で/davinci-resolve-fusionを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
animation.md
references/fusion-manual/
00-index.md
01-introduction.md
02-scripting-languages.md
03-scripting-and-debugging.md
04-object-model.md
05-gui-and-askuser.md
06-class-hierarchy.md
references/fusion-manual/classes/
bezierspline.md
binclip.md
binitem.md
binmanager.md
binstill.md
childframe.md
childgroup.md
composition.md
floatviewframe.md
flowview.md
fontlist.md
fuframe.md
fusion.md
fuview.md
gl3dviewer.md
glimageviewer.md
glpreview.md
glview.md
glviewer.md
gradient.md
graphview.md
hotkeymanager.md

詳細

DaVinci Resolve & Fusion

このスキルでは、DaVinci Resolve の自動化スクリプト(Lua/Python)の作成と、Fusion コンポジション、マクロ(.setting ファイル)、アニメーションの作成・編集を支援します。新しいものを作成できるよう、リファレンス一式とヘルパースクリプトが含まれています。既存のものを変更するだけではありません。

信頼できる情報源 — まずこちらをお読みください

情報源に食い違いがある場合は、次の順に信頼してください。

  1. references/resolve-api.txt — 公式の Resolve スクリプティング用 README.txt を、プレーンテキストのまま保存したものです(等幅フォントで列が揃えられており、Markdown として表示すると読みにくくなります)。これは DaVinci Resolve API に関する信頼できる情報源です。これはスナップショットです。Resolve がインストールされている場合は、…/Blackmagic Design/DaVinci Resolve/Developer/Scripting/README.txt にある最新ファイルがこのスナップショットに優先します。Resolve のアップデート後、scripts/update-resolve-api.sh(macOS/Linux)または scripts/update-resolve-api.bat(Windows)を使って同期し直してください。
  2. テスト済みの動作するコード — 使用方法の詳細(正確なパラメーターの形式、戻り値、順序)については、ドキュメントよりも、正しく実行できる実際のスクリプトが優先されます。
  3. references/fusion-manual/ — Fusion 8 のスクリプティングマニュアルです。オブジェクトモデル、スプライン、ツール、GUI など、Resolve API のドキュメントに記載されていない Fusion 固有の概念を調べる際に使用してください。PDF から変換された古いスナップショットであり、古くなっていたり、不正確だったりする可能性があるため、両方で説明されている内容については(1)と(2)を優先してください。

各マニュアルファイルには、この内容を繰り返すバナーが付いているため、ファイルを1つだけ開いた場合でも、注意事項を確認できます。

内容

references/
  resolve-api.txt           # Resolve scripting API — SOURCE OF TRUTH (plain text; view monospace)
  animation.md              # Fusion animation: keyframes, handles, easing, connecting props
  macro-authoring.md        # Building .setting macros, exposing/hiding controls
  fusion-templates.md       # Transitions, generators, titles, effects as macros
  fusion-manual/
    00-index.md             # START HERE for the manual — map of every section & class
    01-introduction.md … 06-class-hierarchy.md
    classes/<ClassName>.md  # one file per Fusion class (46 of them)
scripts/
  run-script.sh / .bat          # run a script via fuscript (Studio only)
  update-resolve-api.sh / .bat  # re-sync resolve-api.txt from your Resolve install
  split-fusion-manual.py        # regenerate fusion-manual/ from a converted manual PDF

使用方法

Resolve 自動化スクリプトの作成(タイムライン、メディアプール、レンダリング、プロジェクト管理)の場合は、references/resolve-api.txt から始めてください。動作する例については、以下の「スクリプト例」を参照してください。実際の実行方法については、以下の「スクリプトの実行」を参照してください。

スクリプト例

DaVinci Resolve には、代表的なスクリプト例が付属しています。Blackmagic のコードを再配布しないよう、このスキルには含めていません。代わりに、ローカルインストールの Scripting フォルダー内にある Examples サブフォルダーから参照してください。

  • macOS: /Library/Application Support/Blackmagic Design/DaVinci Resolve/Developer/Scripting/Examples
  • Windows: %PROGRAMDATA%\Blackmagic Design\DaVinci Resolve\Support\Developer\Scripting\Examples
  • Linux: /opt/resolve/Developer/Scripting/Examples(または /home/resolve/...)

Resolve API の実際に動作する使用例(単なる説明用の例ではありません)について、最も信頼できるリファレンスは AutoSubs プロジェクトの AutoSubs Lua サーバー autosubs_core.lua です。タイムライン、メディアプール、レンダリング、および Fusion マクロの操作に使用される API が示されています。

スクリプトの実行

Resolve のエディションに応じて、スクリプトを実行する方法は 2 つあります。

メニューを使う方法(無料版と Studio のすべてのエディションで動作します)。 .lua/.py ファイルを Resolve の Fusion Scripts フォルダーに配置し、Resolve で上部メニューから Workspace → Scripts を選択して、 一覧からファイルを選びます。すべてのページに表示するには、Utility サブフォルダーに配置してください。 Scripts フォルダーの場所(references/resolve-api.txt より)は次のとおりです。

  • macOS: ~/Library/Application Support/Blackmagic Design/DaVinci Resolve/Fusion/Scripts (すべてのユーザー向けには /Library/...)
  • Windows: %APPDATA%\Roaming\Blackmagic Design\DaVinci Resolve\Support\Fusion\Scripts (すべてのユーザー向けには %PROGRAMDATA%\...)
  • Linux: $HOME/.local/share/DaVinciResolve/Fusion/Scripts (または /opt/resolve/Fusion/Scripts)

外部ランナー(DaVinci Resolve Studio のみ)。 scripts/run-script.sh <file.lua> (macOS/Linux)または scripts/run-script.bat(Windows)は Resolve の fuscript を直接呼び出すため、 メニューを使わずにどこからでもスクリプトを実行できます。特に AI エージェントにとって便利な方法ですが、 外部からの/fuscript によるスクリプティング API の呼び出しには Resolve Studio が必要です。 無料版では動作しません。上記のメニューを使う方法はどちらのエディションでも動作するため、 確実な代替手段です。

Fusion マクロ(.setting)の作成または編集:2 層のコントロールモデル(UserControls と公開済み InstanceInputs)と よくある落とし穴については、references/macro-authoring.md をお読みください。ツール/クラスの詳細については、 references/fusion-manual/00-index.md を開き、該当するクラスのファイルに進んでください。

アニメーション(キーフレーム、イージング、文字/単語エフェクト):references/animation.md をお読みください。 最も大きな落とし穴は、SetKeyFrames() のハンドル座標は相対座標ですが、 .setting ファイルでは絶対座標で保存されることです。

再利用可能なテンプレートの作成(Edit ページと Cut ページ用のトランジション/ジェネレーター/タイトル/エフェクト): references/fusion-templates.md をお読みください。

Fusion マニュアルを効率よく使う

マニュアルは大きいため、トピックごと、クラスごとにファイルが分かれています。全体を読まないでください。 references/fusion-manual/00-index.md を開き、1 行の概要から必要なセクションまたはクラスを探して、 該当するファイルだけを開いてください。キーワードから探すには、スクロールするのではなく references/fusion-manual/ 全体を対象に grep を実行してください。

分割を再生成する場合(例:新しいマニュアルから生成する場合)は、Blackmagic の Fusion スクリプティング PDF を Mistral Document AI(無料)で Markdown に変換してから、 python3 scripts/split-fusion-manual.py <converted.md> を実行してください。

ヒント

  • Resolve/Fusion は Lua と Python の両方に対応しており、オブジェクトモデルはどちらでも同じです。 fusion-manual/02-scripting-languages.md を参照してください。
  • tool.Input = modifier.Result で入力をモディファイアーに接続できます。切断するには tool.Input = nil を実行してから、静的な値を指定するために tool:SetInput(...) を実行します。
  • マクロの公開済みコントロールを変更した後は、コンポジションを再読み込みするか、新しいノードインスタンスを配置してください。 Inspector のレイアウトはインスタンスごとにキャッシュされます。
  • .setting ファイルの編集には、Fusion Setting Highlighter VS Code 拡張機能を使うと、埋め込み Lua を含め適切にハイライトされます。 インストールコマンドについては references/macro-authoring.md を、拡張機能については https://github.com/tmoroney/fusion-setting-highlighter を参照してください。

コメント