mcpField
D
davinci-resolve-export-multi-platform

davinci-resolve-export-multi-platform

github.com/chaiwithjai创意与媒体31101 次安装23 周前更新
代码仓库

关于 davinci-resolve-export-multi-platform

这项 DaVinci Resolve 技能指导如何从同一剪辑制作 YouTube、LinkedIn 和竖屏社交平台版本,涵盖画面重构、字幕、渲染预设及可选的 Python 批量渲染。

主要功能

  1. 01重构画面以适配竖屏和方形格式
  2. 02生成并编辑字幕
  3. 03创建平台专用渲染预设
  4. 04跨时间线排队渲染
  5. 05使用 Python 自动批量渲染

适用场景

  1. 01将 16:9 剪辑改为 Shorts 和 LinkedIn 版本
  2. 02创建字幕并导出 SRT 文件
  3. 03依次渲染多个平台版本
  4. 04通过 Resolve 脚本 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 版本

概述

一份源剪辑,三种针对不同平台的导出,可选使用 Python 自动化。核心原则:让 Resolve 的 AI Smart Reframe 为你完成重新构图——更改宽高比时,不要为每个片段手动打 Position 关键帧。然后保存自定义渲染预设,让下一个视频一键完成。

本技能还涵盖两个合并的 JTBD:自动生成字幕和使用 Python API 批量渲染。

何时使用

适用症状:

  • 需要将同一个视频发布到 YouTube + LinkedIn + Reels/Shorts/TikTok
  • 需要将现有的 16:9 剪辑做成竖版
  • 需要为视频添加字幕/说明文字
  • 想用脚本自动化“渲染这个、那个以及另一个”
  • 有多个时间线需要依次渲染,不想一直盯着 Resolve

何时不使用:

  • 单个平台的一次性渲染——使用 Quick Export(Edit 页面右上角的云图标)。
  • DCP(数字影院)导出——单独的色彩师指南工作流(第 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 用于源对话和处理后的对话。
  • A3/A4 用于音乐、SFX、片头片尾。

当用户要求烧录 Netflix 风格字幕时,不要认为一个 SRT 文件就够了。字幕必须在视频画面中可见,并且在最终渲染前可作为图层或模板编辑。

步骤

阶段 1 — 为竖版和方形版本重新构图 16:9 源素材

Editor's Guide 第 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 重复上述操作。

当 AI Smart Reframe 选错主体时,Editor's Guide 第 572-575 页介绍了 Reference Point 备用方案。

第 2 阶段 — 使用 AI 生成的字幕添加字幕

Editor's Guide 第 586-590 页介绍了 Create Subtitles from Audio。

  1. 打开时间线后,选择 Timeline menu > AI Tools > Create Subtitles from Audio。
  2. 在对话框中:
    • Language:Auto(或特定语言)
    • Caption Preset:Subtitle Default
    • Maximum:每行 42 个字符
    • Lines:Single(如果你有非常长的句子,也可以选择其他值)
    • Gap Between Subtitles:0 frames
  3. 点击 Create。Resolve 会转写音频并向你的时间线添加一个字幕轨道。
  4. 修复不可避免的错误 — 播放时间线,双击字幕轨道中的任意字幕片段来编辑文本。AI 会不断弄错技术术语、品牌名称和缩写。
  5. 要将字幕导出为 SRT 文件,右键单击字幕轨道 > Export Subtitles > 选择 SRT 格式。
第 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 tab:Format = MP4,Codec = H.264,Resolution = Timeline Resolution(这会采用当前时间线的尺寸)
    • Audio tab > Export Audio:ON,Codec AAC,Bit Rate 320 Kb/s
    • Audio tab > 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,audio standard = Streaming)和 Shorts(1080x1920,audio standard = Streaming)重复此操作。
第 4 阶段 — 排队并渲染全部三个
  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 会依次渲染全部三个。

Python 自动化 — 批量渲染多个时间线

这是合并后的“使用 Python API 批量渲染”JTBD。下面的脚本假设 Resolve 正在运行、项目已打开,并且你已经保存了名为 DEVREL_YOUTUBE_1080、DEVREL_LINKEDIN_1080、DEVREL_SHORTS_1080 的渲染预设。该脚本会遍历项目中的每个时间线,并为与时间线宽高比匹配的每个预设添加一个渲染任务。

完整脚本见 scripts/multi_platform_render.py。

该脚本使用官方 DaVinci Resolve scripting API,如 DaVinci Resolve/Developer/Scripting/README.txt 中所述:

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

这些方法是真实且已记录在案的。该脚本以防御性方式编写 — 它会在执行前打印将要执行的操作,并在开始实际渲染前通过 stdin 进行确认。

常见错误

  • 手动为每个片段逐帧设置 Position 关键帧以实现竖屏适配 -> 其实有现成的按钮。使用 AI Smart Reframe(Studio 版),或至少使用检查器中的按片段 Reframe 按钮。(《Editor's Guide》第 572-575 页。)(这正是本技能要正面解决的误解。)
  • 保存 YouTube 预设时未启用音频标准化 -> 你的视频在多次上传之间会不一致。务必启用 Optimize to standard。
  • 忘记 AI Smart Reframe 仅限 Studio 版 -> 免费版 Resolve 只有手动 Position 关键帧。要么升级,要么接受手动重构画面。
  • 信任 AI 生成的字幕而不校对 -> 务必回放并修正。它们会弄错产品名称、缩写和技术术语。
  • 在单个 GPU 上同时渲染三条时间线 -> Resolve 无论如何都会串行渲染。把三条都排队没有惩罚;不要启动三个 Resolve 实例。

验证

如果以下所有条件均成立,则说明你成功了:

  1. 你的 08 — Exports 文件夹包含三个 MP4 文件:一个 1920x1080,一个 1080x1080,一个 1080x1920。
  2. 每个文件拖入 VLC / QuickTime 后都能正常播放。
  3. 竖屏版本在整个时长内都让主体保持在画面中(没有尴尬的只有背景的片段)。
  4. 字幕在自动显示字幕的平台上正确烧录,或导出为 .srt 以便随 MP4 一起上传。
  5. 用第三方 LUFS 测量工具(如免费的 YouLean Loudness Meter)测量音频响度,YouTube 文件读数为 -14 LUFS ±1。

迁移

现在试试这个:添加第四个目标 —— Twitter / X 视频,1920x1080 但时长限制在 2:20。构建一条 Twitter 时间线,作为你主时间线的更短剪辑(使用 davinci-resolve-cut-screen-recording 中的修剪工作流)。保存一个新的 DEVREL_TWITTER_1080 渲染预设。把它加入 Python 脚本。你现在拥有了一个脚本、四平台导出流水线。

工作参考

  • 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 + 渲染失败相关行)

当 Agent 的工作不符合预期时(上下文腐化重置)

如果用户报告 Smart Reframe 偏移、渲染失败、字幕缺失或交付文件响度错误,请阅读以下 PDF 页码范围以重置:

  • DaVinci-Resolve-20-Editors-Guide.pdf 第 545-617 页(第 9 课 —— Delivering Projects,完整章节)
  • DaVinci-Resolve-20-Editors-Guide.pdf 第 569-575 页(AI Smart Reframe —— Object of Interest 与 Reference Point 模式)
  • DaVinci-Resolve-20-Editors-Guide.pdf 第 577-580 页(Creating a Custom Render Preset)
  • DaVinci-Resolve-20-Editors-Guide.pdf 第 586-590 页(Generating Subtitles from Audio)
  • DaVinci-Resolve-20-Editors-Guide.pdf 第 597-617 页(Customizing Deliver Presets、Verifying the Exported Files)
  • DaVinci Resolve Scripting API:DaVinci Resolve/Developer/Scripting/README.txt(随安装程序提供)

评论

支持 Markdown