mcpField
D
davinci-resolve-export-multi-platform

davinci-resolve-export-multi-platform

github.com/chaiwithjaiクリエイティブ・メディア31101 回インストール23 週間前に更新
リポジトリ

davinci-resolve-export-multi-platform について

DaVinci Resolveで、1つの編集からYouTube、LinkedIn、縦型ソーシャル向けの書き出しを作るスキルです。リフレーム、字幕作成、レンダープリセット、Pythonによる一括レンダリングを扱います。

主な機能

  1. 01縦型・正方形向けのリフレーム
  2. 02字幕の生成と編集
  3. 03プラットフォーム別レンダープリセット
  4. 04複数タイムラインのレンダーキュー登録
  5. 05Pythonによる一括レンダリング

活用シーン

  1. 0116:9編集をShortsやLinkedIn向けに調整
  2. 02字幕を作成してSRTファイルを出力
  3. 03複数プラットフォーム向け動画を順次レンダー
  4. 04ResolveスクリプティングAPIでタイムラインを一括レンダー

インストール

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

$npx skills add https://github.com/chaiwithjai/davinci-resolve-claude-skills --skill davinci-resolve-export-multi-platform

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

同梱ファイルscripts/multi_platform_render.py

詳細

DaVinci Resolve — YouTube、LinkedIn、Shorts 向けに同じ編集を書き出す

概要

1 つのソース編集から、プラットフォーム別に 3 つの書き出しを、必要なら Python で自動化します。中心となる原則は、アスペクト比を変更するときに、すべてのクリップの Position を手動でキーフレーム化するのではなく、Resolve の AI Smart Reframe にリフレーミングを任せることです。そのうえでカスタムレンダープリセットを保存すれば、次の動画はワンクリックで済みます。

このスキルでは、統合された 2 つの JTBD も扱います。字幕の自動生成と、Python API によるバッチレンダリングです。

使用すべき場面

症状:

  • 同じ動画を YouTube + LinkedIn + Reels/Shorts/TikTok に配信する必要がある
  • 既存の 16:9 編集の縦型バージョンが必要
  • 動画にキャプション/字幕を追加する必要がある
  • 「これとあれとそれもレンダリング」をスクリプトで自動化したい
  • 複数のタイムラインを連続してレンダリングする必要があり、Resolve を付きっきりで見ていたくない

使用すべきでない場面:

  • 単一プラットフォームの単発レンダリング — Quick Export (Edit ページ右上のクラウドアイコン) を使用してください。
  • DCP (デジタルシネマ) 書き出し — 別の Colorist Guide のワークフロー (pp. 431-447) です。

クイックリファレンス

ターゲット解像度オーディオ標準コーデック
YouTube (長尺)1920x1080 (または 3840x2160)YouTube (-14 LUFS)H.264 または H.265
LinkedIn (フィード)1080x1080 (スクエア)Streaming (-16 LUFS)H.264
Reels / Shorts / TikTok1080x1920 (縦型)Streaming (-16 LUFS)H.264

HITL の Resolve 引き継ぎでは、レンダリング前に個別のタイムラインを作成します:

  • 縦型ソーシャル向けの Instagram Semantic Cut または同等のもの。
  • 横型長尺向けの YouTube Semantic Cut または同等のもの。
  • ソース映像レイヤー用に V1/V2/V3。
  • 焼き込みキャプション/タイトルグラフィック用に V4。
  • ソースおよび処理済みダイアログ用に A1/A2。
  • 音楽、SFX、バンパー用に A3/A4。

ユーザーが Netflix スタイルの焼き込みキャプションを求めた場合、SRT ファイルだけで十分とみなしてはいけません。キャプションは動画フレーム内で表示され、最終レンダリングまでレイヤーまたはテンプレートとして編集可能でなければなりません。

手順

フェーズ 1 — 16:9 ソースを縦型およびスクエアバージョン向けにリフレーミングする

Editor's Guide pp. 569-575 で AI Smart Reframe を扱っています。

  1. Shift-4 を押して Edit ページに移動します。
  2. Media Pool でマスタームービーを右クリック > Duplicate Timeline。複製したものを MASTER_TIMELINE_VERTICAL と名付けます。
  3. 複製を開きます。タイムラインで Timeline Resolution ドロップダウン (ビューア上部) > custom > 1080x1920 (縦型) に設定します。
  4. Resolve はクリップがクロップされることを警告します。OK をクリックします。
  5. すべてのクリップを選択します。右クリック > Smart Reframe (Studio のみ — 無料版の Resolve では、Inspector の Position パラメーターで手動キーフレームを使用してください)。
  6. Smart Reframe ダイアログで、Object of Interest: Auto を選択し、Reframe をクリックします。Resolve は、アスペクト比によって端がクロップされても主要な被写体をフレーム内に保つキーフレームを追加します。
  7. スクラブして確認します — クリップがずれた場合 (例: AI が間違った人物を追った場合)、そのクリップを選択して次のいずれかを行います:
    • Position キーフレームをリセットし、Reference Point モードで被写体を手動でクリックする
    • または Inspector で Position X を手動設定する
  8. MASTER_TIMELINE_SQUARE を 1080x1080 で同様に繰り返します。

Editor's Guide pp. 572-575 で、AI Smart Reframe が間違った被写体を選んだ場合の Reference Point フォールバックを扱っています。

フェーズ 2 — AI 生成字幕でキャプションを追加する

Editor's Guide の 586〜590 ページで「Create Subtitles from Audio」について解説されています。

  1. タイムラインを開いた状態で、Timeline メニュー > AI Tools > Create Subtitles from Audio を選択します。
  2. ダイアログで以下を設定します。
    • Language: Auto (または特定の言語)
    • Caption Preset: Subtitle Default
    • Maximum: 1 行あたり 42 文字
    • Lines: Single (非常に長い文がある場合は Double)
    • Gap Between Subtitles: 0 フレーム
  3. Create をクリックします。Resolve が文字起こしを行い、タイムラインに Subtitle トラックを追加します。
  4. 避けられないエラーを修正する — タイムラインを再生し、Subtitle トラック内の任意の字幕クリップをダブルクリックしてテキストを編集します。AI は専門用語、ブランド名、頭字語を絶えず間違えます。
  5. 字幕を SRT ファイルとして書き出すには、Subtitle トラックを右クリック > Export Subtitles > SRT 形式を選択します。
フェーズ 3 — 3 つのレンダープリセットを作成する

Editor's Guide の 577〜580 ページで「Save As New Preset」について解説されています。

  1. Shift-8 を押して Deliver ページに切り替えます。
  2. Render Settings で H.264 Master をクリックします。
  3. 以下を設定します。
    • File Name: %timeline_name と入力し、ドロップダウンから Timeline Name 変数を選択します
    • Location: 08 — Exports フォルダを参照して選択します
    • Render: Single clip
    • Video タブ: Format = MP4、Codec = H.264、Resolution = Timeline Resolution (現在のタイムラインの寸法を取得します)
    • Audio タブ > Export Audio: ON、Codec AAC、Bit Rate 320 Kb/s
    • Audio タブ > Audio Normalization: Normalize Audio を有効化 > Optimize to standard > Standard = YouTube (-14 LUFS、-1.0 dBTP)
  4. Render Settings 上部の Options メニュー (...) をクリック > Save As New Preset を選択します。
  5. 名前: DEVREL_YOUTUBE_1080。Add to quick export にチェックを入れます。保存します。
  6. LinkedIn (1080x1080、オーディオ標準 = Streaming) と Shorts (1080x1920、オーディオ標準 = Streaming) についても同様に繰り返します。
フェーズ 4 — 3 つすべてをキューに追加してレンダリングする
  1. YouTube タイムラインを開く > Deliver ページ > DEVREL_YOUTUBE_1080 プリセットを選択 > Add to Render Queue をクリックします。
  2. LinkedIn タイムラインに切り替える > Deliver ページ > DEVREL_LINKEDIN_1080 プリセットを選択 > Add to Render Queue をクリックします。
  3. Shorts タイムラインに切り替える > Deliver ページ > DEVREL_SHORTS_1080 プリセットを選択 > Add to Render Queue をクリックします。
  4. Render Queue パネル (右側) で Render All をクリックします。
  5. その場を離れます。Resolve が 3 つすべてを順番にレンダリングします。

Python 自動化 — 複数のタイムラインをバッチレンダリングする

これは「Python API によるバッチレンダリング」JTBD を統合したものです。以下のスクリプトは、Resolve が起動していて、プロジェクトが開かれており、DEVREL_YOUTUBE_1080、DEVREL_LINKEDIN_1080、DEVREL_SHORTS_1080 という名前のレンダープリセットをすでに保存していることを前提としています。このスクリプトはプロジェクト内のすべてのタイムラインを走査し、タイムラインのアスペクト比に一致する各プリセットごとにレンダージョブを追加します。

完全なスクリプトは scripts/multi_platform_render.py を参照してください。

このスクリプトは、DaVinci Resolve/Developer/Scripting/README.txt に記載されている公式の DaVinci Resolve スクリプティング API を使用しています。

Resolve.GetProjectManager()
ProjectManager.GetCurrentProject()
Project.GetTimelineByIndex(idx)
Project.GetTimelineCount()
Project.LoadRenderPreset(preset_name)
Project.SetRenderSettings(settings_dict)
Project.AddRenderJob()
Project.StartRendering()
Project.IsRenderingInProgress()

これらのメソッドは実在し、ドキュメント化されています。このスクリプトは防御的に書かれています — 実行する前に何を行うかを出力し、実際のレンダリングを開始する前に標準入力経由で確認を求めます。

よくある間違い

  • すべてのクリップを手動で Position にキーフレームを打って縦型フレーム化する -> そのためのボタンがあります。AI Smart Reframe (Studio) を使うか、最低でもインスペクターのクリップごとの Reframe ボタンを使ってください。(Editor's Guide pp. 572-575.) (これこそ、このスキルが正面から扱う誤解です。)
  • 音声のノーマライズを有効にせずに YouTube プリセットを保存する -> アップロードごとに動画が不揃いになります。常に Optimize to standard を有効にしてください。
  • AI Smart Reframe が Studio 専用であることを忘れる -> 無料版の Resolve では手動の Position キーフレームしか使えません。アップグレードするか、手動でのリフレーミングを受け入れるかです。
  • 校正せずに AI 生成の字幕を信用する -> 必ず再生して修正してください。製品名、頭字語、専門用語はめちゃくちゃにされます。
  • 単一の GPU で 3 つのタイムラインを一度にレンダリングする -> Resolve はどのみちシリアルにレンダリングします。3 つすべてをキューに入れてもペナルティはありません。Resolve のインスタンスを 3 つ起動しないでください。

検証

以下がすべて当てはまれば成功です:

  1. 08 — Exports フォルダーに 3 つの MP4 ファイルが含まれている: 1920x1080 が 1 つ、1080x1080 が 1 つ、1080x1920 が 1 つ。
  2. 各ファイルを VLC / QuickTime にドラッグすると問題なく再生される。
  3. 縦型バージョンでは、全編を通して主要な被写体がフレーム内に収まっている (背景だけの不自然な区間がない)。
  4. 字幕が自動表示されるプラットフォームでは正しく焼き込まれている、または MP4 と一緒にアップロードするための .srt として書き出されている。
  5. サードパーティ製の LUFS メーター (例: 無料の YouLean Loudness Meter) で測定した音声のラウドネスが、YouTube ファイルで -14 LUFS ±1 を示す。

転用

では、これを試してみてください: 4 つ目のターゲットを追加します — 1920x1080 だが長さを 2:20 に制限した Twitter / X 動画です。マスターの短縮版となる Twitter タイムラインを構築します (davinci-resolve-cut-screen-recording のトリムワークフローを使用)。新しい DEVREL_TWITTER_1080 レンダープリセットを保存します。それを Python スクリプトに追加します。これで、1 つのスクリプトで 4 プラットフォーム向けに書き出せるパイプラインができあがります。

作業用リファレンス

  • docs/wiki/editors-guide.md#lesson-9--delivering-projects-pp-545-617 (Deliver 章の全文 — 主要)
  • docs/wiki/editors-guide.md#lesson-9--delivering-projects-pp-545-617 (章のノート内にある AI Smart Reframe の詳細)
  • docs/wiki/master.md#shared-glossary-terms-that-appear-across-multiple-pdfs (LUFS / dBTP / AI Smart Reframe の用語集)
  • docs/wiki/master.md#reset-matrix--when-the-user-pushes-back-read-this (Smart Reframe + レンダリング失敗の行)

エージェントの作業が期待どおりでない場合 (コンテキストロットのリセット)

ユーザーが Smart Reframe のずれ、レンダリング失敗、字幕の欠落、または書き出したファイルのラウドネスの誤りを報告した場合は、リセットのために以下の PDF ページ範囲を読んでください:

  • DaVinci-Resolve-20-Editors-Guide.pdf pp. 545-617 (Lesson 9 — Delivering Projects、章の全文)
  • DaVinci-Resolve-20-Editors-Guide.pdf pp. 569-575 (AI Smart Reframe — Object of Interest モードと Reference Point モード)
  • DaVinci-Resolve-20-Editors-Guide.pdf pp. 577-580 (Creating a Custom Render Preset)
  • DaVinci-Resolve-20-Editors-Guide.pdf pp. 586-590 (Generating Subtitles from Audio)
  • DaVinci-Resolve-20-Editors-Guide.pdf pp. 597-617 (Customizing Deliver Presets、Verifying the Exported Files)
  • DaVinci Resolve Scripting API: DaVinci Resolve/Developer/Scripting/README.txt (インストーラーに同梱)

コメント