drpkit¶
DaVinci Resolve のプロジェクトファイルを Resolve を起動せずに扱うツールです。.drp(書き出したプロジェクト)は読み書き、ディスクDBの Project.db は読み取りのみです(write・compose は .drp だけが対象)。
非公式 · MIT License · Python 3.9+
このサイトは drpkit の仕様書の全体です。コマンド、カット表、そして Resolve が Fairlight ミキサー・クリップ・マーカー・素材をどう保存しているかについて分かっていることすべてを、項目ごとの根拠つきでまとめています。
できること¶
drpkit read¶
Fairlight ミキサー設定(トラック・Bus・内蔵EQ・内蔵Dynamics・プラグイン)と編集情報(クリップ・フェード・キーフレーム・トランジション・クリップ色・タイムラインマーカー)を、画面に表示される値に換算して出力します。
drpkit read project.drp
drpkit read project.drp --json
drpkit read project.drp --edits
drpkit read Project.db --timeline "Main"
drpkit compose¶
テンプレートプロジェクト・音声ファイル・カット表から新しい .drp を組み立てます。テンプレートのミキサーはそのままバイト単位で保持されます。
drpkit write¶
解析専用コマンド。.drp のコピーのミキサー表に生の値を書き込み、変換表を作るために使います。
Resolve Studio 21.1.1 で確認。無償版は未検証です。ファイルだけを扱い、Resolve 本体やスクリプトAPIは一切使いません。
対応範囲¶
| 項目 | 読み取り | 書き込み/compose |
|---|---|---|
| ストリップ基本 | フェーダー・ミュート・ソロ・パン・ルーティング・Busチャンネル数・StripID | 生の値(write) |
| 内蔵EQ・Dynamics | 各バンド・ノブを画面表示値に換算 | 生の値 |
| プラグイン | De-Esser・Vocal Channel・Limiter・Voice Isolation・Dialogue Leveler | compose でバイト単位保持 |
| クリップ | 位置・フェード・色・キーフレーム・クリップFX | 位置・ソースIn/Out・メディア・色・フェード・ボリュームキーフレーム |
| タイムラインマーカー | フレーム・色(16色)・名前・ノート・長さ | 同上 |
| 未解読 | トラックのオートメーション、キーフレームのフラグ、プラグインのバイパス、Busのソロ、トラック単位のDialogue Leveler |
項目番号つきの全一覧:Fairlight ミキサー・未解決の点:未解読
インストール¶
compose には PATH 上の ffprobe(FFmpeg)が必要です。Project.db のクリップFXと圧縮マーカーを読むには Python 3.14 以上、または zstandard パッケージが必要です。詳しくは はじめに。
安全性¶
readは入力を一切変更しません。.drpは読み取り専用で zip として開き、Project.dbは読み取り専用・変更不可で開きます。writeとcomposeは上書きしません(出力先が既にあれば拒否)。一時ファイルに書き出して読み直し・検証し(composeは全クリップをカット表と照合)、合格したときだけ一度に出力名へ移します。失敗時は出力ファイルを残しません。- 結果は本番とは別の検証用プロジェクトライブラリに読み込み、原本のバックアップを保持してください。
非公式プロジェクトです
Blackmagic Design 社とは無関係・提携・支援関係はありません。「DaVinci Resolve」「Fairlight」は Blackmagic Design Pty. Ltd. の商標です。ファイル形式は観察によって解読したもので、Resolve の更新で変わることがあります。
常にコピーで作業してください。write と compose の出力は別の検証用プロジェクトライブラリで使い、Resolve 上で結果を確認してから本番に反映してください。無保証:プロジェクトの破損・消失について作者は責任を負いません。自己責任でご利用ください。詳細は LICENSE を参照してください。
先行例¶
samuelgursky/davinci-resolve-mcp(MIT)は同じ内部データを扱い、Bus の構成・ルーティングの読み書きを実装しています。このデータが読み取れることを示してくれた同プロジェクトに感謝します。drpkit は別の領域(内蔵Dynamics・EQの画面値換算、フェーダー、ソロ、処理順、プラグインのノブ、トラックのVoice Isolation状態、編集情報、マーカー)を独自に特定して扱っています。Bus の構成やルーティング変更が必要な場合は davinci-resolve-mcp を使ってください。詳しくは 先行例。
github.com/higuchiki/drpkit · MIT License — © Kiyonori Higuchi