DaVinci Resolve の MCP で、AI で作った MV の全カットに曲の拍でスピードランプを入れた
Naoki Kakuda11 min
「音楽に合わせて各カットのポイントを緩急つけながらスピードランプで。各カットにクロスディゾルブ」
DaVinci Resolve を開いたまま、Claude Code にこう頼んだ。対象は、AICU のアワードに出した MV「Tokyo」だ。
この MV は、東京駅のまわりで撮ったスナップ72枚から作った。撮った順に2枚ずつ組にして36組。Figma Weave で WAN 3.0 Video に通し、1組から5秒の動画(1080p)を1本ずつ、合わせて36本作った。素材には P01〜P36 の番号を付けてある。曲は Suno で作ったインストの「東京の雷音」。DaVinci で並べて、10月16日に1分35秒の版を提出した。
今日はその続きを、フル版の提出に向けて、Claude Code から DaVinci を直接動かしてやった。先に結果を書くと、タイムラインの35カットすべてに、拍に合わせた緩急が入った。途中で何度もつまずいた。クロスディゾルブはまだ入れていない。提出版のタイムラインには一度も触らず、作業は全部、複製したタイムラインの上でやった。
DaVinci Resolve 21.1 から、MCP が本体に入っている
始まりは午前中の、この一言だった。
「ダヴィンチってmcp使えるん?」
AI に調べさせると、DaVinci Resolve Studio は 21.1 から公式の MCP を本体に内蔵していた。メニューの「File > Setup AI Assistants」から、Claude Code などに登録できる。出典は 21.1 の Reference Manual の第201章だ。
僕の Mac に入っていたのは 21.0.4 で、まだ付いていなかった。21.1.1 に更新して、僕が OK を出し、Claude Code がメニューの「ファイル > Setup AI Assistants…」を押した。DaVinci は「AI Assistants Configured」と出して、Claude Code、Claude Desktop、Codex、Google Antigravity の4つに MCP をまとめて登録した。Claude Code の設定には「DaVinci Resolve」という名前で、アプリの中にある ResolveMCP が入り、接続済みになった。使えるのは、Claude Code の新しいセッションからだ。
調べた時点で、できないことも分かっていた。スクリプトからは、タイムラインに置いたクリップを動かすことも、トリムすることもできない(有志の報告が2件あり、README にも命令が無かった)。任せられるのは、マーカー、速度、トランジション、フェード、書き出し、タイムラインの分析あたりだ。
スクリプトでは、速度のカーブが描けない
もう1つ、作業を始めてから分かった制限がある。スクリプトから設定できるクリップの速度は、一定の値だけだった(SetSpeed)。速度がだんだん変わっていくカーブ、つまりスピードランプは描けない。
そこで、各カットに Fusion を入れて、その中で緩急を作ることにした。Fusion の TimeStretcher というツールには「ソースタイム」という欄がある。ここにキーフレームを打って、そのコマで素材のどのコマを出すかを決めていく。

Fusion ページ。右上の TimeStretcher の「ソースタイム」にキーフレームを打つ(この画面は P03)。値がマイナスなのは、カットの頭(イン点)より前のコマを使っているという意味
拍を取って、2拍ごとに緩急をつける
曲の拍は、AI が Python の librosa で検出した。約129BPM。動画は30fps なので、1拍はおよそ14フレームになる。
緩急の形は2拍ごとにした。拍の直後はゆっくり、次の拍の直前に向けて加速して、拍の所でガクッと落とす。最初に組んだ版では、元が200%のカットを基準にして、拍の直後が100%、次の拍の直前が480%だった。
ベジェのハンドルでは、拍の直前で跳ねた
AI は最初、Fusion のベジェ曲線のハンドルで加速のカーブを作った。ところが、拍の直前で急に跳ねる形になった。そこで、1フレームごとに直線のキーを打ち、狙った曲線を正確に作り直した。
P13 で試して、35カットへ
試しは P13 の1カットでやった。そのあと僕が「全部行って」と返して、35カットに広げた。タイトルの静止画が1枚と、2〜3フレームしかない切れ端が2本あったので、それは外した。
この作業は、提出版のタイムライン「Timeline 2」を複製した「Timeline 2_ランプ試し」の上でだけやった。
この時点で、気になる所も残った。元の速度が100%だった P01 は44〜232%、元が56%だった P02 は25〜122%になり、遅い所でカクつくかもしれない。逆再生している P07 と P30 は、目で見て確かめる必要があった。
そして、このランプ試しは実は効いていなかった。それは後で書く。
カットの合間で、絵が止まる
全カットに入れたあと、僕が気になったのはこれだった。
「カットの合間で画像が止まるのが気になる」
AI は最初、再生が重いせいだと疑った。そうではない。
「違う。どうしても動画の最初は静止画から始まるから」
WAN の動画は、組にした写真の1枚目から動き出して、2枚目で止まる。始まりと終わりが、ほぼ静止画になっている。


36本の素材の、始まり・中盤・終わりのコマ。各組の左が始まり、右が終わり
AI に ffmpeg でコマとコマの差を測らせると、頭の7〜42フレームと、終わりの0〜55フレームが、ほとんど動いていなかった。つなぎ目では「前のカットの終わり」と「次のカットの頭」の止まりが続くので、そこで絵が止まって見えていた。
AI の推しは、頭と終わりの両方を飛ばす案だった。僕もそれを選んだ。35カットのランプを、動いている区間だけを使う形に組み直した。編集で選んだ範囲の中でやるので、カットの長さと位置はそのままだ。平均の速さは200%から120〜181%に下がり、拍の直前は280〜430%、拍の直後は63〜84%になった。
カメラの動きが続かないように、並べ替えた
次に頼んだのはこれだ。
「画面の寄り引き・右左の動きが連続して続かないように順番入れ替えて」
AI が OpenCV で各素材の特徴点を追い、カメラの動きを判定した。結果は、寄り16本、引き7本、上6本、下3本、左2本、回転1本。判定があいまいなものが4本(P12・P17・P26・P27)あった。
カットの切れ目は、曲に合わせた今の位置のまま変えない。中に入る素材だけを入れ替える。7枠目からは「寄り→別の動き→寄り」の交互にする。寄りが16本と全体の半分近くあり、交互にしないと寄りが続いてしまうからだ。1〜6枠目は、元の並びのままで動きが続いていなかったので変えていない。AI が出したこの案を僕が選び、26枠が入れ替わった。
置いたクリップは動かせないので、タイムラインを作り直した
ここで、最初に分かっていた制限が効いてくる。スクリプトからは、置いたクリップを動かせない。並べ替えるには、タイムラインを作り直すしかない。
1本目は白紙から組んだ。すると、タイトルの静止画が5秒分の長さで置かれ、隣の枠を潰して崩れた。この版は「Timeline 2_並べ替え_失敗(削除可)」と名前を変えて残してある。
2本目は、元の Timeline 2 を複製し、静止画と切れ端の2本だけを残して、35枠の中身を入れ替えた。クリップは速度100%のまま、前後に余白を付けて置いた。緩急と、頭と終わりの止まりを飛ばす処理は、全部 Fusion の側でやっている。これが「Timeline 2_並べ替え」だ。

並べ替えたあとのエディットページ(Timeline 2_並べ替え)
一番の落とし穴:Fusion がエディットページに出ていなかった
ここで、一番大きな問題が見つかった。スクリプトで作った Fusion が、Fusion ページでは効いているのに、エディットページのビューアには反映されていなかった。ビューアに映っていたのは、元の絵のままだった。
直し方は、Fusion の中身(comp)を一度ファイルに書き出して、読み込み直すこと。スクリプトの命令でいうと ExportFusionComp から ImportFusionComp だ。これで反映された。
反映されたかどうかは、AI が P03 の Fusion に、明るさを0にする設定を一時的に足して確かめた。エディットページのビューアが真っ黒になれば、Fusion の中身が届いている。

P03 に明るさ0を一時的に入れると、エディットページのビューアが真っ黒になった
AI は35カット全部をこの方法でやり直し、P03 と、逆再生の P07 で、狙ったコマが映るのを確かめた。
「できた」と言ったのに、確かめていなかった
正直に書いておく。最初の「Timeline 2_ランプ試し」のとき、AI は画面で確かめないまま「できた」と報告していた。同じ理由で、あのランプは効いていなかった。
僕が「もう一回やって」と言うと、AI はどれのことかを聞き返してきた。ランプ試しの方だと答えて、同じ書き出しと読み込み直しをやらせた。AI が P13 で、狙ったコマ(素材の46フレーム目あたり。直す前なら60フレーム目)が画面に出るのを確かめた。
クロスディゾルブは、まだ入れていない
最初の依頼の後半、各カットのクロスディゾルブは、まだ入れていない。ほとんどのカットが素材を端まで使っていて、重ねるための余白が無かったからだ。並べ替えた版では、クリップの前後に余白を残して置いてある。
また、元の Timeline 2 の頭にはディゾルブが3つあったが、並べ替えた版に残っているのは、タイトルの静止画の頭の1つだけだ。
僕が決めたこと、AI がやったこと
| 僕が判断したこと | AI(Claude Code)がやったこと |
|---|---|
| 曲に合わせて、各カットに緩急をつけると決めた | 拍の検出(librosa)、Fusion へのキーフレーム打ち |
| P13 の試しのあと、「全部行って」と35カットに広げた | 35カットへの展開 |
| つなぎ目の止まりは、素材が静止画から始まるせいだと指摘した | ffmpeg で、止まっているフレーム数を測った |
| 頭と終わりの両方を飛ばす案を選んだ | 動いている区間だけを使うランプへの組み直し |
| 寄り引き・左右の動きが続かないように、と頼み、並べ方の案を選んだ | OpenCV でのカメラの動きの判定、並べ方の案、タイムラインの作り直し |
| ランプ試しの方も直すと決めた | Fusion の書き出しと読み込み直し、画面での確認 |
AI が外したことも2つある。つなぎ目の止まりを再生の重さのせいだと疑ったことと、ランプ試しを画面で確かめずに「できた」と報告したことだ。
それでも、使ってみての感想はこれだ。
「タイムラインに並べると同時にAIによる処理が行われているのはかなり時短。編集の初動負荷を軽減する」
残っていること
- 各カットのクロスディゾルブ
- 元の Timeline 2 の頭にあったディゾルブ3つのうち、並べ替えた版には1つしか残っていない
- 最初の版で気になった、P01 と P02 の遅い所のカクつきを目で見る
- 逆再生の P30 を目で見る
出典一覧
| 出典 | URL | 取得日 | 一次/二次 |
|---|---|---|---|
| DaVinci Resolve 21.1 Reference Manual 第201章(公式 MCP・Setup AI Assistants) | 未確認(記録に URL なし) | 2026-10-18 | 一次 |
DaVinci Resolve のスクリプト API(SetSpeed・ExportFusionComp・ImportFusionComp) |
未確認(記録に URL なし) | 2026-10-18 | 一次 |
| DaVinci Resolve Studio 21.1.1 の実機(Setup AI Assistants の結果・Fusion の反映・狙ったコマの確認) | ―(本人の作業記録) | 2026-10-18 | 一次(実測) |
| 拍(librosa)・素材の止まり(ffmpeg)・カメラの動き(OpenCV)の測定 | ―(本人の作業記録) | 2026-10-18 | 一次(実測) |
| 「置いたクリップのトリム・移動はできない」という有志の報告2件と README | 未確認(記録に URL なし) | 2026-10-18 | 二次 |
| MV「Tokyo」提出版(YouTube) | https://www.youtube.com/watch?v=r6D62SONhS0 | 2026-10-16 | 一次 |